Good advice! I'm going to do this way
LuxCoreRender Project wants you!
Re: LuxCoreRender Project wants you!
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?
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?
Re: LuxCoreRender Project wants you!
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.
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 just wonder about this https://blog.selfshadow.com/publication ... slides.pdf (page 20). Is it just a combination with "real" refraction?
Yes, it is about adding one more optional component to the current Disney material.
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.
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).
Re: LuxCoreRender Project wants you!
Hi Dade,
thank you for the reply!
I'll do a new topic after finishing the code
thank you for the reply!
I'll do a new topic after finishing the code
Re: LuxCoreRender Project wants you!
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).
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?
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;
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?
Re: LuxCoreRender Project wants you!
Btw may I ask if the transmission component adition to disney is also going to solve
Dark rough glass issue ?
Dark rough glass issue ?
Re: LuxCoreRender Project wants you!
Hi Sharlybg,
Thank you
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.Btw may I ask if the transmission component adition to disney is also going to solve
Do you mean this one https://github.com/LuxCoreRender/LuxCore/issues/543?Dark rough glass issue?
Thank you
Re: LuxCoreRender Project wants you!
Will be very appreciated. can't wait to give it a tryI'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.
No i'm talking about this one :
Re: LuxCoreRender Project wants you!
Will be very appreciated. can't wait to give it a try
Thank you, Sharlybg! I'll do my best
Re: LuxCoreRender Project wants you!
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 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).
https://github.com/LuxCoreRender/LuxCor ... ce.cpp#L41Code: Select all
const int major = GetCUDAComputeCapabilityMajor(); const int minor = GetCUDAComputeCapabilityMinor(); useOptix = (isOptixAvilable && ((major > 7) || ((major == 7) && (minor == 5)))) ? true : false;
I have Optix 7.3.0, cuda v11.3.
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).