@BruceXu There's a setting used in (.e.g) scenes/cornell/cornell-glass.cfg: path.hybridbackforward.enable = 1 which (when enabled) seems to cause the problem. It's not documented in the wiki, but it's definitely used in the code.
There is another setting in there: path.clamping.variance.maxvalue ...
Search found 7 matches
- Wed Jan 13, 2021 12:14 pm
- Forum: Development
- Topic: Problem understanding Material::Sample () behaviour
- Replies: 14
- Views: 8978
- Fri Dec 18, 2020 4:38 pm
- Forum: Development
- Topic: Problem understanding Material::Sample () behaviour
- Replies: 14
- Views: 8978
Re: Problem understanding Material::Sample () behaviour
Found the problem. I was using forward-backward tracing. When I switched to backward-only, it worked fine.
Which points to a bug in the forward-backward processing I think.
Which points to a bug in the forward-backward processing I think.
- Fri Dec 18, 2020 3:27 pm
- Forum: Development
- Topic: Problem understanding Material::Sample () behaviour
- Replies: 14
- Views: 8978
Re: Problem understanding Material::Sample () behaviour
Because the other half of the time I'm returning twice kt. 0.5 * kt * 2 + 0 == kt. Otherwise what is the point of glassmaterial multiplying its computed colour by pdfW?In the second case you are returning BLACK half of the times. How can the results be identical ?
- Fri Dec 18, 2020 2:57 pm
- Forum: Development
- Topic: Problem understanding Material::Sample () behaviour
- Replies: 14
- Views: 8978
Re: Problem understanding Material::Sample () behaviour
MIS == Multiple Importance Sampling. Ah! Thank you.
I'd like, if I may, to show you some results I'm getting. First, what I think is the canonical case. Code (inside ::Sample() ) is:
const float threshold = 1.f;
if (passThroughEvent < threshold) {
// Transmit
*localSampledDir = -localFixedDir ...
I'd like, if I may, to show you some results I'm getting. First, what I think is the canonical case. Code (inside ::Sample() ) is:
const float threshold = 1.f;
if (passThroughEvent < threshold) {
// Transmit
*localSampledDir = -localFixedDir ...
- Thu Dec 17, 2020 7:19 pm
- Forum: Development
- Topic: Problem understanding Material::Sample () behaviour
- Replies: 14
- Views: 8978
Re: Problem understanding Material::Sample () behaviour
Thanks for your advice.
I can confirm, I had ::IsDelta() set correctly. Didn't seem make a difference either way.
In the course of re-arranging my code to create a more obvious test case, suddenly it came right! As far as I can tell, it makes no difference to the result no matter how pdfW is set ...
I can confirm, I had ::IsDelta() set correctly. Didn't seem make a difference either way.
In the course of re-arranging my code to create a more obvious test case, suddenly it came right! As far as I can tell, it makes no difference to the result no matter how pdfW is set ...
- Thu Dec 17, 2020 1:22 pm
- Forum: Development
- Topic: Problem understanding Material::Sample () behaviour
- Replies: 14
- Views: 8978
Re: Problem understanding Material::Sample () behaviour
Hi, Dade, thanks for the very quick reply.
#1: I just copied the GlassMaterial::Evaluate. It returns just Spectrum (). That being so, I don't understand where else my transmission colour is coming from.
#2: I'm trying to model a coated glass material whose properties have been measured physically ...
#1: I just copied the GlassMaterial::Evaluate. It returns just Spectrum (). That being so, I don't understand where else my transmission colour is coming from.
#2: I'm trying to model a coated glass material whose properties have been measured physically ...
- Wed Dec 16, 2020 5:59 pm
- Forum: Development
- Topic: Problem understanding Material::Sample () behaviour
- Replies: 14
- Views: 8978
Problem understanding Material::Sample () behaviour
Hi.
I'm currently developing a modified glass material for Luxcore on behalf of a client of mine, but I'm getting some behaviour out of the Sample function which I don't understand, and I wonder if you can provide some advice?
Inside Sample, I have code like this (rather like that from glass.cpp ...
I'm currently developing a modified glass material for Luxcore on behalf of a client of mine, but I'm getting some behaviour out of the Sample function which I don't understand, and I wonder if you can provide some advice?
Inside Sample, I have code like this (rather like that from glass.cpp ...