点光源(PointLight)

优质
小牛编辑
138浏览
2023-12-01

从一个点向各个方向发射的光源。一个常见的例子是模拟一个灯泡发出的光。

该光源可以投射阴影 - 跳转至 PointLightShadow 查看更多细节。

代码示例

const light = new THREE.PointLight( 0xff0000, 1, 100 );
light.position.set( 50, 50, 50 );
scene.add( light );

例子

lights / pointlights
effects / anaglyph
geometry / text
lensflares

构造器(Constructor)

PointLight( color : Integer, intensity : Float, distance : Number, decay : Float )

color - (可选参数)) 十六进制光照颜色。 缺省值 0xffffff (白色)。
intensity - (可选参数) 光照强度。 缺省值 1。

distance - 这个距离表示从光源到光照强度为0的位置。 当设置为0时,光永远不会消失(距离无穷大)。缺省值 0.
decay - 沿着光照距离的衰退量。缺省值 1。 在 physically correct 模式中,decay = 2。

创建一个新的点光源(PointLight)。

属性(Properties)

公共属性请查看基类Light

.decay : Float

沿着光照距离的衰减量
physically correct 模式下,decay 设置为等于2将实现现实世界的光衰减。
缺省值为 1

.distance : Float

如果非零,那么光强度将会从最大值当前灯光位置处按照距离线性衰减到0。 缺省值为 0.0

.power : Float

光功率
physically correct 模式中, 表示以"流明(光通量单位)"为单位的光功率。 缺省值 - 4Math.PI

该值与 intensity 直接关联

power = intensity * 4π
修改该值也会导致光强度的改变。

.shadow : PointLightShadow

PointLightShadow用与计算此光照的阴影。

此对象的摄像机被设置为 fov 为90度,aspect为1, 近裁剪面 near 为0,远裁剪面far 为500的透视摄像机 PerspectiveCamera

方法(Methods)

公共方法请查看基类 Light

.copy ( source : PointLight ) : PointLight

将所有属性的值从源 source 复制到此点光源对象。

Source

src/lights/PointLight.js