8.3 平行光
优质
小牛编辑
127浏览
2023-12-01
我们都知道,太阳光常常被看作平行光,这是因为相对地球上物体的尺度而言,太阳离我们的距离足够远。对于任意平行的平面,平行光照射的亮度都是相同的,而与平面所在位置无关。
平行光的构造函数是:
THREE.DirectionalLight(hex, intensity)
其中,hex
是光源十六进制的颜色值;intensity
是亮度,缺省值为1,表示100%亮度。
此外,对于平行光而言,设置光源位置尤为重要。
var light = new THREE.DirectionalLight();
light.position.set(2, 5, 3);
scene.add(light);
注意,这里设置光源位置并不意味着所有光从(2, 5, 3)
点射出(如果是的话,就成了点光源),而是意味着,平行光将以矢量(-2, -5, -3)
的方向照射到所有平面。因此,平面亮度与平面的位置无关,而只与平面的法向量相关。只要平面是平行的,那么得到的光照也一定是相同的。