Explorar el Código

Added .focus property

WestLangley hace 4 años
padre
commit
9c9af09b6f

+ 18 - 17
docs/api/en/lights/shadows/SpotLightShadow.html

@@ -31,8 +31,9 @@
 		//Set up shadow properties for the light
 		//Set up shadow properties for the light
 		light.shadow.mapSize.width = 512;  // default
 		light.shadow.mapSize.width = 512;  // default
 		light.shadow.mapSize.height = 512; // default
 		light.shadow.mapSize.height = 512; // default
-		light.shadow.camera.near = 0.5;       // default
+		light.shadow.camera.near = 0.5;    // default
 		light.shadow.camera.far = 500      // default
 		light.shadow.camera.far = 500      // default
+		light.shadow.focus = 1;            // default
 
 
 		//Create a sphere that cast shadows (but does not receive them)
 		//Create a sphere that cast shadows (but does not receive them)
 		var sphereGeometry = new THREE.SphereBufferGeometry( 5, 32, 32 );
 		var sphereGeometry = new THREE.SphereBufferGeometry( 5, 32, 32 );
@@ -62,28 +63,28 @@
 		<p>See the base [page:LightShadow LightShadow] class for common properties.</p>
 		<p>See the base [page:LightShadow LightShadow] class for common properties.</p>
 
 
 
 
-	 <h3>[property:Camera camera]</h3>
-	 <p>
-		 The light's view of the world. This is used to generate a depth map of the scene; objects behind
-		 other objects from the light's perspective will be in shadow.<br /><br />
-
-		 The default is a  [page:PerspectiveCamera] with [page:PerspectiveCamera.near near] clipping plane at 0.5.
-		 The [page:PerspectiveCamera.fov fov] will track the [page:SpotLight.angle angle] property of the owning
-		 [page:SpotLight SpotLight] via the [page:SpotLightShadow.update update] method. Similarly, the
-		 [page:PerspectiveCamera.aspect aspect] property will track the aspect of the
-		 [page:LightShadow.mapSize mapSize]. If the [page:SpotLight.distance distance] property of the light is
-		 set, the [page:PerspectiveCamera.far far] clipping plane will track that, otherwise it defaults to 500.
+		<h3>[property:Camera camera]</h3>
+		<p>
+			The light's view of the world. This is used to generate a depth map of the scene; objects behind
+			other objects from the light's perspective will be in shadow.<br /><br />
 
 
-	 </p>
+			The default is a  [page:PerspectiveCamera] with [page:PerspectiveCamera.near near] clipping plane at 0.5.
+			The [page:PerspectiveCamera.fov fov] will track the [page:SpotLight.angle angle] property of the owning
+			[page:SpotLight SpotLight] via the [page:SpotLightShadow.update update] method. Similarly, the
+			[page:PerspectiveCamera.aspect aspect] property will track the aspect of the
+			[page:LightShadow.mapSize mapSize]. If the [page:SpotLight.distance distance] property of the light is
+			set, the [page:PerspectiveCamera.far far] clipping plane will track that, otherwise it defaults to 500.
 
 
-		<h2>Methods</h2>
-		<p>See the base [page:LightShadow LightShadow] class for common methods.</p>
+		</p>
 
 
-		<h3>[method:SpotLightShadow update]( [param:SpotLight light] )</h3>
+		<h3>[property:Number focus]</h3>
 		<p>
 		<p>
-		Updates the internal perspective [page:.camera camera] based on the passed in [page:SpotLight light].
+			Used to focus the shadow camera. The camera's field of view is set as a percentage of the spotlight's field-of-view. Range is [0, 1]. Default is 1.0.<br/>
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:LightShadow LightShadow] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		<p>
 		<p>

+ 12 - 10
docs/api/zh/lights/shadows/SpotLightShadow.html

@@ -32,8 +32,9 @@
 		//Set up shadow properties for the light
 		//Set up shadow properties for the light
 		light.shadow.mapSize.width = 512;  // default
 		light.shadow.mapSize.width = 512;  // default
 		light.shadow.mapSize.height = 512; // default
 		light.shadow.mapSize.height = 512; // default
-		light.shadow.camera.near = 0.5;       // default
+		light.shadow.camera.near = 0.5;    // default
 		light.shadow.camera.far = 500      // default
 		light.shadow.camera.far = 500      // default
+		light.shadow.focus = 1;            // default
 
 
 		//Create a sphere that cast shadows (but does not receive them)
 		//Create a sphere that cast shadows (but does not receive them)
 		var sphereGeometry = new THREE.SphereBufferGeometry( 5, 32, 32 );
 		var sphereGeometry = new THREE.SphereBufferGeometry( 5, 32, 32 );
@@ -61,20 +62,21 @@
 		<h2>属性</h2>
 		<h2>属性</h2>
 		<p>有关常用属性,请参阅基础LightShadow类。</p>
 		<p>有关常用属性,请参阅基础LightShadow类。</p>
 
 
-	 <h3>[property:Camera camera]</h3>
-	 <p>
-		 在光的世界里。这用于生成场景的深度图;从光的角度来看,其他物体背后的物体将处于阴影中。<br /><br />
+		<h3>[property:Camera camera]</h3>
+		<p>
+			在光的世界里。这用于生成场景的深度图;从光的角度来看,其他物体背后的物体将处于阴影中。<br /><br />
 
 
-		 默认值为PerspectiveCamera,近剪裁平面为0.5。 fov将通过更新方法跟踪拥有SpotLight的角度属性。同样,aspect属性将跟踪mapSize的方面。如果设置了灯光的距离属性,则远剪裁平面将跟踪该值,否则默认为500。
-	 </p>
+			默认值为PerspectiveCamera,近剪裁平面为0.5。 fov将通过更新方法跟踪拥有SpotLight的角度属性。同样,aspect属性将跟踪mapSize的方面。如果设置了灯光的距离属性,则远剪裁平面将跟踪该值,否则默认为500。
+		</p>
+
+		<h3>[property:Number focus]</h3>
+		<p>
+			Used to focus the shadow camera. The camera's field of view is set as a percentage of the spotlight's field-of-view. Range is [0, 1]. Default is 1.0.<br/>
+		</p>
 
 
 		<h2>方法</h2>
 		<h2>方法</h2>
 		<p>有关常用方法,请参阅基础LightShadow类。</p>
 		<p>有关常用方法,请参阅基础LightShadow类。</p>
 
 
-		<h3>[method:SpotLightShadow update]( [param:SpotLight light] )</h3>
-		<p>
-			根据传入的[page:SpotLight light]更新内部透视[page:.camera camera]。
-		</p>
 
 
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 

+ 5 - 0
src/lights/SpotLightShadow.d.ts

@@ -6,4 +6,9 @@ export class SpotLightShadow extends LightShadow {
 	camera: PerspectiveCamera;
 	camera: PerspectiveCamera;
 	readonly isSpotLightShadow: true;
 	readonly isSpotLightShadow: true;
 
 
+	/**
+	 * @default 1
+	 */
+	focus: number;
+
 }
 }