浏览代码

Merge pull request #20040 from gogoend/zh_doc_20200806

Zh doc: sync with En doc, and some translations.
Mr.doob 5 年之前
父节点
当前提交
033e1c3084
共有 88 个文件被更改,包括 1063 次插入683 次删除
  1. 6 6
      docs/api/zh/audio/Audio.html
  2. 6 10
      docs/api/zh/cameras/CubeCamera.html
  3. 4 7
      docs/api/zh/cameras/OrthographicCamera.html
  4. 1 1
      docs/api/zh/cameras/PerspectiveCamera.html
  5. 3 3
      docs/api/zh/cameras/StereoCamera.html
  6. 1 0
      docs/api/zh/constants/Renderer.html
  7. 286 4
      docs/api/zh/constants/Textures.html
  8. 12 0
      docs/api/zh/core/BufferAttribute.html
  9. 7 0
      docs/api/zh/core/BufferGeometry.html
  10. 0 5
      docs/api/zh/core/InterleavedBuffer.html
  11. 3 0
      docs/api/zh/core/InterleavedBufferAttribute.html
  12. 7 7
      docs/api/zh/core/Object3D.html
  13. 2 1
      docs/api/zh/core/Raycaster.html
  14. 1 1
      docs/api/zh/extras/core/Curve.html
  15. 1 1
      docs/api/zh/extras/core/Interpolations.html
  16. 1 1
      docs/api/zh/extras/curves/ArcCurve.html
  17. 1 1
      docs/api/zh/extras/curves/CatmullRomCurve3.html
  18. 1 1
      docs/api/zh/extras/curves/QuadraticBezierCurve.html
  19. 1 1
      docs/api/zh/geometries/ExtrudeBufferGeometry.html
  20. 1 1
      docs/api/zh/geometries/ExtrudeGeometry.html
  21. 1 1
      docs/api/zh/geometries/TubeBufferGeometry.html
  22. 1 1
      docs/api/zh/geometries/TubeGeometry.html
  23. 1 1
      docs/api/zh/helpers/ArrowHelper.html
  24. 10 10
      docs/api/zh/lights/AmbientLightProbe.html
  25. 11 11
      docs/api/zh/lights/HemisphereLightProbe.html
  26. 21 21
      docs/api/zh/lights/LightProbe.html
  27. 3 3
      docs/api/zh/lights/PointLight.html
  28. 0 1
      docs/api/zh/loaders/CubeTextureLoader.html
  29. 0 3
      docs/api/zh/loaders/FileLoader.html
  30. 31 19
      docs/api/zh/loaders/Loader.html
  31. 10 11
      docs/api/zh/loaders/managers/LoadingManager.html
  32. 32 1
      docs/api/zh/materials/Material.html
  33. 2 2
      docs/api/zh/materials/MeshBasicMaterial.html
  34. 2 2
      docs/api/zh/materials/MeshLambertMaterial.html
  35. 2 0
      docs/api/zh/materials/MeshMatcapMaterial.html
  36. 2 0
      docs/api/zh/materials/MeshNormalMaterial.html
  37. 4 2
      docs/api/zh/materials/MeshPhongMaterial.html
  38. 10 6
      docs/api/zh/materials/MeshStandardMaterial.html
  39. 4 5
      docs/api/zh/materials/MeshToonMaterial.html
  40. 2 1
      docs/api/zh/materials/PointsMaterial.html
  41. 1 1
      docs/api/zh/materials/ShadowMaterial.html
  42. 4 3
      docs/api/zh/math/Box2.html
  43. 24 21
      docs/api/zh/math/Box3.html
  44. 1 1
      docs/api/zh/math/Frustum.html
  45. 1 1
      docs/api/zh/math/Matrix4.html
  46. 1 1
      docs/api/zh/math/Plane.html
  47. 56 60
      docs/api/zh/math/Quaternion.html
  48. 1 1
      docs/api/zh/math/Ray.html
  49. 3 2
      docs/api/zh/math/Sphere.html
  50. 2 2
      docs/api/zh/math/Spherical.html
  51. 2 1
      docs/api/zh/math/Triangle.html
  52. 9 1
      docs/api/zh/math/Vector3.html
  53. 23 25
      docs/api/zh/objects/InstancedMesh.html
  54. 4 0
      docs/api/zh/objects/LOD.html
  55. 2 2
      docs/api/zh/objects/Mesh.html
  56. 2 2
      docs/api/zh/objects/Points.html
  57. 9 9
      docs/api/zh/renderers/WebGL1Renderer.html
  58. 1 1
      docs/api/zh/renderers/WebGLRenderTarget.html
  59. 4 4
      docs/api/zh/renderers/WebGLRenderer.html
  60. 3 1
      docs/api/zh/renderers/shaders/UniformsUtils.html
  61. 6 5
      docs/api/zh/scenes/Scene.html
  62. 6 3
      docs/api/zh/textures/CubeTexture.html
  63. 15 8
      docs/api/zh/textures/DataTexture.html
  64. 8 0
      docs/api/zh/textures/DataTexture3D.html
  65. 12 1
      docs/api/zh/textures/Texture.html
  66. 5 5
      docs/examples/en/controls/TrackballControls.html
  67. 17 17
      docs/examples/zh/controls/DeviceOrientationControls.html
  68. 18 18
      docs/examples/zh/controls/DragControls.html
  69. 29 30
      docs/examples/zh/controls/FirstPersonControls.html
  70. 18 19
      docs/examples/zh/controls/FlyControls.html
  71. 7 8
      docs/examples/zh/controls/OrbitControls.html
  72. 25 26
      docs/examples/zh/controls/PointerLockControls.html
  73. 49 50
      docs/examples/zh/controls/TrackballControls.html
  74. 50 51
      docs/examples/zh/controls/TransformControls.html
  75. 5 5
      docs/examples/zh/geometries/ConvexBufferGeometry.html
  76. 5 5
      docs/examples/zh/geometries/ConvexGeometry.html
  77. 7 7
      docs/examples/zh/geometries/DecalGeometry.html
  78. 10 10
      docs/examples/zh/helpers/LightProbeHelper.html
  79. 8 8
      docs/examples/zh/lights/LightProbeGenerator.html
  80. 1 1
      docs/examples/zh/loaders/GLTFLoader.html
  81. 21 21
      docs/examples/zh/loaders/MTLLoader.html
  82. 24 25
      docs/examples/zh/loaders/OBJLoader.html
  83. 24 24
      docs/examples/zh/math/Lut.html
  84. 6 5
      docs/list.js
  85. 1 1
      docs/manual/zh/introduction/Animation-system.html
  86. 1 1
      docs/manual/zh/introduction/Drawing-lines.html
  87. 32 32
      docs/manual/zh/introduction/Installation.html
  88. 6 6
      docs/manual/zh/introduction/Useful-links.html

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

@@ -75,15 +75,15 @@
 		<p>是否可以使用 [page:Audio.play play](),
 			[page:Audio.pause pause]()等方法控制播放. 默认为 *true*.</p>
 
-		<h3>[property:Number playbackRate]</h3>
-		<p>播放速率. 默认为 *1*.</p>
-
-		<h3>[property:Boolean isPlaying]</h3>
-		<p>是否正在播放</p>
+		<h3>[property:Boolean isPlaying]</h3>	
+		<p>是否正在播放</p>	
 
-		<h3>[property:AudioListener listener]</h3>
+		<h3>[property:AudioListener listener]</h3>	
 		<p>A reference to the listener object of this audio.</p>
 
+		<h3>[property:Number playbackRate]</h3>
+		<p>播放速率. 默认为 *1*.</p>
+
 		<h3>[property:Number offset]</h3>
 		<p>音频开始播放的偏移时间. 和[link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode/start AudioBufferSourceNode.start]()的*offset*参数一样. 默认为 *0*.</p>
 

+ 6 - 10
docs/api/zh/cameras/CubeCamera.html

@@ -12,8 +12,7 @@
 
 		<h1>立方相机([name])</h1>
 
-
-		<p class="desc">创建6个摄像机,并将它们所拍摄的场景渲染到[page:WebGLCubeRenderTarget]上。</p>
+		<p class="desc">创建6个渲染到[page:WebGLCubeRenderTarget]的摄像机。</p>
 
 		<h2>代码示例</h2>
 
@@ -53,14 +52,13 @@
 
 		<h3>[name]( [param:Number near], [param:Number far], [param:WebGLCubeRenderTarget renderTarget] )</h3>
 		<p>
-
 		near -- 近剪切面的距离<br />
 		far -- 远剪切面的距离<br />
 		renderTarget -- The destination cube render target.
 		</p>
 		<p>
-			构造一个包含6个[page:PerspectiveCamera PerspectiveCameras](透视摄像机)的立方摄像机,并将其拍摄的场景渲染到一个[page:WebGLCubeRenderTarget]上。
-
+		构造一个包含6个[page:PerspectiveCamera PerspectiveCameras](透视摄像机)的立方摄像机,
+		并将其拍摄的场景渲染到一个[page:WebGLCubeRenderTarget]上。
 		</p>
 
 
@@ -76,21 +74,19 @@
 		<p>共有方法请参见其基类[page:Object3D]。</p>
 
 
-
 		<h3>[method:null update]( [param:WebGLRenderer renderer], [param:Scene scene] )</h3>
 		<p>
 		renderer -- 当前的WebGL渲染器<br />
 		scene -- 当前的场景
 		</p>
 		<p>
-			这个方法用来更新[page:CubeCamera.renderTarget renderTarget](渲染目标对象)。
+		这个方法用来更新[page:CubeCamera.renderTarget renderTarget](渲染目标对象)。
 		</p>
 
 		<h3>[method:null clear]( [param:WebGLRenderer renderer], [param:Boolean color], [param:Boolean depth], [param:Boolean stencil] )</h3>
 		<p>
-			这个方法用来来清除[page:CubeCamera.renderTarget renderTarget]的颜色、深度和/或模板缓冲区。
-			颜色缓冲区设置为渲染器当前的“清除”色。参数默认值均为*true*。
-
+		这个方法用来来清除[page:CubeCamera.renderTarget renderTarget]的颜色、深度和/或模板缓冲区。
+		颜色缓冲区设置为渲染器当前的“清除”色。参数默认值均为*true*。
 		</p>
 
 		<h2>源代码</h2>

+ 4 - 7
docs/api/zh/cameras/OrthographicCamera.html

@@ -18,7 +18,6 @@
 			在这种投影模式下,无论物体距离相机距离远或者近,在最终渲染的图片中物体的大小都保持不变。
 			<br /><br />
 
-
 			这对于渲染2D场景或者UI元素是非常有用的。
 		</p>
 
@@ -75,7 +74,7 @@
 		<h3>[property:Float far]</h3>
 		<p>
 			摄像机视锥体远端面,其默认值为*2000*。<br /><br />
-			Must be greater than the current value of [page:.near near] plane.
+			该值必须大于[page:.near near] plane(摄像机视锥体近端面)的值。
 
 		</p>
 
@@ -102,8 +101,7 @@
 		<p>这个值是由[page:OrthographicCamera.setViewOffset setViewOffset]来设置的,其默认值为*null*。</p>
 
 		<h3>[property:number zoom]</h3>
-		<p>
-			获取或者设置摄像机的缩放倍数,其默认值为*1*。</p>
+		<p>获取或者设置摄像机的缩放倍数,其默认值为*1*。</p>
 
 		<h2>方法</h2>
 		<p>共有方法请参见其基类[page:Camera]。</p>
@@ -124,13 +122,12 @@
 
 		<h3>[method:null clearViewOffset]()</h3>
 		<p>
-			清除任何由.setViewOffset设置的偏移量。
+		清除任何由.setViewOffset设置的偏移量。
 		</p>
 
 		<h3>[method:null updateProjectionMatrix]()</h3>
 		<p>
-			更新摄像机投影矩阵。在任何参数被改变以后必须被调用。
-
+		更新摄像机投影矩阵。在任何参数被改变以后必须被调用。
 		</p>
 
 		<h3>[method:Object toJSON]([param:object meta])</h3>

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

@@ -62,7 +62,7 @@
 		<p>
 			摄像机的远端面,默认值是*2000*。
 			<br /><br />
-			Must be greater than the current value of [page:.near near] plane.
+			该值必须大于[page:.near near] plane(摄像机视锥体近端面)的值。
 		</p>
 
 		<h3>[property:Float filmGauge]</h3>

+ 3 - 3
docs/api/zh/cameras/StereoCamera.html

@@ -12,8 +12,8 @@
 		<h1>立体相机([name])</h1>
 
 		<p class="desc">
-			双透视摄像机(立体相机)常被用于创建[link:https://en.wikipedia.org/wiki/Anaglyph_3D 3D Anaglyph](3D立体影像)或者[link:https://en.wikipedia.org/wiki/parallax_barrier Parallax Barrier](视差效果)。
-
+			双透视摄像机(立体相机)常被用于创建[link:https://en.wikipedia.org/wiki/Anaglyph_3D 3D Anaglyph](3D立体影像)
+			或者[link:https://en.wikipedia.org/wiki/parallax_barrier Parallax Barrier](视差屏障)。
 		</p>
 
 		<h2>例子</h2>
@@ -46,7 +46,7 @@
 
 		<h3>[method:null update]( [param:PerspectiveCamera camera] )</h3>
 		<p>
-			基于摄像机通过场景,更新立体摄像机。
+		基于摄像机通过场景,更新立体摄像机。
 		</p>
 
 		<h2>源代码</h2>

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

@@ -46,6 +46,7 @@
 		THREE.LinearToneMapping
 		THREE.ReinhardToneMapping
 		THREE.CineonToneMapping
+		THREE.ACESFilmicToneMapping
 		</code>
 		<p>
 		这些常量定义了WebGLRenderer中[page:WebGLRenderer.toneMapping toneMapping]的属性。

+ 286 - 4
docs/api/zh/constants/Textures.html

@@ -69,10 +69,10 @@
 		这些常量用于纹理的[page:Texture.magFilter magFilter]属性,它们定义了当被纹理化的像素映射到小于或者等于1纹理元素(texel)的区域时,将要使用的纹理放大函数。<br /><br />
 
 		[page:constant NearestFilter]返回与指定纹理坐标(在曼哈顿距离之内)最接近的纹理元素的值。<br /><br />
+
 		[page:constant LinearFilter]是默认值,返回距离指定的纹理坐标最近的四个纹理元素的加权平均值,
 		并且可以包含纹理的其他部分中,被包裹或者被重复的项目,具体取决于 [page:Texture.wrapS wrapS] 和 [page:Texture.wrapT wrapT] 的值,and on the exact mapping。
-
-	</p>
+		</p>
 
 	<h2>缩小滤镜(Minification Filters)</h2>
 	<code>
@@ -132,28 +132,57 @@
 	<h2>格式</h2>
 	<code>
 		THREE.AlphaFormat
+		THREE.RedFormat
+		THREE.RedIntegerFormat
+		THREE.RGFormat
+		THREE.RGIntegerFormat
 		THREE.RGBFormat
+		THREE.RGBIntegerFormat
 		THREE.RGBAFormat
+		THREE.RGBAIntegerFormat
 		THREE.LuminanceFormat
 		THREE.LuminanceAlphaFormat
 		THREE.RGBEFormat
 		THREE.DepthFormat
 		THREE.DepthStencilFormat
-		</code>
+	</code>
 	<p>
 		这些常量用于纹理的[page:Texture.format format]属性,它们定义了shader(着色器)将如何读取的2D纹理或者*texels*(纹理元素)的元素。.<br /><br />
 
 		[page:constant AlphaFormat] 丢弃红、绿、蓝分量,仅读取Alpha分量。<br /><br />
 
+		[page:constant RedFormat] discards the green and blue components and reads just the red component.<br /><br />
+
+		[page:constant RedIntegerFormat] discards the green and blue components and reads just the red component.
+		The texels are read as integers instead of floating point.
+		(can only be used with a WebGL 2 rendering context).
+		<br /><br />
+
+		[page:constant RGFormat] discards the alpha, and blue components and reads the red, and green components.
+		(can only be used with a WebGL 2 rendering context).
+		<br /><br />
+
+		[page:constant RGIntegerFormat] discards the alpha, and blue components and reads the red, and green components.
+		The texels are read as integers instead of floating point.
+		(can only be used with a WebGL 2 rendering context).
+		<br /><br />
+
 		[page:constant RGBFormat] 丢弃Alpha分量,仅读取红、绿、蓝分量。<br /><br />
 
+		[page:constant RGBIntegerFormat] discards the alpha components and reads the red, green and blue components.
+		(can only be used with a WebGL 2 rendering context).
+		<br /><br />
+
 		[page:constant RGBAFormat] 是默认值,它将读取红、绿、蓝和Alpha分量。<br /><br />
 
+		[page:constant RGBAIntegerFormat] is the default and reads the red, green, blue and alpha components.
+		The texels are read as integers instead of floating point.
+		(can only be used with a WebGL 2 rendering context).
+		<br /><br />
 
 		[page:constant LuminanceFormat] 将每个元素作为单独的亮度分量来读取。
 		将其转换为范围限制在[0,1]区间的浮点数,然后通过将亮度值放入红、绿、蓝通道,并将1.0赋给Alpha通道,来组装成一个RGBA元素。<br /><br />
 
-
 		[page:constant LuminanceAlphaFormat] 将每个元素同时作为亮度分量和Alpha分量来读取。
 		和上面[page:constant LuminanceFormat]的处理过程是一致的,除了Alpha分量具有除了*1.0*以外的值。<br /><br />
 
@@ -263,6 +292,259 @@
 	these require support for the [link:https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/ WEBGL_compressed_texture_astc] extension. <br /><br />
 	</p>
 
+	<h2>Internal Formats</h2>
+	<code>
+	'ALPHA'
+	'RGB'
+	'RGBA'
+	'LUMINANCE'
+	'LUMINANCE_ALPHA'
+	'RED_INTEGER'
+	'R8'
+	'R8_SNORM'
+	'R8I'
+	'R8UI'
+	'R16I'
+	'R16UI'
+	'R16F'
+	'R32I'
+	'R32UI'
+	'R32F'
+	'RG8'
+	'RG8_SNORM'
+	'RG8I'
+	'RG8UI'
+	'RG16I'
+	'RG16UI'
+	'RG16F'
+	'RG32I'
+	'RG32UI'
+	'RG32F'
+	'RGB565'
+	'RGB8'
+	'RGB8_SNORM'
+	'RGB8I'
+	'RGB8UI'
+	'RGB16I'
+	'RGB16UI'
+	'RGB16F'
+	'RGB32I'
+	'RGB32UI'
+	'RGB32F'
+	'RGB9_E5'
+	'SRGB8'
+	'R11F_G11F_B10F'
+	'RGBA4'
+	'RGBA8'
+	'RGBA8_SNORM'
+	'RGBA8I'
+	'RGBA8UI'
+	'RGBA16I'
+	'RGBA16UI'
+	'RGBA16F'
+	'RGBA32I'
+	'RGBA32UI'
+	'RGBA32F'
+	'RGB5_A1'
+	'RGB10_A2'
+	'RGB10_A2UI'
+	'SRGB8_ALPHA8'
+	'DEPTH_COMPONENT16'
+	'DEPTH_COMPONENT24'
+	'DEPTH_COMPONENT32F'
+	'DEPTH24_STENCIL8'
+	'DEPTH32F_STENCIL8'
+	</code>
+
+	<p>
+
+	Heads up: changing the internal format of a texture will only affect the
+	texture when using a WebGL 2 rendering context.<br /><br />
+
+	For use with a texture's [page:Texture.internalFormat internalFormat]	property,
+	these define how elements of a texture, or *texels*, are stored on the GPU.<br /><br />
+
+	[page:constant R8] stores the red component on 8 bits.<br /><br />
+
+	[page:constant R8_SNORM] stores the red component on 8 bits. The component is stored as normalized. <br /><br />
+
+	[page:constant R8I] stores the red component on 8 bits. The component is stored as an integer. <br /><br />
+
+	[page:constant R8UI] stores the red component on 8 bits. The component is stored as an unsigned integer. <br /><br />
+
+	[page:constant R16I] stores the red component on 16 bits. The component is stored as an integer. <br /><br />
+
+	[page:constant R16UI] stores the red component on 16 bits. The component is stored as an unsigned integer. <br /><br />
+
+	[page:constant R16F] stores the red component on 16 bits. The component is stored as floating point. <br /><br />
+
+	[page:constant R32I] stores the red component on 32 bits. The component is stored as an integer. <br /><br />
+
+	[page:constant R32UI] stores the red component on 32 bits. The component is stored as an unsigned integer. <br /><br />
+
+	[page:constant R32F] stores the red component on 32 bits. The component is stored as floating point. <br /><br />
+
+	[page:constant RG8] stores the red and green components on 8 bits each.<br /><br />
+
+	[page:constant RG8_SNORM] stores the red and green components on 8 bits each.
+	Every component is stored as normalized.
+	<br /><br />
+
+	[page:constant RG8I] stores the red and green components on 8 bits each.
+	Every component is stored as an integer.
+	<br /><br />
+
+	[page:constant RG8UI] stores the red and green components on 8 bits each.
+	Every component is stored as an unsigned integer.
+	<br /><br />
+
+	[page:constant RG16I] stores the red and green components on 16 bits each.
+	Every component is stored as an integer.
+	<br /><br />
+
+	[page:constant RG16UI] stores the red and green components on 16 bits each.
+	Every component is stored as an unsigned integer.
+	<br /><br />
+
+	[page:constant RG16F] stores the red and green components on 16 bits each.
+	Every component is stored as floating point.
+	<br /><br />
+
+	[page:constant RG32I] stores the red and green components on 32 bits each.
+	Every component is stored as an integer.
+	<br /><br />
+
+	[page:constant RG32UI] stores the red and green components on 32 bits.
+	Every component is stored as an unsigned integer.
+	<br /><br />
+
+	[page:constant RG32F] stores the red and green components on 32 bits.
+	Every component is stored as floating point.
+	<br /><br />
+
+	[page:constant RGB8] stores the red, green, and blue components on 8 bits each.
+
+	[page:constant RGB8_SNORM] stores the red, green, and blue components on 8 bits each.
+	Every component is stored as normalized.
+	<br /><br />
+
+	[page:constant RGB8I] stores the red, green, and blue components on 8 bits each.
+	Every component is stored as an integer.
+	<br /><br />
+
+	[page:constant RGB8UI] stores the red, green, and blue components on 8 bits each.
+	Every component is stored as an unsigned integer.
+	<br /><br />
+
+	[page:constant RGB16I] stores the red, green, and blue components on 16 bits each.
+	Every component is stored as an integer.
+	<br /><br />
+
+	[page:constant RGB16UI] stores the red, green, and blue components on 16 bits each.
+	Every component is stored as an unsigned integer.
+	<br /><br />
+
+	[page:constant RGB16F] stores the red, green, and blue components on 16 bits each.
+	Every component is stored as floating point
+	<br /><br />
+
+	[page:constant RGB32I] stores the red, green, and blue components on 32 bits each.
+	Every component is stored as an integer.
+	<br /><br />
+
+	[page:constant RGB32UI] stores the red, green, and blue components on 32 bits each.
+	Every component is stored as an unsigned integer.
+	<br /><br />
+
+	[page:constant RGB32F] stores the red, green, and blue components on 32 bits each.
+	Every component is stored as floating point
+	<br /><br />
+
+	[page:constant R11F_G11F_B10F] stores the red, green, and blue components respectively on 11 bits, 11 bits, and 10bits.
+	Every component is stored as floating point.
+	<br /><br />
+
+	[page:constant RGB565] stores the red, green, and blue components respectively on 5 bits, 6 bits, and 5 bits.<br /><br />
+
+	[page:constant RGB9_E5] stores the red, green, and blue components on 9 bits each.<br /><br />
+
+	[page:constant RGBA8] stores the red, green, blue, and alpha components on 8 bits each.<br /><br />
+
+	[page:constant RGBA8_SNORM] stores the red, green, blue, and alpha components on 8 bits.
+	Every component is stored as normalized.
+	<br /><br />
+
+	[page:constant RGBA8I] stores the red, green, blue, and alpha components on 8 bits each.
+	Every component is stored as an integer.
+	<br /><br />
+
+	[page:constant RGBA8UI] stores the red, green, blue, and alpha components on 8 bits.
+	Every component is stored as an unsigned integer.
+	<br /><br />
+
+	[page:constant RGBA16I] stores the red, green, blue, and alpha components on 16 bits.
+	Every component is stored as an integer.
+	<br /><br />
+
+	[page:constant RGBA16UI] stores the red, green, blue, and alpha components on 16 bits.
+	Every component is stored as an unsigned integer.
+	<br /><br />
+
+	[page:constant RGBA16F] stores the red, green, blue, and alpha components on 16 bits.
+	Every component is stored as floating point.
+	<br /><br />
+
+	[page:constant RGBA32I] stores the red, green, blue, and alpha components on 32 bits.
+	Every component is stored as an integer.
+	<br /><br />
+
+	[page:constant RGBA32UI] stores the red, green, blue, and alpha components on 32 bits.
+	Every component is stored as an unsigned integer.
+	<br /><br />
+
+	[page:constant RGBA32F] stores the red, green, blue, and alpha components on 32 bits.
+	Every component is stored as floating point.
+	<br /><br />
+
+	[page:constant RGB5_A1] stores the red, green, blue, and alpha components respectively on 5 bits, 5 bits, 5 bits, and 1 bit.<br /><br />
+
+	[page:constant RGB10_A2] stores the red, green, blue, and alpha components respectively on 10 bits, 10 bits, 10 bits and 2 bits.<br /><br />
+
+	[page:constant RGB10_A2UI] stores the red, green, blue, and alpha components respectively on 10 bits, 10 bits, 10 bits and 2 bits.
+	Every component is stored as an unsigned integer.
+	<br /><br />
+
+	[page:constant SRGB8] stores the red, green, and blue components on 8 bits each.<br /><br />
+
+	[page:constant SRGB8_ALPHA8] stores the red, green, blue, and alpha components on 8 bits each.<br /><br />
+
+	[page:constant DEPTH_COMPONENT16] stores the depth component on 16bits.<br /><br />
+
+	[page:constant DEPTH_COMPONENT24] stores the depth component on 24bits.<br /><br />
+
+	[page:constant DEPTH_COMPONENT32F] stores the depth component on 32bits. The component is stored as floating point.<br /><br />
+
+	[page:constant DEPTH24_STENCIL8] stores the depth, and stencil components respectively on 24 bits and 8 bits.
+	The stencil component is stored as an unsigned integer.
+	<br /><br />
+
+	[page:constant DEPTH32F_STENCIL8] stores the depth, and stencil components respectively on 32 bits and 8 bits.
+	The depth component is stored as floating point, and the stencil component as an unsigned integer.
+	<br /><br />
+
+	Note that the texture must have the correct [page:Texture.type type] set,
+	as well as the correct [page:Texture.format format].
+
+	See [link:https://developer.mozilla.org/en/docs/Web/API/WebGLRenderingContext/texImage2D WebGLRenderingContext.texImage2D], and
+	[link:https://developer.mozilla.org/en-US/docs/Web/API/WebGL2RenderingContext/texImage3D WebGL2RenderingContext.texImage3D],
+	for more details regarding the possible combination of [page:Texture.format format], [page:Texture.internalFormat internalFormat],
+	and [page:Texture.type type].<br /><br />
+
+	For more in-depth information regarding internal formats, you can also refer directly
+	to the [link:https://www.khronos.org/registry/webgl/specs/latest/2.0/ WebGL2 Specification] and
+	to the [link:https://www.khronos.org/registry/OpenGL/specs/es/3.0/es_spec_3.0.pdf OpenGL ES 3.0 Specification].
+	</p>
+
 	<h2>编码</h2>
 	<code>
 		THREE.LinearEncoding

+ 12 - 0
docs/api/zh/core/BufferAttribute.html

@@ -97,6 +97,18 @@
 
 		<h2>方法</h2>
 
+		<h3>[method:this applyMatrix3]( [param:Matrix3 m] )</h3>
+		<p>Applies matrix [page:Matrix3 m] to every Vector3 element of this BufferAttribute.</p>
+
+		<h3>[method:this applyMatrix4]( [param:Matrix4 m] )</h3>
+		<p>Applies matrix [page:Matrix4 m] to every Vector3 element of this BufferAttribute.</p>
+
+		<h3>[method:this applyNormalMatrix]( [param:Matrix3 m] )</h3>
+		<p>Applies normal matrix [page:Matrix3 m] to every Vector3 element of this BufferAttribute.</p>
+
+		<h3>[method:this transformDirection]( [param:Matrix4 m] )</h3>
+		<p>Applies matrix [page:Matrix4 m] to every Vector3 element of this BufferAttribute, interpreting the elements as a direction vectors.</p>
+
 		<h3>[method:BufferAttribute clone]() </h3>
 		<p>返回该 BufferAttribute 的拷贝。</p>
 

+ 7 - 0
docs/api/zh/core/BufferGeometry.html

@@ -132,6 +132,13 @@
 			存储 [page:BufferAttribute] 的 Hashmap,存储了几何体 [page:Geometry.morphTargets morphTargets] 的细节信息。
 		</p>
 
+		<h3>[property:Boolean morphTargetsRelative]</h3>
+		<p>
+			Used to control the morph target behavior; when set to true, the morph target data is treated as relative offsets, rather than as absolute positions/normals.
+
+			Default is *false*.
+		</p>
+
 		<h3>[property:String name]</h3>
 		<p>
 			当前 bufferGeometry 实例的可选别名。默认值是空字符串。

+ 0 - 5
docs/api/zh/core/InterleavedBuffer.html

@@ -69,11 +69,6 @@
 			版本号,每次 needsUpdate 属性设置为 true 时,版本号增加。
 		</p>
 
-		<h3>[property:Integer isInterleavedBuffer]</h3>
-		<p>
-			默认值为 *true*。
-		</p>
-
 		<h3>[property:Integer needsUpdate]</h3>
 		<p>
 			默认值为 *false*。该值被设置为 true 时,会导致 [page:InterleavedBuffer.version version] 增加。

+ 3 - 0
docs/api/zh/core/InterleavedBufferAttribute.html

@@ -66,6 +66,9 @@
 
 		<h2>方法</h2>
 
+		<h3>[method:this applyMatrix4]( [param:Matrix4 m] )</h3>
+		<p>Applies matrix [page:Matrix4 m] to every Vector3 element of this InterleavedBufferAttribute.</p>
+
 		<h3>[method:Number getX]( [param:Integer index] ) </h3>
 		<p>返回给定索引矢量的第一个元素 (X 值)。</p>
 

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

@@ -224,7 +224,7 @@
 	<p>
 		id —— 标识该对象实例的唯一数字。<br /><br />
 
-		搜索该对象的子级,返回第一个带有匹配id的子对象。<br />
+		从该对象开始,搜索一个对象及其子级,返回第一个带有匹配id的子对象。<br />
 		请注意,id是按照时间顺序来分配的:1、2、3、……,每增加一个新的对象就自增1。
 	</p>
 
@@ -232,7 +232,7 @@
 	<p>
 		name —— 用于来匹配子物体中Object3D.name属性的字符串。<br /><br />
 
-		搜索该对象的子级,返回第一个带有匹配name的子对象。<br />
+		从该对象开始,搜索一个对象及其子级,返回第一个带有匹配name的子对象。<br />
 		请注意,大多数的对象中name默认是一个空字符串,要使用这个方法,你将需要手动地设置name属性。
 	</p>
 
@@ -240,7 +240,7 @@
 	<p>
 		name —— 将要用于查找的属性的名称。<br />
 		value —— 给定的属性的值。 <br /><br />
-		搜索该对象的子级,返回第一个给定的属性中包含有匹配的值的子对象。
+		从该对象开始,搜索一个对象及其子级,返回第一个给定的属性中包含有匹配的值的子对象。
 	</p>
 
 	<h3>[method:Vector3 getWorldPosition]( [param:Vector3 target] )</h3>
@@ -270,9 +270,9 @@
 
 	<h3>[method:Vector3 localToWorld]( [param:Vector3 vector] )</h3>
 	<p>
-		vector - A vector representing a position in this object's local space.<br /><br />
+		vector - 一个表示在该物体局部空间中位置的向量。<br /><br />
 
-		Converts the vector from this object's local space to world space.
+		将该向量从物体的局部空间转换到世界空间。
 	</p>
 
 	<h3>[method:null lookAt]( [param:Vector3 vector] )<br />
@@ -423,9 +423,9 @@
 
 	<h3>[method:Vector3 worldToLocal]( [param:Vector3 vector] )</h3>
 	<p>
-		vector - A vector representing a position in world space.<br /><br />
+		vector - 一个表示在世界空间中位置的向量。<br /><br />
 
-		Converts the vector from world space to this object's local space.
+		将该向量从世界空间转换到物体的局部空间。
 	</p>
 
 	<h2>源代码</h2>

+ 2 - 1
docs/api/zh/core/Raycaster.html

@@ -121,7 +121,8 @@
 
 		<h3>[property:Object params]</h3>
 		<p>
-			具有以下属性的对象:<code>
+			具有以下属性的对象:
+			<code>
 {
 	Mesh: {},
 	Line: { threshold: 1 },

+ 1 - 1
docs/api/zh/extras/core/Curve.html

@@ -102,7 +102,7 @@
 
 		<h3>[method:Object computeFrenetFrames]( [param:Integer segments], [param:Boolean closed] )</h3>
 		<p>
-		Generates the Frenet Frames. Used in geometries like [page:TubeGeometry] or [page:ExtrudeGeometry].
+		Generates the Frenet Frames. Requires a curve definition in 3D space. Used in geometries like [page:TubeGeometry] or [page:ExtrudeGeometry].
 		</p>
 
 		<h3>[method:Curve clone]()</h3>

+ 1 - 1
docs/api/zh/extras/core/Interpolations.html

@@ -11,7 +11,7 @@
 		<h1>插值([name])</h1>
 
 		<p class="desc">
-			[name] contains spline and Bézier functions internally used by concrete curve classes.
+			[name] 包含了由具体的曲线类在内部使用的样条曲线和贝塞尔曲线函数。
 		</p>
 
 		<h2>方法</h2>

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

@@ -12,7 +12,7 @@
 
 		<h1>弧线([name])</h1>
 
-		<p class="desc">[page:EllipseCurve]的别名</p>
+		<p class="desc">[page:EllipseCurve]的别名</p>
 
 		<h2>属性</h2>
 		<p>共有属性请参见其基类[page:EllipseCurve]。</p>

+ 1 - 1
docs/api/zh/extras/curves/CatmullRomCurve3.html

@@ -67,7 +67,7 @@
 		<p>可能的值为*centripetal*、*chordal*和*catmullrom*。</p>
 
 		<h3>[property:float tension]</h3>
-		<p>当[page:.type]为*catmullrom*时,定义catmullrom的张力。</p>
+		<p>当[page:.curveType]为*catmullrom*时,定义catmullrom的张力。</p>
 
 
 		<h2>方法</h2>

+ 1 - 1
docs/api/zh/extras/curves/QuadraticBezierCurve.html

@@ -10,7 +10,7 @@
 	<body>
 		[page:Curve] &rarr;
 
-		<h1>二维二次贝塞尔曲线([name])</h1>
+		<h1>二维二次贝塞尔曲线([name]</h1>
 
 		<p class="desc">
 			创建一条平滑的二维

+ 1 - 1
docs/api/zh/geometries/ExtrudeBufferGeometry.html

@@ -79,7 +79,7 @@
 				<li>bevelSize — float。斜角与原始形状轮廓之间的延伸距离,默认值为bevelThickness-2。</li>
 				<li>bevelOffset — float. Distance from the shape outline that the bevel starts. Default is 0.</li>
 				<li>bevelSegments — int。斜角的分段层数,默认值为3。</li>
-				<li>extrudePath — THREE.Curve对象。一条沿着被挤出形状的三维样条线。</li>
+				<li>extrudePath — THREE.Curve对象。一条沿着被挤出形状的三维样条线。Bevels not supported for path extrusion.</li>
 				<li>UVGenerator —  Object。提供了UV生成器函数的对象。</li>
 			</ul>
 

+ 1 - 1
docs/api/zh/geometries/ExtrudeGeometry.html

@@ -78,7 +78,7 @@
 				<li>bevelSize — float。斜角与原始形状轮廓之间的延伸距离,默认值为bevelThickness-2。</li>
 				<li>bevelOffset — float. Distance from the shape outline that the bevel starts. Default is 0.</li>
 				<li>bevelSegments — int。斜角的分段层数,默认值为3。</li>
-				<li>extrudePath — THREE.Curve对象。一条沿着被挤出形状的三维样条线。</li>
+				<li>extrudePath — THREE.Curve对象。一条沿着被挤出形状的三维样条线。Bevels not supported for path extrusion.</li>
 				<li>UVGenerator —  Object。提供了UV生成器函数的对象。</li>
 			</ul>
 

+ 1 - 1
docs/api/zh/geometries/TubeBufferGeometry.html

@@ -68,7 +68,7 @@
 
 		<h3>[name]([param:Curve path], [param:Integer tubularSegments], [param:Float radius], [param:Integer radialSegments], [param:Boolean closed])</h3>
 		<p>
-				path — [page:Curve] - 一个由基类[page:Curve]继承而来的路径。<br />
+				path — [page:Curve] - 一个由基类[page:Curve]继承而来的3D路径。<br />
 				tubularSegments — [page:Integer] - 组成这一管道的分段数,默认值为64。<br />
 				radius — [page:Float] - 管道的半径,默认值为1。<br />
 				radialSegments — [page:Integer] - 管道横截面的分段数目,默认值为8。<br />

+ 1 - 1
docs/api/zh/geometries/TubeGeometry.html

@@ -68,7 +68,7 @@
 
 		<h3>[name]([param:Curve path], [param:Integer tubularSegments], [param:Float radius], [param:Integer radialSegments], [param:Boolean closed])</h3>
 		<p>
-		path — [page:Curve] - 一个由基类[page:Curve]继承而来的路径。<br />
+		path — [page:Curve] - 一个由基类[page:Curve]继承而来的3D路径。<br />
 		tubularSegments — [page:Integer] - 组成这一管道的分段数,默认值为64。<br />
 		radius — [page:Float] - 管道的半径,默认值为1。<br />
 		radialSegments — [page:Integer] - 管道横截面的分段数目,默认值为8。<br />

+ 1 - 1
docs/api/zh/helpers/ArrowHelper.html

@@ -46,7 +46,7 @@
 		[page:Number length] -- 箭头的长度. 默认为 *1*.<br />
 		[page:Number hex] -- 定义的16进制颜色值. 默认为 0xffff00.<br />
 		[page:Number headLength] -- 箭头头部(锥体)的长度. 默认为箭头长度的0.2倍(0.2 * length).<br />
-		[page:Number headWidth] -- The width of the head of the arrow. Default is 0.2 * headLength.
+		[page:Number headWidth] -- The width of the head of the arrow. Default is 0.2 * headLength.<br />
 		</p>
 
 		<h2>属性</h2>

+ 10 - 10
docs/api/zh/lights/AmbientLightProbe.html

@@ -10,33 +10,33 @@
 	<body>
 		[page:Object3D] &rarr; [page:Light] &rarr; [page:LightProbe]
 
-		<h1>[name]</h1>
+		<h1>环境光探针([name]</h1>
 
 		<p class="desc">
-			Light probes are an alternative way of adding light to a 3D scene. AmbientLightProbe is the light estimation data 
-			of a single ambient light in the scene. For more information about light probes, go to [page:LightProbe].
+			光照探针是一种在3D场景中添加光源的另一种方法。 AmbientLightProbe 是场景中单个环境光的光照估算数据。
+			有关光照探针的更多信息,请转到 [page:LightProbe] 。
 		</p>
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 		<h3>[name]( [param:Color color], [param:Float intensity] )</h3>
 		<p>
-		[page:Color color] - (optional) An instance of Color, string representing a color or a number representing a color.<br />
-		[page:Float intensity] - (optional) Numeric value of the light probe's intensity. Default is 1.<br /><br />
+		[page:Color color] - (可选)一个表示颜色的 Color 的实例、字符串或数字。<br />
+		[page:Float intensity] - (可选)光照探针强度的数值。默认值为1。<br /><br />
 
-		Creates a new [name].
+		创建一个新的[name]。
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 		<p>
 				See the base [page:LightProbe LightProbe] class for common properties.
 		</p>
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 		<p>
 				See the base [page:LightProbe LightProbe] class for common methods.
 		</p>
-		<h2>Source</h2>
+		<h2>源码</h2>
 
 		<p>
 			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 11 - 11
docs/api/zh/lights/HemisphereLightProbe.html

@@ -10,34 +10,34 @@
 	<body>
 		[page:Object3D] &rarr; [page:Light] &rarr; [page:LightProbe]
 
-		<h1>[name]</h1>
+		<h1>半球光探针[name]</h1>
 
 		<p class="desc">
-			Light probes are an alternative way of adding light to a 3D scene. HemisphereLightProbe is the light estimation data 
-			of a single hemisphere light in the scene. For more information about light probes, go to [page:LightProbe].
+			光照探针是一种在3D场景中添加光源的另一种方法。 HemisphereLightProbe 是场景中单个半球光的光照估算数据。
+			有关光照探针的更多信息,请转到 [page:LightProbe] 。
 		</p>
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 		<h3>[name]( [param:Color skyColor], [param:Color groundColor], [param:Float intensity] )</h3>
 		<p>
-			[page:Color skyColor] - (optional) An instance of Color, string representing a color or a number representing a color.<br />
-			[page:Color groundColor] - (optional) An instance of Color, string representing a color or a number representing a color.<br />
-			[page:Float intensity] - (optional) Numeric value of the light probe's intensity. Default is 1.<br /><br />
+			[page:Color skyColor] - (可选)一个表示颜色的 Color 的实例、字符串或数字。<br />
+			[page:Color groundColor] - (可选)一个表示颜色的 Color 的实例、字符串或数字。<br />
+			[page:Float intensity] - (可选)光照探针强度的数值。默认值为1。<br /><br />
 
-			Creates a new [name].
+			创建一个新的 [name]。
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 		<p>
 				See the base [page:LightProbe LightProbe] class for common properties.
 		</p>
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 		<p>
 				See the base [page:LightProbe LightProbe] class for common methods.
 		</p>
-		<h2>Source</h2>
+		<h2>源码</h2>
 
 		<p>
 			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 21 - 21
docs/api/zh/lights/LightProbe.html

@@ -10,58 +10,58 @@
 	<body>
 		[page:Object3D] &rarr; [page:Light] &rarr;
 
-		<h1>[name]</h1>
+		<h1>光照探针[name]</h1>
 
 		<p class="desc">
-			Light probes are an alternative way of adding light to a 3D scene. Unlike classical light sources (e.g. directional,
-			point or spot lights), light probes do not emit light. Instead they store information about light passing through
-			3D space. During rendering, the light that hits a 3D object is approximated by using the data from the light probe.
+			光照探针是一种在3D场景中添加光源的另一种方法。与经典光源(平行光、点光、聚光)不同,
+			光照探针不发光。相反,光照探针存储着有关穿过3D空间的光线的信息。
+			渲染过程中,通过使用来自光照探针的数据,来逼近打到3D物体上的光线。
 		</p>
 
 		<p class="desc">
-			Light probes are usually created from (radiance) environment maps. The class [page:LightProbeGenerator] can
-			be used to create light probes from instances of [page:CubeTexture] or [page:WebGLCubeRenderTarget].
-			However, light estimation data could also be provided in other forms e.g. by WebXR. This enables the rendering
-			of augmented reality content that reacts to real world lighting.
+			光照探针通常从(辐射)环境贴图中创建。 [page:LightProbeGenerator] 类可以根据 [page:CubeTexture] 或
+			[page:WebGLCubeRenderTarget] 的实例来创建光照探针。
+			但是,光照估算数据同样可以以其他形式提供,例如,通过WebXR。
+			这将能够渲染可对真实世界的光照做出反应的增强现实内容。
 		</p>
 
 		<p class="desc">
-			The current probe implementation in three.js supports so-called diffuse light probes. This type of light probe
-			is functionally equivalent to an irradiance environment map.
+			three.js中,当前的探针实现支持所谓的漫反射光照探针。
+			这种类型的光照探针功能上等效于辐照环境贴图。
 		</p>
 
-		<h2>Examples</h2>
+		<h2>例子</h2>
 		<p>
 			[example:webgl_lightprobe WebGL / light probe ]<br />
 			[example:webgl_lightprobe_cubecamera WebGL / light probe / cube camera ]
 		</p>
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 		<h3>[name]( [param:SphericalHarmonics3 sh], [param:Float intensity] )</h3>
 		<p>
-		[page:SphericalHarmonics3 sh] - (optional) An instance of [page:SphericalHarmonics3].<br />
-		[page:Float intensity] - (optional) Numeric value of the light probe's intensity. Default is 1.<br /><br />
+		[page:SphericalHarmonics3 sh] - (可选)一个[page:SphericalHarmonics3]的实例。<br />
+		[page:Float intensity] - (可选)光照探针强度的数值。默认值为1。<br /><br />
 
-		Creates a new [name].
+		创建一个新的 [name] 。
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 		<p>
-				See the base [page:Light Light] class for common properties. The [page:Light.color color] property is currently
-				not evaluated and thus has no effect.
+				See the base [page:Light Light] class for common properties. 
+				[page:Light.color color] 属性当前未做评估,因此不生效。
 		</p>
 
 		<h3>[property:SphericalHarmonics3 sh]</h3>
 		<p>
-			A light probe uses spherical harmonics to encode lighting information.
+			光照探针使用球面谐波(spherical harmonic)来编码光照信息。
 		</p>
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 		<p>
 				See the base [page:Light Light] class for common methods.
 		</p>
-		<h2>Source</h2>
+		<h2>源码</h2>
 
 		<p>
 			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 3 - 3
docs/api/zh/lights/PointLight.html

@@ -76,7 +76,7 @@
 			表示以"流明(光通量单位)"为单位的光功率。 缺省值 - *4Math.PI*。 <br /><br />
 
 			该值与 [page:.intensity intensity] 直接关联
-  			<code>
+			<code>
 				power = intensity * 4&pi;
 			</code>
 			修改该值也会导致光强度的改变。
@@ -86,8 +86,8 @@
 		<p>
 			[page:PointLightShadow]用与计算此光照的阴影。<br /><br />
 
-			此对象的摄像机被设置为 [page:PerspectiveCamera.fov fov] 为90度,[page:PerspectiveCamera.aspect aspect]为1
-			,近裁剪面  [page:PerspectiveCamera.near near] 为0,远裁剪面[page:PerspectiveCamera.far far]
+			此对象的摄像机被设置为 [page:PerspectiveCamera.fov fov] 为90度,[page:PerspectiveCamera.aspect aspect]为1
+			近裁剪面 [page:PerspectiveCamera.near near] 为0,远裁剪面[page:PerspectiveCamera.far far]
 			为500的透视摄像机 [page:PerspectiveCamera]。
 		</p>
 

+ 0 - 1
docs/api/zh/loaders/CubeTextureLoader.html

@@ -40,7 +40,6 @@ scene.background = new THREE.CubeTextureLoader()
 			[example:webgl_materials_cubemap_balls_reflection materials / cubemap / balls / reflection]<br />
 			[example:webgl_materials_cubemap_balls_refraction materials / cubemap / balls / refraction]<br />
 			[example:webgl_materials_cubemap_dynamic materials / cubemap / dynamic]<br />
-			[example:webgl_materials_cubemap_dynamic2 materials / cubemap / dynamic2]<br />
 			[example:webgl_materials_cubemap_refraction materials / cubemap / refraction]
 		</p>
 

+ 0 - 3
docs/api/zh/loaders/FileLoader.html

@@ -69,9 +69,6 @@
 			请参考 [page:.setMimeType]。默认为 *undefined*。
 		</p>
 
-		<h3>[property:object requestHeader]</h3>
-		<p>[link:https://developer.mozilla.org/en-US/docs/Glossary/Request_header request header] 在HTTP 请求中使用。 请参考 [page:.setRequestHeader]。 默认为 *undefined*.</p>
-
 		<h3>[property:String responseType]</h3>
 		<p>请求的响应类型。 请参考 [page:.setResponseType]. 默认为 *undefined*.</p>
 

+ 31 - 19
docs/api/zh/loaders/Loader.html

@@ -18,10 +18,10 @@
 
 		<h3>[name]( [param:LoadingManager manager] )</h3>
 		<p>
-			[page:LoadingManager manager] — The [page:LoadingManager loadingManager] for the loader to use. Default is [page:LoadingManager THREE.DefaultLoadingManager].
+			[page:LoadingManager manager] — 加载器将要使用的 [page:LoadingManager loadingManager]。默认为 [page:LoadingManager THREE.DefaultLoadingManager]。
 		</p>
 		<p>
-			Creates a new [name].
+			创建一个新的[name]。
 		</p>
 
 
@@ -29,67 +29,79 @@
 
 		<h3>[property:string crossOrigin]</h3>
 		<p>
-		The crossOrigin string to implement CORS for loading the url from a different domain that allows CORS.
-		Default is *anonymous*.
+		crossOrigin 字符串用于实现 CORS ,以从允许 CORS 的其他域加载url。
+		默认为*anonymous*。
 		</p>
 
 		<h3>[property:LoadingManager manager]</h3>
 		<p>
-			The [page:LoadingManager loadingManager]  the loader is using. Default is [page:DefaultLoadingManager].
+			加载器要使用的 [page:LoadingManager loadingManager] 。默认为 [page:DefaultLoadingManager] 。
 		</p>
 
 		<h3>[property:String path]</h3>
 		<p>
-			The base path from which the asset will be loaded.
-			Default is the empty string.
+			将从中加载资产的基本路径。
+			默认为空字符串。
 		</p>
 
 		<h3>[property:String resourcePath]</h3>
 		<p>
-			The base path from which additional resources like textures will be loaded.
-			Default is the empty string.
+			将从中加载额外资源(例如纹理贴图)的基本路径。
+			默认为空字符串。
 		</p>
 
+		<h3>[property:object requestHeader]</h3>
+		<p>
+			[link:https://developer.mozilla.org/en-US/docs/Glossary/Request_header request header] 在 HTTP 请求中使用。 请参考 [page:.setRequestHeader]。 默认为 *undefined*。
+		</p>	
+
 		<h2>方法</h2>
 
 		<h3>[method:void load]()</h3>
 		<p>
-			This method needs to be implement by all concrete loaders. It holds the logic for loading the asset from the backend.
+			该方法需要被所有具体的加载器来实现。它包含了从后端加载资产的逻辑。
 		</p>
 
 		<h3>[method:Promise loadAsync]( [param:String url], [param:Function onProgress] )</h3>
 		<p>
-		[page:String url] — A string containing the path/URL of the file to be loaded.<br />
-		[page:Function onProgress] — (optional) A function to be called while the loading is in progress. The argument will be the XMLHttpRequest instance, that contains .[page:Integer total] and .[page:Integer loaded] bytes.<br />
+		[page:String url] — 一个字符串,包含要加载的文件的路径/URL。<br />
+		[page:Function onProgress] — (可选)加载过程中将会被调用的函数。参数将是一个XMLHttpRequest实例,其包含了 .[page:Integer total] (总)字节数和 .[page:Integer loaded] (已加载)字节数。<br />
 		</p>
 		<p>
-		This method is equivalent to [page:.load], but returns a [link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise Promise].
+		该函数等效于[page:.load],但返回的是一个 [link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise Promise]
 		</p>
 		<p>
-		[page:Function onLoad] is handled by [link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/resolve Promise.resolve] and [page:Function onError] is handled by [link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/reject Promise.reject].
+		[page:Function onLoad]  [link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/resolve Promise.resolve] 处理,而 [page:Function onError] 则由 [link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/reject Promise.reject] 处理。
 		</p>
 
 		<h3>[method:void parse]()</h3>
 		<p>
-			This method needs to be implement by all concrete loaders. It holds the logic for parsing the asset into three.js entities.
+			该方法需要被所有具体的加载器来实现。它包含了解析资产到 three.js 实体的逻辑。
 		</p>
 
 		<h3>[method:Loader setCrossOrigin]( [param:String crossOrigin] )</h3>
 		<p>
-			[page:String crossOrigin] — The crossOrigin string to implement CORS for loading the url from a different domain that allows CORS.
+			[page:String crossOrigin] — crossOrigin字符串用于实现CORS,以从允许CORS的其它域加载url。
 		</p>
 
 		<h3>[method:Loader setPath]( [param:String path] )</h3>
 		<p>
-			[page:String path] — Set the base path for the asset.
+			[page:String path] — 设置资产的基本路径。
 		</p>
 
 		<h3>[method:Loader setResourcePath]( [param:String resourcePath] )</h3>
 		<p>
-			[page:String resourcePath] — Set the base path for dependent resources like textures.
+			[page:String resourcePath] — 设置独立资源(如纹理贴图)的基本路径。
+		</p>
+
+		<h3>[method:Loader setRequestHeader]( [param:Object requestHeader] )</h3>
+		<p>
+			[page:object requestHeader] - key: 要设置header的名称。 value:要设置header的值。<br /><br />
+
+			设置在 HTTP 请求中使用的 [link:https://developer.mozilla.org/en-US/docs/Glossary/Request_header request header](请求头)。
 		</p>
 
-		<h2>Source</h2>
+		<h2>源码</h2>
 
 		<p>
 			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 10 - 11
docs/api/zh/loaders/managers/LoadingManager.html

@@ -11,8 +11,7 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-
-			其功能时处理并跟踪已加载和待处理的数据。如果未手动设置加强管理器,则会为加载器创建和使用默认全局实例加载器管理器
+			其功能是处理并跟踪已加载和待处理的数据。如果未手动设置加强管理器,则会为加载器创建和使用默认全局实例加载器管理器
 			- 请参阅 [page:DefaultLoadingManager].<br /><br />
 
 			一般来说,默认的加载管理器已足够使用了,但有时候也需要设置单独的加载器 - 例如,如果你想为对象和纹理显示单独的加载条。
@@ -120,38 +119,38 @@
 
 		<h3>[property:Function onStart]</h3>
 		<p>
-			此换上咋加载开始时,被调用.
-			有如下参数:<br />
+			此函数在加载开始时被调用。
+			有如下参数<br />
 			[page:String url] — 被加载的项的url。<br />
 			[page:Integer itemsLoaded] — 目前已加载项的个数。<br />
 			[page:Iteger itemsTotal] — 总共所需要加载项的个数。<br /><br />
 
-			此方法默认时未定义
+			该函数默认为undefined
 		</p>
 
 		<h3>[property:Function onLoad]</h3>
 		<p>
-			所有的项加载完成后将调用此函数。默认情况下,此方法时未定义的,除非在构造函数中进行传递
+			所有的项加载完成后将调用此函数。默认情况下,该函数是未定义的,除非在构造函数中传入
 		</p>
 
 		<h3>[property:Function onProgress]</h3>
 		<p>
 			此方法加载每一个项,加载完成时进行调用。
-			有如下参数:<br />
+			有如下参数<br />
 		[page:String url] — 被加载的项的url。<br />
 		[page:Integer itemsLoaded] — 目前已加载项的个数。<br />
 		[page:Iteger itemsTotal] — 总共所需要加载项的个数。<br /><br />
 
-			默认情况下,此方法时未定义的,除非在构造函数中进行传递
+			默认情况下,该函数为undefined,除非在构造函数中传入
 		</p>
 
 		<h3>[property:Function onError]</h3>
 		<p>
 			此方法将在任意项加载错误时,进行调用。
-			有如下参数:<br />
-			[page:String url] — 所加载出错误的项的url<br /><br />
+			有如下参数<br />
+			[page:String url] — 加载发生错误的项目的url<br /><br />
 
-			默认情况下,此方法时未定义的,除非在构造函数中进行传递
+			默认情况下,该函数为undefined,除非在构造函数中传入
 		</p>
 
 

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

@@ -105,7 +105,8 @@
 
 <h3>[property:Boolean stencilWrite]</h3>
 <p>
-Whether stencil operations are performed against the stencil buffer. In order to perform writes or comparisons against the stencil buffer this value must be *true*. Default is *false*.</p>
+Whether stencil operations are performed against the stencil buffer. In order to perform writes or comparisons against the stencil buffer this value must be *true*. Default is *false*.
+</p>
 
 <h3>[property:Integer stencilWriteMask]</h3>
 <p>
@@ -286,6 +287,36 @@ Defines whether vertex coloring is used. Default is *false*.
 Unlike properties, the callback is not supported by [page:Material.clone .clone](), [page:Material.copy .copy]() and [page:Material.toJSON .toJSON]().
 </p>
 
+<h3>[method:String customProgramCacheKey]()</h3>
+<p>
+In case onBeforeCompile is used, this callback can be used to identify values of settings used in onBeforeCompile, so three.js can reuse a cached shader or recompile the shader for this material as needed.
+</p>
+
+<p>
+For example, if onBeforeCompile contains a conditional statement like:<br />
+
+<code>if ( black ) {
+
+	shader.fragmentShader = shader.fragmentShader.replace('gl_FragColor = vec4(1)', 'gl_FragColor = vec4(0)')
+
+}
+</code>
+
+then customProgramCacheKey should be set like this:<br />
+
+<code>material.customProgramCacheKey = function() {
+
+	return black ? '1' : '0';
+
+}
+</code>
+
+</p>
+
+<p>
+Unlike properties, the callback is not supported by [page:Material.clone .clone](), [page:Material.copy .copy]() and [page:Material.toJSON .toJSON]().
+</p>
+
 <h3>[method:null setValues]( [param:object values] )</h3>
 <p> values -- 具有参数的容器。
 	根据*values*设置属性。<br/>

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

@@ -57,7 +57,7 @@
 		</p>
 
 		<h3>[property:Texture aoMap]</h3>
-		<p>该纹理的红色通道用作环境遮挡贴图。默认值为null。aoMap需要第二组UVs,因此将忽略[page:Texture repeat]和[page:Texture offset]属性。</p>
+		<p>该纹理的红色通道用作环境遮挡贴图。默认值为null。aoMap需要第二组UV。</p>
 
 		<h3>[property:Float aoMapIntensity]</h3>
 		<p>环境遮挡效果的强度。默认值为1。零是不遮挡效果。</p>
@@ -75,7 +75,7 @@
 		<p>环境贴图。默认值为null。</p>
 
 		<h3>[property:Texture lightMap]</h3>
-		<p>光照贴图。默认值为null。lightMap需要第二组UVs,因此将忽略[page:Texture repeat]和[page:Texture offset]纹理属性。</p>
+		<p>光照贴图。默认值为null。lightMap需要第二组UV。</p>
 
 		<h3>[property:Float lightMapIntensity]</h3>
 		<p>烘焙光的强度。默认值为1。</p>

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

@@ -63,7 +63,7 @@
 		</p>
 
 		<h3>[property:Texture aoMap]</h3>
-		<p> 该纹理的红色通道用作环境遮挡贴图。默认值为null。aoMap需要第二组UVs,因此将忽略[page:Texture repeat]和[page:Texture offset]纹理属性。</p>
+		<p> 该纹理的红色通道用作环境遮挡贴图。默认值为null。aoMap需要第二组UV。</p>
 
 		<h3>[property:Float aoMapIntensity]</h3>
 		<p> 环境遮挡效果的强度。默认值为1。零是不遮挡效果。</p>
@@ -94,7 +94,7 @@
 		<p> 环境贴图。默认值为null。</p>
 
 		<h3>[property:Texture lightMap]</h3>
-		<p>光照贴图。默认值为null。lightMap需要第二组UVs,因此将忽略[page:Texture repeat]和[page:Texture offset]纹理属性。</p>
+		<p>光照贴图。默认值为null。lightMap需要第二组UV。</p>
 
 		<h3>[property:Float lightMapIntensity]</h3>
 		<p>烘焙光的强度。默认值为1。</p>

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

@@ -96,6 +96,8 @@
 
 		<h3>[property:Texture normalMap]</h3>
 		<p> 用于创建法线贴图的纹理。RGB值会影响每个像素片段的曲面法线,并更改颜色照亮的方式。法线贴图不会改变曲面的实际形状,只会改变光照。
+			In case the material has a normal map authored using the left handed convention, the y component of normalScale
+			should be negated to compensate for the different handedness.
 		</p>
 
 		<h3>[property:Integer normalMapType]</h3>

+ 2 - 0
docs/api/zh/materials/MeshNormalMaterial.html

@@ -75,6 +75,8 @@
 
 		<h3>[property:Texture normalMap]</h3>
 		<p> 用于创建法线贴图的纹理。RGB值会影响每个像素片段的曲面法线,并更改颜色照亮的方式。法线贴图不会改变曲面的实际形状,只会改变光照。
+			In case the material has a normal map authored using the left handed convention, the y component of normalScale
+			should be negated to compensate for the different handedness.
 		</p>
 
 		<h3>[property:Integer normalMapType]</h3>

+ 4 - 2
docs/api/zh/materials/MeshPhongMaterial.html

@@ -61,7 +61,7 @@
 		</p>
 
 		<h3>[property:Texture aoMap]</h3>
-		<p>该纹理的红色通道用作环境遮挡贴图。默认值为null。aoMap需要第二组UVs,因此将忽略[page:Texture repeat]和[page:Texture offset]属性。</p>
+		<p>该纹理的红色通道用作环境遮挡贴图。默认值为null。aoMap需要第二组UV。</p>
 
 		<h3>[property:Float aoMapIntensity]</h3>
 		<p>环境遮挡效果的强度。默认值为1。零是不遮挡效果。</p>
@@ -115,7 +115,7 @@
 
 
 		<h3>[property:Texture lightMap]</h3>
-		<p>光照贴图。默认值为null。lightMap需要第二组UVs,因此将忽略[page:Texture repeat]和[page:Texture offset]纹理属性。</p>
+		<p>光照贴图。默认值为null。lightMap需要第二组UV。</p>
 
 		<h3>[property:Float lightMapIntensity]</h3>
 		<p>烘焙光的强度。默认值为1。</p>
@@ -132,6 +132,8 @@
 
 		<h3>[property:Texture normalMap]</h3>
 		<p> 用于创建法线贴图的纹理。RGB值会影响每个像素片段的曲面法线,并更改颜色照亮的方式。法线贴图不会改变曲面的实际形状,只会改变光照。
+			In case the material has a normal map authored using the left handed convention, the y component of normalScale
+			should be negated to compensate for the different handedness.
 		</p>
 
 		<h3>[property:Integer normalMapType]</h3>

+ 10 - 6
docs/api/zh/materials/MeshStandardMaterial.html

@@ -82,7 +82,7 @@
 		</p>
 
 		<h3>[property:Texture aoMap]</h3>
-		<p>该纹理的红色通道用作环境遮挡贴图。默认值为null。aoMap需要第二组UVs,因此将忽略[page:Texture repeat]和[page:Texture offset]属性。</p>
+		<p>该纹理的红色通道用作环境遮挡贴图。默认值为null。aoMap需要第二组UV。</p>
 
 		<h3>[property:Float aoMapIntensity]</h3>
 		<p>环境遮挡效果的强度。默认值为1。零是不遮挡效果。</p>
@@ -140,7 +140,7 @@
 			请确保将minFilter设置为其中一个MipMap选项,并且未强制禁用mip贴图。</p>
 		<p>
 			注意:MeshStandardMaterial 仅支持[link:https://threejs.org/docs/#api/textures/CubeTexture cube environment maps]。
-			如果要使用equirectangular贴图,则需要使用 [page:WebGLCubeRenderTarget.fromEquirectangularTexture WebGLCubeRenderTarget.fromEquirectangularTexture]().
+			如果要使用equirectangular贴图,则需要使用 [page:WebGLCubeRenderTarget.fromEquirectangularTexture WebGLCubeRenderTarget.fromEquirectangularTexture]()。
 			详细信息请参阅此示例[link:https://threejs.org/examples/webgl_materials_envmaps_exr.html example]。
 		</p>
 
@@ -149,7 +149,7 @@
 
 
 		<h3>[property:Texture lightMap]</h3>
-		<p>光照贴图。默认值为null。lightMap需要第二组UVs,因此将忽略[page:Texture repeat]和[page:Texture offset]纹理属性。</p>
+		<p>光照贴图。默认值为null。lightMap需要第二组UV。</p>
 
 		<h3>[property:Float lightMapIntensity]</h3>
 		<p>烘焙光的强度。默认值为1。</p>
@@ -174,6 +174,8 @@
 
 		<h3>[property:Texture normalMap]</h3>
 		<p>用于创建法线贴图的纹理。RGB值会影响每个像素片段的曲面法线,并更改颜色照亮的方式。法线贴图不会改变曲面的实际形状,只会改变光照。
+			In case the material has a normal map authored using the left handed convention, the y component of normalScale
+			should be negated to compensate for the different handedness.
 		</p>
 
 		<h3>[property:Integer normalMapType]</h3>
@@ -204,11 +206,13 @@
 		<p>材质是否使用蒙皮。默认值为false。</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>
+		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 wireframe]</h3>
 		<p>将几何体渲染为线框。默认值为*false*(即渲染为平面多边形)。</p>
 

+ 4 - 5
docs/api/zh/materials/MeshToonMaterial.html

@@ -64,8 +64,7 @@
 
 		<h3>[property:Texture aoMap]</h3>
 		<p>The red channel of this texture is used as the ambient occlusion map. Default is null.
-		The aoMap requires a second set of UVs, and consequently will ignore the [page:Texture repeat]
-		and [page:Texture offset] Texture properties.</p>
+		The aoMap requires a second set of UVs.</p>
 
 		<h3>[property:Float aoMapIntensity]</h3>
 		<p>Intensity of the ambient occlusion effect. Default is 1. Zero is no occlusion effect.</p>
@@ -127,9 +126,7 @@
 			[page:Textures THREE.NearestFilter] when using this type of texture. Default is *null*.</p>
 
 		<h3>[property:Texture lightMap]</h3>
-		<p>The light map. Default is null. The lightMap requires a second set of UVs,
-		and consequently will ignore the [page:Texture repeat] and [page:Texture offset]
-		Texture properties.</p>
+		<p>The light map. Default is null. The lightMap requires a second set of UVs.</p>
 
 		<h3>[property:Float lightMapIntensity]</h3>
 		<p>Intensity of the baked light. Default is 1.</p>
@@ -150,6 +147,8 @@
 		<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.
+			In case the material has a normal map authored using the left handed convention, the y component of normalScale
+			should be negated to compensate for the different handedness.
 		</p>
 
 		<h3>[property:Integer normalMapType]</h3>

+ 2 - 1
docs/api/zh/materials/PointsMaterial.html

@@ -87,7 +87,8 @@
 		<p>材质是否使用morphTargets。默认值为false。</p>
 
 		<h3>[property:Number size]</h3>
-		<p>设置点的大小。默认值为1.0。</p>
+		<p>设置点的大小。默认值为1.0。<br/>
+			Will be capped if it exceeds the hardware dependent parameter [link:https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/getParameter gl.ALIASED_POINT_SIZE_RANGE].</p>
 
 		<h3>[property:Boolean sizeAttenuation]</h3>
 		<p>指定点的大小是否因相机深度而衰减。(仅限透视摄像头。)默认为true。 </p>

+ 1 - 1
docs/api/zh/materials/ShadowMaterial.html

@@ -41,7 +41,7 @@
 
 		<h3>[name]( [param:Object parameters] )</h3>
 		<p> [page:Object parameters] - (可选)用于定义材质外观的对象,具有一个或多个属性。
-			材质的任何属性都可以从此处传入(包括从[page:Material]]继承的任何属性)。<br /><br />
+			材质的任何属性都可以从此处传入(包括从[page:Material]继承的任何属性)。<br /><br />
 		</p>
 
 

+ 4 - 3
docs/api/zh/math/Box2.html

@@ -11,7 +11,7 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-			表示二维空间中的一个包围盒。
+			表示二维空间中的一个轴对齐包围盒(axis-aligned bounding box,AABB)
 		</p>
 
 
@@ -151,10 +151,11 @@
 
 		<h3>[method:Box2 set]( [param:Vector2 min], [param:Vector2 max] )</h3>
 		<p>
-			[page:Vector2 min] - (必须 ) 表示该盒子的下边界(x, y)。 <br>
+			[page:Vector2 min] - (必须) 表示该盒子的下边界(x, y)。 <br>
 			[page:Vector2 max]  - (必须) 表示该盒子的上边界(x, y)。 <br /><br />
 
-			设置这个盒子的上下(x, y)的界限。
+			设置这个盒子的上下(x, y)的界限。<br>
+			Please note that this method only copies the values from the given objects.
 		</p>
 
 		<h3>[method:Box2 setFromCenterAndSize]( [param:Vector2 center], [param:Vector2 size] )</h3>

+ 24 - 21
docs/api/zh/math/Box3.html

@@ -11,7 +11,7 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-			在3D空间中表示一个盒子或立方体。其主要用于表示物体在世界坐标中的边界框
+			表示二维空间中的一个轴对齐包围盒(axis-aligned bounding box,AABB)
 		</p>
 
 		<h2>代码示例</h2>
@@ -66,7 +66,7 @@
 
 		<h2>方法(Methods)</h2>
 
-		<h3>[method:Box3 applyMatrix4]( [param:Matrix4 matrix] )</h3>
+		<h3>[method:this applyMatrix4]( [param:Matrix4 matrix] )</h3>
 		<p>
 		[page:Matrix4 matrix] - 要应用的 [page:Matrix4] <br /><br />
 
@@ -97,7 +97,7 @@
 		当传入的值 [page:Vector3 point] 在包围盒内部或者边界都会返回true。
 		</p>
 
-		<h3>[method:Box3 copy]( [param:Box3 box] )</h3>
+		<h3>[method:this copy]( [param:Box3 box] )</h3>
 		<p>
 		[page:Box3 box]  - 需要复制的包围盒 [page:Box3] 。<br /><br />
 
@@ -119,29 +119,30 @@
 		返回true如果传入的值与当前的对象 [page:Box3 box] 有相同的上下边界。
 		</p>
 
-		<h3>[method:Box3 expandByObject]( [param:Object3D object] )</h3>
+		<h3>[method:this expandByObject]( [param:Object3D object] )</h3>
 		<p>
 		[page:Object3D object] - 包裹在包围盒中的3d对象 [page:Object3D]。<br /><br />
 
 		扩展此包围盒的边界,使得对象及其子对象在包围盒内,包括对象和子对象的世界坐标的变换。
+		The function may result in a larger box than strictly necessary.
 
 		</p>
 
-		<h3>[method:Box3 expandByPoint]( [param:Vector3 point] )</h3>
+		<h3>[method:this expandByPoint]( [param:Vector3 point] )</h3>
 		<p>
 		[page:Vector3 point] - 需要在包围盒中的点 [page:Vector3]。<br /><br />
 
 		扩展这个包围盒的边界使得该点([page:Vector3 point])在包围盒内。
 		</p>
 
-		<h3>[method:Box3 expandByScalar]( [param:float scalar] )</h3>
+		<h3>[method:this expandByScalar]( [param:float scalar] )</h3>
 		<p>
 		[page:float scalar] - 扩展包围盒的比例。<br /><br />
 
 		按 [page:float scalar] 的值展开盒子的每个维度。如果是负数,盒子的尺寸会缩小。
 		</p>
 
-		<h3>[method:Box3 expandByVector]( [param:Vector3 vector] )</h3>
+		<h3>[method:this expandByVector]( [param:Vector3 vector] )</h3>
 		<p>
 		[page:Vector3 vector] - 扩展包围盒的数值 [page:Vector3] 。<br /><br />
 
@@ -181,12 +182,12 @@
 		返回包围盒的宽度,高度,和深度。
 		</p>
 
-		<h3>[method:Box3 intersect]( [param:Box3 box] )</h3>
+		<h3>[method:this intersect]( [param:Box3 box] )</h3>
 		<p>
 		[page:Box3 box] - 与包围盒的交集<br /><br />
 
-		返回此包围盒和 [page:Box3 box] 的交集,将此框的上界设置为两个框的max的较小部分,
-		将此包围盒的下界设置为两个包围盒的min的较大部分。
+		计算此包围盒和 [page:Box3 box] 的交集,将此框的上界设置为两个框的max的较小部分,
+		将此包围盒的下界设置为两个包围盒的min的较大部分。If there's no overlap, makes this box empty.
 		</p>
 
 		<h3>[method:Boolean intersectsBox]( [param:Box3 box] )</h3>
@@ -223,32 +224,33 @@
 		注意,下界和上界相等的方框仍然包含一个点,即两个边界共享的那个点。
 		</p>
 
-		<h3>[method:Box3 makeEmpty]()</h3>
+		<h3>[method:this makeEmpty]()</h3>
 		<p>清空包围盒。</p>
 
-		<h3>[method:Box3 set]( [param:Vector3 min], [param:Vector3 max] )</h3>
+		<h3>[method:this set]( [param:Vector3 min], [param:Vector3 max] )</h3>
 		<p>
 		[page:Vector3 min] - [page:Vector3] 表示下边界每个纬度(x,y,z)的值。<br />
 		[page:Vector3 max] - [page:Vector3] 表示上边界每个纬度(x,y,z)的值。<br /><br />
 
-		设置包围盒上下边界每个纬度(x,y,z)的值。
+		设置包围盒上下边界每个纬度(x,y,z)的值。<br>
+		Please note that this method only copies the values from the given objects.
 		</p>
 
-		<h3>[method:Box3 setFromArray]( [param:Array array] ) [param:Box3 this]</h3>
+		<h3>[method:this setFromArray]( [param:Array array] ) [param:Box3 this]</h3>
 		<p>
 		array -- 数组当中的所有的点都将被包围盒包裹。<br /><br />
 
 		设置包围盒的上下边界使得数组 *array* 中的所有点的点都被包含在内。
 		</p>
 
-		<h3>[method:Box3 setFromBufferAttribute]( [param:BufferAttribute attribute] ) [param:Box3 this]</h3>
+		<h3>[method:this setFromBufferAttribute]( [param:BufferAttribute attribute] ) [param:Box3 this]</h3>
 		<p>
 		[page:BufferAttribute attribute] - 位置的缓冲数据,包含在返回的包围盒内。<br /><br />
 
 		设置此包围盒的上边界和下边界,以包含 [page:BufferAttribute attribute] 中的所有位置数据。
 		</p>
 
-		<h3>[method:Box3 setFromCenterAndSize]( [param:Vector3 center], [param:Vector3 size] ) [param:Box3 this]</h3>
+		<h3>[method:this setFromCenterAndSize]( [param:Vector3 center], [param:Vector3 size] ) [param:Box3 this]</h3>
 		<p>
 		[page:Vector3 center], - 包围盒所要设置的中心位置。 <br>
 		[page:Vector3 size] - 包围盒所要设置的x、y和z尺寸(宽/高/长)。<br /><br />
@@ -256,22 +258,23 @@
 		将当前包围盒的中心点设置为 [page:Vector3 center] ,并将此包围盒的宽度,高度和深度设置为大小指定 [page:Vector3 size] 的值。
 		</p>
 
-		<h3>[method:Box3 setFromObject]( [param:Object3D object] )</h3>
+		<h3>[method:this setFromObject]( [param:Object3D object] )</h3>
 		<p>
 		[page:Object3D object] - 用来计算包围盒的3D对象 [page:Object3D]。<br /><br />
 
 		计算和世界轴对齐的一个对象 [page:Object3D] (含其子对象)的包围盒,计算对象和子对象的世界坐标变换。
+		The function may result in a larger box than strictly necessary.
 
 		</p>
 
-		<h3>[method:Box3 setFromPoints]( [param:Array points] )</h3>
+		<h3>[method:this setFromPoints]( [param:Array points] )</h3>
 		<p>
 		[page:Array points] - 计算出的包围盒将包含数组中所有的点 [page:Vector3 Vector3s]<br /><br />
 
 		设置此包围盒的上边界和下边界,以包含数组 [page:Array points] 中的所有点。
 		</p>
 
-		<h3>[method:Box3 translate]( [param:Vector3 offset] )</h3>
+		<h3>[method:this translate]( [param:Vector3 offset] )</h3>
 		<p>
 		[page:Vector3 offset] - 偏移方向和距离。<br /><br />
 
@@ -279,9 +282,9 @@
 		偏移量为 [page:Vector3 offset] 大小。
 		</p>
 
-		<h3>[method:Box3 union]( [param:Box3 box] )</h3>
+		<h3>[method:this union]( [param:Box3 box] )</h3>
 		<p>
-		[page:Box3 box] - 要结合在一起的包围盒。<br /><br />
+		[page:Box3 box] - 将被用于与该盒子计算并集的盒子。<br /><br />
 
 		在 [page:Box3 box] 参数的上边界和已有box对象的上边界之间取较大者,而对两者的下边界取较小者,这样获得一个新的较大的联合盒子。
 		</p>

+ 1 - 1
docs/api/zh/math/Frustum.html

@@ -88,7 +88,7 @@
 
 		<h3>[method:this set]( [param:Plane p0], [param:Plane p1], [param:Plane p2], [param:Plane p3], [param:Plane p4], [param:Plane p5] )</h3>
 		<p>
-		Sets the frustum from the passed planes. No plane order is implied.<br>
+		从传入的平面设置当前视锥体。没有隐式的顺序。<br>
 		Note that this method only copies the values from the given objects.
 		</p>
 

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

@@ -116,7 +116,7 @@ m.elements = [ 11, 21, 31, 41,
 
 		<h3>[method:this compose]( [param:Vector3 position], [param:Quaternion quaternion], [param:Vector3 scale] )</h3>
 		<p>
-		设置将该对象位置[page:Vector3 position],四元数[page:Quaternion quaternion] 和 缩放[page:Vector3 scale]
+		设置将该对象位置 [page:Vector3 position],四元数[page:Quaternion quaternion] 和 缩放[page:Vector3 scale] 组合变换的矩阵。
 		</p>
 
 		<h3>[method:this copy]( [param:Matrix4 m] )</h3>

+ 1 - 1
docs/api/zh/math/Plane.html

@@ -123,7 +123,7 @@
 			[page:Vector3 normal] - 单位长度的向量表示平面的法向量。<br />
 			[page:Float constant] - 原点到平面有符号距离。默认值为 *0*。<br /><br />
 
-			设置平面 [page:.normal normal] 的法线和常量 [page:.constant constant] 属性值。
+			设置平面 [page:.normal normal] 的法线和常量 [page:.constant constant] 属性值 by copying the values from the given normal
 		</p>
 
 		<h3>[method:Plane setComponents]( [param:Float x], [param:Float y], [param:Float z], [param:Float w] )</h3>

+ 56 - 60
docs/api/zh/math/Quaternion.html

@@ -8,11 +8,11 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		<h1>[name]</h1>
+		<h1>四元数([name]</h1>
 
 		<p class="desc">
-			Implementation of a [link:http://en.wikipedia.org/wiki/Quaternion quaternion].<br/>
-			Quaternions are used in three.js to represent [link:https://en.wikipedia.org/wiki/Quaternions_and_spatial_rotation rotations].
+			该类实现了 [link:http://en.wikipedia.org/wiki/Quaternion quaternion] 。<br/>
+			四元数在three.js中用于表示 [link:https://en.wikipedia.org/wiki/Quaternions_and_spatial_rotation rotation] (旋转)。
 		</p>
 
 		<h2>代码示例</h2>
@@ -26,19 +26,19 @@
 		</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] - x coordinate<br />
-		[page:Float y] - y coordinate<br />
-		[page:Float z] - z coordinate<br />
-		[page:Float w] - w coordinate
+		[page:Float x] - x 坐标<br />
+		[page:Float y] - y 坐标<br />
+		[page:Float z] - z 坐标<br />
+		[page:Float w] - w 坐标
 		</p>
 
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Float x]</h3>
 
@@ -49,91 +49,87 @@
 		<h3>[property:Float w]</h3>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 		<h3>[method:Float angleTo]( [param:Quaternion q] )</h3>
 		<p>
-			Returns the angle between this quaternion and quaternion [page:Quaternion q] in radians.
+			以弧度返回该四元数与四元数 [page:Quaternion q] 之间的夹角。
 		</p>
 
 		<h3>[method:Quaternion clone]()</h3>
 		<p>
-			Creates a new Quaternion with identical [page:.x x], [page:.y y],
-			[page:.z z] and [page:.w w] properties to this one.
+			创建一个与该四元数具有相同[page:.x x]、[page:.y y]、[page:.z z]和[page:.w w]
+			属性的四元数。
 		</p>
 
 		<h3>[method:Quaternion conjugate]()</h3>
 		<p>
-		Returns the rotational conjugate of this quaternion. The conjugate of a quaternion
-		represents the same rotation in the opposite direction about the rotational axis.
+			返回该四元数的旋转共轭。
+			四元数的共轭表示的是,围绕旋转轴在相反方向上的相同旋转。
 		</p>
 
 		<h3>[method:Quaternion copy]( [param:Quaternion q] )</h3>
 		<p>
-			Copies the [page:.x x], [page:.y y],	[page:.z z] and [page:.w w] properties
-			of [page:Quaternion q] into this quaternion.
+			复制四元数 [page:Quaternion q] 的 [page:.x x]、[page:.y y]、[page:.z z] 和 [page:.w w]
+			属性到该四元数中。
 		</p>
 
 		<h3>[method:Boolean equals]( [param:Quaternion v] )</h3>
 		<p>
-		[page:Quaternion v] - Quaternion that this quaternion will be compared to.<br /><br />
+		[page:Quaternion v] - 用于进行比较的四元数。<br /><br />
 
-		Compares the [page:.x x], [page:.y y],	[page:.z z] and [page:.w w] properties of
-		[page:Quaternion v] to the equivalent properties of this quaternion to determine if they
-		represent the same rotation.
+		将四元数 [page:Quaternion v] 的 [page:.x x]、 [page:.y y]、	[page:.z z] 和 [page:.w w] 的属性
+		与当前四元数的对应属性相比较,以确定它们是否表示相同的旋转。
 		</p>
 
 		<h3>[method:Float dot]( [param:Quaternion v] )</h3>
 		<p>
-			Calculates the [link:https://en.wikipedia.org/wiki/Dot_product dot product] of
-			quaternions [page:Quaternion v] and this one.
+			计算四元数 [page:Quaternion v] 与当前四元数的[link:https://en.wikipedia.org/wiki/Dot_product dot product](点积)。
 		</p>
 
 		<h3>[method:Quaternion fromArray]( [param:Array array], [param:Integer offset] )</h3>
 		<p>
-		[page:Array array] - array of format (x, y, z, w) used to construct the quaternion.<br />
-		[page:Integer offset] - (optional) an offset into the array.<br /><br />
+		[page:Array array] - 用于构造四元数的形如(x, y, z, w)的数组。<br />
+		[page:Integer offset] - (可选)数组的偏移量。(译者注:使用数组中从第offset元素算起的四个元素)<br /><br />
 
-		Sets this quaternion's [page:.x x], [page:.y y],	[page:.z z] and [page:.w w] properties
-		from an array.
+		从一个数组来设置四元数的 [page:.x x]、 [page:.y y]、[page:.z z] 和 [page:.w w] 的属性。
 		</p>
 
 		<h3>[method:Quaternion identity]()</h3>
 		<p>
-			Sets this quaternion to the identity quaternion; that is, to the quaternion that represents "no rotation".
+			设置该四元数为 identity 四元数,即表示“不旋转”的四元数。
 		</p>
 
 		<h3>[method:Quaternion inverse]()</h3>
 		<p>
-			Inverts this quaternion - calculates the [page:.conjugate conjugate]. The quaternion is assumed to have unit length.
+			翻转该四元数 —— 计算 [page:.conjugate conjugate] 。假定该四元数具有单位长度。
 		</p>
 
 		<h3>[method:Float length]()</h3>
-		<p>Computes the [link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean length]
-		(straight-line length) of this quaternion, considered as a 4 dimensional vector.</p>
+		<p>计算四元数的 [link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean length]
+		(欧几里得长度,直线长度),视为一个四维向量。</p>
 
 		<h3>[method:Float lengthSq]()</h3>
 		<p>
-			Computes the squared [link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean length]
-			(straight-line length) of this quaternion, considered as a 4 dimensional
-			vector. This can be useful if you are comparing the lengths of two quaternions,
-			as this is a slightly more efficient calculation than [page:.length length]().
+			计算四元数 [link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean length]
+			(欧几里得长度,直线长度)的平方,视为一个四维向量。
+			如果要比较两个四元数的长度,这可能会十分有用,
+			因为这比 [page:.length length]() 的效率稍高一些。
 		</p>
 
 		<h3>[method:Quaternion normalize]()</h3>
 		<p>
-			[link:https://en.wikipedia.org/wiki/Normalized_vector Normalizes] this quaternion - that is,
-		calculated the quaternion that performs the same rotation as this one, but has  [page:.length length]
-		equal to *1*.
+			[link:https://en.wikipedia.org/wiki/Normalized_vector Normalizes](归一化)四元数 ——
+			即计算与该四元数具有相同旋转、但长度为*1*的四元数。
 		</p>
 
 		<h3>[method:Quaternion multiply]( [param:Quaternion q] )</h3>
-		<p>Multiplies this quaternion by [page:Quaternion q].</p>
+		<p>将该四元数与[page:Quaternion q]相乘。</p>
 
 		<h3>[method:Quaternion multiplyQuaternions]( [param:Quaternion a], [param:Quaternion b] )</h3>
 		<p>
-		Sets this quaternion to [page:Quaternion a] x [page:Quaternion b].<br />
-		Adapted from the method outlined [link:http://www.euclideanspace.com/maths/algebra/realNormedAlgebra/quaternions/code/index.htm here].
+		将该四元数设为 [page:Quaternion a] x [page:Quaternion b] 。<br />
+		改编自 [link:http://www.euclideanspace.com/maths/algebra/realNormedAlgebra/quaternions/code/index.htm here] 所概述的方法。	
 		</p>
 
 		<h3>[method:Quaternion premultiply]( [param:Quaternion q] )</h3>
@@ -165,22 +161,22 @@
 		</p>
 
 		<h3>[method:Quaternion set]( [param:Float x], [param:Float y], [param:Float z], [param:Float w] )</h3>
-		<p>Sets [page:.x x], [page:.y y], [page:.z z], [page:.w w] properties of this quaternion.</p>
+		<p>设置该四元数的 [page:.x x]、[page:.y y]、[page:.z z]和[page:.w w]属性。</p>
 
 		<h3>[method:Quaternion setFromAxisAngle]( [param:Vector3 axis], [param:Float angle] )</h3>
 		<p>
-		Sets this quaternion from rotation specified by [page:Vector3 axis] and [page:Float angle].<br />
-		Adapted from the method [link:http://www.euclideanspace.com/maths/geometry/rotations/conversions/angleToQuaternion/index.htm here].<br />
-		*Axis* is assumed to be normalized, *angle* is in radians.
+		从由 [page:Vector3 axis](轴) 和 [page:Float angle](角度)所给定的旋转来设置该四元数。<br />
+		改编自 [link:http://www.euclideanspace.com/maths/geometry/rotations/conversions/angleToQuaternion/index.htm here] 所述的方法。<br />
+		假定*Axis*已被归一化,*angle*以弧度来表示。
 		</p>
 
 		<h3>[method:Quaternion setFromEuler]( [param:Euler euler] )</h3>
-		<p>Sets this quaternion from the rotation specified by [page:Euler] angle.</p>
+		<p>从由 [page:Euler] 角所给定的旋转来设置该四元数。</p>
 
 		<h3>[method:Quaternion setFromRotationMatrix]( [param:Matrix4 m] )</h3>
 		<p>
-		Sets this quaternion from rotation component of [page:Matrix4 m].<br />
-		Adapted from the method [link:http://www.euclideanspace.com/maths/geometry/rotations/conversions/matrixToQuaternion/index.htm here].
+		从[page:Matrix4 m]的旋转分量中来设置该四元数。<br />
+		改编自 [link:http://www.euclideanspace.com/maths/geometry/rotations/conversions/matrixToQuaternion/index.htm here] 所概述的方法。	
 		</p>
 
 		<h3>[method:Quaternion setFromUnitVectors]( [param:Vector3 vFrom], [param:Vector3 vTo] )</h3>
@@ -193,30 +189,30 @@
 
 		<h3>[method:Array toArray]( [param:Array array], [param:Integer offset] )</h3>
 		<p>
-		[page:Array array] - An optional array to store the quaternion. If not specified, a new array will be created.<br/>
-		[page:Integer offset] - (optional) if specified, the result will be copied
-		into this [page:Array].<br /><br />
+		[page:Array array] - (可选)存储该四元数的数组。若未指定该参数,则将创建一个新数组。<br/>
+		[page:Integer offset] - (可选)若指定了该值,结果将会被拷贝到该
+		[page:Array]。<br /><br />
 
-		Returns the numerical elements of this quaternion in an array of format [x, y, z, w].
+		在形如[x, y, z, w]的数组中,返回四元数中的数字元素。
 		</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 [page:.x x], [page:.y y], [page:.z z], [page:.w w] properties of this quaternion from the [page:BufferAttribute attribute].
+		从 [page:BufferAttribute attribute] 中设置该四元数的[page:.x x]、 [page:.y y]、 [page:.z z]、 [page:.w w]属性。
 		</p>
 
-		<h2>Static Methods</h2>
+		<h2>静态方法</h2>
 
 		<p>
-			Static methods (as opposed to instance methods) are designed to be called directly from the class,
-			rather than from a specific instance. So to use the static version of, call it like so:
+			静态方法(相对于实例方法)被设计用来直接从类进行调用,而非从特定的实例上进行调用。
+			要使用静态版本,需要按照如下方式来调用:
 			<code>
 THREE.Quaternion.slerp( qStart, qEnd, qTarget, t );
 			</code>
-			By contrast, to call the 'normal' or instanced slerp method, you would do the following:
+			作为对比,要调用“正常”或实例的 slerp 方法,则进行如下操作:
 			<code>
 //instantiate a quaternion with default values
 var q = new THREE.Quaternion();
@@ -264,7 +260,7 @@ q.slerp( qb, t )
 
 		<!-- Note: Do not add non-static methods to the bottom of this page. Put them above the <h2>Static Methods</h2> -->
 
-		<h2>Source</h2>
+		<h2>源码</h2>
 
 		<p>
 			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 1 - 1
docs/api/zh/math/Ray.html

@@ -194,7 +194,7 @@
 		该向量必须经过标准化(使用[page:Vector3.normalize]),这样才能使方法正常运行。
 		<br /><br />
 
-		将传入的参数赋值给射线的[page:.origin origin]和[page:.direction direction]。
+		Sets this ray's [page:.origin origin] and [page:.direction direction] properties by copying the values from the given objects.
 		</p>
 
 

+ 3 - 2
docs/api/zh/math/Sphere.html

@@ -16,7 +16,7 @@
 		<h3>[name]( [param:Vector3 center], [param:Float radius] )</h3>
 		<p>
 		[page:Vector3 center] - 球心的位置,默认值是一个位于(0, 0, 0)的[page:Vector3]。<br />
-		[page:Float radius] - 球的半径,默认值是0。<br /><br />
+		[page:Float radius] - 球的半径,默认值是-1。<br /><br />
 
 		创建一个新的[name]。
 
@@ -117,7 +117,8 @@
 			[page:Vector3 center] - 球心位置。<br />
 			[page:Float radius] - 球的半径。<br /><br />
 
-		设置球的[page:.center center]和[page:.radius radius]属性。
+		设置球的[page:.center center]和[page:.radius radius]属性。<br>
+		Please note that this method only copies the values from the given center.
 		</p>
 
 		<h3>[method:Sphere setFromPoints]( [param:Array points], [param:Vector3 optionalCenter] )</h3>

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

@@ -20,8 +20,8 @@
 		<p>
 		[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 />
+		[page:Float phi] - polar angle in radians from the y (up) axis. Default is *0*.<br />
+		[page:Float theta] - equator angle in radians around the y (up) axis. Default is *0*.<br /><br />
 
 		The poles (phi) are at the positive and negative y axis. The equator (theta) starts at positive z.
 		</p>

+ 2 - 1
docs/api/zh/math/Triangle.html

@@ -120,7 +120,8 @@
 
 		<h3>[method:Triangle set]( [param:Vector3 a], [param:Vector3 b], [param:Vector3 c] ) [param:Triangle this]</h3>
 		<p>
-			将三角形的[page:.a a]、[page:.b b]和[page:.c c]属性设置为所传入的[page:vector3 vector3]。
+			将三角形的[page:.a a]、[page:.b b]和[page:.c c]属性设置为所传入的[page:vector3 vector3]。<br>
+			Please note that this method only copies the values from the given objects.
 		</p>
 
 		<h3>[method:Triangle setFromPointsAndIndices]( [param:Array points], [param:Integer i0], [param:Integer i1], [param:Integer i2] ) [param:Triangle this]</h3>

+ 9 - 1
docs/api/zh/math/Vector3.html

@@ -105,6 +105,9 @@
 			将该向量乘以四阶矩阵m(第四个维度隐式地为1),and divides by perspective.
 		</p>
 
+		<h3>[method:this applyNormalMatrix]( [param:Matrix3 m] )</h3>
+		<p>Multiplies this vector by normal matrix [page:Matrix3 m] and normalizes the result.</p>
+
 		<h3>[method:this applyQuaternion]( [param:Quaternion quaternion] )</h3>
 		<p>
 		将[page:Quaternion]变换应用到该向量。
@@ -311,7 +314,7 @@
 		normal from this vector.
 		</p>
 
-		<h3>[method:this projectOnVector]( [param:Vector3] )</h3>
+		<h3>[method:this projectOnVector]( [param:Vector3 v] )</h3>
 		<p>投影([link:https://en.wikipedia.org/wiki/Vector_projection Projects])该向量到向量[page:Vector3 v]上。</p>
 
 		<h3>[method:this reflect]( [param:Vector3 normal] )</h3>
@@ -357,6 +360,11 @@
 		设置该向量的[page:.x x]值、[page:.y y]值和[page:.z z]值。
 		</p>
 
+		<h3>[method:this setFromMatrix3Column]( [param:Matrix3 matrix], [param:Integer index] )</h3>
+		<p>
+		Sets this vector's [page:.x x], [page:.y y] and [page:.z z] components from [page:Integer index] column of [page:Matrix3 matrix].
+		</p>
+
 		<h3>[method:this setFromMatrixPosition]( [param:Matrix4 m] )</h3>
 		<p>
 		从变换矩阵([link:https://en.wikipedia.org/wiki/Transformation_matrix transformation matrix])[page:Matrix4 m]中,

+ 23 - 25
docs/api/zh/objects/InstancedMesh.html

@@ -10,18 +10,17 @@
 	<body>
 		[page:Mesh] &rarr;
 
-		<h1>[name]</h1>
+		<h1>实例化网格([name]</h1>
 
 		<p class="desc">
-		A special version of [page:Mesh] with instanced rendering support. Use [name] if you have to render a large number of
-		objects with the same geometry and material but with different world transformations. The usage of [name] will help you
-		to reduce the number of draw calls and thus improve the overall rendering performance in your application.
+		一种具有实例化渲染支持的特殊版本的[page:Mesh]。你可以使用 [name] 来渲染大量具有相同几何体与材质、但具有不同世界变换的物体。
+		使用 [name] 将帮助你减少 draw call 的数量,从而提升你应用程序的整体渲染性能。
 		</p>
 		<p>
-		The current implementation requires that materials are not shared between [name] and other 3D objects.
+		当前的实现需要[name]和其它3D物体间不共享材质。
 		</p>
 
-		<h2>Examples</h2>
+		<h2>示例</h2>
 
 		<p>
 			[example:webgl_instancing_dynamic WebGL / instancing / dynamic]<br />
@@ -31,60 +30,59 @@
 			[example:webgl_instancing_raycast WebGL / instancing / raycast]
 		</p>
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 		<h3>[name]( [param:BufferGeometry geometry], [param:Material material], [param:Integer count] )</h3>
 		<p>
-		[page:Geometry geometry] - an instance of [page:BufferGeometry].<br />
-		[page:Material material] - an instance of [page:Material]. Default is a new [page:MeshBasicMaterial].<br />
-		[page:Integer count] - the number of instances.<br />
+		[page:Geometry geometry] - 一个 [page:BufferGeometry] 的实例。<br />
+		[page:Material material] - 一个 [page:Material] 的实例。默认为一个新的 [page:MeshBasicMaterial] 。<br />
+		[page:Integer count] - 实例的数量<br />
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 		<p>See the base [page:Mesh] class for common properties.</p>
 
 		<h3>[property:Integer count]</h3>
 		<p>
-			The number of instances. The *count* value passed into the constructor represents the maximum number of
-			instances of this mesh. You can change the number of instances at runtime to an integer value
-			in the range [0, count].
+			实例的数量。被传入到构造函数中的*count*表示mesh实例数量的最大值。
+			你可以在运行时改变这个数值到 [0, count] 区间的一个整数。
 		</p>
 		<p>
-			If you need more instances than the original count value, you have to create a new [name].
+			如果你需要比原先的数量更多的实例数量,你需要创建一个新的[name]。
 		</p>
 
 		<h3>[property:BufferAttribute instanceMatrix]</h3>
 		<p>
-			Represents the local transformation of all instances.
-			You have to set its [page:BufferAttribute.needsUpdate needsUpdate] flag to true if you modify instanced data via [page:.setMatrixAt]().
+			表示所有实例的本地变换。
+			如果你要通过 [page:.setMatrixAt]() 来修改实例数据,你必须将它的 [page:BufferAttribute.needsUpdate needsUpdate] 标识为 true 。
 		</p>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 		<p>See the base [page:Mesh] class for common methods.</p>
 
 		<h3>[method:null getMatrixAt]( [param:Integer index], [param:Matrix4 matrix] )</h3>
 		<p>
-			[page:Integer index]: The index of an instance. Values have to be in the range [0, count].
+			[page:Integer index]: 实例的索引。值必须在 [0, count] 区间。
 		</p>
 		<p>
-			[page:Matrix4 matrix]: This 4x4 matrix will be set to the local transformation matrix of the defined instance.
+			[page:Matrix4 matrix]: 该4x4矩阵将会被设为已定义实例的本地变换矩阵。
 		</p>
 		<p>
-			Get the local transformation matrix of the defined instance.
+			获得已定义实例的本地变换矩阵。
 		</p>
 
 		<h3>[method:null setMatrixAt]( [param:Integer index], [param:Matrix4 matrix] )</h3>
 		<p>
-			[page:Integer index]: The index of an instance. Values have to be in the range [0, count].
+			[page:Integer index]: 实例的索引。值必须在 [0, count] 区间。
 		</p>
 		<p>
-			[page:Matrix4 matrix]: A 4x4 matrix representing the local transformation of a single instance.
+			[page:Matrix4 matrix]: 一个4x4矩阵,表示单个实例本地变换。
 		</p>
 		<p>
-			Sets the given local transformation matrix to the defined instance.
+			设置给定的本地变换矩阵到已定义的实例。
 		</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		<p>
 			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 4 - 0
docs/api/zh/objects/LOD.html

@@ -85,6 +85,10 @@
 			返回一个LOD对象及其所关联的在特定距离中的物体。
 		</p>
 
+		<h3>[method:integer getCurrentLevel]()</h3>
+		<p>
+		Get the currently active LOD level. As index of the levels array.
+		</p>
 
 		<h3>[method:Object3D getObjectForDistance]( [param:Float distance] )</h3>
 		<p>

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

@@ -14,7 +14,7 @@
 
 		<p class="desc">
 			表示基于以三角形为[link:https://en.wikipedia.org/wiki/Polygon_mesh polygon mesh](多边形网格)的物体的类。
-		  	同时也作为其他类的基类,例如[page:SkinnedMesh]。
+			同时也作为其他类的基类,例如[page:SkinnedMesh]。
 		</p>
 
 
@@ -49,7 +49,7 @@
 
 		<h3>[property:Material material]</h3>
 		<p>
-			由[page:Material]基类或者一个包含材质的数组派生而来的材质实例,定义了物体的外观。默认值是一个具有随机颜色的[page:MeshBasicMaterial]。
+			由[page:Material]基类或者一个包含材质的数组派生而来的材质实例,定义了物体的外观。默认值是一个[page:MeshBasicMaterial]。
 		</p>
 
 		<h3>[property:Array morphTargetInfluences]</h3>

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

@@ -27,7 +27,7 @@
 	<p>
 		[page:Geometry geometry] —— (可选)是一个[page:Geometry]或者[page:BufferGeometry]的实例,默认值是一个新的[page:BufferGeometry]。
 		<br />
-		[page:Material material] —— (可选) 是一个对象,默认值是一个具有随机颜色的新的[page:PointsMaterial]。
+		[page:Material material] —— (可选) 是一个对象,默认值是一个[page:PointsMaterial]。
 	</p>
 
 
@@ -42,7 +42,7 @@
 
 	<h3>[property:Material material]</h3>
 	<p>
-		[page:Material]的实例。定义了物体的外观。默认值是一个具有随机颜色的[page:PointsMaterial]。
+		[page:Material]的实例。定义了物体的外观。默认值是一个的[page:PointsMaterial]。
 	</p>
 
 	<h3>[property:Array morphTargetInfluences]</h3>

+ 9 - 9
docs/api/zh/renderers/WebGL1Renderer.html

@@ -13,33 +13,33 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-		Since r118 [page:WebGLRenderer] automatically uses a WebGL 2 rendering context. When upgrading an existing project to
-		=> r118, applications might break because of two reasons:
+		自r118起,[page:WebGLRenderer]会自动使用 WebGL 2 渲染上下文。当升级一个已存在的项目到 => r118 ,
+		应用程序可能会因为下列两种原因而损坏:
 
 		<ul>
-			<li>Custom shader code needs to be GLSL 3.0 conform.</li>
+			<li>自定义着色器代码必须符合GLSL 3.0。</li>
 			<li>WebGL 1 extension checks have to be changed.</li>
 		</ul>
 
-		If you can't afford the time to upgrade your code but still want to use the latest version, you can use [name]. This
-		version of the renderer will enforce a WebGL 1 rendering context.
+		如果你不能够花时间来升级你的代码,但仍然想要使用最新版本,那你就可以使用[name]。
+		这一版本的渲染器会强制使用 WebGL 1 渲染上下文。
 		</p>
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 		<h3>[name]( [param:Object parameters] )</h3>
 		<p>
 		Creates a new [name].
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 		<p>See the base [page:WebGLRenderer] class for common properties.</p>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 		<p>See the base [page:WebGLRenderer] class for common methods.</p>
 
-		<h2>Source</h2>
+		<h2>源码</h2>
 
 		<p>
 			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 1 - 1
docs/api/zh/renderers/WebGLRenderTarget.html

@@ -34,7 +34,7 @@
 		[page:Constant minFilter] - 默认是[page:Textures LinearFilter]. <br />
 		[page:Constant format] - 默认是[page:Textures RGBAFormat]. <br />
 		[page:Constant type] - 默认是[page:Textures UnsignedByteType]. <br />
-		[page:Number anisotropy] - 默认是*1*. 参见[page:Texture.anistropy]<br />
+		[page:Number anisotropy] - 默认是*1*. 参见[page:Texture.anisotropy]<br />
 		[page:Constant encoding] - 默认是[page:Textures LinearEncoding]. <br />
 		[page:Boolean depthBuffer] - 默认是*true*. 如果不需要就设为false <br />
 		[page:Boolean stencilBuffer] - default is *false*. Set this to true if you need it.<br /><br />

+ 4 - 4
docs/api/zh/renderers/WebGLRenderer.html

@@ -363,7 +363,7 @@
 
 		<h3>[method:null render]( [param:Object3D scene], [param:Camera camera] )</h3>
 		<p>
-			用相机([page:Camera camera])渲染一个场景([page:Scene scene])<br />
+			用相机([page:Camera camera])渲染一个场景([page:Scene scene])或是其它类型的[page:Object3D object]。<br />
 
 			渲染一般是在canvas上完成的,或者是[page:WebGLRenderTarget renderTarget](如果有指定)<br />
 
@@ -376,10 +376,10 @@
 		<p>使用相机和指定材质渲染缓冲几何组。</p>
 
 		<h3>[method:null renderBufferImmediate]( [param:Object3D object], [param:WebGLProgram program] )</h3>
-		<p>object - 一个[page:Object3D]实例<br />
-		program - 一个[page:WebGLProgram]实例<br />
+		<p>object - an instance of [page:Object3D]<br />
+		program - an instance of [page:WebGLProgram]<br />
 
-		渲染即使缓冲,由renderObjectImmediate对象调用
+		Renders an instance of [page:ImmediateRenderObject],由renderObjectImmediate对象调用。
 		</p>
 
 		<h3>[method:null setAnimationLoop]( [param:Function callback] )</h3>

+ 3 - 1
docs/api/zh/renderers/shaders/UniformsUtils.html

@@ -10,7 +10,9 @@
 	<body>
 		<h1>[name]</h1>
 
-		<p class="desc">Uniform工具. 支持uniform变量的合并和克隆</p>
+		<p class="desc">
+			Provides utility functions for managing uniforms.
+		</p>
 
 		<h2>方法</h2>
 

+ 6 - 5
docs/api/zh/scenes/Scene.html

@@ -12,7 +12,7 @@
 		<h1>场景([name])</h1>
 
 		<p class="desc">
-			场景允许你在什么地方、摆放什么东西来交给three.js来渲染,这是你放置物体、灯光和摄像机的地方。</p>
+			场景能够让你在什么地方、摆放什么东西来交给three.js来渲染,这是你放置物体、灯光和摄像机的地方。</p>
 
 
 		<h2>构造器</h2>
@@ -34,14 +34,15 @@
 
 		<h3>[property:Object background]</h3>
 		<p>
-		If not null, sets the background used when rendering the scene, and is always rendered first.
-		Can be set to a [page:Color] which sets the clear color, a [page:Texture] covering the canvas, a cubemap as a [page:CubeTexture] or [page:WebGLCubeRenderTarget] or an equirectangular as a [page:Texture] . Default is null.
+		若不为空,在渲染场景的时候将设置背景,且背景总是首先被渲染的。
+		可以设置一个用于的“clear”的[page:Color](颜色)、一个覆盖canvas的[page:Texture](纹理),
+		或是 a cubemap as a [page:CubeTexture] or [page:WebGLCubeRenderTarget] or an equirectangular as a [page:Texture]。默认值为null。
 		</p>
 
 		<h3>[property:Texture environment]</h3>
 		<p>
-		If not null, this texture is set as the environment map for all physical materials in the scene.
-		However, it's not possible to overwrite an existing texture assigned to [page:MeshStandardMaterial.envmap]. Default is null.
+    若该值不为null,则该纹理贴图将会被设为场景中所有物理材质的环境贴图。
+    然而,该属性不能够覆盖已存在的、已分配给 [page:MeshStandardMaterial.envMap] 的贴图。默认为null。
 		</p>
 
 		<h3>[property:Fog fog]</h3>

+ 6 - 3
docs/api/zh/textures/CubeTexture.html

@@ -42,12 +42,15 @@
 
 		<h2>属性</h2>
 
-		<h3>请参阅[page:Texture]页面。</h3>
+		<p>
+		See the base [page:Texture Texture] class for common properties.
+		</p>
 
 		<h2>方法</h2>
 
-
-		<h3>请参阅[page:Texture]页面。</h3>
+		<p>
+		See the base [page:Texture Texture] class for common methods.
+		</p>
 
 		<h2>源代码</h2>
 

+ 15 - 8
docs/api/zh/textures/DataTexture.html

@@ -12,18 +12,18 @@
 
 		<h1>[name]</h1>
 
-		<p class="desc">Creates a texture directly from raw data, width and height.</p>
+		<p class="desc">从原始数据(raw data)、宽(width)、高(height)来直接创建一个纹理贴图。</p>
 
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 		<h3>[name]( data, width, height, format, type, mapping, wrapS, wrapT, magFilter, minFilter, anisotropy )</h3>
 		<p>
-			The data argument must be an [link:https://developer.mozilla.org/en-US/docs/Web/API/ArrayBufferView ArrayBufferView].
-			Further parameters correspond to the properties inherited from [page:Texture], where both magFilter and minFilter default to THREE.NearestFilter. The properties flipY and generateMipmaps are intially set to false.
+			data 参数必须是一个 [link:https://developer.mozilla.org/en-US/docs/Web/API/ArrayBufferView ArrayBufferView] 。
+			其他参数对应于继承自 [page:Texture] 的属性,其中 magFilter 与 minFilter 默认为 THREE.NearestFilter。属性 flipY 和 generateMipmaps 初始设为 false。
 		</p>
 		<p>
-			The interpretation of the data depends on type and format:
+			数据的解释取决于type与format:
 			If the type is THREE.UnsignedByteType, a Uint8Array will be useful for addressing the texel data.
 			If the format is THREE.RGBAFormat, data needs four values for one texel; Red, Green, Blue and Alpha (typically the opacity). Similarly, THREE.RGBFormat specifies a format where only three values are used for each texel.<br />
 
@@ -59,17 +59,24 @@
 		var texture = new THREE.DataTexture( data, width, height, THREE.RGBFormat );
 		</code>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
+
+		<p>
+		See the base [page:Texture Texture] class for common properties.
+		</p>
 
 		<h3>[property:Image image]</h3>
 		<p>
 		Overridden with a record type holding data, width and height.
 		</p>
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
+		<p>
+		See the base [page:Texture Texture] class for common methods.
+		</p>
 
-		<h2>Source</h2>
+		<h2>源码</h2>
 
 		<p>
 			[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 8 - 0
docs/api/zh/textures/DataTexture3D.html

@@ -39,6 +39,14 @@
 		共有属性请参见其基类[page:Texture Texture]。
 		</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>方法</h2>
 
 		<p>

+ 12 - 1
docs/api/zh/textures/Texture.html

@@ -117,6 +117,17 @@
 		请参阅[page:Textures texture constants]页面来了解其它格式。
 		</p>
 
+		<h3>[property:String internalFormat]</h3>
+		<p>
+		The default value is obtained using a combination of [page:Texture.format .format] and
+		[page:Texture.type .type].<br />
+
+		The GPU format allows the developer to specify how the data is going to be
+		stored on the GPU.<br /><br />
+
+		See the [page:Textures texture constants] page for details regarding all supported internal formats.
+		</p>
+
 		<h3>[property:number type]</h3>
 		<p>
 			这个值必须与[page:Texture.format .format]相对应。默认值为[page:Textures THREE.UnsignedByteType],
@@ -178,7 +189,7 @@
 
 		<h3>[property:boolean premultiplyAlpha]</h3>
 		<p>
-		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 />
+		If set to *true*, the alpha channel, if present, is multiplied into the color channels when the texture is uploaded to the GPU. Default 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].

+ 5 - 5
docs/examples/en/controls/TrackballControls.html

@@ -86,12 +86,12 @@
 
 		<h3>[property:Number maxDistance]</h3>
 		<p>
-			 How far you can zoom in. Default is *Infinity*.
+			How far you can zoom out. Default is *Infinity*.
 		</p>
 
 		<h3>[property:Number minDistance]</h3>
 		<p>
-			 How far you can zoom in. Default is *0*.
+			How far you can zoom in. Default is *0*.
 		</p>
 
 		<h3>
@@ -99,9 +99,9 @@
 		<p>
 			This object contains references to the mouse actions used by the controls.
 			<ul>
-				<li>.LEFT is assinged with *THREE.MOUSE.ROTATE*</li>
-				<li>.MIDDLE is assinged with *THREE.MOUSE.ZOOM*</li>
-				<li>.RIGHT is assinged with *THREE.MOUSE.PAN*</li>
+				<li>.LEFT is assigned with *THREE.MOUSE.ROTATE*</li>
+				<li>.MIDDLE is assigned with *THREE.MOUSE.ZOOM*</li>
+				<li>.RIGHT is assigned with *THREE.MOUSE.PAN*</li>
 			</ul>
 		</p>
 

+ 17 - 17
docs/examples/zh/controls/DeviceOrientationControls.html

@@ -9,78 +9,78 @@
 	</head>
 	<body>
 
-		<h1>[name]</h1>
+		<h1>设备朝向控制器([name]</h1>
 
 		<p class="desc">
-			Can be used to orient the camera based on the mobile device's orientation.
+			通过使用设备朝向来确定摄像机的朝向。
 		</p>
 
 		<h2>例子</h2>
 
 		<p>[example:misc_controls_deviceorientation misc / controls / deviceorientation ]</p>
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 		<h3>[name]( [param:Camera object] )</h3>
 		<p>
 			<p>
-				[page:Camera object]: The camera to be controlled.
+				[page:Camera object]: 被控制的摄像机。
 			</p>
 			<p>
-				Creates a new instance of [name].
+				创建一个新的 [name] 实例。
 			</p>
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Number alphaOffset]</h3>
 		<p>
-			The alpha offset in radians. Default is *0*.
+			alpha角偏移量,以弧度表示,默认为*0*。
 		</p>
 
 		<h3>[property:Object deviceOrientation]</h3>
 		<p>
-			The current *deviceorientation* event object.
+			当前 *deviceorientation* 事件的对象。
 		</p>
 
 		<h3>[property:Boolean enabled]</h3>
 		<p>
-			Whether or not the controls are enabled.
+			是否启用控制器。
 		</p>
 
 		<h3>[property:Camera object]</h3>
 		<p>
-			The camera to be controlled.
+			被控制的摄像机。
 		</p>
 
 		<h3>[property:Number screenOrientation]</h3>
 		<p>
-			The orientation in degrees (in 90-degree increments) of the viewport relative to the device's natural orientation. Default is *0*.
+			相对于设备自然朝向的视口朝向,以角度表示(增量为90)。默认为*0*。
 		</p>
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 		<h3>[method:null connect] ()</h3>
 		<p>
-			Adds the event listeners of the controls and enables it.
+			增加控制器的事件监听,并启用控制器。
 		</p>
 
 		<h3>[method:null disconnect] ()</h3>
 		<p>
-			Removes the event listeners of the controls and disables it.
+			移除控制器的事件监听,并禁用控制器。
 		</p>
 
 		<h3>[method:null dispose] ()</h3>
 		<p>
-			Should be called if the controls is no longer required.
+			若不再需要该控制器,则应当调用此函数。
 		</p>
 
 		<h3>[method:null update] ()</h3>
 		<p>
-			Updates the controls. Usually called in the animation loop.
+			更新控制器,常被用在动画循环中。
 		</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		<p>
 			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/controls/DeviceOrientationControls.js examples/jsm/controls/DeviceOrientationControls.js]

+ 18 - 18
docs/examples/zh/controls/DragControls.html

@@ -10,10 +10,10 @@
 	<body>
 		[page:EventDispatcher] &rarr;
 
-		<h1>[name]</h1>
+		<h1>拖放控制器([name]</h1>
 
 		<p class="desc">
-		This class can be used to provide a drag'n'drop interaction.
+		该类被用于提供一个拖放交互。
 		</p>
 
 		<h2>代码示例</h2>
@@ -45,51 +45,51 @@
 		<h3>[name]( [param:Array objects], [param:Camera camera], [param:HTMLDOMElement domElement] )</h3>
 		<p>
 			<p>
-				[page:Array objects]: An array of draggable 3D objects.
+			[page:Array objects]: 一组可被拖拽的3D Objects。
 			</p>
 			<p>
-			[page:Camera camera]: The camera of the rendered scene.
+			[page:Camera camera]: 渲染场景的摄像机。
 			</p>
 			<p>
-			[page:HTMLDOMElement domElement]: The HTML element used for event listeners.
+			[page:HTMLDOMElement domElement]: 用于事件监听的HTML元素。
 			</p>
 			<p>
-				Creates a new instance of [name].
+				创建一个新的 [name] 实例。
 			</p>
 		</p>
 
-		<h2>Events</h2>
+		<h2>事件</h2>
 
 		<h3>dragstart</h3>
 		<p>
-			Fires when the user starts to drag a 3D object.
+			当用户开始拖拽3D Objects时触发。
 		</p>
 
 		<h3>drag</h3>
 		<p>
-			Fires when the user drags a 3D object.
+			当用户拖拽3D Objects时触发。
 		</p>
 
 		<h3>dragend</h3>
 		<p>
-			Fires when the user has finished dragging a 3D object.
+			当用户开始完成3D Objects时触发。
 		</p>
 
 		<h3>hoveron</h3>
 		<p>
-			Fires when the pointer is moved onto a 3D object, or onto one of its children.
+			当指针移动到一个3D Object或者其某个子级上时触发。
 		</p>
 
 		<h3>hoveroff</h3>
 		<p>
-			Fires when the pointer is moved out of a 3D object.
+			当指针移出一个3D Object时触发。
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Boolean enabled]</h3>
 		<p>
-			Whether or not the controls are enabled.
+			是否启用控制器。
 		</p>
 
 		<h3>[property:Boolean transformGroup]</h3>
@@ -100,21 +100,21 @@
 
 		<h2>Methods</h2>
 
-		<p>See the base [page:EventDispatcher] class for common methods.</p>
+		<p>共有方法请参见其基类[page:EventDispatcher]。</p>
 
 		<h3>[method:null activate] ()</h3>
 		<p>
-			Adds the event listeners of the controls.
+			添加控制器的事件监听。
 		</p>
 
 		<h3>[method:null deactivate] ()</h3>
 		<p>
-			Removes the event listeners of the controls.
+			移除控制器的事件监听。
 		</p>
 
 		<h3>[method:null dispose] ()</h3>
 		<p>
-			Should be called if the controls is no longer required.
+			若不再需要该控制器,则应当调用此函数。
 		</p>
 
 		<h3>[method:Array getObjects] ()</h3>

+ 29 - 30
docs/examples/zh/controls/FirstPersonControls.html

@@ -9,57 +9,56 @@
 	</head>
 	<body>
 
-		<h1>[name]</h1>
+		<h1>第一人称控制器([name]</h1>
 
 		<p class="desc">
-			This class is an alternative implementation of [page:FlyControls].
+			该类是 [page:FlyControls] 的另一个实现。
 		</p>
 
 		<h2>例子</h2>
 
 		<p>[example:webgl_geometry_terrain webgl / geometry / terrain ]</p>
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 		<h3>[name]( [param:Camera object], [param:HTMLDOMElement domElement] )</h3>
 		<p>
 			<p>
-				[page:Camera object]: The camera to be controlled.
+				[page:Camera object]: 被控制的摄像机。
 			</p>
 			<p>
-				[page:HTMLDOMElement domElement]: The HTML element used for event listeners.
+				[page:HTMLDOMElement domElement]: 用于事件监听的HTML元素。
 			</p>
 			<p>
-				Creates a new instance of [name].
+				创建一个新的 [name] 实例。
 			</p>
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Boolean activeLook]</h3>
 		<p>
-			Whether or not it's possible to look around. Default is *true*.
+			是否能够环视四周。默认为*true*。
 		</p>
 
 		<h3>[property:Boolean autoForward]</h3>
 		<p>
-			Whether or not the camera is automatically moved forward. Default is *false*.
+			摄像机是否自动向前移动。默认为*false*。
 		</p>
 
 		<h3>[property:Boolean constrainVertical]</h3>
 		<p>
-			Whether or not looking around is vertically constrained by [[page:.verticalMin], [page:.verticalMax]]. Default is *false*.
+			垂直环视是否约束在[[page:.verticalMin], [page:.verticalMax]]之间。默认值为*false*。
 		</p>
 
 		<h3>[property:HTMLDOMElement domElement]</h3>
 		<p>
-			The HTMLDOMElement used to listen for mouse / touch events. This must be passed in the constructor; changing it here will
-			not set up new event listeners.
+			该 HTMLDOMElement 用于监听鼠标/触摸事件,该属性必须在构造函数中传入。在此处改变它将不会设置新的事件监听。
 		</p>
 
 		<h3>[property:Boolean enabled]</h3>
 		<p>
-			Whether or not the controls are enabled. Default is *true*.
+			是否启用控制器。默认为*true*。
 		</p>
 
 		<h3>[property:Number heightCoef]</h3>
@@ -79,55 +78,55 @@
 
 		<h3>[property:Boolean heightSpeed]</h3>
 		<p>
-			Whether or not the camera's height influences the forward movement speed. Default is *false*.
-			Use the properties [page:.heightCoef], [page:.heightMin] and [page:.heightMax] for configuration.
+			摄像机的高度是否影响向前移动的速度。默认值为*false*。
+			使用属性 [page:.heightCoef]、 [page:.heightMin] 和 [page:.heightMax] 来进行配置。
 		</p>
 
 		<h3>[property:Boolean lookVertical]</h3>
 		<p>
-			Whether or not it's possible to vertically look around. Default is *true*.
+			是否能够垂直环视。默认为*true*。
 		</p>
 
 		<h3>[property:Number lookSpeed]</h3>
 		<p>
-			The look around speed. Default is *0.005*.
+			环视速度。默认为*0.005*。
 		</p>
 
 		<h3>[property:Boolean mouseDragOn]</h3>
 		<p>
-			Whether or not the mouse is pressed down. Read-only property.
+			鼠标是否被按下。只读属性。
 		</p>
 
 		<h3>[property:Number movementSpeed]</h3>
 		<p>
-			The movement speed. Default is *1*.
+			移动速度。默认为*1*。
 		</p>
 
 		<h3>[property:Camera object]</h3>
 		<p>
-			The camera to be controlled.
+			被控制的摄像机。
 		</p>
 
 		<h3>[property:Number verticalMax]</h3>
 		<p>
-			How far you can vertically look around, upper limit. Range is 0 to Math.PI radians. Default is *Math.PI*.
+			你能够垂直环视角度的上限。范围在 0 到 Math.PI 弧度之间。默认为*Math.PI*。
 		</p>
 
 		<h3>[property:Number verticalMin]</h3>
 		<p>
-			How far you can vertically look around, lower limit. Range is 0 to Math.PI radians. Default is *0*.
+			你能够垂直环视角度的下限。范围在 0 到 Math.PI 弧度之间。默认为*0*。
 		</p>
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 		<h3>[method:null dispose] ()</h3>
 		<p>
-			Should be called if the controls is no longer required.
+			若不再需要该控制器,则应当调用此函数。
 		</p>
 
 		<h3>[method:null handleResize] ()</h3>
 		<p>
-			Should be called if the application window is resized.
+			若应用程序窗口大小发生改变,则应当调用此函数。
 		</p>
 
 		<h3>[method:FirstPersonControls lookAt]( [param:Vector3 vector] )<br />
@@ -135,14 +134,14 @@
 		<p>
 			<p>
 				<p>
-					vector - A vector representing the target position.
+					vector - 一个表示目标位置的向量。
 				</p>
 				<p>
-					Optionally, the x, y, z components of the world space position.
+					或者,世界空间位置的x、y、z分量。
 				</p>
 			</p>
 			<p>
-				Ensures the controls orient the camera towards the defined target position.
+				确保控制器将相机方向朝向到所传入的目标的位置。
 			</p>
 		</p>
 
@@ -152,11 +151,11 @@
 				[page:Number delta]: Time delta value.
 			</p>
 			<p>
-				Updates the controls. Usually called in the animation loop.
+				更新控制器,常被用在动画循环中。
 			</p>
 		</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		<p>
 			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/controls/FirstPersonControls.js examples/jsm/controls/FirstPersonControls.js]

+ 18 - 19
docs/examples/zh/controls/FlyControls.html

@@ -9,70 +9,69 @@
 	</head>
 	<body>
 
-		<h1>[name]</h1>
+		<h1>飞行控制器([name]</h1>
 
 		<p class="desc">
-			[name] enables a navigation similar to fly modes in DCC tools like Blender. You can arbitrarily transform the camera in
-			3D space without any limitations (e.g. focus on a specific target).
+			[name] 启用了一种类似于数字内容创建工具(例如Blender)中飞行模式的导航方式。
+			你可以在3D空间中任意变换摄像机,并且无任何限制(例如,专注于一个特定的目标)。
 		</p>
 
 		<h2>例子</h2>
 
 		<p>[example:misc_controls_fly misc / controls / fly ]</p>
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 		<h3>[name]( [param:Camera object], [param:HTMLDOMElement domElement] )</h3>
 		<p>
 			<p>
-				[page:Camera object]: The camera to be controlled.
+				[page:Camera object]: 被控制的摄像机。
 			</p>
 			<p>
-				[page:HTMLDOMElement domElement]: The HTML element used for event listeners.
+				[page:HTMLDOMElement domElement]: 用于事件监听的HTML元素。
 			</p>
 			<p>
-				Creates a new instance of [name].
+				创建一个新的 [name] 实例。
 			</p>
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Boolean autoForward]</h3>
 		<p>
-			If set to *true*, the camera automatically moves forward (and does not stop) when initially translated. Default is *false*.
+			若该值设为*true*,初始变换后,摄像机将自动向前移动(且不会停止)。默认为*false*。
 		</p>
 
 		<h3>[property:HTMLDOMElement domElement]</h3>
 		<p>
-			The HTMLDOMElement used to listen for mouse / touch events. This must be passed in the constructor; changing it here will
-			not set up new event listeners.
+			该 HTMLDOMElement 用于监听鼠标/触摸事件,该属性必须在构造函数中传入。在此处改变它将不会设置新的事件监听。
 		</p>
 
 		<h3>[property:Boolean dragToLook]</h3>
 		<p>
-			If set to *true*, you can only look around by performing a drag interaction. Default is *false*.
+			若该值设为*true*,你将只能通过执行拖拽交互来环视四周。默认为*false*。
 		</p>
 
 		<h3>[property:Number movementSpeed]</h3>
 		<p>
-			The movement speed. Default is *1*.
+			移动速度,默认为*1*。
 		</p>
 
 		<h3>[property:Camera object]</h3>
 		<p>
-			The camera to be controlled.
+			被控制的摄像机。
 		</p>
 
 		<h3>[property:Number rollSpeed]</h3>
 		<p>
-			The rotation speed. Default is *0.005*.
+			旋转速度。默认为*0.005*。
 		</p>
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 		<h3>[method:null dispose] ()</h3>
 		<p>
-			Should be called if the controls is no longer required.
+			若不再需要该控制器,则应当调用此函数。
 		</p>
 
 		<h3>[method:null update] ( [param:Number delta] )</h3>
@@ -81,11 +80,11 @@
 				[page:Number delta]: Time delta value.
 			</p>
 			<p>
-				Updates the controls. Usually called in the animation loop.
+				更新控制器,常被用在动画循环中。
 			</p>
 		</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		<p>
 			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/controls/FlyControls.js examples/jsm/controls/FlyControls.js]

+ 7 - 8
docs/examples/zh/controls/OrbitControls.html

@@ -57,7 +57,7 @@
 		<p>
 			[page:Camera object]: (必须)将要被控制的相机。该相机不允许是其他任何对象的子级,除非该对象是场景自身。<br><br>
 
-			[page:HTMLDOMElement domElement]: The HTML element used for event listeners.
+			[page:HTMLDOMElement domElement]: 用于事件监听的HTML元素。
 		</p>
 
 		<h2>Events</h2>
@@ -77,7 +77,7 @@
 			Fires when an interaction has finished.
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Boolean autoRotate]</h3>
 		<p>
@@ -100,8 +100,7 @@
 
 		<h3>[property:HTMLDOMElement domElement]</h3>
 		<p>
-			用于监听鼠标事件或触摸事件的HTMLDOMElement(DOM元素)。该值必须在构造函数中进行传入;
-			在此更改它将不会设置新的事件监听器
+			该 HTMLDOMElement 用于监听鼠标/触摸事件,该属性必须在构造函数中传入。在此处改变它将不会设置新的事件监听。
 		</p>
 
 		<h3>[property:Boolean enabled]</h3>
@@ -173,7 +172,7 @@ controls.keys = {
 
 		<h3>[property:Float maxZoom]</h3>
 		<p>
-			你能够将相机缩小多少( 仅适用于[page:OrthographicCamera] only ),其默认值为Infinity。
+			你能够将相机缩小多少(仅适用于[page:OrthographicCamera]),其默认值为Infinity。
 		</p>
 
 		<h3>[property:Float minAzimuthAngle]</h3>
@@ -193,13 +192,13 @@ controls.keys = {
 
 		<h3>[property:Float minZoom]</h3>
 		<p>
-			你能够将相机放大多少( 仅适用于[page:OrthographicCamera] ),其默认值为0。
+			你能够将相机放大多少(仅适用于[page:OrthographicCamera]),其默认值为0。
 		</p>
 
 		<h3>
 			[property:Object mouseButtons]</h3>
 		<p>
-			这一对象包含了对用于控制的鼠标按钮的引用。
+			该对象包含由控件所使用的鼠标操作的引用。
 			<code>
 controls.mouseButtons = {
 	LEFT: THREE.MOUSE.ROTATE,
@@ -226,7 +225,7 @@ controls.mouseButtons = {
 
 		<h3>[property:Float rotateSpeed]</h3>
 		<p>
-			旋转的速度,其默认值为1.
+			旋转的速度,其默认值为1
 		</p>
 
 		<h3>[property:Boolean screenSpacePanning]</h3>

+ 25 - 26
docs/examples/zh/controls/PointerLockControls.html

@@ -10,11 +10,11 @@
 	<body>
 		[page:EventDispatcher] &rarr;
 
-		<h1>[name]</h1>
+		<h1>指针锁定控制器([name]</h1>
 
 		<p class="desc">
-		The implementation of this class is based on the [link:https://developer.mozilla.org/en-US/docs/Web/API/Pointer_Lock_API Pointer Lock API].
-		[name] is a perfect choice for first person 3D games.
+		该类的实现是基于[link:https://developer.mozilla.org/en-US/docs/Web/API/Pointer_Lock_API Pointer Lock API]的。
+		对于第一人称3D游戏来说, [name] 是一个非常完美的选择。
 		</p>
 
 		<h2>代码示例</h2>
@@ -46,45 +46,44 @@
 		<h3>[name]( [param:Camera camera], [param:HTMLDOMElement domElement] )</h3>
 		<p>
 			<p>
-			[page:Camera camera]: The camera of the rendered scene.
+			[page:Camera camera]: 渲染场景的摄像机。
 			</p>
 			<p>
-			[page:HTMLDOMElement domElement]: The HTML element used for event listeners.
+			[page:HTMLDOMElement domElement]: 用于事件监听的HTML元素。
 			</p>
 			<p>
-				Creates a new instance of [name].
+				创建一个新的 [name] 实例。
 			</p>
 		</p>
 
-		<h2>Events</h2>
+		<h2>事件</h2>
 
 		<h3>change</h3>
 		<p>
-			Fires when the user moves the mouse.
+			当用户移动鼠标时触发。
 		</p>
 
 		<h3>lock</h3>
 		<p>
-			Fires when the pointer lock status is "locked" (in other words: the mouse is captured).
+			当指针状态为 “locked” (即鼠标被捕获)时触发。
 		</p>
 
 		<h3>unlock</h3>
 		<p>
-			Fires when the pointer lock status is "unlocked" (in other words: the mouse is not captured anymore).
+			当指针状态为 “unlocked” (即鼠标不再被捕获)时触发。
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:HTMLDOMElement domElement]</h3>
 		<p>
-			The HTMLDOMElement used to listen for mouse / touch events. This must be passed in the constructor; changing it here will
-			not set up new event listeners.
+			该 HTMLDOMElement 用于监听鼠标/触摸事件,该属性必须在构造函数中传入。在此处改变它将不会设置新的事件监听。
 		</p>
 
 
 		<h3>[property:Boolean isLocked]</h3>
 		<p>
-			Whether or not the controls are locked.
+			控制器是否被锁定。
 		</p>
 
 		<h3>[property:Float maxPolarAngle]</h3>
@@ -99,59 +98,59 @@
 
 		<h2>Methods</h2>
 
-		<p>See the base [page:EventDispatcher] class for common methods.</p>
+		<p>共有方法请参见其基类[page:EventDispatcher]。</p>
 
 		<h3>[method:null connect] ()</h3>
 		<p>
-			Adds the event listeners of the controls.
+			添加控制器的事件监听。
 		</p>
 
 		<h3>[method:null disconnect] ()</h3>
 		<p>
-			Removes the event listeners of the controls.
+			移除控制器的事件监听。
 		</p>
 
 		<h3>[method:Vector3 getDirection] ( [param:Vector3 target] )</h3>
 		<p>
 			<p>
-				[page:Vector3 target]: The target vector.
+				[page:Vector3 target]: 目标向量。
 			</p>
 			<p>
-				Returns the look direction of the camera.
+				返回摄像机的观看方向。
 			</p>
 		</p>
 
 		<h3>[method:null lock] ()</h3>
 		<p>
-			Activates the pointer lock.
+			激活指针锁定。
 		</p>
 
 		<h3>[method:null moveForward] ( [param:Number distance] )</h3>
 		<p>
 			<p>
-				[page:Number distance]: The signed distance.
+				[page:Number distance]: 距离(区分正负)。
 			</p>
 			<p>
-				Moves the camera forward parallel to the xz-plane. Assumes camera.up is y-up.
+				平行于xz平面,向前移动摄像机。假定camera.up是y朝上。
 			</p>
 		</p>
 
 		<h3>[method:null moveRight] ( [param:Number distance] )</h3>
 		<p>
 			<p>
-				[page:Number distance]: The signed distance.
+				[page:Number distance]: 距离(区分正负)。
 			</p>
 			<p>
-				Moves the camera sidewards parallel to the xz-plane.
+				平行于xz平面,向侧面移动摄像机。
 			</p>
 		</p>
 
 		<h3>[method:null unlock] ()</h3>
 		<p>
-			Exits the pointer lock.
+			退出指针锁定。
 		</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		<p>
 			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/controls/PointerLockControls.js examples/jsm/controls/PointerLockControls.js]

+ 49 - 50
docs/examples/zh/controls/TrackballControls.html

@@ -10,12 +10,12 @@
 	<body>
 		[page:EventDispatcher] &rarr;
 
-		<h1>[name]</h1>
+		<h1>轨迹球控制器([name]</h1>
 
 		<p class="desc">
 			<p>
-				[name] is similar to [page:OrbitControls]. However, it does not maintain a constant camera [page:Object3D.up up] vector.
-				That means if the camera orbits over the “north” and “south” poles, it does not flip to stay "right side up".
+				[name] 与 [page:OrbitControls] 相类似。然而,它不能恒定保持摄像机的[page:Object3D.up up]向量。
+				这意味着,如果摄像机绕过“北极”和“南极”,则不会翻转以保持“右侧朝上”。
 			</p>
 		</p>
 
@@ -23,182 +23,181 @@
 
 		<p>[example:misc_controls_trackball misc / controls / trackball ]</p>
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 		<h3>[name]( [param:Camera camera], [param:HTMLDOMElement domElement] )</h3>
 		<p>
 			<p>
-				[page:Camera camera]: The camera of the rendered scene.
+				[page:Camera camera]: 渲染场景的摄像机。
 			</p>
 			<p>
-				[page:HTMLDOMElement domElement]: The HTML element used for event listeners.
+				[page:HTMLDOMElement domElement]: 用于事件监听的HTML元素。
 			</p>
 			<p>
-				Creates a new instance of [name].
+				创建一个新的 [name] 实例。
 			</p>
 		</p>
 
-		<h2>Events</h2>
+		<h2>事件</h2>
 
 		<h3>change</h3>
 		<p>
-			Fires when the camera has been transformed by the controls.
+			当摄像机被控制器变换后触发。
 		</p>
 
 		<h3>start</h3>
 		<p>
-			Fires when an interaction (e.g. touch) was initiated.
+			当交互(例如触摸)被初始化后触发。
 		</p>
 
 		<h3>end</h3>
 		<p>
-			Fires when an interaction has finished.
+			当交互完成后触发。
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:HTMLDOMElement domElement]</h3>
 		<p>
-			The HTMLDOMElement used to listen for mouse / touch events. This must be passed in the constructor; changing it here will
-			not set up new event listeners.
+			该 HTMLDOMElement 用于监听鼠标/触摸事件,该属性必须在构造函数中传入。在此处改变它将不会设置新的事件监听。
 		</p>
 
 		<h3>[property:Number dynamicDampingFactor]</h3>
 		<p>
-			Defines the intensity of damping. Only considered if [page:.staticMoving staticMoving] is set to *false*. Default is *0.2*.
+			设置阻尼的强度。仅在[page:.staticMoving staticMoving]设为*false*时考虑。默认为*0.2*。
 		</p>
 
 		<h3>[property:Boolean enabled]</h3>
 		<p>
-			Whether or not the controls are enabled.
+			是否启用控制器。
 		</p>
 
 		<h3>[property:Array keys]</h3>
 		<p>
-			This array holds keycodes for controlling interactions.
+			该数组包含用于控制交互的按键代码。
 			<ul>
-				<li>When the first defined key is pressed, all mouse interactions (left, middle, right) performs orbiting.</li>
-				<li>When the second defined key is pressed, all mouse interactions (left, middle, right) performs zooming.</li>
-				<li>When the third defined key is pressed, all mouse interactions (left, middle, right) performs panning.</li>
+				<li>当定义的第一个按键按下后,所有的鼠标交互(左/中/右键)表现为环绕。</li>
+				<li>当定义的第二个按键按下后,所有的鼠标交互(左/中/右键)表现为缩放。</li>
+				<li>当定义的第一个按键按下后,所有的鼠标交互(左/中/右键)表现为平移。</li>
 			</ul>
-			Default is *65, 83, 68* which represents A, S, D.
+			默认为*65, 83, 68*,分别表示A, S, D。
 		</p>
 
 		<h3>[property:Number maxDistance]</h3>
 		<p>
-			 How far you can zoom in. Default is *Infinity*.
+			你能够将相机向外移动多少,其默认值为*Infinity*。
 		</p>
 
 		<h3>[property:Number minDistance]</h3>
 		<p>
-			 How far you can zoom in. Default is *0*.
+			你能够将相机向内移动多少,其默认值为*0*。
 		</p>
 
 		<h3>
 			[property:Object mouseButtons]</h3>
 		<p>
-			This object contains references to the mouse actions used by the controls.
+			该对象包含由控件所使用的鼠标操作的引用。
 			<ul>
-				<li>.LEFT is assinged with *THREE.MOUSE.ROTATE*</li>
-				<li>.MIDDLE is assinged with *THREE.MOUSE.ZOOM*</li>
-				<li>.RIGHT is assinged with *THREE.MOUSE.PAN*</li>
+				<li>.LEFT 指定给 *THREE.MOUSE.ROTATE*</li>
+				<li>.MIDDLE 指定给 *THREE.MOUSE.ZOOM*</li>
+				<li>.RIGHT 指定给 *THREE.MOUSE.PAN*</li>
 			</ul>
 		</p>
 
 		<h3>[property:Boolean noPan]</h3>
 		<p>
-			Whether or not panning is disabled. Default is *false*.
+			是否禁用平移,默认为*false*。
 		</p>
 
 		<h3>[property:Boolean noRotate]</h3>
 		<p>
-			Whether or not rotation is disabled. Default is *false*.
+			是否禁用旋转,默认为*false*。
 		</p>
 
 		<h3>[property:Boolean noZoom]</h3>
 		<p>
-			Whether or not zooming is disabled. Default is *false*.
+			是否禁用缩放,默认为*false*。
 		</p>
 
 		<h3>[property:Camera object]</h3>
 		<p>
-			The camera being controlled.
+			正被控制的摄像机。
 		</p>
 
 		<h3>[property:Number panSpeed]</h3>
 		<p>
-			The zoom speed. Default is *0.3*.
+			平移的速度,其默认值为*0.3*。
 		</p>
 
 		<h3>[property:Number rotateSpeed]</h3>
 		<p>
-			The rotation speed. Default is *1.0*.
+			旋转的速度,其默认值为*1.0*。
 		</p>
 
 		<h3>[property:Object screen]</h3>
 		<p>
-			Represents the properties of the screen. Automatically set when [page:.handleResize handleResize]() is called.
+			表示屏幕的属性。在[page:.handleResize handleResize]()被调用时会自动设置。
 			<ul>
-				<li>left: Represents the offset in pixels to the screen's left boundary.</li>
-				<li>top: Represents the offset in pixels to the screen's top boundary.</li>
-				<li>width: Represents the screen width in pixels.</li>
-				<li>height: Represents the screen height in pixels.</li>
+				<li>left: 表示到屏幕左侧边界的偏移量(单位为像素)。</li>
+				<li>top: 表示到屏幕顶部边界的偏移量(单位为像素)。</li>
+				<li>width: 表示屏幕的宽度(单位为像素)。</li>
+				<li>height: 表示屏幕的高度(单位为像素)。</li>
 			</ul>
 		</p>
 
 		<h3>[property:Boolean staticMoving]</h3>
 		<p>
-			Whether or not damping is disabled. Default is *false*.
+			阻尼是否被禁用。默认为*false*。
 		</p>
 
 		<h3>[property:Number zoomSpeed]</h3>
 		<p>
-			The zoom speed. Default is *1.2*.
+			缩放的速度,其默认值为*1.2*。
 		</p>
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 		<h3>[method:null checkDistances] ()</h3>
 		<p>
-			Ensures the controls stay in the range [minDistance, maxDistance]. Called by [page:.update update]().
+			确保控制器位于 [minDistance, maxDistance] 范围内。由[page:.update update]()调用。
 		</p>
 
 		<h3>[method:null dispose] ()</h3>
 		<p>
-			Should be called if the controls is no longer required.
+			若不再需要该控制器,则应当调用此函数。
 		</p>
 
 		<h3>[method:null handleResize] ()</h3>
 		<p>
-			Should be called if the application window is resized.
+			若应用程序窗口大小发生改变,则应当调用此函数。
 		</p>
 
 		<h3>[method:null panCamera] ()</h3>
 		<p>
-			Performs panning if necessary. Called by [page:.update update]().
+			如有必要,执行平移。由[page:.update update]()调用。
 		</p>
 
 		<h3>[method:null reset] ()</h3>
 		<p>
-			Resets the controls to its initial state.
+			重置控制器到初始状态。
 		</p>
 
 		<h3>[method:null rotateCamera] ()</h3>
 		<p>
-			Rotates the camera if necessary. Called by [page:.update update]().
+			如有必要,旋转相机。由[page:.update update]()调用。
 		</p>
 
 		<h3>[method:null update] ()</h3>
 		<p>
-			Updates the controls. Usually called in the animation loop.
+			更新控制器,常被用在动画循环中。
 		</p>
 
 		<h3>[method:null zoomCamera] ()</h3>
 		<p>
-			Performs zooming if necessary. Called by [page:.update update]().
+			如有必要,执行缩放。由[page:.update update]()调用。
 		</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		<p>
 			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/controls/TrackballControls.js examples/jsm/controls/TrackballControls.js]

+ 50 - 51
docs/examples/zh/controls/TransformControls.html

@@ -10,214 +10,213 @@
 	<body>
 		[page:Object3D] &rarr;
 
-		<h1>[name]</h1>
+		<h1>变换控制器([name]</h1>
 
 		<p class="desc">
-			This class can be used to transform objects in 3D space by adapting a similar interaction model of DCC tools like Blender.
-			Unlike other controls, it is not intended to transform the scene's camera.<br /><br />
+			该类可提供一种类似于在数字内容创建工具(例如Blender)中对模型进行交互的方式,来在3D空间中变换物体。
+			和其他控制器不同的是,变换控制器不倾向于对场景摄像机的变换进行改变。<br /><br />
 
-			[name] expects that its attached 3D object is part of the scene graph.
+			[name] 期望其所附加的3D对象是场景图的一部分。
 		</p>
 
 		<h2>例子</h2>
 
 		<p>[example:misc_controls_transform misc / controls / transform ]</p>
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 		<h3>[name]( [param:Camera camera], [param:HTMLDOMElement domElement] )</h3>
 		<p>
 			<p>
-				[page:Camera camera]: The camera of the rendered scene.
+				[page:Camera camera]: 被控制的摄像机。
 			</p>
 			<p>
-				[page:HTMLDOMElement domElement]: The HTML element used for event listeners.
+				[page:HTMLDOMElement domElement]: 用于事件监听的HTML元素。
 			</p>
 			<p>
-				Creates a new instance of [name].
+				创建一个新的 [name] 实例。
 			</p>
 		</p>
 
-		<h2>Events</h2>
+		<h2>事件</h2>
 
 		<h3>change</h3>
 		<p>
-			Fires if any type of change (object or property change) is performed. Property changes
-			are separate events you can add event listeners to. The event type is "propertyname-changed".
+			如果发生了任何类型的改变(对象或属性的改变)则触发该事件。
+			属性改变是单独的事件,你也可以为此添加单独的事件监听;该事件类型为"propertyname-changed"(“属性名称-changed”)。
 		</p>
 
 		<h3>mouseDown</h3>
 		<p>
-			Fires if a pointer (mouse/touch) becomes active.
+			如果指针(鼠标/触摸)为活动状态则触发该事件。
 		</p>
 
 		<h3>mouseUp</h3>
 		<p>
-			Fires if a pointer (mouse/touch) is no longer active.
+			如果指针(鼠标/触摸)不再为活动状态则触发该事件。
 		</p>
 
 		<h3>objectChange</h3>
 		<p>
-			Fires if the controlled 3D object is changed.
+			如果被控制的3D对象发生改变则触发该事件。
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
-		<p>See the base [page:Object3D] class for common properties.</p>
+		<p>共有属性请参见其基类[page:Object3D]。</p>
 
 		<h3>[property:String axis]</h3>
 		<p>
-			The current transformation axis.
+			当前变换轴。
 		</p>
 
 		<h3>[property:Camera camera]</h3>
 		<p>
-			The camera of the rendered scene.
+			渲染场景的摄像机。
 		</p>
 
 		<h3>[property:HTMLDOMElement domElement]</h3>
 		<p>
-			The HTMLDOMElement used to listen for mouse / touch events. This must be passed in the constructor; changing it here will
-			not set up new event listeners.
+			该 HTMLDOMElement 用于监听鼠标/触摸事件,该属性必须在构造函数中传入。在此处改变它将不会设置新的事件监听。
 		</p>
 
 		<h3>[property:Boolean dragging]</h3>
 		<p>
-			Whether or not dragging is currently performed. Read-only property.
+			当前是否正在拖动。只读属性。
 		</p>
 
 		<h3>[property:Boolean enabled]</h3>
 		<p>
-			Whether or not the controls are enabled.
+			是否启用控制器。默认为*true*。
 		</p>
 
 		<h3>[property:String mode]</h3>
 		<p>
-			The current transformation mode. Possible values are "translate", "rotate" and "scale". Default is *translate*.
+			当前的变换模式。可能的值包括"translate"、"rotate" 和 "scale"。默认为*translate*。
 		</p>
 
 		<h3>[property:Object3D object]</h3>
 		<p>
-			The 3D object being controlled.
+			正在被控制的3D对象。
 		</p>
 
 		<h3>[property:Number rotationSnap]</h3>
 		<p>
-			By default, 3D objects are continously rotated. If you set this property to a numeric value (radians), you can define in which
-			steps the 3D object should be rotated. Deault is *null*.
+			默认情况下,3D对象是可以被连续旋转的。如果你将该值设为一个数值(弧度),则你将可以定义每次旋转3D对象时的步幅。
+			默认为*null*。
 		</p>
 
 		<h3>[property:Boolean showX]</h3>
 		<p>
-			Whether or not the x-axis helper should be visible. Default is *true*.
+			x轴手柄是否显示。默认为*true*。
 		</p>
 
 		<h3>[property:Boolean showY]</h3>
 		<p>
-			Whether or not the y-axis helper should be visible. Default is *true*.
+			y轴手柄是否显示。默认为*true*。
 		</p>
 
 		<h3>[property:Boolean showZ]</h3>
 		<p>
-			Whether or not the z-axis helper should be visible. Default is *true*.
+			z轴手柄是否显示。默认为*true*。
 		</p>
 
 		<h3>[property:Number size]</h3>
 		<p>
-			The size of the helper UI (axes/planes). Default is *1*.
+			手柄UI(轴/平面)的大小。默认为*1*。
 		</p>
 
 		<h3>[property:String space]</h3>
 		<p>
-			Defines in which coordinate space transformations should be performed. Possible values are "world" and "local". Default is *world*.
+			定义了在哪种坐标空间中进行变换。可能的值有"world" 和 "local"。默认为*world*。
 		</p>
 
 		<h3>[property:Number translationSnap]</h3>
 		<p>
-			By default, 3D objects are continously translated. If you set this property to a numeric value (world units), you can define in which
-			steps the 3D object should be translated. Deault is *null*.
+			默认情况下,3D对象是可以被连续平移的。如果你将该值设为一个数值(世界单位),则你将可以定义每次平移3D对象时的步幅。
+			默认为*null*。
 		</p>
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
-		<p>See the base [page:Object3D] class for common methods.</p>
+		<p>共有方法请参见其基类[page:Object3D]。</p>
 
 		<h3>[method:TransformControls attach] ( [param:Object3D object] )</h3>
 		<p>
 			<p>
-				[page:Object3D object]: The 3D object that should be transformed.
+				[page:Object3D object]: 应当变换的3D对象。
 			</p>
 			<p>
-				Sets the 3D object that should be transformed and ensures the controls UI is visible.
+				设置应当变换的3D对象,并确保控制器UI是可见的。
 			</p>
 		</p>
 
 		<h3>[method:TransformControls detach] ()</h3>
 		<p>
-			Removes the current 3D object from the controls and makes the helper UI is invisible.
+			从控制器中移除当前3D对象,并确保控制器UI是不可见的。
 		</p>
 
 		<h3>[method:null dispose] ()</h3>
 		<p>
-			Should be called if the controls is no longer required.
+			若不再需要该控制器,则应当调用此函数。
 		</p>
 
 		<h3>[method:String getMode] ()</h3>
 		<p>
-			Returns the transformation mode.
+			返回变换模式。
 		</p>
 
 		<h3>[method:null setMode] ( [param:String mode] )</h3>
 		<p>
 			<p>
-				[page:String mode]: The transformation mode.
+				[page:String mode]: 变换模式。
 			</p>
 			<p>
-				Sets the transformation mode.
+				设置变换模式。
 			</p>
 		</p>
 
 		<h3>[method:null setRotationSnap] ( [param:Number rotationSnap] )</h3>
 		<p>
 			<p>
-				[page:Number rotationSnap]: The rotation snap.
+				[page:Number rotationSnap]: 旋转捕捉步幅。
 			</p>
 			<p>
-				Sets the rotation snap.
+				设置旋转捕捉。
 			</p>
 		</p>
 
 		<h3>[method:null setSize] ( [param:Number size] )</h3>
 		<p>
 			<p>
-				[page:Number size]: The size of the helper UI.
+				[page:Number size]: 手柄UI的大小。
 			</p>
 			<p>
-				Sets the size of the helper UI.
+				设置手柄UI的大小。
 			</p>
 		</p>
 
 		<h3>[method:null setSpace] ( [param:String space] )</h3>
 		<p>
 			<p>
-				[page:String space]: The coordinate space in which transformations are applied.
+				[page:String space]: 应用变换的坐标空间。
 			</p>
 			<p>
-				Sets the coordinate space in which transformations are applied.
+				设置应用变换的坐标空间。
 			</p>
 		</p>
 
 		<h3>[method:null setTranslationSnap] ( [param:Number translationSnap] )</h3>
 		<p>
 			<p>
-				[page:Number translationSnap]: The translation snap.
+				[page:Number translationSnap]: 平移捕捉步幅。
 			</p>
 			<p>
-				Sets the translation snap.
+				设置平移捕捉。
 			</p>
 		</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		<p>
 			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/controls/TransformControls.js examples/jsm/controls/TransformControls.js]

+ 5 - 5
docs/examples/zh/geometries/ConvexBufferGeometry.html

@@ -11,10 +11,10 @@
 	<body>
 		[page:BufferGeometry] &rarr;
 
-		<h1>[name]</h1>
+		<h1>凸包缓冲几何体([name]</h1>
 
-		<p class="desc">[name] can be used to generate a convex hull for a given array of 3D points.
-			The average time complexity for this task is considered to be O(nlog(n)).</p>
+		<p class="desc">[name] 可被用于为传入的一组点生成凸包。
+				该任务的平均时间复杂度被认为是O(nlog(n))。</p>
 
 		<h2>代码示例</h2>
 
@@ -32,11 +32,11 @@
 
 		<h3>[name]( [param:Array points] )</h3>
 		<p>
-		points — Array of [page:Vector3 Vector3s] that the resulting convex hull will contain.
+		points — 所得凸包中将包含的一组[page:Vector3 Vector3]。
 		</p>
 
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		<p>
 			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/geometries/ConvexGeometry.js examples/jsm/geometries/ConvexGeometry.js]

+ 5 - 5
docs/examples/zh/geometries/ConvexGeometry.html

@@ -10,10 +10,10 @@
 	<body>
 		[page:Geometry] &rarr;
 
-		<h1>[name]</h1>
+		<h1>凸包几何体([name]</h1>
 
-		<p class="desc">[name] can be used to generate a convex hull for a given array of 3D points.
-			The average time complexity for this task is considered to be O(nlog(n)).</p>
+		<p class="desc">[name] 可被用于为传入的一组点生成凸包。
+			该任务的平均时间复杂度被认为是O(nlog(n))。</p>
 
 		<h2>代码示例</h2>
 
@@ -31,11 +31,11 @@
 
 		<h3>[name]( [param:Array points] )</h3>
 		<p>
-		points — Array of [page:Vector3 Vector3s] that the resulting convex hull will contain.
+		points — 所得凸包中将包含的一组[page:Vector3 Vector3]。
 		</p>
 
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		<p>
 			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/geometries/ConvexGeometry.js examples/jsm/geometries/ConvexGeometry.js]

+ 7 - 7
docs/examples/zh/geometries/DecalGeometry.html

@@ -10,9 +10,9 @@
 	<body>
 		[page:BufferGeometry] &rarr;
 
-		<h1>[name]</h1>
+		<h1>贴花几何体([name]</h1>
 
-		<p class="desc">[name] can be used to create a decal mesh that serves different kinds of purposes e.g. adding unique details to models, performing dynamic visual environmental changes or covering seams.</p>
+		<p class="desc">[name] 可被用于创建贴花网格物体,以达到不同的目的,例如:为模型增加独特的细节、进行动态的视觉环境改变或覆盖接缝。</p>
 
 		<h2>代码示例</h2>
 
@@ -31,13 +31,13 @@
 
 		<h3>[name]( [param:Mesh mesh], [param:Vector3 position], [param:Euler orientation], [param:Vector3 size] )</h3>
 		<p>
-		mesh — Any mesh object.<br />
-		position — Position of the decal projector.<br />
-		orientation — Orientation of the decal projector.<br />
-		size — Size of the decal projector.
+		mesh — 一个网格对象。<br />
+		position — 贴花投影器的位置。<br />
+		orientation — 贴花投影器的朝向。<br />
+		size — 贴花投影器的尺寸。
 		</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		<p>
 			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/geometries/DecalGeometry.js examples/jsm/geometries/DecalGeometry.js]

+ 10 - 10
docs/examples/zh/helpers/LightProbeHelper.html

@@ -13,7 +13,7 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-			Renders a sphere to visualize a light probe in the scene.
+			在场景中渲染一个球来可视化光照探针。
 		<p>
 
 		<h2>代码示例</h2>
@@ -27,33 +27,33 @@
 
 		<p>[example:webgl_lightprobe_cubecamera WebGL / lightprobe / cubecamera]</p>
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 
 		<h3>[name]( [param:LightProbe lightProbe], [param:Number size] )</h3>
 		<p>
-		[page:LightProbe lightProbe] -- the light probe.<br />
-		[page:Number size] -- size of the helper sphere
+		[page:LightProbe lightProbe] -- 光照探针。<br />
+		[page:Number size] -- 辅助球体的大小。
 		</p>
 
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 		<p>See the base [page:Mesh] class for common properties.</p>
 
 		<h3>[property:LightProbe lightProbe]</h3>
-		<p>The light probe.</p>
+		<p>光照探针。</p>
 
 		<h3>[property:Number size]</h3>
-		<p>The size of the helper sphere.</p>
+		<p>辅助球体的大小。</p>
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 		<p>See the base [page:Mesh] class for common methods.</p>
 
 		<h3>[method:null dispose]()</h3>
-		<p>Frees internal resources.</p>
+		<p>释放内部资源。</p>
 
 
-		<h2>Source</h2>
+		<h2>源码</h2>
 
 		<p>
 			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/helpers/LightProbeHelper.js examples/jsm/helpers/LightProbeHelper.js]

+ 8 - 8
docs/examples/zh/lights/LightProbeGenerator.html

@@ -9,35 +9,35 @@
 	</head>
 	<body>
 
-		<h1>[name]</h1>
+		<h1>光照探针生成器([name]</h1>
 
 		<p class="desc">
-			Utility class for creating instances of [page:LightProbe].
+			用于创建 [page:LightProbe] 实例的工具类。
 		</p>
 
-		<h2>Examples</h2>
+		<h2>例子</h2>
 
 		<p>
 			[example:webgl_lightprobe WebGL / light probe ]<br />
 			[example:webgl_lightprobe_cubecamera WebGL / light probe / cube camera ]
 		</p>
 
-		<h2>Static Methods</h2>
+		<h2>静态方法</h2>
 
 		<h3>[method:LightProbe fromCubeTexture] ( [param:CubeTexture cubeTexture] )</h3>
 		<p>
-			Creates a light probe from the given (radiance) environment map. The method expects that the environment map is represented as a cube texture.
+			从传入的(辐射)环境贴图创建一个光照探针。该方法期望将环境贴图表示为一个立方体纹理。
 		</p>
 
 		<h3>[method:LightProbe fromCubeRenderTarget] ( [param:WebGLRenderer renderer], [param:WebGLCubeRenderTarget cubeRenderTarget] )</h3>
 		<p>
-			Creates a light probe from the given (radiance) environment map. The method expects that the environment map is represented as a cube render target.
+			从传入的(辐射)环境贴图创建一个光照探针。该方法期望将环境贴图表示为一个立方体渲染目标。
 		</p>
 		<p>
-			The [page:Texture.format format] of the cube render target must be set to *RGBA*.
+			立方体渲染目标的 [page:Texture.format format] 必须被设为 *RGBA*。
 		</p>
 
-		<h2>Source</h2>
+		<h2>源码</h2>
 
 		<p>
 			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/lights/LightProbeGenerator.js examples/jsm/lights/LightProbeGenerator.js]

+ 1 - 1
docs/examples/zh/loaders/GLTFLoader.html

@@ -45,7 +45,7 @@
 			<sup>2</sup>支持UV变换,但存在一些重要的限制。
 			Transforms applied to
 			a texture using the first UV slot (all textures except aoMap and lightMap) must share the same
-			transform, or no transfor at all.
+			transform, or no transform at all.
 			aoMap 和 lightMap 纹理不能被变换。每个材质最多只能使用一次变换。
 			每次对使用具有唯一变换的纹理都会导致一次额外的GPU纹理上传。
 			请参阅#[link:https://github.com/mrdoob/three.js/pull/13831 13831] 和

+ 21 - 21
docs/examples/zh/loaders/MTLLoader.html

@@ -10,38 +10,38 @@
 	<body>
 		[page:Loader] &rarr;
 
-		<h1>[name]</h1>
+		<h1>MTL加载器([name]</h1>
 
-		<p class="desc">A loader for loading an <em>.mtl</em> resource, used internaly by [page:OBJLoader].<br />
-		The Material Template Library format (MTL) or .MTL File Format is a companion file format to .OBJ that describes surface shading
-		(material) properties of objects within one or more .OBJ files.
+		<p class="desc">一个用于加载 <em>.mtl</em> 资源的加载器,由 [page:OBJLoader] 在内部使用。<br />
+		材质模版库(MTL)或 .MTL 文件格式是 .OBJ 的配套文件格式,
+		用于描述一个或多个 .OBJ 文件中物体表面着色(材质)属性。
 		</p>
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 		<h3>[name]( [param:LoadingManager loadingManager] )</h3>
 		<p>
-			[page:LoadingManager loadingManager] — LoadingManager to use. Defaults to [page:DefaultLoadingManager DefaultLoadingManager]<br />
+			[page:LoadingManager manager] — 加载器使用的[page:LoadingManager loadingManager](加载管理器),默认值是[page:LoadingManager THREE.DefaultLoadingManager]。
 		</p>
 		<p>
-			Creates a new [name].
+			创建一个新的[name]。
 		</p>
 
-		<h2>Properties</h2>
-		<p>See the base [page:Loader] class for common properties.</p>
+		<h2>属性</h2>
+		<p>共有属性请参见其基类[page:Loader]。</p>
 
-		<h2>Methods</h2>
-		<p>See the base [page:Loader] class for common methods.</p>
+		<h2>方法</h2>
+		<p>共有方法请参见其基类[page:Loader]。</p>
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
-			[page:String url] — A string containing the path/URL of the <em>.mtl</em> file.<br />
-			[page:Function onLoad] — (optional) A function to be called after the loading is successfully completed. The function receives the loaded [page:MTLLoaderMaterialCreator MTLLoader.MaterialCreator] instance.<br />
-			[page:Function onProgress] — (optional) A function to be called while the loading is in progress. The argument will be the XMLHttpRequest instance, which contains [page:Integer total] and [page:Integer loaded] bytes.<br />
-			[page:Function onError] — (optional) A function to be called if an error occurs during loading. The function receives the error as an argument.<br />
+			[page:String url] — 一个包含有 <em>.mtl</em> 文件的路径或URL的字符串。<br />
+			[page:Function onLoad] — 当加载过程成功完成以后将被调用的函数。<br />
+			[page:Function onProgress] — (可选)加载过程正在进行的时候被调用的函数。其参数是一个XMLHttpRequest实例,其包含了[page:Integer total] bytes(总的字节数)和[page:Integer loaded] bytes(已经载入的字节数)。<br />
+			[page:Function onError] — (可选) 加载过程中若发生了错误将被调用的函数。这一函数接收错误作为参数。<br />
 		</p>
 		<p>
-			Begin loading from url and return the loaded material.
+			开始从URL中加载,并返回已加载的材质。
 		</p>
 
 		<h3>[method:MTLLoader setMaterialOptions]( [param:Object options] )</h3>
@@ -56,21 +56,21 @@
 			</ul>
 		</p>
 		<p>
-			Set of options on how to construct the materials
+			设置构造材质的一些选项。
 		</p>
 
 
 		<h3>[method:MTLLoaderMaterialCreator parse]( [param:String text, param:String path] )</h3>
 		<p>
-			[page:String text] — The textual <em>mtl</em> structure to parse.
-			[page:String path] — The path to the MTL file.
+			[page:String text] — 要解析的表示 <em>mtl</em> 结构的文本。
+			[page:String path] — MTL文件的路径。
 		</p>
 		<p>
-			Parse a <em>mtl</em> text structure and return a [page:MTLLoaderMaterialCreator MTLLoader.MaterialCreator] instance.<br />
+			解析 <em>mtl</em> 的文本结构,并返回一个 [page:MTLLoaderMaterialCreator MTLLoader.MaterialCreator] 实例。<br />
 		</p>
 
 
-		<h2>Source</h2>
+		<h2>源码</h2>
 
 		<p>
 			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/loaders/[name].js examples/jsm/loaders/[name].js]

+ 24 - 25
docs/examples/zh/loaders/OBJLoader.html

@@ -10,13 +10,12 @@
 	<body>
 		[page:Loader] &rarr;
 
-		<h1>[name]</h1>
+		<h1>OBJ加载器([name]</h1>
 
-		<p class="desc">A loader for loading a <em>.obj</em> resource.<br />
-		The <a href="https://en.wikipedia.org/wiki/Wavefront_.obj_file">OBJ file format</a> is a simple data-format
-		that represents 3D geometry in a human readable format as the position of each vertex, the UV position of
-		each texture coordinate vertex, vertex normals, and the faces that make each polygon defined as a list of
-		vertices, and texture vertices.
+		<p class="desc">用于加载 <em>.obj</em> 资源的加载器。<br />
+		<a href="https://en.wikipedia.org/wiki/Wavefront_.obj_file">OBJ 文件格式</a>是一种简单的数据格式,
+		这种格式以人类可读的形式来表示3D几何体,即每个顶点的位置、每个纹理坐标顶点的UV位置、顶点法线、
+		将使每个多边形定义为顶点列表的面以及纹理顶点。
 		</p>
 
 		<h2>代码示例</h2>
@@ -55,52 +54,52 @@
 			[example:webgl_loader_obj]
 		</p>
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 		<h3>[name]( [param:LoadingManager manager] )</h3>
 		<p>
-		[page:LoadingManager manager] — The [page:LoadingManager loadingManager] for the loader to use. Default is [page:LoadingManager THREE.DefaultLoadingManager].
+		[page:LoadingManager manager] — 加载器使用的[page:LoadingManager loadingManager](加载管理器),默认值是[page:LoadingManager THREE.DefaultLoadingManager]。
 		</p>
 		<p>
-		Creates a new [name].
+		创建一个新的[name]。
 		</p>
 
-		<h2>Properties</h2>
-		<p>See the base [page:Loader] class for common properties.</p>
+		<h2>属性</h2>
+		<p>共有属性请参见其基类[page:Loader]。</p>
 
-		<h2>Methods</h2>
-		<p>See the base [page:Loader] class for common methods.</p>
+		<h2>方法</h2>
+		<p>共有方法请参见其基类[page:Loader]。</p>
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
-		[page:String url] — A string containing the path/URL of the <em>.obj</em> file.<br />
-		[page:Function onLoad] — (optional) A function to be called after the loading is successfully completed. The function receives the loaded [page:Object3D] as an argument.<br />
-		[page:Function onProgress] — (optional) A function to be called while the loading is in progress. The function receives a XMLHttpRequest instance, which contains [page:Integer total] and [page:Integer loaded] bytes.<br />
-		[page:Function onError] — (optional) A function to be called if an error occurs during loading. The function receives error as an argument.<br />
+		[page:String url] — 一个包含有<em>.obj</em>文件的路径或URL的字符串。<br />
+		[page:Function onLoad] — 当加载过程成功完成以后将被调用的函数。<br />
+		[page:Function onProgress] — (可选)加载过程正在进行的时候被调用的函数。其参数是一个XMLHttpRequest实例,其包含了[page:Integer total] bytes(总的字节数)和[page:Integer loaded] bytes(已经载入的字节数)。<br />
+		[page:Function onError] — (可选) 加载过程中若发生了错误将被调用的函数。这一函数接收错误作为参数。<br />
 		</p>
 		<p>
-		Begin loading from url and call onLoad with the parsed response content.
+		开始从URL中加载,并使用包含有已被解析响应内容来调用onLoad。
 		</p>
 
 		<h3>[method:Object3D parse]( [param:String text] )</h3>
 		<p>
-		[page:String text] — The textual <em>obj</em> structure to parse.
+		[page:String text] — 要解析的表示 <em>obj</em> 结构的文本。
 		</p>
 		<p>
-		Returns an [page:Object3D]. It contains the parsed meshes as [page:Mesh] and lines as [page:LineSegments].<br />
-		All geometry is created as [page:BufferGeometry]. Default materials are created as [page:MeshPhongMaterial].<br />
-		If an <em>obj</em> object or group uses multiple materials while declaring faces, geometry groups and an array of materials are used.
+		返回一个[page:Object3D]。它包含了解析过后的网格(解析为[page:Mesh])以及线条(解析为[page:LineSegments])。<br />
+		所有的几何体被创建为[page:BufferGeometry],默认材质被创建为[page:MeshPhongMaterial]。<br />
+		如果<em>obj</em>物体或组在声明面时使用了多个材质,则使用几何体组和材质数组。
 		</p>
 
 		<h3>[method:OBJLoader setMaterials]( [param:MTLLoader.MaterialCreator materials] )</h3>
 		<p>
-		[page:MTLLoaderMaterialCreator MTLLoader.MaterialCreator materials] - A MaterialCreator instance.
+		[page:MTLLoaderMaterialCreator MTLLoader.MaterialCreator materials] - 一个 MaterialCreator 实例。
 		</p>
 		<p>
-		Sets materials loaded by MTLLoader or any other supplier of a [page:MTLLoaderMaterialCreator MTLLoader.MaterialCreator].
+		设置由 MTLLoader 载入的材质,或是其它由 [page:MTLLoaderMaterialCreator MTLLoader.MaterialCreator] 提供的材质。
 		</p>
 
-		<h2>Source</h2>
+		<h2>源码</h2>
 
 		<p>
 			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/loaders/OBJLoader.js examples/jsm/loaders/OBJLoader.js]

+ 24 - 24
docs/examples/zh/math/Lut.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">
-		Represents a lookup table for colormaps. It is used to determine the color values from a range of data values.
+		表示颜色表的查找表,用于从一个数据值的范围中确定颜色值。
 		</p>
 
 
@@ -21,40 +21,40 @@
 		var color = lut.getColor( 0.5 );
 		</code>
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 
 		<h3>[name]( colormap, numberOfColors )</h3>
 		<p>
-		colormap - optional argument that sets a colormap from predefined colormaps. Available colormaps are : "rainbow", "cooltowarm", "blackbody".
-		numberOfColors - optional argument that sets the number of colors used to represent the data array.
+		colormap - (可选)从预定义的颜色表中设置一个颜色表。可选值有:"rainbow"、 "cooltowarm"、 "blackbody"。
+		numberOfColors - (可选)设置用于表示数据数组的颜色数量。
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Float minV]</h3>
 		<p>
-		The minimum value to be represented with the lookup table. Default is 0.
+		查找表所表示的最小值,默认为0。
 		</p>
 
 		<h3>[property:Float maxV]</h3>
 		<p>
-		The maximum value to be represented with the lookup table. Default is 1.
+		查找表所表示的最小值,默认为1。
 		</p>
 
 		<h3>.[legend]</h3>
 		<p>
-		The legend of the lookup table.
+		查找表的图例。
 		</p>
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 		<h3>[method:null copy]( [param:Lut lut] ) [param:Lut this]</h3>
 		<p>
-		color — Lut to copy.
+		color — 要拷贝的 Lut。
 		</p>
 		<p>
-		Copies given lut.
+		拷贝给定的 Lut。
 		</p>
 
 		<h3>.setLegendOn [parameters]</h3>
@@ -93,50 +93,50 @@
 
 		<h3>[method:Lut setMin]( [param:Float minV] )</h3>
 		<p>
-		minV — The minimum value to be represented with the lookup table.<br />
+		minV — 查找表所表示的最小值。<br />
 		</p>
 		<p>
-		Sets this Lut with the minimum value to be represented.
+		将查找表要表示的最小值设为该值。
 		</p>
 
 		<h3>[method:Lut setMax]( [param:Float maxV] )</h3>
 		<p>
-		maxV — The maximum value to be represented with the lookup table.<br />
+		maxV — 查找表所表示的最小值。<br />
 		</p>
 		<p>
-		Sets this Lut with the maximum value to be represented.
+		将查找表要表示的最大值设为该值。
 		</p>
 
 		<h3>[method:Lut changeNumberOfColors]( [param:Float numberOfColors] )</h3>
 		<p>
-		numberOfColors — The number of colors to be used to represent the data array.<br />
+		numberOfColors — 用于表示数据数组的颜色数量。<br />
 		</p>
 		<p>
-		Sets this Lut with the number of colors to be used.
+		设置查找表中要使用的颜色的数量。
 		</p>
 
 		<h3>[method:Lut changeColorMap]( [param:Float colorMap] )</h3>
 		<p>
-		colorMap — The name of the color map to be used to represent the data array.<br />
+		colorMap — 用于表示数据数组的颜色表名称。<br />
 		</p>
 		<p>
-		Sets this Lut with the colormap to be used.
+		设置查找表的颜色表为传入的颜色表。
 		</p>
 
 		<h3>[method:Lut addColorMap]( colorMapName, arrayOfColors )</h3>
 		<p>
-		Insert a new color map into the set of available color maps.
+		插入一个新的颜色表到可用颜色表中。
 		</p>
 
 		<h3>[method:Lut getColor]( value ) [param:Lut this]</h3>
 		<p>
-		value -- the data value to be displayed as a color.
+		value -- 作为颜色展示的数据值。
 		</p>
 		<p>
-		Returns a [page:Color].
+		返回一个[page:Color]。
 		</p>
 
-		<h2>Source</h2>
+		<h2>源码</h2>
 
 		<p>
 			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/math/[path].js examples/jsm/math/[path].js]

+ 6 - 5
docs/list.js

@@ -513,7 +513,7 @@ var list = {
 
 			"起步": {
 				"创建一个场景": "manual/zh/introduction/Creating-a-scene",
-				"Installation": "manual/zh/introduction/Installation",
+				"安装": "manual/zh/introduction/Installation",
 				"浏览器支持": "manual/zh/introduction/Browser-support",
 				"WebGL兼容性检查": "manual/zh/introduction/WebGL-compatibility-check",
 				"如何在本地运行Three.js": "manual/zh/introduction/How-to-run-things-locally",
@@ -882,10 +882,6 @@ var list = {
 				"DecalGeometry": "examples/zh/geometries/DecalGeometry"
 			},
 
-			"灯光": {
-				"LightProbeGenerator": "examples/zh/lights/LightProbeGenerator"
-			},
-
 			"辅助对象": {
 				"FaceNormalsHelper": "examples/zh/helpers/FaceNormalsHelper",
 				"LightProbeHelper": "examples/zh/helpers/LightProbeHelper",
@@ -895,6 +891,10 @@ var list = {
 				"VertexTangentsHelper": "examples/zh/helpers/VertexTangentsHelper"
 			},
 
+			"灯光": {
+				"LightProbeGenerator": "examples/zh/lights/LightProbeGenerator"
+			},
+
 			"加载器": {
 				"BasisTextureLoader": "examples/zh/loaders/BasisTextureLoader",
 				"DRACOLoader": "examples/zh/loaders/DRACOLoader",
@@ -903,6 +903,7 @@ var list = {
 				"MTLLoader": "examples/zh/loaders/MTLLoader",
 				"OBJLoader": "examples/zh/loaders/OBJLoader",
 				"OBJLoader2": "examples/zh/loaders/OBJLoader2",
+				"OBJLoader2Parallel": "examples/zh/loaders/OBJLoader2Parallel",
 				"PCDLoader": "examples/zh/loaders/PCDLoader",
 				"PDBLoader": "examples/zh/loaders/PDBLoader",
 				"PRWMLoader": "examples/zh/loaders/PRWMLoader",

+ 1 - 1
docs/manual/zh/introduction/Animation-system.html

@@ -28,7 +28,7 @@
 
 		<p class="desc">
 			如果您已成功导入3D动画对象(无论它是否有骨骼或变形目标或两者皆有都不要紧)——
-			例如使用<a href="https://github.com/KhronosGroup/glTF-Blender-Exporter">glTF Blender导出器</a>
+			例如使用[link:https://github.com/KhronosGroup/glTF-Blender-IO glTF Blender exporter](glTF Blender导出器)</a>
 			从Blender导出它并使用[page:GLTFLoader]将其加载到three.js场景中
 			—— 其中一个响应字段应该是一个名为“animations”的数组,
 			其中包含此模型的[page:AnimationClip AnimationClips](请参阅下面可用的加载器列表)。

+ 1 - 1
docs/manual/zh/introduction/Drawing-lines.html

@@ -36,7 +36,7 @@ var material = new THREE.LineBasicMaterial( { color: 0x0000ff } );
 			</code>
 
 			<p>
-				定义好材质之后,我们需要一个带有一些顶点的[page:Geometry] 或者 [page:BufferGeometry]
+				定义好材质之后,我们需要一个带有一些顶点的geometry(几何体)
 			</p>
 
 			<code>

+ 32 - 32
docs/manual/zh/introduction/Installation.html

@@ -8,24 +8,24 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		<h1>通过模块来引入([name])</h1>
+		<h1>安装([name])</h1>
 
 		<p>
-			You can install three.js with [link:https://www.npmjs.com/ npm] and modern build tools, or get started quickly with just static hosting or a CDN. For most users, installing from npm is the best choice.
+			你可以使用[link:https://www.npmjs.com/ npm]以及现代构建工具来安装 three.js ,也可以只需静态主机或是 CDN 来快速上手。对于大多数用户来说,从 npm 安装是最佳选择。
 		</p>
 
 		<p>
-			Whichever you choose, be consistent and import all files from the same version of the library. Mixing files from different sources may cause duplicate code to be included, or even break the application in unexpected ways.
+			无论你选择哪种方式,请始终保持一致,并注意从相同版本的库中导入所有文件。混合不同来源的文件可能会导致包含重复代码,甚至会以意料之外的方式破坏应用程序,
 		</p>
 
 		<p>
-			All methods of installing three.js depend on ES modules (see [link:https://eloquentjavascript.net/10_modules.html#h_hF2FmOVxw7 Eloquent JavaScript: ECMAScript Modules]), which allow you to include only the parts of the library needed in the final project.
+			所有安装 three.js 的方式都依赖于 ES modules(参见 [link:https://eloquentjavascript.net/10_modules.html#h_hF2FmOVxw7 Eloquent JavaScript: ECMAScript Modules])。ES modules使你能够在最终项目中包含所需库的一小部分。
 		</p>
 
-		<h2>Install from npm</h2>
+		<h2>安装自 npm</h2>
 
 		<p>
-			To install the [link:https://www.npmjs.com/package/three three] npm module, open a terminal window in your project folder and run:
+			要安装[link:https://www.npmjs.com/package/three three] 的 npm 模块,请在你的项目文件夹里打开终端窗口,并运行:
 		</p>
 
 		<code>
@@ -33,47 +33,47 @@
 		</code>
 
 		<p>
-			The package will be downloaded and installed. Then you're ready to import it in your code:
+			包将会被下载并安装。然后你就可以将它导入你的代码了:
 		</p>
 
 		<code>
 		///////////////////////////////////////////////////////
-		// Option 1: Import the entire three.js core library.
+		// 方式 1: 导入整个 three.js核心库
 		import * as THREE from 'three';
 
 		const scene = new THREE.Scene();
 
 
 		///////////////////////////////////////////////////////
-		// Option 2: Import just the parts you need.
+		// 方式 2: 仅导入你所需要的部分
 		import { Scene } from 'three';
 
 		const scene = new Scene();
 		</code>
 
 		<p>
-			When installing from npm, you'll almost always use some sort of [link:https://eloquentjavascript.net/10_modules.html#h_zWTXAU93DC bundling tool] to combine all of the packages your project requires into a single JavaScript file. While any modern JavaScript bundler can be used with three.js, the most popular choice is [link:https://webpack.js.org/ webpack].
+			从npm上进行安装的时候,几乎总是使用某种构建工具([link:https://eloquentjavascript.net/10_modules.html#h_zWTXAU93DC bundling tool])来将你项目中需要的所有包组合到一个独立的JavaScript软件中。虽然任何现代的 JavaScript 打包器都可以和 three.js 一起使用,但最流行的选择是 [link:https://webpack.js.org/ webpack] 。
 		</p>
 
 		<p>
-			Not all features are accessed directly through the <em>three</em> module (also called a "bare import"). Other popular parts of the library — such as controls, loaders, and post-processing effects — must be imported from the [link:https://github.com/mrdoob/three.js/tree/dev/examples/jsm examples/jsm] subfolder. To learn more, see <em>Examples</em> below.
+			并非所有功能都可以通过 <em>three</em> 模块来直接访问(也称为“裸导入”)。three.js 中其它较为流行的部分 —— 如控制器(control)、加载器(loader)以及后期处理效果(post-processing effect) —— 必须从 [link:https://github.com/mrdoob/three.js/tree/dev/examples/jsm examples/jsm] 子目录下导入。了解更多信息,请参阅下方的<em>示例</em>。
 		</p>
 
 		<p>
-			Learn more about npm modules from [link:https://eloquentjavascript.net/20_node.html#h_J6hW/SmL/a Eloquent JavaScript: Installing with npm].
+			你可以从 [link:https://eloquentjavascript.net/20_node.html#h_J6hW/SmL/a Eloquent JavaScript: Installing with npm] 来了解更多有关 npm 模块的信息。
 		</p>
 
-		<h2>Install from CDN or static hosting</h2>
+		<h2>从CDN或静态主机安装</h2>
 
 		<p>
-			The three.js library can be used without any build system, either by uploading files to your own web server or by using an existing CDN. Because the library relies on ES modules, any script that references it must use <em>type="module"</em> as shown below:
+			通过将文件上传到你自己的服务器,或是使用一个已存在的CDN,three.js 便可以不借助任何构建系统来进行使用。由于 three.js 依赖于ES module,因此任何引用它的script标签必须使用<em>type="module"</em>。如下所示:
 		</p>
 
 		<code>
 		&lt;script type="module">
 
-		  // Find the latest version by visiting https://unpkg.com/three. The URL will
-		  // redirect to the newest stable release.
+		  // 通过访问 https://unpkg.com/three 来查找最新版本。 
+		  // 该URL将会重定向到最新的稳定版本。
 		  import * as THREE from 'https://unpkg.com/three@&lt;VERSION>/build/three.module.js';
 
 		  const scene = new THREE.Scene();
@@ -82,18 +82,18 @@
 		</code>
 
 		<p>
-			Not all features are accessed through the <em>build/three.module.js</em> module. Other popular parts of the library — such as controls, loaders, and post-processing effects — must be imported from the [link:https://github.com/mrdoob/three.js/tree/dev/examples/jsm examples/jsm] subfolder. To learn more, see <em>Examples</em> below.
+			并非所有功能都可以通过 <em>build/three.module.js</em> 模块来直接访问。three.js 中其它较为流行的部分 —— 如控制器(control)、加载器(loader)以及后期处理效果(post-processing effect) —— 必须从 [link:https://github.com/mrdoob/three.js/tree/dev/examples/jsm examples/jsm] 子目录下导入。了解更多信息,请参阅下方的<em>示例</em>。
 		</p>
 
 
-		<h2>Examples</h2>
+		<h2>示例</h2>
 
 		<p>
-			The core of three.js is focused on the most important components of a 3D engine. Many other useful components — such as controls, loaders, and post-processing effects — are part of the [link:https://github.com/mrdoob/three.js/tree/dev/examples/jsm examples/jsm] directory. They are referred to as "examples," because while you can use them off the shelf, they're also meant to be remixed and customized. These components are always kept in sync with the core library, whereas similar third-party packages on npm are maintained by different people and may not be up to date.
+			three.js的核心专注于3D引擎最重要的组件。其它很多有用的组件 —— 如控制器(control)、加载器(loader)以及后期处理效果(post-processing effect) —— 是 [link:https://github.com/mrdoob/three.js/tree/dev/examples/jsm examples/jsm] 目录的一部分。它们被称为“示例”,虽然你可以直接将它们拿来使用,但它们也需要重新混合以及定制。这些组件和 three.js 的核心保持同步,而 npm 上类似的第三方包则由不同的作者进行维护,可能不是最新的。
 		</p>
 
 		<p>
-			Examples do not need to be <em>installed</em> separately, but do need to be <em>imported</em> separately. If three.js was installed with npm, you can load the [page:OrbitControls] component with:
+			示例无需被单独地<em>安装</em>,但需要被单独地<em>导入</em>。如果 three.js 是使用 npm 来安装的,你可以使用如下代码来加载轨道控制器([page:OrbitControls]):
 		</p>
 
 
@@ -104,14 +104,14 @@
 		</code>
 
 		<p>
-			If three.js was installed from a CDN, use the same CDN to install other components:
+			如果 three.js 安装自一个 CDN ,请使用相同的 CDN 来安装其他组件:
 		</p>
 
 		<code>
 		&lt;script type="module">
 
-		  // Find the latest version by visiting https://unpkg.com/three. The URL will
-		  // redirect to the newest stable release.
+		  // 通过访问 https://unpkg.com/three 来查找最新版本。 
+		  // 该URL将会重定向到最新的稳定版本。
 		  import { OrbitControls } from 'https://unpkg.com/three@&lt;VERSION>/examples/jsm/controls/OrbitControls.js';
 
 		  const controls = new OrbitControls();
@@ -120,39 +120,39 @@
 		</code>
 
 		<p>
-			It's important that all files use the same version. Do not import different examples from different versions, or use examples from a different version than the three.js library itself.
+			所有文件使用相同版本是十分重要的。请勿从不同版本导入不同的示例,也不要使用与 three.js 本身版本不一致的示例。
 		</p>
 
-		<h2>Compatibility</h2>
+		<h2>兼容性</h2>
 
-		<h3>CommonJS imports</h3>
+		<h3>CommonJS 导入</h3>
 
 		<p>
-			While most modern JavaScript bundlers now support ES modules by default, some older build tools might not. In those cases you can likely configure the bundler to understand ES modules: [link:http://browserify.org/ Browserify] just needs the [link:https://github.com/babel/babelify babelify] plugin, for example.
+			虽然现代的 JavaScript 打包器已经默认支持ES module,然而也有一些较旧的构建工具并不支持。对于这些情况,你或许可以对这些打包器进行配置,让它们能够理解 ES module 。例如,[link:http://browserify.org/ Browserify] 仅需 [link:https://github.com/babel/babelify babelify] 插件。
 		</p>
 
 		<h3>Import maps</h3>
 
 		<p>
-			Imported paths differ when installing from npm, as compared to installing from static hosting or a CDN. We're aware that this is an ergonomic issue for both groups of users. Developers with build tools and bundlers prefer bare package specifiers (e.g. 'three') rather than relative paths, and files in the <em>examples/</em> folder use relative references to <em>three.module.js</em> that don't follow this expectation. Those who do not use build tools — for fast prototyping, learning, or personal preference — may similarly dislike those relative imports, which require certain folder structures and are less forgiving than a global <em>THREE.*</em> namespace.
+			和从静态主机或CDN来进行安装的方式相比,从npm安装时,导入的路径有所不同。我们意识到,对于使用两种不同方式的用户群体来说,这是一个人体工程学问题。使用构建工具与打包器的开发者更喜欢仅使用单独的包说明符(如'three')而非相对路径,而<em>examples/</em>目录中的文件使用相对于 <em>three.module.js</em> 的引用并不符合这一期望。对于不使用构建工具的人(用于快速原型、学习或个人参考)来说,或许也会很反感这些相对导入。这些相对导入需要确定目录结构,并且比全局 <em>THREE.*</em> 命名空间更不宽容。
 		</p>
 
 		<p>
-			We hope to remove these relative paths when [link:https://github.com/WICG/import-maps import maps] become broadly available, replacing them with bare package specifiers to the npm package name, 'three'. This matches build tool expectations for npm packages more closely, and allows both groups of users to write exactly the same code when importing a file. For users who prefer to avoid build tools, a simple JSON mapping can direct all imports to a CDN or static file folder. Experimentally, you can try using simpler imports today with an import map polyfill, as shown in our [link:https://glitch.com/edit/#!/three-import-map?path=index.html import map example].
+			我们希望在 [link:https://github.com/WICG/import-maps import maps] 广泛可用时,能够移除这些相对路径,将它们替换为单独的包说明符,'three'。这更加符合构建工具对npm包的期望,且使得两种用户群体在导入文件时能够编写完全相同的代码。对于更偏向于避免使用构建工具的用户来说,一个简单的 JSON 映射即可将所有的导入都定向到一个 CDN 或是静态文件夹。通过实验,目前你可以通过一个 import map 的 polyfill,来尝试更简洁的导入,如 [link:https://glitch.com/edit/#!/three-import-map?path=index.html import map example] 示例中所示。
 		</p>
 
 		<h3>Node.js</h3>
 
 		<p>
-			Using three.js in [link:https://eloquentjavascript.net/20_node.html Node.js] can be difficult, for two reasons:
+			在 [link:https://eloquentjavascript.net/20_node.html Node.js] 下使用 three.js 较为困难,原因有2条:
 		</p>
 
 		<p>
-			First, because three.js is built for the web, it depends on browser and DOM APIs that don't always exist in Node.js. Some of these issues can be resolved by using shims like [link:https://github.com/stackgl/headless-gl headless-gl], or by replacing components like [page:TextureLoader] with custom alternatives. Other DOM APIs may be deeply intertwined with the code that uses them, and will be harder to work around. We welcome simple and maintainable pull requests to improve Node.js support, but recommend opening an issue to discuss your improvements first.
+			首先, three.js 是为 web 而构建的,其依赖于浏览器,以及并不总是存在于 Node.js 中的 DOM API。其中的一些问题可使用类似 [link:https://github.com/stackgl/headless-gl headless-gl] 的 shim ,或使用定制的替代品来替换掉一些组件(例如 [page:TextureLoader] )来进行解决。其他的 DOM API 或许和使用它们的代码紧密相连在一起,并且很难解决。我们欢迎简单且可维护的 pull request,以改善对 Node.js 的支持。但建议您首先提出一个 issue 来讨论您的改进。
 		</p>
 
 		<p>
-			Second, Node.js support for ES modules is ... complicated. As of Node.js v12, the core library can be imported as a CommonJS module, with <em>require('three')</em>. However, most example components in <em>examples/jsm</em> cannot. Future versions of Node.js may resolve this, but in the meantime you may need to use workarounds like [link:https://github.com/standard-things/esm esm] to enable your Node.js application to recognize ES modules.
+			第二,Node.js 对于 ES module 的支持可以说……很复杂。在 Node.js v12 中, three.js 的核心库可使用 <em>require('three')</em> 来作为 CommonJS module 进行导入。然而,大多数在 <em>examples/jsm</em> 中的示例组件并不能够这样。未来版本的 Node.js 或许可以解决这个问题,但同时你可能需要一些类似 [link:https://github.com/standard-things/esm esm] 的解决方案,来使得你的 Node.js 应用程序识别 ES module。
 		</p>
 
 	</body>

+ 6 - 6
docs/manual/zh/introduction/Useful-links.html

@@ -11,13 +11,13 @@
 		<h1>一些有用的链接([name])</h1>
 
 		<p class="desc">
-			The following is a collection of links that you might find useful when learning three.js.<br />
-			If you find something that you'd like to add here, or think that one of the links below is no longer
-			relevant or working, feel free to click the 'edit' button in the top right and make some changes!<br /><br />
+			以下是一些在你学习three.js过程中,可能会对你有所帮助的链接。<br />
+			如果你想在此添加内容,或是认为下方某个链接不再相关或无法工作,
+			请随时点击右下角“编辑”按钮来进行一些更改。<br /><br />
 
-			Note also that as three.js is under rapid development, a lot of these links will contain information that is
-			out of date - if something isn't working as you'd expect or as one of these links says it should,
-			check the browser console for warnings or errors. Also check the relevant docs pages.
+			需要注意的是,由于three.js处于快速发展中,很多链接会包含过时的信息 ——
+			如果某个地方不能够如你所想或如链接中所说的正常工作,
+			请查看浏览器控制台中的警告和报错信息,同时也请参阅相关的文档页面。
 
 		</p>