Blender Git Loki
Git Commits -> Revision 108594d
Revision 108594d by Erik Englesson (gsoc-2018-many-light-sampling, soc-2020-production-ready-light-tree, soc-2020-production-ready-light-tree-2) August 3, 2018, 15:22 (GMT) |
Cycles: Light tree: energy and light picking fixes When calculating the energy for a light source I previously returned zero energy if is_constant_emission() returned false. This has now been changed so it uses an emission of (1,1,1) instead. The normal that is used for light picking for the BSDF approximation in the importance calculations now takes into consideration if the point is on glass, a reflective or transmissive surface. The position and normal used for light picking is now stored in the ShaderData struct. |
Commit Details:
Full Hash: 108594d8c844edb09afdac1a355f0b6d99cb80db
Parent Commit: 84fec21
Lines Changed: +107, -62
15 Modified Paths:
/intern/cycles/kernel/kernel_bake.h (+7, -4) (Diff)
/intern/cycles/kernel/kernel_emission.h (+3, -4) (Diff)
/intern/cycles/kernel/kernel_light.h (+44, -9) (Diff)
/intern/cycles/kernel/kernel_path.h (+16, -20) (Diff)
/intern/cycles/kernel/kernel_path_branched.h (+13, -7) (Diff)
/intern/cycles/kernel/kernel_path_surface.h (+6, -6) (Diff)
/intern/cycles/kernel/kernel_path_volume.h (+4, -5) (Diff)
/intern/cycles/kernel/kernel_types.h (+4, -0) (Diff)
/intern/cycles/kernel/kernel_volume.h (+2, -0) (Diff)
/intern/cycles/kernel/split/kernel_direct_lighting.h (+2, -2) (Diff)
/intern/cycles/kernel/split/kernel_do_volume.h (+2, -0) (Diff)
/intern/cycles/kernel/split/kernel_holdout_emission_blurring_pathtermination_ao.h (+0, -1) (Diff)
/intern/cycles/kernel/split/kernel_indirect_background.h (+1, -1) (Diff)
/intern/cycles/kernel/split/kernel_lamp_emission.h (+1, -1) (Diff)
/intern/cycles/render/light_tree.cpp (+2, -2) (Diff)
/intern/cycles/kernel/kernel_emission.h (+3, -4) (Diff)
/intern/cycles/kernel/kernel_light.h (+44, -9) (Diff)
/intern/cycles/kernel/kernel_path.h (+16, -20) (Diff)
/intern/cycles/kernel/kernel_path_branched.h (+13, -7) (Diff)
/intern/cycles/kernel/kernel_path_surface.h (+6, -6) (Diff)
/intern/cycles/kernel/kernel_path_volume.h (+4, -5) (Diff)
/intern/cycles/kernel/kernel_types.h (+4, -0) (Diff)
/intern/cycles/kernel/kernel_volume.h (+2, -0) (Diff)
/intern/cycles/kernel/split/kernel_direct_lighting.h (+2, -2) (Diff)
/intern/cycles/kernel/split/kernel_do_volume.h (+2, -0) (Diff)
/intern/cycles/kernel/split/kernel_holdout_emission_blurring_pathtermination_ao.h (+0, -1) (Diff)
/intern/cycles/kernel/split/kernel_indirect_background.h (+1, -1) (Diff)
/intern/cycles/kernel/split/kernel_lamp_emission.h (+1, -1) (Diff)
/intern/cycles/render/light_tree.cpp (+2, -2) (Diff)