LuxCoreRender Project wants you!

Discussion related to the LuxCore functionality, implementations and API.
User avatar
chuchur
Posts: 27
Joined: Tue Sep 15, 2020 8:44 am

Re: LuxCoreRender Project wants you!

Post by chuchur »

B.Y.O.B. wrote: Fri Jun 25, 2021 11:59 am When working on materials/textures, I would recommend to only work with the C++ code first. The GPU code can come later and Dade can help you with that, if you try it alone, you will get a major headache ;)
Good advice! I'm going to do this way :)
User avatar
chuchur
Posts: 27
Joined: Tue Sep 15, 2020 8:44 am

Re: LuxCoreRender Project wants you!

Post by chuchur »

Hi!

I just want to be sure that I understand it correctly: in Disney, we don't make real transmission/subsurface scattering, we just fake it according to empirical laws?

I just wonder about this https://blog.selfshadow.com/publication ... slides.pdf (page 20). Is it just a combination with "real" refraction?

I guess, I'm ok with the code of BSDF Specular Transmission and it plugs easily into the current Disney implementation.

How would you like to get a review? Should I make a push request into master? Do you have something like the "development" or "work in progress" branch? Or is better to make my own fork? (i used to work with svn and perforce mostly).

By the way, what is the best way to reach out the people? PM, Forum or Discord?
Attachments
ior.png
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: LuxCoreRender Project wants you!

Post by Dade »

chuchur wrote: Wed Jun 30, 2021 8:50 am I just want to be sure that I understand it correctly: in Disney, we don't make real transmission/subsurface scattering, we just fake it according to empirical laws?
The first version of the Disney material proposed in SIGGRAPH 2012 paper hadn't a specular transmission component at all. 2012 it is what is currently implemented in LuxCore. The specular transmission support was than introduced in a successive 2015 SIGGRAPH course. We just need to add the 2015 new stuff to LuxCore too.

About SSS, 2012 has a very simple faked SSS on the edge of objects. As far as I remember the 2015 introduced a more complex faked/approximated SSS however it has a very long list of problems and I don't think it makes any sense in the LuxCore context. So I would keep the 2015 SSS support out of the picture for the moment.
chuchur wrote: Wed Jun 30, 2021 8:50 am I just wonder about this https://blog.selfshadow.com/publication ... slides.pdf (page 20). Is it just a combination with "real" refraction?
I'm not sure to understand the question but, yes, it is just a real (optional) refraction component.
chuchur wrote: Wed Jun 30, 2021 8:50 am I guess, I'm ok with the code of BSDF Specular Transmission and it plugs easily into the current Disney implementation.
Yes, it is about adding one more optional component to the current Disney material.
chuchur wrote: Wed Jun 30, 2021 8:50 am How would you like to get a review? Should I make a push request into master? Do you have something like the "development" or "work in progress" branch? Or is better to make my own fork? (i used to work with svn and perforce mostly).
GitHub has an established mechanism to contribute to projects via pull requests: https://docs.github.com/en/github/colla ... l-requests

You create your own clone of https://github.com/LuxCoreRender/LuxCore on GitHub, you commit whatever you want on a branch and than you can create a pull request that can be reviewed, discussed, updated and merged with the main repository.
chuchur wrote: Wed Jun 30, 2021 8:50 am By the way, what is the best way to reach out the people? PM, Forum or Discord?
Just open a dedicated thread in this forum and, sorry, I simply forget to answer to the PM: I read sometime stuff on the road on the mobile and I can easily forget to answer if I don't have a reminder (so just ping me again).
Support LuxCoreRender project with salts and bounties
User avatar
chuchur
Posts: 27
Joined: Tue Sep 15, 2020 8:44 am

Re: LuxCoreRender Project wants you!

Post by chuchur »

Hi Dade,

thank you for the reply!

I'll do a new topic after finishing the code :)
User avatar
chuchur
Posts: 27
Joined: Tue Sep 15, 2020 8:44 am

Re: LuxCoreRender Project wants you!

Post by chuchur »

Hi Dade,

in Cudadevice.cpp lines 41-43 cuda minor and major versions are defined.

I have minor 1 and major 6 on my machine, so useOptix is false in my case.

I've forced useOptix to true and looks like it works (at least Optix gets initialized and I can render proper images).

Code: Select all

const int major = GetCUDAComputeCapabilityMajor();
const int minor = GetCUDAComputeCapabilityMinor();
useOptix = (isOptixAvilable && ((major > 7) || ((major == 7) && (minor == 5)))) ? true : false;
https://github.com/LuxCoreRender/LuxCor ... ce.cpp#L41

I have Optix 7.3.0, cuda v11.3.

By the way, do we have any tests for LuxCore? How do you test your code in development?
Attachments
gpuz.gif
User avatar
Sharlybg
Donor
Donor
Posts: 3101
Joined: Mon Dec 04, 2017 10:11 pm
Location: Ivory Coast

Re: LuxCoreRender Project wants you!

Post by Sharlybg »

Btw may I ask if the transmission component adition to disney is also going to solve
Dark rough glass issue ?
Support LuxCoreRender project with salts and bounties

Portfolio : https://www.behance.net/DRAVIA
User avatar
chuchur
Posts: 27
Joined: Tue Sep 15, 2020 8:44 am

Re: LuxCoreRender Project wants you!

Post by chuchur »

Hi Sharlybg,
Btw may I ask if the transmission component adition to disney is also going to solve
I'm working on it. I was lazy last two weeks, but I think I should finish it in a couple of days (at least CPU version). Looks like it could be direct taken from PBRT v.3 code.
Dark rough glass issue?
Do you mean this one https://github.com/LuxCoreRender/LuxCore/issues/543?

Thank you
User avatar
Sharlybg
Donor
Donor
Posts: 3101
Joined: Mon Dec 04, 2017 10:11 pm
Location: Ivory Coast

Re: LuxCoreRender Project wants you!

Post by Sharlybg »

I'm working on it. I was lazy last two weeks, but I think I should finish it in a couple of days (at least CPU version). Looks like it could be direct taken from PBRT v.3 code.
Will be very appreciated. can't wait to give it a try ;)

No i'm talking about this one :
Support LuxCoreRender project with salts and bounties

Portfolio : https://www.behance.net/DRAVIA
User avatar
chuchur
Posts: 27
Joined: Tue Sep 15, 2020 8:44 am

Re: LuxCoreRender Project wants you!

Post by chuchur »

Will be very appreciated. can't wait to give it a try ;)

Thank you, Sharlybg! I'll do my best :)
User avatar
Dade
Developer
Developer
Posts: 5672
Joined: Mon Dec 04, 2017 8:36 pm
Location: Italy

Re: LuxCoreRender Project wants you!

Post by Dade »

chuchur wrote: Thu Jul 15, 2021 8:42 am in Cudadevice.cpp lines 41-43 cuda minor and major versions are defined.

I have minor 1 and major 6 on my machine, so useOptix is false in my case.

I've forced useOptix to true and looks like it works (at least Optix gets initialized and I can render proper images).

Code: Select all

const int major = GetCUDAComputeCapabilityMajor();
const int minor = GetCUDAComputeCapabilityMinor();
useOptix = (isOptixAvilable && ((major > 7) || ((major == 7) && (minor == 5)))) ? true : false;
https://github.com/LuxCoreRender/LuxCor ... ce.cpp#L41

I have Optix 7.3.0, cuda v11.3.
In our tests, Optix is, sometime, very slow on no-RTX hardware. I assume is just programmed obsolescence by NVIDIA: my BVH code is faster on 9xx/10xx GTX card so this is the reason of the default setting.
chuchur wrote: Thu Jul 15, 2021 8:42 am By the way, do we have any tests for LuxCore? How do you test your code in development?
There are hundreds of unit tests in this directory https://github.com/LuxCoreRender/LuxCor ... yunittests but we don't have the resources to run them on Azure VM (it would take days to run all of them on slow VMs) so they are left there unused (and not further developed).
Support LuxCoreRender project with salts and bounties
Post Reply