-
-
Notifications
You must be signed in to change notification settings - Fork 144
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Unexpected rendering result: some volumetric caustics seem to be missing #403
Comments
Regarding issue 1: The reason is that the scattering inside the glass would have to connect to the camera through a specular glass surface. This can't be done directly. And as the camera is a non-intersectable object, the "random hit after random scattering"-way also won't work. Same reason goes for path tracing, as the laser is also of non-intersectable type. Regarding issue 2: The beam is actually there. You have to consider the difference in brightness between the green spot on the floor and the caustic on the ceiling. Image 1 below is with the camera gain turned down a factor of 100. Now it is about as bright as the green in yours. See how faint the dusty air scatter is now. At your gain, the green beam will simply fall below the brightness of the wall. Image 2 below was done with the opposite: camera gain up a lot, color of the wall almost to 0, amount of air scattering tuned. Now you can see that the beam actually is there (as well as the much more obvious one from the front face towards the ceiling, which you didn't seem to miss cause it's spot is hidden in the "regular" overexposed caustics ;) ) |
Summary: In a somewhat complex volumetric caustic rendering scene, it looks like luxcore fails to render some volumetric caustics.
The attached scene works as follows (=> means : sends light to)
Wide area light in laser mode =>
Sphere 1: inner homogeneous volume (scatt=0.01) and glass shader (no dispersion, index=1.3, white trans. and refl.) =>
45 degree pure mirror =>
Sphere 2: inner homogeneous volume (scatt=0.01) and glass shader (no dispersion, index=1.3, white trans. and refl.) =>
Prism: inner homogeneous volume (scatt=0.01) and glass shader (dispers.=0.01, index=1.3, white trans green refl.) =>
45 degree pure mirror =>
Sphere 3: inner homogeneous volume (scatt=0.01) and glass shader (no dispersion, index=1.3, white trans. and refl.) =>
White diffuse screen (ceiling of enclosing box)
The whole scene is "immersed" in a world homogeneous volume with scatt=0.01 and low priority (pri=0) whereas all the glasses have pri=10
The whole scene, including camera is fully enclosed in a box to "keep all energy in".
See attached render and blender file to understand.
There seems to be two issues:
The only way I've found to get those to show up is to set the opacity of the glass shaders to 50%, which unfortunately ruins the whole scene because half of the light isn't affected by the object and bounces all over the place.
That light also gets internally reflected twice to produce a secondary light beam that comes out from the bottom of the prism.
Luxrender does know about these internal reflections, as demonstrated by the presence of a green patch of light at the bottom of the scene (I have set the prism reflection color to pure green to highlight the problem).
However, shouldn't there also be a green volumetric caustic coming out of the bottom of the prism and joining the green patch?
Software versions:
blender-2.83.0-linux64
luxcorerender2.3 CPU only
volCaustics.blend.gz
Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.
The text was updated successfully, but these errors were encountered: