panda3d/tests/pgraph/test_light.py

21 lines
662 B
Python

from panda3d import core
def luminance(col):
return 0.2126 * col[0] + 0.7152 * col[1] + 0.0722 * col[2]
def test_light_colortemp():
# Default is all white, assuming a D65 white point.
light = core.PointLight("light")
assert light.color == (1, 1, 1, 1)
assert light.color_temperature == 6500
# When setting color temp, it should preserve luminance.
for temp in range(2000, 15000):
light.color_temperature = temp
assert abs(luminance(light.color) - 1.0) < 0.001
# Setting it to the white point will make a white color.
light.color_temperature = 6500
assert light.color.almost_equal((1, 1, 1, 1), 0.001)