Three.js提供了多种类型的灯光,包括环境光、点光源、平行光源和聚光灯。这些灯光可以用来照亮场景中的物体,使其看起来更加真实。
var ambientLight = new THREE.AmbientLight(0xffffff, 0.5); // 光的颜色为白色,强度为0.5
scene.add(ambientLight); // 将环境光添加到场景中
- 点光源(PointLight):点光源是从一个点向四面八方发射光线的光源,可以用来模拟灯泡或者火炬等光源。创建点光源的代码如下:
var pointLight = new THREE.PointLight(0xffffff, 1, 100); // 光的颜色为白色,强度为1,距离为100
pointLight.position.set(0, 10, 0); // 设置光源的位置 scene.add(pointLight); // 将点光源添加到场景中
- 平行光源(DirectionalLight):平行光源是从一个方向发射的光线,可以用来模拟太阳等光源。创建平行光源的代码如下:
var directionalLight = new THREE.DirectionalLight(0xffffff, 1); // 光的颜色为白色,强度为1
directionalLight.position.set(0, 1, 0); // 设置光源的方向
scene.add(directionalLight); // 将平行光源添加到场景中
- 聚光灯(SpotLight):聚光灯是从一个点向一个方向发射的光线,可以用来模拟手电筒等光源。创建聚光灯的代码如下:
var spotLight = new THREE.SpotLight(0xffffff, 1, 100); // 光的颜色为白色,强度为1,距离为100spotLight.position.set(0, 10, 0); // 设置光源的位置 spotLight.target.position.set(0, 0, 0); // 设置光源的目标位置 scene.add(spotLight); // 将聚光灯添加到场景中