Răsfoiți Sursa

Merge pull request #4 from mrdoob/dev

merge dev into stencil branch
Garrett Johnson 6 ani în urmă
părinte
comite
3595590a9f
100 a modificat fișierele cu 3367 adăugiri și 2895 ștergeri
  1. 15 0
      .editorconfig
  2. 1 1
      .github/ISSUE_TEMPLATE.md
  3. 0 1
      .npmignore
  4. 3 3
      README.md
  5. 733 963
      build/three.js
  6. 355 384
      build/three.min.js
  7. 731 961
      build/three.module.js
  8. 5 0
      docs/api/en/animation/AnimationClip.html
  9. 5 0
      docs/api/en/animation/KeyframeTrack.html
  10. 1 1
      docs/api/en/audio/Audio.html
  11. 1 1
      docs/api/en/audio/AudioAnalyser.html
  12. 4 4
      docs/api/en/audio/AudioListener.html
  13. 2 2
      docs/api/en/audio/PositionalAudio.html
  14. 2 2
      docs/api/en/cameras/ArrayCamera.html
  15. 3 3
      docs/api/en/cameras/OrthographicCamera.html
  16. 3 2
      docs/api/en/cameras/PerspectiveCamera.html
  17. 1 0
      docs/api/en/constants/Renderer.html
  18. 1 1
      docs/api/en/core/BufferGeometry.html
  19. 4 2
      docs/api/en/core/Geometry.html
  20. 10 4
      docs/api/en/core/Object3D.html
  21. 1 1
      docs/api/en/extras/core/Path.html
  22. 1 1
      docs/api/en/extras/core/Shape.html
  23. 5 2
      docs/api/en/extras/core/ShapePath.html
  24. 1 1
      docs/api/en/extras/curves/ArcCurve.html
  25. 1 1
      docs/api/en/geometries/ConeBufferGeometry.html
  26. 1 1
      docs/api/en/geometries/ConeGeometry.html
  27. 1 1
      docs/api/en/geometries/DodecahedronBufferGeometry.html
  28. 2 0
      docs/api/en/geometries/ExtrudeBufferGeometry.html
  29. 2 0
      docs/api/en/geometries/ExtrudeGeometry.html
  30. 1 1
      docs/api/en/geometries/IcosahedronBufferGeometry.html
  31. 1 1
      docs/api/en/geometries/OctahedronBufferGeometry.html
  32. 1 1
      docs/api/en/geometries/TetrahedronBufferGeometry.html
  33. 3 1
      docs/api/en/geometries/TextBufferGeometry.html
  34. 3 1
      docs/api/en/geometries/TextGeometry.html
  35. 1 1
      docs/api/en/helpers/AxesHelper.html
  36. 1 1
      docs/api/en/helpers/Box3Helper.html
  37. 7 7
      docs/api/en/helpers/BoxHelper.html
  38. 1 1
      docs/api/en/helpers/CameraHelper.html
  39. 1 1
      docs/api/en/helpers/FaceNormalsHelper.html
  40. 2 2
      docs/api/en/helpers/GridHelper.html
  41. 1 1
      docs/api/en/helpers/PlaneHelper.html
  42. 1 1
      docs/api/en/helpers/PointLightHelper.html
  43. 1 1
      docs/api/en/helpers/PolarGridHelper.html
  44. 73 0
      docs/api/en/helpers/PositionalAudioHelper.html
  45. 1 1
      docs/api/en/helpers/VertexNormalsHelper.html
  46. 3 2
      docs/api/en/lights/Light.html
  47. 4 5
      docs/api/en/loaders/AnimationLoader.html
  48. 10 0
      docs/api/en/loaders/ImageBitmapLoader.html
  49. 1 1
      docs/api/en/loaders/ImageLoader.html
  50. 24 0
      docs/api/en/loaders/Loader.html
  51. 10 3
      docs/api/en/materials/Material.html
  52. 131 0
      docs/api/en/materials/MeshDistanceMaterial.html
  53. 150 0
      docs/api/en/materials/MeshMatcapMaterial.html
  54. 61 1
      docs/api/en/materials/MeshNormalMaterial.html
  55. 2 2
      docs/api/en/materials/MeshToonMaterial.html
  56. 1 1
      docs/api/en/materials/RawShaderMaterial.html
  57. 22 2
      docs/api/en/math/Box3.html
  58. 1 1
      docs/api/en/math/Matrix3.html
  59. 2 1
      docs/api/en/math/Matrix4.html
  60. 7 0
      docs/api/en/math/Quaternion.html
  61. 1 1
      docs/api/en/math/Spherical.html
  62. 2 2
      docs/api/en/objects/LOD.html
  63. 1 1
      docs/api/en/objects/Mesh.html
  64. 3 3
      docs/api/en/objects/SkinnedMesh.html
  65. 0 6
      docs/api/en/renderers/WebGLRenderTargetCube.html
  66. 80 50
      docs/api/en/renderers/WebGLRenderer.html
  67. 3 2
      docs/api/en/scenes/Scene.html
  68. 10 2
      docs/api/en/textures/DataTexture3D.html
  69. 17 5
      docs/api/en/textures/Texture.html
  70. 3 0
      docs/api/zh/animation/AnimationClip.html
  71. 6 0
      docs/api/zh/animation/AnimationUtils.html
  72. 3 0
      docs/api/zh/animation/KeyframeTrack.html
  73. 2 2
      docs/api/zh/audio/Audio.html
  74. 1 1
      docs/api/zh/audio/AudioAnalyser.html
  75. 4 4
      docs/api/zh/audio/AudioListener.html
  76. 2 2
      docs/api/zh/audio/PositionalAudio.html
  77. 1 1
      docs/api/zh/cameras/ArrayCamera.html
  78. 2 2
      docs/api/zh/core/Object3D.html
  79. 73 0
      docs/api/zh/helpers/PositionalAudioHelper.html
  80. 4 7
      docs/api/zh/loaders/AnimationLoader.html
  81. 10 0
      docs/api/zh/loaders/ImageBitmapLoader.html
  82. 20 0
      docs/api/zh/loaders/Loader.html
  83. 5 1
      docs/api/zh/materials/Material.html
  84. 112 0
      docs/api/zh/materials/MeshDistanceMaterial.html
  85. 120 0
      docs/api/zh/materials/MeshMatcapMaterial.html
  86. 42 1
      docs/api/zh/materials/MeshNormalMaterial.html
  87. 2 2
      docs/api/zh/materials/MeshToonMaterial.html
  88. 7 7
      docs/api/zh/math/Cylindrical.html
  89. 2 2
      docs/api/zh/math/Euler.html
  90. 3 3
      docs/api/zh/math/Matrix3.html
  91. 5 5
      docs/api/zh/math/Matrix4.html
  92. 8 1
      docs/api/zh/math/Quaternion.html
  93. 16 19
      docs/api/zh/math/Spherical.html
  94. 117 115
      docs/api/zh/math/Vector2.html
  95. 136 138
      docs/api/zh/math/Vector3.html
  96. 111 111
      docs/api/zh/math/Vector4.html
  97. 2 2
      docs/api/zh/objects/LOD.html
  98. 1 1
      docs/api/zh/objects/Mesh.html
  99. 7 7
      docs/api/zh/objects/SkinnedMesh.html
  100. 0 5
      docs/api/zh/renderers/WebGLRenderTargetCube.html

+ 15 - 0
.editorconfig

@@ -0,0 +1,15 @@
+# http://editorconfig.org
+
+root = true
+
+[*]
+end_of_line = lf
+insert_final_newline = true
+
+[*.{js,ts,html}]
+charset = utf-8
+indent_style = tab
+indent_size = 2
+
+[*.{js,ts}]
+trim_trailing_whitespace = true

+ 1 - 1
.github/ISSUE_TEMPLATE.md

@@ -19,7 +19,7 @@ Please also include a live example if possible. You can start from these templat
 ##### Three.js version
 
 - [ ] Dev
-- [ ] r100
+- [ ] r104
 - [ ] ...
 
 ##### Browser

+ 0 - 1
.npmignore

@@ -1,6 +1,5 @@
 examples/*
 !examples/js/
-src/
 test/
 utils/
 docs/

+ 3 - 3
README.md

@@ -10,7 +10,7 @@ three.js
 
 #### JavaScript 3D library ####
 
-The aim of the project is to create an easy to use, lightweight, 3D library. The library provides Canvas 2D, SVG, CSS3D and WebGL renderers.
+The aim of the project is to create an easy to use, lightweight, 3D library with a default WebGL renderer. The library also provides Canvas 2D, SVG and CSS3D renderers in the examples.
 
 [Examples](http://threejs.org/examples/) —
 [Documentation](http://threejs.org/docs/) —
@@ -24,13 +24,13 @@ The aim of the project is to create an easy to use, lightweight, 3D library. The
 ### Usage ###
 
 Download the [minified library](http://threejs.org/build/three.min.js) and include it in your HTML, or install and import it as a [module](http://threejs.org/docs/#manual/introduction/Import-via-modules),
-Alternatively see [how to build the library yourself](https://github.com/mrdoob/three.js/wiki/Build-instructions).
+Alternatively, see [how to build the library yourself](https://github.com/mrdoob/three.js/wiki/Build-instructions).
 
 ```html
 <script src="js/three.min.js"></script>
 ```
 
-This code creates a scene, a camera, and a geometric cube, and it adds the cube to the scene. It then creates a `WebGL` renderer for the scene and camera, and it adds that viewport to the document.body element. Finally, it animates the cube within the scene for the camera.
+This code creates a scene, a camera, and a geometric cube, and it adds the cube to the scene. It then creates a `WebGL` renderer for the scene and camera, and it adds that viewport to the `document.body` element. Finally, it animates the cube within the scene for the camera.
 
 ```javascript
 var camera, scene, renderer;

Fișier diff suprimat deoarece este prea mare
+ 733 - 963
build/three.js


Fișier diff suprimat deoarece este prea mare
+ 355 - 384
build/three.min.js


Fișier diff suprimat deoarece este prea mare
+ 731 - 961
build/three.module.js


+ 5 - 0
docs/api/en/animation/AnimationClip.html

@@ -66,6 +66,11 @@
 		<h2>Methods</h2>
 
 
+		<h3>[method:AnimationClip clone]()</h3>
+		<p>
+			Returns a copy of this clip.
+		</p>
+
 		<h3>[method:this optimize]()</h3>
 		<p>
 			Optimizes each track by removing equivalent sequential keys (which are common in morph target

+ 5 - 0
docs/api/en/animation/KeyframeTrack.html

@@ -160,6 +160,11 @@
 		<h2>Methods</h2>
 
 
+		<h3>[method:KeyframeTrack clone]()</h3>
+		<p>
+			Returns a copy of this track.
+		</p>
+
 		<h3>[method:null createInterpolant]()</h3>
 		<p>
 			Creates a [page:LinearInterpolant LinearInterpolant], [page:CubicInterpolant CubicInterpolant]

+ 1 - 1
docs/api/en/audio/Audio.html

@@ -22,7 +22,7 @@
 		<h2>Example</h2>
 
 		<p>
-			[example:webaudio_sandbox webaudio / sandbox ]</br>
+			[example:webaudio_sandbox webaudio / sandbox ]<br />
 			[example:webaudio_visualizer webaudio / visualizer ]
 		</p>
 

+ 1 - 1
docs/api/en/audio/AudioAnalyser.html

@@ -22,7 +22,7 @@
 		<h2>Example</h2>
 
 		<p>
-			[example:webaudio_sandbox webaudio / sandbox ]</br>
+			[example:webaudio_sandbox webaudio / sandbox ]<br />
 			[example:webaudio_visualizer webaudio / visualizer ]
 		</p>
 

+ 4 - 4
docs/api/en/audio/AudioListener.html

@@ -13,8 +13,8 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-			The [name] represents a virtual [link:https://developer.mozilla.org/de/docs/Web/API/AudioListener listener] of the all positional and non-positional audio effects in the scene.</br>
-			A three.js application usually creates a single instance of [name]. It is a mandatory construtor parameter for audios entities like [page:Audio Audio] and [page:PositionalAudio PositionalAudio].</br>
+			The [name] represents a virtual [link:https://developer.mozilla.org/de/docs/Web/API/AudioListener listener] of the all positional and non-positional audio effects in the scene.<br />
+			A three.js application usually creates a single instance of [name]. It is a mandatory construtor parameter for audios entities like [page:Audio Audio] and [page:PositionalAudio PositionalAudio].<br />
 			In most cases, the listener object is a child of the camera. So the 3D transformation of the camera represents the 3D transformation of the listener.
 		</p>
 
@@ -22,8 +22,8 @@
 		<h2>Example</h2>
 
 		<p>
-			[example:webaudio_sandbox webaudio / sandbox ]</br>
-			[example:webaudio_timing webaudio / timing ]</br>
+			[example:webaudio_sandbox webaudio / sandbox ]<br />
+			[example:webaudio_timing webaudio / timing ]<br />
 			[example:webaudio_visualizer webaudio / visualizer ]
 		</p>
 

+ 2 - 2
docs/api/en/audio/PositionalAudio.html

@@ -22,8 +22,8 @@
 		<h2>Example</h2>
 
 		<p>
-			[example:webaudio_orientation webaudio / orientation ]</br>
-			[example:webaudio_sandbox webaudio / sandbox ]</br>
+			[example:webaudio_orientation webaudio / orientation ]<br />
+			[example:webaudio_sandbox webaudio / sandbox ]<br />
 			[example:webaudio_timing webaudio / timing ]
 		</p>
 

+ 2 - 2
docs/api/en/cameras/ArrayCamera.html

@@ -8,13 +8,13 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:PerspectiveCamera] &rarr;
+		[page:Object3D] &rarr; [page:Camera] &rarr; [page:PerspectiveCamera] &rarr;
 
 		<h1>[name]</h1>
 
 		<p class="desc">
 			[name] can be used in order to efficiently render a scene with a predefined set of cameras. This is an important performance aspect for rendering VR scenes.<br />
-			An instance of [name] always has an array of sub cameras. It's mandatory to define for each sub camera the *bounds* property which determines the part of the viewport that is rendered with this camera.
+			An instance of [name] always has an array of sub cameras. It's mandatory to define for each sub camera the *viewport* property which determines the part of the viewport that is rendered with this camera.
 		</p>
 
 		<h2>Example</h2>

+ 3 - 3
docs/api/en/cameras/OrthographicCamera.html

@@ -130,12 +130,12 @@ scene.add( camera );</code>
 		Updates the camera projection matrix. Must be called after any change of parameters.
 		</p>
 
-		<h3>[method:JSON toJSON]()</h3>
+		<h3>[method:Object toJSON](param:object meta])</h3>
 		<p>
-		Return the camera's data in JSON format.
+		meta -- object containing metadata such as textures or images in objects' descendants.<br />
+		Convert the camera to three.js [link:https://github.com/mrdoob/three.js/wiki/JSON-Object-Scene-format-4 JSON Object/Scene format].
 		</p>
 
-
 		<h2>Source</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 3 - 2
docs/api/en/cameras/PerspectiveCamera.html

@@ -190,9 +190,10 @@ camera.setViewOffset( fullWidth, fullHeight, w * 2, h * 1, w, h );
 		Updates the camera projection matrix. Must be called after any change of parameters.
 		</p>
 
-		<h3>[method:JSON toJSON]()</h3>
+		<h3>[method:Object toJSON](param:object meta])</h3>
 		<p>
-		Return camera data in JSON format.
+		meta -- object containing metadata such as textures or images in objects' descendants.<br />
+		Convert the camera to three.js [link:https://github.com/mrdoob/three.js/wiki/JSON-Object-Scene-format-4 JSON Object/Scene format].
 		</p>
 
 		<h2>Source</h2>

+ 1 - 0
docs/api/en/constants/Renderer.html

@@ -55,6 +55,7 @@
 		THREE.ReinhardToneMapping
 		THREE.Uncharted2ToneMapping
 		THREE.CineonToneMapping
+		THREE.ACESFilmicToneMapping
 		</code>
 		<p>
 		These define the WebGLRenderer's [page:WebGLRenderer.toneMapping toneMapping] property.

+ 1 - 1
docs/api/en/core/BufferGeometry.html

@@ -327,7 +327,7 @@
 		<p>Sets the attributes for this BufferGeometry from an array of points.</p>
 
 		<h3>[method:Object toJSON]()</h3>
-		<p>Returns a JSON object representation of the BufferGeometry.</p>
+		<p>Convert the buffer geometry to three.js [link:https://github.com/mrdoob/three.js/wiki/JSON-Object-Scene-format-4 JSON Object/Scene format].</p>
 
 		<h3>[method:BufferGeometry toNonIndexed]()</h3>
 		<p>Return a non-index version of an indexed BufferGeometry.</p>

+ 4 - 2
docs/api/en/core/Geometry.html

@@ -327,8 +327,10 @@
 		Use [page:Object3D.scale] for typical real-time mesh scaling.
 		</p>
 
-		<h3>[method:JSON toJSON] ( )</h3>
-		<p>Convert the geometry to JSON format.</p>
+		<h3>[method:Object toJSON] ( )</h3>
+		<p>Convert the geometry to JSON format.<br />
+		Convert the geometry to three.js [link:https://github.com/mrdoob/three.js/wiki/JSON-Object-Scene-format-4 JSON Object/Scene format].
+		</p>
 
 		<h3>[method:Geometry translate] ( [param:Float x], [param:Float y], [param:Float z] )</h3>
 		<p>

+ 10 - 4
docs/api/en/core/Object3D.html

@@ -46,7 +46,7 @@
 
 		<h3>[property:Material customDistanceMaterial]</h3>
 		<p>
-		Same as customDepthMaterial, but used with [page:PointLight]. Default is *undefined*.
+		Same as [page:.customDepthMaterial customDepthMaterial], but used with [page:PointLight]. Default is *undefined*.
 		</p>
 
 		<h3>[property:Boolean frustumCulled]</h3>
@@ -217,6 +217,9 @@
 		<h3>[method:this applyQuaternion]( [param:Quaternion quaternion] )</h3>
 		<p>Applies the rotation represented by the quaternion to the object.</p>
 
+		<h3>[method:this attach]( [param:Object3D object] )</h3>
+		<p>Adds *object* as a child of this, while maintaining the object's world transform.</p>
+
 		<h3>[method:Object3D clone]( [param:Boolean recursive] )</h3>
 		<p>
 		recursive -- if true, descendants of the object are also cloned. Default is true.<br /><br />
@@ -229,6 +232,8 @@
 		recursive -- if true, descendants of the object are also copied. Default is true.<br /><br />
 
 		Copy the given object into this object.
+
+		Note: event listeners and user-defined callbacks ([page:.onAfterRender] and [page:.onBeforeRender]) are not copied.
 		</p>
 
 		<h3>[method:Object3D getObjectById]( [param:Integer id] )</h3>
@@ -292,7 +297,7 @@
 		Converts the vector from local space to world space.
 		</p>
 
-		<h3>[method:null lookAt]( [param:Vector3 vector] )</br>
+		<h3>[method:null lookAt]( [param:Vector3 vector] )<br />
 		[method:null lookAt]( [param:Float x], [param:Float y], [param:Float z] )</h3>
 		<p>
 		vector - A vector representing a position in world space.<br /><br />
@@ -387,9 +392,10 @@
 			Copy the given quaternion into [page:.quaternion].
 		</p>
 
-		<h3>[method:null toJSON]( [param:Quaternion q] )</h3>
+		<h3>[method:Object toJSON]( [param:object meta] )</h3>
 		<p>
-			Convert the object to JSON format.
+		meta -- object containing metadata such as materials, textures or images for the object.<br />
+		Convert the object to three.js [link:https://github.com/mrdoob/three.js/wiki/JSON-Object-Scene-format-4 JSON Object/Scene format].
 		</p>
 
 		<h3>[method:this translateOnAxis]( [param:Vector3 axis], [param:Float distance] )</h3>

+ 1 - 1
docs/api/en/extras/core/Path.html

@@ -8,7 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:CurvePath] &rarr;
+		[page:Curve] &rarr; [page:CurvePath] &rarr;
 
 		<h1>[name]</h1>
 

+ 1 - 1
docs/api/en/extras/core/Shape.html

@@ -8,7 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:Path] &rarr;
+		[page:Curve] &rarr; [page:CurvePath] &rarr; [page:Path] &rarr;
 
 		<h1>[name]</h1>
 

+ 5 - 2
docs/api/en/extras/core/ShapePath.html

@@ -8,7 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:CurvePath] &rarr;
+		[page:Curve] &rarr; [page:CurvePath] &rarr;
 
 		<h1>[name]</h1>
 
@@ -44,6 +44,9 @@
 		The current [page:Path] that is being generated.
 		</p>
 
+		<h3>[property:Color color]</h3>
+		<p>[page:Color] of the shape, by default set to white (0xffffff).</p>
+
 		<h2>Methods</h2>
 
 		<h3>[method:null moveTo]( [param:Float x], [param:Float y] )</h3>
@@ -86,6 +89,6 @@
 
 		<h2>Source</h2>
 
-		[link:https://github.com/mrdoob/three.js/blob/master/src/extras/core/Path.js src/extras/core/Path.js]
+		[link:https://github.com/mrdoob/three.js/blob/master/src/extras/core/ShapePath.js src/extras/core/ShapePath.js]
 	</body>
 </html>

+ 1 - 1
docs/api/en/extras/curves/ArcCurve.html

@@ -8,7 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:EllipseCurve] &rarr;
+		[page:Curve] &rarr; [page:EllipseCurve] &rarr;
 
 		<h1>[name]</h1>
 

+ 1 - 1
docs/api/en/geometries/ConeBufferGeometry.html

@@ -8,7 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:CylinderBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:CylinderBufferGeometry] &rarr;
 
 		<h1>[name]</h1>
 

+ 1 - 1
docs/api/en/geometries/ConeGeometry.html

@@ -8,7 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:CylinderGeometry] &rarr;
+		[page:Geometry] &rarr; [page:CylinderGeometry] &rarr;
 
 		<h1>[name]</h1>
 

+ 1 - 1
docs/api/en/geometries/DodecahedronBufferGeometry.html

@@ -8,7 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:PolyhedronBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:PolyhedronBufferGeometry] &rarr;
 
 		<h1>[name]</h1>
 

+ 2 - 0
docs/api/en/geometries/ExtrudeBufferGeometry.html

@@ -51,6 +51,7 @@
 			bevelEnabled: true,
 			bevelThickness: 1,
 			bevelSize: 1,
+			bevelOffset: 0,
 			bevelSegments: 1
 		};
 
@@ -76,6 +77,7 @@
 				<li>bevelEnabled — bool. Apply beveling to the shape. Default is true.</li>
 				<li>bevelThickness — float. How deep into the original shape the bevel goes. Default is 6.</li>
 				<li>bevelSize — float. Distance from the shape outline that the bevel extends. Default is bevelThickness - 2.</li>
+				<li>bevelOffset — float. Distance from the shape outline that the bevel starts. Default is 0.</li>
 				<li>bevelSegments — int. Number of bevel layers. Default is 3.</li>
 				<li>extrudePath — THREE.CurvePath. A 3D spline path along which the shape should be extruded.</li>
 				<li>UVGenerator —  Object. object that provides UV generator functions</li>

+ 2 - 0
docs/api/en/geometries/ExtrudeGeometry.html

@@ -51,6 +51,7 @@
 			bevelEnabled: true,
 			bevelThickness: 1,
 			bevelSize: 1,
+			bevelOffset: 0,
 			bevelSegments: 1
 		};
 
@@ -76,6 +77,7 @@
 				<li>bevelEnabled — bool. Apply beveling to the shape. Default is true.</li>
 				<li>bevelThickness — float. How deep into the original shape the bevel goes. Default is 6.</li>
 				<li>bevelSize — float. Distance from the shape outline that the bevel extends. Default is bevelThickness - 2.</li>
+				<li>bevelOffset — float. Distance from the shape outline that the bevel starts. Default is 0.</li>
 				<li>bevelSegments — int. Number of bevel layers. Default is 3.</li>
 				<li>extrudePath — THREE.CurvePath. A 3D spline path along which the shape should be extruded.</li>
 				<li>UVGenerator —  Object. object that provides UV generator functions</li>

+ 1 - 1
docs/api/en/geometries/IcosahedronBufferGeometry.html

@@ -8,7 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:PolyhedronBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:PolyhedronBufferGeometry] &rarr;
 		<h1>[name]</h1>
 
 		<p class="desc">A class for generating an icosahedron geometry.</p>

+ 1 - 1
docs/api/en/geometries/OctahedronBufferGeometry.html

@@ -8,7 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:PolyhedronBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:PolyhedronBufferGeometry] &rarr;
 		<h1>[name]</h1>
 
 		<p class="desc">A class for generating an octahedron geometry.</p>

+ 1 - 1
docs/api/en/geometries/TetrahedronBufferGeometry.html

@@ -8,7 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:PolyhedronBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:PolyhedronBufferGeometry] &rarr;
 
 		<h1>[name]</h1>
 

+ 3 - 1
docs/api/en/geometries/TextBufferGeometry.html

@@ -8,7 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:ExtrudeBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:ExtrudeBufferGeometry] &rarr;
 
 		<h1>[name]</h1>
 
@@ -55,6 +55,7 @@
 				bevelEnabled: true,
 				bevelThickness: 10,
 				bevelSize: 8,
+				bevelOffset: 0,
 				bevelSegments: 5
 			} );
 		} );
@@ -74,6 +75,7 @@
 			<li>bevelEnabled — Boolean. Turn on bevel. Default is False.</li>
 			<li>bevelThickness — Float. How deep into text bevel goes. Default is 10.</li>
 			<li>bevelSize — Float. How far from text outline is bevel. Default is 8.</li>
+			<li>bevelOffset — Float. How far from text outline bevel starts. Default is 0.</li>
 			<li>bevelSegments — Integer. Number of bevel segments. Default is 3.</li>
 		</ul>
 		</p>

+ 3 - 1
docs/api/en/geometries/TextGeometry.html

@@ -8,7 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:ExtrudeGeometry] &rarr;
+		[page:Geometry] &rarr; [page:ExtrudeGeometry] &rarr;
 
 		<h1>[name]</h1>
 
@@ -55,6 +55,7 @@
 				bevelEnabled: true,
 				bevelThickness: 10,
 				bevelSize: 8,
+				bevelOffset: 0,
 				bevelSegments: 5
 			} );
 		} );
@@ -74,6 +75,7 @@
 			<li>bevelEnabled — Boolean. Turn on bevel. Default is False.</li>
 			<li>bevelThickness — Float. How deep into text bevel goes. Default is 10.</li>
 			<li>bevelSize — Float. How far from text outline is bevel. Default is 8.</li>
+			<li>bevelOffset — Float. How far from text outline bevel starts. Default is 0.</li>
 			<li>bevelSegments — Integer. Number of bevel segments. Default is 3.</li>
 		</ul>
 		</p>

+ 1 - 1
docs/api/en/helpers/AxesHelper.html

@@ -8,7 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:LineSegments] &rarr;
+		[page:Object3D] &rarr; [page:Line] &rarr; [page:LineSegments] &rarr;
 
 		<h1>[name]</h1>
 

+ 1 - 1
docs/api/en/helpers/Box3Helper.html

@@ -8,7 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:LineSegments] &rarr;
+		[page:Object3D] &rarr; [page:Line] &rarr; [page:LineSegments] &rarr;
 
 		<h1>[name]</h1>
 

+ 7 - 7
docs/api/en/helpers/BoxHelper.html

@@ -8,13 +8,13 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:LineSegments] &rarr;
+		[page:Object3D] &rarr; [page:Line] &rarr; [page:LineSegments] &rarr;
 
 		<h1>[name]</h1>
 
 		<p class="desc">
-			Helper object to show the world-axis-aligned bounding box around an object.
-
+			Helper object to graphically show the world-axis-aligned bounding box around an object. The actual bounding box is handled with [page:Box3], this is just a visual helper for debugging.
+			It can be automatically resized with the [page:BoxHelper.update] method when the object it's created from is transformed.
 			Note that the object must have a [page:Geometry] or [page:BufferGeometry] for this to work,
 			so it won't work with [page:Sprite Sprites].
 		</p>
@@ -28,10 +28,10 @@
 
 
 		<code>
-		var sphere = new THREE.SphereGeometry();
-		var object = new THREE.Mesh( sphere, new THREE.MeshBasicMaterial( 0xff0000 ) );
-		var box = new THREE.BoxHelper( object, 0xffff00 );
-		scene.add( box );
+			var sphere = new THREE.SphereGeometry();
+			var object = new THREE.Mesh( sphere, new THREE.MeshBasicMaterial( 0xff0000 ) );
+			var box = new THREE.BoxHelper( object, 0xffff00 );
+			scene.add( box );
 		</code>
 
 

+ 1 - 1
docs/api/en/helpers/CameraHelper.html

@@ -8,7 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:LineSegments] &rarr;
+		[page:Object3D] &rarr; [page:Line] &rarr; [page:LineSegments] &rarr;
 
 		<h1>[name]</h1>
 

+ 1 - 1
docs/api/en/helpers/FaceNormalsHelper.html

@@ -8,7 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:LineSegments] &rarr;
+		[page:Object3D] &rarr; [page:Line] &rarr; [page:LineSegments] &rarr;
 
 		<h1>[name]</h1>
 

+ 2 - 2
docs/api/en/helpers/GridHelper.html

@@ -8,8 +8,8 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:Line] &rarr;
-
+		[page:Object3D] &rarr; [page:Line] &rarr;
+		
 		<h1>[name]</h1>
 
 		<p class="desc">The GridHelper is an object to define grids. Grids are two-dimensional arrays of lines.</p>

+ 1 - 1
docs/api/en/helpers/PlaneHelper.html

@@ -8,7 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:LineSegments] &rarr;
+		[page:Object3D] &rarr; [page:Line] &rarr; [page:LineSegments] &rarr;
 
 		<h1>[name]</h1>
 

+ 1 - 1
docs/api/en/helpers/PointLightHelper.html

@@ -8,7 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:Mesh] &rarr;
+		[page:Object3D] &rarr; [page:Mesh] &rarr;
 
 		<h1>[name]</h1>
 

+ 1 - 1
docs/api/en/helpers/PolarGridHelper.html

@@ -8,7 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:Line] &rarr;
+		[page:Object3D] &rarr; [page:Line] &rarr;
 
 		<h1>[name]</h1>
 

+ 73 - 0
docs/api/en/helpers/PositionalAudioHelper.html

@@ -0,0 +1,73 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Object3D] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">This helper displays the directional cone of a [page:PositionalAudio].</p>
+
+		<h2>Example</h2>
+
+		<div>[example:webaudio_orientation webaudio / orientation ]</div>
+
+		<h2>Code Example</h2>
+		<code>
+var positionalAudio = new THREE.PositionalAudio( listener );
+positionalAudio.setDirectionalCone( 180, 230, 0.1 );
+
+var helper = new PositionalAudioHelper( positionalAudio );
+positionalAudio.add( helper );
+		</code>
+
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( [param:PositionalAudio audio], [param:Number range] )</h3>
+		<p>
+			[page:PositionalAudio audio] -- The [page:PositionalAudio] to be visualized. <br /><br/>
+
+			[page:Number range] -- (optional) The range of the directional cone. <br /><br/>
+
+			[page:Number divisionsInnerAngle] -- (optional) The amount of divisions of the inner part of the directional cone. <br /><br/>
+
+			[page:Number divisionsOuterAngle] -- (optional) The amount of divisions of the outer part of the directional cone. <br /><br/>
+		</p>
+
+
+		<h2>Properties</h2>
+		<p>See the base [page:Object3D] class for common properties.</p>
+
+		<h3>[property:PositionalAudio audio]</h3>
+		<p>[page:PositionalAudio] to be visualized.</p>
+
+		<h3>[property:Number range]</h3>
+		<p>The range of the directional cone.</p>
+
+		<h3>[property:Number divisionsInnerAngle]</h3>
+		<p>The amount of divisions of the inner part of the directional cone.</p>
+
+		<h3>[property:Number divisionsOuterAngle]</h3>
+		<p>The amount of divisions of the outer part of the directional cone.</p>
+
+		<h2>Methods</h2>
+		<p>See the base [page:Object3D] class for common methods.</p>
+
+		<h3>[method:null dispose]()</h3>
+		<p>Disposes of the helper.</p>
+
+		<h3>[method:null update]()</h3>
+		<p>Updates the helper.</p>
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 1 - 1
docs/api/en/helpers/VertexNormalsHelper.html

@@ -8,7 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:Line] &rarr;
+		[page:Object3D] &rarr; [page:Line] &rarr;
 
 		<h1>[name]</h1>
 

+ 3 - 2
docs/api/en/lights/Light.html

@@ -67,9 +67,10 @@
 		[page:Light source] light into this one.
 		</p>
 
-		<h3>[method:JSON toJSON]( [param:String meta] )</h3>
+		<h3>[method:Object toJSON]( [param:object meta] )</h3>
 		<p>
-		Return Light data in JSON format.
+		meta -- object containing metadata such as materials, textures for objects.<br />
+		Convert the light to three.js [link:https://github.com/mrdoob/three.js/wiki/JSON-Object-Scene-format-4 JSON Object/Scene format].
 		</p>
 
 		<h2>Source</h2>

+ 4 - 5
docs/api/en/loaders/AnimationLoader.html

@@ -65,19 +65,18 @@
 		<p>
 		[page:String url] — the path or URL to the file. This can also be a
 			[link:https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs Data URI].<br />
-		[page:Function onLoad] — Will be called when load completes. The argument will be the loaded [page:Animation animation].<br />
+		[page:Function onLoad] — Will be called when load completes. The argument will be the loaded [page:AnimationClip animation clips].<br />
 		[page:Function onProgress] — Will be called while load progresses. The argument will be the XMLHttpRequest instance, which contains .[page:Integer total] and .[page:Integer loaded] bytes.<br />
 		[page:Function onError] — Will be called if load errors.<br /><br />
 
 		Begin loading from url and pass the loaded animation to onLoad.
 		</p>
 
-		<h3>[method:null parse]( [param:JSON json], [param:Function onLoad] )</h3>
+		<h3>[method:Array parse]( [param:JSON json] )</h3>
 		<p>
-		[page:JSON json] — required<br />
-		[page:Function onLoad] — Will be called when parsing completes. <br /><br />
+		[page:JSON json] — required<br /><br />
 
-		Parse the JSON object and pass the result to onLoad. Individual clips in the object will
+		Parse the JSON object and return an array of animation clips. Individual clips in the object will
 		be parsed with [page:AnimationClip.parse].
 		</p>
 

+ 10 - 0
docs/api/en/loaders/ImageBitmapLoader.html

@@ -16,6 +16,13 @@
 			Unlike [page:FileLoader], [name] does not avoid multiple concurrent requests to the same URL.
 		</p>
 
+		<p>
+			Note that [page:Texture.flipY] and [page:Texture.premultiplyAlpha] with [link:https://developer.mozilla.org/de/docs/Web/API/ImageBitmap ImageBitmap] are ignored.
+			[link:https://developer.mozilla.org/de/docs/Web/API/ImageBitmap ImageBitmap] needs these configuration on bitmap creation
+			unlike regular images need them on uploading to GPU. You need to set the equivalent options via [page:ImageBitmapLoader.setOptions]
+			instead. Refer to [link:https://www.khronos.org/registry/webgl/specs/latest/1.0/#6.10 WebGL specification] for the detail.
+		</p>
+
 		<h2>Example</h2>
 
 		<p>
@@ -26,6 +33,9 @@
 		// instantiate a loader
 		var loader = new THREE.ImageBitmapLoader();
 
+		// set options if needed
+		loader.setOptions( { imageOrientation: 'flipY' } );
+
 		// load a image resource
 		loader.load(
 			// resource URL

+ 1 - 1
docs/api/en/loaders/ImageLoader.html

@@ -12,7 +12,7 @@
 
 		<p class="desc">
 			A loader for loading an [page:Image].
-			This uses the [page:FileLoader] internally for loading files, and is used internally by the
+			This is used internally by the
 			[page:CubeTextureLoader], [page:ObjectLoader] and [page:TextureLoader].
 		</p>
 

+ 24 - 0
docs/api/en/loaders/Loader.html

@@ -62,6 +62,30 @@
 		Creates an array of [page:Material] based on the array of parameters m. The index of the parameters decide the correct index of the materials.
 		</p>
 
+		<h2>Handlers</h2>
+
+		<p>
+		*[name].Handlers* is a special object normally used by other loaders like [page:GLTFLoader] or [page:MTLLoader]. It provides an
+		API that allows the definition of special mappings: What loaders should be used in order to load specific files. A typical use case
+		is to overwrite the default loader for textures.<br /><br />
+
+		Note: It's only possible to use *[name].Handlers* if the respective loader support the usage.
+		</p>
+
+		<h3>[method:null add]( [param:Object regex], [param:Loader loader] )</h3>
+		<p>
+		[page:Object regex] — A regular expression.<br />
+		[page:Loader loader] — The loader.
+		<p>
+		Registers a loader with the given regular expression.
+		</p>
+
+		<h3>[method:null get]( [param:String file] )</h3>
+		<p>
+		[page:String file] — The file path.
+		<p>
+		Can be used to retrieve the registered loader for the given file path.
+		</p>
 
 		<h2>Source</h2>
 

+ 10 - 3
docs/api/en/materials/Material.html

@@ -296,6 +296,13 @@
 		Other options are [page:Materials THREE.VertexColors] and [page:Materials THREE.FaceColors].
 		</p>
 
+		<h3>[property:Boolean vertexTangents]</h3>
+		<p>
+		Defines whether precomputed vertex tangents, which must be provided in a vec4 "tangent" attribute,
+		are used. When disabled, tangents are derived automatically. Using precomputed tangents will give
+		more accurate normal map details in some cases, such as with mirrored UVs. Default is false.
+		</p>
+
 		<h3>[property:Boolean visible]</h3>
 		<p>
 		Defines whether this material is visible. Default is *true*.
@@ -323,7 +330,7 @@
 		These needs to be disposed by [page:Texture Texture].
 		</p>
 
-		<h3>[method:null onBeforeCompile]( [param:Object shader], [param:WebGLRenderer renderer] )</h3>
+		<h3>[method:null onBeforeCompile]( [param:Shader shader], [param:WebGLRenderer renderer] )</h3>
 		<p>
 		An optional callback that is executed immediately before the shader program is compiled.
 		This function is called with the shader source code as a parameter. Useful for the modification of built-in materials.
@@ -335,10 +342,10 @@
 		Sets the properties based on the *values*.
 		</p>
 
-		<h3>[method:null toJSON]( [param:object meta] )</h3>
+		<h3>[method:Object toJSON]( [param:object meta] )</h3>
 		<p>
 		meta -- object containing metadata such as textures or images for the material.<br />
-		Convert the material to three.js JSON format.
+		Convert the material to three.js [link:https://github.com/mrdoob/three.js/wiki/JSON-Object-Scene-format-4 JSON Object/Scene format].
 		</p>
 
 		<h2>Source</h2>

+ 131 - 0
docs/api/en/materials/MeshDistanceMaterial.html

@@ -0,0 +1,131 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Material] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+			[name] is internally used for implementing shadow mapping with [page:PointLight]s.<br/><br/>
+
+			Can also be used to customize the shadow casting of an object by assigning an instance of [name] to [page:Object3D.customDistanceMaterial].
+			The following examples demonstrates this approach in order to ensure transparent parts of objects do no cast shadows.
+		</p>
+
+		<h2>Example</h2>
+
+		[example:webgl_shadowmap_pointlight WebGL / shadowmap / pointlight]
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			var scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( [param:Object parameters] )</h3>
+		<p>
+			[page:Object parameters] - (optional) an object with one or more properties defining the material's appearance.
+			Any property of the material (including any property inherited from [page:Material]) can be passed in here.
+		</p>
+
+		<h2>Properties</h2>
+		<p>See the base [page:Material] class for common properties.</p>
+
+		<h3>[property:Texture alphaMap]</h3>
+		<p>The alpha map is a grayscale texture that controls the opacity across the surface
+			(black: fully transparent; white: fully opaque). Default is null.<br /><br />
+
+			Only the color of the texture is used, ignoring the alpha channel if one exists.
+			For RGB and RGBA textures, the [page:WebGLRenderer WebGL] renderer will use the
+			green channel when sampling this texture due to the extra bit of precision provided
+			for green in DXT-compressed and uncompressed RGB 565 formats. Luminance-only and
+			luminance/alpha textures will also still work as expected.
+		</p>
+
+		<h3>[property:Texture displacementMap]</h3>
+		<p>
+			The displacement map affects the position of the mesh's vertices. Unlike other maps
+			which only affect the light and shade of the material the displaced vertices can cast shadows,
+			block other objects, and otherwise act as real geometry. The displacement texture is
+			an image where the value of each pixel (white being the highest) is mapped against,
+			and repositions, the vertices of the mesh.
+		</p>
+
+		<h3>[property:Float displacementScale]</h3>
+		<p>
+			How much the displacement map affects the mesh (where black is no displacement,
+			and white is maximum displacement). Without a displacement map set, this value is not applied.
+			 Default is 1.
+		</p>
+
+		<h3>[property:Float displacementBias]</h3>
+		<p>
+			The offset of the displacement map's values on the mesh's vertices.
+			Without a displacement map set, this value is not applied. Default is 0.
+		</p>
+
+		<h3>[property:Float farDistance]</h3>
+		<p>
+			The far value of the point light's internal shadow camera.
+		</p>
+
+		<h3>[property:Boolean fog]</h3>
+		<p>Whether the material is affected by fog. Default is *false*.</p>
+
+		<h3>[property:Boolean isMeshDistanceMaterial]</h3>
+		<p>
+			Used to check whether this or derived classes are mesh depth materials. Default is *true*.<br /><br />
+
+			You should not change this, as it used internally for optimisation.
+		</p>
+
+		<h3>[property:Boolean lights]</h3>
+		<p>Whether the material is affected by lights. Default is *false*.</p>
+
+		<h3>[property:Texture map]</h3>
+		<p>The color map. Default is  null.</p>
+
+		<h3>[property:boolean morphTargets]</h3>
+		<p>Define whether the material uses morphTargets. Default is false.</p>
+
+		<h3>[property:Float nearDistance]</h3>
+		<p>
+			The near value of the point light's internal shadow camera.
+		</p>
+
+		<h3>[property:Vector3 referencePosition]</h3>
+		<p>
+			The position of the point light in world space.
+		</p>
+
+		<h3>[property:Boolean skinning]</h3>
+		<p>Define whether the material uses skinning. Default is false.</p>
+
+		<h2>Methods</h2>
+		<p>See the base [page:Material] class for common methods.</p>
+
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 150 - 0
docs/api/en/materials/MeshMatcapMaterial.html

@@ -0,0 +1,150 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Material] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+			[name] is defined by a MatCap (or Lit Sphere) texture, which encodes the material color and shading.<br/><br/>
+			[name] does not respond to lights since the matcap image file encodes baked lighting.
+			It will cast a shadow onto an object that receives shadows (and shadow clipping works), but it will not self-shadow or receive shadows.
+		</p>
+
+		<iframe id="scene" src="scenes/material-browser.html#MeshMatcapMaterial"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			var scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( [param:Object parameters] )</h3>
+		<p>
+			[page:Object parameters] - (optional) an object with one or more properties defining the material's appearance.
+			Any property of the material (including any property inherited from [page:Material]) can be passed in here.<br /><br />
+
+			The exception is the property [page:Hexadecimal color], which can be passed in as a hexadecimal
+			string and is *0xffffff* (white) by default. [page:Color.set]( color ) is called internally.
+		</p>
+
+		<h2>Properties</h2>
+		<p>See the base [page:Material] class for common properties.</p>
+
+		<h3>[property:Texture alphaMap]</h3>
+		<p>The alpha map is a grayscale texture that controls the opacity across the surface
+			(black: fully transparent; white: fully opaque). Default is null.<br /><br />
+
+			Only the color of the texture is used, ignoring the alpha channel if one exists.
+			For RGB and RGBA textures, the [page:WebGLRenderer WebGL] renderer will use the
+			green channel when sampling this texture due to the extra bit of precision provided
+			for green in DXT-compressed and uncompressed RGB 565 formats. Luminance-only and
+			luminance/alpha textures will also still work as expected.
+		</p>
+
+		<h3>[property:Texture bumpMap]</h3>
+		<p>
+			The texture to create a bump map. The black and white values map to the perceived depth in relation to the lights.
+			Bump doesn't actually affect the geometry of the object, only the lighting. If a normal map is defined this will
+			be ignored.
+		</p>
+
+		<h3>[property:Float bumpScale]</h3>
+		<p>How much the bump map affects the material. Typical ranges are 0-1. Default is 1.</p>
+
+		<h3>[property:Color color]</h3>
+		<p>[page:Color] of the material, by default set to white (0xffffff).</p>
+
+		<h3>[property:Texture displacementMap]</h3>
+		<p>
+			The displacement map affects the position of the mesh's vertices. Unlike other maps
+			which only affect the light and shade of the material the displaced vertices can cast shadows,
+			block other objects, and otherwise act as real geometry. The displacement texture is
+			an image where the value of each pixel (white being the highest) is mapped against,
+			and repositions, the vertices of the mesh.
+		</p>
+
+		<h3>[property:Float displacementScale]</h3>
+		<p>
+			How much the displacement map affects the mesh (where black is no displacement,
+			and white is maximum displacement). Without a displacement map set, this value is not applied.
+			 Default is 1.
+		</p>
+
+		<h3>[property:Float displacementBias]</h3>
+		<p>
+			The offset of the displacement map's values on the mesh's vertices.
+			Without a displacement map set, this value is not applied. Default is 0.
+		</p>
+
+		<h3>[property:Boolean isMeshMatcapMaterial]</h3>
+		<p>
+			Used to check whether this or derived classes are mesh Matcap materials. Default is *true*.<br /><br />
+
+			You should not change this, as it used internally for optimisation.
+		</p>
+
+		<h3>[property:Texture map]</h3>
+		<p>The color map. Default is null. The texture map color is modulated by the diffuse [page:.color].</p>
+
+		<h3>[property:Texture matcap]</h3>
+		<p>The matcap map. Default is null.</p>
+
+		<h3>[property:boolean morphNormals]</h3>
+		<p>
+			Defines whether the material uses morphNormals. Set as true to pass morphNormal
+			attributes from the [page:Geometry]	to the shader. Default is *false*.
+		</p>
+
+		<h3>[property:Boolean morphTargets]</h3>
+		<p>Define whether the material uses morphTargets. Default is false.</p>
+
+		<h3>[property:Texture normalMap]</h3>
+		<p>
+			The texture to create a normal map. The RGB values affect the surface normal for each pixel fragment and change
+			the way the color is lit. Normal maps do not change the actual shape of the surface, only the lighting.
+		</p>
+
+		<h3>[property:Integer normalMapType]</h3>
+		<p>
+			The type of normal map.<br /><br />
+
+			Options are [page:constant THREE.TangentSpaceNormalMap] (default), and [page:constant THREE.ObjectSpaceNormalMap].
+		</p>
+
+		<h3>[property:Vector2 normalScale]</h3>
+		<p>
+			How much the normal map affects the material. Typical ranges are 0-1.
+			Default is a [page:Vector2] set to (1,1).
+		</p>
+
+		<h3>[property:Boolean skinning]</h3>
+		<p>Define whether the material uses skinning. Default is false.</p>
+
+		<h2>Methods</h2>
+		<p>See the base [page:Material] class for common methods.</p>
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 61 - 1
docs/api/en/materials/MeshNormalMaterial.html

@@ -44,6 +44,38 @@
 		<h2>Properties</h2>
 		<p>See the base [page:Material] class for common properties.</p>
 
+		<h3>[property:Texture bumpMap]</h3>
+		<p>
+			The texture to create a bump map. The black and white values map to the perceived depth in relation to the lights.
+			Bump doesn't actually affect the geometry of the object, only the lighting. If a normal map is defined this will
+			be ignored.
+		</p>
+
+		<h3>[property:Float bumpScale]</h3>
+		<p>How much the bump map affects the material. Typical ranges are 0-1. Default is 1.</p>
+
+		<h3>[property:Texture displacementMap]</h3>
+		<p>
+			The displacement map affects the position of the mesh's vertices. Unlike other maps
+			which only affect the light and shade of the material the displaced vertices can cast shadows,
+			block other objects, and otherwise act as real geometry. The displacement texture is
+			an image where the value of each pixel (white being the highest) is mapped against,
+			and repositions, the vertices of the mesh.
+		</p>
+
+		<h3>[property:Float displacementScale]</h3>
+		<p>
+			How much the displacement map affects the mesh (where black is no displacement,
+			and white is maximum displacement). Without a displacement map set, this value is not applied.
+			 Default is 1.
+		</p>
+
+		<h3>[property:Float displacementBias]</h3>
+		<p>
+			The offset of the displacement map's values on the mesh's vertices.
+			Without a displacement map set, this value is not applied. Default is 0.
+		</p>
+
 		<h3>[property:Boolean fog]</h3>
 		<p>Whether the material is affected by fog. Default is *false*.</p>
 
@@ -57,9 +89,37 @@
 		<h3>[property:Boolean lights]</h3>
 		<p>Whether the material is affected by lights. Default is *false*.</p>
 
-		<h3>[property:boolean morphTargets]</h3>
+		<h3>[property:boolean morphNormals]</h3>
+		<p>
+			Defines whether the material uses morphNormals. Set as true to pass morphNormal
+			attributes from the [page:Geometry]	to the shader. Default is *false*.
+		</p>
+
+		<h3>[property:Boolean morphTargets]</h3>
 		<p>Define whether the material uses morphTargets. Default is false.</p>
 
+		<h3>[property:Texture normalMap]</h3>
+		<p>
+			The texture to create a normal map. The RGB values affect the surface normal for each pixel fragment and change
+			the way the color is lit. Normal maps do not change the actual shape of the surface, only the lighting.
+		</p>
+
+		<h3>[property:Integer normalMapType]</h3>
+		<p>
+			The type of normal map.<br /><br />
+
+			Options are [page:constant THREE.TangentSpaceNormalMap] (default), and [page:constant THREE.ObjectSpaceNormalMap].
+		</p>
+
+		<h3>[property:Vector2 normalScale]</h3>
+		<p>
+			How much the normal map affects the material. Typical ranges are 0-1.
+			Default is a [page:Vector2] set to (1,1).
+		</p>
+
+		<h3>[property:Boolean skinning]</h3>
+		<p>Define whether the material uses skinning. Default is false.</p>
+
 		<h3>[property:boolean wireframe]</h3>
 		<p>
 			Render geometry as wireframe. Default is false (i.e. render as smooth shaded).

+ 2 - 2
docs/api/en/materials/MeshToonMaterial.html

@@ -14,7 +14,7 @@
 
 		<div class="desc">An extension of the [page:MeshPhongMaterial] with toon shading.</div>
 
-		<!-- <iframe id="scene" src="scenes/material-browser.html#MeshStandardMaterial"></iframe>
+		<iframe id="scene" src="scenes/material-browser.html#MeshToonMaterial"></iframe>
 
 		<script>
 
@@ -30,7 +30,7 @@
 
 		}
 
-		</script> -->
+		</script>
 
 		<h2>Examples</h2>
 		[example:webgl_materials_variations_toon materials / variations / toon]<br />

+ 1 - 1
docs/api/en/materials/RawShaderMaterial.html

@@ -8,7 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		[page:ShaderMaterial] &rarr;
+		[page:Material] &rarr; [page:ShaderMaterial] &rarr;
 
 		<h1>[name]</h1>
 

+ 22 - 2
docs/api/en/math/Box3.html

@@ -12,11 +12,31 @@
 
 		<p class="desc">
 			Represents a box or cube in 3D space. The main purpose of this is to represent
-			the [link:https://en.wikipedia.org/wiki/Minimum_bounding_box Minimum Bounding Boxes]
-			for objects.
+			the world-axis-aligned bounding boxes for objects. 
 		</p>
 
+		
+		<h2>Example</h2>
 
+		<code>
+		// Creating the object whose bounding box we want to compute
+		var sphereObject = new THREE.Mesh( 
+			new THREE.SphereGeometry(), 
+			new THREE.MeshBasicMaterial( 0xff0000 ) 
+		);
+		// Creating the actual bounding box with Box3
+		sphereObject.geometry.computeBoundingBox();
+		var box = sphereObject.geometry.boundingBox.clone();
+
+		// ...
+		
+		// In the animation loop, to keep the bounding box updated after move/rotate/scale operations
+		sphereObject.updateMatrixWorld( true );
+		box.copy( sphereObject.geometry.boundingBox ).applyMatrix4( sphereObject.matrixWorld );
+		</code>
+
+
+		
 		<h2>Constructor</h2>
 
 

+ 1 - 1
docs/api/en/math/Matrix3.html

@@ -55,7 +55,7 @@ m.elements = [ 11, 21, 31,
 
 		<h2>Properties</h2>
 
-		<h3>[property:Float32Array elements]</h3>
+		<h3>[property:Array elements]</h3>
 		<p>
 		A [link:https://en.wikipedia.org/wiki/Row-_and_column-major_order column-major]
 		 list of matrix values.

+ 2 - 1
docs/api/en/math/Matrix4.html

@@ -90,7 +90,7 @@ m.elements = [ 11, 21, 31, 41,
 
 		<h2>Properties</h2>
 
-		<h3>[property:Float32Array elements]</h3>
+		<h3>[property:Array elements]</h3>
 		<p>
 		A [link:https://en.wikipedia.org/wiki/Row-_and_column-major_order#Column-major_order column-major]
 		 list of matrix values.
@@ -375,6 +375,7 @@ x, y, 1, 0,
 		</p>
 
 		<h3>[method:this setPosition]( [param:Vector3 v] )</h3>
+		<h3>[method:this setPosition]( [param:Float x], [param:Float y], [param:Float z] ) // optional API</h3>
 		<p>
 			Sets the position component for this matrix from vector [page:Vector3 v], without affecting the
 			rest of the matrix - i.e. if the matrix is currently:

+ 7 - 0
docs/api/en/math/Quaternion.html

@@ -44,6 +44,13 @@
 
 		<h2>Properties</h2>
 
+		<h3>[property:Boolean isQuaternion]</h3>
+		<p>
+			Used to check whether this or derived classes are Quaternions. Default is *true*.<br /><br />
+
+			You should not change this, as it is used internally for optimisation.
+		</p>
+
 		<h3>[property:Float x]</h3>
 		<p>Changing this property will result in [page:.onChangeCallback onChangeCallback] being called.</p>
 

+ 1 - 1
docs/api/en/math/Spherical.html

@@ -40,7 +40,7 @@
 
 		<h3>[method:Spherical clone]()</h3>
 		<p>
-		Returns a new plane with the same [page:.radius radius], [page:.phi phi]
+		Returns a new spherical with the same [page:.radius radius], [page:.phi phi]
 		and [page:.theta theta] properties as this one.
 		</p>
 

+ 2 - 2
docs/api/en/objects/LOD.html

@@ -72,7 +72,7 @@ scene.add( lod );
 		<h2>Methods</h2>
 		<p>See the base [page:Object3D] class for common methods.</p>
 
-		<h3>[method:null addLevel]( [param:Object3D object], [param:Float distance] )</h3>
+		<h3>[method:this addLevel]( [param:Object3D object], [param:Float distance] )</h3>
 		<p>
 		[page:Object3D object] - The [page:Object3D] to display at this level.<br />
 		[page:Float distance] - The distance at which to display this level of detail.<br /><br />
@@ -100,7 +100,7 @@ scene.add( lod );
 
 
 
-		<h3>[method:null toJSON]( meta )</h3>
+		<h3>[method:Object toJSON]( meta )</h3>
 		<p>
 		Create a JSON structure with details of this LOD object.
 		</p>

+ 1 - 1
docs/api/en/objects/Mesh.html

@@ -95,7 +95,7 @@
 		<h3>[method:null raycast]( [param:Raycaster raycaster], [param:Array intersects] )</h3>
 		<p>
 		Get intersections between a casted ray and this mesh.
-		[page:Raycaster.intersectObject] will call this method.
+		[page:Raycaster.intersectObject] will call this method, but the results are not ordered.
 		</p>
 
 		<h3>[method:null updateMorphTargets]()</h3>

+ 3 - 3
docs/api/en/objects/SkinnedMesh.html

@@ -91,8 +91,8 @@
 		<h2>Constructor</h2>
 		<h3>[name]( [param:BufferGeometry geometry], [param:Material material] )</h3>
 		<p>
-    [page:Geometry geometry] - an instance of [page:BufferGeometry].<br />
-    [page:Material material] - (optional) an instance of [page:Material]. Default is a new [page:MeshBasicMaterial].
+		[page:Geometry geometry] - an instance of [page:BufferGeometry].<br />
+		[page:Material material] - (optional) an instance of [page:Material]. Default is a new [page:MeshBasicMaterial].
 		</p>
 
 
@@ -128,7 +128,7 @@
 
 		<h3>[property:Skeleton skeleton]</h3>
 		<p>
-		[page:Skeleton] representing the bone hierachy of the skinned mesh.
+		[page:Skeleton] representing the bone hierarchy of the skinned mesh.
 		</p>
 
 

+ 0 - 6
docs/api/en/renderers/WebGLRenderTargetCube.html

@@ -50,12 +50,6 @@
 
 		<h2>Properties</h2>
 
-		<h3>[property:integer activeCubeFace]</h3>
-		<p>
-		The activeCubeFace property corresponds to a cube side (PX 0, NX 1, PY 2, NY 3, PZ 4, NZ 5) and is
-		used and set internally by the [page:CubeCamera].
-		</p>
-
 		<h3>See [page:WebGLRenderTarget] for inherited properties</h3>
 
 

+ 80 - 50
docs/api/en/renderers/WebGLRenderer.html

@@ -55,7 +55,10 @@
 
 		[page:String powerPreference] - Provides a hint to the user agent indicating what configuration
 		of GPU is suitable for this WebGL context. Can be *"high-performance"*, *"low-power"* or *"default"*. Default is *"default"*.
-		See the [link:https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.2 WebGL spec] for more information.<br />
+		See [link:https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.14.12 WebGL spec] for details.<br />
+
+		[page:Boolean failIfMajorPerformanceCaveat] - whether the renderer creation will fail upon low perfomance is detected. Default is *false*.
+		See [link:https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.14.12 WebGL spec] for details.<br />
 
 		[page:Boolean depth] - whether the drawing buffer has a
 		[link:https://en.wikipedia.org/wiki/Z-buffering depth buffer] of at least 16 bits.
@@ -92,6 +95,15 @@
 			Default is *true*.
 		</p>
 
+		<h3>[property:Boolean debug.checkShaderErrors]</h3>
+		<p>
+			If [page:.checkShaderErrors checkShaderErrors] is true, defines whether material shader programs are checked
+			for errors during compilation and linkage process. It may be useful to disable this check in production for performance gain.
+			It is strongly recommended to keep these checks enabled during development.
+			If the shader does not compile and link - it will not work and associated material will not render.
+			Default is *true*.
+		</p>
+
 		<h3>[property:Object capabilities]</h3>
 		<p>
 		An object containing details about the capabilities of the current [link:https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext RenderingContext].<br />
@@ -279,13 +291,6 @@
 
 		<h2>Methods</h2>
 
-		<h3>[method:Integer allocTextureUnit]</h3>
-		<p>
-		Attempt to allocate a texture unit for use by a shader. Will warn if trying to allocate
-		more texture units than the GPU supports. This is mainly used internally.
-		See [page:WebGLRenderer.capabilities capabilities.maxTextures].
-		</p>
-
 		<h3>[method:null clear]( [param:Boolean color], [param:Boolean depth], [param:Boolean stencil] )</h3>
 		<p>
 		Tells the renderer to clear its color, depth or stencil drawing buffer(s).
@@ -346,39 +351,68 @@
 		<p>Returns an object that describes the attributes set on the WebGL context when it was created.</p>
 
 		<h3>[method:RenderTarget getRenderTarget]()</h3>
-		<p>Returns the current RenderTarget, if any.</p>
+		<p>Returns the current [page:RenderTarget RenderTarget] if there are; returns *null* otherwise.</p>
+
+		<h3>[method:Vector4 getCurrentViewport]( [param:Vector4 target] )</h3>
+		<p>
+		[page:Vector4 target] — the result will be copied into this Vector4.<br /><br />
 
-		<h3>[method:RenderTarget getCurrentViewport]()</h3>
-		<p>Returns the current viewport.</p>
+		Returns the current viewport.
+		</p>
 
-		<h3>[method:Object getDrawingBufferSize]()</h3>
-		<p>Returns an object containing the width and height of the renderer's drawing buffer, in pixels.</p>
+		<h3>[method:Vector2 getDrawingBufferSize]( [param:Vector2 target] )</h3>
+		<p>
+		[page:Vector2 target] — the result will be copied into this Vector2.<br /><br />
+
+		Returns the width and height of the renderer's drawing buffer, in pixels.
+		</p>
 
 		<h3>[method:number getPixelRatio]()</h3>
 		<p>Returns current device pixel ratio used.</p>
 
-		<h3>[method:Object getSize]()</h3>
-		<p>Returns an object containing the width and height of the renderer's output canvas, in pixels.</p>
+		<h3>[method:Vector4 getScissor]( [param:Vector4 target] )</h3>
+		<p>
+		[page:Vector4 target] — the result will be copied into this Vector4.<br /><br />
+
+		Returns the scissor region.
+		</p>
+
+		<h3>[method:Boolean getScissorTest]()</h3>
+		<p>Returns *true* if scissor test is enabled; returns *false* otherwise.</p>
+
+		<h3>[method:Vector2 getSize]( [param:Vector2 target] )</h3>
+		<p>
+		[page:Vector2 target] — the result will be copied into this Vector2.<br /><br />
+
+		Returns the width and height of the renderer's output canvas, in pixels.
+		</p>
+
+		<h3>[method:Vector4 getViewport]( [param:Vector4 target] )</h3>
+		<p>
+		[page:Vector4 target] — the result will be copied into this Vector4.<br /><br />
+
+		Returns the viewport.
+		</p>
 
 		<h3>[method:null resetGLState]( )</h3>
 		<p>Reset the GL state to default. Called internally if the WebGL context is lost.</p>
 
-		<h3>[method:null readRenderTargetPixels]( [param:WebGLRenderTarget renderTarget], [param:Float x], [param:Float y], [param:Float width], [param:Float height], buffer )</h3>
-		<p>Reads the pixel data from the renderTarget into the buffer you pass in. This is a wrapper around [link:https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/readPixels WebGLRenderingContext.readPixels]().<br />
-		See the [example:webgl_interactive_cubes_gpu interactive / cubes / gpu] example.
-		</p>
+		<h3>[method:null readRenderTargetPixels]( [param:WebGLRenderTarget renderTarget], [param:Float x], [param:Float y], [param:Float width], [param:Float height], [param:TypedArray buffer], [param:Integer activeCubeFaceIndex] )</h3>
+		<p>buffer - Uint8Array is the only destination type supported in all cases, other types are renderTarget and platform dependent. See [link:https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.14.12 WebGL spec] for details.</p>
+		<p>Reads the pixel data from the renderTarget into the buffer you pass in. This is a wrapper around [link:https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/readPixels WebGLRenderingContext.readPixels]().</p>
+		<p>See the [example:webgl_interactive_cubes_gpu interactive / cubes / gpu] example.</p>
+		<p>For reading out a [page:WebGLRenderTargetCube WebGLRenderTargetCube] use the optional parameter activeCubeFaceIndex to determine which face should be read.</p>
 
-		<h3>[method:null render]( [param:Scene scene], [param:Camera camera], [param:WebGLRenderTarget renderTarget], [param:Boolean forceClear] )</h3>
+
+		<h3>[method:null render]( [param:Scene scene], [param:Camera camera] )</h3>
 		<p>
 			Render a [page:Scene scene] using a [page:Camera camera].<br />
 
-			The render is done to the [page:WebGLRenderTarget renderTarget] (if specified) or to the canvas as usual.<br />
-
-			If [page:Boolean forceClear] is *true*, the depth, stencil and color buffers will be cleared
-			before rendering even if the renderer's [page:WebGLRenderer.autoClear autoClear] property is false.<br />
+			The render is done to a previously specified [page:WebGLRenderTarget renderTarget] set by calling [page:WebGLRenderer.setRenderTarget .setRenderTarget] or to the canvas as usual.<br />
 
-			Even with forceClear set to true you can prevent certain buffers being cleared by setting
-			either the [page:WebGLRenderer.autoClearColor autoClearColor], [page:WebGLRenderer.autoClearStencil autoClearStencil] or [page:WebGLRenderer.autoClearDepth autoClearDepth] properties to false.
+			By default render buffers are cleared before rendering but you can prevent this by setting the property [page:WebGLRenderer.autoClear autoClear] to false.
+			If you want to prevent only certain buffers being cleared you can set either the [page:WebGLRenderer.autoClearColor autoClearColor], [page:WebGLRenderer.autoClearStencil autoClearStencil] or
+			[page:WebGLRenderer.autoClearDepth autoClearDepth] properties to false. To forcibly clear one ore more buffers call [page:WebGLRenderer.clear .clear].
 		</p>
 
 		<h3>[method:null renderBufferDirect]( [param:Camera camera], [param:Fog fog], [param:Geometry geometry], [param:Material material], [param:Object3D object], [param:Object group] )</h3>
@@ -394,7 +428,7 @@
 
 		<h3>[method:null setAnimationLoop]( [param:Function callback] )</h3>
 		<p>[page:Function callback] — The function will be called every available frame. If `null` is passed it will stop any already ongoing animation.</p>
-		<p>A build in function that can be used instead of [link:https://developer.mozilla.org/en-US/docs/Web/API/window/requestAnimationFrame requestAnimationFrame]. For WebVR projects this function must be used.</p>
+		<p>A built in function that can be used instead of [link:https://developer.mozilla.org/en-US/docs/Web/API/window/requestAnimationFrame requestAnimationFrame]. For WebVR projects this function must be used.</p>
 
 		<h3>[method:null setClearAlpha]( [param:Float alpha] )</h3>
 		<p>Sets the clear alpha. Valid input is a float between *0.0* and *1.0*.</p>
@@ -405,15 +439,23 @@
 		<h3>[method:null setPixelRatio]( [param:number value] )</h3>
 		<p>Sets device pixel ratio. This is usually used for HiDPI device to prevent bluring output canvas.</p>
 
-		<h3>[method:null setRenderTarget]( [param:WebGLRenderTarget renderTarget] )</h3>
+		<h3>[method:null setRenderTarget]( [param:WebGLRenderTarget renderTarget], [param:Integer activeCubeFace], [param:Integer activeMipMapLevel] )</h3>
 		<p>
-		renderTarget -- The [page:WebGLRenderTarget renderTarget] that needs to be activated (optional).<br /><br />
-		This method sets the active rendertarget. If the parameter is omitted the canvas is set as the active rendertarget.
+		renderTarget -- The [page:WebGLRenderTarget renderTarget] that needs to be activated. When *null* is given, the canvas is set as the active render target instead.<br />
+		activeCubeFace -- Specifies the active cube side (PX 0, NX 1, PY 2, NY 3, PZ 4, NZ 5) of [page:WebGLRenderTargetCube] (optional).<br />
+		activeMipMapLevel -- Specifies the active mipmap level (optional).<br /><br />
+		This method sets the active rendertarget.
 		</p>
 
-		<h3>[method:null setScissor]( [param:Integer x], [param:Integer y], [param:Integer width], [param:Integer height] )</h3>
+		<h3>[method:null setScissor]( [param:Integer x], [param:Integer y], [param:Integer width], [param:Integer height] )<br />
+		[method:null setScissor]( [param:Vector4 vector] )</h3>
+
 		<p>
-		Sets the scissor area from (x, y) to (x + width, y + height)
+		The x, y, width, and height parameters of the scissor region.<br />
+		Optionally, a 4-component vector specifying the parameters of the region.<br /><br />
+
+		Sets the scissor region from (x, y) to (x + width, y + height).<br />
+		(x, y) is the lower-left corner of the scissor region.
 		</p>
 
 		<h3>[method:null setScissorTest]( [param:Boolean boolean] )</h3>
@@ -429,29 +471,17 @@
 			Setting [page:Boolean updateStyle] to false prevents any style changes to the output canvas.
 		</p>
 
-		<h3>[method:null setTexture2D]( [param:Texture texture], [param:number slot] )</h3>
-		<p>
-		texture -- The [page:Texture texture] that needs to be set.<br />
-		slot -- The number indicating which slot should be used by the texture.<br /><br />
+		<h3>[method:null setViewport]( [param:Integer x], [param:Integer y], [param:Integer width], [param:Integer height] )<br />
+		[method:null setViewport]( [param:Vector4 vector] )</h3>
 
-		This method sets the correct texture to the correct slot for the WebGL shader.
-		The slot number can be found as a value of the uniform of the sampler.<br /><br />
-
-		Note: This method replaces the older [method:null setTexture] method.
-		</p>
-
-		<h3>[method:null setTextureCube]( [param:CubeTexture cubeTexture], [param:Number slot] )</h3>
 		<p>
-		texture -- The [page:CubeTexture cubeTexture] that needs to be set.<br />
-		slot -- The number indicating which slot should be used by the texture.<br /><br />
+		The x, y, width, and height parameters of the viewport.<br />
+		Optionally, a 4-component vector specifying the parameters of a viewport.<br /><br />
 
-		This method sets the correct texture to the correct slot for the WebGL shader.
-		The slot number can be found as a value of the uniform of the sampler.
+		Sets the viewport to render from (x, y) to (x + width, y + height).<br />
+		(x, y) is the lower-left corner of the region.
 		</p>
 
-		<h3>[method:null setViewport]( [param:Integer x], [param:Integer y], [param:Integer width], [param:Integer height] )</h3>
-		<p>Sets the viewport to render from (x, y) to (x + width, y + height).</p>
-
 		<h2>Source</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 3 - 2
docs/api/en/scenes/Scene.html

@@ -46,9 +46,10 @@
 
 		<h2>Methods</h2>
 
-		<h3>[method:JSON toJSON]</h3>
+		<h3>[method:Object toJSON]</h3>
 		<p>
-		Return the scene data in JSON format.
+		meta -- object containing metadata such as textures or images for the scene.<br />
+		Convert the scene to three.js [link:https://github.com/mrdoob/three.js/wiki/JSON-Object-Scene-format-4 JSON Object/Scene format].
 		</p>
 
 		<h3>[method:null dispose]()</h3>

+ 10 - 2
docs/api/en/textures/DataTexture3D.html

@@ -32,10 +32,18 @@
 		<div>[example:webgl2_materials_texture3d WebGL2 / materials / texture3d]</div>
 		<div>[example:webgl2_materials_texture3d_volume WebGL2 / materials / texture3d / volume]</div>
 
-		<h2>Properties</h2>
+    <h2>Properties</h2>
 
 		<p>
-		See the base [page:Texture Texture] class for common properties.
+    See the base [page:Texture Texture] class for common properties.
+    </p>
+
+    <h3>[property:number wrapR]</h3>
+		<p>
+		This defines how the texture is wrapped in the depth direction.<br />
+		The default is [page:Textures THREE.ClampToEdgeWrapping], where the edge is clamped to the outer edge texels.
+		The other two choices are [page:Textures THREE.RepeatWrapping] and [page:Textures THREE.MirroredRepeatWrapping].
+		See the [page:Textures texture constants] page for details.
 		</p>
 
 		<h2>Methods</h2>

+ 17 - 5
docs/api/en/textures/Texture.html

@@ -55,6 +55,13 @@
 		as long as video is playing - the [page:VideoTexture VideoTexture] class handles this automatically.
 		</p>
 
+		<h3>[property:Boolean isTexture]</h3>
+		<p>
+			Used to check whether this or derived classes are Textures. Default is *true*.<br /><br />
+
+			You should not change this, as it is used internally for optimisation.
+		</p>
+
 		<h3>[property:array mipmaps]</h3>
 		<p>
 		Array of user-specified mipmaps (optional).
@@ -180,13 +187,18 @@
 
 		<h3>[property:boolean premultiplyAlpha]</h3>
 		<p>
-		False by default, which is the norm for PNG images. Set to true if the RGB values have
-		been stored premultiplied by alpha.
+		If set to *true*, the alpha channel, if present, is multiplied into the color channels when the texture is uploaded to the GPU. Defaut is *false*.<br /><br />
+
+		Note that this property has no effect for [link:https://developer.mozilla.org/de/docs/Web/API/ImageBitmap ImageBitmap].
+		You need to configure on bitmap creation instead. See [page:ImageBitmapLoader].
 		</p>
 
 		<h3>[property:boolean flipY]</h3>
 		<p>
-		True by default. Flips the image's Y axis to match the WebGL texture coordinate space.
+		If set to *true*, the texture is flipped along the vertical axis when uploaded to the GPU. Default is *true*.<br /><br />
+
+		Note that this property has no effect for [link:https://developer.mozilla.org/de/docs/Web/API/ImageBitmap ImageBitmap].
+		You need to configure on bitmap creation instead. See [page:ImageBitmapLoader].
 		</p>
 
 		<h3>[property:number unpackAlignment]</h3>
@@ -239,10 +251,10 @@
 		Make copy of the texture. Note this is not a "deep copy", the image is shared.
 		</p>
 
-		<h3>[method:Texture toJSON]( [param:Object meta] )</h3>
+		<h3>[method:Object toJSON]( [param:Object meta] )</h3>
 		<p>
 		meta -- optional object containing metadata.<br />
-		Convert the material to three.js JSON format.
+		Convert the texture to three.js [link:https://github.com/mrdoob/three.js/wiki/JSON-Object-Scene-format-4 JSON Object/Scene format].
 		</p>
 
 		<h3>[method:null dispose]()</h3>

+ 3 - 0
docs/api/zh/animation/AnimationClip.html

@@ -62,6 +62,9 @@
 		<h2>方法</h2>
 
 
+		<h3>[method:AnimationClip clone]()</h3>
+		<p></p>
+
 		<h3>[method:this optimize]()</h3>
 		<p>
             通过移除等效的顺序键(在变形目标序列中很常见)来优化每一个轨道

+ 6 - 0
docs/api/zh/animation/AnimationUtils.html

@@ -38,12 +38,18 @@
             返回一个数组,时间和值可以根据此数组排序。
 		</p>
 
+		<h3>[method:Number insertKeyframe]( [param:KeyframeTrack track], [param:Number time] )</h3>
+		<p></p>
+
 		<h3>[method:Boolean isTypedArray]( object )</h3>
 		<p>
             如果该对象是类型化数组,返回*true*
 
 		</p>
 
+		<h3>[method:AnimationClip mergeMorphTargetTracks]( [param:AnimationClip clip], [param:Object3D root] )</h3>
+		<p></p>
+
 		<h3>[method:Array sortedArray]( values, stride, order )</h3>
 		<p>
             将[page:AnimationUtils.getKeyframeOrder getKeyframeOrder]方法返回的数组排序。

+ 3 - 0
docs/api/zh/animation/KeyframeTrack.html

@@ -137,6 +137,9 @@
 		<h2>方法</h2>
 
 
+		<h3>[method:KeyframeTrack clone]()</h3>
+		<p></p>
+
 		<h3>[method:null createInterpolant]()</h3>
 		<p>
 			根据传入构造器中的插值类型参数,创建线性插值([page:LinearInterpolant LinearInterpolant]),立方插值([page:CubicInterpolant CubicInterpolant])或离散插值

+ 2 - 2
docs/api/zh/audio/Audio.html

@@ -22,7 +22,7 @@
 		<h2>例子</h2>
 
 		<p>
-			[example:webaudio_sandbox webaudio / sandbox ]</br>
+			[example:webaudio_sandbox webaudio / sandbox ]<br />
 			[example:webaudio_visualizer webaudio / visualizer ]
 		</p>
 
@@ -63,7 +63,7 @@
 		<p>构造函数中传入[page:AudioListener listener]的[link:https://developer.mozilla.org/en-US/docs/Web/API/AudioContext AudioContext].</p>
 
 		<h3>[property:Number detune]</h3>
-		<p>TODO</p>
+		<p>修改音高,以音分为单位。 +/- 100为一个半音, +/- 1200为一个八度。默认值为0。</p>
 
 		<h3>[property:Array filters]</h3>
 		<p>表示[link:https://developer.mozilla.org/en-US/docs/Web/API/BiquadFilterNode BiquadFilterNodes]的数组. 可以使用多种不同的低阶filters去创建复杂的音效. filters可以通过 [page:Audio.setFilter] 或者 [page:Audio.setFilters]设置.</p>

+ 1 - 1
docs/api/zh/audio/AudioAnalyser.html

@@ -22,7 +22,7 @@
 		<h2>示例</h2>
 
 		<p>
-			[example:webaudio_sandbox webaudio / sandbox ]</br>
+			[example:webaudio_sandbox webaudio / sandbox ]<br />
 			[example:webaudio_visualizer webaudio / visualizer ]
 		</p>
 

+ 4 - 4
docs/api/zh/audio/AudioListener.html

@@ -13,8 +13,8 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-			[name] 用一个虚拟的[link:https://developer.mozilla.org/de/docs/Web/API/AudioListener listener]表示在场景中所有的位置和非位置相关的音效.</br>
-			一个three.js程序通常创建一个[name]. 它是音频实体构造函数的必须参数,比如 [page:Audio Audio] and [page:PositionalAudio PositionalAudio].</br>
+			[name] 用一个虚拟的[link:https://developer.mozilla.org/de/docs/Web/API/AudioListener listener]表示在场景中所有的位置和非位置相关的音效.<br />
+			一个three.js程序通常创建一个[name]. 它是音频实体构造函数的必须参数,比如 [page:Audio Audio] and [page:PositionalAudio PositionalAudio].<br />
 			大多数情况下, listener对象是camera的子对象. Camera的3D变换表示了listener的3D变换.
 		</p>
 
@@ -22,8 +22,8 @@
 		<h2>示例</h2>
 
 		<p>
-			[example:webaudio_sandbox webaudio / sandbox ]</br>
-			[example:webaudio_timing webaudio / timing ]</br>
+			[example:webaudio_sandbox webaudio / sandbox ]<br />
+			[example:webaudio_timing webaudio / timing ]<br />
 			[example:webaudio_visualizer webaudio / visualizer ]
 		</p>
 

+ 2 - 2
docs/api/zh/audio/PositionalAudio.html

@@ -22,8 +22,8 @@
 		<h2>示例</h2>
 
 		<p>
-			[example:webaudio_orientation webaudio / orientation ]</br>
-			[example:webaudio_sandbox webaudio / sandbox ]</br>
+			[example:webaudio_orientation webaudio / orientation ]<br />
+			[example:webaudio_sandbox webaudio / sandbox ]<br />
 			[example:webaudio_timing webaudio / timing ]
 		</p>
 

+ 1 - 1
docs/api/zh/cameras/ArrayCamera.html

@@ -15,7 +15,7 @@
 		<p class="desc">
 
 			[name] 用于更加高效地使用一组已经预定义的摄像机来渲染一个场景。这将能够更好地提升VR场景的渲染性能。<br />
-			一个 [name] 的实例中总是包含着一组子摄像机,应当为每一个子摄像机定义*bound*(边界)这个属性,这一属性决定了由该子摄像机所渲染的视口区域的大小。
+			一个 [name] 的实例中总是包含着一组子摄像机,应当为每一个子摄像机定义*viewport*(边界)这个属性,这一属性决定了由该子摄像机所渲染的视口区域的大小。
 		</p>
 
 		<h2>示例</h2>

+ 2 - 2
docs/api/zh/core/Object3D.html

@@ -44,7 +44,7 @@
 	</p>
 
 	<h3>[property:Material customDistanceMaterial]</h3>
-	<p>与customDepthMaterial相同,但与[page:PointLight]一起使用。默认值为*undefined*。
+	<p>与[page:.customDepthMaterial customDepthMaterial]相同,但与[page:PointLight]一起使用。默认值为*undefined*。
 	</p>
 
 	<h3>[property:Boolean frustumCulled]</h3>
@@ -273,7 +273,7 @@
 		将局部空间向量转换为世界空间向量。
 	</p>
 
-	<h3>[method:null lookAt]( [param:Vector3 vector] )</br>
+	<h3>[method:null lookAt]( [param:Vector3 vector] )<br />
 		[method:null lookAt]( [param:Float x], [param:Float y], [param:Float z] )</h3>
 	<p>
 		vector - 一个表示世界空间中位置的向量。<br /><br />

+ 73 - 0
docs/api/zh/helpers/PositionalAudioHelper.html

@@ -0,0 +1,73 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Object3D] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">这一辅助对象显示[page:PositionalAudio]的方向锥。</p>
+
+		<h2>示例</h2>
+
+		<div>[example:webaudio_orientation webaudio / orientation ]</div>
+
+		<h2>示例代码</h2>
+		<code>
+var positionalAudio = new THREE.PositionalAudio( listener );
+positionalAudio.setDirectionalCone( 180, 230, 0.1 );
+
+var helper = new PositionalAudioHelper( positionalAudio );
+positionalAudio.add( helper );
+		</code>
+
+
+		<h2>构造函数</h2>
+
+		<h3>[name]( [param:PositionalAudio audio], [param:Number range] )</h3>
+		<p>
+			[page:PositionalAudio audio] -- 将会被可视化的[page:PositionalAudio]。<br /><br/>
+
+			[page:Number range] -- (可选)方向锥的范围。<br /><br/>
+
+			[page:Number divisionsInnerAngle] -- (可选)方向锥内侧部分的分段数。<br /><br/>
+
+			[page:Number divisionsOuterAngle] -- (可选)方向锥外侧部分的分段数。<br /><br/>
+		</p>
+
+
+		<h2>属性</h2>
+		<p>请参阅其基类[page:Object3D]来了解共有属性。</p>
+
+		<h3>[property:PositionalAudio audio]</h3>
+		<p>将会被可视化的[page:PositionalAudio]。</p>
+
+		<h3>[property:Number range]</h3>
+		<p>方向锥的范围。</p>
+
+		<h3>[property:Number divisionsInnerAngle]</h3>
+		<p>方向锥内侧部分的分段数。</p>
+
+		<h3>[property:Number divisionsOuterAngle]</h3>
+		<p>方向锥外侧部分的分段数。</p>
+
+		<h2>方法</h2>
+		<p>请参阅其基类[page:Object3D]来了解共有方法。</p>
+
+		<h3>[method:null dispose]()</h3>
+		<p>废置这一辅助对象。</p>
+
+		<h3>[method:null update]()</h3>
+		<p>更新这一辅助对象。</p>
+
+		<h2>源代码</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 4 - 7
docs/api/zh/loaders/AnimationLoader.html

@@ -65,20 +65,17 @@
 		<p>
 		[page:String url] — 文件的URL或者路径,也可以为
 			[link:https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs Data URI].<br />
-		[page:Function onLoad] — 加载完成时将调用。回调参数为将要加载的[page:Animation animation].<br />
+		[page:Function onLoad] — 加载完成时将调用。回调参数为将要加载的[page:AnimationClip animation clips].<br />
 		[page:Function onProgress] —  将在加载过程中进行调用。参数为XMLHttpRequest实例,实例包含[page:Integer total]和[page:Integer loaded]字节。<br />
 		[page:Function onError] — 在加载错误时被调用。<br /><br />
 
             从URL中进行加载并将动画传递给onLoad。
 		</p>
 
-		<h3>[method:null parse]( [param:JSON json], [param:Function onLoad] )</h3>
+		<h3>[method:Array parse]( [param:JSON json] )</h3>
 		<p>
-		[page:JSON json] — 请求<br />
-		[page:Function onLoad] — 当解析完成时,将被调用 <br /><br />
-
-            解析JSON对象并将结果传递给onLoad。对象中的单个片段将
-            用[page [page:AnimationClip.parse]进行解析。
+		[page:JSON json] — 请求 <br /><br />
+			TODO
 		</p>
 
 		<h2>源</h2>

+ 10 - 0
docs/api/zh/loaders/ImageBitmapLoader.html

@@ -16,6 +16,13 @@
 			不像[page:FileLoader], [name]无需避免对同一的URL进行多次请求。
 		</p>
 
+		<p>
+			Note that [page:Texture.flipY] and [page:Texture.premultiplyAlpha] with [link:https://developer.mozilla.org/de/docs/Web/API/ImageBitmap ImageBitmap] are ignored.
+			[link:https://developer.mozilla.org/de/docs/Web/API/ImageBitmap ImageBitmap] needs these configuration on bitmap creation
+			unlike regular images need them on uploading to GPU. You need to set the equivalent options via [page:ImageBitmapLoader.setOptions]
+			instead. Refer to [link:https://www.khronos.org/registry/webgl/specs/latest/1.0/#6.10 WebGL specification] for the detail.
+		</p>
+
 		<h2>例子</h2>
 
 		<p>
@@ -26,6 +33,9 @@
 		// 初始化一个加载器
 		var loader = new THREE.ImageBitmapLoader();
 
+		// set options if needed
+		loader.setOptions( { imageOrientation: 'flipY' } );
+
 		// 加载一个图片资源
 		loader.load(
 			// 资源的URL

+ 20 - 0
docs/api/zh/loaders/Loader.html

@@ -61,6 +61,26 @@
 		基于参数数组m,来创建 [page:Material] 数组. 参数索引与材质的索引一致。
 		</p>
 
+		<h2>Handlers</h2>
+
+		<p>
+		TODO
+		</p>
+
+		<h3>[method:null add]( [param:Object regex], [param:Loader loader] )</h3>
+		<p>
+		[page:Object regex] — TODO<br />
+		[page:Loader loader] — TODO
+		<p>
+		TODO
+		</p>
+
+		<h3>[method:null get]( [param:String file] )</h3>
+		<p>
+		[page:String file] — TODO
+		<p>
+		TODO
+		</p>
 
 		<h2>Source</h2>
 

+ 5 - 1
docs/api/zh/materials/Material.html

@@ -217,6 +217,10 @@
     其他选项有[page:Materials THREE.VertexColors] 和 [page:Materials THREE.FaceColors]。
 </p>
 
+<h3>[property:Boolean vertexTangents]</h3>
+<p> TODO.
+</p>
+
 <h3>[property:Boolean visible]</h3>
 <p> 此材质是否可见。默认为*true*。
 </p>
@@ -239,7 +243,7 @@
 <p> 处理材质。材质的纹理不会被处理。需要通过[page:Texture Texture]处理。
 </p>
 
-<h3>[method:null onBeforeCompile]( [param:Object shader], [param:WebGLRenderer renderer] )</h3>
+<h3>[method:null onBeforeCompile]( [param:Shader shader], [param:WebGLRenderer renderer] )</h3>
 <p> 在编译shader程序之前立即执行的可选回调。此函数使用shader源码作为参数。用于修改内置材质。
 </p>
 

+ 112 - 0
docs/api/zh/materials/MeshDistanceMaterial.html

@@ -0,0 +1,112 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Material] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+			TODO
+		</p>
+
+		<h2>Example</h2>
+
+		[example:webgl_shadowmap_pointlight WebGL / shadowmap / pointlight]
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			var scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>构造函数(Constructor)</h2>
+
+		<h3>[name]( [param:Object parameters] )</h3>
+		<p>[page:Object parameters] - (可选)用于定义材质外观的对象,具有一个或多个属性。
+			材质的任何属性都可以从此处传入(包括从[page:Material]继承的任何属性)。
+		</p>
+
+		<h2>属性(Properties)</h2>
+		<p>常用属性请参见基类[page:Material]。</p>
+
+		<h3>[property:Texture alphaMap]</h3>
+		<p>alpha贴图是一种灰度纹理,用于控制整个表面的不透明度(黑色:完全透明;白色:完全不透明)。默认值为null。<br /><br />
+			仅使用纹理的颜色,忽略alpha通道(如果存在)。对于RGB和RGBA纹理,[page:WebGLRenderer WebGL]渲染器在采样此纹理时将使用绿色通道,
+			因为在DXT压缩和未压缩RGB 565格式中为绿色提供了额外的精度。Luminance-only以及luminance/alpha纹理也仍然有效。
+		</p>
+
+		<h3>[property:Texture displacementMap]</h3>
+		<p> 位移贴图会影响网格顶点的位置,与仅影响材质的光照和阴影的其他贴图不同,移位的顶点可以投射阴影,阻挡其他对象,以及充当真实的几何体。
+			位移纹理是指:网格的所有顶点被映射为图像中每个像素的值(白色是最高的),并且被重定位。
+		</p>
+
+		<h3>[property:Float displacementScale]</h3>
+		<p>位移贴图对网格的影响程度(黑色是无位移,白色是最大位移)。如果没有设置位移贴图,则不会应用此值。默认值为1。
+		</p>
+
+		<h3>[property:Float displacementBias]</h3>
+		<p> 位移贴图在网格顶点上的偏移量。如果没有设置位移贴图,则不会应用此值。默认值为0。
+		</p>
+
+		<h3>[property:Float farDistance]</h3>
+		<p>
+			TODO
+		</p>
+
+		<h3>[property:Boolean fog]</h3>
+		<p> 材质是否受雾影响。默认值为*false*。</p>
+
+		<h3>[property:Boolean isMeshDistanceMaterial]</h3>
+		<p> 用于检查此类或派生类是否为深度网格材质。默认值为 *true*。<br /><br />
+
+			因为其通常用在内部优化,所以不应该更改该属性值。
+		</p>
+
+		<h3>[property:Boolean lights]</h3>
+		<p>材质是否受到光照的影响。默认值为 *false*。</p>
+
+		<h3>[property:Texture map]</h3>
+		<p>颜色贴图。默认为null。</p>
+
+		<h3>[property:boolean morphTargets]</h3>
+		<p>材质是否使用morphTargets。默认值为false。</p>
+
+		<h3>[property:Float nearDistance]</h3>
+		<p>
+			TODO
+		</p>
+
+		<h3>[property:Vector3 referencePosition]</h3>
+		<p>
+			TODO
+		</p>
+
+		<h3>[property:Boolean skinning]</h3>
+		<p>材质是否使用蒙皮。默认值为false。</p>
+
+		<h2>方法(Methods)</h2>
+		<p>常用方法请参见基类[page:Material]。</p>
+
+
+		<h2>源码(Source)</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 120 - 0
docs/api/zh/materials/MeshMatcapMaterial.html

@@ -0,0 +1,120 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Material] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+			TODO
+		</p>
+
+		<iframe id="scene" src="scenes/material-browser.html#MeshMatcapMaterial"></iframe>
+
+		<script>
+
+		// iOS iframe auto-resize workaround
+
+		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
+
+			var scene = document.getElementById( 'scene' );
+
+			scene.style.width = getComputedStyle( scene ).width;
+			scene.style.height = getComputedStyle( scene ).height;
+			scene.setAttribute( 'scrolling', 'no' );
+
+		}
+
+		</script>
+
+		<h2>构造函数(Constructor)</h2>
+
+		<h3>[name]( [param:Object parameters] )</h3>
+		<p>[page:Object parameters] - (可选)用于定义材质外观的对象,具有一个或多个属性。
+			材质的任何属性都可以从此处传入(包括从[page:Material]继承的任何属性)。<br /><br />
+			属性[page:Hexadecimal color]例外,其可以作为十六进制字符串传递,默认情况下为 *0xffffff*(白色),内部调用[page:Color.set](color)。
+		</p>
+
+		<h2>属性(Properties)</h2>
+		<p>常用属性请参见基类[page:Material]。</p>
+
+		<h3>[property:Texture alphaMap]</h3>
+		<p>Talpha贴图是一种灰度纹理,用于控制整个表面的不透明度(黑色:完全透明;白色:完全不透明)。默认值为null。<br /><br />
+			仅使用纹理的颜色,忽略alpha通道(如果存在)。对于RGB和RGBA纹理,[page:WebGLRenderer WebGL]渲染器在采样此纹理时将使用绿色通道,
+			因为在DXT压缩和未压缩RGB 565格式中为绿色提供了额外的精度。Luminance-only以及luminance/alpha纹理也仍然有效。
+		</p>
+
+		<h3>[property:Texture bumpMap]</h3>
+		<p> 用于创建凹凸贴图的纹理。黑色和白色值映射到与光照相关的感知深度。凹凸实际上不会影响对象的几何形状,只影响光照。如果定义了法线贴图,则将忽略该贴图。
+		</p>
+
+		<h3>[property:Float bumpScale]</h3>
+		<p> 凹凸贴图会对材质产生多大影响。典型范围是0-1。默认值为1。</p>
+
+		<h3>[property:Color color]</h3>
+		<p>材质的颜色([page:Color]),默认值为白色 (0xffffff)。</p>
+
+		<h3>[property:Texture displacementMap]</h3>
+		<p> 位移贴图会影响网格顶点的位置,与仅影响材质的光照和阴影的其他贴图不同,移位的顶点可以投射阴影,阻挡其他对象,
+			以及充当真实的几何体。位移纹理是指:网格的所有顶点被映射为图像中每个像素的值(白色是最高的),并且被重定位。
+		</p>
+
+		<h3>[property:Float displacementScale]</h3>
+		<p> 位移贴图对网格的影响程度(黑色是无位移,白色是最大位移)。如果没有设置位移贴图,则不会应用此值。默认值为1。
+		</p>
+
+		<h3>[property:Float displacementBias]</h3>
+		<p>
+			位移贴图在网格顶点上的偏移量。如果没有设置位移贴图,则不会应用此值。默认值为0。
+		</p>
+
+		<h3>[property:Boolean isMeshMatcapMaterial]</h3>
+		<p>TODO<br /><br />
+
+			因为其通常用在内部优化,所以不应该更改该属性值。
+		</p>
+
+		<h3>[property:Texture map]</h3>
+		<p>颜色贴图。默认为null。纹理贴图颜色由漫反射颜色[page:.color]调节。</p>
+
+		<h3>[property:Texture matcap]</h3>
+		<p>TODO</p>
+
+		<h3>[property:boolean morphNormals]</h3>
+		<p> 定义是否使用morphNormals。设置为true可将morphNormal属性从[page:Geometry]传递到shader。默认值为*false*。
+		</p>
+
+		<h3>[property:Boolean morphTargets]</h3>
+		<p>定义材质是否使用morphTargets。默认值为false。</p>
+
+		<h3>[property:Texture normalMap]</h3>
+		<p> 用于创建法线贴图的纹理。RGB值会影响每个像素片段的曲面法线,并更改颜色照亮的方式。法线贴图不会改变曲面的实际形状,只会改变光照。
+		</p>
+
+		<h3>[property:Integer normalMapType]</h3>
+		<p> 法线贴图的类型。<br /><br />
+			选项为[page:constant THREE.TangentSpaceNormalMap](默认)和[page:constant THREE.ObjectSpaceNormalMap]。
+		</p>
+
+		<h3>[property:Vector2 normalScale]</h3>
+		<p> 法线贴图对材质的影响程度。典型范围是0-1。默认值是[page:Vector2]设置为(1,1)。
+		</p>
+
+		<h3>[property:Boolean skinning]</h3>
+		<p>材质是否使用蒙皮。默认值为false。</p>
+
+		<h2>方法(Methods)</h2>
+		<p>常用方法请参见基类[page:Material]。</p>
+
+		<h2>源码(Source)</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 42 - 1
docs/api/zh/materials/MeshNormalMaterial.html

@@ -42,6 +42,27 @@
 		<h2>属性(Properties)</h2>
 		<p>常用属性请参见基类[page:Material]。</p>
 
+		<h3>[property:Texture bumpMap]</h3>
+		<p> 用于创建凹凸贴图的纹理。黑色和白色值映射到与光照相关的感知深度。凹凸实际上不会影响对象的几何形状,只影响光照。如果定义了法线贴图,则将忽略该贴图。
+		</p>
+
+		<h3>[property:Float bumpScale]</h3>
+		<p> 凹凸贴图会对材质产生多大影响。典型范围是0-1。默认值为1。</p>
+
+		<h3>[property:Texture displacementMap]</h3>
+		<p> 位移贴图会影响网格顶点的位置,与仅影响材质的光照和阴影的其他贴图不同,移位的顶点可以投射阴影,阻挡其他对象,
+			以及充当真实的几何体。位移纹理是指:网格的所有顶点被映射为图像中每个像素的值(白色是最高的),并且被重定位。
+		</p>
+
+		<h3>[property:Float displacementScale]</h3>
+		<p> 位移贴图对网格的影响程度(黑色是无位移,白色是最大位移)。如果没有设置位移贴图,则不会应用此值。默认值为1。
+		</p>
+
+		<h3>[property:Float displacementBias]</h3>
+		<p>
+			位移贴图在网格顶点上的偏移量。如果没有设置位移贴图,则不会应用此值。默认值为0。
+		</p>
+
 		<h3>[property:Boolean fog]</h3>
 		<p>材质是否受雾影响。默认值为*false*。</p>
 
@@ -54,9 +75,29 @@
 		<h3>[property:Boolean lights]</h3>
 		<p>材质是否受到光照的影响。默认值为 *false*。</p>
 
-		<h3>[property:boolean morphTargets]</h3>
+		<h3>[property:boolean morphNormals]</h3>
+		<p> 定义是否使用morphNormals。设置为true可将morphNormal属性从[page:Geometry]传递到shader。默认值为*false*。
+		</p>
+
+		<h3>[property:Boolean morphTargets]</h3>
 		<p>定义材质是否使用morphTargets。默认值为false。</p>
 
+		<h3>[property:Texture normalMap]</h3>
+		<p> 用于创建法线贴图的纹理。RGB值会影响每个像素片段的曲面法线,并更改颜色照亮的方式。法线贴图不会改变曲面的实际形状,只会改变光照。
+		</p>
+
+		<h3>[property:Integer normalMapType]</h3>
+		<p> 法线贴图的类型。<br /><br />
+			选项为[page:constant THREE.TangentSpaceNormalMap](默认)和[page:constant THREE.ObjectSpaceNormalMap]。
+		</p>
+
+		<h3>[property:Vector2 normalScale]</h3>
+		<p> 法线贴图对材质的影响程度。典型范围是0-1。默认值是[page:Vector2]设置为(1,1)。
+		</p>
+
+		<h3>[property:Boolean skinning]</h3>
+		<p>材质是否使用蒙皮。默认值为false。</p>
+
 		<h3>[property:boolean wireframe]</h3>
 		<p>
 			将几何体渲染为线框。默认值为*false*(即渲染为平滑着色)。

+ 2 - 2
docs/api/zh/materials/MeshToonMaterial.html

@@ -14,7 +14,7 @@
 
 		<div class="desc">[page:MeshPhongMaterial]卡通着色的扩展。</div>
 
-		<!-- <iframe id="scene" src="scenes/material-browser.html#MeshStandardMaterial"></iframe>
+		<iframe id="scene" src="scenes/material-browser.html#MeshToonMaterial"></iframe>
 
 		<script>
 
@@ -30,7 +30,7 @@
 
 		}
 
-		</script> -->
+		</script>
 
 		<h2>例子(Examples)</h2>
 		[example:webgl_materials_variations_toon materials / variations / toon]<br />

+ 7 - 7
docs/api/zh/math/Cylindrical.html

@@ -8,10 +8,10 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		<h1>圆柱体[name]</h1>
+		<h1>圆柱坐标([name])</h1>
 
 		<p class="desc">
-			A point's [link:https://en.wikipedia.org/wiki/Cylindrical_coordinate_system cylindrical coordinates].
+			一个点的[link:https://en.wikipedia.org/wiki/Cylindrical_coordinate_system cylindrical coordinates](圆柱坐标)。
 		</p>
 
 
@@ -39,12 +39,12 @@
 
 		<h3>[method:Cylindrical clone]()</h3>
 		<p>
-			返回一个与当前拥有相同 [page:.radius radius], [page:.theta theta] 和 [page:.y y] 属性的圆柱
+			返回一个与当前拥有相同 [page:.radius radius], [page:.theta theta] 和 [page:.y y] 属性的圆柱坐标
 		</p>
 
 		<h3>[method:Cylindrical copy]( [param:Cylindrical other] )</h3>
 		<p>
-			将传入的圆柱对象的 [page:.radius radius], [page:.theta theta] 和 [page:.y y] 属性赋给当前对象。
+			将传入的圆柱坐标对象的 [page:.radius radius], [page:.theta theta] 和 [page:.y y] 属性赋给当前对象。
 		</p>
 
 		<h3>[method:Cylindrical set]( [param:Float radius], [param:Float theta], [param:Float y] )</h3>
@@ -53,15 +53,15 @@
 
 		<h3>[method:Cylindrical setFromVector3]( [param:Vector3 vec3] )</h3>
 		<p>
-			从 [page:Vector3 Vector3] 中取x,y,z,并调用setFromCartesianCoords来设置圆柱
+			从 [page:Vector3 Vector3] 中取x,y,z,并调用setFromCartesianCoords来设置圆柱坐标
 			[page:.radius radius]、[page:.theta theta] 和 [page:.y y] 的属性值。
 
 		</p>
 
 		<h3>[method:Cylindrical setFromCartesianCoords]( [param:Float x], [param:Float y], [param:Float z] )</h3>
 		<p>
-			使用笛卡尔坐标来设置该圆柱体的 [page:.radius radius], [page:.theta theta]
-			and [page:.y y] 属性值。
+			使用笛卡尔坐标来设置该圆柱坐标中 [page:.radius radius], [page:.theta theta]
+			以及 [page:.y y] 的属性值。
 		</p>
 
 		<h2>源码(Source)</h2>

+ 2 - 2
docs/api/zh/math/Euler.html

@@ -8,7 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		<h1>[name]</h1>
+		<h1>欧拉角([name]</h1>
 
 		<p class="desc">
 			表示 [link:http://en.wikipedia.org/wiki/Euler_angles Euler] 的类。<br /><br />
@@ -51,7 +51,7 @@
 			绕X轴旋转,然后是Y轴,最后是Z轴。其他可能性包括:
 			'YZX', 'ZXY', 'XZY', 'YXZ'和'ZYX'。这些必须是大写字母。<br /><br />
 			Three.js 使用<em>intrinsic</em> Tait-Bryan angles(Yaw、Pitch、Roll)。
-			这意味着旋转是在<em>本地</em>坐标系下进行的。也就是说,对于“XYZ”订单,首先是围绕local-X轴旋转(与world- x轴相同),
+			这意味着旋转是在<em>本地</em>坐标系下进行的。也就是说,对于“XYZ”顺序,首先是围绕local-X轴旋转(与world- x轴相同),
 			然后是local-Y(现在可能与world y轴不同),然后是local-Z(可能与world z轴不同)。<br /><br />
 
 			如果order值被改变,[page:.onChangeCallback onChangeCallback] 会被调用。

+ 3 - 3
docs/api/zh/math/Matrix3.html

@@ -53,7 +53,7 @@ m.elements = [ 11, 21, 31,
 
 		<h2>属性(Properties)</h2>
 
-		<h3>[property:Float32Array elements]</h3>
+		<h3>[property:Array elements]</h3>
 		<p>
 			矩阵列优先[link:https://en.wikipedia.org/wiki/Row-_and_column-major_order column-major]列表。
 		</p>
@@ -61,7 +61,7 @@ m.elements = [ 11, 21, 31,
 		<h3>[property:Boolean isMatrix3]</h3>
 		<p>
 				用于判定此对象或者此类的派生对象是否是三维矩阵。默认值为 *true*。<br /><br />
-			
+
 				不应该改变该值,因为它在内部用于优化。
 		</p>
 
@@ -103,7 +103,7 @@ m.elements = [ 11, 21, 31,
 		<p>
 		[page:Matrix3 m] - 取逆的矩阵。<br />
 		[page:Boolean throwOnDegenerate] - (optional) 如果设置为true,如果矩阵是退化的(如果不可逆的话),则会抛出一个错误。<br /><br />
-		
+
 		使用逆矩阵计算方法[link:https://en.wikipedia.org/wiki/Invertible_matrix#Analytic_solution analytic method],
 		将当前矩阵设置为给定矩阵的逆矩阵[link:https://en.wikipedia.org/wiki/Invertible_matrix inverse],如果[page:Boolean throwOnDegenerate]
 		参数没有设置且给定矩阵不可逆,那么将当前矩阵设置为3X3单位矩阵。

+ 5 - 5
docs/api/zh/math/Matrix4.html

@@ -83,7 +83,7 @@ m.elements = [ 11, 21, 31, 41,
 
 		<h2>属性(Properties)</h2>
 
-		<h3>[property:Float32Array elements]</h3>
+		<h3>[property:Array elements]</h3>
 		<p>
 		矩阵列优先[link:https://en.wikipedia.org/wiki/Row-_and_column-major_order column-major]列表。
 		</p>
@@ -91,7 +91,7 @@ m.elements = [ 11, 21, 31, 41,
 		<h3>[property:Boolean isMatrix4]</h3>
 		<p>
 			用于判定此对象或者此类的派生对象是否是三维矩阵。默认值为 *true*。<br /><br />
-		
+
 			不应该改变该值,因为它在内部用于优化。
 		</p>
 
@@ -168,7 +168,7 @@ zAxis = (c, g, k)
 		<p>
 			[page:Array array] - 用来存储设置元素数据的数组<br />
 			[page:Integer offset] - (可选参数) 数组的偏移量,默认值为 0。<br /><br />
-	
+
 			使用基于列优先格式[link:https://en.wikipedia.org/wiki/Row-_and_column-major_order#Column-major_order column-major]的数组来设置该矩阵。
 			</p>
 
@@ -176,7 +176,7 @@ zAxis = (c, g, k)
 		<p>
 			[page:Matrix3 m] - 取逆的矩阵。<br />
 			[page:Boolean throwOnDegenerate] - (optional) 如果设置为true,如果矩阵是退化的(如果不可逆的话),则会抛出一个错误。<br /><br />
-			
+
 			使用逆矩阵计算方法[link:https://en.wikipedia.org/wiki/Invertible_matrix#Analytic_solution analytic method],
 			将当前矩阵设置为给定矩阵的逆矩阵[link:https://en.wikipedia.org/wiki/Invertible_matrix inverse],如果[page:Boolean throwOnDegenerate]
 			参数没有设置且给定矩阵不可逆,那么将当前矩阵设置为3X3单位矩阵。
@@ -251,7 +251,7 @@ xAxis.z, yAxis.z, zAxis.z, 0,
 		<h3>[method:this makeRotationX]( [param:Float theta] )</h3>
 		<p>
 		[page:Float theta] — Rotation angle in radians.<br /><br />
-		
+
 		把该矩阵设置为绕x轴旋转弧度[page:Float theta] (&theta;)大小的矩阵。
 		结果如下:
 		<code>

+ 8 - 1
docs/api/zh/math/Quaternion.html

@@ -44,6 +44,13 @@
 
 		<h2>Properties</h2>
 
+		<h3>[property:Boolean isQuaternion]</h3>
+		<p>
+			Used to check whether this or derived classes are Quaternions. Default is *true*.<br /><br />
+
+			You should not change this, as it is used internally for optimisation.
+		</p>
+
 		<h3>[property:Float x]</h3>
 		<p>Changing this property will result in [page:.onChangeCallback onChangeCallback] being called.</p>
 
@@ -290,4 +297,4 @@ q.slerp( qb, t )
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>
-</html>
+</html>

+ 16 - 19
docs/api/zh/math/Spherical.html

@@ -8,18 +8,18 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		<h1>[name]</h1>
+		<h1>球坐标([name]</h1>
 
-		<p class="desc">A point's [link:https://en.wikipedia.org/wiki/Spherical_coordinate_system spherical coordinates].</p>
+		<p class="desc">一个点的[link:https://en.wikipedia.org/wiki/Spherical_coordinate_system spherical coordinates](球坐标)。</p>
 
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 
 		<h3>[name]( [param:Float radius], [param:Float phi], [param:Float theta] )</h3>
 		<p>
-		[page:Float radius] - the radius, or the [link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean distance]
-		(straight-line distance) from the point to the origin. Default is *1.0*.<br />
+		[page:Float radius] - 半径值,或者说从该点到原点的
+		[link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean distance](欧几里得距离,即直线距离)。默认值为*1.0*。<br />
 		[page:Float phi] - polar angle from the y (up) axis. Default is *0*.<br />
 		[page:Float theta] - equator angle around the y (up) axis. Default is *0*.<br /><br />
 
@@ -27,7 +27,7 @@
 		</p>
 
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Float radius]</h3>
 
@@ -36,42 +36,39 @@
 		<h3>[property:Float theta]</h3>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 		<h3>[method:Spherical clone]()</h3>
 		<p>
-		Returns a new plane with the same [page:.radius radius], [page:.phi phi]
-		and [page:.theta theta] properties as this one.
+		返回一个新的球坐标,新的球坐标与该球坐标具有相同的
+		[page:.radius radius]、[page:.phi phi]和[page:.theta theta]。
 		</p>
 
 		<h3>[method:Spherical copy]( [param:Spherical s] )</h3>
 		<p>
-			Copies the values of the passed Spherical's [page:.radius radius], [page:.phi phi]
-			and [page:.theta theta] properties to this spherical.
+		复制所传入的球坐标的[page:.radius radius]、
+		[page:.phi phi] 和[page:.theta theta]属性到该球坐标中。
 		</p>
 
 		<h3>[method:Spherical makeSafe]()</h3>
 		<p>
-		Restricts the polar angle [page:.phi phi] to be between 0.000001 and pi - 0.000001.
+		将极角 [page:.phi phi] 的值限制在0.000001 和 pi - 0.000001 之间。
 		</p>
 
 		<h3>[method:Spherical set]( [param:Float radius], [param:Float phi], [param:Float theta] )</h3>
-		<p>Sets values of this spherical's [page:.radius radius], [page:.phi phi]
-		and [page:.theta theta] properties.</p>
+		<p>设置球坐标中[page:.radius radius]、[page:.phi phi] 和 [page:.theta theta] 属性的值。</p>
 
 		<h3>[method:Spherical setFromVector3]( [param:Vector3 vec3] )</h3>
 		<p>
-			Sets values of this spherical's [page:.radius radius], [page:.phi phi]
-			and [page:.theta theta] properties from the [page:Vector3 Vector3].
+			从[page:Vector3 Vector3]中设置球坐标的[page:.radius radius]、[page:.phi phi]和[page:.theta theta]值。
 		</p>
 
 		<h3>[method:Spherical setFromCartesianCoords]( [param:Float x], [param:Float y], [param:Float z] )</h3>
 		<p>
-			Sets values of this spherical's [page:.radius radius], [page:.phi phi]
-			and [page:.theta theta] properties from Cartesian coordinates.
+			从笛卡尔坐标系中设置球坐标的[page:.radius radius]、[page:.phi phi]和[page:.theta theta]值。
 		</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

+ 117 - 115
docs/api/zh/math/Vector2.html

@@ -8,36 +8,34 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		<h1>[name]</h1>
+		<h1>二维向量([name]</h1>
 
 		<p class="desc">
-			Class representing a 2D [link:https://en.wikipedia.org/wiki/Vector_space vector].
+			表示2D [link:https://en.wikipedia.org/wiki/Vector_space vector](二维向量)的类。
 
-			A 2D vector is an ordered pair of numbers (labeled x and y), which can be used to
-			represent a number of things, such as:
+			一个二维向量是一对有顺序的数字(标记为x和y),可用来表示很多事物,例如:
 		</p>
 
 		<ul>
 			<li>
-				A point in 2D space (i.e. a position on a plane).
+				一个位于二维空间中的点(例如一个在平面上的点)。
 			</li>
 			<li>
-				A direction and length across a plane. In three.js the length will always be the
-				[link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean distance]
-				(straight-line distance) from (0, 0) to (x, y) and the direction is also
-				measured from (0, 0) towards (x, y).
+				一个在平面上的方向与长度的定义。在three.js中,长度总是从(0, 0)到(x, y)的
+				[link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean distance](欧几里德距离,即直线距离),
+				方向也是从(0, 0)到(x, y)的方向。
 			</li>
 			<li>
-				Any arbitrary ordered pair of numbers.
+				任意的、有顺序的一对数字。
 			</li>
 		</ul>
 
 		<p>
-			There are other things a 2D vector can be used to represent, such as momentum
-			vectors, complex numbers and so on,	however these are the most common uses in three.js.
+			其他的一些事物也可以使用二维向量进行表示,比如说动量矢量、复数等等;但以上这些是它在three.js中的常用用途。
 		</p>
 
-		<h2>Example</h2>
+		<h2>示例</h2>
+
 
 		<code>
 		var a = new THREE.Vector2( 0, 1 );
@@ -49,297 +47,301 @@
 		</code>
 
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 		<h3>[name]( [param:Float x], [param:Float y] )</h3>
 		<p>
-		[page:Float x] - the x value of the vector. Default is *0*.<br />
-		[page:Float y] -  the y value of the vector. Default is *0*.<br /><br />
+		[page:Float x] - 向量的x值,默认为*0*。<br />
+		[page:Float y] - 向量的y值,默认为*0*。<br /><br />
 
-		Creates a new [name].
+		创建一个新的[name]。
 		</p>
 
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Boolean isVector2]</h3>
 		<p>
-			Used to check whether this or derived classes are Vector2s. Default is *true*.<br /><br />
+			用于测试这个类或者派生类是否为Vector2,默认为*true*。<br /><br />
 
-			You should not change this, as it is used internally for optimisation.
+			你不应当对这个属性进行改变,因为它在内部使用,以用于优化。
 		</p>
 
 		<h3>[property:Float height]</h3>
-		<p>Alias for [page:.y y].</p>
+		<p>[page:.y y]的别名。</p>
 
 		<h3>[property:Float width]</h3>
-		<p>Alias for [page:.x x].</p>
+		<p>[page:.x x]的别名。</p>
 
 		<h3>[property:Float x]</h3>
 
 		<h3>[property:Float y]</h3>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 		<h3>[method:this add]( [param:Vector2 v] )</h3>
-		<p>Adds [page:Vector2 v] to this vector.</p>
+		<p>将传入的向量[page:Vector2 v]和这个向量相加。</p>
 
 		<h3>[method:this addScalar]( [param:Float s] )</h3>
-		<p>Adds the scalar value [page:Float s] to this vector's [page:.x x] and [page:.y y] values.</p>
+		<p>将传入的标量[page:Float s]和这个向量的[page:.x x]值、[page:.y y]值相加。</p>
 
 		<h3>[method:this addScaledVector]( [param:Vector2 v], [param:Float s] )</h3>
-		<p>Adds the multiple of [page:Vector2 v] and [page:Float s] to this vector.</p>
+		<p>将所传入的[page:Vector2 v]与[page:Float s]相乘所得乘积和这个向量相加。</p>
 
 		<h3>[method:this addVectors]( [param:Vector2 a], [param:Vector2 b] )</h3>
-		<p>Sets this vector to [page:Vector2 a] + [page:Vector2 b].</p>
+		<p>将该向量设置为 [page:Vector2 a] + [page:Vector2 b]。</p>
 
 		<h3>[method:Float angle]()</h3>
 		<p>
-		Computes the angle in radians of this vector with respect to the positive x-axis.
+			计算该向量相对于x轴正方向的弧度角度。
 		</p>
 
 		<h3>[method:this applyMatrix3]( [param:Matrix3 m] )</h3>
 		<p>
-		Multiplies this vector (with an implicit 1 as the 3rd component) by m.
+			将该向量乘以三阶矩阵m(第三个值隐式地为1)。
 		</p>
 
 		<h3>[method:this ceil]()</h3>
 		<p>
-		The [page:.x x] and [page:.y y] components of the vector are rounded up to the nearest integer value.
+			向量中的[page:.x x]分量和[page:.y y]分量向上取整为最接近的整数值。
 		</p>
 
 		<h3>[method:this clamp]( [param:Vector2 min], [param:Vector2 max] )</h3>
 		<p>
-		[page:Vector2 min] - the minimum x and y values.<br />
-		[page:Vector2 max] - the maximum x and y values in the desired range<br /><br />
+		[page:Vector2 min] - 在限制范围内,x和y的最小值。<br />
+		[page:Vector2 max] - 在限制范围内,x和y的最大值。<br /><br />
+
+		如果该向量的x值或y值大于限制范围内最大x值或y值,则该值将会被所对应的值取代。<br /><br />
+		如果该向量的x值或y值小于限制范围内最小x值或y值,则该值将会被所对应的值取代。
 
-		If this vector's x or y value is greater than the max vector's x or y value, it is replaced by the corresponding value. <br /><br />
-		If this vector's x or y value is less than the min vector's x or y value, it is replaced by the corresponding value.
 		</p>
 
 		<h3>[method:this clampLength]( [param:Float min], [param:Float max] )</h3>
 		<p>
-		[page:Float min] - the minimum value the length will be clamped to <br />
-		[page:Float max] - the maximum value the length will be clamped to<br /><br />
+		[page:Float min] - 长度将被限制为的最小值 <br />
+		[page:Float max] - 长度将被限制为的最大值<br /><br />
+
+		如果向量长度大于最大值,则它将会被最大值所取代。<br /><br />
+		如果向量长度小于最小值,则它将会被最小值所取代。
 
-		If this vector's length is greater than the max value, it is replaced by the max value. <br /><br />
-		If this vector's length is less than the min value, it is replaced by the min value.
 		</p>
 
 		<h3>[method:this clampScalar]( [param:Float min], [param:Float max] )</h3>
 		<p>
-		[page:Float min] - the minimum value the components will be clamped to <br />
-		[page:Float max] - the maximum value the components will be clamped to<br /><br />
+		[page:Float min] - 分量将被限制为的最小值 <br />
+		[page:Float max] - 分量将被限制为的最大值<br /><br />
+
+		如果该向量的x值或y值大于最大值,则它们将被最大值所取代。<br /><br />
+		如果该向量的x值或y值小于最小值,则它们将被最小值所取代。
 
-		If this vector's x or y values are greater than the max value, they are replaced by the max value. <br /><br />
-		If this vector's x or y values are less than the min value, they are replaced by the min value.
 		</p>
 
 		<h3>[method:Vector2 clone]()</h3>
 		<p>
-		Returns a new Vector2 with the same [page:.x x] and [page:.y y] values as this one.
+			返回一个新的Vector2,其具有和当前这个向量相同的[page:.x x]和[page:.y y]。
 		</p>
 
 		<h3>[method:this copy]( [param:Vector2 v] )</h3>
 		<p>
-			Copies the values of the passed Vector2's [page:.x x] and [page:.y y]
-			properties to this Vector2.
+			将所传入Vector2的[page:.x x]和[page:.y y]属性复制给这一Vector2。
 		</p>
 
 		<h3>[method:Float distanceTo]( [param:Vector2 v] )</h3>
-		<p>Computes the distance from this vector to [page:Vector2 v].</p>
+		<p>计算该vector到传入的[page:Vector2 v]的距离。</p>
 
 		<h3>[method:Float manhattanDistanceTo]( [param:Vector2 v] )</h3>
 		<p>
-		Computes the [link:https://en.wikipedia.org/wiki/Taxicab_geometry Manhattan distance] from this vector to [page:Vector2 v].
+		计算该vector到传入的[page:Vector2 v]的曼哈顿距离([link:https://en.wikipedia.org/wiki/Taxicab_geometry Manhattan distance])。
 		</p>
 
 		<h3>[method:Float distanceToSquared]( [param:Vector2 v] )</h3>
 		<p>
-		Computes the squared distance from this vector to [page:Vector2 v]. If you are just
-		comparing the distance with another distance, you should compare the distance squared instead
-		as it is slightly more efficient to calculate.
+		计算该向量到传入的[page:Vector2 v]的平方距离。
+		如果你只是将该距离和另一个距离进行比较,则应当比较的是距离的平方,
+		因为它的计算效率会更高一些。
 		</p>
 
 		<h3>[method:this divide]( [param:Vector2 v] )</h3>
-		<p>Divides this vector by [page:Vector2 v].</p>
+		<p>将该向量除以向量[page:Vector2 v]。</p>
 
 		<h3>[method:this divideScalar]( [param:Float s] )</h3>
 		<p>
-		Divides this vector by scalar [page:Float s].<br />
-		Sets vector to *( 0, 0 )* if [page:Float s] = 0.
+			将该向量除以标量[page:Float s]。<br />
+			如果传入的[page:Float s] = 0,则向量将被设置为*( 0, 0 )*。
 		</p>
 
 		<h3>[method:Float dot]( [param:Vector2 v] )</h3>
 		<p>
-		Calculates the [link:https://en.wikipedia.org/wiki/Dot_product dot product] of this
-	  vector and [page:Vector2 v].
+			计算该vector和所传入[page:Vector2 v]的点积([link:https://en.wikipedia.org/wiki/Dot_product dot product])。
 		</p>
         
 		<h3>[method:Float cross]( [param:Vector2 v] )</h3>
 		<p>
-		Calculates the [link:https://en.wikipedia.org/wiki/Cross_product cross product] of this
-	  vector and [page:Vector2 v]. Note that a 'cross-product' in 2D is not well-defined. This function computes a geometric cross-product often used in 2D graphics
+			计算该vector和所传入[page:Vector2 v]的叉积([link:https://en.wikipedia.org/wiki/Cross_product cross product])。 
+			请注意,“叉积”在2D中并没有被明确定义。该函数计算的是2D图形中经常使用的几何叉积。
 		</p>
 
 		<h3>[method:Boolean equals]( [param:Vector2 v] )</h3>
-		<p>Checks for strict equality of this vector and [page:Vector2 v].</p>
+		<p>检查该向量和[page:Vector2 v]的严格相等性。</p>
 
 		<h3>[method:this floor]()</h3>
-		<p>The components of the vector are rounded down to the nearest integer value.</p>
+		<p>
+			向量中的[page:.x x]分量和[page:.y y]分量向下取整为最接近的整数值。
+		</p>
 
 		<h3>[method:this fromArray]( [param:Array array], [param:Integer offset] )</h3>
 		<p>
-		[page:Array array] - the source array.<br />
-		[page:Integer offset] - (optional) offset into the array. Default is 0.<br /><br />
+		[page:Array array] - 来源的数组。<br />
+		[page:Integer offset] - (可选)在数组中的元素偏移量,默认值为0。<br /><br />
 
-		Sets this vector's [page:.x x] value to be array[ offset ] and [page:.y y] value to be array[ offset + 1 ].
+		设置向量中的[page:.x x]值为array[ offset ],[page:.y y]值为array[ offset + 1 ]。
 		</p>
 
 		<h3>[method:this fromBufferAttribute]( [param:BufferAttribute attribute], [param:Integer index] )</h3>
 		<p>
-		[page:BufferAttribute attribute] - the source attribute.<br />
-		[page:Integer index] - index in the attribute.<br /><br />
+		[page:BufferAttribute attribute] - 来源的attribute。<br />
+		[page:Integer index] - 在attribute中的索引。<br /><br />
 
-		Sets this vector's [page:.x x] and [page:.y y] values from the [page:BufferAttribute attribute].
-		</p>
+		从[page:BufferAttribute attribute]中设置向量的[page:.x x]值和[page:.y y]值。 
+		</p>
 
 		<h3>[method:Float getComponent]( [param:Integer index] )</h3>
 		<p>
-		[page:Integer index] - 0 or 1.<br /><br />
+		[page:Integer index] - 0 或 1<br /><br />
 
-		If index equals 0 returns the [page:.x x] value. <br />
-		If index equals 1 returns the [page:.y y] value.
+		如果index值为0则返回[page:.x x]值。<br />
+		如果index值为1则返回[page:.y y]值。
 		</p>
 
 		<h3>[method:Float length]()</h3>
-		<p>Computes the [link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean length]
-		(straight-line length) from (0, 0) to (x, y).</p>
+		<p>
+		计算从(0, 0)到(x, y)的欧几里得长度
+		([link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean length],即直线长度)。
+		</p>
 
 		<h3>[method:Float manhattanLength]()</h3>
 		<p>
-		Computes the [link:http://en.wikipedia.org/wiki/Taxicab_geometry Manhattan length] of this vector.
+		计算该向量的曼哈顿长度([link:http://en.wikipedia.org/wiki/Taxicab_geometry Manhattan length])。
 		</p>
 
 		<h3>[method:Float lengthSq]()</h3>
 		<p>
-		Computes the square of the [link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean length]
-		(straight-line length) from (0, 0) to (x, y). If you are 	comparing the lengths of
-		vectors, you should compare the length squared instead as it is slightly more efficient to calculate.
+		计算从(0, 0)到(x, y)的欧几里得长度
+		([link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean length],即直线长度)的平方。
+		如果你正在比较向量的长度,应当比较的是长度的平方,因为它的计算效率更高一些。
 		</p>
 
 		<h3>[method:this lerp]( [param:Vector2 v], [param:Float alpha] )</h3>
 		<p>
-		[page:Vector2 v] - [page:Vector2] to interpolate towards.<br />
-		alpha - interpolation factor in the closed interval [0, 1].<br /><br />
+		[page:Vector2 v] - 朝着进行插值的[page:Vector2]。<br />
+		alpha - 插值因数,其范围在[0, 1]闭区间。<br /><br />
 
-		Linearly interpolates between this vector and [page:Vector2 v], where alpha is the
-		distance along the line - alpha = 0 will be this vector, and alpha = 1 will be [page:Vector2 v].
+		在该向量与传入的向量[page:Vector2 v]之间的线性插值,alpha是沿着线的距离长度。
+		—— alpha = 0 时表示的是当前向量,alpha = 1 时表示的是所传入的向量[page:Vector2 v]。
 		</p>
 
 		<h3>[method:this lerpVectors]( [param:Vector2 v1], [param:Vector2 v2], [param:Float alpha] )</h3>
 		<p>
-		[page:Vector2 v1] - the starting [page:Vector2].<br />
-		[page:Vector2 v2] - [page:Vector2] to interpolate towards.<br />
-		[page:Float alpha] - interpolation factor in the closed interval [0, 1].<br /><br />
+		[page:Vector2 v1] - 起始的[page:Vector2]。<br />
+		[page:Vector2 v2] - 朝着进行插值的[page:Vector2]。<br />
+		[page:Float alpha] - 插值因数,其范围在[0, 1]闭区间。<br /><br />
 
-		Sets this vector to be the vector linearly interpolated between [page:Vector2 v1] and
-		[page:Vector2 v2] where alpha is the distance along the line connecting the two vectors
-		- alpha = 0 will be [page:Vector2 v1], and alpha = 1 will be [page:Vector2 v2].
+		将此向量设置为在[page:Vector2 v1]和[page:Vector2 v2]之间进行线性插值的向量,
+		其中alpha为两个向量之间连线的距离长度。
+		—— alpha = 0 时表示的是[page:Vector2 v1],alpha = 1 时表示的是[page:Vector2 v2]。
 		</p>
 
 		<h3>[method:this negate]()</h3>
-		<p>Inverts this vector - i.e. sets x = -x and y = -y.</p>
+		<p>向量取反,即: x = -x , y = -y。</p>
 
 		<h3>[method:this normalize]()</h3>
 		<p>
-		Converts this vector to a [link:https://en.wikipedia.org/wiki/Unit_vector unit vector] - that is, sets it equal to the vector with the same direction
-		as this one, but [page:.length length] 1.
+		将该向量转换为单位向量([link:https://en.wikipedia.org/wiki/Unit_vector unit vector]),
+		也就是说,将该向量的方向设置为和原向量相同,但是其长度([page:.length length])为1。
 		</p>
 
 		<h3>[method:this max]( [param:Vector2 v] )</h3>
 		<p>
-		If this vector's x or y value is less than [page:Vector2 v]'s x or y value, replace
-		that value with the corresponding max value.
+		如果该向量的x值或y值小于所传入[page:Vector2 v]的x值或y值,则将该值替换为对应的最大值。
 		</p>
 
 		<h3>[method:this min]( [param:Vector2 v] )</h3>
 		<p>
-		If this vector's x or y value is greater than [page:Vector2 v]'s x or y value, replace
-		that value with the corresponding min value.
+		如果该向量的x值或y值大于所传入[page:Vector2 v]的x值或y值,则将该值替换为对应的最小值。
 		</p>
 
 		<h3>[method:this multiply]( [param:Vector2 v] )</h3>
-		<p>Multiplies this vector by [page:Vector2 v].</p>
+		<p>将该向量与所传入的向量[page:Vector2 v]进行相乘。</p>
 
 
 		<h3>[method:this multiplyScalar]( [param:Float s] )</h3>
-		<p>Multiplies this vector by scalar [page:Float s].</p>
+		<p>将该向量与所传入的标量[page:Float s]进行相乘。</p>
 
 		<h3>[method:this rotateAround]( [param:Vector2 center], [param:float angle] )</h3>
 		<p>
-			[page:Vector2 center] - the point around which to rotate.<br />
-			[page:float angle] - the angle to rotate, in radians.<br /><br />
+		[page:Vector2 center] - 将被围绕旋转的点。<br />
+		[page:float angle] - 将要旋转的角度,以弧度来表示。<br /><br />
 
-			Rotates the vector around [page:Vector2 center] by [page:float angle] radians.
+		将向量围绕着[page:Vector2 center]旋转[page:float angle]弧度。
 		</p>
 
 		<h3>[method:this round]()</h3>
-		<p>The components of the vector are rounded to the nearest integer value.</p>
+		<p>			
+			向量中的[page:.x x]分量和[page:.y y]分量四舍五入取整为最接近的整数值。
+		</p>
 
 		<h3>[method:this roundToZero]()</h3>
 		<p>
-		The components of the vector are rounded towards zero (up if negative, down if positive) to an integer value.
+			向量中的分量朝向0取整数(若分量为负数则向上取整,若为正数则向下取整)。
 		</p>
 
 		<h3>[method:this set]( [param:Float x], [param:Float y] )</h3>
-		<p>Sets the [page:.x x] and [page:.y y] components of this vector.</p>
+		<p>设置该向量的[page:.x x]和[page:.y y]分量。</p>
 
 		<h3>[method:null setComponent]( [param:Integer index], [param:Float value] )</h3>
 		<p>
-		[page:Integer index] - 0 or 1.<br />
+		[page:Integer index] - 0 或 1<br />
 		[page:Float value] - [page:Float]<br /><br />
 
-		If index equals 0 set [page:.x x] to [page:Float value]. <br />
-		If index equals 1 set [page:.y y] to [page:Float value]
+		如果index值为0则将[page:.x x]值设置为[page:Float value]。<br />
+		如果index值为1则将[page:.y y]值设置为[page:Float value]
 		</p>
 
 		<h3>[method:this setLength]( [param:Float l] )</h3>
 		<p>
-		Sets this vector to the vector with the same direction as this one, but [page:.length length]
-		[page:Float l].
+			将该向量的方向设置为和原向量相同,但是长度([page:.length length])为[page:Float l]。
 		</p>
 
 		<h3>[method:this setScalar]( [param:Float scalar] )</h3>
 		<p>
-		Sets the [page:.x x] and [page:.y y] values of this vector both equal to [page:Float scalar].
+		将该向量的[page:.x x]、[page:.y y]值同时设置为等于传入的[page:Float scalar]。
 		</p>
 
 		<h3>[method:this setX]( [param:Float x] )</h3>
-		<p>Replaces this vector's [page:.x x] value with [page:Float x].</p>
+		<p>将向量中的[page:.x x]值替换为[page:Float x]。</p>
 
 		<h3>[method:this setY]( [param:Float y] )</h3>
-		<p>Replaces this vector's [page:.y y] value with [page:Float y].</p>
+		<p>将向量中的[page:.y y]值替换为[page:Float y]。</p>
 
 		<h3>[method:this sub]( [param:Vector2 v] )</h3>
-		<p>Subtracts [page:Vector2 v] from this vector.</p>
+		<p>从该向量减去向量[page:Vector2 v]。</p>
 
 		<h3>[method:this subScalar]( [param:Float s] )</h3>
-		<p>Subtracts [page:Float s]  from this vector's [page:.x x] and [page:.y y] components.</p>
+		<p>从该向量的[page:.x x]和[page:.y y]中减去标量[page:Float s]。</p>
 
 		<h3>[method:this subVectors]( [param:Vector2 a], [param:Vector2 b] )</h3>
-		<p>Sets this vector to [page:Vector2 a] - [page:Vector2 b].</p>
+		<p>将该向量设置为[page:Vector2 a] - [page:Vector2 b]。</p>
 
 		<h3>[method:Array toArray]( [param:Array array], [param:Integer offset] )</h3>
 		<p>
-		[page:Array array] - (optional) array to store the vector to. If this is not provided, a new array will be created.<br />
-		[page:Integer offset] - (optional) optional offset into the array.<br /><br />
+		[page:Array array] - (可选)被用于存储向量的数组。如果这个值没有传入,则将创建一个新的数组。<br />
+		[page:Integer offset] - (可选) 数组中元素的偏移量。<br /><br />
 
-		Returns an array [x, y], or copies x and y into the provided [page:Array array].
+		返回一个数组[x, y],或者将x和y复制到所传入的[page:Array array]中。
 		</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

+ 136 - 138
docs/api/zh/math/Vector3.html

@@ -8,36 +8,36 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		<h1>[name]</h1>
+		<h1>三维向量([name]</h1>
 
-		<p class="desc">Class representing a 3D [link:https://en.wikipedia.org/wiki/Vector_space vector].
+		<p class="desc">该类表示的是一个三维向量(3D [link:https://en.wikipedia.org/wiki/Vector_space vector])。
 
-		A 3D vector is an ordered triplet of numbers (labeled x, y, and z), which can be used to
-		represent a number of things, such as:
+		一个三维向量表示的是一个有顺序的、三个为一组的数字组合(标记为x、y和z),
+		可被用来表示很多事物,例如:
+		
 		</p>
 
 		<ul>
 			<li>
-				A point in 3D space.
+				一个位于三维空间中的点。
 			</li>
 			<li>
-				A direction and length in 3D space. In three.js the length will always be the
-				[link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean distance]
-				(straight-line distance) from (0, 0, 0) to (x, y, z) and the direction is also
-				measured from (0, 0, 0) towards (x, y, z).
+				一个在三维空间中的方向与长度的定义。在three.js中,长度总是从(0, 0, 0)到(x, y, z)的
+				[link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean distance](欧几里德距离,即直线距离),
+				方向也是从(0, 0, 0)到(x, y, z)的方向。
 			</li>
 			<li>
-				Any arbitrary ordered triplet of numbers.
+				任意的、有顺序的、三个为一组的数字组合。
 			</li>
 		</ul>
 
 		<p>
-		There are other things a 3D vector can be used to represent, such as momentum
-		vectors and so on, however these are the most common uses in three.js.
+		其他的一些事物也可以使用二维向量进行表示,比如说动量矢量等等;
+		但以上这些是它在three.js中的常用用途。
 		</p>
 
 
-		<h2>Example</h2>
+		<h2>示例</h2>
 
 		<code>
 var a = new THREE.Vector3( 0, 1, 0 );
@@ -49,25 +49,25 @@ var d = a.distanceTo( b );
 		</code>
 
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 		<h3>[name]( [param:Float x], [param:Float y], [param:Float z] )</h3>
 		<p>
-		[page:Float x] - the x value of the vector. Default is *0*.<br />
-		[page:Float y] -  the y value of the vector. Default is *0*.<br />
-		[page:Float z] - the z value of the vector. Default is *0*.<br /><br />
+		[page:Float x] - 向量的x值,默认为*0*。<br />
+		[page:Float y] - 向量的y值,默认为*0*。<br />
+		[page:Float z] - 向量的z值,默认为*0*。<br /><br />
 
-		Creates a new [name].
+		创建一个新的[name]。
 		</p>
 
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Boolean isVector3]</h3>
 		<p>
-			Used to check whether this or derived classes are Vector3s. Default is *true*.<br /><br />
+			用于测试这个类或者派生类是否为Vector3,默认为*true*。<br /><br />
 
-			You should not change this, as it is used internally for optimisation.
+			你不应当对这个属性进行改变,因为它在内部使用,以用于优化。
 		</p>
 
 		<h3>[property:Float x]</h3>
@@ -77,239 +77,239 @@ var d = a.distanceTo( b );
 		<h3>[property:Float z]</h3>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 		<h3>[method:this add]( [param:Vector3 v] )</h3>
-		<p>Adds [page:Vector3 v] to this vector.</p>
+		<p>将传入的向量[page:Vector3 v]和这个向量相加。</p>
 
 		<h3>[method:this addScalar]( [param:Float s] )</h3>
-		<p>Adds the scalar value s to this vector's [page:.x x], [page:.y y] and [page:.z z] values.</p>
+		<p>将传入的标量s和这个向量的[page:.x x]值、[page:.y y]值以及[page:.z z]值相加。</p>
 
 		<h3>[method:this addScaledVector]( [param:Vector3 v], [param:Float s] )</h3>
-		<p>Adds the multiple of [page:Vector3 v] and [page:Float s] to this vector.</p>
+		<p>将所传入的[page:Vector3 v]与[page:Float s]相乘所得的乘积和这个向量相加。</p>
 
 		<h3>[method:this addVectors]( [param:Vector3 a], [param:Vector3 b] )</h3>
-		<p>Sets this vector to [page:Vector3 a] + [page:Vector3 b].</p>
+		<p>将该向量设置为[page:Vector3 a] + [page:Vector3 b]。</p>
 
 		<h3>[method:this applyAxisAngle]( [param:Vector3 axis], [param:Float angle] )</h3>
 		<p>
-		[page:Vector3 axis] - A normalized [page:Vector3].<br />
-		[page:Float angle] - An angle in radians.<br /><br />
+		[page:Vector3 axis] - 一个被归一化的[page:Vector3]。<br />
+		[page:Float angle] - 以弧度表示的角度。<br /><br />
 
-		Applies a rotation specified by an axis and an angle to this vector.
+		将轴和角度所指定的旋转应用到该向量上。
 		</p>
 
 		<h3>[method:this applyEuler]( [param:Euler euler] )</h3>
 		<p>
-		Applies euler transform to this vector by converting the [page:Euler] object to a
-		[page:Quaternion] and applying.
+		通过将[page:Euler](欧拉)对象转换为[page:Quaternion](四元数)并应用,
+		将欧拉变换应用到这一向量上。
 		</p>
 
 		<h3>[method:this applyMatrix3]( [param:Matrix3 m] )</h3>
-		<p>Multiplies this vector by [page:Matrix3 m]</p>
+		<p>将该向量乘以三阶矩阵[page:Matrix3 m]。</p>
 
 		<h3>[method:this applyMatrix4]( [param:Matrix4 m] )</h3>
 		<p>
-		Multiplies this vector (with an implicit 1 in the 4th dimension) and m, and divides by perspective.
+			将该向量乘以四阶矩阵m(第四个维度隐式地为1),and divides by perspective.
 		</p>
 
 		<h3>[method:this applyQuaternion]( [param:Quaternion quaternion] )</h3>
 		<p>
-		Applies a [page:Quaternion] transform to this vector.
+		将[page:Quaternion]变换应用到该向量。
 		</p>
 
 
 		<h3>[method:Float angleTo]( [param:Vector3 v] )</h3>
 		<p>
-		Returns the angle between this vector and vector [page:Vector3 v] in radians.
+		以弧度返回该向量与向量[page:Vector3 v]之间的角度。
 		</p>
 
 		<h3>[method:this ceil]()</h3>
 		<p>
-		The [page:.x x], [page:.y y] and [page:.z z] components of the vector are rounded up to the nearest integer value.
+		将该向量[page:.x x]分量、 [page:.y y]分量以及[page:.z z]分量向上取整为最接近的整数。
 		</p>
 
 		<h3>[method:this clamp]( [param:Vector3 min], [param:Vector3 max] )</h3>
 		<p>
-		[page:Vector3 min] - the minimum [page:.x x], [page:.y y] and [page:.z z] values.<br />
-		[page:Vector3 max] - the maximum [page:.x x], [page:.y y] and [page:.z z] values in the desired range<br /><br />
+		[page:Vector3 min] - 在限制范围内,[page:.x x]值、[page:.y y]值和[page:.z z]的最小值。<br />
+		[page:Vector3 max] - 在限制范围内,[page:.x x]值、[page:.y y]值和[page:.z z]的最大值。<br /><br />
 
-		If this vector's x, y or z value is greater than the max vector's x, y or z value, it is replaced by the corresponding value. <br /><br />
-		If this vector's x, y or z value is less than the min vector's x, y or z value, it is replaced by the corresponding value.
+		如果该向量的x值、y值或z值大于限制范围内最大x值、y值或z值,则该值将会被所对应的值取代。<br /><br />
+		如果该向量的x值、y值或z值小于限制范围内最小x值、y值或z值,则该值将会被所对应的值取代。
 		</p>
 
 		<h3>[method:this clampLength]( [param:Float min], [param:Float max] )</h3>
 		<p>
-		[page:Float min] - the minimum value the length will be clamped to <br />
-		[page:Float max] - the maximum value the length will be clamped to<br /><br />
+		[page:Float min] - 长度将被限制为的最小值 <br />
+		[page:Float max] - 长度将被限制为的最大值<br /><br />
 
-		If this vector's length is greater than the max value, it is replaced by the max value. <br /><br />
-		If this vector's length is less than the min value, it is replaced by the min value.
+		如果向量长度大于最大值,则它将会被最大值所取代。<br /><br />
+		如果向量长度小于最小值,则它将会被最小值所取代。
 		</p>
 
 		<h3>[method:this clampScalar]( [param:Float min], [param:Float max] )</h3>
 		<p>
-		[page:Float min] - the minimum value the components will be clamped to <br />
-		[page:Float max] - the maximum value the components will be clamped to<br /><br />
+		[page:Float min] - 分量将被限制为的最小值 <br />
+		[page:Float max] - 分量将被限制为的最大值<br /><br />
 
-		If this vector's x, y or z values are greater than the max value, they are replaced by the max value. <br /><br />
-		If this vector's x, y or z values are less than the min value, they are replaced by the min value.
+		如果该向量的x值、y值或z值大于最大值,则它们将被最大值所取代。<br /><br />
+		如果该向量的x值、y值或z值小于最小值,则它们将被最小值所取代。
 		</p>
 
 		<h3>[method:Vector3 clone]()</h3>
 		<p>
-		Returns a new vector3 with the same [page:.x x], [page:.y y] and [page:.z z] values as this one.
+		返回一个新的Vector3,其具有和当前这个向量相同的[page:.x x]、[page:.y y]和[page:.z z]。
 		</p>
 
 		<h3>[method:this copy]( [param:Vector3 v] )</h3>
 		<p>
-			Copies the values of the passed vector3's [page:.x x], [page:.y y] and [page:.z z]
-			properties to this vector3.
+		将所传入Vector3的[page:.x x]、[page:.y y]和[page:.z z]属性复制给这一Vector3。
 		</p>
 
 		<h3>[method:this cross]( [param:Vector3 v] )</h3>
 		<p>
-		Sets this vector to [link:https://en.wikipedia.org/wiki/Cross_product cross product] of itself and [page:Vector3 v].
+		将该向量设置为它本身与传入的[page:Vector3 v]的叉积([link:https://en.wikipedia.org/wiki/Cross_product cross product])。
 		</p>
 
 		<h3>[method:this crossVectors]( [param:Vector3 a], [param:Vector3 b] )</h3>
 		<p>
-		Sets this vector to [link:https://en.wikipedia.org/wiki/Cross_product cross product] of [page:Vector3 a] and [page:Vector3 b].
+		将该向量设置为传入的[page:Vector3 a]与[page:Vector3 b]的叉积([link:https://en.wikipedia.org/wiki/Cross_product cross product])。
 		</p>
 
 		<h3>[method:Float distanceTo]( [param:Vector3 v] )</h3>
-		<p>Computes the distance from this vector to [page:Vector3 v].</p>
+		<p>计算该向量到所传入的[page:Vector3 v]间的距离。</p>
 
 		<h3>[method:Float manhattanDistanceTo]( [param:Vector3 v] )</h3>
 		<p>
-		Computes the [link:https://en.wikipedia.org/wiki/Taxicab_geometry Manhattan distance] from this vector to [page:Vector3 v].
+		计算该向量到所传入的[page:Vector3 v]之间的曼哈顿距离([link:https://en.wikipedia.org/wiki/Taxicab_geometry Manhattan distance])。
 		</p>
 
 		<h3>[method:Float distanceToSquared]( [param:Vector3 v] )</h3>
 		<p>
-		Computes the squared distance from this vector to [page:Vector3 v]. If you are just
-		comparing the distance with another distance, you should compare the distance squared instead
-		as it is slightly more efficient to calculate.
+		计算该向量到传入的[page:Vector3 v]的平方距离。
+		如果你只是将该距离和另一个距离进行比较,则应当比较的是距离的平方,
+		因为它的计算效率会更高一些。
 		</p>
 
 		<h3>[method:this divide]( [param:Vector3 v] )</h3>
-		<p>Divides this vector by [page:Vector3 v].</p>
+		<p>将该向量除以向量[page:Vector3 v]。</p>
 
 		<h3>[method:this divideScalar]( [param:Float s] )</h3>
 		<p>
-		Divides this vector by scalar [page:Float s].<br />
-		Sets vector to *( 0, 0, 0 )* if *[page:Float s] = 0*.
+		将该向量除以标量[page:Float s]。<br />
+		如果传入的[page:Float s] = 0,则向量将被设置为*( 0, 0, 0 )*。
 		</p>
 
 		<h3>[method:Float dot]( [param:Vector3 v] )</h3>
 		<p>
-		Calculate the [link:https://en.wikipedia.org/wiki/Dot_product dot product] of this
-		vector and [page:Vector3 v].
+		计算该vector和所传入[page:Vector3 v]的点积([link:https://en.wikipedia.org/wiki/Dot_product dot product])。
 		</p>
 
 		<h3>[method:Boolean equals]( [param:Vector3 v] )</h3>
-		<p>Checks for strict equality of this vector and [page:Vector3 v].</p>
+		<p>检查该向量和[page:Vector3 v]的严格相等性。</p>
 
 		<h3>[method:this floor]()</h3>
-		<p>The components of the vector are rounded down to the nearest integer value.</p>
+		<p>向量的分量向下取整为最接近的整数值。</p>
 
 		<h3>[method:this fromArray]( [param:Array array], [param:Integer offset] )</h3>
 		<p>
-		[page:Array array] - the source array.<br />
-		[page:Integer offset] - ( optional) offset into the array. Default is 0.<br /><br />
+		[page:Array array] - 来源矩阵。<br />
+		[page:Integer offset] - (可选)在数组中的元素偏移量,默认值为0。<br /><br />
 
-		Sets this vector's [page:.x x] value to be array[ offset + 0 ], [page:.y y] value to be array[ offset + 1 ]
-		and [page:.z z] value to be array[ offset + 2 ].
+		设置向量中的[page:.x x]值为array[ offset + 0 ],[page:.y y]值为array[ offset + 1 ],
+		[page:.z z]值为array[ offset + 2 ]。
 		</p>
 
 		<h3>[method:this fromBufferAttribute]( [param:BufferAttribute attribute], [param:Integer index] )</h3>
 		<p>
-		[page:BufferAttribute attribute] - the source attribute.<br />
-		[page:Integer index] - index in the attribute.<br /><br />
+		[page:BufferAttribute attribute] - 来源的attribute。<br />
+		[page:Integer index] - 在attribute中的索引。<br /><br />
 
-		Sets this vector's [page:.x x], [page:.y y] and [page:.z z] values from the [page:BufferAttribute attribute].
+		从[page:BufferAttribute attribute]中设置向量的[page:.x x]值、[page:.y y]值和[page:.z z]值。
 		</p>
 
 		<h3>[method:Float getComponent]( [param:Integer index] )</h3>
 		<p>
 		[page:Integer index] - 0, 1 or 2.<br /><br />
 
-		If index equals 0 returns the [page:.x x] value. <br />
-		If index equals 1 returns the [page:.y y] value. <br />
-		If index equals 2 returns the [page:.z z] value.
+		如果index值为0返回[page:.x x]值。 <br />
+		如果index值为1返回[page:.y y]值。 <br />
+		如果index值为2返回[page:.z z]值。
 		</p>
 
 		<h3>[method:Float length]()</h3>
-		<p>Computes the [link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean length]
-		(straight-line length) from (0, 0, 0) to (x, y, z).</p>
+		<p>计算从(0, 0, 0) 到 (x, y, z)的欧几里得长度
+		([link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean length],即直线长度)
+		</p>
 
 		<h3>[method:Float manhattanLength]()</h3>
 		<p>
-		Computes the [link:http://en.wikipedia.org/wiki/Taxicab_geometry Manhattan length] of this vector.
+		计算该向量的曼哈顿长度([link:http://en.wikipedia.org/wiki/Taxicab_geometry Manhattan length])。
 		</p>
 
 		<h3>[method:Float lengthSq]()</h3>
 		<p>
-		Computes the square of the [link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean length]
-		(straight-line length) from (0, 0, 0) to (x, y, z). If you are 	comparing the lengths of
-		vectors, you should compare the length squared instead as it is slightly more efficient to calculate.
+		计算从(0, 0, 0)到(x, y, z)的欧几里得长度
+		([link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean length],即直线长度)的平方。
+		如果你正在比较向量的长度,应当比较的是长度的平方,因为它的计算效率更高一些。
 		</p>
 
 		<h3>[method:this lerp]( [param:Vector3 v], [param:Float alpha] )</h3>
 		<p>
-		[page:Vector3 v] - [page:Vector3] to interpolate towards.<br />
-		alpha - interpolation factor in the closed interval [0, 1].<br /><br />
+		[page:Vector3 v] - 朝着进行插值的[page:Vector3]。<br />
+		alpha - 插值因数,其范围在[0, 1]闭区间。<br /><br />
 
-		Linearly interpolate between this vector and [page:Vector3 v], where alpha is the
-		distance along the line - alpha = 0 will be this vector, and alpha = 1 will be [page:Vector3 v].
+		在该向量与传入的向量[page:Vector3 v]之间的线性插值,alpha是沿着线的距离长度。
+		—— alpha = 0 时表示的是当前向量,alpha = 1 时表示的是所传入的向量[page:Vector3 v]。
 		</p>
 
 		<h3>[method:this lerpVectors]( [param:Vector3 v1], [param:Vector3 v2], [param:Float alpha] )</h3>
 		<p>
-		[page:Vector3 v1] - the starting [page:Vector3].<br />
-		[page:Vector3 v2] - [page:Vector3] to interpolate towards.<br />
-		[page:Float alpha] - interpolation factor in the closed interval [0, 1].<br /><br />
+		[page:Vector3 v1] - 起始的[page:Vector3]。<br />
+		[page:Vector3 v2] - 朝着进行插值的[page:Vector3]。<br />
+		[page:Float alpha] - 插值因数,其范围在[0, 1]闭区间。<br /><br />
 
-		Sets this vector to be the vector linearly interpolated between [page:Vector3 v1] and
-		[page:Vector3 v2] where alpha is the distance along the line connecting the two vectors
-		- alpha = 0 will be [page:Vector3 v1], and alpha = 1 will be [page:Vector3 v2].
+		
+		将此向量设置为在[page:Vector3 v1]和[page:Vector3 v2]之间进行线性插值的向量,
+		其中alpha为两个向量之间连线的距离长度。
+		—— alpha = 0 时表示的是[page:Vector3 v1],alpha = 1 时表示的是[page:Vector3 v2]。
 		</p>
 
 		<h3>[method:this max]( [param:Vector3 v] )</h3>
 		<p>
-		If this vector's x, y or z value is less than [page:Vector3 v]'s x, y or z value, replace
-		that value with the corresponding max value.
+		如果该向量的x值、y值或z值小于所传入[page:Vector3 v]的x值、y值或z值,
+		则将该值替换为对应的最大值。
 		</p>
 
 		<h3>[method:this min]( [param:Vector3 v] )</h3>
 		<p>
-		If this vector's x, y or z value is greater than [page:Vector3 v]'s x, y or z value, replace
-		that value with the corresponding min value.
+		如果该向量的x值、y值或z值大于所传入[page:Vector3 v]的x值、y值或z值,
+		则将该值替换为对应的最小值。
 		</p>
 
 		<h3>[method:this multiply]( [param:Vector3 v] )</h3>
-		<p>Multiplies this vector by [page:Vector3 v].</p>
+		<p>将该向量与所传入的向量[page:Vector3 v]进行相乘。</p>
 
 		<h3>[method:this multiplyScalar]( [param:Float s] )</h3>
-		<p>Multiplies this vector by scalar [page:Float s].</p>
+		<p>将该向量与所传入的标量[page:Float s]进行相乘。</p>
 
 		<h3>[method:this multiplyVectors]( [param:Vector3 a], [param:Vector3 b] )</h3>
-		<p>Sets this vector equal to [page:Vector3 a] * [page:Vector3 b], component-wise.</p>
+		<p>按照分量顺序,将该向量设置为和[page:Vector3 a] * [page:Vector3 b]相等。</p>
 
 		<h3>[method:this negate]()</h3>
-		<p>Inverts this vector - i.e. sets x = -x, y = -y and z = -z.</p>
+		<p>向量取反,即: x = -x, y = -y , z = -z。</p>
 
 		<h3>[method:this normalize]()</h3>
 		<p>
-		Convert this vector to a [link:https://en.wikipedia.org/wiki/Unit_vector unit vector] - that is, sets it equal to the vector with the same direction
-		as this one, but [page:.length length] 1.
+		将该向量转换为单位向量([link:https://en.wikipedia.org/wiki/Unit_vector unit vector]),
+		也就是说,将该向量的方向设置为和原向量相同,但是其长度([page:.length length])为1。
 		</p>
 
 		<h3>[method:this project]( [param:Camera camera] )</h3>
 		<p>
-		[page:Camera camera] — camera to use in the projection.<br /><br />
+		[page:Camera camera] — 在投影中使用的摄像机。<br /><br />
 
-		[link:https://en.wikipedia.org/wiki/Vector_projection Projects] the vector with the camera.
+		使用所传入的摄像机来投影([link:https://en.wikipedia.org/wiki/Vector_projection projects])该向量。
 		</p>
 
 		<h3>[method:this projectOnPlane]( [param:Vector3 planeNormal] )</h3>
@@ -321,7 +321,7 @@ var d = a.distanceTo( b );
 		</p>
 
 		<h3>[method:this projectOnVector]( [param:Vector3] )</h3>
-		<p>[link:https://en.wikipedia.org/wiki/Vector_projection Projects] this vector onto another vector.</p>
+		<p>投影([link:https://en.wikipedia.org/wiki/Vector_projection Projects])该向量到另一个向量上。 </p>
 
 		<h3>[method:this reflect]( [param:Vector3 normal] )</h3>
 		<p>
@@ -332,114 +332,112 @@ var d = a.distanceTo( b );
 		</p>
 
 		<h3>[method:this round]()</h3>
-		<p>The components of the vector are rounded to the nearest integer value.</p>
+		<p>	向量中的分量四舍五入取整为最接近的整数值。</p>
 
 		<h3>[method:this roundToZero]()</h3>
 		<p>
-		The components of the vector are rounded towards zero (up if negative, down if positive) to an integer value.
+		向量中的分量朝向0取整数(若分量为负数则向上取整,若为正数则向下取整)。
 		</p>
 
 		<h3>[method:this set]( [param:Float x], [param:Float y], [param:Float z] )</h3>
-		<p>Sets the [page:.x x], [page:.y y] and [page:.z z] components of this vector.</p>
+		<p>设置该向量的[page:.x x]、[page:.y y] 和 [page:.z z] 分量。</p>
 
 		<h3>[method:null setComponent]( [param:Integer index], [param:Float value] )</h3>
 		<p>
-		[page:Integer index] - 0, 1 or 2.<br />
+		[page:Integer index] - 0、1 或 2。<br />
 		[page:Float value] - [page:Float]<br /><br />
 
-		If index equals 0 set [page:.x x] to [page:Float value].<br />
-		If index equals 1 set [page:.y y] to [page:Float value].<br />
-		If index equals 2 set [page:.z z] to [page:Float value]
+		若index为 0 则设置 [page:.x x] 值为 [page:Float value]。<br />
+		若index为 1 则设置 [page:.y y] 值为 [page:Float value]。<br />
+		若index为 2 则设置 [page:.z z] 值为 [page:Float value]。
 		</p>
 
 		<h3>[method:this setFromCylindrical]( [param:Cylindrical c] )</h3>
 		<p>
-		Sets this vector from the cylindrical coordinates [page:Cylindrical c].
+		从圆柱坐标[page:Cylindrical c]中设置该向量。
 		</p>
 
 		<h3>[method:this setFromCylindricalCoords]( [param:Float radius], [param:Float theta], [param:Float y] )</h3>
-		<p>Sets this vector from the cylindrical coordinates [page:Cylindrical radius], [page:Cylindrical theta] and [page:Cylindrical y].</p>
+		<p>从圆柱坐标中的[page:Cylindrical radius]、[page:Cylindrical theta]和[page:Cylindrical y]设置该向量。</p>
 
 		<h3>[method:this setFromMatrixColumn]( [param:Matrix4 matrix], [param:Integer index] )</h3>
 		<p>
-		Sets this vector's [page:.x x], [page:.y y] and [page:.z z] equal to the column of
-		the [page:Matrix4 matrix] specified by the [page:Integer index].
+		从传入的四阶矩阵[page:Matrix4 matrix]由[page:Integer index]指定的列中,
+		设置该向量的[page:.x x]值、[page:.y y]值和[page:.z z]值。
 		</p>
 
 		<h3>[method:this setFromMatrixPosition]( [param:Matrix4 m] )</h3>
 		<p>
-		Sets this vector to the position elements of the
-		[link:https://en.wikipedia.org/wiki/Transformation_matrix transformation matrix] [page:Matrix4 m].
+		从变换矩阵([link:https://en.wikipedia.org/wiki/Transformation_matrix transformation matrix])[page:Matrix4 m]中,
+		设置该向量为其中与位置相关的元素。
 		</p>
 
 		<h3>[method:this setFromMatrixScale]( [param:Matrix4 m] )</h3>
 		<p>
-		Sets this vector to the scale elements of the
-		[link:https://en.wikipedia.org/wiki/Transformation_matrix transformation matrix] [page:Matrix4 m].
+		从变换矩阵([link:https://en.wikipedia.org/wiki/Transformation_matrix transformation matrix])[page:Matrix4 m]中,
+		设置该向量为其中与缩放相关的元素。
 		</p>
 
 		<h3>[method:this setFromSpherical]( [param:Spherical s] )</h3>
 		<p>
-		Sets this vector from the spherical coordinates [page:Spherical s].
+		从球坐标[page:Spherical s]中设置该向量。
 		</p>
 
 		<h3>[method:this setFromSphericalCoords]( [param:Float radius], [param:Float phi], [param:Float theta] )</h3>
-		<p>Sets this vector from the spherical coordinates [page:Spherical radius], [page:Spherical phi] and [page:Spherical theta].</p>
+		<p>从球坐标中的[page:Spherical radius]、[page:Spherical phi]和[page:Spherical theta]设置该向量。</p>
 
 		<h3>[method:this setLength]( [param:Float l] )</h3>
 		<p>
-		Set this vector to the vector with the same direction as this one, but [page:.length length]
-		[page:Float l].
+		将该向量的方向设置为和原向量相同,但是长度([page:.length length])为[page:Float l]。
 		</p>
 
 		<h3>[method:this setScalar]( [param:Float scalar] )</h3>
 		<p>
-		Set the [page:.x x], [page:.y y] and [page:.z z] values of this vector both equal to [page:Float scalar].
+		将该向量的[page:.x x]、[page:.y y]和[page:.z z]值同时设置为等于传入的[page:Float scalar]。
 		</p>
 
 		<h3>[method:this setX]( [param:Float x] )</h3>
-		<p>Replace this vector's [page:.x x] value with [page:Float x].</p>
+		<p>将向量中的[page:.x x]值替换为[page:Float x]。</p>
 
 		<h3>[method:this setY]( [param:Float y] )</h3>
-		<p>Replace this vector's [page:.y y] value with [page:Float y].</p>
+		<p>将向量中的[page:.y y]值替换为[page:Float y]。</p>
 
 		<h3>[method:this setZ]( [param:Float z] )</h3>
-		<p>Replace this vector's [page:.z z] value with [page:Float z].</p>
+		<p>将向量中的[page:.z z]值替换为[page:Float z]。</p>
 
 		<h3>[method:this sub]( [param:Vector3 v] )</h3>
-		<p>Subtracts [page:Vector3 v] from this vector.</p>
+		<p>从该向量减去向量[page:Vector3 v]。</p>
 
 		<h3>[method:this subScalar]( [param:Float s] )</h3>
-		<p>Subtracts [page:Float s]  from this vector's [page:.x x], [page:.y y] and [page:.z z] compnents.</p>
+		<p>从该向量的[page:.x x]、[page:.y y]和[page:.z z]中减去标量[page:Float s]。</p>
 
 		<h3>[method:this subVectors]( [param:Vector3 a], [param:Vector3 b] )</h3>
-		<p>Sets this vector to [page:Vector3 a] - [page:Vector3 b].</p>
+		<p>将该向量设置为[page:Vector3 a] - [page:Vector3 b]。</p>
 
 		<h3>[method:Array toArray]( [param:Array array], [param:Integer offset] )</h3>
 		<p>
-		[page:Array array] - (optional) array to store the vector to. If this is not provided
-		a new array will be created.<br />
-		[page:Integer offset] - (optional) optional offset into the array.<br /><br />
+		[page:Array array] - (可选)被用于存储向量的数组。如果这个值没有传入,则将创建一个新的数组。<br />
+		[page:Integer offset] - (可选) 数组中元素的偏移量。<br /><br />
 
-		Returns an array [x, y, z], or copies x, y and z into the provided [page:Array array].
+		返回一个数组[x, y ,z],或者将x、y和z复制到所传入的[page:Array array]中。
 		</p>
 
 		<h3>[method:this transformDirection]( [param:Matrix4 m] )</h3>
 		<p>
-		Transforms the direction of this vector by a matrix (the upper left 3 x 3 subset of a [page:Matrix4 m])
-		and then [page:.normalize normalizes] the result.
+		通过传入的矩阵([page:Matrix4 m]的左上角3 x 3子矩阵)变换向量的方向,
+		并将结果进行[page:.normalize normalizes](归一化)。
 		</p>
 
 		<h3>[method:this unproject]( [param:Camera camera] )</h3>
 		<p>
-		[page:Camera camera] — camera to use in the projection.<br /><br />
+		[page:Camera camera] — 在投影中使用的摄像机。<br /><br />
 
 		[link:https://en.wikipedia.org/wiki/Vector_projection Unprojects] the vector with the
 		camera's projection matrix.
 		</p>
 
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

+ 111 - 111
docs/api/zh/math/Vector4.html

@@ -8,35 +8,35 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		<h1>[name]</h1>
+		<h1>四维向量([name]</h1>
 
-		<p class="desc">Class representing a 4D [link:https://en.wikipedia.org/wiki/Vector_space vector].
+		<p class="desc">该类表示的是一个三维向量(4D [link:https://en.wikipedia.org/wiki/Vector_space vector])。
 
-		A 4D vector is an ordered quadruplet of numbers (labeled x, y, z, and w), which can be used to
-		represent a number of things, such as:
+
+		一个四维向量表示的是一个有顺序的、四个为一组的数字组合(标记为x、y和z),
+		可被用来表示很多事物,例如:
 		</p>
 
 		<ul>
 			<li>
-				A point in 4D space.
+				一个位于四维空间中的点。
 			</li>
 			<li>
-				A direction and length in 4D space. In three.js the length will always be the
-				[link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean distance]
-				(straight-line distance) from (0, 0, 0, 0) to (x, y, z, w) and the direction is also
-				measured from (0, 0, 0, 0) towards (x, y, z, w).
+				一个在四维空间中的方向与长度的定义。在three.js中,长度总是从(0, 0, 0, 0)到(x, y, z, w)的
+				[link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean distance](欧几里德距离,即直线距离),
+				方向也是从(0, 0, 0, 0)到(x, y, z, w)的方向。
 			</li>
 			<li>
-				Any arbitrary ordered quadruplet of numbers.
+				任意的、有顺序的、四个为一组的数字组合。
 			</li>
 		</ul>
 
 		<p>
-		There are other things a 4D vector can be used to represent, however these are the most common uses in three.js.
+		其他的一些事物也可以使用二维向量进行表示,但以上这些是它在three.js中的常用用途。
 		</p>
 
 
-		<h2>Example</h2>
+		<h2>示例</h2>
 
 		<code>
 var a = new THREE.Vector4( 0, 1, 0, 0 );
@@ -48,26 +48,26 @@ var d = a.dot( b );
 		</code>
 
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 		<h3>[name]( [param:Float x], [param:Float y], [param:Float z], [param:Float w] )</h3>
 		<p>
-		[page:Float x] - the x value of the vector. Default is *0*.<br />
-		[page:Float y] -  the y value of the vector. Default is *0*.<br />
-		[page:Float z] - the z value of the vector. Default is *0*.<br />
-		[page:Float w] - the w value of the vector. Default is *1*.<br /><br />
+		[page:Float x] - 向量的x值,默认为*0*。<br />
+		[page:Float y] - 向量的y值,默认为*0*。<br />
+		[page:Float z] - 向量的z值,默认为*0*。<br />
+		[page:Float w] - 向量的w值,默认为*1*。<br /><br />
 
-		Creates a new [name].
+		创建一个新的[name]。
 		</p>
 
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Boolean isVector4]</h3>
 		<p>
-			Used to check whether this or derived classes are Vector4s. Default is *true*.<br /><br />
+			用于测试这个类或者派生类是否为Vector4,默认为*true*。<br /><br />
 
-			You should not change this, as it is used internally for optimisation.
+			你不应当对这个属性进行改变,因为它在内部使用,以用于优化。
 		</p>
 
 		<h3>[property:Float x]</h3>
@@ -79,252 +79,252 @@ var d = a.dot( b );
 		<h3>[property:Float w]</h3>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 		<h3>[method:this add]( [param:Vector4 v] )</h3>
-		<p>Adds [page:Vector4 v] to this vector.</p>
+		<p>将传入的向量[page:Vector4 v]和这个向量相加。</p>
 
 		<h3>[method:this addScalar]( [param:Float s] )</h3>
-		<p>Adds the scalar value s to this vector's [page:.x x], [page:.y y], [page:.z z] and [page:.w w] values.</p>
+		<p>将传入的标量s和这个向量的[page:.x x]值、[page:.y y]值、[page:.z z]值以及[page:.w w]值相加。</p>
 
 		<h3>[method:this addScaledVector]( [param:Vector4 v], [param:Float s] )</h3>
-		<p>Adds the multiple of [page:Vector4 v] and [page:Float s] to this vector.</p>
+		<p>将所传入的[page:Vector4 v]与[page:Float s]相乘所得的乘积和这个向量相加。</p>
 
 		<h3>[method:this addVectors]( [param:Vector4 a], [param:Vector4 b] )</h3>
-		<p>Sets this vector to [page:Vector4 a] + [page:Vector4 b].</p>
+		<p>将该向量设置为[page:Vector4 a] + [page:Vector4 b].</p>
 
 		<h3>[method:this applyMatrix4]( [param:Matrix4 m] )</h3>
 		<p>
-		Multiplies this vector by 4 x 4 [page:Matrix4 m].
+		将该向量乘以四阶矩阵[page:Matrix4 m]。
 		</p>
 
 		<h3>[method:this ceil]()</h3>
 		<p>
-		The [page:.x x], [page:.y y], [page:.z z] and [page:.w w] components of the vector are rounded up to the nearest integer value.
+		将该向量[page:.x x]分量、 [page:.y y]分量[page:.z z]分量以及[page:.w w]分量向上取整为最接近的整数。
 		</p>
 
 		<h3>[method:this clamp]( [param:Vector4 min], [param:Vector4 max] )</h3>
 		<p>
-		[page:Vector4 min] - the minimum [page:.x x], [page:.y y], [page:.z z] and [page:.w w] values.<br />
-		[page:Vector4 max] - the maximum [page:.x x], [page:.y y], [page:.z z] and [page:.w w] values in the desired range<br /><br />
+		[page:Vector4 min] - 在限制范围内,[page:.x x]值、[page:.y y]值、[page:.z z]值以及[page:.w w]值的最小值<br />
+		[page:Vector4 max] - 在限制范围内,[page:.x x]值、[page:.y y]值、[page:.z z]值以及[page:.w w]值的最大值<br /><br />
 
-		If this vector's x, y, z or w value is greater than the max vector's x, y, z or w value, it is replaced by the corresponding value. <br /><br />
-		If this vector's x, y, z or w value is less than the min vector's x, y, z or w value, it is replaced by the corresponding value.
+		如果该向量的x值、y值、z值或w值大于限制范围内最大x值、y值、z值或w值,则该值将会被所对应的值取代。<br /><br />
+		如果该向量的x值、y值、z值或w值小于限制范围内最小x值、y值、z值或w值,则该值将会被所对应的值取代。
 		</p>
 
 		<h3>[method:this clampLength]( [param:Float min], [param:Float max] )</h3>
 		<p>
-		[page:Float min] - the minimum value the length will be clamped to <br />
-		[page:Float max] - the maximum value the length will be clamped to<br /><br />
+		[page:Float min] - 长度将被限制为的最小值 <br />
+		[page:Float max] - 长度将被限制为的最大值<br /><br />
 
-		If this vector's length is greater than the max value, it is replaced by the max value. <br /><br />
-		If this vector's length is less than the min value, it is replaced by the min value.
+		如果向量长度大于最大值,则它将会被最大值所取代。<br /><br />
+		如果向量长度小于最小值,则它将会被最小值所取代。
 		</p>
 
 		<h3>[method:this clampScalar]( [param:Float min], [param:Float max] )</h3>
 		<p>
-		[page:Float min] - the minimum value the components will be clamped to <br />
-		[page:Float max] - the maximum value the components will be clamped to<br /><br />
+		[page:Float min] - 分量将被限制为的最小值<br />
+		[page:Float max] - 分量将被限制为的最大值<br /><br />
 
-		If this vector's x, y, z or w values are greater than the max value, they are replaced by the max value. <br /><br />
-		If this vector's x, y, z or w values are less than the min value, they are replaced by the min value.
+		如果该向量的x值、y值、z值或w值大于最大值,则它们将被最大值所取代。<br /><br />
+		如果该向量的x值、y值、z值或w值小于最小值,则它们将被最小值所取代。
 		</p>
 
 		<h3>[method:Vector4 clone]()</h3>
 		<p>
-		Returns a new Vector4 with the same [page:.x x], [page:.y y], [page:.z z] and [page:.w w] values as this one.
+		返回一个新的Vector4,其具有和当前这个向量相同的[page:.x x]、[page:.y y]、[page:.z z]和[page:.w w]。
 		</p>
 
 		<h3>[method:this copy]( [param:Vector4 v] )</h3>
 		<p>
-			Copies the values of the passed Vector4's [page:.x x], [page:.y y], [page:.z z] and [page:.w w]
-			properties to this Vector4.
+			将所传入Vector4的[page:.x x]、[page:.y y]、[page:.z z]和[page:.w w]属性复制给这一Vector4。
 		</p>
 
 		<h3>[method:this divideScalar]( [param:Float s] )</h3>
 		<p>
-		Divides this vector by scalar [page:Float s].<br />
-		Sets vector to *( 0, 0, 0, 0 )* if *[page:Float s] = 0*.
+		将该向量除以标量[page:Float s]。<br />
+		如果传入的[page:Float s] = 0,则向量将被设置为*( 0, 0, 0, 0 )*。
 		</p>
 
 		<h3>[method:Float dot]( [param:Vector4 v] )</h3>
 		<p>
-		Calculates the [link:https://en.wikipedia.org/wiki/Dot_product dot product] of this
-		vector and [page:Vector4 v].
+		计算该vector和所传入[page:Vector4 v]
+		的点积([link:https://en.wikipedia.org/wiki/Dot_product dot product])。
 		</p>
 
 		<h3>[method:Boolean equals]( [param:Vector4 v] )</h3>
-		<p>Checks for strict equality of this vector and [page:Vector4 v].</p>
+		<p>检查该向量和[page:Vector4 v]的严格相等性。</p>
 
 		<h3>[method:this floor]()</h3>
-		<p>The components of the vector are rounded down to the nearest integer value.</p>
+		<p>向量的分量向下取整为最接近的整数值。</p>
 
 		<h3>[method:this fromArray]( [param:Array array], [param:Integer offset] )</h3>
 		<p>
-		[page:Array array] - the source array.<br />
-		[page:Integer offset] - (optional) offset into the array. Default is 0.<br /><br />
+		[page:Array array] - 来源矩阵。<br />
+		[page:Integer offset] - (可选)在数组中的元素偏移量,默认值为0。<br /><br />
 
-		Sets this vector's [page:.x x] value to be array[ offset + 0 ], [page:.y y] value to be array[ offset + 1 ]
-		[page:.z z] value to be array[ offset + 2 ] and [page:.w w ] value to be array[ offset + 3 ].
+		设置向量中的[page:.x x]值为array[ offset + 0 ],[page:.y y]值为array[ offset + 1 ],
+		[page:.z z]值为array[ offset + 2 ],[page:.w w ]值为array[ offset + 3 ]。
 		</p>
 
 		<h3>[method:this fromBufferAttribute]( [param:BufferAttribute attribute], [param:Integer index] )</h3>
 		<p>
-		[page:BufferAttribute attribute] - the source attribute.<br />
-		[page:Integer index] - index in the attribute.<br /><br />
+		[page:BufferAttribute attribute] - 来源的attribute。<br />
+		[page:Integer index] - 在attribute中的索引。<br /><br />
 
-		Sets this vector's [page:.x x], [page:.y y], [page:.z z] and [page:.w w] values from the [page:BufferAttribute attribute].
+		从[page:BufferAttribute attribute]中设置向量的[page:.x x]值、[page:.y y]值、[page:.z z]值和[page:.w w]值。
 		</p>
 
 		<h3>[method:Float getComponent]( [param:Integer index] )</h3>
 		<p>
 		[page:Integer index] - 0, 1, 2 or 3.<br /><br />
 
-		If index equals 0 returns the [page:.x x] value. <br />
-		If index equals 1 returns the [page:.y y] value. <br />
-		If index equals 2 returns the [page:.z z] value.<br />
-		If index equals 3 returns the [page:.w w] value.
+		如果index值为0返回[page:.x x]值。 <br />
+		如果index值为1返回[page:.y y]值。 <br />
+		如果index值为2返回[page:.z z]值。<br />
+		如果index值为3返回[page:.w w]值。
 		</p>
 
 		<h3>[method:Float length]()</h3>
-		<p>Computes the [link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean length]
-		(straight-line length) from (0, 0, 0, 0) to (x, y, z, w).</p>
+		<p>
+		计算从(0, 0, 0, 0) 到 (x, y, z, w)的欧几里得长度
+		([link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean length],即直线长度)。</p>
 
 		<h3>[method:Float manhattanLength]()</h3>
 		<p>
-		Computes the [link:http://en.wikipedia.org/wiki/Taxicab_geometry Manhattan length] of this vector.
+		计算该向量的曼哈顿长度([link:http://en.wikipedia.org/wiki/Taxicab_geometry Manhattan length])。
 		</p>
 
 		<h3>[method:Float lengthSq]()</h3>
 		<p>
-		Computes the square of the [link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean length]
-		(straight-line length) from (0, 0, 0, 0) to (x, y, z, w). If you are 	comparing the lengths of
-		vectors, you should compare the length squared instead as it is slightly more efficient to calculate.
+		计算从(0, 0, 0, 0)到(x, y, z, w)的欧几里得长度
+		([link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean length],即直线长度)的平方。
+		如果你正在比较向量的长度,应当比较的是长度的平方,因为它的计算效率更高一些。
 		</p>
 
 		<h3>[method:this lerp]( [param:Vector4 v], [param:Float alpha] )</h3>
 		<p>
-		[page:Vector4 v] - [page:Vector4] to interpolate towards.<br />
-		alpha - interpolation factor in the closed interval [0, 1].<br /><br />
+		[page:Vector4 v] - 朝着进行插值的[page:Vector4]。<br />
+		alpha - 插值因数,其范围在[0, 1]闭区间。<br /><br />
 
-		Linearly interpolates between this vector and [page:Vector4 v], where alpha is the
-		distance along the line - alpha = 0 will be this vector, and alpha = 1 will be [page:Vector4 v].
+		在该向量与传入的向量[page:Vector4 v]之间的线性插值,alpha是沿着线的距离长度。
+		—— alpha = 0 时表示的是当前向量,alpha = 1 时表示的是所传入的向量[page:Vector4 v]。
 		</p>
 
 		<h3>[method:this lerpVectors]( [param:Vector4 v1], [param:Vector4 v2], [param:Float alpha] )</h3>
 		<p>
-		[page:Vector4 v1] - the starting [page:Vector4].<br />
-		[page:Vector4 v2] - [page:Vector4] to interpolate towards.<br />
-		[page:Float alpha] - interpolation factor in the closed interval [0, 1].<br /><br />
+		[page:Vector4 v1] - 起始的[page:Vector4]。<br />
+		[page:Vector4 v2] - 朝着进行插值的[page:Vector4]。<br />
+		[page:Float alpha] - 插值因数,其范围在[0, 1]闭区间。<br /><br />
 
-		Sets this vector to be the vector linearly interpolated between [page:Vector4 v1] and
-		[page:Vector4 v2] where alpha is the distance along the line connecting the two vectors
-		- alpha = 0 will be [page:Vector4 v1], and alpha = 1 will be [page:Vector4 v2].
+		将此向量设置为在[page:Vector4 v1]和[page:Vector4 v2]之间进行线性插值的向量,
+		其中alpha为两个向量之间连线的距离长度。
+		—— alpha = 0 时表示的是[page:Vector4 v1],alpha = 1 时表示的是[page:Vector4 v2]。
 		</p>
 
 		<h3>[method:this negate]()</h3>
-		<p>Inverts this vector - i.e. sets x = -x, y = -y, z = -z and w = -w.</p>
+		<p>向量取反,即: x = -x, y = -y, z = -z , w = -w。</p>
 
 		<h3>[method:this normalize]()</h3>
 		<p>
-		Converts this vector to a [link:https://en.wikipedia.org/wiki/Unit_vector unit vector] - that is, sets it equal to the vector with the same direction
-		as this one, but [page:.length length] 1.
+		将该向量转换为单位向量([link:https://en.wikipedia.org/wiki/Unit_vector unit vector]),
+		也就是说,将该向量的方向设置为和原向量相同,但是其长度([page:.length length])为1。
 		</p>
 
 		<h3>[method:this max]( [param:Vector4 v] )</h3>
 		<p>
-		If this vector's x, y, z or w value is less than [page:Vector4 v]'s x, y, z or w value, replace
-		that value with the corresponding max value.
+		如果该向量的x值、y值、z值或w值小于所传入[page:Vector4 v]的x值、y值、z值或w值,
+		则将该值替换为对应的最大值。
 		</p>
 
 		<h3>[method:this min]( [param:Vector4 v] )</h3>
 		<p>
-		If this vector's x, y, z or w value is greater than [page:Vector4 v]'s x, y, z or w value, replace
-		that value with the corresponding min value.
+		如果该向量的x值、y值、z值或w值大于所传入[page:Vector4 v]的x值、y值、z值或w值,
+		则将该值替换为对应的最小值。
 		</p>
 
 		<h3>[method:this multiplyScalar]( [param:Float s] )</h3>
-		<p>Multiplies this vector by scalar [page:Float s].</p>
+		<p>将该向量与所传入的标量[page:Float s]进行相乘。</p>
 
 		<h3>[method:this round]()</h3>
-		<p>The components of the vector are rounded to the nearest integer value.</p>
+		<p>向量中的分量四舍五入取整为最接近的整数值。</p>
 
 		<h3>[method:this roundToZero]()</h3>
 		<p>
-		The components of the vector are rounded towards zero (up if negative, down if positive) to an integer value.
+		向量中的分量朝向0取整数(若分量为负数则向上取整,若为正数则向下取整)
 		</p>
 
 		<h3>[method:this set]( [param:Float x], [param:Float y], [param:Float z], [param:Float w] )</h3>
-		<p>Sets the [page:.x x], [page:.y y], [page:.z z] and [page:.w w] components of this vector.</p>
+		<p>设置该向量的[page:.x x]、[page:.y y]、[page:.z z]和[page:.w w]分量。</p>
 
 		<h3>[method:this setAxisAngleFromQuaternion]( [param:Quaterion q] )</h3>
 		<p>
-			[page:Quaterion q] - a normalized [page:Quaterion]<br /><br />
+			[page:Quaterion q] - 归一化的[page:Quaterion](四元数)<br /><br />
+
+			将该向量的[page:.x x]、[page:.y y]和[page:.z z]分量设置为四元数的轴,
+			[page:.w w]分量设置为四元数的角度。
 
-			Sets the [page:.x x], [page:.y y] and [page:.z z] components of this vector to the
-			quaternion's axis and [page:.w w] to the angle.
 		</p>
 
 		<h3>[method:this setAxisAngleFromRotationMatrix]( [param:Matrix4 m] )</h3>
 		<p>
-			 [page:Matrix4 m] - a [page:Matrix4] of which the upper left 3x3 matrix is a pure rotation matrix.<br /><br />
+			[page:Matrix4 m] - 一个[page:Matrix4](四阶矩阵),其左上角3x3的元素表示的是一个纯旋转矩。<br /><br />
 
-			Sets the [page:.x x], [page:.y y] and [page:.z z] to the axis of rotation and [page:.w w] to the angle.
+			将该向量的[page:.x x]、[page:.y y]和[page:.z z]设置为旋转轴,[page:.w w]为角度。
 		</p>
 
 		<h3>[method:null setComponent]( [param:Integer index], [param:Float value] )</h3>
 		<p>
-		[page:Integer index] - 0, 1 or 2.<br />
+		[page:Integer index] - 0、1或2。<br />
 		[page:Float value] - [page:Float]<br /><br />
 
-		If index equals 0 set [page:.x x] to [page:Float value].<br />
-		If index equals 1 set [page:.y y] to [page:Float value].<br />
-		If index equals 2 set [page:.z z] to [page:Float value].<br />
-		If index equals 3 set [page:.w w] to [page:Float value].
+		若index为 0 则设置 [page:.x x] 值为 [page:Float value]。<br />
+		若index为 1 则设置 [page:.y y] 值为 [page:Float value]。<br />
+		若index为 2 则设置 [page:.z z] 值为 [page:Float value]。<br />
+		若index为 3 则设置 [page:.w w] 值为 [page:Float value]。
 		</p>
 
 
 		<h3>[method:this setLength]( [param:Float l] )</h3>
 		<p>
-		Sets this vector to the vector with the same direction as this one, but [page:.length length]
-		[page:Float l].
+		将该向量的方向设置为和原向量相同,但是长度([page:.length length])为[page:Float l]。
 		</p>
 
 		<h3>[method:this setScalar]( [param:Float scalar] )</h3>
 		<p>
-		Sets the [page:.x x], [page:.y y], [page:.z z] and [page:.w w] values of this vector both equal to [page:Float scalar].
+		将该向量的[page:.x x]、[page:.y y]、[page:.z z]值和[page:.w w]同时设置为等于传入的[page:Float scalar]。
 		</p>
 
 		<h3>[method:this setX]( [param:Float x] )</h3>
-		<p>Replaces this vector's [page:.x x] value with [page:Float x].</p>
+		<p>将向量中的[page:.x x]值替换为[page:Float x]。</p>
 
 		<h3>[method:this setY]( [param:Float y] )</h3>
-		<p>Replaces this vector's [page:.y y] value with [page:Float y].</p>
+		<p>将向量中的[page:.y y]值替换为[page:Float y]。</p>
 
 		<h3>[method:this setZ]( [param:Float z] )</h3>
-		<p>Replaces this vector's [page:.z z] value with [page:Float z].</p>
+		<p>将向量中的[page:.z z]值替换为[page:Float z]。</p>
 
 		<h3>[method:this setW]( [param:Float w] )</h3>
-		<p>Replaces this vector's [page:.w w] value with [page:Float w].</p>
+		<p>将向量中的[page:.w w]值替换为[page:Float w]。</p>
 
 		<h3>[method:this sub]( [param:Vector4 v] )</h3>
-		<p>Subtracts [page:Vector4 v] from this vector.</p>
+		<p>从该向量减去向量[page:Vector4 v]。</p>
 
 		<h3>[method:this subScalar]( [param:Float s] )</h3>
-		<p>Subtracts [page:Float s]  from this vector's [page:.x x], [page:.y y], [page:.z z] and [page:.w w] compnents.</p>
+		<p>从该向量的[page:.x x]、[page:.y y]、[page:.z z]和[page:.w w]分量中减去标量[page:Float s]。</p>
 
 		<h3>[method:this subVectors]( [param:Vector4 a], [param:Vector4 b] )</h3>
-		<p>Sets this vector to [page:Vector4 a] - [page:Vector4 b].</p>
+		<p>将该向量设置为[page:Vector4 a] - [page:Vector4 b]。</p>
 
 		<h3>[method:Array toArray]( [param:Array array], [param:Integer offset] )</h3>
 		<p>
-		[page:Array array] - (optional) array to store the vector to. If this is not provided, a new array will be created.<br />
-		[page:Integer offset] - (optional) optional offset into the array.<br /><br />
+		[page:Array array] - (可选)被用于存储向量的数组。如果这个值没有传入,则将创建一个新的数组。<br />
+		[page:Integer offset] - (可选) 数组中元素的偏移量。<br /><br />
 
-		Returns an array [x, y, z, w], or copies x, y, z and w into the provided [page:Array array].
+		返回一个数组[x, y, z, w],或者将x、y、z和w复制到所传入的[page:Array array]中。
 		</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

+ 2 - 2
docs/api/zh/objects/LOD.html

@@ -69,7 +69,7 @@ scene.add( lod );
 		<h2>方法</h2>
 		<p>请参阅其基类[page:Object3D]来查看共有方法。</p>
 
-		<h3>[method:null addLevel]( [param:Object3D object], [param:Float distance] )</h3>
+		<h3>[method:this addLevel]( [param:Object3D object], [param:Float distance] )</h3>
 		<p>
 		[page:Object3D object] —— 在这个层次中将要显示的[page:Object3D]。<br />
 		[page:Float distance] —— 将显示这一细节层次的距离。<br /><br />
@@ -96,7 +96,7 @@ scene.add( lod );
 
 
 
-		<h3>[method:null toJSON]( meta )</h3>
+		<h3>[method:Object toJSON]( meta )</h3>
 		<p>
 			使用这个方法,为LOD对象中的每个细节层次创建一个JSON结构。
 		</p>

+ 1 - 1
docs/api/zh/objects/Mesh.html

@@ -91,7 +91,7 @@
 		<h3>[method:null raycast]( [param:Raycaster raycaster], [param:Array intersects] )</h3>
 		<p>
 			在一条投射出去的[page:Ray](射线)和这个网格之间产生交互。
-			[page:Raycaster.intersectObject]将会调用这个方法
+			[page:Raycaster.intersectObject]将会调用这个方法但是这个结果是未排序的
 		</p>
 
 		<h3>[method:null updateMorphTargets]()</h3>

+ 7 - 7
docs/api/zh/objects/SkinnedMesh.html

@@ -91,8 +91,8 @@
 		<h2>构造器</h2>
 		<h3>[name]( [param:BufferGeometry geometry], [param:Material material] )</h3>
 		<p>
-    [page:BufferGeometry geometry] —— TODO<br />
-    [page:Material material] —— (可选)一个[page:Material]实例,默认值是一个新的[page:MeshBasicMaterial]。
+    [page:BufferGeometry geometry] —— 一个[page:BufferGeometry]实例。<br />
+    [page:Material material] —— (可选)一个[page:Material]实例,默认值是一个新的[page:MeshBasicMaterial]。
 		</p>
 
 
@@ -111,12 +111,12 @@
 
 		<h3>[property:Matrix4 bindMatrix]</h3>
 		<p>
-		用于绑定骨骼变换的基础矩阵
+			该基础矩阵用于绑定骨骼变换。
 		</p>
 
 		<h3>[property:Matrix4 bindMatrixInverse]</h3>
 		<p>
-		用于重置绑定骨骼变换的基础矩阵
+			该基础矩阵用于重置绑定骨骼变换。
 		</p>
 
 		<h3>[property:Boolean isSkinnedMesh]</h3>
@@ -127,7 +127,7 @@
 
 		<h3>[property:Skeleton skeleton]</h3>
 		<p>
-			TODO
+			用于表示蒙皮网格中骨骼的层次结构的[page:Skeleton](骨架)。
 		</p>
 
 
@@ -138,7 +138,7 @@
 		<h3>[method:null bind]( [param:Skeleton skeleton], [param:Matrix4 bindMatrix] )</h3>
 		<p>
 		[page:Skeleton skeleton] —— 由一棵[page:Bone Bones]树创建的[page:Skeleton]。<br/>
-		[page:Matrix4 bindMatrix] —— 代表着骨架基本变换的[page:Matrix4](4x4矩阵)。<br /><br />
+		[page:Matrix4 bindMatrix] —— 表示骨架基本变换的[page:Matrix4](4x4矩阵)。<br /><br />
 		将骨架绑定到一个蒙皮网格上。bindMatrix会被保存到.bindMatrix属性中,其逆矩阵.bindMatrixInverse也会被计算出来。
 		</p>
 
@@ -149,7 +149,7 @@
 
 		<h3>[method:null normalizeSkinWeights]()</h3>
 		<p>
-		TODO
+		标准化蒙皮的权重。
 		</p>
 
 		<h3>[method:null pose]()</h3>

+ 0 - 5
docs/api/zh/renderers/WebGLRenderTargetCube.html

@@ -47,11 +47,6 @@
 
 		<h2>属性</h2>
 
-		<h3>[property:integer activeCubeFace]</h3>
-		<p>
-		activeCubeFace属性对应立方体的面(PX 0, NX 1, PY 2, NY 3, PZ 4, NZ 5) 并由[page:CubeCamera]内部使用和设置
-		</p>
-
 		<h3>继承属性,请参阅[page:WebGLRenderTarget]</h3>
 
 

Unele fișiere nu au fost afișate deoarece prea multe fișiere au fost modificate în acest diff