[Bf-blender-cvs] [9a9873acc7c] soc-2022-many-lights-sampling: Fix: many lights oversamples area light outside of spread
Jeffrey Liu
noreply at git.blender.org
Sat Jul 23 19:06:39 CEST 2022
Commit: 9a9873acc7c550554cd3f621ca613a60551238d7
Author: Jeffrey Liu
Date: Sat Jul 23 13:05:11 2022 -0400
Branches: soc-2022-many-lights-sampling
https://developer.blender.org/rB9a9873acc7c550554cd3f621ca613a60551238d7
Fix: many lights oversamples area light outside of spread
This issue was caused by the light tree construction assuming the
emission profile of the area light would be equal to a constant value.
This is resolved by setting it equal to half of the spread.
===================================================================
M intern/cycles/scene/light_tree.cpp
===================================================================
diff --git a/intern/cycles/scene/light_tree.cpp b/intern/cycles/scene/light_tree.cpp
index e05b1ca029f..4aed50c6f4f 100644
--- a/intern/cycles/scene/light_tree.cpp
+++ b/intern/cycles/scene/light_tree.cpp
@@ -178,7 +178,7 @@ OrientationBounds LightTreePrimitive::calculate_bcone(Scene *scene) const
}
else if (type == LIGHT_AREA) {
bcone.theta_o = 0;
- bcone.theta_e = M_PI_2_F;
+ bcone.theta_e = lamp->get_spread() * 0.5f;
}
else {
/* This should never be reached during construction. */
More information about the Bf-blender-cvs
mailing list