313a7d6236cfcbb8eb4fd9f4308aa90df81dd6f9
Fixes: 1. Mixed use of `sample_reflection` and `sample_refraction`. `sample_reflection` is intended for when only reflection is required. For refraction, `sample_vndf` or `sample_refraction` should be used. 2. Wrong weight when accumulating the contribution. Previously `brdf * NV / (fresnel * pdf)` always evaluates to `GL`, but with the new technique of bounded VNDF sampling this is not true anymore. Fixed by adding a field `weight` in the struct `BsdfEval`. 3. Schlick's approximation of the fresnel factor is `F + (1 - F) * (1 - cos(theta))^5`, but BSDF LUT was using `cos^2(theta)`, which was incorrect.
…
Blender
Blender is the free and open source 3D creation suite. It supports the entirety of the 3D pipeline-modeling, rigging, animation, simulation, rendering, compositing, motion tracking and video editing.
Project Pages
Development
License
Blender as a whole is licensed under the GNU General Public License, Version 3. Individual files may have a different, but compatible license.
See blender.org/about/license for details.
Description
Languages
C++
78%
Python
14.9%
C
2.9%
GLSL
1.9%
CMake
1.2%
Other
0.9%
