Преглед изворни кода

Merge branch 'dev' into dev-rect_light_orientation

WestLangley пре 6 година
родитељ
комит
3ae862b2ed
100 измењених фајлова са 2152 додато и 2653 уклоњено
  1. 1 1
      .github/ISSUE_TEMPLATE.md
  2. 21 17
      README.md
  3. 25 15
      build/three.js
  4. 79 414
      build/three.min.js
  5. 25 15
      build/three.module.js
  6. 1 4
      docs/api/en/animation/AnimationClip.html
  7. 9 3
      docs/api/en/audio/Audio.html
  8. 2 0
      docs/api/en/audio/AudioListener.html
  9. 8 3
      docs/api/en/cameras/CubeCamera.html
  10. 0 1
      docs/api/en/cameras/OrthographicCamera.html
  11. 0 2
      docs/api/en/cameras/PerspectiveCamera.html
  12. 4 4
      docs/api/en/core/BufferAttribute.html
  13. 7 5
      docs/api/en/core/BufferGeometry.html
  14. 0 1
      docs/api/en/core/Face3.html
  15. 3 4
      docs/api/en/core/Geometry.html
  16. 2 2
      docs/api/en/core/InterleavedBuffer.html
  17. 1 1
      docs/api/en/core/Object3D.html
  18. 9 21
      docs/api/en/deprecated/DeprecatedList.html
  19. 0 1
      docs/api/en/helpers/AxesHelper.html
  20. 0 4
      docs/api/en/lights/AmbientLight.html
  21. 0 2
      docs/api/en/lights/DirectionalLight.html
  22. 14 5
      docs/api/en/lights/PointLight.html
  23. 14 4
      docs/api/en/lights/SpotLight.html
  24. 8 0
      docs/api/en/loaders/AnimationLoader.html
  25. 8 0
      docs/api/en/loaders/AudioLoader.html
  26. 8 0
      docs/api/en/loaders/BufferGeometryLoader.html
  27. 0 1
      docs/api/en/loaders/CubeTextureLoader.html
  28. 8 0
      docs/api/en/loaders/DataTextureLoader.html
  29. 0 4
      docs/api/en/loaders/FileLoader.html
  30. 0 119
      docs/api/en/loaders/JSONLoader.html
  31. 9 3
      docs/api/en/loaders/MaterialLoader.html
  32. 10 13
      docs/api/en/loaders/ObjectLoader.html
  33. 0 1
      docs/api/en/materials/LineBasicMaterial.html
  34. 0 1
      docs/api/en/materials/LineDashedMaterial.html
  35. 0 7
      docs/api/en/materials/Material.html
  36. 0 2
      docs/api/en/materials/PointsMaterial.html
  37. 1 2
      docs/api/en/materials/ShaderMaterial.html
  38. 0 2
      docs/api/en/materials/SpriteMaterial.html
  39. 42 31
      docs/api/en/objects/SkinnedMesh.html
  40. 1 1
      docs/api/en/renderers/WebGLRenderer.html
  41. 1 1
      docs/api/en/scenes/Scene.html
  42. 51 0
      docs/api/en/textures/DataTexture3D.html
  43. 10 10
      docs/api/zh/Polyfills.html
  44. 9 12
      docs/api/zh/animation/AnimationClip.html
  45. 21 30
      docs/api/zh/animation/AnimationMixer.html
  46. 20 23
      docs/api/zh/animation/AnimationObjectGroup.html
  47. 11 9
      docs/api/zh/animation/AnimationUtils.html
  48. 58 91
      docs/api/zh/animation/KeyframeTrack.html
  49. 12 13
      docs/api/zh/animation/PropertyBinding.html
  50. 17 18
      docs/api/zh/animation/PropertyMixer.html
  51. 14 14
      docs/api/zh/animation/tracks/BooleanKeyframeTrack.html
  52. 12 13
      docs/api/zh/animation/tracks/ColorKeyframeTrack.html
  53. 12 12
      docs/api/zh/animation/tracks/NumberKeyframeTrack.html
  54. 17 16
      docs/api/zh/animation/tracks/QuaternionKeyframeTrack.html
  55. 16 16
      docs/api/zh/animation/tracks/StringKeyframeTrack.html
  56. 12 12
      docs/api/zh/animation/tracks/VectorKeyframeTrack.html
  57. 6 0
      docs/api/zh/audio/Audio.html
  58. 2 0
      docs/api/zh/audio/AudioListener.html
  59. 9 8
      docs/api/zh/cameras/ArrayCamera.html
  60. 15 3
      docs/api/zh/cameras/Camera.html
  61. 7 0
      docs/api/zh/cameras/CubeCamera.html
  62. 6 0
      docs/api/zh/cameras/OrthographicCamera.html
  63. 2 3
      docs/api/zh/cameras/PerspectiveCamera.html
  64. 0 1
      docs/api/zh/cameras/StereoCamera.html
  65. 5 5
      docs/api/zh/constants/Animation.html
  66. 5 5
      docs/api/zh/constants/Core.html
  67. 9 9
      docs/api/zh/constants/CustomBlendingEquations.html
  68. 17 19
      docs/api/zh/constants/DrawModes.html
  69. 33 32
      docs/api/zh/constants/Materials.html
  70. 22 22
      docs/api/zh/constants/Renderer.html
  71. 151 157
      docs/api/zh/constants/Textures.html
  72. 68 85
      docs/api/zh/core/BufferAttribute.html
  73. 87 124
      docs/api/zh/core/BufferGeometry.html
  74. 19 21
      docs/api/zh/core/Clock.html
  75. 27 32
      docs/api/zh/core/DirectGeometry.html
  76. 20 20
      docs/api/zh/core/EventDispatcher.html
  77. 34 39
      docs/api/zh/core/Face3.html
  78. 102 113
      docs/api/zh/core/Geometry.html
  79. 9 9
      docs/api/zh/core/InstancedBufferAttribute.html
  80. 10 10
      docs/api/zh/core/InstancedBufferGeometry.html
  81. 9 9
      docs/api/zh/core/InstancedInterleavedBuffer.html
  82. 27 27
      docs/api/zh/core/InterleavedBuffer.html
  83. 23 26
      docs/api/zh/core/InterleavedBufferAttribute.html
  84. 22 22
      docs/api/zh/core/Layers.html
  85. 362 386
      docs/api/zh/core/Object3D.html
  86. 54 51
      docs/api/zh/core/Raycaster.html
  87. 25 25
      docs/api/zh/core/Uniform.html
  88. 11 11
      docs/api/zh/core/bufferAttributeTypes/BufferAttributeTypes.html
  89. 195 227
      docs/api/zh/deprecated/DeprecatedList.html
  90. 6 6
      docs/api/zh/extras/Earcut.html
  91. 12 15
      docs/api/zh/extras/ShapeUtils.html
  92. 8 8
      docs/api/zh/extras/objects/ImmediateRenderObject.html
  93. 20 19
      docs/api/zh/geometries/BoxBufferGeometry.html
  94. 17 16
      docs/api/zh/geometries/BoxGeometry.html
  95. 12 12
      docs/api/zh/geometries/CircleBufferGeometry.html
  96. 13 12
      docs/api/zh/geometries/CircleGeometry.html
  97. 15 15
      docs/api/zh/geometries/ConeBufferGeometry.html
  98. 14 14
      docs/api/zh/geometries/ConeGeometry.html
  99. 14 14
      docs/api/zh/geometries/CylinderBufferGeometry.html
  100. 15 15
      docs/api/zh/geometries/CylinderGeometry.html

+ 1 - 1
.github/ISSUE_TEMPLATE.md

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

+ 21 - 17
README.md

@@ -1,12 +1,12 @@
 three.js
 ========
 
-[![Latest NPM release][npm-badge]][npm-badge-url]
-[![License][license-badge]][license-badge-url]
-[![Dependencies][dependencies-badge]][dependencies-badge-url]
-[![Dev Dependencies][devDependencies-badge]][devDependencies-badge-url]
-[![Build Status](https://travis-ci.org/mrdoob/three.js.svg?branch=dev)](https://travis-ci.org/mrdoob/three.js)
-[![Language Grade: JavaScript](https://img.shields.io/lgtm/grade/javascript/g/mrdoob/three.js.svg?label=code%20quality)](https://lgtm.com/projects/g/mrdoob/three.js/)
+[![NPM package][npm]][npm-url]
+[![Build Size][build-size]][build-size-url]
+[![Build Status][build-status]][build-status-url]
+[![Dependencies][dependencies]][dependencies-url]
+[![Dev Dependencies][dev-dependencies]][dev-dependencies-url]
+[![Language Grade][lgtm]][lgtm-url]
 
 #### JavaScript 3D library ####
 
@@ -74,14 +74,18 @@ If everything went well you should see [this](https://jsfiddle.net/f2Lommf5/).
 
 ### Change log ###
 
-[releases](https://github.com/mrdoob/three.js/releases)
-
-
-[npm-badge]: https://img.shields.io/npm/v/three.svg
-[npm-badge-url]: https://www.npmjs.com/package/three
-[license-badge]: https://img.shields.io/npm/l/three.svg
-[license-badge-url]: ./LICENSE
-[dependencies-badge]: https://img.shields.io/david/mrdoob/three.js.svg
-[dependencies-badge-url]: https://david-dm.org/mrdoob/three.js
-[devDependencies-badge]: https://img.shields.io/david/dev/mrdoob/three.js.svg
-[devDependencies-badge-url]: https://david-dm.org/mrdoob/three.js#info=devDependencies
+[Releases](https://github.com/mrdoob/three.js/releases)
+
+
+[npm]: https://img.shields.io/npm/v/three.svg
+[npm-url]: https://www.npmjs.com/package/three
+[build-size]: https://badgen.net/bundlephobia/minzip/three
+[build-size-url]: https://bundlephobia.com/result?p=three
+[build-status]: https://travis-ci.org/mrdoob/three.js.svg?branch=dev
+[build-status-url]: https://travis-ci.org/mrdoob/three.js
+[dependencies]: https://img.shields.io/david/mrdoob/three.js.svg
+[dependencies-url]: https://david-dm.org/mrdoob/three.js
+[dev-dependencies]: https://img.shields.io/david/dev/mrdoob/three.js.svg
+[dev-dependencies-url]: https://david-dm.org/mrdoob/three.js#info=devDependencies
+[lgtm]: https://img.shields.io/lgtm/grade/javascript/g/mrdoob/three.js.svg?label=code%20quality
+[lgtm-url]: https://lgtm.com/projects/g/mrdoob/three.js/

Разлика између датотеке није приказан због своје велике величине
+ 25 - 15
build/three.js


Разлика између датотеке није приказан због своје велике величине
+ 79 - 414
build/three.min.js


Разлика између датотеке није приказан због своје велике величине
+ 25 - 15
build/three.module.js


+ 1 - 4
docs/api/en/animation/AnimationClip.html

@@ -96,10 +96,7 @@
 		<p>
 			Returns an array of new AnimationClips created from the [page:Geometry.morphTargets morph
 			target sequences] of a geometry, trying to sort morph target names into animation-group-based
-			patterns like "Walk_001, Walk_002, Run_001, Run_002 ..."<br /><br />
-
-			This method is called by the [page:JSONLoader] internally, and it uses
-			[page:.CreateFromMorphTargetSequence CreateFromMorphTargetSequence].
+			patterns like "Walk_001, Walk_002, Run_001, Run_002 ...".
 		</p>
 
 		<h3>[method:AnimationClip CreateFromMorphTargetSequence]( [param:String name], [param:Array morphTargetSequence], [param:Number fps], [param:Boolean noLoop] )</h3>

+ 9 - 3
docs/api/en/audio/Audio.html

@@ -62,6 +62,9 @@
 		<h3>[property:AudioContext context]</h3>
 		<p>The [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioContext AudioContext] of the [page:AudioListener listener] given in the constructor.</p>
 
+		<h3>[property:Number detune]</h3>
+		<p>Modify pitch, measured in cents. +/- 100 is a semitone. +/- 1200 is an octave. Default is *0*.</p>
+
 		<h3>[property:Array filters]</h3>
 		<p>Represents an array of [link:https://developer.mozilla.org/en-US/docs/Web/API/BiquadFilterNode BiquadFilterNodes]. Can be used to apply a variety of low-order filters to create more complex sound effects. Filters are set via [page:Audio.setFilter] or [page:Audio.setFilters].</p>
 
@@ -73,12 +76,15 @@
 		<p>Whether playback can be controlled using the [page:Audio.play play](),
 			[page:Audio.pause pause]() etc. methods. Default is *true*.</p>
 
-		<h3>[property:Number playbackRate]</h3>
-		<p>Speed of playback. Default is *1*.</p>
-
 		<h3>[property:Boolean isPlaying]</h3>
 		<p>Whether the audio is currently playing.</p>
 
+		<h3>[property:AudioListener listener]</h3>
+		<p>A reference to the listener object of this audio.</p>
+
+		<h3>[property:Number playbackRate]</h3>
+		<p>Speed of playback. Default is *1*.</p>
+
 		<h3>[property:Number startTime]</h3>
 		<p>The time at which the sound should begin to play. Same as the *when* paramter of [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode/start AudioBufferSourceNode.start](). Default is *0*.</p>
 

+ 2 - 0
docs/api/en/audio/AudioListener.html

@@ -67,6 +67,8 @@
 		<h3>[property:AudioNode filter]</h3>
 		<p>Default is *null*.</p>
 
+		<h3>[property:Number timeDelta]</h3>
+		<p>Time delta value for audio entities. Use in context of [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioParam/linearRampToValueAtTime AudioParam.linearRampToValueAtTimeDefault](). Default is *0*.</p>
 
 		<h2>Methods</h2>
 

+ 8 - 3
docs/api/en/cameras/CubeCamera.html

@@ -17,7 +17,6 @@
 		<h2>Examples</h2>
 
 		<p>[example:webgl_materials_cubemap_dynamic materials / cubemap / dynamic ]</p>
-		<p>[example:webgl_materials_cubemap_dynamic2 materials / cubemap / dynamic2 ]</p>
 		<p>[example:webgl_shading_physical shading / physical ]</p>
 
 		<code>// Create cube camera
@@ -43,11 +42,17 @@
 		<h2>Constructor</h2>
 
 
-		<h3>[name]( [param:Number near], [param:Number far], [param:Number cubeResolution] )</h3>
+		<h3>[name]( [param:Number near], [param:Number far], [param:Number cubeResolution], [param:Object options] )</h3>
 		<p>
 		near -- The near clipping distance. <br />
 		far -- The far clipping distance <br />
-		cubeResolution -- Sets the length of the cube's edges.
+		cubeResolution -- Sets the length of the cube's edges. <br />
+		options - (optional) object that holds texture parameters passed to the auto-generated WebGLRenderTargetCube.
+		If not specified, the options default to:
+		<code>
+		{ format: RGBFormat, magFilter: LinearFilter, minFilter: LinearFilter }
+		</code>
+
 		</p>
 		<p>
 		Constructs a CubeCamera that contains 6 [page:PerspectiveCamera PerspectiveCameras] that

+ 0 - 1
docs/api/en/cameras/OrthographicCamera.html

@@ -24,7 +24,6 @@
 
 		<h2>Example</h2>
 
-		<p>[example:canvas_camera_orthographic camera / orthographic ]</p>
 		<p>[example:webgl_camera camera ]</p>
 		<p>[example:webgl_interactive_cubes_ortho interactive / cubes / ortho ]</p>
 		<p>[example:webgl_materials_cubemap_dynamic materials / cubemap / dynamic ]</p>

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

@@ -22,8 +22,6 @@
 
 		<h2>Example</h2>
 
-		<p>[example:canvas_geometry_birds geometry / birds ]</p>
-		<p>[example:canvas_geometry_cube geometry / cube ]</p>
 		<p>[example:webgl_animation_skinning_blending animation / skinning / blending ]</p>
 		<p>[example:webgl_animation_skinning_morph animation / skinning / blending ]</p>
 		<p>[example:webgl_effects_stereo effects / stereo ]</p>

+ 4 - 4
docs/api/en/core/BufferAttribute.html

@@ -35,12 +35,12 @@
 		attribute is storing a 3-component vector (such as a position, normal, or color), then itemSize should be 3.
 		<br /><br />
 
-		[page:Boolean normalized] -- (optional) Indicates how the underlying data in the buffer maps
-		to the values in the GLSL code. For instance, if [page:TypedArray array] is an instance of
-		UInt16Array, and [page:Boolean normalized] is true, the values 0 - +65535 in the array
+		[page:Boolean normalized] -- (optional) Applies to integer data only. Indicates how the underlying data
+		in the buffer maps to the values in the GLSL code. For instance, if [page:TypedArray array] is an instance
+		of UInt16Array, and [page:Boolean normalized] is true, the values 0 - +65535 in the array
 		 data will be mapped to 0.0f - +1.0f in the GLSL attribute. An Int16Array (signed) would map
 		 from -32767 - +32767  to -1.0f - +1.0f. If [page:Boolean normalized] is false, the values
-		 will be converted to floats which contain the exact value, i.e. 32767 becomes 32767.0f.
+		 will be converted to floats unmodified, i.e. 32767 becomes 32767.0f.
 		</p>
 
 		<h2>Properties</h2>

+ 7 - 5
docs/api/en/core/BufferGeometry.html

@@ -119,12 +119,13 @@
 
 		<h3>[property:Object drawRange]</h3>
 		<p>
-			Used to determine what part of the geometry should be rendered. This should not
-			be set directly, instead use [page:.setDrawRange].<br />
-			Default is
+			Determines the part of the geometry to render. This should not
+			be set directly, instead use [page:.setDrawRange]. Default is
 			<code>
 				{ start: 0, count: Infinity }
 			</code>
+			For non-indexed BufferGeometry, count is the number of vertices to render.
+			For indexed BufferGeometry, count is the number of indices to render.
 		</p>
 
 		<h3>[property:Array groups]</h3>
@@ -232,7 +233,7 @@
 
 		<h3>[method:null computeBoundingBox]()</h3>
 		<p>
-		Computes bounding box of the geometry, updating [param:.boundingBox] attribute.<br />
+		Computes bounding box of the geometry, updating [page:.boundingBox] attribute.<br />
 		Bounding boxes aren't computed by default. They need to be explicitly computed, otherwise they are *null*.
 		</p>
 
@@ -316,7 +317,8 @@
 		<p>Set the [page:.index] buffer.</p>
 
 		<h3>[method:null setDrawRange] ( [param:Integer start], [param:Integer count] )</h3>
-		<p>Set the [page:.drawRange] buffer. See that property for details.</p>
+		<p>Set the [page:.drawRange] property. For non-indexed BufferGeometry, count is the number of vertices to render.
+		For indexed BufferGeometry, count is the number of indices to render.</p>
 
 		<h3>[method:BufferGeometry setFromObject] ( [param:Object3D object] )</h3>
 		<p>Sets the attributes for this BufferGeometry from an [page:Object3D].</p>

+ 0 - 1
docs/api/en/core/Face3.html

@@ -19,7 +19,6 @@
 
 		<h2>Examples</h2>
 
-		<p>[example:misc_ubiquity_test ubiquity / test ]</p>
 		<p>[example:svg_sandbox svg / sandbox ]</p>
 		<p>[example:misc_exporter_obj exporter / obj ]</p>
 		<p>[example:webgl_shaders_vector WebGL / shaders / vector ]</p>

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

@@ -32,7 +32,6 @@
 		<div>[example:webgl_interactive_lines WebGL / interactive / lines ]</div>
 		<div>[example:webgl_interactive_raycasting_points WebGL / interactive / raycasting / points ]</div>
 		<div>[example:webgl_interactive_voxelpainter WebGL / interactive / voxelpainter ]</div>
-		<div>[example:webgl_morphnormals WebGL / morphNormals ]</div>
 
 
 		<code>var geometry = new THREE.Geometry();
@@ -123,8 +122,6 @@
 		<p>
 		Array of morph normals. Morph normals have similar structure as morph targets, each normal set is a Javascript object:
 		<code>morphNormal = { name: "NormalName", normals: [ new THREE.Vector3(), ... ] }</code>
-
-		See the [example:webgl_morphnormals WebGL / morphNormals] example.
 		</p>
 
 		<h3>[property:String name]</h3>
@@ -266,7 +263,9 @@
 		</p>
 
 		<h3>[method:Geometry fromBufferGeometry]( [param:BufferGeometry geometry] )</h3>
-		<p>Convert a [page:BufferGeometry] to a Geometry.</p>
+		<p>Convert a [page:BufferGeometry] to a Geometry. <br />
+		When converting from BufferGeometry to Geometry, all vertices are preserved, so duplicated vertices may appear.
+		Use [page:Geometry.mergeVertices] to remove them.</p>
 
 		<h3>[method:Geometry lookAt] ( [param:Vector3 vector] )</h3>
 		<p>

+ 2 - 2
docs/api/en/core/InterleavedBuffer.html

@@ -69,12 +69,12 @@
 		A version number, incremented every time the needsUpdate property is set to true.
 		</p>
 
-		<h3>[property:Integer isInterleavedBuffer]</h3>
+		<h3>[property:Boolean isInterleavedBuffer]</h3>
 		<p>
 		Default is *true*.
 		</p>
 
-		<h3>[property:Integer needsUpdate]</h3>
+		<h3>[property:Boolean needsUpdate]</h3>
 		<p>
 		Default is *false*. Setting this to true increments [page:InterleavedBuffer.version version].
 		</p>

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

@@ -286,7 +286,7 @@
 
 		Rotates the object to face a point in world space.<br /><br />
 
-		This method does not support objects with rotated and/or translated parent(s).
+		This method does not support objects having non-uniformly-scaled parent(s).
 		</p>
 
 		<h3>[method:Array raycast]( [param:Raycaster raycaster], [param:Array intersects] )</h3>

+ 9 - 21
docs/api/en/deprecated/DeprecatedList.html

@@ -245,24 +245,13 @@
 			Light.shadowMapHeight is now [page:Light.shadow.mapSize.height].
 		</p>
 
-
-
-
-
-
-
-
 		<h2>Loaders</h2>
 
 		<h3>[page:XHRLoader]</h3>
 		<p>XHRLoader has been renamed to [page:FileLoader].</p>
 
-
-
-
-
-
-
+		<h3>[page:JSONLoader]</h3>
+		<p>JSONLoader has been removed from core.</p>
 
 		<h2>Maths</h2>
 
@@ -494,18 +483,17 @@
 			Shape.makeGeometry has been removed. Use [page:ShapeGeometry] instead.
 		</p>
 
+		<h3>[page:SkinnedMesh]</h3>
+		<p>
+			SkinnedMesh.initBones() has been removed.
+		</p>
 
 
+		<h2>Renderers</h2>
 
-
-
-
-
-		<h2>Renderer</h2>
-
-		<h3>[page:Projector]</h3>
+		<h3>[page:CanvasRenderer]</h3>
 		<p>
-			CanvasRenderer has been moved to [link:https://github.com/mrdoob/three.js/blob/master/examples/js/renderers/CanvasRenderer.js /examples/js/renderers/CanvasRenderer.js].
+			CanvasRenderer has been removed.
 		</p>
 
 		<h3>[page:Projector]</h3>

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

@@ -19,7 +19,6 @@
 		<h2>Example</h2>
 
 		<div>[example:webgl_geometries WebGL / geometries]</div>
-		<div>[example:webgl_geometries2 WebGL / geometries2]</div>
 		<div>[example:webgl_geometry_convex WebGL / geometry / convex]</div>
 		<div>[example:webgl_geometry_spline_editor WebGL / geometry / spline / editor]</div>
 

+ 0 - 4
docs/api/en/lights/AmbientLight.html

@@ -21,10 +21,6 @@
 
 		<h2>Example</h2>
 		<p>
-			[example:canvas_camera_orthographic camera / orthographic ]<br />
-		  [example:canvas_interactive_voxelpainter interactive / voxelpainter ]<br />
-		  [example:canvas_materials materials ]<br />
-		  [example:canvas_sandbox sandbox ]<br />
 		  [example:webgl_animation_cloth animation / cloth ]<br />
 		  [example:webgl_animation_skinning_blending animation / skinning / blending ]
 		</p>

+ 0 - 2
docs/api/en/lights/DirectionalLight.html

@@ -40,9 +40,7 @@
 
 		<h2>Example</h2>
 		<p>
-			[example:canvas_morphtargets_horse morphtargets / horse ]<br />
 			[example:misc_controls_fly controls / fly ]<br />
-			[example:misc_lights_test lights / test ]<br />
 			[example:webvr_cubes cubes ]<br />
 			[example:webgl_effects_parallaxbarrier effects / parallaxbarrier ]<br />
 			[example:webgl_effects_stereo effects / stereo ]<br />

+ 14 - 5
docs/api/en/lights/PointLight.html

@@ -23,7 +23,6 @@
 		<h2>Example</h2>
 
 		<p>
-			[example:canvas_lights_pointlights lights / pointlights ]<br />
 			[example:webgl_lights_pointlights lights / pointlights ]<br />
 			[example:webgl_lights_pointlights2 lights / pointlights2 ]<br />
 			[example:webgldeferred_animation animation ]<br />
@@ -45,8 +44,7 @@ scene.add( light );
 		<p>
 			[page:Integer color] - (optional) hexadecimal color of the light. Default is 0xffffff (white).<br />
 			[page:Float intensity] - (optional) numeric value of the light's strength/intensity. Default is 1.<br /><br />
-			[page:Number distance] - The distance from the light where the intensity is 0.
-			When set to 0, then the light never stops. Default is 0.<br />
+			[page:Number distance] - Maximum range of the light. Default is 0 (no limit).<br />
 			[page:Float decay] - The amount the light dims along the distance of the light. Default is 1.
 			For [page:WebGLRenderer.physicallyCorrectLights physically correct] lighting, set this to 2.<br /><br />
 
@@ -67,8 +65,19 @@ scene.add( light );
 
 		<h3>[property:Float distance]</h3>
 		<p>
-			If non-zero, light will attenuate linearly from maximum intensity at the light's
-			position down to zero at this distance from the light. Default is *0.0*.
+			<em>Default mode</em> — When distance is zero, light does not attenuate. When distance is
+			non-zero, light will attenuate linearly from maximum intensity at the light's position down to
+			zero at this distance from the light.
+		</p>
+		<p>
+			<em>[page:WebGLRenderer.physicallyCorrectLights Physically correct] mode</em> — When distance
+			is zero, light will attenuate according to inverse-square law to infinite distance. When
+			distance is non-zero, light will attenuate according to inverse-square law until near the
+			distance cutoff, where it will then attenuate quickly and smoothly to 0. Inherently, cutoffs
+			are not physically correct.
+		</p>
+		<p>
+			Default is *0.0*.
 		</p>
 
 		<h3>[property:Boolean isPointLight]</h3>

+ 14 - 4
docs/api/en/lights/SpotLight.html

@@ -71,8 +71,7 @@
 		<p>
 			[page:Integer color] - (optional) hexadecimal color of the light. Default is 0xffffff (white).<br />
 			[page:Float intensity] - (optional) numeric value of the light's strength/intensity. Default is 1.<br /><br />
-			[page:Float distance] - Maximum distance from origin where light will shine whose intensity
-			is attenuated linearly based on distance from origin. <br />
+			[page:Float distance] - Maximum range of the light. Default is 0 (no limit).<br />
 			[page:Radians angle] - Maximum angle of light dispersion from its direction whose upper
 			bound is Math.PI/2.<br />
 			[page:Float penumbra] - Percent of the spotlight cone that is attenuated due to penumbra.
@@ -109,8 +108,19 @@
 
 		<h3>[property:Float distance]</h3>
 		<p>
-			If non-zero, light will attenuate linearly from maximum intensity at the light's
-			position down to zero at this distance from the light. Default is *0.0*.
+			<em>Default mode</em> — When distance is zero, light does not attenuate. When distance is
+			non-zero, light will attenuate linearly from maximum intensity at the light's position down to
+			zero at this distance from the light.
+		</p>
+		<p>
+			<em>[page:WebGLRenderer.physicallyCorrectLights Physically correct] mode</em> — When distance
+			is zero, light will attenuate according to inverse-square law to infinite distance. When
+			distance is non-zero, light will attenuate according to inverse-square law until near the
+			distance cutoff, where it will then attenuate quickly and smoothly to 0. Inherently, cutoffs
+			are not physically correct.
+		</p>
+		<p>
+			Default is *0.0*.
 		</p>
 
 		<h3>[property:Boolean isSpotLight]</h3>

+ 8 - 0
docs/api/en/loaders/AnimationLoader.html

@@ -81,6 +81,14 @@
 		be parsed with [page:AnimationClip.parse].
 		</p>
 
+		<h3>[method:AnimationLoader setPath]( [param:String path] )</h3>
+		<p>
+			[page:String path] — Base path of the file to load.<br /><br />
+
+			Sets the base path or URL from which to load files. This can be useful if
+			you are loading many animations from the same directory.
+		</p>
+
 		<h2>Source</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 8 - 0
docs/api/en/loaders/AudioLoader.html

@@ -92,6 +92,14 @@
 		Begin loading from url and pass the loaded [page:String AudioBuffer] to onLoad.
 		</p>
 
+		<h3>[method:AudioLoader setPath]( [param:String path] )</h3>
+		<p>
+			[page:String path] — Base path of the file to load.<br /><br />
+			
+			Sets the base path or URL from which to load files. This can be useful if
+			you are loading many audios from the same directory.
+		</p>
+
 		<h2>Source</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 8 - 0
docs/api/en/loaders/BufferGeometryLoader.html

@@ -85,6 +85,14 @@
 		Parse a <em>JSON</em> structure and return a [page:BufferGeometry].
 		</p>
 
+		<h3>[method:BufferGeometryLoader setPath]( [param:String path] )</h3>
+		<p>
+			[page:String path] — Base path of the file to load.<br /><br />
+
+			Sets the base path or URL from which to load files. This can be useful if
+			you are loading many geometries from the same directory.
+		</p>
+
 		<h2>Source</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

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

@@ -22,7 +22,6 @@
 			[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>
 

+ 8 - 0
docs/api/en/loaders/DataTextureLoader.html

@@ -56,6 +56,14 @@
 		Begin loading from url and pass the loaded texture to onLoad.
 		</p>
 
+		<h3>[method:DataTextureLoader setPath]( [param:String path] )</h3>
+		<p>
+			[page:String path] — Base path of the file to load.<br /><br />
+
+			Sets the base path or URL from which to load files. This can be useful if
+			you are loading many data textures from the same directory.
+		</p>
+
 		<h2>Source</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 0 - 4
docs/api/en/loaders/FileLoader.html

@@ -17,10 +17,6 @@
 		</p>
 
 		<h2>Example</h2>
-		<p>
-			[example:webgl_loader_msgpack WebGL / loader / msgpack]<br />
-			[example:webgl_morphtargets_human WebGL / morphtargets / human]<br />
-		</p>
 		<code>
 		var loader = new THREE.FileLoader();
 

+ 0 - 119
docs/api/en/loaders/JSONLoader.html

@@ -1,119 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../" />
-		<script src="list.js"></script>
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>[name]</h1>
-
-		<p class="desc">
-			A loader for loading objects in JSON format.
-			This uses the [page:FileLoader] internally for loading files.
-		</p>
-
-		<h2>Example</h2>
-
-		<p>
-		[example:webgl_loader_json WebGL / loader / json]<br />
-		[example:webgl_loader_json_objconverter WebGL / loader / json / objconverter]
-		</p>
-
-		<code>
-		// instantiate a loader
-		var loader = new THREE.JSONLoader();
-
-		// load a resource
-		loader.load(
-			// resource URL
-			'models/animated/monster/monster.js',
-
-			// onLoad callback
-			function ( geometry, materials ) {
-				var material = materials[ 0 ];
-				var object = new THREE.Mesh( geometry, material );
-				scene.add( object );
-			},
-
-			// onProgress callback
-			function ( xhr ) {
-				console.log( (xhr.loaded / xhr.total * 100) + '% loaded' );
-			},
-
-			// onError callback
-			function( err ) {
-				console.log( 'An error happened' );
-			}
-		);
-		</code>
-
-		<h2>Constructor</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].
-		</p>
-		<p>
-		Creates a new [name].
-		</p>
-
-		<h2>Properties</h2>
-
-		<h3>[property:String crossOrigin]</h3>
-		<p>
-		If set, assigns the [link:https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_settings_attributes crossOrigin]
-	 attribute of the image to the value of *crossOrigin*, prior to starting the load. Default is *"anonymous"*.
-		</p>
-
-		<h3>[property:LoadingManager manager]</h3>
-		<p>
-			The [page:LoadingManager loadingManager]  the loader is using. Default is [page:DefaultLoadingManager].
-		</p>
-
-		<h3>[property:String withCredentials]</h3>
-		<p>
-			Whether the XMLHttpRequest uses credentials.
-			Default is *false*.
-		</p>
-
-		<h2>Methods</h2>
-
-		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
-		<p>
-		[page:String url] — the path or URL to the file. This can also be a
-			[link:https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs Data URI]..<br />
-		[page:Function onLoad] — Will be called when load completes. The argument will be the loaded text response.<br />
-		[page:Function onProgress] — Will be called while load progresses. The argument will be the XMLHttpRequest instance, which contains .[page:Integer total] and .[page:Integer loaded] bytes.<br />
-		[page:Function onError] — Will be called when load errors.<br />
-		</p>
-		<p>
-		Begin loading from url and pass the <em>JSON</em> to onLoad.
-		</p>
-
-		<h3>[method:JSONLoader setCrossOrigin]( [param:String value] )</h3>
-		<p>
-			Set the [page:.crossOrigin] attribute.
-		</p>
-
-		<h3>[method:JSONLoader setTexturePath]( [param:String texturePath] )</h3>
-		<p>
-			Set the base path or URL from which to load files. This can be useful if
-			you are loading many files from the same directory.
-		</p>
-
-		<h3>[method:Object3D parse]( [param:Object json], [param:String texturePath] )</h3>
-		<p>
-		[page:String json] — JSON object to parse.<br />
-		[page:String texturePath] — Base path for textures.<br /><br />
-
-		Parse a <em>JSON</em> structure and return an [page:object] containing the parsed [page:Geometry geometry] and [page:Array materials].
-		</p>
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>

+ 9 - 3
docs/api/en/loaders/MaterialLoader.html

@@ -84,12 +84,18 @@
 		Parse a <em>JSON</em> structure and create a new [page:Material] of the type [page:String json.type] with parameters defined in the json object.
 		</p>
 
-		<h3>[method:null setTextures]( [param:Object textures] )</h3>
+		<h3>[method:MaterialLoader setPath]( [param:String path] )</h3>
 		<p>
-		[page:Object textures] — object containing any textures used by the material.
-		</p>
+			[page:String path] — Base path of the file to load.<br /><br />
 
+			Sets the base path or URL from which to load files. This can be useful if
+			you are loading many materials from the same directory.
+		</p>
 
+		<h3>[method:MaterialLoader setTextures]( [param:Object textures] )</h3>
+		<p>
+		[page:Object textures] — object containing any textures used by the material.
+		</p>
 
 		<h2>Source</h2>
 

+ 10 - 13
docs/api/en/loaders/ObjectLoader.html

@@ -11,10 +11,7 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-			A loader for loading a JSON resource. Unlike the [page:JSONLoader], this one make use of the
-			<em>.type</em> attributes of objects to map them to their original classes.<br /><br />
-
-			Note that this loader can't load [page:Geometries]. Use [page:JSONLoader] instead for that.<br /><br />
+			A loader for loading a JSON resource in the [link:https://github.com/mrdoob/three.js/wiki/JSON-Object-Scene-format-4 JSON Object/Scene format].<br /><br />
 
 			This uses the [page:FileLoader] internally for loading files.
 		</p>
@@ -22,10 +19,8 @@
 		<h2>Example</h2>
 
 		<p>
-
-			[example:webgl_animation_scene WebGL / animation / scene]<br />
 			[example:webgl_loader_json_claraio WebGL / loader / json / claraio]<br />
-			[example:webgl_loader_msgpack WebGL / loader / msgpack]
+			[example:webgl_materials_lightmap WebGL / materials / lightmap]
 		</p>
 
 		<code>
@@ -85,9 +80,9 @@
 			The [page:LoadingManager loadingManager]  the loader is using. Default is [page:DefaultLoadingManager].
 		</p>
 
-		<h3>[property:String texturePath]</h3>
+		<h3>[property:String resourcePath]</h3>
 		<p>
-			The base path or URL from which textures will be loaded. See [page:.setTexturePath].
+			The base path or URL from which additional resources like textuures will be loaded. See [page:.setResourcePath].
 			Default is the empty string.
 		</p>
 
@@ -121,7 +116,6 @@
 		[page:Object json] — required. The JSON source to parse.<br /><br />
 
 		This is used [page:.parse] to parse any [page:Geometry geometries] or [page:BufferGeometry buffer geometries]  in the JSON structure.
-		Internally it uses [page:JSONLoader] for geometries and [page:BufferGeometryLoader] for buffer geometries.
 		</p>
 
 		<h3>[method:Object3D parseMaterials]( [param:Object json] )</h3>
@@ -217,11 +211,14 @@
 		[page:String value] — The crossOrigin string to implement CORS for loading the url from a different domain that allows CORS.
 		</p>
 
-		<h3>[method:ObjectLoader setTexturePath]( [param:String value] )</h3>
+		<h3>[method:ObjectLoader setPath]( [param:String value] )</h3>
 		<p>
-		[page:String value] — The base path or URL from which textures will be loaded.<br /><br />
-
+			Set the base path for the original file.
+		</p>
 
+		<h3>[method:ObjectLoader setResourcePath]( [param:String value] )</h3>
+		<p>
+			Set the base path for dependent resources like textures.
 		</p>
 
 		<h2>Source</h2>

+ 0 - 1
docs/api/en/materials/LineBasicMaterial.html

@@ -29,7 +29,6 @@
 			[example:webgl_lines_colors WebGL / lines / colors]<br />
 			[example:webgl_lines_dashed WebGL / lines / dashed]<br />
 			[example:webgl_lines_sphere WebGL / lines / sphere]<br />
-			[example:webgl_lines_splines WebGL / lines / splines]<br />
 			[example:webgl_materials WebGL / materials]<br />
 			[example:webgl_physics_rope WebGL / phyics / rope]
 		</p>

+ 0 - 1
docs/api/en/materials/LineDashedMaterial.html

@@ -18,7 +18,6 @@
 
 		<p>
 			[example:webgl_lines_dashed WebGL / lines / dashed]<br />
-			[example:canvas_lines_dashed Canvas / lines /dashed]
 		</p>
 
 		<code>

+ 0 - 7
docs/api/en/materials/Material.html

@@ -175,13 +175,6 @@
 		Default is *1.0*.
 		</p>
 
-		<h3>[property:Float overdraw]</h3>
-		<p>
-		Amount of triangle expansion at draw time.
-		This is a workaround for cases when gaps appear between triangles when using [page:CanvasRenderer].
-		*0.5* tends to give good results across browsers. Default is *0*.
-		</p>
-
 		<h3>[property:Boolean polygonOffset]</h3>
 		<p>
 		Whether to use polygon offset. Default is *false*. This corresponds to the *GL_POLYGON_OFFSET_FILL* WebGL feature.

+ 0 - 2
docs/api/en/materials/PointsMaterial.html

@@ -26,9 +26,7 @@
 			[example:webgl_interactive_raycasting_points WebGL / interactive / raycasting / points]<br />
 			[example:webgl_multiple_elements_text WebGL / multiple / elements / text]<br />
 			[example:webgl_points_billboards WebGL / points / billboards]<br />
-			[example:webgl_points_billboards_colors WebGL / points / billboards / colors]<br />
 			[example:webgl_points_dynamic WebGL / points / dynamic]<br />
-			[example:webgl_points_random WebGL / points / random]<br />
 			[example:webgl_points_sprites WebGL / points / sprites]<br />
 			[example:webgl_trails WebGL / trails]
 		</p>

+ 1 - 2
docs/api/en/materials/ShaderMaterial.html

@@ -96,7 +96,6 @@
 			[example:webgl_materials_parallaxmap webgl / materials / parallaxmap]<br />
 			[example:webgl_materials_shaders_fresnel webgl / materials / shaders / fresnel]<br />
 			[example:webgl_materials_skin webgl / materials / skin]<br />
-			[example:webgl_materials_texture_hdr webgl / materials / texture / hdr]<br />
 			[example:webgl_materials_wireframe webgl / materials / wireframe]<br />
 			[example:webgl_modifier_tessellation webgl / modifier / tessellation]<br />
 			[example:webgl_nearestneighbour webgl / nearestneighbour]<br />
@@ -444,7 +443,7 @@ this.extensions = {
 		<h3>[property:Float wireframeLinewidth]</h3>
 		<p>Controls wireframe thickness. Default is 1.<br /><br />
 
-		Due to limitations of the [link:https://www.khronos.org/registry/OpenGL/specs/gl/glspec46.core.pdf OpenGL Core Profile)
+		Due to limitations of the [link:https://www.khronos.org/registry/OpenGL/specs/gl/glspec46.core.pdf OpenGL Core Profile]
 		with the [page:WebGLRenderer WebGL] renderer on most platforms linewidth will
 		always be 1 regardless of the set value.
 		</p>

+ 0 - 2
docs/api/en/materials/SpriteMaterial.html

@@ -17,8 +17,6 @@
 		<h2>Examples</h2>
 		<div>
 			[example:webgl_sprites WebGL / sprites]<br />
-			[example:misc_ubiquity_test misc / ubiquity / test]<br />
-			[example:misc_ubiquity_test2 misc / ubiquity / test2]<br />
 			[example:software_sandbox software / sandbox]<br />
 			[example:svg_sandbox svg / sandbox]<br />
 			[example:webgl_materials_cubemap_dynamic webgl / materials / cubemap / dynamic]

+ 42 - 31
docs/api/en/objects/SkinnedMesh.html

@@ -38,41 +38,60 @@
 		<h2>Example</h2>
 
 		<code>
-		var geometry = new THREE.CylinderGeometry( 5, 5, 5, 5, 15, 5, 30 );
+		var geometry = new THREE.CylinderBufferGeometry( 5, 5, 5, 5, 15, 5, 30 );
 
-		//Create the skin indices and skin weights
-		for ( var i = 0; i < geometry.vertices.length; i ++ ) {
+		// create the skin indices and skin weights
 
-			// Imaginary functions to calculate the indices and weights
-			// This part will need to be changed depending your skeleton and model
-			var skinIndex = calculateSkinIndex( geometry.vertices, i );
-			var skinWeight = calculateSkinWeight( geometry.vertices, i );
+		var position = geometry.attributes.position;
 
-			// Ease between each bone
-			geometry.skinIndices.push( new THREE.Vector4( skinIndex, skinIndex + 1, 0, 0 ) );
-			geometry.skinWeights.push( new THREE.Vector4( 1 - skinWeight, skinWeight, 0, 0 ) );
+		var vertex = new THREE.Vector3();
+
+		var skinIndices = [];
+		var skinWeights = [];
+
+		for ( var i = 0; i < position.count; i ++ ) {
+
+			vertex.fromBufferAttribute( position, i );
+
+			// compute skinIndex and skinWeight based on some configuration data
+
+			var y = ( vertex.y + sizing.halfHeight );
+
+			var skinIndex = Math.floor( y / sizing.segmentHeight );
+			var skinWeight = ( y % sizing.segmentHeight ) / sizing.segmentHeight;
+
+			skinIndices.push( skinIndex, skinIndex + 1, 0, 0 );
+			skinWeights.push( 1 - skinWeight, skinWeight, 0, 0 );
 
 		}
 
+		geometry.addAttribute( 'skinIndex', new THREE.Uint16BufferAttribute( skinIndices, 4 ) );
+		geometry.addAttribute( 'skinWeight', new THREE.Float32BufferAttribute( skinWeights, 4 ) );
+
+		// create skinned mesh and skeleton
+
 		var mesh = new THREE.SkinnedMesh( geometry, material );
+		var skeleton = new THREE.Skeleton( bones );
+
+		// see example from THREE.Skeleton
 
-		// See example from THREE.Skeleton for the armSkeleton
-		var rootBone = armSkeleton.bones[ 0 ];
+		var rootBone = skeleton.bones[ 0 ];
 		mesh.add( rootBone );
 
-		// Bind the skeleton to the mesh
-		mesh.bind( armSkeleton );
+		// bind the skeleton to the mesh
+
+		mesh.bind( skeleton );
+
+		// move the bones and manipulate the model
 
-		// Move the bones and manipulate the model
-		armSkeleton.bones[ 0 ].rotation.x = -0.1;
-		armSkeleton.bones[ 1 ].rotation.x = 0.2;
+		skeleton.bones[ 0 ].rotation.x = -0.1;
+		skeleton.bones[ 1 ].rotation.x = 0.2;
 		</code>
 
 		<h2>Constructor</h2>
-		<h3>[name]( [param:Geometry geometry], [param:Material material] )</h3>
+		<h3>[name]( [param:BufferGeometry geometry], [param:Material material] )</h3>
 		<p>
-    [page:Geometry geometry] - an instance of [page:Geometry] or [page:BufferGeometry] (recommended).
-		[page:Geometry.skinIndices skinIndices] and [page:Geometry.skinWeights skinWeights] should be set to true on the geometry.<br />
+    [page:Geometry geometry] - an instance of [page:BufferGeometry].<br />
     [page:Material material] - (optional) an instance of [page:Material]. Default is a new [page:MeshBasicMaterial].
 		</p>
 
@@ -109,8 +128,7 @@
 
 		<h3>[property:Skeleton skeleton]</h3>
 		<p>
-		[page:Skeleton] created from the [page:Geometry.bones bones] of the [page:Geometry] passed in the
-		constructor.
+		[page:Skeleton] representing the bone hierachy of the skinned mesh.
 		</p>
 
 
@@ -124,9 +142,7 @@
 		[page:Matrix4 bindMatrix] - [page:Matrix4] that represents the base transform of the skeleton.<br /><br />
 
 		Bind a skeleton to the skinned mesh. The bindMatrix gets saved to .bindMatrix property
-		and the .bindMatrixInverse gets calculated. This is called automatically in the constructor, and the skeleton
-		is created from the [page:Geometry.bones bones] of the [page:Geometry] passed in the
-		constructor.
+		and the .bindMatrixInverse gets calculated.
 		</p>
 
 		<h3>[method:SkinnedMesh clone]()</h3>
@@ -136,7 +152,7 @@
 
 		<h3>[method:null normalizeSkinWeights]()</h3>
 		<p>
-		Normalizes the [page:Geometry.skinWeights] vectors. Does not affect [page:BufferGeometry].
+		Normalizes the skin weights.
 		</p>
 
 		<h3>[method:null pose]()</h3>
@@ -149,11 +165,6 @@
 		Updates the [page:Matrix4 MatrixWorld].
 		</p>
 
-		<h3>[method:null initBones]()</h3>
-		<p>
-		Creates an array of hierarchical [page:Bone bones] objects from the internal geometry.
-		</p>
-
 		<h2>Source</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 1 - 1
docs/api/en/renderers/WebGLRenderer.html

@@ -253,7 +253,7 @@
 
 		Note: Sorting is used to attempt to properly render objects that have some degree of transparency.
 		By definition, sorting objects may not work in all cases.  Depending on the needs of application,
-		it may be neccessary to turn off sorting and use other methods to deal with transparency
+		it may be necessary to turn off sorting and use other methods to deal with transparency
 		rendering e.g. manually determining each object's rendering order.
 		</p>
 

+ 1 - 1
docs/api/en/scenes/Scene.html

@@ -41,7 +41,7 @@
 
 		<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, or a [page:CubeTexture]. Default is null.
+		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, or a cubemap as a [page:CubeTexture] or [page:WebGLRenderTargetCube]. Default is null.
 		</p>
 
 		<h2>Methods</h2>

+ 51 - 0
docs/api/en/textures/DataTexture3D.html

@@ -0,0 +1,51 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Texture] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">Creates a three-dimensional texture. This type of texture can only be used with a WebGL 2 rendering context.</p>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( [param:TypedArray data], [param:Number width], [param:Number height], [param:Number depth] )</h3>
+		<p>
+			[page:Object data] -- data of the texture.<br />
+
+			[page:Number width] -- width of the texture.<br />
+
+			[page:Number height] -- height of the texture.<br />
+
+			[page:Number depth] -- depth of the texture.
+		</p>
+
+		<h2>Example</h2>
+
+		<div>[example:webgl2_materials_texture3d WebGL2 / materials / texture3d]</div>
+		<div>[example:webgl2_materials_texture3d_volume WebGL2 / materials / texture3d / volume]</div>
+
+		<h2>Properties</h2>
+
+		<p>
+		See the base [page:Texture Texture] class for common properties.
+		</p>
+
+		<h2>Methods</h2>
+
+		<p>
+		See the base [page:Texture Texture] class for common methods.
+		</p>
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 10 - 10
docs/api/zh/Polyfills.html

@@ -1,5 +1,5 @@
 <!DOCTYPE html>
-<html lang="en">
+<html lang="zh">
 	<head>
 		<meta charset="utf-8" />
 		<base href="../../" />
@@ -9,37 +9,37 @@
 	</head>
 	<body>
 
-		<h1>Polyfills</h1>
+		<h1>差异化支持(腻子)</h1>
 
-		<p class="desc">Three.js includes polyfills for the following functions and constants.</p>
+		<p class="desc">Three.js 包含以下方法和常量的差异化支持.</p>
 
 		<h3>[page:Number.EPSILON Number.EPSILON]</h3>
 		<p>
-			 The difference between one and the smallest value greater than one that can be represented as a Number.
+			 表示1和大于1的最小差值,可表示为 Number.
 			 [link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/EPSILON MDN reference].
 		</p>
 
 		<h3>[page:Math.sign Math.sign]( [page:Number x] )</h3>
 		<p>
-			If the argument is a positive number, negative number, positive zero or negative zero,
-			the function will return 1, -1, 0 or -0 respectively. Otherwise, NaN is returned.
+			如果参数为 正数,负数,正零 或 负零,
+			该方法将分别返回 1, -1, 0 或 -0 . 否则, 返回 NaN.
 			[link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/sign MDN reference].
 		</p>
 
 		<h3>[page:Function.prototype.name Function.prototype.name]( [page:Number x] )</h3>
 		<p>
-			Returns the name of a function, or (before ES6 implementations) an empty string for anonymous functions.
+			返回方法的名字, 或 (在 ES6 实现之前) 为匿名方法返回一个空字符串.
 			[link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/name MDN reference].
 		</p>
 
 		<h3>[page:Object.assign Object.assign]( [page:Object target], [page:Object ...sources] )</h3>
 		<p>
-			The Object.assign() method is used to copy the values of all enumerable own properties from one or more source objects to a target object.
-			It will return the target object.
+			Object.assign() 方法用于从一个或多个源对象拷贝所有可枚举自身属性到目标对象.
+			该方法将返回目标对象.
 			[link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign MDN reference].
 		</p>
 
-		<h2>Source</h2>
+		<h2>源码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/polyfills.js src/polyfills.js]
 	</body>

+ 9 - 12
docs/api/zh/animation/AnimationClip.html

@@ -11,7 +11,7 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-			动画剪辑(AnimationClip)是一个可重用的关键帧轨集,它代表动画。<br /><br />
+			动画剪辑(AnimationClip)是一个可重用的关键帧轨集,它代表动画。<br /><br />
 
 			在使用手册的“下一步”章节中,“动画系统”一文对three.js动画系统中的不同元素作出了概述
 		</p>
@@ -24,7 +24,7 @@
 		<p>
 			[page:String name] - 此剪辑的名称<br />
 			[page:Number duration] - 持续时间 (单位秒). 如果传入负数, 持续时间将会从传入的数组中计算得到。<br />
-			[page:Array tracks] - 一个由关键帧轨([page:KeyframeTrack KeyframeTracks])组成的数组。<br /><br />
+			[page:Array tracks] - 一个由关键帧轨([page:KeyframeTrack KeyframeTracks])组成的数组。<br /><br />
 
 			说明: 与其直接调用构造函数实例化一个动画剪辑, 不如使用其静态方法中的一个来创建:
 			用JSON ([page:.parse parse]), 用变形目标序列([page:.CreateFromMorphTargetSequence CreateFromMorphTargetSequence],
@@ -38,7 +38,7 @@
 
 		<h3>[property:Number duration]</h3>
 		<p>
-			剪辑的持续时间 (单位秒). 可以通过[page:.resetDuration resetDuration]从轨数组([page:.tracks tracks])计算出来。
+			剪辑的持续时间 (单位秒). 可以通过[page:.resetDuration resetDuration]从轨数组([page:.tracks tracks])计算出来。
 
 		</p>
 
@@ -49,7 +49,7 @@
 
 		<h3>[property:Array tracks]</h3>
 		<p>
-            一个包含该剪辑中有动画的所有属性的关键帧轨([page:KeyframeTrack])的数组。
+            一个包含该剪辑中有动画的所有属性的关键帧轨([page:KeyframeTrack])的数组。
 		</p>
 
 		<h3>[property:String uuid]</h3>
@@ -64,24 +64,24 @@
 
 		<h3>[method:this optimize]()</h3>
 		<p>
-            通过移除等效的顺序键(在变形目标序列中很常见)来优化每一个轨
+            通过移除等效的顺序键(在变形目标序列中很常见)来优化每一个轨
 
 		</p>
 
 		<h3>[method:this resetDuration]()</h3>
 		<p>
-			将剪辑的持续时间([page:.duration duration])设为最长的关键帧轨([page:KeyframeTrack])的持续时间。
+			将剪辑的持续时间([page:.duration duration])设为最长的关键帧轨([page:KeyframeTrack])的持续时间。
 			.
 		</p>
 
 		<h3>[method:this trim]()</h3>
 		<p>
-			修剪所有的轨到该剪辑的持续时间。
+			修剪所有的轨到该剪辑的持续时间。
 		</p>
 
 		<h3>[method:Boolean validate]()</h3>
 		<p>
-            对剪辑中的每个轨执行最小验证。如果所有轨道都有效,返回true。
+            对剪辑中的每个轨执行最小验证。如果所有轨道都有效,返回true。
 		</p>
 
 
@@ -91,10 +91,7 @@
 		<h3>[method:Array CreateClipsFromMorphTargetSequences]( [param:String name], [param:Array morphTargetSequence], [param:Number fps], [param:Boolean noLoop] )</h3>
 		<p>
 			返回从几何体的变形目标序列([page:Geometry.morphTargets morph
-			target sequences])创建的新动画剪辑(AnimationClip)数组,并尝试将变形目标名称分类为基于动画组的模式,如“Walk_001、Walk_002、Run_001、Run_002……”。<br /><br />
-
-			该方法被[page:JSONLoader]内部调用, 并且它使用了
-			[page:.CreateFromMorphTargetSequence CreateFromMorphTargetSequence].
+			target sequences])创建的新动画剪辑(AnimationClip)数组,并尝试将变形目标名称分类为基于动画组的模式,如“Walk_001、Walk_002、Run_001、Run_002……”。
 		</p>
 
 		<h3>[method:AnimationClip CreateFromMorphTargetSequence]( [param:String name], [param:Array morphTargetSequence], [param:Number fps], [param:Boolean noLoop] )</h3>

+ 21 - 30
docs/api/zh/animation/AnimationMixer.html

@@ -11,98 +11,89 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-			The AnimationMixer is a player for animations on a particular object in the scene. When
-			multiple objects in the scene are animated independently, one AnimationMixer may be used for
-			each object.<br /><br />
+            动画混合器是用于场景中特定对象的动画的播放器。当场景中的多个对象独立动画时,每个对象都可以使用同一个动画混合器。<br /><br />
 
-			For an overview of the different elements of the three.js animation system see the
-			"Animation System" article in the "Next Steps" section of the manual.
+			在使用手册的“下一步”章节中,“动画系统”一文对three.js动画系统中的不同元素作出了概述
 		</p>
 
 
-		<h2>Constructor</h2>
+		<h2>构造器</h2>
 
 
 		<h3>[name]( [param:Object3D rootObject] )</h3>
 		<p>
-			[page:Object3D rootObject] - the object whose animations shall be played by this mixer.<br />
+			[page:Object3D rootObject] - 混合器播放的动画所属的对象<br />
 		</p>
 
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 
 		<h3>[property:Number time]</h3>
 		<p>
-			The global mixer time (in seconds; starting with 0 on the mixer's creation).
+			全局的混合器时间(单位秒; 混合器创建的时刻记作0时刻)
 		</p>
 
 		<h3>[property:Number timeScale]</h3>
 		<p>
-			A scaling factor for the global [page:.time mixer time].<br /><br />
+			全局时间([page:.time mixer time])的比例因子<br /><br />
 
-			Note: Setting the mixer's timeScale to 0 and later back to 1 is a possibility to pause/unpause
-			all actions that are controlled by this mixer.
+			说明: 将混合器的时间比例设为0, 稍后再设置为1,可以暂停/取消暂停由该混合器控制的所有动作。
 		</p>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 
 		<h3>[method:AnimationAction clipAction]([param:AnimationClip clip], [param:Object3D optionalRoot])</h3>
 		<p>
-			Returns an [page:AnimationAction] for the passed clip, optionally using a root object different
-			from the mixer's default root. The first parameter can be either an [page:AnimationClip] object
-			or the name of an AnimationClip.<br /><br />
+			返回所传入的剪辑参数的[page:AnimationAction], 根对象参数可选,默认值为混合器的默认根对象。第一个参数可以是动画剪辑([page:AnimationClip])对象或者动画剪辑的名称。<br /><br />
 
-			If an action fitting the clip and root parameters doesn't yet exist, it will be created by
-			this method. Calling this method several times with the same clip and root parameters always
-			returns the same clip instance.
+			如果不存在符合传入的剪辑和根对象这两个参数的动作, 该方法将会创建一个。传入相同的参数多次调用将会返回同一个剪辑实例。
 		</p>
 
 		<h3>[method:AnimationAction existingAction]([param:AnimationClip clip], [param:Object3D optionalRoot])</h3>
 		<p>
-			Returns an existing [page:AnimationAction] for the passed clip, optionally using a root object
-			different from the mixer's default root.<br /><br />
+			返回传入剪辑的已有[page:AnimationAction], 根对象参数可选,默认值为混合器的默认根对象。<br /><br />
 
-			The first parameter can be either an [page:AnimationClip] object or the name of an AnimationClip.
+			第一个参数可以是动画剪辑([page:AnimationClip])对象或者动画剪辑的名称。
 		</p>
 
 		<h3>[method:Object3D getRoot]()</h3>
 		<p>
-			Returns this mixer's root object.
+			返回混合器的根对象
 		</p>
 
 		<h3>[method:AnimationMixer stopAllAction]()</h3>
 		<p>
-			Deactivates all previously scheduled actions on this mixer.
+			停用混合器上所有预定的动作
 		</p>
 
 		<h3>[method:AnimationMixer update]([param:Number deltaTimeInSeconds]) </h3>
 		<p>
-			Advances the global mixer time and updates the animation.<br /><br />
+			推进混合器时间并更新动画 <br /><br />
 
-			This is usually done in the render loop, passing [page:Clock.getDelta clock.getDelta] scaled by the mixer's [page:.timeScale timeScale]).
+			通常在渲染循环中完成, 传入按照混合器的时间比例([page:.timeScale timeScale])缩放过的[page:Clock.getDelta clock.getDelta]
 		</p>
 
 		<h3>[method:null uncacheClip]([param:AnimationClip clip])</h3>
 
 		<p>
-			Deallocates all memory resources for a clip.
+			释放剪辑的所有内存资源
 		</p>
 
 		<h3>[method:null uncacheRoot]([param:Object3D root]) </h3>
 		<p>
-			Deallocates all memory resources for a root object.
+			释放根对象的所有内存资源
 		</p>
 
 		<h3>[method:null uncacheAction]([param:AnimationClip clip], [param:Object3D optionalRoot])</h3>
 		<p>
-			Deallocates all memory resources for an action.
+			释放动作的所有内存资源
 		</p>
 
 
-		<h2>Source</h2>
+		<h2>源码</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 20 - 23
docs/api/zh/animation/AnimationObjectGroup.html

@@ -10,74 +10,71 @@
 	<body>
 		<h1>[name]</h1>
 
-		<p class="desc">A group of objects that receives a shared animation state.<br /><br />
+		<p class="desc">接收共享动画状态的一组对象。<br /><br />
 
-			For an overview of the different elements of the three.js animation system see the
-			"Animation System" article in the "Next Steps" section of the manual.
+			在使用手册的“下一步”章节中,“动画系统”一文对three.js动画系统中的不同元素作出了概述
 		</p>
 
-		<h2>Usage:</h2>
+		<h2>用法:</h2>
 
 		<p class="desc">
-			Add objects you would otherwise pass as 'root' to the constructor or the [page:AnimationMixer.clipAction clipAction]
-			method of [page:AnimationMixer AnimationMixer] and instead pass this object as 'root'.<br /><br />
+            将本来要作为根对象传入构造器或者动画混合器([page:AnimationMixer AnimationMixer])的[page:AnimationMixer.clipAction clipAction]方法中的对象加入组中,并将这个组对象作为根对象传递。
+			<br /><br />
 
-			Note that objects of this class appear as one object to the mixer,
-			so cache control of the individual objects must be done	on the group.
+		    注意,这个类的实例作为混合器中的一个对象,因此,必须对组内的单个对象做缓存控制。
 		</p>
 
 
-		<h2>Limitations</h2>
+		<h2>限制</h2>
 		<p class="desc">
-			The animated properties must be compatible among all objects in the group.<br /><br />
+			动画属性必须在组中的所有对象之间兼容。<br /><br />
 
-			A single property can either be controlled through a target group or directly, but not both.
+			单个属性可以通过目标组控制或者直接控制,但不能两者同时。
 		</p>
 
 
-		<h2>Constructor</h2>
+		<h2>构造器</h2>
 
 
 		<h3>[name]( [param:object obj1], [param:object obj2], [param:object obj3], ... )</h3>
-		[page:object obj] - an abitrary number of meshes that share the same animation state.<br />
+		[page:object obj] - 共享同一动画状态的任意数量的网格<br />
 
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 
 		<h3>[property:object stats]</h3>
 		<p>
-			An object that contains some informations of this *AnimationObjectGroup* (total number, number
-			in use, number of bindings per object)
+			一个包含此动画对象组(AnimationObjectGroup)的一些信息的对象 (总数, 使用中的数量,绑定到每个对象上的数量)
+
 		</p>
 
 		<h3>[property:String uuid]</h3>
 		<p>
-			The [link:http://en.wikipedia.org/wiki/Universally_unique_identifier UUID] of this
-			*AnimationObjectGroup*. It gets automatically assigned and shouldn't be edited.
+			这个动画对象组(AnimationObjectGroup)的[link:http://en.wikipedia.org/wiki/Universally_unique_identifier UUID]。它是自动分配的,不可被编辑。
 		</p>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 
 		<h3>[method:null add]( [param:object obj1], [param:object obj2], [param:object obj3], ... )</h3>
 		<p>
-			Adds an arbitrary number of objects to this *AnimationObjectGroup*.
+			将任意数量的对象添加到这个动画对象组(AnimationObjectGroup)。
 		</p>
 
 		<h3>[method:null remove]( [param:object obj1], [param:object obj2], [param:object obj3], ... )</h3>
 		<p>
-			Removes an arbitrary number of objects from this *AnimationObjectGroup*.
+			将任意数量的对象从这个动画对象组(AnimationObjectGroup)中删除。
 		</p>
 
 		<h3>[method:null uncache]( [param:object obj1], [param:object obj2], [param:object obj3], ... )</h3>
 		<p>
-			Deallocates all memory resources for the passed objects of this *AnimationObjectGroup*.
+			释放此动画对象组(AnimationObjectGroup)传递的对象的所有内存资源
 		</p>
 
 
-		<h2>Source</h2>
+		<h2>源码</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 11 - 9
docs/api/zh/animation/AnimationUtils.html

@@ -11,45 +11,47 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-		An object with various functions to assist with animations, used internally.
+            一个提供各种动画辅助方法的对象,内部使用。
 		</p>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 
 		<h3>[method:Array arraySlice]( array, from, to )</h3>
 		<p>
-		This is the same as  Array.prototype.slice, but also works on typed arrays.
+		和Array.prototype.slice作用一样, 但也适用于类型化数组.
 		</p>
 
 		<h3>[method:Array convertArray]( array, type, forceClone )</h3>
 		<p>
-		Converts an array to a specific type.
+            将数组转换为某种特定类型。
 		</p>
 
 		<h3>[method:Array flattenJSON]( jsonKeys, times, values, valuePropertyName  )</h3>
 		<p>
-		Used for parsing AOS keyframe formats.
+            用于解析AOS关键帧格式。
 		</p>
 
 		<h3>[method:Array getKeyframeOrder]( times )</h3>
 		<p>
-		Returns an array by which times and values can be sorted.
+            返回一个数组,时间和值可以根据此数组排序。
 		</p>
 
 		<h3>[method:Boolean isTypedArray]( object )</h3>
 		<p>
-		Returns *true* if the object is a typed array.
+            如果该对象是类型化数组,返回*true*
+
 		</p>
 
 		<h3>[method:Array sortedArray]( values, stride, order )</h3>
 		<p>
-		Sorts the array previously returned by [page:AnimationUtils.getKeyframeOrder getKeyframeOrder].
+            将[page:AnimationUtils.getKeyframeOrder getKeyframeOrder]方法返回的数组排序。
+
 		</p>
 
 
-		<h2>Source</h2>
+		<h2>源码</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 58 - 91
docs/api/zh/animation/KeyframeTrack.html

@@ -12,39 +12,31 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-			A KeyframeTrack is a timed sequence of [link:https://en.wikipedia.org/wiki/Key_frame keyframes],
-			which are composed of lists of times and related values, and which are used to animate a
-			specific property of an object.
+			关键帧轨道(KeyframeTrack)是关键帧([link:https://en.wikipedia.org/wiki/Key_frame keyframes])的定时序列,
+			它由时间和相关值的列表组成, 用来让一个对象的某个特定属性动起来。
 		</p>
 
 		<p>
-			For an overview of the different elements of the three.js animation system see the
-			"Animation System" article in the "Next Steps" section of the manual.
+            在使用手册的“下一步”章节中,“动画系统”一文对three.js动画系统中的不同元素作出了概述
 		</p>
 
 		<p>
-			In contrast to the animation hierarchy of the
-			[link:https://github.com/mrdoob/three.js/wiki/JSON-Model-format-3 JSON model format] a
-			*KeyframeTrack* doesn't store its single keyframes as objects in a "keys" array (holding the
-			times and the values for each frame together in one place).
+            和[link:https://github.com/mrdoob/three.js/wiki/JSON-Model-format-3 JSON model format]的动画层级相反,
+            关键帧轨道(KeyframeTrack)不会将单帧作为对象存储在“key”数组(一个存有每一帧的时间和值的地方)中。
+
 		</p>
 
 		<p>
-			Instead of this there are always two arrays in a *KeyframeTrack*: the [page:.times times] array
-			stores the time values for all keyframes of this track in sequential order, and the
-			[page:.values values] array contains the corresponding changing values of the animated property.
+            关键帧轨道(KeyframeTrack)中总是存在两个数组:[page:.times times]数组按顺序存储该轨道的所有关键帧的时间值,而[page:.values values]数组包含动画属性的相应更改值。
 		</p>
 
 		<p>
-			A single value, belonging to a certain point of time, can not only be a simple number, but (for
-			example) a vector (if a position is animated) or a quaternion (if a rotation is animated). For
-			this reason the values array (which is a flat array, too) might be three or four times as long as the
-			times array.
+            值数组中的每一个成员,属于某一特定时间点,不仅可以是一个简单的数字,还可以是(比如)一个向量(如果是位置动画)或者是一个四元数(如果是旋转动画)。
+            因此,值数组(也是一个平面阵列)的长度可能是时间数组的三四倍。
 		</p>
 
 		<p>
-			Corresponding to the different possible types of animated values there are several subclasses of
-			*KeyframeTrack*, inheriting the most properties and methods:
+            与不同类型的动画值对应,存在若干关键帧轨道(KeyframeTrack)的子类,继承了它大多数属性和方法:
 		</p>
 
 		<ul>
@@ -57,206 +49,181 @@
 		</ul>
 
 		<p>
-			Some examples of how to manually create [page:AnimationClip AnimationClips] with different sorts
-			of KeyframeTracks can be found in the [link:https://threejs.org/examples/js/AnimationClipCreator.js]
-			file.
+            可以在[link:https://threejs.org/examples/js/AnimationClipCreator.js]文件中找到用不同类型的关键帧轨道创建动画剪辑([page:AnimationClip AnimationClips])的示例。
 		</p>
 
 		<p>
-			Since explicit values are only specified for the discrete points of time stored in the times array,
-			all values in between have to be interpolated.
+            由于显式值仅针对存储在时间数组中的离散时间点指定,因此必须在两个时间点之间进行插值
 		</p>
 
 		<p>
-			The track's name is important for the connection of this track with a specific property of the
-			animated node (done by [page:PropertyBinding]).
+            轨道的名称对于这个轨道与动画节点的特定属性的连接(由[page:PropertyBinding]完成)很重要。
 		</p>
 
 
-		<h2>Constructor</h2>
+		<h2>构造器</h2>
 
 
 		<h3>[name]( [param:String name], [param:Array times], [param:Array values], [param:Constant interpolation] )</h3>
 		<p>
-			[page:String name] - the identifier for the *KeyframeTrack*.<br />
-			[page:Array times] - an array of keyframe times, converted internally to a
+			[page:String name] - 关键帧轨道(KeyframeTrack)的标识符.<br />
+			[page:Array times] - 关键帧的时间数组, 被内部转化为
 			[link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Float32Array Float32Array].<br />
-			[page:Array values] - an array with the values related to the times array, converted internally to a
+			[page:Array values] - 与时间数组中的时间点相关的值组成的数组, 被内部转化为
 			[link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Float32Array Float32Array].<br />
-			[page:Constant interpolation] - the type of interpolation to use. See
+			[page:Constant interpolation] - 使用的插值类型。 参见
 			[page:Animation Animation Constants] for possible values. Default is [page:Animation InterpolateLinear].
 		</p>
 
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 
 		<h3>[property:String name]</h3>
 		<p>
-			The track's name can refer to [page:Geometry.morphTargets morph targets] or
-			[page:SkinnedMesh bones] or possibly other values within an animated object. See
-			[page:PropertyBinding.parseTrackName] for the forms of strings that can be parsed for property
-			binding:
+            轨道的名称可以指动画对象中的变形目标([page:Geometry.morphTargets morph targets])、骨骼([page:SkinnedMesh bones])或可能的其他值
+			查看[page:PropertyBinding.parseTrackName]可获知哪些形式的字符串可以解析出绑定的属性:
 		</p>
-
 		<p>
-			The name can specify the node either using its name or its uuid (although it needs to be in the
-			subtree of the scene graph node passed into the mixer). Or, if the track name starts with a dot,
-			the track applies to the root node that was passed into the mixer.
+            可以使用节点名称或uuid(尽管它需要位于传递到混合器的场景图节点的子树中)引用到某节点。或者, 如果轨道名称的首字符是点,
+			该轨道会应用到传入到混合器的根节点上。
 		</p>
 
 		<p>
-			Usually after the node a property will be specified directly. But you can also specify a
-			subproperty, such as .rotation[x], if you just want to drive the X component of the rotation
-			via a float track.
+			通常,在该节点之后会直接指定一个属性。 但是也可以再指定一个子属性, 例如 如果只是想通过浮动轨道使X组件旋转,可使用 .rotation[x]。
 		</p>
 
 		<p>
-			You can also specify bones or multimaterials by using an object name, for example:
-			.bones[R_hand].scale; the red channel of the diffuse color of the fourth material in a
-			materials array - as a further example - can be accessed with .materials[3].diffuse[r].
+            还可以使用对象名称来指定骨骼或多材质,例如:.bones[R_hand].scale;再比如,材料数组中的第四个材料的漫反射颜色的红通道可以通过 .materials[3].diffuse[r]访问到。
 		</p>
 
 		<p>
-			PropertyBinding will also resolve morph target names, for example: .morphTargetInfluences[run].
+			属性绑定也会解析变形目标名称, 例如: .morphTargetInfluences[run]
 		</p>
 
 		<p>
-			Note: The track's name does not necessarily have to be unique. Multiple tracks can drive the same
-			property. The result should be based on a weighted blend between the multiple tracks according to
-			the weights of their respective actions.
+			说明: 轨道名称不一定得唯一。 多个轨道可驱动统一属性, 此时结果应该基于多个轨道之间根据其各自动作的权重的加权混合。
 		</p>
 
 		<h3>[property:Float32Array times]</h3>
 		<p>
-			A [link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Float32Array Float32Array],
-			converted from the times array which is passed in the constructor.
+			一个[link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Float32Array Float32Array]类型的值,由传入构造器中时间数组参数转化而来。
 		</p>
 
 		<h3>[property:Float32Array values]</h3>
 		<p>
-			A [link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Float32Array Float32Array],
-			converted from the values array which is passed in the constructor.
+			一个[link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Float32Array Float32Array]类型的值,
+			由传入构造器中值数组参数转化而来
 		</p>
 
 		<h3>[property:Constant DefaultInterpolation]</h3>
 		<p>
-			The default interpolation type: [page:Animation InterpolateLinear].
+			默认的参数插值类型: [page:Animation InterpolateLinear].
 		</p>
 
 		<h3>[property:Constant TimeBufferType ]</h3>
 		<p>
 			[link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Float32Array Float32Array],
-			the type of the buffer internally used for the times.
+			内部用于时间数组的缓冲区的类型
 		</p>
 
 		<h3>[property:Constant ValueBufferType ]</h3>
 		<p>
 			[link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Float32Array Float32Array],
-			the type of the buffer internally used for the values.
+			内部用于值数组的缓冲区的类型
 		</p>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 
 		<h3>[method:null createInterpolant]()</h3>
 		<p>
-			Creates a [page:LinearInterpolant LinearInterpolant], [page:CubicInterpolant CubicInterpolant]
-			or [page:DiscreteInterpolant DiscreteInterpolant], depending on the value of the interpolation
-			parameter passed in the constructor.
+			根据传入构造器中的插值类型参数,创建线性插值([page:LinearInterpolant LinearInterpolant]),立方插值([page:CubicInterpolant CubicInterpolant])或离散插值
+			([page:DiscreteInterpolant DiscreteInterpolant])
 		</p>
 
 		<h3>[method:null getInterpolation]()</h3>
 		<p>
-			Returns the interpolation type.
+			返回插值类型
 		</p>
 
 		<h3>[method:Number getValueSize]()</h3>
 		<p>
-			Returns the size of each value (that is the length of the [page:.values values] array divided
-			by the length of the [page:.times times] array).
+			返回每个值的大小(即[page:.values values]数组的长度除以[page:.times times]数组的长度
+
 		</p>
 
 		<h3>[method:DiscreteInterpolant InterpolantFactoryMethodDiscrete]( [link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Float32Array result] )</h3>
 		<p>
-			Creates a new [page:DiscreteInterpolant DiscreteInterpolant] from the
-			[page:KeyframeTrack.times times] and [page:KeyframeTrack.times values]. A Float32Array can be
-			passed which will receive the results. Otherwise a new array with the appropriate size will be
-			created automatically.
+            根据时间([page:KeyframeTrack.times times])和值([page:KeyframeTrack.times values])创建一个新的离散插值([page:DiscreteInterpolant DiscreteInterpolant])。
+            可传入一个Float32Array类型的变量来接收结果, 否则会自动创建一个长度适宜的新数组。
 		</p>
 
 		<h3>[method:null InterpolantFactoryMethodLinear]( [link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Float32Array result] )</h3>
 		<p>
-			Creates a new [page:LinearInterpolant LinearInterpolant] from the
-			[page:KeyframeTrack.times times] and [page:KeyframeTrack.times values]. A Float32Array can be
-			passed which will receive the results. Otherwise a new array with the appropriate size will be
-			created automatically.
+            根据时间([page:KeyframeTrack.times times])和值([page:KeyframeTrack.times values])创建一个新的线性插值([page:LinearInterpolant LinearInterpolant])。
+            可传入一个Float32Array类型的变量来接收结果, 否则会自动创建一个长度适宜的新数组。
 		</p>
 
 		<h3>[method:null InterpolantFactoryMethodSmooth]( [link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Float32Array result] )</h3>
 		<p>
-			Create a new [page:CubicInterpolant CubicInterpolant] from the
-			[page:KeyframeTrack.times times] and [page:KeyframeTrack.times values]. A Float32Array can be
-			passed which will receive the results. Otherwise a new array with the appropriate size will be
-			created automatically.
+            根据时间([page:KeyframeTrack.times times])和值([page:KeyframeTrack.times values])创建一个新的立方插值([page:CubicInterpolant CubicInterpolant])。
+            可传入一个Float32Array类型的变量来接收结果, 否则会自动创建一个长度适宜的新数组。
 		</p>
 
 		<h3>[method:this optimize]()</h3>
 		<p>
-			Removes equivalent sequential keys, which are common in morph target sequences.
+            删除等效的顺序键,这些键在变形目标序列中很常见。
 		</p>
 
 		<h3>[method:this scale]()</h3>
 		<p>
-			Scales all keyframe times by a factor.<br /><br />
+            缩放所有关键帧的时间。<br /><br />
 
-			Note: This is useful, for example, for conversions to a certain rate of frames per seconds (as it
-			is done internally by
-			[page:AnimationClip.CreateFromMorphTargetSequence animationClip.CreateFromMorphTargetSequence]).
+			说明: 这个方法很有用,例如, 可用于转化为某一特定帧率(正如[page:AnimationClip.CreateFromMorphTargetSequence animationClip.CreateFromMorphTargetSequence]内部所做的一样)。
 		</p>
 
 		<h3>[method:this setInterpolation]( [param:Constant interpolationType] )</h3>
 		<p>
-			Sets the interpolation type. See [page:Animation Animation Constants] for choices.
+			设置插值类型。 参阅[page:Animation Animation Constants]以供选择。
 		</p>
 
 		<h3>[method:this shift]( [param:Number timeOffsetInSeconds] )</h3>
 		<p>
-			Moves all keyframes either forward or backward in time.
+            及时删除之前或之后的所有关键帧。
 		</p>
 
 
 		<h3>[method:this trim]( [param:Number startTimeInSeconds], [param:Number endTimeInSeconds] )</h3>
 		<p>
-			Removes keyframes before *startTime* and after *endTime*,
-			without changing any values within the range [*startTime*, *endTime*].
+			删除开始时间(startTime)之前以及结束时间(endTime)之后的关键帧,不改变[*startTime*, *endTime*]范围内的任何值。
 		</p>
 
 		<h3>[method:Boolean validate]()</h3>
 		<p>
-			Performs minimal validation on the tracks. Returns true if valid.
+            在轨道上执行最小验证,有效则返回true
 		</p>
 
 		<p>
-			This method logs errors to the console, if a track is empty, if the [page:.valueSize value size] is not valid, if an item
-			in the [page:.times times] or [page:.values values] array is not a valid number or if the items in the *times* array are out of order.
+			如果出现以下情况,该方法会在控制台输出错误日志: 轨道为空; [page:.valueSize value size]值不可靠;
+			[page:.times times]数组或[page:.values values]数组中的元素不是数字;*times*数组中的元素乱序。
 		</p>
 
-		<h2>Static Methods</h2>
+		<h2>静态方法</h2>
 
 		<h3>[method:KeyframeTrack parse]( [param:JSON json] )</h3>
 		<p>
-		Parses a JSON object and returns a new keyframe track of the correct type.
+            解析JSON对象并返回一个正确类型的新关键帧轨道。
 		</p>
 
 		<h3>[method:JSON toJSON]( [param:KeyframeTrack track] )</h3>
 		<p>
-		Converts the track to JSON.
+		    将该轨道转化为JSON
 		</p>
 
 
-		<h2>Source</h2>
+		<h2>源码</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 12 - 13
docs/api/zh/animation/PropertyBinding.html

@@ -11,22 +11,22 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-			This holds a reference to a real property in the scene graph; used internally.
+            对场景图中某一真实属性的引用,内部使用。
 		</p>
 
 
-		<h2>Constructor</h2>
+		<h2>构造器</h2>
 
 
 		<h3>[name]( [param:Object3D rootNode], path, parsedPath )</h3>
 		<p>
 			-- [page:Object3D rootNode]:
 			-- path
-			-- parsedPath (optional)
+			-- parsedPath (可选)
 
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Number path]</h3>
 		<p>
@@ -70,7 +70,7 @@
 
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 		<h3>[method:null getValue]( [param:Array targetArray], [param:Number offset] )</h3>
 		<p>
@@ -82,28 +82,27 @@
 
 		<h3>[method:null bind]( )</h3>
 		<p>
-			Create getter / setter pair for a property in the scene graph. Used internally by
-			[page:PropertyBinding.getValue getValue] and [page:PropertyBinding.setValue setValue].
+			为场景图中的属性创建 getter / setter对。 被[page:PropertyBinding.getValue getValue]和[page:PropertyBinding.setValue setValue]方法内部使用。
 		</p>
 
 		<h3>[method:null unbind]( )</h3>
 		<p>
-			Unbind getter / setter pair for a property in the scene graph.
+			解绑场景图中某属性的getter / setter对。
 		</p>
 
 		<h3>[method:Constructor Composite]( targetGroup, path, optionalParsedPath )</h3>
 		<p>
-			Create a new Composite PropertyBinding.
+			创建一个新的复合属性绑定(Composite PropertyBinding)
 		</p>
 
 		<h3>[method:Constructor create]( root, path, parsedPath )</h3>
 		<p>
-			Create a new Composite PropertyBinding (if root is an [page:AnimationObjectGroup]) or PropertyBinding.
+            创建一个新的复合属性绑定(Composite PropertyBinding) (如果根对象是[page:AnimationObjectGroup])或普通属性绑定
 		</p>
 
 		<h3>[method:Constructor parseTrackName]( trackName )</h3>
 		<p>
-			Matches strings in the following forms:<br />
+			匹配以下形式的字符串:<br />
 			-- nodeName.property<br />
 			-- nodeName.property[accessor]<br />
 			-- nodeName.material.property[accessor]<br />
@@ -117,13 +116,13 @@
 
 		<h3>[method:Constructor findNode]( root, nodeName )</h3>
 		<p>
-			Find a node in a node tree or [page:Skeleton Skeleton].
+            从节点树或骨骼([page:Skeleton Skeleton])中找出某节点
 		</p>
 
 
 
 
-		<h2>Source</h2>
+		<h2>源码</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 17 - 18
docs/api/zh/animation/PropertyMixer.html

@@ -11,11 +11,11 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-		Buffered scene graph property that allows weighted accumulation; used internally.
+        允许加权累加的缓冲场景图属性,内部使用
 		</p>
 
 
-		<h2>Constructor</h2>
+		<h2>构造器</h2>
 
 
 		<h3>[name]( [param:PropertyBinding binding], [param:String typeName], [param:Number valueSize] )</h3>
@@ -26,7 +26,7 @@
 		</p>
 
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 
 		<h3>[property:PropertyBinding binding]</h3>
@@ -36,16 +36,15 @@
 
 		<h3>[property:TypedArray buffer]</h3>
 		<p>
-			Buffer with size [page:PropertyMixer valueSize] * 4. <br /><br />
-			This has the layout: [ incoming | accu0 | accu1 | orig ]<br /><br />
-			Interpolators can use .buffer as their .result and the data then goes to 'incoming'.
-			'accu0' and 'accu1' are used frame-interleaved for the cumulative result and
-			are compared to detect changes. 'orig' stores the original state of the property.
+			大小为 4 * [page:PropertyMixer valueSize] 的缓冲区 <br /><br />
+			布局为: [ incoming | accu0 | accu1 | orig ]<br /><br />
+			插值器可使用 .buffer 作为 .result 且数据会进入'incoming'区.
+			'accu0'和'accu1'用于按帧交错累加‘incoming’中的数据并进行比较以侦测变化。'orig'存储着属性的原始状态。
 		</p>
 
 		<h3>[property:Number cumulativeWeight]</h3>
 		<p>
-			Default is *0*.
+			默认值是0
 		</p>
 
 		<h3>[property:Number valueSize]</h3>
@@ -55,42 +54,42 @@
 
 		<h3>[property:Number referenceCount]</h3>
 		<p>
-			Default is *0*.
+            默认值是0
 		</p>
 
 		<h3>[property:Number useCount]</h3>
 		<p>
-			Default is *0*.
+           默认值是0
 		</p>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 
 		<h3>[method:null accumulate]( [param:Number accuIndex], [param:Number weight] )</h3>
 		<p>
-			Accumulate data in [page:PropertyMixer.buffer buffer][accuIndex] 'incoming' region into 'accu[i]'.<br />
+			将[page:PropertyMixer.buffer buffer][accuIndex]中'incoming'区的数据累加到'accu[i]'区中。<br />
 
-			If weight is *0* this does nothing.
+			如果权值为0,则什么都不做。
 		</p>
 
 		<h3>[method:null apply]( [param:Number accuIndex] )</h3>
 		<p>
-			Apply the state of [page:PropertyMixer.buffer buffer] 'accu[i]' to the binding when accus differ.
+			当累加值不同时,将[page:PropertyMixer.buffer buffer] 'accu[i]区的状态应用于绑定.
 		</p>
 
 		<h3>[method:null saveOriginalState]( )</h3>
 		<p>
-			Remember the state of the bound property and copy it to both accus.
+			记住绑定属性的状态并复制到两个'accu'区中.
 		</p>
 
 		<h3>[method:null restoreOriginalState](  )</h3>
 		<p>
-			Apply the state previously taken via 'saveOriginalState' to the binding.
+            将预先通过'saveOriginalState'方法取得的状态应用于绑定。
 		</p>
 
 
-		<h2>Source</h2>
+		<h2>方法</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 14 - 14
docs/api/zh/animation/tracks/BooleanKeyframeTrack.html

@@ -14,36 +14,36 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-			A Track of boolean keyframe values.
+			布尔类型的关键帧轨道。
 		</p>
 
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 
 		<h3>[name]( [param:String name], [param:Array times], [param:Array values] )</h3>
 		<p>
-			[page:String name] - (required) identifier for the KeyframeTrack.<br />
-			[page:Array times] - (required) array of keyframe times.<br />
-			[page:Array values] - values for the keyframes at the times specified.<br />
+			[page:String name] - (必须) 关键帧轨道(KeyframeTrack)的标识符.<br />
+			[page:Array times] - (必须) 关键帧的时间数组.<br />
+			[page:Array values] - 与时间数组中的时间点对应的值数组.<br />
 		</p>
 
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 
 		<p class="desc">
-			See [page:KeyframeTrack] for inherited properties.
+			参见 [page:KeyframeTrack] 查看继承的属性.
 		</p>
 
 		<h3>[property:Constant DefaultInterpolation]</h3>
 		<p>
-			The default interpolation type to use, [page:Animation InterpolateDiscrete].
+			默认的插值类型。 参见 [page:Animation InterpolateDiscrete].
 		</p>
 
 		<h3>[property:Array ValueBufferType]</h3>
 		<p>
-			A normal Array (no Float32Array in this case, unlike *ValueBufferType* of [page:KeyframeTrack]).
+			一个基本数组 (不是 Float32Array 类型, 与 [page:KeyframeTrack] 内的 *ValueBufferType* 属性不一样).
 		</p>
 
 		<h3>[property:String ValueTypeName]</h3>
@@ -52,25 +52,25 @@
 		</p>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 
 		<p class="desc">
-			See [page:KeyframeTrack] for inherited methods.
+			参见 [page:KeyframeTrack] 查看继承的方法.
 		</p>
 
 		<h3>[method:null InterpolantFactoryMethodLinear ]()</h3>
 		<p>
-			The value of this method here is 'undefined', as it does not make sense for discrete properties.
+			这个方法在这里的值为 'undefined', 因为他对离散属性没有意义.
 		</p>
 
 		<h3>[method:null InterpolantFactoryMethodSmooth ]()</h3>
 		<p>
-			The value of this method here is 'undefined', as it does not make sense for discrete properties.
+			这个方法在这里的值为 'undefined', 因为他对离散属性没有意义.
 		</p>
 
 
-		<h2>Source</h2>
+		<h2>源码</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 12 - 13
docs/api/zh/animation/tracks/ColorKeyframeTrack.html

@@ -14,31 +14,30 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-			A Track of keyframe values that represent color changes.<br /><br />
-			The very basic implementation of this subclass has nothing special yet. However, this is the place
-			for color space parameterization.
+			反应颜色变化的关键帧轨道。<br /><br />
+			这个子类的基本实现还没有什么特别之处。不过,这里可以表示颜色空间参数化。
 		</p>
 
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 
 		<h3>[name]( [param:String name], [param:Array times], [param:Array values] )</h3>
 		<p>
-			[page:String name] - (required) identifier for the KeyframeTrack.<br />
-			[page:Array times] - (required) array of keyframe times.<br />
-			[page:Array values] - values for the keyframes at the times specified.<br />
-			[page:Constant interpolation] - the type of interpolation to use. See
-			[page:Animation Animation Constants] for possible values. Default is
+			[page:String name] - (必须) 关键帧轨道(KeyframeTrack)的标识符.<br />
+			[page:Array times] - (必须) 关键帧的时间数组.<br />
+			[page:Array values] - 与时间数组中的时间点对应的值数组.<br />
+			[page:Constant interpolation] - 使用的插值类型。 取值参考
+			[page:Animation Animation Constants]. 默认值为
 			[page:Animation InterpolateLinear].
 		</p>
 
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 
 		<p class="desc">
-			See [page:KeyframeTrack] for inherited properties.
+			参见 [page:KeyframeTrack] 查看继承的属性.
 		</p>
 
 		<h3>[property:String ValueTypeName]</h3>
@@ -51,10 +50,10 @@
 
 
 		<p class="desc">
-			See [page:KeyframeTrack] for inherited methods.
+			参见 [page:KeyframeTrack] 查看继承的方法.
 		</p>
 
-		<h2>Source</h2>
+		<h2>源码</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 12 - 12
docs/api/zh/animation/tracks/NumberKeyframeTrack.html

@@ -14,29 +14,29 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-			A Track of numeric keyframe values.
+			数字类型的关键帧轨道
 		</p>
 
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 
 		<h3>[name]( [param:String name], [param:Array times], [param:Array values] )</h3>
 		<p>
-			[page:String name] - (required) identifier for the KeyframeTrack.<br />
-			[page:Array times] - (required) array of keyframe times.<br />
-			[page:Array values] - values for the keyframes at the times specified.<br />
-			[page:Constant interpolation] - the type of interpolation to use. See
-			[page:Animation Animation Constants] for possible values. Default is
+			[page:String name] - (必须) 关键帧轨道(KeyframeTrack)的标识符.<br />
+			[page:Array times] - (必须) 关键帧的时间数组.<br />
+			[page:Array values] - 与时间数组中的时间点对应的值数组.<br />
+			[page:Constant interpolation] - 使用的插值类型。 取值参考
+			[page:Animation Animation Constants] 默认值为
 			[page:Animation InterpolateLinear].
 		</p>
 
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 
 		<p class="desc">
-			See [page:KeyframeTrack] for inherited properties.
+			参见 [page:KeyframeTrack] 查看继承的属性.
 		</p>
 
 
@@ -46,15 +46,15 @@
 		</p>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 
 		<p class="desc">
-			See [page:KeyframeTrack] for inherited methods.
+			参见 [page:KeyframeTrack] 查看继承的方法.
 		</p>
 
 
-		<h2>Source</h2>
+		<h2>源码</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 17 - 16
docs/api/zh/animation/tracks/QuaternionKeyframeTrack.html

@@ -14,34 +14,34 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-			A Track of quaternion keyframe values.
+			四元数类型的关键帧轨道。
 		</p>
 
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 
 		<h3>[name]( [param:String name], [param:Array times], [param:Array values] )</h3>
 		<p>
-			[page:String name] (required) identifier for the KeyframeTrack.<br />
-			[page:Array times] (required) array of keyframe times.<br />
-			[page:Array values] values for the keyframes at the times specified.<br />
-			[page:Constant interpolation] the type of interpolation to use. See
-			[page:Animation Animation Constants] for possible values. Default is
+			[page:String name] - (必须) 关键帧轨道(KeyframeTrack)的标识符.<br />
+			[page:Array times] - (必须) 关键帧的时间数组.<br />
+			[page:Array values] - 与时间数组中的时间点对应的值数组.<br />
+			[page:Constant interpolation] - 使用的插值类型。 取值参考
+			[page:Animation Animation Constants] 默认值为
 			[page:Animation InterpolateLinear].
 		</p>
 
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 
 		<p class="desc">
-			See [page:KeyframeTrack] for inherited properties.
+			参见 [page:KeyframeTrack] 查看继承的属性.
 		</p>
 
 		<h3>[property:Constant DefaultInterpolation]</h3>
 		<p>
-			The default interpolation type to use, [page:Animation InterpolateLinear].
+			默认的插值类型。 参见 [page:Animation InterpolateDiscrete].
 		</p>
 
 		<h3>[property:String ValueTypeName]</h3>
@@ -50,22 +50,23 @@
 		</p>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 
 		<p class="desc">
-			See [page:KeyframeTrack] for inherited methods.
+			参见 [page:KeyframeTrack] 查看继承的方法.
 		</p>
 
 		<h3>[method:null InterpolantFactoryMethodLinear]()</h3>
 		<p>
-			Returns a new [page:QuaternionLinearInterpolant QuaternionLinearInterpolant] based on the
-			[page:KeyframeTrack.values values], [page:KeyframeTrack.times times] and
-			[page:KeyframeTrack.valueSize valueSize] of the keyframes.
+			根据值数组 ([page:KeyframeTrack.values values]),
+			时间 ([page:KeyframeTrack.times times])
+			和值大小 [page:KeyframeTrack.valueSize valueSize]
+			创建一个新的线性插值 ([page:QuaternionLinearInterpolant QuaternionLinearInterpolant])。
 		</p>
 
 
-		<h2>Source</h2>
+		<h2>源码</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 16 - 16
docs/api/zh/animation/tracks/StringKeyframeTrack.html

@@ -14,39 +14,39 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-			A Track of string keyframe values.
+			字符串类型的关键帧轨道
 		</p>
 
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 
 		<h3>[name]( [param:String name], [param:Array times], [param:Array values] )</h3>
 		<p>
-			[page:String name] - (required) identifier for the KeyframeTrack.<br />
-			[page:Array times] - (required) array of keyframe times.<br />
-			[page:Array values] - values for the keyframes at the times specified.<br />
-			[page:Constant interpolation] - the type of interpolation to use. See
-			[page:Animation Animation Constants] for possible values. Default is
+			[page:String name] - (必须) 关键帧轨道(KeyframeTrack)的标识符.<br />
+			[page:Array times] - (必须) 关键帧的时间数组.<br />
+			[page:Array values] - 与时间数组中的时间点对应的值数组.<br />
+			[page:Constant interpolation] - 使用的插值类型。 取值参考
+			[page:Animation Animation Constants] 默认值为
 			[page:Animation InterpolateDiscrete].
 		</p>
 
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 
 		<p class="desc">
-			See [page:KeyframeTrack] for inherited properties.
+			参见 [page:KeyframeTrack] 查看继承的属性.
 		</p>
 
 		<h3>[property:Constant DefaultInterpolation]</h3>
 		<p>
-			The default interpolation type to use, [page:Animation InterpolateDiscrete].
+			默认的插值类型。 参见 [page:Animation InterpolateDiscrete].
 		</p>
 
 		<h3>[property:Array ValueBufferType]</h3>
 		<p>
-			A normal Array (no Float32Array in this case, unlike *ValueBufferType* of [page:KeyframeTrack]).
+			一个基本数组 (不是 Float32Array 类型, 与 [page:KeyframeTrack] 内的 *ValueBufferType* 属性不一样).
 		</p>
 
 		<h3>[property:String ValueTypeName]</h3>
@@ -55,25 +55,25 @@
 		</p>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 
 		<p class="desc">
-			See [page:KeyframeTrack] for inherited methods.
+			参见 [page:KeyframeTrack] 查看继承的方法.
 		</p>
 
 		<h3>[method:null InterpolantFactoryMethodLinear]()</h3>
 		<p>
-		  The value of this method here is 'undefined', as it does not make sense for discrete properties.
+			这个方法在这里的值为 'undefined', 因为他对离散属性没有意义.
 		</p>
 
 		<h3>[method:null InterpolantFactoryMethodSmooth]()</h3>
 		<p>
-		  The value of this method here is 'undefined', as it does not make sense for discrete properties.
+			这个方法在这里的值为 'undefined', 因为他对离散属性没有意义.
 		</p>
 
 
-		<h2>Source</h2>
+		<h2>源码</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 12 - 12
docs/api/zh/animation/tracks/VectorKeyframeTrack.html

@@ -14,29 +14,29 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-			A Track of vector keyframe values.
+			向量类型的关键帧轨道
 		</p>
 
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 
 		<h3>[name]( [param:String name], [param:Array times], [param:Array values] )</h3>
 		<p>
-			[page:String name] - (required) identifier for the KeyframeTrack.<br />
-			[page:Array times] - (required) array of keyframe times.<br />
-			[page:Array values] - values for the keyframes at the times specified.<br />
-			[page:Constant interpolation] - the type of interpolation to use. See
-			[page:Animation Animation Constants] for possible values. Default is
+			[page:String name] - (必须) 关键帧轨道(KeyframeTrack)的标识符.<br />
+			[page:Array times] - (必须) 关键帧的时间数组.<br />
+			[page:Array values] - 与时间数组中的时间点对应的值数组.<br />
+			[page:Constant interpolation] - 使用的插值类型。 取值参考
+			[page:Animation Animation Constants] 默认值为
 			[page:Animation InterpolateLinear].
 		</p>
 
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 
 		<p class="desc">
-			See [page:KeyframeTrack] for inherited properties.
+			参见 [page:KeyframeTrack] 查看继承的属性.
 		</p>
 
 		<h3>[property:String ValueTypeName]</h3>
@@ -45,15 +45,15 @@
 		</p>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 
 		<p class="desc">
-			See [page:KeyframeTrack] for inherited methods.
+			参见 [page:KeyframeTrack] 查看继承的方法.
 		</p>
 
 
-		<h2>Source</h2>
+		<h2>源码</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

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

@@ -62,6 +62,9 @@
 		<h3>[property:AudioContext context]</h3>
 		<p>构造函数中传入[page:AudioListener listener]的[link:https://developer.mozilla.org/en-US/docs/Web/API/AudioContext AudioContext].</p>
 
+		<h3>[property:Number detune]</h3>
+		<p>TODO</p>
+
 		<h3>[property:Array filters]</h3>
 		<p>表示[link:https://developer.mozilla.org/en-US/docs/Web/API/BiquadFilterNode BiquadFilterNodes]的数组. 可以使用多种不同的低阶filters去创建复杂的音效. filters可以通过 [page:Audio.setFilter] 或者 [page:Audio.setFilters]设置.</p>
 
@@ -78,6 +81,9 @@
 		<h3>[property:Boolean isPlaying]</h3>
 		<p>是否正在播放</p>
 
+		<h3>[property:AudioListener listener]</h3>
+		<p>A reference to the listener object of this audio.</p>
+
 		<h3>[property:Number startTime]</h3>
 		<p>开始播放的时间. 和[link:https://developer.mozilla.org/en-US/docs/Web/API/AudioBufferSourceNode/start AudioBufferSourceNode.start]()的*when*参数一样. 默认为 *0*.</p>
 

+ 2 - 0
docs/api/zh/audio/AudioListener.html

@@ -66,6 +66,8 @@
 		<h3>[property:AudioNode filter]</h3>
 		<p>默认为*null*.</p>
 
+		<h3>[property:Number timeDelta]</h3>
+		<p>Time delta value for audio entities. Use in context of [link:https://developer.mozilla.org/en-US/docs/Web/API/AudioParam/linearRampToValueAtTime AudioParam.linearRampToValueAtTimeDefault](). Default is *0*.</p>
 
 		<h2>方法</h2>
 

+ 9 - 8
docs/api/zh/cameras/ArrayCamera.html

@@ -10,18 +10,19 @@
 	<body>
 		[page:PerspectiveCamera] &rarr;
 
-		<h1>阵列摄像机([name])</h1>
+		<h1>摄像机阵列([name])</h1>
 
 		<p class="desc">
-			[name] 可以被用来更加高效地用一组已经预定义好的摄像机来渲染一个场景。 这对于VR场景的渲染来说,是非常重要的一个性能体现。<br />
-			一个 [name] 的实例中总是包含着一组子摄像机,应当为每一个子摄像机定义*bound*(边界)这个属性,该属性决定了由该子摄像机所渲染的视口区域的大小。
+
+			[name] 用于更加高效地使用一组已经预定义的摄像机来渲染一个场景。这将能够更好地提升VR场景的渲染性能。<br />
+			一个 [name] 的实例中总是包含着一组子摄像机,应当为每一个子摄像机定义*bound*(边界)这个属性,这一属性决定了由该子摄像机所渲染的视口区域的大小。
 		</p>
 
 		<h2>示例</h2>
 
 		<p>[example:webgl_camera_array camera / array ]</p>
 
-		<h2>构造</h2>
+		<h2>构造函数</h2>
 
 		<h3>[name]( [param:Array array] )</h3>
 		<p>
@@ -30,17 +31,17 @@
 
 
 		<h2>属性</h2>
-		<p>请参阅其基类 [page:PerspectiveCamera] 来查看共有属性。</p>
+		<p>请参阅基类[page:PerspectiveCamera]的公共属性。</p>
 
 		<h3>[property:Array cameras]</h3>
 		<p>
-			一个包含多个摄像机数组。
+			摄像机数组。
 		</p>
 
 		<h2>方法</h2>
-		<p>请参阅其基类 [page:PerspectiveCamera] 来查看共有方法。</p>
+		<p>请参阅基类[page:PerspectiveCamera]的公共方法。</p>
 
-		<h2>源码</h2>
+		<h2>源码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

+ 15 - 3
docs/api/zh/cameras/Camera.html

@@ -13,20 +13,24 @@
 		<h1>摄像机([name])</h1>
 
 		<p class="desc">
-			摄像机的抽象基类,你创建一个摄像机总会继承这个类。
+			摄像机的抽象基类。在构建新摄像机时,应始终继承此类。
 		</p>
 
 
-		<h2>构造器</h2>
+		<h2>构造函数</h2>
+
 
 
 		<h3>[name]()</h3>
 		<p>
+
 			创建一个新的[name](摄像机)。注意:这个类并不是被直接调用的;你所想要的或许是一个 [page:PerspectiveCamera](透视摄像机)或者 [page:OrthographicCamera](正交摄像机)。
+
 		</p>
 
 
 		<h2>属性</h2>
+
 		<p>请参阅其基类[page:Object3D]来查看共有属性。</p>
 
 		<h3>[property:Boolean isCamera]</h3>
@@ -34,17 +38,21 @@
 			用于来检查这个类或者派生的类是否为摄像机,默认为*true*。
 			<br /><br />
 
-			你不应当对这个属性进行改变,因为它在内部由渲染器使用,以用于优化。
+			你不应当对这个属性进行改变,因为它在内部由渲染器使用,以用于优化。
+
 		</p>
 
 		<h3>[property:Layers layers]</h3>
 		<p>
+
 		摄像机是一个[page:Layers layers]的成员. 这是一个从[page:Object3D]继承而来的属性。<br /><br />
 			 当摄像机的视点被渲染的时候,物体必须和当前被看到的摄像机共享至少一个层。
+
 		</p>
 
 		<h3>[property:Matrix4 matrixWorldInverse]</h3>
 		<p>
+
 			这是matrixWorld矩阵的逆矩阵。 MatrixWorld包含了相机的世界变换矩阵。
 		</p>
 
@@ -61,15 +69,19 @@
 		<h3>[method:Camera clone]( )</h3>
 		<p>
 			 返回一个具有和当前相机的属性一样的新的相机。
+
 		</p>
 
 		<h3>[method:Camera copy]( [param:Camera source], [param:Boolean recursive] )</h3>
 		<p>
+
 		将源摄像机的属性复制到新摄像机中。
+
 		</p>
 
 		<h3>[method:Vector3 getWorldDirection]( [param:Vector3 target] )</h3>
 		<p>
+
 		[page:Vector3 target] — 调用该函数的结果将复制给该Vector3对象。<br /><br />
 
 		返回一个能够表示当前摄像机所正视的世界空间方向的[page:Vector3]对象。

+ 7 - 0
docs/api/zh/cameras/CubeCamera.html

@@ -12,6 +12,7 @@
 
 		<h1>立方相机([name])</h1>
 
+
 		<p class="desc">创建6个摄像机,并将它们所拍摄的场景渲染到[page:WebGLRenderTargetCube]上。</p>
 
 		<h2>示例</h2>
@@ -40,17 +41,21 @@
 		</code>
 
 
+
 		<h2>构造器</h2>
 
 
+
 		<h3>[name]( [param:Number near], [param:Number far], [param:Number cubeResolution] )</h3>
 		<p>
+
 		near -- 远剪切面的距离<br />
 		far -- 近剪切面的距离<br />
 		cubeResolution -- 设置立方体边缘的长度
 		</p>
 		<p>
 			构造一个包含6个[page:PerspectiveCamera PerspectiveCameras](透视摄像机)的立方摄像机,并将其拍摄的场景渲染到一个[page:WebGLRenderTargetCube]上。
+
 		</p>
 
 
@@ -67,6 +72,7 @@
 		<p>请参阅其基类[page:Object3D]来查看其共有方法。</p>
 
 
+
 		<h3>[method:null update]( [param:WebGLRenderer renderer], [param:Scene scene] )</h3>
 		<p>
 		renderer -- 当前的WebGL渲染器<br />
@@ -80,6 +86,7 @@
 		<p>
 			这个方法用来来清除[page:CubeCamera.renderTarget renderTarget]的颜色、深度和/或模板缓冲区。
 			颜色缓冲区设置为渲染器当前的“清除”色。参数默认值均为*true*。
+
 		</p>
 
 		<h2>源代码</h2>

+ 6 - 0
docs/api/zh/cameras/OrthographicCamera.html

@@ -41,11 +41,14 @@
 scene.add( camera );</code>
 
 
+
 		<h2>构造器</h2>
 
 
+
 		<h3>[name]( [param:Number left], [param:Number right], [param:Number top], [param:Number bottom], [param:Number near], [param:Number far] )</h3>
 		<p>
+
 		left — 摄像机视锥体左侧面。<br />
 		right — 摄像机视锥体右侧面。<br />
 		top — 摄像机视锥体上侧面。<br />
@@ -54,6 +57,7 @@ scene.add( camera );</code>
 		far — 摄像机视锥体远端面。<br /><br />
 
 		这些参数一起定义了摄像机的[link:https://en.wikipedia.org/wiki/Viewing_frustum viewing frustum](视锥体)。
+
 		</p>
 
 
@@ -71,6 +75,7 @@ scene.add( camera );</code>
 		<p>
 			摄像机视锥体远端面,其默认值为*2000*。<br /><br />
 			其值的有效范围介于[page:.near near](摄像机视锥体近端面)和无穷大之间。
+
 		</p>
 
 		<h3>[property:Boolean isOrthographicCamera]</h3>
@@ -130,6 +135,7 @@ scene.add( camera );</code>
 		<h3>[method:null updateProjectionMatrix]()</h3>
 		<p>
 			更新摄像机投影矩阵。在任何参数被改变以后必须被调用。
+
 		</p>
 
 		<h3>[method:JSON toJSON]()</h3>

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

@@ -133,9 +133,7 @@ scene.add( camera );</code>
 		<p>
 			通过相对于当前[page:PerspectiveCamera.filmGauge .filmGauge]的焦距,设置FOV。
 		<br /><br />
-			默认情况下,焦距是为35mm(全画幅)摄像机而指定的。
-		By default, the focal length is specified for a 35mm (full frame) camera.
-		</p>
+			默认情况下,焦距是为35mm(全画幅)摄像机而指定的。</p>
 
 		<h3>[method:null setViewOffset]( [param:Float fullWidth], [param:Float fullHeight], [param:Float x], [param:Float y], [param:Float width], [param:Float height] )</h3>
 		<p>
@@ -193,6 +191,7 @@ camera.setViewOffset( fullWidth, fullHeight, w * 2, h * 1, w, h );
 
 		<h3>[method:JSON toJSON]()</h3>
 		<p>
+
 				使用JSON格式来返回摄像机数据。
 			</p>
 

+ 0 - 1
docs/api/zh/cameras/StereoCamera.html

@@ -49,7 +49,6 @@
 		<h3>[property:PerspectiveCamera cameraR]</h3>
 		<p>右摄像机,它被加入到了[page:Layers layer 2]中 —— 需要被右摄像机渲染的物体也应当要加入到这一层中。</p>
 
-
 		<h2>方法</h2>
 
 		<h3>[method:null update]( [param:PerspectiveCamera camera] )</h3>

+ 5 - 5
docs/api/zh/constants/Animation.html

@@ -8,9 +8,9 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		<h1>Animation Constants</h1>
+		<h1>动画常量(Animation Constants</h1>
 
-		<h2>Loop Modes</h2>
+		<h2>循环模式</h2>
     
 		<code>
 THREE.LoopOnce
@@ -18,21 +18,21 @@ THREE.LoopRepeat
 THREE.LoopPingPong
 		</code>
 
-    <h2>Interpolation Modes</h2>
+    <h2>插值模式</h2>
     <code>
 THREE.InterpolateDiscrete
 THREE.InterpolateLinear
 THREE.InterpolateSmooth
     </code>
 
-    <h2>Ending Modes</h2>
+    <h2>结束模式</h2>
     <code>
 THREE.ZeroCurvatureEnding
 THREE.ZeroSlopeEnding
 THREE.WrapAroundEnding
     </code>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/constants.js src/constants.js]
 	</body>

+ 5 - 5
docs/api/zh/constants/Core.html

@@ -8,26 +8,26 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		<h1>Core Constants</h1>
+		<h1>核心常量(Core Constants</h1>
 
-		<h2>Revision Number</h2>
+		<h2>修订版本号</h2>
 
 		<code>
 		THREE.REV
 		</code>
 
 		<div id="rev">
-			The current three.js [link:https://github.com/mrdoob/three.js/releases revision number].
+			当前three.js的修订版本号( [link:https://github.com/mrdoob/three.js/releases revision number])。
 		</div>
 
-    <h2>Mouse Buttons</h2>
+    <h2>鼠标按钮</h2>
     <code>
 		THREE.MOUSE.LEFT
 		THREE.MOUSE.MIDDLE
 		THREE.MOUSE.RIGHT
     </code>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/constants.js src/constants.js]
 

+ 9 - 9
docs/api/zh/constants/CustomBlendingEquations.html

@@ -8,15 +8,15 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		<h1>Custom Blending Equation Constants</h1>
+		<h1>自定义混合方程常量(Custom Blending Equation Constants</h1>
 
 
-		<h2>Example</h2>
+		<h2>示例</h2>
 		<p>[example:webgl_materials_blending_custom materials / blending / custom ]</p>
 
-		<h2>Usage</h2>
+		<h2>用法</h2>
 		<p>
-			These work with all material types. First set the material's blending mode to THREE.CustomBlending, then set the desired Blending Equation, Source Factor and Destination Factor.
+			这个常量可以用于所有的材质类型。首先将材质的混合模式设置为THREE.CustomBlending,然后设置所需要的混合方程、源因子和目标因子。
 		</p>
 
 		<code>
@@ -27,7 +27,7 @@
 		material.blendDst = THREE.OneMinusSrcAlphaFactor; //default
 		</code>
 
-		<h2>Blending Equations</h2>
+		<h2>混合方程</h2>
 		<code>
 		THREE.AddEquation
 		THREE.SubtractEquation
@@ -36,7 +36,7 @@
 		THREE.MaxEquation
 		</code>
 
-		<h2>Source Factors</h2>
+		<h2>源因子</h2>
 		<code>
 		THREE.ZeroFactor
 		THREE.OneFactor
@@ -51,12 +51,12 @@
 		THREE.SrcAlphaSaturateFactor
 		</code>
 
-		<h2>Destination Factors</h2>
+		<h2>目标因子</h2>
 		<p>
-			All of the Source Factors are valid as Destination Factors, except for <code>THREE.SrcAlphaSaturateFactor</code>
+			所有的源因子的值,在目标因子中都是有效的。除了:<code>THREE.SrcAlphaSaturateFactor</code>
 		</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/constants.js src/constants.js]
 	</body>

+ 17 - 19
docs/api/zh/constants/DrawModes.html

@@ -8,52 +8,50 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		<h1>Draw Mode Constants</h1>
+		<h1>绘图模式常量(Draw Mode Constants</h1>
 
 		<p class="desc">
-			These are valid values for [page:Mesh.drawMode], and control how the list of vertices is interpeted once sent to the GPU.<br /><br />
-
-			Note that these only work when [page:Mesh.geometry] is a [page:BufferGeometry]. Changing this
-			when [page:Mesh.geometry] is a [page:Geometry] will have no effect.<br /><br />
+			这些是[page:Mesh.drawMode]的有效值,控制着顶点列表一旦被发送到GPU中将如何被解释。
+			请注意,只有当[page:Mesh.geometry]是一个[page:BufferGeometry]的时候,这些值才会生效。当[page:Mesh.geometry]是一个
+			[page:Geometry]的时候,改变这个值不会有任何效果。
+<br /><br />
 
 
 
 		</p>
 
-		<h2>Draw Modes</h2>
+
+		<h2>绘图模式</h2>
 
 		<code>
 			THREE.TrianglesDrawMode
 		</code>
 		<p>
-			This is the default, and results in every three consecutive vertices (v0, v1, v2), (v2, v3, v5), ...
-			being interpreted as a separate triangle. <br />
-			If the number of vertices is not a multiple of 3, excess vertices are ignored.
+			这是默认值,这将使得每三个连续顶点(v0, v1, v2),(v2, v3, v5),……被解释为一个单独的三角形。
+			<br />
+			如果顶点的数量不是3的倍数,那么将会忽略多余的顶点。
 		</p>
 
 		<code>
 			THREE.TriangleStripDrawMode
 		</code>
 		<p>
-			This will result in a series of triangles connected in a strip, given by (v0, v1, v2), (v2, v1, v3), (v2, v3, v4), ...
-			so that every subsequent triangle shares two vertices with the previous triangle.
+			这将使得一系列的三角形(由(v0, v1, v2),(v2, v1, v3),(v2, v3, v4),……给定)一个一个地连在一起,每一个连续的三角形将和前一个三角形共享两个顶点。
 		</p>
 
 		<code>
 			THREE.TriangleFanDrawMode
 		</code>
 		<p>
-			This will result in a series of triangles each sharing the first vertex (like a fan),
-			given by (v0, v1, v2), (v0, v2, v3), (v0, v3, v4), ... <br /><br />
+这将会使得一个序列中的每一个三角形(由(v0, v1, v2),(v0, v2, v3),(v0, v3, v4),……给定)共享它们的第一个顶点(就像风扇一样)。<br /><br />
 
-			<em>Note:</em> As of [link:https://en.wikipedia.org/wiki/DirectX#DirectX_10 DirectX10], this mode is not supported. As Chrome and Firefox
-			render WebGL using [link:https://en.wikipedia.org/wiki/ANGLE_(software) ANGLE] on Windows,
-			internally this mode will be converted to a supported mode, which will likely lead to lowered
-			performance on those browsers.
+			<em>注意:</em>截至[link:https://en.wikipedia.org/wiki/DirectX#DirectX_10 DirectX10]这个模式还没有被支持。
+			由于Chorme和Firefox在Windows上是使用[link:https://en.wikipedia.org/wiki/ANGLE_(software) ANGLE]来渲染WebGL的,所以这种模式将会在内部转换为受支持的模式,
+			但可能会导致这些浏览器在性能上降低一些。
 		</p>
 
 
-		<h2>Usage</h2>
+		<h2>用法</h2>
 
 		<code>
 		var geometry = new THREE.Geometry();
@@ -76,7 +74,7 @@
 
 
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/constants.js src/constants.js]
 	</body>

+ 33 - 32
docs/api/zh/constants/Materials.html

@@ -8,40 +8,40 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		<h1>Material Constants</h1>
+		<h1>材质常量(Material Constants</h1>
 
 		<p class="desc">
-		These constants define properties common to all material types,
-		with the exception of Texture Combine Operations which only apply to [page:MeshBasicMaterial.combine MeshBasicMaterial], [page:MeshLambertMaterial.combine MeshLambertMaterial] and [page:MeshPhongMaterial.combine MeshPhongMaterial].<br />
+			由这些常量定义的属性对所有的材质类型都生效,除了Texture Combine Operations只应用于
+			[page:MeshBasicMaterial.combine MeshBasicMaterial],[page:MeshLambertMaterial.combine MeshLambertMaterial]和[page:MeshPhongMaterial.combine MeshPhongMaterial]。<br />
 		</p>
 
 
-		<h2>Side</h2>
+		<h2></h2>
 		<code>
 		THREE.FrontSide
 		THREE.BackSide
 		THREE.DoubleSide
 		</code>
 		<p>
-		Defines which side of faces will be rendered - front, back or both.
-		Default is [page:Constant FrontSide].
+			定义了哪一边的面将会被渲染 —— 正面,或是反面,还是两个面都渲染。
+			默认值是[page:Constant FrontSide](只渲染正面)。
 		</p>
 
 
-		<h2>Colors</h2>
+		<h2>颜色</h2>
 		<code>
 		THREE.NoColors
 		THREE.FaceColors
 		THREE.VertexColors
 		</code>
 		<p>
-		[page:Constant NoColors] is the default and applies the material's color to all faces.<br />
-		[page:Constant FaceColors] colors faces according to each [page:Face3 Face3] [page:Color Color] value.<br />
-		[page:Constant VertexColors] colors faces according to each [page:Face3 Face3] vertexColors value. This is an array of three [page:Color Color]s, one for each vertex in the face.<br />
-		See the [example:webgl_geometry_colors geometry / colors] example.
+		[page:Constant NoColors] 是默认值,且会将材质的颜色应用到所有面。<br />
+		[page:Constant FaceColors] 根据每个[page:Face3 Face3]的[page:Color Color]值来对面进行着色。<br />
+		[page:Constant VertexColors] 根据每个 [page:Face3 Face3]的vertexColors(顶点颜色)值来对面进行着色。 这是一个包含有三个[page:Color Color]的数组,数组中每一项都对应着面中的每一个顶点。<br />
+		请查看示例:[example:webgl_geometry_colors geometry / colors]。
 		</p>
 
-		<h2>Blending Mode</h2>
+		<h2>混合模式</h2>
 		<code>
 		THREE.NoBlending
 		THREE.NormalBlending
@@ -53,13 +53,13 @@
 
 
 		<p>
-		These control the source and destination blending equations for the material's RGB and Alpha sent to the WebGLRenderer for use by WebGL.<br />
-		[page:Constant NormalBlending] is the default.<br />
-		Note that [page:Constant CustomBlending] must be set to use [page:CustomBlendingEquation Custom Blending Equations].<br />
-		See the [example:webgl_materials_blending materials / blending] example.<br />
+			这些值控制着源和目标材质中,被发送到WebGLRenderer,来给WebGL使用的包含有RGB和Alpha数据的混合方程。<br />
+			默认值是[page:Constant NormalBlending]。<br />
+			请注意,[page:Constant CustomBlending]必须被设置为自定义混合方程([page:CustomBlendingEquation Custom Blending Equations])常量中的值。<br />
+			请查看示例:[example:webgl_materials_blending materials / blending]。<br />
 		</p>
 
-		<h2>Depth Mode</h2>
+		<h2>深度模式</h2>
 		<code>
 		THREE.NeverDepth
 		THREE.AlwaysDepth
@@ -70,31 +70,32 @@
 		THREE.NotEqualDepth
 		</code>
 		<p>
-		Which depth function the material uses to compare incoming pixels Z-depth against the current Z-depth buffer value. If the result of the comparison is true, the pixel will be drawn.<br />
-		[page:Materials NeverDepth] will never return true.<br />
-		[page:Materials AlwaysDepth] will always return true.<br />
-		[page:Materials LessDepth] will return true if the incoming pixel Z-depth is less than the current buffer Z-depth.<br />
-		[page:Materials LessEqualDepth] is the default and will return true if the incoming pixel Z-depth is less than or equal to the current buffer Z-depth.<br />
-		[page:Materials GreaterEqualDepth] will return true if the incoming pixel Z-depth is greater than or equal to the current buffer Z-depth.<br />
-		[page:Materials GreaterDepth] will return true if the incoming pixel Z-depth is greater than the current buffer Z-depth.<br />
-		[page:Materials NotEqualDepth] will return true if the incoming pixel Z-depth is not equal to the current buffer Z-depth.<br />
+			材质使用这些深度函数来比较输入像素和缓冲器中Z-depth的值。
+			如果比较的结果为true,则将绘制像素。<br />
+		[page:Materials NeverDepth] 永远不返回true。<br />
+		[page:Materials AlwaysDepth] 总是返回true。<br />
+		[page:Materials LessDepth] 当输入像素Z-depth小于当前缓冲器Z-depth时,返回true。<br />
+		[page:Materials LessEqualDepth] 为默认值,当输入像素Z-depth小于或等于当前缓冲器Z-depth时,返回true。<br />
+		[page:Materials GreaterEqualDepth] 当输入像素Z-depth大于或等于当前缓冲器Z-depth时,返回true。 <br />
+		[page:Materials GreaterDepth] 当输入像素Z-depth大于当前缓冲器Z-depth时,返回true。<br />
+		[page:Materials NotEqualDepth] 当输入像素Z-depth不等于当前缓冲器Z-depth时,返回true。<br />
 		</p>
 
-		<h2>Texture Combine Operations</h2>
+		<h2>纹理结合操作</h2>
 		<code>
 		THREE.MultiplyOperation
 		THREE.MixOperation
 		THREE.AddOperation
 		</code>
 		<p>
-		These define how the result of the surface's color is combined with the environment map (if present), for [page:MeshBasicMaterial.combine MeshBasicMaterial], [page:MeshLambertMaterial.combine MeshLambertMaterial] and [page:MeshPhongMaterial.combine MeshPhongMaterial]. <br />
-		[page:Constant MultiplyOperation] is the default and multiplies the environment map color with the surface color.<br />
-		[page:Constant MixOperation] uses reflectivity to blend between the two colors.<br />
-		[page:Constant AddOperation] adds the two colors.
-		</p>
+			这些常量定义了物体表面颜色与环境贴图(如果存在的话)相结合的结果,
+			用在[page:MeshBasicMaterial.combine MeshBasicMaterial]、[page:MeshLambertMaterial.combine MeshLambertMaterial]和[page:MeshPhongMaterial.combine MeshPhongMaterial]当中。<br />
+		[page:Constant MultiplyOperation] 是默认值,它将环境贴图和物体表面颜色进行相乘。<br />
+		[page:Constant MixOperation] 使用反射率来混和两种颜色。uses reflectivity to blend between the two colors.<br />
+		[page:Constant AddOperation] 用于对两种颜色进行相加。</p>
 
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/constants.js src/constants.js]
 	</body>

+ 22 - 22
docs/api/zh/constants/Renderer.html

@@ -8,9 +8,9 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		<h1>WebGLRenderer Constants</h1>
+		<h1>WebGL渲染器常量(WebGLRenderer Constants</h1>
 
-		<h2>Cull Face Modes</h2>
+		<h2>面剔除模式</h2>
 		<code>
 		THREE.CullFaceNone
 		THREE.CullFaceBack
@@ -18,37 +18,37 @@
 		THREE.CullFaceFrontBack
 		</code>
 		<p>
-		[page:constant CullFaceNone] disables face culling.<br />
-		[page:constant CullFaceBack] culls back faces (default).<br />
-		[page:constant CullFaceFront] culls front faces.<br />
-		[page:constant CullFaceFrontBack] culls both front and back faces.
+		[page:constant CullFaceNone] 禁用面剔除。<br />
+		[page:constant CullFaceBack] 为默认值,剔除背面。<br />
+		[page:constant CullFaceFront] 剔除正面。<br />
+		[page:constant CullFaceFrontBack] 剔除正面和背面。
 		</p>
 
-		<h2>Front Face Direction</h2>
+		<h2>正面方向</h2>
 		<code>
 		THREE.FrontFaceDirectionCW
 		THREE.FrontFaceDirectionCCW
 		</code>
 		<p>
-		[page:constant FrontFaceDirectionCW] sets the winding order for polygons to clockwise.<br />
-		[page:constant FrontFaceDirectionCCW] sets the winding order for polygons to counter-clockwise (default).
+		[page:constant FrontFaceDirectionCW] 将多边形的缠绕顺序设置为顺时针方向。 <br />
+		[page:constant FrontFaceDirectionCCW] 为默认值,将多边形的缠绕顺序设置为逆时针方向。
 		</p>
 
-		<h2>Shadow Types</h2>
+		<h2>阴影类型</h2>
 		<code>
 		THREE.BasicShadowMap
 		THREE.PCFShadowMap
 		THREE.PCFSoftShadowMap
 		</code>
 		<p>
-		These define the WebGLRenderer's [page:WebGLRenderer.shadowMap.type shadowMap.type] property.<br /><br />
+			这些常量定义了WebGLRenderer中[page:WebGLRenderer.shadowMap.type shadowMap.type]的属性。<br /><br />
 
-		[page:constant BasicShadowMap] gives unfiltered shadow maps - fastest, but lowest quality.<br />
-		[page:constant PCFShadowMap] filters shadow maps using the Percentage-Closer Filtering (PCF) algorithm (default).<br />
-		[page:constant PCFSoftShadowMap] filters shadow maps using the Percentage-Closer Soft Shadows (PCSS) algorithm.
+		[page:constant BasicShadowMap] 能够给出没有经过过滤的阴影映射 —— 速度最快,但质量最差。<br />
+		[page:constant PCFShadowMap] 为默认值,使用Percentage-Closer Filtering (PCF)算法来过滤阴影映射。<br />
+		[page:constant PCFSoftShadowMap] 使用Percentage-Closer Soft Shadows (PCSS) 算法来过滤阴影映射。
 		</p>
 
-		<h2>Tone Mapping</h2>
+		<h2>色调映射</h2>
 		<code>
 		THREE.NoToneMapping
 		THREE.LinearToneMapping
@@ -57,19 +57,19 @@
 		THREE.CineonToneMapping
 		</code>
 		<p>
-		These define the WebGLRenderer's [page:WebGLRenderer.toneMapping toneMapping] property.
-		This is used to approximate the appearance of high dynamic range (HDR) on the
-		low dynamic range medium of a standard computer monitor or mobile device's screen.<br /><br />
+				这些常量定义了WebGLRenderer中[page:WebGLRenderer.toneMapping toneMapping]的属性。
 
-		[page:constant NoToneMapping] disables tone mapping.<br />
-		[page:constant LinearToneMapping] is the default.<br /><br />
+				这个属性用于在普通计算机显示器或者移动设备屏幕等低动态范围介质上,模拟、逼近高动态范围(HDR)效果。<br /><br />
 
-		See the [example:webgl_tonemapping WebGL / tonemapping] example.
+		[page:constant NoToneMapping] 禁用色调映射。<br />
+		[page:constant LinearToneMapping] 为默认值,线性色调映射。<br /><br />
+
+		请查看示例:[example:webgl_tonemapping WebGL / tonemapping]。
 
 		</p>
 
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/constants.js src/constants.js]
 	</body>

+ 151 - 157
docs/api/zh/constants/Textures.html

@@ -1,17 +1,19 @@
 <!DOCTYPE html>
 <html lang="en">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../" />
-		<script src="list.js"></script>
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>Texture Constants</h1>
-
-		<h2>Mapping Modes</h2>
-		<code>
+
+<head>
+	<meta charset="utf-8" />
+	<base href="../../../" />
+	<script src="list.js"></script>
+	<script src="page.js"></script>
+	<link type="text/css" rel="stylesheet" href="page.css" />
+</head>
+
+<body>
+	<h1>材质常量(Texture Constants)</h1>
+
+	<h2>映射模式</h2>
+	<code>
 		THREE.UVMapping
 		THREE.CubeReflectionMapping
 		THREE.CubeRefractionMapping
@@ -22,70 +24,65 @@
 		THREE.CubeUVRefractionMapping
 		</code>
 
-		<p>
-		These define the texture's mapping mode.<br />
-		[page:Constant UVMapping] is the default, and maps the texture using the mesh's UV coordinates.<br /><br />
+	<p>
+		这些常量定义了纹理贴图的映射模式。<br />
+		[page:Constant UVMapping]是默认值,纹理使用网格的坐标来进行映射。<br /><br />
+		其它的值定义了环境映射的类型。<br /><br />
 
-		The rest define environment mapping types.<br /><br />
+		[page:Constant CubeReflectionMapping] 和 [page:Constant CubeRefractionMapping] 用于 [page:CubeTexture CubeTexture] ——
+		由6个纹理组合而成,每个纹理都是立方体的一个面。
 
-		[page:Constant CubeReflectionMapping] and [page:Constant CubeRefractionMapping] are for
-		use with a [page:CubeTexture CubeTexture], which is made up of six textures, one for each face of the cube.
-		[page:Constant CubeReflectionMapping] is the default for a [page:CubeTexture CubeTexture]. <br /><br />
+		对于[page:CubeTexture CubeTexture]来说,[page:Constant CubeReflectionMapping]是其默认值。<br /><br />
 
-		[page:Constant EquirectangularReflectionMapping] and [page:Constant EquirectangularRefractionMapping]
-		are for use with an equirectangular environment map.  Also called a lat-long map, an equirectangular
-		texture represents a 360-degree view along the horizontal centerline, and a 180-degree view along the
-		vertical axis, with the top and bottom edges of the image corresponding to the north and south poles
-		of a mapped sphere.<br /><br />
+		[page:Constant EquirectangularReflectionMapping] 和 [page:Constant EquirectangularRefractionMapping]
+		用于等距圆柱投影的环境贴图,也被叫做经纬线映射贴图。等距圆柱投影贴图表示沿着其水平中线360°的视角,以及沿着其垂直轴向180°的视角。贴图顶部和底部的边缘分别对应于它所映射的球体的北极和南极。
+		<br /><br />
 
-		[page:Constant SphericalReflectionMapping] is for use with a spherical reflection map such as may be obtained
-		by cropping a photograph of a mirrored ball.  Sphere maps will be rendered "facing" the camera, irrespective
-		of the position of the camera relative to the cubemapped object or surface.<br /><br />
+		[page:Constant SphericalReflectionMapping] 用球形反射贴图,例如它可以通过剪裁镜面球的照片来获得。
+		无论摄像机相对于立方贴图对象或者表面的位置时怎样的,球形贴图被渲染时将会“面朝”摄像机。<br /><br />
 
-		See the [example:webgl_materials_envmaps materials / envmaps] example.
-		</p>
+		请查看示例:[example:webgl_materials_envmaps materials / envmaps] 。
+	</p>
 
 
-		<h2>Wrapping Modes</h2>
-		<code>
+	<h2>包裹模式</h2>
+	<code>
 		THREE.RepeatWrapping
 		THREE.ClampToEdgeWrapping
 		THREE.MirroredRepeatWrapping
 		</code>
-		<p>
-		These define the texture's [page:Texture.wrapS wrapS] and [page:Texture.wrapT wrapT] properties,
-		which define horizontal and vertical texture wrapping.<br /><br />
+	<p>
+		这些常量定义了纹理贴图的 [page:Texture.wrapS wrapS] 和 [page:Texture.wrapT wrapT] 属性,定义了水平和垂直方向上纹理的包裹方式。
+		<br /><br />
 
+		使用[page:constant RepeatWrapping],纹理将简单地重复到无穷大。
 		With [page:constant RepeatWrapping] the texture will simply repeat to infinity.<br /><br />
 
-		[page:constant ClampToEdgeWrapping] is the default.
-		The last pixel of the texture stretches to the edge of the mesh.<br /><br />
+		[page:constant ClampToEdgeWrapping]是默认值,纹理中的最后一个像素将延伸到网格的边缘。<br /><br />
 
-		With [page:constant MirroredRepeatWrapping] the texture will repeats to infinity, mirroring on each repeat.
-		</p>
+		使用[page:constant MirroredRepeatWrapping], 纹理将重复到无穷大,在每次重复时将进行镜像。
+	</p>
 
-		<h2>Magnification Filters</h2>
-		<code>
+	<h2>Magnification Filters
+		放大滤镜
+	</h2>
+	<code>
 		THREE.NearestFilter
 		THREE.LinearFilter
 		</code>
 
-		<p>
-		For use with a texture's [page:Texture.magFilter magFilter]	property,
-		these define the texture magnification function to be used when the pixel being textured maps to an
-		area less than or equal to one texture element (texel).<br /><br />
+	<p>
+		这些常量用于纹理的[page:Texture.magFilter magFilter]属性,它们定义了当被纹理化的像素映射到小于或者等于1纹理元素(texel)的区域时,将要使用的纹理放大函数。<br /><br />
 
-		[page:constant NearestFilter] returns the value of the texture element that is nearest
-		(in Manhattan distance) to the specified texture coordinates.<br /><br />
+		[page:constant NearestFilter]返回与指定纹理坐标(在曼哈顿距离之内)最接近的纹理元素的值。<br /><br />
+		[page:constant LinearFilter]是默认值,返回距离指定的纹理坐标最近的四个纹理元素的加权平均值,
+		并且可以包含纹理的其他部分中,被包裹或者被重复的项目,具体取决于 [page:Texture.wrapS wrapS] 和 [page:Texture.wrapT wrapT] 的值,and on the exact mapping。
 
-		[page:constant LinearFilter] is the default and returns the weighted average
-		of the four texture elements that are closest to the specified texture coordinates,
-		and can include items wrapped or repeated from other parts of a texture,
-		depending on the values of [page:Texture.wrapS wrapS] and [page:Texture.wrapT wrapT], and on the exact mapping.
-		</p>
+	</p>
 
-		<h2>Minification Filters</h2>
-		<code>
+	<h2>缩小滤镜
+		Minification Filters</h2>
+	<code>
 		THREE.NearestFilter
 		THREE.NearestMipMapNearestFilter
 		THREE.NearestMipMapLinearFilter
@@ -94,37 +91,32 @@
 		THREE.LinearMipMapLinearFilter
 		</code>
 
-		<p>
-		For use with a texture's [page:Texture.minFilter minFilter]	property, these define
-		the texture minifying function that is used whenever the pixel being textured maps
-		to an area greater than one texture element (texel).<br /><br />
+	<p>
+		这些常量用于纹理的[page:Texture.minFilter minFilter]属性,它们定义了当被纹理化的像素映射到大于1纹理元素(texel)的区域时,将要使用的纹理缩小函数。<br /><br />
 
-		In addition to [page:constant NearestFilter] and [page:constant LinearFilter],
-		the following four functions can be used for minification:<br /><br />
+		除了[page:constant NearestFilter] 和 [page:constant LinearFilter],
+		下面的四个函数也可以用于缩小:<br /><br />
 
-		[page:constant NearestMipMapNearestFilter] chooses the mipmap that most closely
-		matches the size of the pixel being textured
-		and uses the [page:constant NearestFilter] criterion (the texel nearest to the
-		center of the pixel) to produce a texture value.<br /><br />
+		[page:constant NearestMipMapNearestFilter]选择与被纹理化像素的尺寸最匹配的mipmap,并以[page:constant
+		NearestFilter](最靠近像素中心的纹理元素)为标准来生成纹理值。
+		<br /><br />
 
-		[page:constant NearestMipMapLinearFilter] chooses the two mipmaps that most closely
-		match the size of the pixel being textured and uses the [page:constant NearestFilter] criterion to produce
-		a texture value from each mipmap. The final texture value is a weighted average of those two values.<br /><br />
+		[page:constant NearestMipMapLinearFilter]选择与被纹理化像素的尺寸最接近的两个mipmap,并以[page:constant
+		NearestFilter]为标准来从每个mipmap中生成纹理值。最终的纹理值是这两个值的加权平均值。
+		<br /><br />
 
-		[page:constant LinearMipMapNearestFilter] chooses the mipmap that most closely matches
-		the size of the pixel being textured and uses the [page:constant LinearFilter] criterion
-		(a weighted average of the four texels that are closest to the center of the pixel)
-		to produce a texture value.<br /><br />
+		[page:constant LinearMipMapNearestFilter]选择与被纹理化像素的尺寸最匹配的mipmap,并以[page:constant
+		LinearFilter](最靠近像素中心的四个纹理元素的加权平均值)为标准来生成纹理值。
+		<br /><br />
 
-		[page:constant LinearMipMapLinearFilter] is the default and chooses the two mipmaps
-		that most closely match the size of the pixel being textured and uses the [page:constant LinearFilter] criterion
-		to produce a texture value from each mipmap. The final texture value is a weighted average of those two values.<br /><br />
+		[page:constant LinearMipMapLinearFilter]是默认值,它选择与被纹理化像素的尺寸最接近的两个mipmap,并以[page:constant
+		LinearFilter]为标准来从每个mipmap中生成纹理值。最终的纹理值是这两个值的加权平均值。<br /><br />
 
-		See the [example:webgl_materials_texture_filters materials / texture / filters] example.
-		</p>
+		请查看示例:[example:webgl_materials_texture_filters materials / texture / filters]。
+	</p>
 
-		<h2>Types</h2>
-		<code>
+	<h2>类型</h2>
+	<code>
 		THREE.UnsignedByteType
 		THREE.ByteType
 		THREE.ShortType
@@ -138,14 +130,14 @@
 		THREE.UnsignedShort565Type
 		THREE.UnsignedInt248Type
 		</code>
-		<p>
-		For use with a texture's [page:Texture.type type]	property, which must correspond to the correct format. See below for details.<br /><br />
+	<p>
+		这些常量用于纹理的[page:Texture.type type]属性,这些属性必须与正确的格式相对应。详情请查看下方。<br /><br />
 
-		[page:constant UnsignedByteType] is the default.
-		</p>
+		[page:constant UnsignedByteType] 是默认值。
+	</p>
 
-		<h2>Formats</h2>
-		<code>
+	<h2>格式</h2>
+	<code>
 		THREE.AlphaFormat
 		THREE.RGBFormat
 		THREE.RGBAFormat
@@ -155,91 +147,93 @@
 		THREE.DepthFormat
 		THREE.DepthStencilFormat
 		</code>
-		<p>
-		For use with a texture's [page:Texture.format format]	property, these define
-		how elements of a 2d texture, or *texels*, are read by shaders.<br /><br />
+	<p>
+		这些常量用于纹理的[page:Texture.format format]属性,它们定义了shader(着色器)将如何读取的2D纹理或者*texels*(纹理元素)的元素。.<br /><br />
 
-		[page:constant AlphaFormat] discards the red, green and blue components and reads just the alpha component.<br /><br />
+		[page:constant AlphaFormat] 丢弃红、绿、蓝分量,仅读取Alpha分量。<br /><br />
 
-		[page:constant RGBFormat] discards the alpha components and reads the red, green and blue components.<br /><br />
+		[page:constant RGBFormat] 丢弃Alpha分量,仅读取红、绿、蓝分量。<br /><br />
 
-		[page:constant RGBAFormat] is the default and reads the red, green, blue and alpha components.<br /><br />
+		[page:constant RGBAFormat] 是默认值,它将读取红、绿、蓝和Alpha分量。<br /><br />
 
-		[page:constant LuminanceFormat] reads each element as a single luminance component.
-		 This is then converted to a floating point, clamped to the range [0,1], and then assembled
-		 into an RGBA element by placing the luminance value in the red, green and blue channels,
-		 and attaching 1.0 to the alpha channel.<br /><br />
 
-		[page:constant LuminanceAlphaFormat] reads each element as a luminance/alpha double.
-		The same process occurs as for the [page:constant LuminanceFormat], except that the
-		alpha channel may have values other than *1.0*.<br /><br />
+		[page:constant LuminanceFormat] 将每个元素作为单独的亮度分量来读取。
+		将其转换为范围限制在[0,1]区间的浮点数,然后通过将亮度值放入红、绿、蓝通道,并将1.0赋给Alpha通道,来组装成一个RGBA元素。<br /><br />
 
-		[page:constant RGBEFormat] is identical to [page:constant RGBAFormat].<br /><br />
 
-		[page:constant DepthFormat] reads each element as a single depth value, converts it to floating point, and clamps to the range [0,1].
-		This is the default for [page:DepthTexture DepthTexture].<br /><br />
+		[page:constant LuminanceAlphaFormat] 将每个元素同时作为亮度分量和Alpha分量来读取。
+		和上面[page:constant LuminanceFormat]的处理过程是一致的,除了Alpha分量具有除了*1.0*以外的值。<br /><br />
 
-		[page:constant DepthStencilFormat] reads each element is a pair of depth and stencil values.
-		The depth component of the pair is interpreted as in [page:constant DepthFormat].
-		The stencil component is interpreted based on the depth + stencil internal format.
-		<br /><br />
+		[page:constant RGBEFormat] 与 [page:constant RGBAFormat] 是相同的。<br /><br />
+
+		[page:constant DepthFormat]将每个元素作为单独的深度值来读取,将其转换为范围限制在[0,1]区间的浮点数。
+		它是[page:DepthTexture DepthTexture]的默认值。<br /><br />
 
-		Note that the texture must have the correct [page:Texture.type type] set, as described above.
-		See [link:https://developer.mozilla.org/en/docs/Web/API/WebGLRenderingContext/texImage2D WebGLRenderingContext.texImage2D] for details.
-		</p>
+		[page:constant DepthStencilFormat]将每个元素同时作为一对深度值和模板值来读取。
+		其中的深度分量解释为[page:constant DepthFormat]。
+		模板分量基于深度+模板的内部格式来进行解释。
+
+		<br /><br />
+		请注意,纹理必须具有正确的[page:Texture.type type]设置,正如上一节所描述的那样。
+		请参阅[link:https://developer.mozilla.org/en/docs/Web/API/WebGLRenderingContext/texImage2D
+		WebGLRenderingContext.texImage2D]来获得有关详细信息。
+	</p>
 
-		<h2>DDS / ST3C Compressed Texture Formats</h2>
-		<code>
+	<h2>DDS / ST3C 压缩纹理格式</h2>
+	<code>
 		THREE.RGB_S3TC_DXT1_Format
 		THREE.RGBA_S3TC_DXT1_Format
 		THREE.RGBA_S3TC_DXT3_Format
 		THREE.RGBA_S3TC_DXT5_Format
 		</code>
-		<p>
-		For use with a [page:CompressedTexture CompressedTexture]'s [page:Texture.format format]	property,
-		these require support for the
-		[link:https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_s3tc/ WEBGL_compressed_texture_s3tc]
-		extension. <br /><br />
-
-		There are four [link:https://en.wikipedia.org/wiki/S3_Texture_Compression S3TC] formats available via this extension. These are:<br />
-		[page:constant RGB_S3TC_DXT1_Format]: A DXT1-compressed image in an RGB image format.<br />
-		[page:constant RGBA_S3TC_DXT1_Format]: A DXT1-compressed image in an RGB image format with a simple on/off alpha value.<br />
-		[page:constant RGBA_S3TC_DXT3_Format]: A DXT3-compressed image in an RGBA image format. Compared to a 32-bit RGBA texture, it offers 4:1 compression.<br />
-		[page:constant RGBA_S3TC_DXT5_Format]: A DXT5-compressed image in an RGBA image format. It also provides a 4:1 compression, but differs to the DXT3 compression in how the alpha compression is done.<br />
-		</p>
-
-		<h2>PVRTC Compressed Texture Formats</h2>
-		<code>
+	<p>
+		要使用[page:CompressedTexture CompressedTexture]中的[page:Texture.format
+		format]属性,需要获得[link:https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_s3tc/
+		WEBGL_compressed_texture_s3tc]扩展的支持。<br /><br />
+
+		通过这个扩展,这里的四种[link:https://en.wikipedia.org/wiki/S3_Texture_Compression S3TC]格式将可以使用:<br />
+
+		[page:constant RGB_S3TC_DXT1_Format]:RGB图像格式的DXT1压缩图像。
+		[page:constant RGBA_S3TC_DXT1_Format]:RGB图像格式的DXT1压缩图像,Alpha仅具有是/否透明两个值。<br />
+		[page:constant RGBA_S3TC_DXT3_Format]:RGBA图像格式的DXT3压缩图像,和32位RGBA纹理贴图相比,它提供了4:1的压缩比。<br />
+		[page:constant RGBA_S3TC_DXT5_Format]:RGBA图像格式的DXT5压缩图像,它也提供了4:1的压缩比,但与DX3格式的不同之处在于其Alpha是如何被压缩的。<br />
+	</p>
+
+	<h2>PVRTC 压缩纹理格式
+		PVRTC Compressed Texture Formats</h2>
+	<code>
 		THREE.RGB_PVRTC_4BPPV1_Format
 		THREE.RGB_PVRTC_2BPPV1_Format
 		THREE.RGBA_PVRTC_4BPPV1_Format
 		THREE.RGBA_PVRTC_2BPPV1_Format
 		</code>
-		<p>
-		For use with a [page:CompressedTexture CompressedTexture]'s [page:Texture.format format]	property,
-		these require support for the [link:https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_pvrtc/ WEBGL_compressed_texture_pvrtc]
-		extension. <br />
-		PVRTC is typically only available on mobile devices with PowerVR chipsets, which are mainly Apple devices.<br /><br />
-
-		There are four [link:https://en.wikipedia.org/wiki/PVRTC PVRTC] formats available via this extension. These are:<br />
-		[page:constant RGB_PVRTC_4BPPV1_Format]: RGB compression in 4-bit mode. One block for each 4×4 pixels.<br />
-		[page:constant RGB_PVRTC_2BPPV1_Format]: RGB compression in 2-bit mode. One block for each 8×4 pixels.<br />
-		[page:constant RGBA_PVRTC_4BPPV1_Format]: RGBA compression in 4-bit mode. One block for each 4×4 pixels.<br />
-		[page:constant RGBA_PVRTC_2BPPV1_Format]: RGBA compression in 2-bit mode. One block for each 8×4 pixels.<br />
-		</p>
-
-		<h2>ETC Compressed Texture Format</h2>
-		<code>
+	<p>
+		要使用[page:CompressedTexture CompressedTexture]中的[page:Texture.format format]属性,需要获得
+		[link:https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_pvrtc/
+		WEBGL_compressed_texture_pvrtc]扩展的支持。<br />
+		PVRTC通常只在具有PowerVR芯片的移动设备上可用,这些设备主要是苹果设备。<br /><br />
+
+
+		通过这个扩展,这里的四种[link:https://en.wikipedia.org/wiki/PVRTC PVRTC]格式将可以使用:<br />
+
+		[page:constant RGB_PVRTC_4BPPV1_Format]:4位模式下的RGB压缩,每4x4像素一个块。<br />
+		[page:constant RGB_PVRTC_2BPPV1_Format]:2位模式下的RGB压缩,每8x4像素一个块。<br />
+		[page:constant RGBA_PVRTC_4BPPV1_Format]: 4位模式下的RGBA压缩,每4x4像素一个块。<br />
+		[page:constant RGBA_PVRTC_2BPPV1_Format]: 2位模式下的RGB压缩,每8x4像素一个块。<br />
+	</p>
+
+	<h2>ETC 压缩纹理格式</h2>
+	<code>
 		THREE.RGB_ETC1_Format
 		</code>
-		<p>
-		For use with a [page:CompressedTexture CompressedTexture]'s [page:Texture.format format]	property,
-		these require support for the [link:https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_etc1/ WEBGL_compressed_texture_etc1]
-		extension. <br /><br />
-		</p>
-
-		<h2>Encoding</h2>
-		<code>
+	<p>
+		要使用[page:CompressedTexture CompressedTexture]中的[page:Texture.format format]属性,需要获得
+		[link:https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_etc1/
+		WEBGL_compressed_texture_etc1]扩展的支持。<br /><br />
+	</p>
+
+	<h2>编码</h2>
+	<code>
 		THREE.LinearEncoding
 		THREE.sRGBEncoding
 		THREE.GammaEncoding
@@ -251,18 +245,18 @@
 		THREE.BasicDepthPacking
 		THREE.RGBADepthPacking
 		</code>
-		<p>
-		For use with a Texture's [page:Texture.encoding encoding]	property.<br /><br />
+	<p>
+		这些常量用于纹理的[page:Texture.encoding encoding]属性。<br /><br />
 
-		If the encoding type is changed after the texture has already been used by a material,
-		you will need to set [page:Material.needsUpdate Material.needsUpdate] to *true* to make the material recompile.<br /><br />
+		如果编码类型在纹理已被一个材质使用之后发生了改变,
+		你需要来设置[page:Material.needsUpdate Material.needsUpdate]为*true*来使得材质重新编译。<br /><br />
 
-		[page:constant LinearEncoding] is the default.
-		Values other than this are only valid for a material's map, envMap and emissiveMap.
-		</p>
+		[page:constant LinearEncoding]是默认值。
+		除此之外的其他值仅在材质的贴图、envMap和emissiveMap中有效。
+	</p>
 
-		<h2>Source</h2>
+	<h2>源代码</h2>
+	[link:https://github.com/mrdoob/three.js/blob/master/src/constants.js src/constants.js]
+</body>
 
-		[link:https://github.com/mrdoob/three.js/blob/master/src/constants.js src/constants.js]
-	</body>
-</html>
+</html>

+ 68 - 85
docs/api/zh/core/BufferAttribute.html

@@ -11,204 +11,187 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-		This class stores data for an attribute (such as vertex positions, face indices, normals,
-		colors, UVs, and any custom attributes ) associated with a [page:BufferGeometry], which allows
-		for more efficient passing of data to the GPU. See that page for details and a usage example.<br /><br />
+			这个类用于存储与[page:BufferGeometry]相关联的 attribute(例如顶点位置向量,面片索引,法向量,颜色值,UV坐标以及任何自定义 attribute )。
+			利用 BufferAttribute,可以更高效的向GPU传递数据。详情和例子见该页。<br /><br />
 
-		Data is stored as vectors of any length (defined by [page:BufferAttribute.itemSize itemSize]),
-		and in general in the methods outlined below if passing in an index, this is automatically
-		multiplied by the vector length.
+			在 BufferAttribute 中,数据被存储为任意长度的矢量(通过[page:BufferAttribute.itemSize itemSize]进行定义),下列函数如无特别说明,
+			函数参数中的index会自动乘以矢量长度进行计算。
 		</p>
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 		<h3>[name]( [param:TypedArray array], [param:Integer itemSize], [param:Boolean normalized] )</h3>
 		<p>
-		[page:TypedArray array] -- Must be a [link:https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/TypedArray TypedArray].
-		Used to instantiate the buffer. <br />
-		This array should have
+			[page:TypedArray array] -- 必须是 [link:https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/TypedArray TypedArray].
+			类型,用于实例化缓存。<br />
+			该队列应该包含:
 	 	<code>itemSize * numVertices</code>
-		elements, where numVertices is the number of vertices in the associated [page:BufferGeometry BufferGeometry].<br /><br />
+			个元素,numVertices 是 [page:BufferGeometry BufferGeometry]中的顶点数目<br /><br />
 
 
-		[page:Integer itemSize] --  the number of values of the array that should be associated with
-		a particular vertex. For instance, if this
-		attribute is storing a 3-component vector (such as a position, normal, or color), then itemSize should be 3.
+		[page:Integer itemSize] --
+			队列中与顶点相关的数据值的大小。举例,如果 attribute 存储的是三元组(例如顶点空间坐标、法向量或颜色值)则itemSize的值应该是3。
 		<br /><br />
 
-		[page:Boolean normalized] -- (optional) Indicates how the underlying data in the buffer maps
-		to the values in the GLSL code. For instance, if [page:TypedArray array] is an instance of
-		UInt16Array, and [page:Boolean normalized] is true, the values 0 - +65535 in the array
-		 data will be mapped to 0.0f - +1.0f in the GLSL attribute. An Int16Array (signed) would map
-		 from -32767 - +32767  to -1.0f - +1.0f. If [page:Boolean normalized] is false, the values
-		 will be converted to floats which contain the exact value, i.e. 32767 becomes 32767.0f.
+			[page:Boolean normalized] -- (可选) 指明缓存中的数据如何与GLSL代码中的数据对应。例如,如果[page:TypedArray array]是
+			UInt16Array类型,且[page:Boolean normalized]的值是 true,则队列中的值将会从 0 - +65535 映射为 GLSL 中的 0.0f - +1.0f。
+			如果[page:TypedArray array]是 Int16Array (有符号),则值将会从 -32767 - +32767 映射为 -1.0f - +1.0f。若 [page:Boolean normalized]
+			的值为 false,则数据映射不会归一化,而会直接映射为 float 值,例如,32767 将会映射为 32767.0f.
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:TypedArray array]</h3>
 		<p>
-		The [page:TypedArray array] holding data stored in the buffer.
+			在 [page:TypedArray array] 中保存着缓存中的数据。
 		</p>
 
 		<h3>[property:Integer count]</h3>
 		<p>
-		Stores the [page:BufferAttribute.array array]'s length divided by the [page:BufferAttribute.itemSize itemSize].<br /><br />
+			保存 [page:BufferAttribute.array array] 除以 [page:BufferAttribute.itemSize itemSize] 之后的大小。<br /><br />
 
-		If the buffer is storing a 3-component vector (such as a position, normal, or color),
-		then this will count the number of such vectors stored.
+			若缓存存储三元组(例如顶点位置、法向量、颜色值),则该值应等于队列中三元组的个数。
 		</p>
 
 		<h3>[property:Boolean dynamic]</h3>
 		<p>
-			Whether the buffer is dynamic or not. Default is *false*.<br />
+			不论缓存是否是动态的,默认值都将是 *false*<br />
 
-			If false, the GPU is informed that contents of the buffer are likely to be used often and not change often.
-			This corresponds to the  [link:https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/bufferData gl.STATIC_DRAW] flag.<br />
-			if true, the GPU is informed that contents of the buffer are likely to be used often and change often.
-			This corresponds to the  [link:https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/bufferData gl.DYNAMIC_DRAW] flag.
+			如果该值为 false,即告知 GPU 缓存中的数据会经常使用但不经常变化。
+			该值与 [link:https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/bufferData gl.STATIC_DRAW] 标志位相一致。<br />
+			如果该值为 true,即告知 GPU 缓存中的数据会经常使用且经常变化。
+			该值与 [link:https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/bufferData gl.DYNAMIC_DRAW] 标志位相一致。
 		</p>
 
 		<h3>[property:Boolean isBufferAttribute]</h3>
 		<p>
-			Used to check whether this or derived classes are BufferAttributes. Default is *true*.<br /><br />
+			指示当前类或派生类是 BufferAttributes. 默认值为 *true*.<br /><br />
 
-			You should not change this, as it used internally for optimisation.
+			开发者不应当改变该值,该值用于内部实现优化。
 		</p>
 
 		<h3>[property:Integer itemSize]</h3>
-		<p>The length of vectors that are being stored in the [page:BufferAttribute.array array].</p>
+		<p>保存在 [page:BufferAttribute.array array] 中矢量的长度。</p>
 
 		<h3>[property:String name]</h3>
 		<p>
-		Optional name for this attribute instance. Default is an empty string.
+			该 attribute 实例的别名,默认值为空字符串。
 		</p>
 
 		<h3>[property:Boolean needsUpdate]</h3>
 		<p>
-		Flag to indicate that this attribute has changed and should be re-sent to the GPU.
-		Set this to true when you modify the value of the array.<br /><br />
-
-		Setting this to true also increments the [page:BufferAttribute.version version].
+			该标志位指明当前 attribute 已经被修改过,且需要再次送入 GPU 处理。当开发者改变了该队列的值,则标志位需要设置为 true。<br /><br />
+			将标志位设为 true 同样会增加 [page:BufferAttribute.version version] 的值。
 		</p>
 
 		<h3>[property:Boolean normalized]</h3>
 		<p>
-		Indicates how the underlying data in the buffer maps to the values in the GLSL shader code.
-		See the constructor above for details.
+			指明缓存中数据在转化为GLSL着色器代码中数据时是否需要被归一化。详见构造函数中的说明。
 		</p>
 
 		<h3>[property:Function onUploadCallback]</h3>
 		<p>
-		A callback function that is executed after the Renderer has transfered the attribute array data to the GPU.
+			attribute 数据传输到GPU后的回调函数。
 		</p>
 
 		<h3>[property:Object updateRange]</h3>
-		<p>Object containing:<br />
-			[page:Integer offset]: Default is *0*. Position at whcih to start update.<br />
-			[page:Integer count]: Default is *-1*, which means don't use update ranges. <br /><br />
+		<p>对象包含如下成员:<br />
+			[page:Integer offset]: 默认值为 *0*。 指明更新的起始位置。<br />
+			[page:Integer count]: 默认值为 *-1*,表示不指定更新范围。<br /><br />
 
-			This can be used to only update some components of stored vectors (for example, just the component
-			related to color).
+			该值只可以被用于更新某些矢量数据(例如,颜色相关数据)。
 		</p>
 
 		<h3>[property:Integer version]</h3>
-		<p>A version number, incremented every time the [page:BufferAttribute.needsUpdate needsUpdate] property is set to true.</p>
+		<p>版本号,当 [page:BufferAttribute.needsUpdate needsUpdate] 被设置为 true 时,该值会自增。</p>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 		<h3>[method:BufferAttribute clone]() </h3>
-		<p>Return a copy of this bufferAttribute.</p>
+		<p>返回该 BufferAttribute 的拷贝。</p>
 
 		<h3>[method:BufferAttribute copyArray]( array ) </h3>
-		<p>Copy the array given here (which can be a normal array or TypedArray) into
-			[page:BufferAttribute.array array].<br /><br />
-
-			See [link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray/set TypedArray.set]
-			for notes on requirements if copying a TypedArray.
+		<p>将参数中所给定的普通队列或 TypedArray 拷贝到 [page:BufferAttribute.array array] 中。<br /><br />
+			拷贝 TypedArray 相关注意事项详见 [link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray/set TypedArray.set]。
 		</p>
 
 		<h3>[method:null copyAt] ( [param:Integer index1], [param:BufferAttribute bufferAttribute], [param:Integer index2] ) </h3>
-		<p>Copy a vector from bufferAttribute[index2] to [page:BufferAttribute.array array][index1].</p>
+		<p>将一个矢量从 bufferAttribute[index2] 拷贝到 [page:BufferAttribute.array array][index1] 中。</p>
 
 		<h3>[method:BufferAttribute copyColorsArray]( [param:Array colors] ) </h3>
-		<p>Copy an array representing RGB color values into [page:BufferAttribute.array array].</p>
+		<p>将一个存储 RGB 颜色值的队列拷贝到 [page:BufferAttribute.array array] 中。</p>
 
 		<h3>[method:BufferAttribute copyVector2sArray]( [param:Array vectors] ) </h3>
-		<p>Copy an array representing [page:Vector2]s into [page:BufferAttribute.array array].</p>
+		<p>将一个存储 [page:Vector2] 的队列拷贝到 [page:BufferAttribute.array array] 中。</p>
 
 		<h3>[method:BufferAttribute copyVector3sArray]( [param:Array vectors] ) </h3>
-		<p>Copy an array representing [page:Vector3]s into [page:BufferAttribute.array array].</p>
+		<p>将一个存储 [page:Vector3] 的队列拷贝到 [page:BufferAttribute.array array] 中。</p>
 
 		<h3>[method:BufferAttribute copyVector4sArray]( [param:Array vectors] ) </h3>
-		<p>Copy an array representing [page:Vector4]s into [page:BufferAttribute.array array].</p>
+		<p>将一个存储 [page:Vector4] 的队列拷贝到 [page:BufferAttribute.array array] 中。</p>
 
 		<h3>[method:Number getX]( [param:Integer index] ) </h3>
-		<p>Returns the x component of the vector at the given index.</p>
+		<p>获取给定索引的矢量的第一维元素 (即 X 值)。</p>
 
 		<h3>[method:Number getY]( [param:Integer index] ) </h3>
-		<p>Returns the y component of the vector at the given index.</p>
+		<p>获取给定索引的矢量的第二维元素 (即 Y 值)。</p>
 
 		<h3>[method:Number getZ]( [param:Integer index] ) </h3>
-		<p>Returns the z component of the vector at the given index.</p>
+		<p>获取给定索引的矢量的第三维元素 (即 Z 值)。</p>
 
 		<h3>[method:Number getW]( [param:Integer index] ) </h3>
-		<p>Returns the w component of the vector at the given index.</p>
+		<p>获取给定索引的矢量的第四维元素 (即 W 值)。</p>
 
 		<h3>[method:null onUpload]( [param:Function callback] ) </h3>
-		<p>
-		Sets the value of the onUploadCallback property.<br /><br />
-
-		In the [example:webgl_buffergeometry WebGL / Buffergeometry] this is used to free memory
-		after the buffer has been	transfered to the GPU.
+		<p>见 onUploadCallback 属性。<br /><br />
+			在 [example:webgl_buffergeometry WebGL / Buffergeometry] 中,该方在缓存数据传递给 GPU 后,用于释放内存。
 		</p>
 
 		<h3>[method:BufferAttribute set] ( [param:Array value], [param:Integer offset] ) </h3>
 		<p>
-		value -- an [page:Array] or [page:TypedArray] from which to copy values. <br />
-		offset -- (optional) index of the [page:BufferAttribute.array array] at which to start copying.<br /><br />
+		value -- 被拷贝的 [page:Array] 或 [page:TypedArray] 类型的数据。 <br />
+		offset -- (可选) [page:BufferAttribute.array array] 中开始拷贝的位置索引。<br /><br />
 
-		Calls	[link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray/set TypedArray.set]( [page:Array value], [page:Integer offset] )
-		on the [page:BufferAttribute.array array].<br /><br />
+		对 [page:BufferAttribute.array array],调用	[link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray/set TypedArray.set]( [page:Array value], [page:Integer offset] )
+		方法。<br /><br />
 
-		In particular, see that page for requirements on [page:Array value]
-		being a [page:TypedArray].
+		特别的, 对将 [page:Array value] 转为  [page:TypedArray] 的要求详见上述链接。
 		</p>
 
 		<h3>[method:BufferAttribute setArray] ( [param:TypedArray array] ) </h3>
 		<p>
-		[page:BufferAttribute.array array] to the TypedArray passed in here.<br /><br />
+		[page:BufferAttribute.array array] 被赋值的 TypedArray 队列。<br /><br />
 
-		After setting the array, [page:BufferAttribute.needsUpdate needsUpdate] should be set to true.
+		队列被复制后,[page:BufferAttribute.needsUpdate needsUpdate] 应当被设置为 true。
 		</p>
 
 		<h3>[method:BufferAttribute setDynamic] ( [param:Boolean value] ) </h3>
-		<p>Set [page:BufferAttribute.dynamic dynamic] to value.</p>
+		<p>将 [page:BufferAttribute.dynamic dynamic] 设置为 value.</p>
 
 		<h3>[method:BufferAttribute setX]( [param:Integer index], [param:Float x] ) </h3>
-		<p>Sets the x component of the vector at the given index.</p>
+		<p>设置给定索引的矢量的第一维数据(设置 X 值)。</p>
 
 		<h3>[method:BufferAttribute setY]( [param:Integer index], [param:Float y] ) </h3>
-		<p>Sets the y component of the vector at the given index.</p>
+		<p>设置给定索引的矢量的第二维数据(设置 Y 值)。</p>
 
 		<h3>[method:BufferAttribute setZ]( [param:Integer index], [param:Float z] ) </h3>
-		<p>Sets the z component of the vector at the given index.</p>
+		<p>设置给定索引的矢量的第三维数据(设置 Z 值)。</p>
 
 		<h3>[method:BufferAttribute setW]( [param:Integer index], [param:Float w] ) </h3>
-		<p>Sets the w component of the vector at the given index.</p>
+		<p>设置给定索引的矢量的第四维数据(设置 W 值)。</p>
 
 		<h3>[method:BufferAttribute setXY]( [param:Integer index], [param:Float x], [param:Float y] ) </h3>
-		<p>Sets the x and y components of the vector at the given index.</p>
+		<p>设置给定索引的矢量的第一、二维数据(设置 X 和 Y 值)。</p>
 
 		<h3>[method:BufferAttribute setXYZ]( [param:Integer index], [param:Float x], [param:Float y], [param:Float z] ) </h3>
-		<p>Sets the x, y and z components of the vector at the given index.</p>
+		<p>设置给定索引的矢量的第一、二、三维数据(设置 X、Y 和 Z 值)。</p>
 
 		<h3>[method:BufferAttribute setXYZW]( [param:Integer index], [param:Float x], [param:Float y], [param:Float z], [param:Float w] ) </h3>
-		<p>Sets the x, y, z and w components of the vector at the given index.</p>
+		<p>设置给定索引的矢量的第一、二、三、四维数据(设置 X、Y、Z 和 W 值)。</p>
 
 
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

+ 87 - 124
docs/api/zh/core/BufferGeometry.html

@@ -11,22 +11,21 @@
 		<h1>[name]</h1>
 
 		<p>
-		An efficient representation of mesh, line, or point geometry. Includes vertex positions, face
-		indices, normals, colors, UVs, and custom attributes within buffers, reducing the cost of
-		passing all this data to the GPU.
+			是面片、线或点几何体的有效表述。包括顶点位置,面片索引、法相量、颜色值、UV 坐标和自定义缓存属性值。使用 BufferGeometry
+			可以有效减少向 GPU 传输上述数据所需的开销。
 		</p>
 		<p>
-		To read and edit data in BufferGeometry attributes, see [page:BufferAttribute] documentation.
+			读取或编辑 BufferGeometry 中的数据,见 [page:BufferAttribute] 文档。
 		</p>
 		<p>
-		For a less efficient but easier-to-use representation of geometry, see [page:Geometry].
+			几何体的更多使用示例,详见 [page:Geometry]。
 		</p>
 
-		<h2>Example</h2>
+		<h2>示例</h2>
 		<code>
 		var geometry = new THREE.BufferGeometry();
-		// create a simple square shape. We duplicate the top left and bottom right
-		// vertices because each vertex needs to appear once per triangle.
+		// 创建一个简单的矩形. 在这里我们左上和右下顶点被复制了两次。
+		// 因为在两个三角面片里,这两个顶点都需要被用到。
 		var vertices = new Float32Array( [
 			-1.0, -1.0,  1.0,
 			 1.0, -1.0,  1.0,
@@ -37,7 +36,7 @@
 			-1.0, -1.0,  1.0
 		] );
 
-		// itemSize = 3 because there are 3 values (components) per vertex
+		// itemSize = 3 因为每个顶点都是一个三元组。
 		geometry.addAttribute( 'position', new THREE.BufferAttribute( vertices, 3 ) );
 		var material = new THREE.MeshBasicMaterial( { color: 0xff0000 } );
 		var mesh = new THREE.Mesh( geometry, material );
@@ -52,76 +51,69 @@
 		</p>
 
 
-		<h2>Accessing Attributes</h2>
+		<h2>访问属性值</h2>
 		<p>
-		WebGL stores data associated with individual vertices of a geometry in <em>attributes</em>.
-		Examples include the position of the vertex, the normal vector for the vertex, the vertex color,
-		and so on. When using [page:Geometry], the [page:WebGLRenderer renderer] takes care of wrapping
-		up this information into typed array buffers and sending this data to the shader. With
-		BufferGeometry, all of this data is stored in buffers associated with individual attributes.
-		This means that to get the position data associated with a vertex (for instance), you must call
-		[page:.getAttribute] to access the 'position' [page:BufferAttribute attribute], then access the individual
-		x, y, and z coordinates of the position.
+			WebGL 将与每个顶点相关的数据保存为 <em>attributes</em>. 这些属性例如,顶点位置、顶点法向量、顶点颜色等等。
+			当使用 [page:Geometry] 时,[page:WebGLRenderer renderer] 将数据包装为有类型的队列的缓存,并将数据送往着色器。有了
+			BufferGeometry 这些数据都被存储到相应类型的属性的缓存中。这就意味着,如果想要获得顶点的位置信息,你必须调用
+			[page:.getAttribute] 访问位置信息的 page:BufferAttribute attribute],之后再访问位置矢量中每一维坐标值(x,y,z 值)。
 		</p>
 		<p>
-		The following attributes are set by various members of this class:
+			通过该类提供的下属方法设置以下属性值:
 		</p>
 		<h3>[page:BufferAttribute position] (itemSize: 3)</h3>
 		<p>
-		Stores the x, y, and z coordinates of each vertex in this geometry. Set by [page:.fromGeometry]().
+			存储当前几何体中每个顶点的坐标,包含 x,y,z 三维数据。通过 [page:.fromGeometry]() 设置。
 		</p>
 
 		<h3>[page:BufferAttribute normal] (itemSize: 3)</h3>
 		<p>
-		Stores the x, y, and z components of the vertex normal vector of each vertex in this geometry.
-		Set by [page:.fromGeometry]().
+			存储当前几何体中每个顶点的法向量,包含 x,y,z 三维数据。通过 [page:.fromGeometry]() 设置。
 		</p>
 
 		<h3>[page:BufferAttribute color] (itemSize: 3)</h3>
 		<p>
-		Stores the red, green, and blue channels of vertex color of each vertex in this geometry.
-		Set by [page:.fromGeometry]().
+			存储当前几何体中每个顶点的颜色值,包含 R,G,B 三通道颜色值。通过 [page:.fromGeometry]() 设置。
 		</p>
 
 		<p>
-		In addition to the the built-in attributes, you can set your own custom attributes using the addAttribute method. With [page:Geometry], these attributes are set and stored on the [page:Material]. In BufferGeometry, the attributes are stored with the geometry itself. Note that you still need to set the attributes information on the material as well, but the value of each attribute is stored in the BufferGeometry.
+			除了上述已有的属性,你可以通过 addAttribute 方法自定义属性。通过 [page:Geometry],这些自定义属性被存储到
+			[page:Material] 中。在 BufferGeometry 中,属性则被存储到几何体本身。注意,你依然需要在材质中设置属性信息,
+			但是属性的值则被存储到 BufferGeometry。
 		</p>
 
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 
 		<h3>[name]()</h3>
 		<div>
-		This creates a new [name]. It also sets several properties to a default value.
+		创建一个新的 [name]. 同时将预置属性设置为默认值.
 		</div>
 
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Object attributes]</h3>
 		<p>
-		This hashmap has as id the name of the attribute to be set and as value the [page:BufferAttribute buffer] to set it to.
-		Rather than accessing this property directly, use [page:.addAttribute] and [page:.getAttribute] to access attributes of this geometry.
+			通过 hashmap 存储该几何体相关的属性,hashmap 的 id 是当前 attribute 的名称,值是相应的 [page:BufferAttribute buffer]。
+			你可以通过 [page:.addAttribute] 和 [page:.getAttribute] 添加和访问与当前几何体有关的 attribute。
 		</p>
 
 		<h3>[property:Box3 boundingBox]</h3>
 		<p>
-			Bounding box for the bufferGeometry, which can be calculated with
-			[page:.computeBoundingBox](). Default is *null*.
+			当前 bufferGeometry 的外边界矩形。可以通过 [page:.computeBoundingBox]() 计算。默认值是 *null*。
 		</p>
 
 		<h3>[property:Sphere boundingSphere]</h3>
 		<p>
-			Bounding sphere for the bufferGeometry, which can be calculated with
-			[page:.computeBoundingSphere](). Default is *null*.
+			当前 bufferGeometry 的外边界球形。可以通过 [page:.computeBoundingSphere]() 计算。默认值是 *null*。
 		</p>
 
 		<h3>[property:Object drawRange]</h3>
 		<p>
-			Used to determine what part of the geometry should be rendered. This should not
-			be set directly, instead use [page:.setDrawRange].<br />
-			Default is
+			用于判断几何体的哪个部分需要被渲染。该值不应该直接被设置,而需要通过 [page:.setDrawRange] 进行设置。<br />
+			默认值为
 			<code>
 				{ start: 0, count: Infinity }
 			</code>
@@ -129,16 +121,16 @@
 
 		<h3>[property:Array groups]</h3>
 		<p>
-			Split the geometry into groups, each of which will be rendered in a separate WebGL draw call.
-			This allows an array of materials to be used with the bufferGeometry.<br /><br />
+			将当前几何体分割成组进行渲染,每个部分都会在单独的 WebGL 的 draw call 中进行绘制。该方法可以让当前的 bufferGeometry
+			可以使用一个材质队列进行描述。<br /><br />
 
-			Each group is an object of the form:
+			分割后的每个部分都是一个如下的表单:
 			<code>{ start: Integer, count: Integer, materialIndex: Integer }</code>
-			where start specifies the first element in this draw call – the first vertex for non-indexed geometry,
-			otherwise the first triangle index. Count specifies how many vertices (or indices) are included, and
-			materialIndex specifies the material array index to use.<br /><br />
+			start 表明当前 draw call 中的没有索引的几何体的几何体的第一个顶点;或者第一个三角面片的索引。
+			count 指明当前分割包含多少顶点(或 indices)。
+			materialIndex 指出当前用到的材质队列的索引。<br /><br />
 
-			Use [page:.addGroup] to add groups, rather than modifying this array directly.
+			通过 [page:.addGroup] 来增加组,而不是直接更改当前队列。
 		</p>
 
 
@@ -154,206 +146,177 @@
 
 
 		<h3>[property:Integer id]</h3>
-		<p>Unique number for this bufferGeometry instance.</p>
+		<p>当前 bufferGeometry 的唯一编号。</p>
 
 		<h3>[property:BufferAttribute index]</h3>
 		<p>
-			Allows for vertices to be re-used across multiple triangles; this is called using "indexed triangles" and
-			works much the same as it does in [page:Geometry]: each triangle is associated with the indices of three vertices.
-			This attribute therefore stores the index of each vertex for each triangular face.
+			允许顶点在多个三角面片间可以重用。这样的顶点被称为"已索引的三角面片(indexed triangles)"并且使用时和[page:Geometry]中一致:
+			每个三角面片都和三个顶点的索引相关。该 attribute 因此所存储的是每个三角面片的三个顶点的索引。
 
-			If this attribute is not set, the [page:WebGLRenderer renderer] assumes that each three contiguous
-			positions represent a single triangle.
+			如果该 attribute 没有设置过,则 [page:WebGLRenderer renderer] 假设每三个连续的位置代表一个三角面片。
 
-			Default is *null*.
+			默认值是 *null*。
 		</p>
 
 		<h3>[property:Boolean isBufferGeometry]</h3>
 		<p>
-			Used to check whether this or derived classes are BufferGeometries. Default is *true*.<br /><br />
+			用于检查当前类或派生类的类型是 BufferGeometries。默认值是 *true*。<br /><br />
 
-			You should not change this, as it used internally for optimisation.
+			该值用于内部优化,你不应该手动修改该值。
 		</p>
 
 		<h3>[property:Object morphAttributes]</h3>
 		<p>
-			Hashmap of [page:BufferAttribute]s holding details of the geometry's [page:Geometry.morphTargets morphTargets].
+			存储 [page:BufferAttribute] 的 Hashmap,存储了几何体 [page:Geometry.morphTargets morphTargets] 的细节信息。
 		</p>
 
 		<h3>[property:String name]</h3>
 		<p>
-		Optional name for this bufferGeometry instance. Default is an empty string.
+			当前 bufferGeometry 实例的可选别名。默认值是空字符串。
 		</p>
 
 		<h3>[property:Object userData]</h3>
 		<p>
-		An object that can be used to store custom data about the BufferGeometry. It should not hold
-		references to functions as these will not be cloned.
+			存储 BufferGeometry 的自定义数据的对象。为保持对象在克隆时完整,该对象不应该包括任何函数的引用。
 		</p>
 
 		<h3>[property:String uuid]</h3>
 		<p>
-		[link:http://en.wikipedia.org/wiki/Universally_unique_identifier UUID] of this object instance.
-		This gets automatically assigned and shouldn't be edited.
+			当前对象实例的 [link:http://en.wikipedia.org/wiki/Universally_unique_identifier UUID],该值会自动被分配,且不应被修改。
 		</p>
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
-		<h3>[page:EventDispatcher EventDispatcher] methods are available on this class.</h3>
+		<h3>[page:EventDispatcher EventDispatcher] 在该类上可用的所有方法。</h3>
 
 		<h3>[method:BufferGeometry addAttribute]( [param:String name], [param:BufferAttribute attribute] )</h3>
 		<p>
-		Adds an attribute to this geometry. Use this rather than the attributes property,
-		because an internal hashmap of [page:.attributes] is maintained to speed up iterating over
-		attributes.
+			为当前几何体增加一个 attribute。 的属性,在类的内部,有一个存储 [page:.attributes] 的 hashmap,
+			通过该 hashmap,遍历 attributes 的速度会更快。而使用该方法,可以向 hashmap 内部增加 attribute。
+			所以,你需要使用该方法来添加 attributes。
 		</p>
 
 		<h3>[method:null addGroup]( [param:Integer start], [param:Integer count], [param:Integer materialIndex] )</h3>
 		<p>
-			Adds a group to this geometry; see the [page:BufferGeometry.groups groups]
-			property for details.
+			为当前几何体增加一个 group,详见 [page:BufferGeometry.groups groups] 属性。
 		</p>
 
 
 		<h3>[method:null applyMatrix]( [param:Matrix4 matrix] )</h3>
-		<p>Bakes matrix transform directly into vertex coordinates.</p>
+		<p> 用给定矩阵转换几何体的顶点坐标。</p>
 
 		<h3>[method:BufferGeometry center] ()</h3>
-		<p>Center the geometry based on the bounding box.</p>
+		<p>根据边界矩形将几何体居中。</p>
 
 		<h3>[method:BufferGeometry clone]()</h3>
-		<p>Creates a clone of this BufferGeometry.</p>
+		<p>克隆当前的 BufferGeometry。</p>
 
 		<h3>[method:BufferGeometry copy]( [param:BufferGeometry bufferGeometry] )</h3>
-		<p>Copies another BufferGeometry to this BufferGeometry.</p>
+		<p>将参数指定的 BufferGeometry 的值拷贝到当前 BufferGeometry 中。</p>
 
 		<h3>[method:null clearGroups]( )</h3>
-		<p>Clears all groups.</p>
+		<p>清空所有的 groups。</p>
 
 		<h3>[method:null computeBoundingBox]()</h3>
 		<p>
-		Computes bounding box of the geometry, updating [param:.boundingBox] attribute.<br />
-		Bounding boxes aren't computed by default. They need to be explicitly computed, otherwise they are *null*.
+			计算当前几何体的的边界矩形,该操作会更新已有 [param:.boundingBox]。<br />
+			边界矩形不会默认计算,需要调用该接口指定计算边界矩形,否则保持默认值 *null*。
 		</p>
 
 		<h3>[method:null computeBoundingSphere]()</h3>
 		<p>
-		Computes bounding sphere of the geometry, updating [page:.boundingSphere] attribute.<br />
-		Bounding spheres aren't computed by default. They need to be explicitly computed, otherwise they are *null*.
+			计算当前几何体的的边界球形,该操作会更新已有 [param:.boundingSphere]。<br />
+			边界球形不会默认计算,需要调用该接口指定计算边界球形,否则保持默认值 *null*。
 		</p>
 
 		<h3>[method:null computeVertexNormals]()</h3>
-		<p>Computes vertex normals by averaging face normals.</p>
+		<p>通过面片法向量的平均值计算每个顶点的法向量。</p>
 
 		<h3>[method:null dispose]()</h3>
 		<p>
-		Disposes the object from memory. <br />
-		You need to call this when you want the BufferGeometry removed while the application is running.
+			从内存中销毁对象。 <br />
+			如果在运行是需要从内存中删除 BufferGeometry,则需要调用该函数。
 		</p>
 
 		<h3>[method:BufferGeometry fromDirectGeometry]( [param:Geometry] )</h3>
 		<p>
-			Populates this BufferGeometry with data from a [page:DirectGeometry] object containing faces. Not implemented for a line geometry.<br /><br />
+			通过 [page:DirectGeometry] 所包含的面数据生成一个 BufferGeometry 对象。对于线型几何体未实现该方法。<br /><br />
 
-			Note: [page:DirectGeometry] is mainly used as an intermediary object for converting between [page:Geometry]
-			and BufferGeometry.
+			注意: [page:DirectGeometry] 主要用于内部 [page:Geometry] 和 BufferGeometry 的类型转换。
 		</p>
 
 		<h3>[method:BufferGeometry fromGeometry]( [param:Geometry] )</h3>
-		<p>Populates this BufferGeometry with data from a [page:Geometry] object containing faces. Not implemented for a line geometry.</p>
+		<p>通过 [page:Geometry] 所包含的面信息生成一个 BufferGeometry 对象。对于线型几何体未实现该方法。</p>
 
 		<h3>[method:BufferAttribute getAttribute]( [param:String name] )</h3>
-		<p>Returns the [page:BufferAttribute attribute] with the specified name.</p>
+		<p>返回指定名称的 [page:BufferAttribute attribute]。</p>
 
 		<h3>[method:BufferAttribute getIndex] ()</h3>
-		<p>Return the [page:.index] buffer.</p>
+		<p>返回缓存相关的 [page:.index]。</p>
 
 		<h3>[method:BufferGeometry lookAt] ( [param:Vector3 vector] )</h3>
 		<p>
-		vector - A world vector to look at.<br /><br />
+			vector - 几何体所朝向的世界坐标。<br /><br />
 
-		Rotates the geometry to face a point in space. This is typically done as a one time operation, and not during a loop.
-		Use [page:Object3D.lookAt] for typical real-time mesh usage.
+			旋转几何体朝向控件中的一点。该过程通常在一次处理中完成,不会循环处理。典型的用法是过通过调用 [page:Object3D.lookAt] 实时改变 mesh 朝向。
 		</p>
 
 		<h3>[method:null merge]( [param:BufferGeometry bufferGeometry], [param:Integer offset] )</h3>
-		<p>Merge in another BufferGeometry with an optional offset of where to start merging in.</p>
+		<p>同参数指定的 BufferGeometry 进行合并。可以通过可选参数指定,从哪个偏移位置开始进行 merge。</p>
 
 		<h3>[method:null normalizeNormals]()</h3>
 		<p>
-		Every normal vector in a geometry will have a magnitude of 1.
-		This will correct lighting on the geometry surfaces.
+			几何体中的每个法向量长度将会为 1。这样操作会更正光线在表面的效果。
 		</p>
 
 		<h3>[method:BufferAttribute removeAttribute]( [param:String name] )</h3>
-		<p>Removes the [page:BufferAttribute attribute] with the specified name.</p>
+		<p>删除具有指定名称的 [page:BufferAttribute attribute]。</p>
 
 		<h3>[method:BufferGeometry rotateX] ( [param:Float radians] )</h3>
 		<p>
-		Rotate the geometry about the X axis. This is typically done as a one time operation, and not during a loop.
-    Use [page:Object3D.rotation] for typical real-time mesh rotation.
+			在 X 轴上旋转几何体。该操作一般在一次处理中完成,不会循环处理。典型的用法是通过调用 [page:Object3D.rotation] 实时旋转几何体。
 		</p>
 
 		<h3>[method:BufferGeometry rotateY] ( [param:Float radians] )</h3>
 		<p>
-		Rotate the geometry about the Y axis. This is typically done as a one time operation, and not during a loop.
-    Use [page:Object3D.rotation] for typical real-time mesh rotation.
+			在 Y 轴上旋转几何体。该操作一般在一次处理中完成,不会循环处理。典型的用法是通过调用 [page:Object3D.rotation] 实时旋转几何体。
 		</p>
 
 		<h3>[method:BufferGeometry rotateZ] ( [param:Float radians] )</h3>
 		<p>
-		Rotate the geometry about the Z axis. This is typically done as a one time operation, and not during a loop.
-    Use [page:Object3D.rotation] for typical real-time mesh rotation.
+			在 Z 轴上旋转几何体。该操作一般在一次处理中完成,不会循环处理。典型的用法是通过调用 [page:Object3D.rotation] 实时旋转几何体。
 		</p>
 
 		<h3>[method:BufferGeometry scale] ( [param:Float x], [param:Float y], [param:Float z] )</h3>
 		<p>
-		Scale the geometry data. This is typically done as a one time operation, and not during a loop.
-		Use [page:Object3D.scale] for typical real-time mesh scaling.
+			缩放几何体。该操作一般在一次处理中完成,不会循环处理。典型的用法是通过调用 [page:Object3D.scale] 实时旋转几何体。
 		</p>
 
 		<h3>[method:null setIndex] ( [param:BufferAttribute index] )</h3>
-		<p>Set the [page:.index] buffer.</p>
+		<p>设置缓存的 [page:.index]。</p>
 
 		<h3>[method:null setDrawRange] ( [param:Integer start], [param:Integer count] )</h3>
-		<p>Set the [page:.drawRange] buffer. See that property for details.</p>
+		<p>设置缓存的 [page:.drawRange]。详见相关属性说明。</p>
 
 		<h3>[method:BufferGeometry setFromObject] ( [param:Object3D object] )</h3>
-		<p>Sets the attributes for this BufferGeometry from an [page:Object3D].</p>
+		<p>通过 [page:Object3D] 设置该 BufferGeometry 的 attribute。</p>
 
 		<h3>[method:BufferGeometry setFromPoints] ( [param:Array points] )</h3>
-		<p>Sets the attributes for this BufferGeometry from an array of points.</p>
+		<p>通过点队列设置该 BufferGeometry 的 attribute。</p>
 
 		<h3>[method:Object toJSON]()</h3>
-		<p>Returns a JSON object representation of the BufferGeometry.</p>
+		<p>返回代表该 BufferGeometry 的 JSON 对象。</p>
 
 		<h3>[method:BufferGeometry toNonIndexed]()</h3>
-		<p>Return a non-index version of an indexed BufferGeometry.</p>
+		<p>返回已索引的 BufferGeometry 的非索引版本。</p>
 
 		<h3>[method:BufferGeometry translate] ( [param:Float x], [param:Float y], [param:Float z] )</h3>
 		<p>
-		Translate the geometry. This is typically done as a one time operation, and not during a loop.
-    Use [page:Object3D.position] for typical real-time mesh translation.
+			移动几何体。该操作一般在一次处理中完成,不会循环处理。典型的用法是通过调用 [page:Object3D.rotation] 实时旋转几何体。
 		</p>
 
 		<h3>[method:BufferGeometry updateFromObject] ( [param:Object3D object] )</h3>
-		<div>Updates the attributes for this BufferGeometry from an [page:Object3D].</div>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+		<div>通过 [page:Object3D] 更新 BufferGeometry 的 attribute。</div>
 
 		<h2>Source</h2>
 

+ 19 - 21
docs/api/zh/core/Clock.html

@@ -9,78 +9,76 @@
 	</head>
 	<body>
 		<h1>[name]</h1>
-
 		<p class="desc">
-		Object for keeping track of time. This uses <a href="https://developer.mozilla.org/en-US/docs/Web/API/Performance/now">performance.now()</a>
-		if it is available, otherwise it reverts to the less accurate <a href="https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Date/now">Date.now()</a>.
+			该对象用于跟踪时间。如果<a href="https://developer.mozilla.org/en-US/docs/Web/API/Performance/now">performance.now()</a>可用,则
+			Clock 对象通过该方法实现,否则通过歉精准的<a href="https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Date/now">Date.now()</a>实现。
 		</p>
 
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 
 		<h3>[name]( [param:Boolean autoStart] )</h3>
 		<p>
-		autoStart — (optional) whether to automatically start the clock. Default is true.
+		autoStart — (可选) 是否要自动开启时钟。默认值是 true。
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Boolean autoStart]</h3>
 		<p>
-		If set, starts the clock automatically when the first update is called. Default is true.
+			如果设置为 true,则在第一次 update 时开启时钟。默认值是 true。
 		</p>
 
 		<h3>[property:Float startTime]</h3>
 		<p>
-		Holds the time at which the clock's [page:Clock.start start] method was last called.
+			存储时钟最后一次调用 [page:Clock.start start] 方法的时间。
  		</p>
 
 
 		<h3>[property:Float oldTime]</h3>
 		<p>
-		Holds the time at which the clock's [page:Clock.start start], [page:Clock.getElapsedTime getElapsedTime] or [page:Clock.getDelta getDelta]
-		methods were last called.
+			存储时钟最后一次调用  [page:Clock.start start], [page:Clock.getElapsedTime getElapsedTime] 或 [page:Clock.getDelta getDelta] 方法的时间。
  		</p>
 
 		<h3>[property:Float elapsedTime]</h3>
 		<p>
-		Keeps track of the total time that the clock has been running.
+			保存时钟运行的总时长。
  		</p>
 
 		<h3>[property:Boolean running]</h3>
 		<p>
-		Whether the clock is running or not.
+			判断时钟是否在运行。
  		</p>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 		<h3>[method:null start]()</h3>
 		<p>
-		Starts clock. Also sets the [page:Clock.startTime startTime] and [page:Clock.oldTime oldTime]
-		to the current time, sets [page:Clock.elapsedTime elapsedTime] to *0* and [page:Clock.running running] to *true*.
+			启动时钟。同时将 [page:Clock.startTime startTime] 和 [page:Clock.oldTime oldTime] 设置为当前时间。
+			设置 [page:Clock.elapsedTime elapsedTime] 为 *0*,并且设置 [page:Clock.running running] 为 *true*.
 		</p>
 
 		<h3>[method:null stop]()</h3>
 		<p>
-		Stops clock and sets [page:Clock.oldTime oldTime] to the current time.
+			停止时钟。同时将 [page:Clock.oldTime oldTime] 设置为当前时间。
 		</p>
 
 		<h3>[method:Float getElapsedTime]()</h3>
 		<p>
-		Get the seconds passed since the clock started and sets [page:Clock.oldTime oldTime] to the current time.<br />
-		If [page:Clock.autoStart autoStart] is *true* and the clock is not running, also starts the clock.
+			获取自时钟启动后的秒数,摒弃将 [page:Clock.oldTime oldTime] 设置为当前时间。<br />
+			如果 [page:Clock.autoStart autoStart] 设置为 *true* 且时钟并未运行,则该方法同时启动时钟。
 		</p>
 
 		<h3>[method:Float getDelta]()</h3>
 		<p>
-		Get the seconds passed since the time [page:Clock.oldTime oldTime] was set and sets [page:Clock.oldTime oldTime] to the current time.<br />
-		If [page:Clock.autoStart autoStart] is *true* and the clock is not running, also starts the clock.
+			获取自 [page:Clock.oldTime oldTime] 设置后到当前的秒数。 同时将 [page:Clock.oldTime oldTime] 设置为当前时间。<br/>
+			如果 [page:Clock.autoStart autoStart] 设置为 *true* 且时钟并未运行,则该方法同时启动时钟。
 		</p>
 
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

+ 27 - 32
docs/api/zh/core/DirectGeometry.html

@@ -11,97 +11,92 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-			This class is used internally to convert from [page:Geometry] to [page:BufferGeometry].
+			该类在内部被用于 [page:Geometry] 到 [page:BufferGeometry] 的转换。
 		</p>
 
-
-
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 
 		<h3>[name]()</h3>
-		<p>This creates a new [name].</p>
+		<p>创建一个新的 [name] 对象。</p>
 
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Integer id]</h3>
-		<p>Unique number for this [name] instance.</p>
+		<p>当前 [name] 实例的唯一数字标识。</p>
 
 		<h3>[property:String name]</h3>
-		<p>Optional name. Default is the empty string.</p>
+		<p>可选名称. 默认值是空字符串。</p>
 
 		<h3>[property:Array type]</h3>
-		<p>String 'DirectGeometry'.</p>
+		<p>返回 'DirectGeometry' 字符串。</p>
 
 		<h3>[property:Array vertices]</h3>
-		<p>Initialiased as an empty array, this is populated by [page:.fromGeometry]().</p>
+		<p>被初始化为一个空队列, 该属性由 [page:.fromGeometry]() 赋值。</p>
 
 		<h3>[property:Array normals]</h3>
-		<p>Initialiased as an empty array, this is populated by [page:.fromGeometry]().</p>
+		<p>被初始化为一个空队列, 该属性由 [page:.fromGeometry]() 赋值。</p>
 
 		<h3>[property:Array colors]</h3>
-		<p>Initialiased as an empty array, this is populated by [page:.fromGeometry]().</p>
+		<p>被初始化为一个空队列, 该属性由 [page:.fromGeometry]() 赋值。</p>
 
 		<h3>[property:Array uvs]</h3>
-		<p>Initialiased as an empty array, this is populated by [page:.fromGeometry]().</p>
+		<p>被初始化为一个空队列, 该属性由 [page:.fromGeometry]() 赋值。</p>
 
 		<h3>[property:Array uvs2]</h3>
-		<p>Initialiased as an empty array, this is populated by [page:.fromGeometry]().</p>
+		<p>被初始化为一个空队列, 该属性由 [page:.fromGeometry]() 赋值。</p>
 
 		<h3>[property:Array groups]</h3>
-		<p>Initialiased as an empty array, this is populated by [page:.fromGeometry]().</p>
+		<p>被初始化为一个空队列, 该属性由 [page:.fromGeometry]() 赋值。</p>
 
 		<h3>[property:Array morphTargets]</h3>
-		<p>Initialiased as an empty array, this is populated by [page:.fromGeometry]().</p>
+		<p>被初始化为一个空队列, 该属性由 [page:.fromGeometry]() 赋值。</p>
 
 		<h3>[property:Array skinWeights]</h3>
-		<p>Initialiased as an empty array, this is populated by [page:.fromGeometry]().</p>
+		<p>被初始化为一个空队列, 该属性由 [page:.fromGeometry]() 赋值。</p>
 
 		<h3>[property:Array skinIndices]</h3>
-		<p>Initialiased as an empty array, this is populated by [page:.fromGeometry]().</p>
+		<p>被初始化为一个空队列, 该属性由 [page:.fromGeometry]() 赋值。</p>
 
 		<h3>[property:Box3 boundingBox]</h3>
 		<p>
-			Bounding box for the bufferGeometry, which can be calculated with
-			[page:.computeBoundingBox](). Default is *null*.
+			对应 bufferGeometry 的外边界矩形,该值可通过 [page:.computeBoundingBox]() 计算。默认值是 *null*。
 		</p>
 
 		<h3>[property:Sphere boundingSphere]</h3>
 		<p>
-			Bounding sphere for the bufferGeometry, which can be calculated with
-			[page:.computeBoundingSphere](). Default is *null*.
+			对应 bufferGeometry 的外边界球,该值可通过 [page:.computeBoundingSphere]() 计算。默认值是 *null*。
 		</p>
 
 		<h3>[property:Boolean verticesNeedUpdate]</h3>
-		<p>Default is false.</p>
+		<p>默认值为 false。</p>
 
 		<h3>[property:Boolean normalsNeedUpdate]</h3>
-		<p>Default is false.</p>
+		<p>默认值为 false。</p>
 
 		<h3>[property:Boolean colorsNeedUpdate]</h3>
-		<p>Default is false.</p>
+		<p>默认值为 false。</p>
 
 		<h3>[property:Boolean uvsNeedUpdate]</h3>
-		<p>Default is false.</p>
+		<p>默认值为 false。</p>
 
 		<h3>[property:Boolean groupsNeedUpdate]</h3>
-		<p>Default is false.</p>
+		<p>默认值为 false。</p>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 		<h3>[property:null computeGroups]( [param:Geometry geometry] )</h3>
 		<p>
-			Compute the parts of the geometry that have different materialIndex.
-			See [page:BufferGeometry.groups].
+			计算几何体中有不同 materialIndex 的部分,详见 [page:BufferGeometry.groups]。
 		</p>
 
 		<h3>[property:null fromGeometry]( [param:Geometry geometry] )</h3>
-		<p>Pass in a [page:Geometry] instance for conversion.</p>
+		<p>传入一个需要转换的 [page:Geometry] 实例。</p>
 
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

+ 20 - 20
docs/api/zh/core/EventDispatcher.html

@@ -11,14 +11,14 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-			JavaScript events for custom objects.<br />
+			自定义对象的 JavaScript 事件。<br />
 			[link:https://github.com/mrdoob/eventdispatcher.js Eventdispatcher on GitHub]
 		</p>
 
-		<h2>Example</h2>
+		<h2>示例</h2>
 
 		<code>
-// Adding events to a custom object
+// 为自定义对象添加事件
 
 var Car = function () {
 
@@ -30,11 +30,11 @@ var Car = function () {
 
 };
 
-// Mixing the EventDispatcher.prototype with the custom object prototype
+// 将 EventDispatcher.prototype 与自定义对象 prototype 进行混合
 
 Object.assign( Car.prototype, EventDispatcher.prototype );
 
-// Using events with the custom object
+// 使用自定义对象的事件
 
 var car = new Car();
 
@@ -47,53 +47,53 @@ car.addEventListener( 'start', function ( event ) {
 car.start();
 		</code>
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 		<h3>[name]()</h3>
 		<p>
-		Creates EventDispatcher object.
+		创建 EventDispatcher 对象。
 		</p>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 		<h3>[method:null addEventListener]( [param:String type], [param:Function listener] )</h3>
 		<p>
-		type - The type of event to listen to.<br />
-		listener - The function that gets called when the event is fired.
+		type - 需要添加监听的事件类型。<br />
+		listener - 事件发生时被调用到的函数。
 		</p>
 		<p>
-		Adds a listener to an event type.
+		为指定事件增加监听函数。
 		</p>
 
 		<h3>[method:Boolean hasEventListener]( [param:String type], [param:Function listener] )</h3>
 		<p>
-		type - The type of event to listen to.<br />
-		listener - The function that gets called when the event is fired.
+		type - 需要被监听的事件类型。<br />
+		listener - 事件发生时被调用到的函数。
 		</p>
 		<p>
-		Checks if listener is added to an event type.
+		检查监听函数是否已经添加到指定事件。
 		</p>
 
 		<h3>[method:null removeEventListener]( [param:String type], [param:Function listener] )</h3>
 		<p>
-		type - The type of the listener that gets removed.<br />
-		listener - The listener function that gets removed.
+		type - 需要移除监听的事件类型。<br />
+		listener - 需要被移除的监听函数。
 		</p>
 		<p>
-		Removes a listener from an event type.
+		从指定事件类型中移除监听函数。
 		</p>
 
 		<h3>[method:null dispatchEvent]( [param:object event] )</h3>
 		<p>
-		event - The event that gets fired.
+		event - 将被触发的事件。
 		</p>
 		<p>
-		Fire an event type.
+		触发一个事件。
 		</p>
 
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

+ 34 - 39
docs/api/zh/core/Face3.html

@@ -11,15 +11,13 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-		Triangular face used in [page:Geometry]. These are created automatically for all
-		standard geometry types, however if you are building a custom geometry you will have to
-		create them manually.
+			在 [page:Geometry] 中被使用到的三角面片。这些三角面片会为所有标准几何体自动创建。
+			然而,如果你正在构建一个自定义几何体,你需要手动创建这些三角面片。
 		</p>
 
 
-		<h2>Examples</h2>
+		<h2>示例</h2>
 
-		<p>[example:misc_ubiquity_test ubiquity / test ]</p>
 		<p>[example:svg_sandbox svg / sandbox ]</p>
 		<p>[example:misc_exporter_obj exporter / obj ]</p>
 		<p>[example:webgl_shaders_vector WebGL / shaders / vector ]</p>
@@ -28,22 +26,22 @@
 		<code>
 var material = new THREE.MeshStandardMaterial( { color : 0x00cc00 } );
 
-//create a triangular geometry
+//创建仅有一个三角面片的几何体
 var geometry = new THREE.Geometry();
 geometry.vertices.push( new THREE.Vector3( -50, -50, 0 ) );
 geometry.vertices.push( new THREE.Vector3(  50, -50, 0 ) );
 geometry.vertices.push( new THREE.Vector3(  50,  50, 0 ) );
 
-//create a new face using vertices 0, 1, 2
+//利用顶点 0, 1, 2 创建一个面
 var normal = new THREE.Vector3( 0, 1, 0 ); //optional
 var color = new THREE.Color( 0xffaa00 ); //optional
 var materialIndex = 0; //optional
 var face = new THREE.Face3( 0, 1, 2, normal, color, materialIndex );
 
-//add the face to the geometry's faces array
+//将创建的面添加到几何体的面的队列
 geometry.faces.push( face );
 
-//the face normals and vertex normals can be calculated automatically if not supplied above
+//如果没有特别指明,面和顶点的法向量可以通过如下代码自动计算
 geometry.computeFaceNormals();
 geometry.computeVertexNormals();
 
@@ -51,83 +49,80 @@ scene.add( new THREE.Mesh( geometry, material ) );
 	</code>
 
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 		<h3>[name]( [param:Integer a], [param:Integer b], [param:Integer c], [param:Vector3 normal], [param:Color color], [param:Integer materialIndex] )</h3>
 		<p>
-		a — Vertex A index.<br />
-		b — Vertex B index.<br />
-		c — Vertex C index.<br /><br />
+			a — 顶点 A 的索引。<br />
+			b — 顶点 B 的索引。<br />
+			c — 顶点 C 的索引。<br /><br />
 
-		normal — (optional) Face normal ([page:Vector3 Vector3]) or array of vertex normals.
-		If a single vector is passed in, this sets [page:.normal], otherwise if an array of three
-		vectors is passed in this sets [page:.vertexNormals]<br /><br />
+			normal — (可选) 面的法向量 ([page:Vector3 Vector3]) 或顶点法向量队列。
+			如果参数传入单一矢量,则用该量设置面的法向量 [page:.normal],如果传入的是包含三个矢量的队列,
+			则用该量设置 [page:.vertexNormals]<br /><br />
 
-		color — (optional) Face [page:Color color] or array of vertex [page:Color colors].
-		If a single vector is passed in, this sets [page:.color], otherwise if an array of three
-		vectors is passed in this sets [page:.vertexColors]<br /><br />
+			color — (可选) 面的颜色值 [page:Color color] 或顶点颜色值的队列。
+			如果参数传入单一矢量,则用该量设置 [page:.color],如果传入的是包含三个矢量的队列,
+			则用该量设置 [page:.vertexColors]<br /><br />
 
-		materialIndex — (optional) which index of an array of materials to associate
-		with the face.
+			materialIndex — (可选) 材质队列中与该面对应的材质的索引。
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Integer a]</h3>
 		<p>
-		Vertex A index.
+			顶点 A 的索引。
 		</p>
 
 		<h3>[property:Integer b]</h3>
 		<p>
-		Vertex B index.
+			顶点 B 的索引。
 		</p>
 
 		<h3>[property:Integer c]</h3>
 		<p>
-		Vertex C index.
+			顶点 C 的索引。
 		</p>
 
 		<h3>[property:Vector3 normal]</h3>
 		<p>
-		Face normal - vector showing the direction of the Face3. If calculated automatically
-		(using [page:Geometry.computeFaceNormals]), this is the normalized cross product of two edges of the
-		triangle. Default is *(0, 0, 0)*.
+			面的法向量 - 矢量展示 Face3 的方向。如果该量是通过调用 [page:Geometry.computeFaceNormals] 自动计算的,
+			该值等于归一化的两条边的差积。默认值是 *(0, 0, 0)*。
 		</p>
 
 		<h3>[property:Color color]</h3>
 		<p>
-		Face color - for this to be used a material's [page:Material.vertexColors vertexColors] property
-		must be set to [page:Materials THREE.FaceColors].
+			面的颜色值 - 在被用于指定材质的 [page:Material.vertexColors vertexColors] 属性时,该值必须被设置为
+			[page:Materials THREE.FaceColors]。
 		</p>
 
 		<h3>[property:Array vertexNormals]</h3>
 		<p>
-		Array of 3 [page:Vector3 vertex normals].
+			包含三个 [page:Vector3 vertex normals] 的队列。
 		</p>
 
 		<h3>[property:Array vertexColors]</h3>
 		<p>
-		Array of 3 vertex colors - for these to be used a material's [page:Material.vertexColors vertexColors] property
-		must be set to [page:Materials THREE.VertexColors].
+			包含 3 个顶点颜色值的队列 - 在被用于指定材质的 [page:Material.vertexColors vertexColors] 属性时,该值必须被设置为
+			[page:Materials THREE.VertexColors]。
 		</p>
 
-
 		<h3>[property:Integer materialIndex]</h3>
 		<p>
-		Material index (points to an index in the associated array of materials). Default is *0*.
+			材质队列中与该面相关的材质的索引。默认值为 *0*。
 		</p>
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 		<h3>[method:Face3 clone]()</h3>
-		<p>Creates a new clone of the Face3 object.</p>
+		<p>克隆该 Face3 对象。</p>
 
 		<h3>[method:Face3 copy]( [param:Face3 face3] )</h3>
-		<p>Copy the paramaters of another Face3 into this.</p>
+		<p>将参数指定的 Face3 对象的数据拷贝到当前对象。</p>
 
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

+ 102 - 113
docs/api/zh/core/Geometry.html

@@ -12,17 +12,16 @@
 
 		<div class="desc">
 		<p>
-		Geometry is a user-friendly alternative to [page:BufferGeometry]. Geometries store attributes
-		(vertex positions, faces, colors, etc.) using objects like [page:Vector3] or [page:Color] that
-		are easier to read and edit, but less efficient than typed arrays.
+			Geometry 是对 [page:BufferGeometry] 的用户有好替代。Geometry 利用 [page:Vector3]
+			或 [page:Color] 存储了几何体的相关 attributes(如顶点位置,面信息,颜色等)比起 BufferGeometry
+			更容易读写,但是运行效率不如有类型的队列。
 		</p>
 		<p>
-		Prefer [page:BufferGeometry] for large or serious projects.
+		对于大型工程或正式工程,推荐采用 [page:BufferGeometry]。
 		</p>
 		</div>
 
-
-		<h2>Example</h2>
+		<h2>示例</h2>
 
 		<div>[example:webgl_geometry_minecraft WebGL / geometry / minecraft ]</div>
 		<div>[example:webgl_geometry_minecraft_ao WebGL / geometry / minecraft / ao ]</div>
@@ -48,125 +47,118 @@
 		geometry.computeBoundingSphere();
 		</code>
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 
 		<h3>[name]()</h3>
 		<p>
-		The constructor takes no arguments.
+		构造函数没有任何参数。
 		</p>
 
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Box3 boundingBox]</h3>
 		<p>
-			Bounding box for the Geometry, which can be calculated with
-			[page:.computeBoundingBox](). Default is *null*.
+			Geometry 的外边界矩形,可以通过 [page:.computeBoundingBox]() 进行计算,默认值是 *null*。
 		</p>
 
 		<h3>[property:Sphere boundingSphere]</h3>
 		<p>
-			Bounding sphere for the Geometry, which can be calculated with
-			[page:.computeBoundingSphere](). Default is *null*.
+			Geometry 的外边界球形,可以通过 [page:.computeBoundingSphere]() 进行计算,默认值是 *null*。
 		</p>
 
 		<h3>[property:Array colors]</h3>
 		<p>
-		Array of vertex [page:Color colors], matching number and order of vertices.<br /><br />
+			顶点 [page:Color colors] 队列,与顶点数量和顺序保持一致。<br /><br />
 
-		This is used by [page:Points] and [page:Line] and any classes derived from those such as [page:LineSegments] and various helpers.
-		[page:Mesh Meshes] use [page:Face3.vertexColors] instead of this.<br /><br />
+			该属性用于 [page:Points] 、 [page:Line] 或派生自 [page:LineSegments] 的类。
+			对于 [page:Mesh Meshes],请使用 [page:Face3.vertexColors] 函数。<br /><br />
 
-		To signal an update in this array, [page:Geometry Geometry.colorsNeedUpdate] needs to be set to true.
+			如果要标记队列中的数据已经更新,[page:Geometry Geometry.colorsNeedUpdate] 值需要被设置为 true。
 		</p>
 
 		<h3>[property:Array faces]</h3>
 		<p>
-		Array of [page:Face3 faces].<br />
-		The array of faces describe how each vertex in the model is connected to form faces.
-		Additionally it holds information about face and vertex normals and colors.<br /><br />
-		To signal an update in this array, [page:Geometry Geometry.elementsNeedUpdate] needs to be set to true.
+			[page:Face3 faces] 队列。<br />
+
+			描述每个顶点之间如何组成模型面的面队列。同时该队列保存面和顶点的法向量和颜色信息。<br /><br />
+			如果要标记队列中的数据已经更新,[page:Geometry Geometry.elementsNeedUpdate] 值需要被设置为 true。
 		</p>
 
 		<h3>[property:Array faceVertexUvs]</h3>
 		<p>
-		Array of face [link:https://en.wikipedia.org/wiki/UV_mapping UV] layers, used for mapping textures onto the geometry.<br />
-		Each UV layer is an array of [page:UV]s matching the order and number of vertices in faces.<br /><br />
-		To signal an update in this array, [page:Geometry Geometry.uvsNeedUpdate] needs to be set to true.
+			面的 [link:https://en.wikipedia.org/wiki/UV_mapping UV] 层的队列,该队列用于将纹理和几何信息进行映射。<br />
+			每个 UV 层都是一个 [page:UV] 的队列,顺序和数量同面中的顶点相对用。<br /><br />
+			如果要标记队列中的数据已经更新,[page:Geometry Geometry.uvsNeedUpdate] 值需要被设置为 true。
 		</p>
 
 		<h3>[property:Integer id]</h3>
-		<p>Unique number for this geometry instance.</p>
+		<p>当前 geometry 实例的唯一标识符的数。</p>
 
 		<h3>[property:Boolean isGeometry]</h3>
 		<p>
-			Used to check whether this or derived classes are Geometries. Default is *true*.<br /><br />
+			用于判断当前类或派生类属于 Geometries。默认值是 *true*。<br /><br />
 
-			You should not change this, as it used internally for optimisation.
+			你不应该改变该值,该值用于内部优化。
 		</p>
 
 		<h3>[property:array lineDistances]</h3>
 		<p>
-		An array containing distances between vertices for Line geometries.
-		This is required for [page:LineDashedMaterial] to render correctly.
+			用于保存线型几何体中每个顶点间距离的。在正确渲染 [page:LineDashedMaterial] 时,需要用到该数据。
 		</p>
 
 		<h3>[property:Array morphTargets]</h3>
 		<p>
-		Array of [link:https://en.wikipedia.org/wiki/Morph_target_animation morph targets]. Each morph target is a Javascript object:
+			[link:https://en.wikipedia.org/wiki/Morph_target_animation morph targets] 的队列。每个
+			morph target 都是一个如下的 javascript 对象:
 		<code>{ name: "targetName", vertices: [ new THREE.Vector3(), ... ] }</code>
-		Morph vertices match number and order of primary vertices.
+			Morph 顶点和几何体原始顶点在数量和顺序上需要一一对应。
 		</p>
 
 		<h3>[property:Array morphNormals]</h3>
 		<p>
-		Array of morph normals. Morph normals have similar structure as morph targets, each normal set is a Javascript object:
+			一个 morph 法向量的数组。Morph 法向量和 morph target 有类似的结构,每个法向量都是一个如下的 Javascript 对象:
 		<code>morphNormal = { name: "NormalName", normals: [ new THREE.Vector3(), ... ] }</code>
 
-		See the [example:webgl_morphnormals WebGL / morphNormals] example.
+			示例详见 [example:webgl_morphnormals WebGL / morphNormals]。
 		</p>
 
 		<h3>[property:String name]</h3>
-		<p>Optional name for this geometry. Default is an empty string.</p>
+		<p>当前几何的可选别名。默认值是一个空字符串。</p>
 
 		<h3>[property:Array skinWeights]</h3>
 		<p>
-		When working with a [page:SkinnedMesh], each vertex can have up to 4 [page:Bone bones] affecting it.
-		The skinWeights property is an array of weight values that correspond to the order of the vertices in
-		the geometry. So for instance, the first skinWeight would correspond to the first vertex in the geometry.
-		Since each vertex can be modified by 4 bones, a [page:Vector4] is used to represent the skin weights
-		for that vertex.
+			当在处理一个 [page:SkinnedMesh] 时,每个顶点最多可以有 4 个相关的 [page:Bone bones] 来影响它。
+			skinWeights 属性是一个权重队列,顺序同几何体中的顶点保持一致。因而,队列中的第一个 skinWeight
+			就对应几何体中的第一个顶点。由于每个顶点可以被 4 个 [page:Bone bones] 营销,因而每个顶点的 skinWeights
+			就采用一个 [page:Vector4] 表示。
 		</p>
 		<p>
-		The values of the vector should typically be between 0 and 1. For instance when set to 0 the bone
-		transformation will have no affect. When set to 0.5 it will have 50% affect. When set to 100%, it will
-		have 100% affect. If there is only 1 bone associated with the vertex then you only need to worry about
-		the first component of the vector, the rest can be ignored and set to 0.
+			skinWeight 矢量中每个元素的取值范围应该在 0 到 1 之间。例如,当设置为 0,骨骼对该顶点的位置没有影响。当设置为 0.5,
+			则对顶点的影响为 50%。 当设置为 100% 则对顶点的影响是 100%。如果矢量中只有一个骨骼与顶点相关联,则你只需要关注矢量中的第一个元素,
+			剩余的元素可以忽略,他们的值可以都设置为 0。
 		</p>
 
 		<h3>[property:Array skinIndices]</h3>
 		<p>
-		Just like the skinWeights property, the skinIndices' values correspond to the geometry's vertices.
-		Each vertex can have up to 4 bones associated with it. So if you look at the first vertex, and the
-		first skinIndex, this will tell you the bones associated with that vertex. For example the first vertex
-		could have a value of <strong>( 10.05, 30.10, 12.12 )</strong>. Then the first skin index could have the
-		value of <strong>( 10, 2, 0, 0 )</strong>. The first skin weight could have the value of
-		<strong>( 0.8, 0.2, 0, 0 )</strong>. In affect this would take the first vertex, and then the bone
-		<strong>mesh.bones[10]</strong> and apply it 80% of the way. Then it would take the bone <strong>skeleton.bones[2]</strong>
-		and apply it 20% of the way. The next two values have a weight of 0, so they would have no affect.
+			就如同 skinWeights 属性一样。skinWeights 的值也是与几何体的顶点相对应。每个顶点可以最多有 4 个骨骼与之相关联。
+			因而第一个 skinIndex 就与几何体的第一个顶点相关联,skinIndex 的值就指明了影响该顶点的骨骼是哪个。例如,第一个顶点的值是
+			<strong>( 10.05, 30.10, 12.12 )</strong>,第一个 skinIndex 的值是<strong>( 10, 2, 0, 0 )</strong>,第一个 skinWeight
+			的值是 <strong>( 0.8, 0.2, 0, 0 )</strong>。上述值表明第一个顶点受到<strong>mesh.bones[10]</strong>骨骼的影响有 80%,
+			受到 <strong>skeleton.bones[2]</strong> 的影响是 20%,由于另外两个 skinWeight 的值是 0,因而他们对顶点没有任何影响。
 		</p>
 		<p>
-		In code another example could look like this:
+			下面以代码的形式展示示例:
 		<code>
-		// e.g.
+		// 例如
 		geometry.skinIndices[15] = new THREE.Vector4(   0,   5,   9, 10 );
 		geometry.skinWeights[15] = new THREE.Vector4( 0.2, 0.5, 0.3,  0 );
 
-		// corresponds with the following vertex
+		// 与该顶点相关
 		geometry.vertices[15];
 
-		// these bones will be used like so:
+		// 相应骨骼可以这样被调用:
 		skeleton.bones[0]; // weight of 0.2
 		skeleton.bones[5]; // weight of 0.5
 		skeleton.bones[9]; // weight of 0.3
@@ -176,169 +168,166 @@
 
 		<h3>[property:String uuid]</h3>
 		<p>
-		[link:http://en.wikipedia.org/wiki/Universally_unique_identifier UUID] of this object instance.
-		This gets automatically assigned and shouldn't be edited.
+			当前对象实例的 [link:http://en.wikipedia.org/wiki/Universally_unique_identifier UUID]
+			该值会被自动分配,请不要修改它。
 		</p>
 
 		<h3>[property:Array vertices]</h3>
 		<p>
-		Array of [page:Vector3 vertices].<br />
-		The array of vertices holds the position of every vertex in the model.<br />
-		To signal an update in this array, [page:.verticesNeedUpdate] needs to be set to true.
+			[page:Vector3 vertices] 的队列。<br />
+			顶点的队列,保存了模型中每个顶点的位置信息。<br />
+			如果要标记队列中的数据已经更新,[page:.verticesNeedUpdate] 值需要被设置为 true。
 		</p>
 
 		<h3>[property:Boolean verticesNeedUpdate]</h3>
-		<p>Set to *true* if the vertices array has been updated.</p>
+		<p> 如果顶点队列中的数据被修改,该值需要被设置为 *true*。</p>
 
 		<h3>[property:Boolean elementsNeedUpdate]</h3>
-		<p>Set to *true* if the faces array has been updated.</p>
+		<p> 如果面队列中的数据被修改,该值需要被设置为 *true*。</p>
 
 		<h3>[property:Boolean uvsNeedUpdate]</h3>
-		<p>Set to *true* if the uvs array has been updated.	</p>
+		<p> 如果 UV 队列中的数据被修改,该值需要被设置为 *true*。</p>
 
 		<h3>[property:Boolean normalsNeedUpdate]</h3>
-		<p>Set to *true* if the normals array has been updated.</p>
+		<p> 如果法向量队列中的数据被修改,该值需要被设置为 *true*。</p>
 
 		<h3>[property:Boolean colorsNeedUpdate]</h3>
-		<p>Set to *true* if the colors array or a face3 color has been updated.</p>
+		<p> 如果颜色队列或 face3 的颜色数据被修改,该值需要被设置为 *true*。</p>
 
 		<h3>[property:Boolean groupsNeedUpdate]</h3>
-		<p>Set to *true* if a face3 materialIndex has been updated.</p>
+		<p> 如果 face3 的 materialIndex 被修改,该值需要被设置为 *true*。</p>
 
 		<h3>[property:Boolean lineDistancesNeedUpdate]</h3>
-		<p>Set to *true* if the linedistances array has been updated.</p>
+		<p> 如果 linedistances 队列中的数据被修改,该值需要被设置为 *true*。</p>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
-		<h3>[page:EventDispatcher EventDispatcher] methods are available on this class.</h3>
+		<h3>[page:EventDispatcher EventDispatcher] 该类中可用的函数。</h3>
 
 		<h3>[method:null applyMatrix]( [param:Matrix4 matrix] )</h3>
-		<p>Bakes matrix transform directly into vertex coordinates.</p>
+		<p> 将矩阵信息直接应用于几何体顶点坐标。</p>
 
 		<h3>[method:Geometry center] ()</h3>
-		<p>Center the geometry based on the bounding box.</p>
+		<p> 基于外边界矩形将几何体居中。</p>
 
 		<h3>[method:Geometry clone]()</h3>
-		<p>
-		Creates a new clone of the Geometry.<br /><br />
-
-		This method copies only vertices, faces and uvs. It does not copy any other properties of the geometry.
+		<p>克隆当前几何体。<br /><br />
+			该方法除几何体的顶点、面信息和 UV 外不会复制其他属性。
 		</p>
 
 		<h3>[method:null computeBoundingBox]()</h3>
-		<p>Computes bounding box of the geometry, updating [page:Geometry Geometry.boundingBox] attribute.</p>
+		<p> 计算当前几何体的外边界矩形。该方法会更新 [page:Geometry Geometry.boundingBox] 属性值。</p>
 
 		<h3>[method:null computeBoundingSphere]()</h3>
-		<p>Computes bounding sphere of the geometry, updating [page:Geometry Geometry.boundingSphere] attribute.</p>
+		<p> 计算当前几何体的外边界球。该方法会更新 [page:Geometry Geometry.boundingSphere] 属性值。</p>
 
 		<p>
-			Neither bounding boxes or bounding spheres are computed by default. They need to be explicitly computed,
-			otherwise they are *null*.
+			计算外边界矩形或外边界球并不是默认会自动调用的方法,这两个函数需要被显示的调用才能天得到相应属性值,否则对应属性值保持默认值 *null*。
 		</p>
 
 		<h3>[method:null computeFaceNormals]()</h3>
-		<p>Computes [page:Face3.normal face normals].</p>
+		<p> 计算 [page:Face3.normal face normals] 值。</p>
 
 		<h3>[method:null computeFlatVertexNormals]()</h3>
-		<p>Computes flat [page:Face3.vertexNormals vertex normals]. Sets the vertex normal of each vertex of each face to be the same as the face's normal.</p>
+		<p> 计算 flat [page:Face3.vertexNormals vertex normals] 值。
+			该方法会将顶点法向量的值赋值为相应面的法向量值。</p>
 
 		<h3>[method:null computeMorphNormals]()</h3>
-		<p>Computes [page:.morphNormals].</p>
+		<p> 计算 [page:.morphNormals] 值。</p>
 
 		<h3>[method:null computeVertexNormals]( [param:Boolean areaWeighted] )</h3>
 		<p>
-		areaWeighted - If true the contribution of each face normal to the vertex normal is
-		weighted by the area of the face. Default is true.<br /><br />
+		areaWeighted - 如果该值设置为 true,则每个面的法向量对顶点法向量的影响按照面的面积大小来计算。默认值为 true.<br /><br />
 
-		Computes vertex normals by averaging face normals.
+			通过周围面的法向量计算顶点的法向量。
 		</p>
 
 		<h3>[method:Geometry copy]( [param:Geometry geometry] )</h3>
 		<p>
-			Copies vertices, faces and uvs into this geometry. It does not copy any other properties of the geometry.
+			将参数代表的几何体的顶点、面和 UV 复制到当前几何体。该方法不会复制除此以外的别的属性值。
 		</p>
 
 		<h3>[method:null dispose]()</h3>
 		<p>
-		Removes The object from memory. <br />
-		Don't forget to call this method when you remove a geometry because it can cause memory leaks.
+			将对象从内存中删除。 <br />
+
+			在你删除一个几何体时,不要忘记调用该方法,否则会造成内存泄漏。
 		</p>
 
 		<h3>[method:Geometry fromBufferGeometry]( [param:BufferGeometry geometry] )</h3>
-		<p>Convert a [page:BufferGeometry] to a Geometry.</p>
+		<p> 将一个 [page:BufferGeometry] 对象,转换成一个 Geometry 对象。</p>
 
 		<h3>[method:Geometry lookAt] ( [param:Vector3 vector] )</h3>
 		<p>
-		vector - A world vector to look at.<br /><br />
+			vector - 当前几何体朝向的世界坐标。<br /><br />
 
-		Rotates the geometry to face point in space. This is typically done as a one time operation but not during the render loop.<br>
-		Use [page:Object3D.lookAt] for typical real-time mesh usage.
+			该方法将几何体进行旋转,是的几何体朝向参数指定的世界坐标。该方法一般在一次处理中完成,但不在渲染过程中执行。<br>
+			一般使用 [page:Object3D.lookAt] 方法进行实时更改。
 		</p>
 
 		<h3>[method:null merge]( [param:Geometry geometry], [param:Matrix4 matrix], [param:Integer materialIndexOffset] )</h3>
-		<p>Merge two geometries or geometry and geometry from object (using object's transform)</p>
+		<p> 将两个几何体,或一个几何体和一个从对象中通过变换获得的几何体进行合并。</p>
 
 		<h3>[method:null mergeMesh]( [param:Mesh mesh] )</h3>
-		<p>Merge the mesh's geometry with this, also applying the mesh's transform.</p>
+		<p> 将参数指定的面片信息与当前几何体进行合并。同样会使用到参数 mesh 的变换。</p>
 
 
 		<h3>[method:null mergeVertices]()</h3>
 		<p>
-		Checks for duplicate vertices using hashmap.<br />
-		Duplicated vertices are removed and faces' vertices are updated.
+			通过 hashmap 检查重复的顶点。<br />
+			重复的顶点将会被移除,面的顶点信息会被更新。
 		</p>
 
 		<h3>[method:null normalize]()</h3>
 		<p>
-		Normalize the geometry. <br />
-		Make the geometry centered and have a bounding sphere of radius *1.0*.
+			将当前几何体归一化。 <br />
+			将当前几何体居中,并且使得该几何体的外边界球半径为 *1.0*。
 		</p>
 
 		<h3>[method:Geometry rotateX] ( [param:Float radians] )</h3>
 		<p>
-		Rotate the geometry about the X axis. This is typically done as a one time operation but not during the render loop.<br>
-		Use [page:Object3D.rotation] for typical real-time mesh rotation.
+			将几何体绕 X 轴旋转参数指定度数。该操作通常在一次处理中完成,但不会在渲染过程中处理。<br>
+			使用 [page:Object3D.rotation] 对模型面片进行实时旋转处理。
 		</p>
 
 		<h3>[method:Geometry rotateY] ( [param:Float radians] )</h3>
 		<p>
-		Rotate the geometry about the Y axis. This is typically done as a one time operation but not during the render loop.<br>
-    	        Use [page:Object3D.rotation] for typical real-time mesh rotation.
+			将几何体绕 Y 轴旋转参数指定度数。该操作通常在一次处理中完成,但不会在渲染过程中处理。<br>
+			使用 [page:Object3D.rotation] 对模型面片进行实时旋转处理。
 		</p>
 
 		<h3>[method:Geometry rotateZ] ( [param:Float radians] )</h3>
 		<p>
-		Rotate the geometry about the Z axis. This is typically done as a one time operation but not during the render loop.<br>
-	        Use [page:Object3D.rotation] for typical real-time mesh rotation.
+			将几何体绕 Z 轴旋转参数指定度数。该操作通常在一次处理中完成,但不会在渲染过程中处理。<br>
+			使用 [page:Object3D.rotation] 对模型面片进行实时旋转处理。
 		</p>
 
 		<h3>[method:Geometry setFromPoints] ( [param:Array points] )</h3>
-		<p>Sets the vertices for this Geometry from an array of points.</p>
+		<p>通过点队列设置一个 Geometry 中的顶点。</p>
 
 		<h3>[method:null sortFacesByMaterialIndex] (  )</h3>
 		<p>
-		Sorts the faces array according to material index. For complex geometries with several materials,
-		this can result in reduced draw calls and improved performance.
+			通过材质索引对面队列进行排序。对于复杂且有多个材质的几何体,该操作可以有效减少 draw call 从而提升性能。
 		</p>
 
 		<h3>[method:Geometry scale] ( [param:Float x], [param:Float y], [param:Float z] )</h3>
 		<p>
-		Scale the geometry data. This is typically done as a one time operation but not during the render loop.<br>
-		Use [page:Object3D.scale] for typical real-time mesh scaling.
+			缩放几何体大小。该操作通常在一次处理中完成,但不会在渲染过程中处理。<br>
+			使用 [page:Object3D.scale] 对模型面片进行实时缩放处理。
 		</p>
 
 		<h3>[method:JSON toJSON] ( )</h3>
-		<p>Convert the geometry to JSON format.</p>
+		<p> 将 Geometry 对象数据转为  JSON 格式。</p>
 
 		<h3>[method:Geometry translate] ( [param:Float x], [param:Float y], [param:Float z] )</h3>
 		<p>
-		Translate the geometry. This is typically done as a one time operation but not during the render loop.<br>
-    	        Use [page:Object3D.position] for typical real-time mesh translation.
+			移动当前几何体。该操作通常在一次处理中完成,但不会在渲染过程中处理。<br>
+			使用 [page:Object3D.position] 对模型面片进行实时移动处理。
 		</p>
 
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

+ 9 - 9
docs/api/zh/core/InstancedBufferAttribute.html

@@ -13,31 +13,31 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-		An instanced version of [page:BufferAttribute].
+			[page:BufferAttribute] 的实例化版本。
 		</p>
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 		<h3>[name]( [param:TypedArray array], [param:Integer itemSize], [param:Number meshPerAttribute] )</h3>
 		<p>
 		</p>
 
-		<h2>Properties</h2>
-		See [page:BufferAttribute] for inherited properties.
+		<h2>属性</h2>
+		继承属性详见 [page:BufferAttribute]。
 
 		<h3>[property:Number meshPerAttribute]</h3>
 		<p>
-			Default is *1*.
+			默认值为 *1*。
 		</p>
 
 		<h3>[property:Boolean isInstancedBufferAttribute]</h3>
 		<p>
-			Default is *true*.
+			默认值为 *true*.
 		</p>
 
-		<h2>Methods</h2>
-		<p>See [page:BufferAttribute] for inherited methods.</p>
+		<h2>方法</h2>
+		<p>继承方法详见 [page:BufferAttribute]。</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

+ 10 - 10
docs/api/zh/core/InstancedBufferGeometry.html

@@ -13,29 +13,29 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-		An instanced version of [page:BufferGeometry].
+		[page:BufferGeometry] 的实例化版本。
 		</p>
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 		<h3>[name]( )</h3>
-		<p>
+		<p> 默认构造函数没有参数。
 		</p>
 
-		<h2>Properties</h2>
-		See [page:BufferGeometry] for inherited properties.
+		<h2>属性</h2>
+		继承属性详见 [page:BufferGeometry]。
 
 		<h3>[property:Number maxInstancedCount]</h3>
 		<p>
-			Default is *undefined*.
+			默认值是 *undefined*。
 		</p>
 
 		<h3>[property:Boolean isInstancedBufferGeometry]</h3>
 		<p>
-			Default is *true*.
+			默认值是 *true*。
 		</p>
 
-		<h2>Methods</h2>
-		<p>See [page:BufferAttribute] for inherited methods.</p>
+		<h2>方法</h2>
+		<p>继承方法详见 [page:BufferAttribute]。</p>
 
 		<h3>[property:Number addGroup]( start, count, materialIndex )</h3>
 		<p>
@@ -43,7 +43,7 @@
 		</p>
 
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

+ 9 - 9
docs/api/zh/core/InstancedInterleavedBuffer.html

@@ -13,35 +13,35 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-		An instanced version of [page:InterleavedBuffer].
+		[page:InterleavedBuffer] 的实例化版本。
 		</p>
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 		<h3>[name]( [param:TypedArray array], [param:Integer itemSize], [param:Number meshPerAttribute] )</h3>
 		<p>
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 		<p>
-			See [page:InterleavedBuffer] for inherited properties.
+			继承属性详见 [page:InterleavedBuffer]。
 		</p>
 
 		<h3>[property:Number meshPerAttribute]</h3>
 		<p>
-			Default is *1*.
+			默认值是 *1*。
 		</p>
 
 		<h3>[property:Boolean isInstancedInterleavedBuffer]</h3>
 		<p>
-			Default is *true*.
+			默认值是 *true*。
 		</p>
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 		<p>
-			See [page:InterleavedBuffer] for inherited methods.
+			继承方法详见 [page:InterleavedBuffer]。
 		</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

+ 27 - 27
docs/api/zh/core/InterleavedBuffer.html

@@ -11,108 +11,108 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-			"Interleaved" means that multiple attributes, possibly of different types, (e.g., position, normal, uv, color) are packed into a single array buffer.
+			"交叉存储" 表明多个类型的 attributes (例如,顶点位置、法向量、UV 和颜色值)被存储到一个队列中。
 			<br/><br/>
-			An introduction into interleaved arrays can be found here: [link:https://blog.tojicode.com/2011/05/interleaved-array-basics.html Interleaved array basics]
+			如下链接有对交叉存储更详细的介绍: [link:https://blog.tojicode.com/2011/05/interleaved-array-basics.html Interleaved array basics]
 		</p>
 
-		<h2>Example</h2>
+		<h2>示例</h2>
 
 		<p>[example:webgl_buffergeometry_points_interleaved webgl / buffergeometry / points / interleaved]</p>
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 		<h3>[name]( [param:TypedArray array], [param:Integer stride] )</h3>
 		<p>
-			[page:TypedArray array] -- A typed array with a shared buffer. Stores the geometry data.<br/>
-			[page:Integer stride] -- The number of typed-array elements per vertex.
+			[page:TypedArray array] -- 一个基于共享缓存的类型化队列。该队列存储几何体相关数据。<br/>
+			[page:Integer stride] -- 每个顶点占用类型化队列的多少个元素。
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Array array]</h3>
 		<p>
-			 A typed array with a shared buffer. Stores the geometry data.
+			一个基于共享缓存的类型化队列。该队列存储几何体相关数据。
 		</p>
 
 		<h3>[property:Integer stride]</h3>
 		<p>
-			The number of typed-array elements per vertex.
+			每个顶点占用类型化队列的多少个元素。
 		</p>
 
 		<h3>[property:Integer count]</h3>
 		<p>
-		Gives the total number of elements in the array.
+			类型化队列中,所有元素的数目。
 		</p>
 
 		<h3>[property:Boolean dynamic]</h3>
 		<p>
-		Default is *false*.
+			默认值为 *false*。
 		</p>
 
 		<h3>[property:Object updateRange]</h3>
 		<p>
-		Object containing offset and count.
+			对象存储着需要更新的数据的偏移量和数量。
 		</p>
 
 		<h3>[property:Number updateRange.offset]</h3>
 		<p>
-		Default is *0*.
+			默认值为 *0*。
 		</p>
 
 		<h3>[property:Number updateRange.count]</h3>
 		<p>
-		Default is *-1*.
+			默认值为 *-1*。
 		</p>
 
 		<h3>[property:Integer version]</h3>
 		<p>
-		A version number, incremented every time the needsUpdate property is set to true.
+			版本号,每次 needsUpdate 属性设置为 true 时,版本号增加。
 		</p>
 
 		<h3>[property:Integer isInterleavedBuffer]</h3>
 		<p>
-		Default is *true*.
+			默认值为 *true*。
 		</p>
 
 		<h3>[property:Integer needsUpdate]</h3>
 		<p>
-		Default is *false*. Setting this to true increments [page:InterleavedBuffer.version version].
+			默认值为 *false*。该值被设置为 true 时,会导致 [page:InterleavedBuffer.version version] 增加。
 		</p>
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 		<h3>[method:InterleavedBuffer setArray] ( [param:TypedArray array] ) </h3>
 		<p>
-		 array - must be  a Typed Array.
+		 array - 必须是一个类型化的队列。
 		</p>
 
 		<h3>[method:InterleavedBuffer setDynamic] ( [param:Boolean value] ) </h3>
 		<p>
-			Set [page:InterleavedBuffer.dynamic dynamic] to value.
+			根据输入参数设置 [page:InterleavedBuffer.dynamic dynamic] 的值。
 		</p>
 
 		<h3>[method:InterleavedBuffer copy]( [param:InterleavedBuffer source] ) </h3>
 		<p>
-		 Copies another [name] to this [name].
+			将参数指定的 [name] 拷贝到当前 [name]。
 		</p>
 
 		<h3>[method:InterleavedBuffer copyAt]( [param:Integer index1], [param:InterleavedBuffer attribute], [param:Integer index2] ) </h3>
-		<p>Copies data from attribute[index2] to [page:InterleavedBuffer.array array][index1].</p>
+		<p> 将数据从 attribute[index2] 拷贝到 [page:InterleavedBuffer.array array][index1]。</p>
 
 		<h3>[method:InterleavedBuffer set]( [param:TypedArray value], [param:Integer offset] ) </h3>
 		<p>
-			value - The source (typed) array.<br/>
-			offset - The offset into the target array at which to begin writing values from the source array. Default is *0*.<br/><br />
+			value - 被拷贝的源(类型化)队列。<br/>
+			offset - 源队列中,数据开始拷贝的偏移量。默认值是 *0*.<br/><br />
 
-			Stores multiple values in the buffer, reading input values from a specified array.
+			将源队列数据拷贝到目标队列缓存中。
 		</p>
 
 		<h3>[method:InterleavedBuffer clone]() </h3>
 		<p>
-			Creates a clone of this [name].
+			克隆当前 [name]。
 		</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

+ 23 - 26
docs/api/zh/core/InterleavedBufferAttribute.html

@@ -15,89 +15,86 @@
 
 		</p>
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 		<h3>[name]( [param:InterleavedBuffer interleavedBuffer], [param:Integer itemSize], [param:Integer offset], [param:Boolean normalized] )</h3>
 		<p>
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:InterleavedBuffer data]</h3>
 		<p>
-			The [page:InterleavedBuffer InterleavedBuffer] instance passed in the constructor.
+			传入构造函数的 [page:InterleavedBuffer InterleavedBuffer] 实例。
 		</p>
 
 		<h3>[property:TypedArray array]</h3>
 		<p>
-			The value of [page:InterleavedBufferAttribute.data data].array.
+			[page:InterleavedBufferAttribute.data data].array 的值。
 		</p>
 
 		<h3>[property:Integer count]</h3>
 		<p>
-			The value of [page:InterleavedBufferAttribute.data data].count.
+			[page:InterleavedBufferAttribute.data data].count 的值。
 
-			If the buffer is storing a 3-component item (such as a position, normal, or color),
-			then this will count the number of such items stored.
+			所缓存的矢量的个数。如果缓存的矢量是一个三元组(例如,位置、法向量或颜色),则该值计算上述三元组的个数。
 		</p>
 
 		<h3>[property:Integer itemSize]</h3>
 		<p>
-			How many values make up each item.
+			队列中每个矢量有多少个元素构成。
 		</p>
 
 		<h3>[property:Integer offset]</h3>
 		<p>
-			The offset in the underlying array buffer where an item starts.
+			缓存队列中每个元素的起始位置的偏移量。
 		</p>
 
 		<h3>[property:Boolean normalized]</h3>
 		<p>
-			Default is *true*.
+			默认值为 *true*。
 		</p>
 
 		<h3>[property:Boolean isInterleavedBufferAttribute]</h3>
 		<p>
-			Default is *true*.
+			默认值为 *true*。
 		</p>
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 		<h3>[method:Number getX]( [param:Integer index] ) </h3>
-		<p>Returns the x component of the item at the given index.</p>
+		<p>返回给定索引矢量的第一个元素 (X 值)。</p>
 
 		<h3>[method:Number getY]( [param:Integer index] ) </h3>
-		<p>Returns the y component of the item at the given index.</p>
+		<p>返回给定索引矢量的第二个元素 (Y 值)。</p>
 
 		<h3>[method:Number getZ]( [param:Integer index] ) </h3>
-		<p>Returns the z component of the item at the given index.</p>
+		<p>返回给定索引矢量的第三个元素 (Z 值)。</p>
 
 		<h3>[method:Number getW]( [param:Integer index] ) </h3>
-		<p>Returns the w component of the item at the given index.</p>
+		<p>返回给定索引矢量的第四个元素 (W 值)。</p>
 
 		<h3>[method:null setX]( [param:Integer index], [param:Float x] ) </h3>
-		<p>Sets the x component of the item at the given index.</p>
+		<p>通过给定参数,设置指定索引矢量的第一个元素 (X 值)。</p>
 
 		<h3>[method:null setY]( [param:Integer index], [param:Float y] ) </h3>
-		<p>Sets the y component of the item at the given index.</p>
+		<p>通过给定参数,设置指定索引矢量的第二个元素 (Y 值)。</p>
 
 		<h3>[method:null setZ]( [param:Integer index], [param:Float z] ) </h3>
-		<p>Sets the z component of the item at the given index.</p>
+		<p>通过给定参数,设置指定索引矢量的第三个元素 (Z 值)。</p>
 
 		<h3>[method:null setW]( [param:Integer index], [param:Float w] ) </h3>
-		<p>Sets the w component of the item at the given index.</p>
+		<p>通过给定参数,设置指定索引矢量的第四个元素 (W 值)。</p>
 
 		<h3>[method:null setXY]( [param:Integer index], [param:Float x], [param:Float y] ) </h3>
-		<p>Sets the x and y components of the item at the given index.</p>
+		<p>通过给定参数,设置指定索引矢量的第一、二个元素 (X 和 Y 值)。</p>
 
 		<h3>[method:null setXYZ]( [param:Integer index], [param:Float x], [param:Float y], [param:Float z] ) </h3>
-		<p>Sets the x, y and z components of the item at the given index.</p>
+		<p>通过给定参数,设置指定索引矢量的第一、二、三个元素 (X Y 和 Z 值)。</p>
 
 		<h3>[method:null setXYZW]( [param:Integer index], [param:Float x], [param:Float y], [param:Float z], [param:Float w] ) </h3>
-		<p>Sets the x, y, z and w components of the item at the given index.</p>
+		<p>通过给定参数,设置指定索引矢量的第一、二、三、四个元素 (X Y Z 和 W 值)。</p>
 
-
-
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

+ 22 - 22
docs/api/zh/core/Layers.html

@@ -11,71 +11,71 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-			A [page:Layers] object assigns an [page:Object3D] to 1 or more of 32 layers numbered 0 to 31
-			- internally the layers are stored as a [link:https://en.wikipedia.org/wiki/Mask_(computing) bit mask], and by default all
-			Object3Ds are a member of layer 0.<br /><br />
+			[page:Layers] 对象为 [page:Object3D] 分配 1个到 32 个图层。32个图层从 0 到 31 编号标记。
+			在内部实现上,每个图层对象被存储为一个 [link:https://en.wikipedia.org/wiki/Mask_(computing) bit mask],
+			默认的,所有 [page:Object3D] 对象都存储在第 0 个图层上。<br /><br />
 
-			This can be used to control visibility - an object must share a layer with a [page:Camera camera] to be visible when that camera's
-			view is renderered.<br /><br />
+			图层对象可以用于控制对象的显示。当 [page:Camera camera] 的内容被渲染时与其共享图层相同的物体会被显示。每个对象都需要与一个
+			[page:Camera camera] 共享图层。<br /><br />
 
-			All classes that inherit from [page:Object3D] have an [page:Object3D.layers] property which is an instance of this class.
+			每个继承自 [page:Object3D] 的对象都有一个 [page:Object3D.layers] 对象。
 		</p>
 
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 
 		<h3>[name]()</h3>
 		<p>
-			Create a new Layers object, with membership initially set to layer 0.
+			创建一个新的图层对象,该对象默认与第 0 图层关联。
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Integer mask]</h3>
 		<p>
-			A bit mask storing which of the 32 layers this layers object is currently a member of.
+			用 bit mask 表示当前图层对象与 0 - 31 中的哪些图层相对应。所属层所对应的比特位为 1,其他位位 0。
 		</p>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 		<h3>[method:null disable]( [param:Integer layer] )</h3>
 		<p>
-			layer - an integer from 0 to 31.<br /><br />
+			layer - 一个 0 - 31 的整数。<br /><br />
 
-			Remove membership of this *layer*.
+			删除图层对象与参数指定图层的对应关系。
 		</p>
 
 		<h3>[method:null enable]( [param:Integer layer] )</h3>
 		<p>
-			layer - an integer from 0 to 31.<br /><br />
+			layer - 一个 0 - 31 的整数。<br /><br />
 
-			Add membership of this *layer*.
+			增加图层对象与参数指定图层的对应关系。
 		</p>
 
 		<h3>[method:null set]( [param:Integer layer] )</h3>
 		<p>
-			layer - an integer from 0 to 31.<br /><br />
+			layer - 一个 0 - 31 的整数。<br /><br />
 
-			Set membership to *layer*, and remove membership all other layers.
+			删除图层对象已有的所有对应关系,增加与参数指定的图层的对应关系。
 		</p>
 
 		<h3>[method:Boolean test]( [param:Layers layers] )</h3>
 		<p>
-			layers - a Layers object<br /><br />
+			layers - 一个图层对象。<br /><br />
 
-			Returns true if this and the passed *layers* object are members of the same set of layers.
+			如果传入图层对象与当前对象属于相同的一组图层,则返回 true,否则返回 false。
 		</p>
 
 		<h3>[method:null toggle]( [param:Integer layer] )</h3>
 		<p>
-			layer - an integer from 0 to 31.<br /><br />
+			layer - 一个 0 - 31 的整数。<br /><br />
 
-			Toggle membership of *layer*.
+			根据参数切换对象所属图层。
 		</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

+ 362 - 386
docs/api/zh/core/Object3D.html

@@ -1,438 +1,414 @@
 <!DOCTYPE html>
 <html lang="en">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../" />
-		<script src="list.js"></script>
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>[name]</h1>
 
-		<p class="desc">
-			This is the base class for most objects in three.js and provides a set of properties and methods
-			for manipulating objects in 3D space.<br /><br />
+<head>
+	<meta charset="utf-8" />
+	<base href="../../../" />
+	<script src="list.js"></script>
+	<script src="page.js"></script>
+	<link type="text/css" rel="stylesheet" href="page.css" />
+</head>
 
-			Note that this can be used for grouping objects via the [page:.add]( object ) method
-			which adds the object as a child, however it is better to use [page:Group] for this.
-		</p>
+<body>
+	<h1>三维物体([name])</h1>
 
+	<p class="desc">
+		这是Three.js中大部分对象的基类,提供了一系列的属性和方法来对三维空间中的物体进行操纵。<br /><br />
 
-		<h2>Constructor</h2>
+		请注意,可以通过[page:.add]( object )方法来将对象进行组合,该方法将对象添加为子对象,但为此最好使用[page:Group](来作为父对象)。
+	</p>
 
 
-		<h3>[name]()</h3>
-		<p>
-		The constructor takes no arguments.
-		</p>
+	<h2>构造器</h2>
 
 
-		<h2>Properties</h2>
+	<h3>[name]()</h3>
+	<p>
+		构造器中不带有参数。
+	</p>
 
-		<h3>[property:Boolean castShadow]</h3>
-		<p>Whether the object gets rendered into shadow map. Default is *false*.</p>
 
-		<h3>[property:Object3D children]</h3>
-		<p>Array with object's children. See [page:Group] for info on manually grouping objects.</p>
-
-		<h3>[property:Boolean frustumCulled]</h3>
-		<p>
-		When this is set, it checks every frame if the object is in the frustum of the camera before rendering the object.
-		Otherwise the object gets rendered every frame even if it isn't visible. Default is *true*.
-		</p>
-
-		<h3>[property:Integer id]</h3>
-		<p>readonly – Unique number for this object instance.</p>
-
-		<h3>[property:Boolean isObject3D]</h3>
-		<p>
-			Used to check whether this or derived classes are Object3Ds. Default is *true*.<br /><br />
-
-			You should not change this, as it is used internally for optimisation.
-		</p>
-
-		<h3>[property:Layers layers]</h3>
-		<p>
-		The layer membership of the object. The object is only visible if it has at least one
-		layer in common with the [page:Camera] in use.
-		</p>
-
-		<h3>[property:Matrix4 matrix]</h3>
-		<p>The local transform matrix.</p>
+	<h2>属性</h2>
 
-		<h3>[property:Boolean matrixAutoUpdate]</h3>
-		<p>
-		When this is set, it calculates the matrix of position, (rotation or quaternion) and
-		scale every frame and also recalculates the matrixWorld property. Default is [page:Object3D.DefaultMatrixAutoUpdate] (true).
-		</p>
+	<h3>[property:Boolean castShadow]</h3>
+	<p>对象是否被渲染到阴影贴图中。默认值为*false*。</p>
 
-		<h3>[property:Matrix4 matrixWorld]</h3>
-		<p>
-		The global transform of the object. If the Object3D has no parent, then it's identical to
-		the local transform [page:.matrix].
-		</p>
-
-		<h3>[property:Boolean matrixWorldNeedsUpdate]</h3>
-		<p>
-		When this is set, it calculates the matrixWorld in that frame and resets this property
-		 to false. Default is *false*.
-		</p>
-
-		<h3>[property:Matrix4 modelViewMatrix]</h3>
-		<p>This is passed to the shader and used to calculate the position of the object.</p>
-
-		<h3>[property:String name]</h3>
-		<p>Optional name of the object (doesn't need to be unique). Default is an empty string.</p>
+	<h3>[property:Object3D children]</h3>
+	<p>含有对象的子级的数组。请参阅[page:Group]来了解将手动对象进行分组的相关信息。</p>
 
-		<h3>[property:Matrix3 normalMatrix]</h3>
-		<p>
-		This is passed to the shader and used to calculate lighting for the object. It is the transpose of the inverse of the upper left 3x3 sub-matrix of this object's modelViewMatrix.<br /><br />
+	<h3>[property:Boolean frustumCulled]</h3>
+	<p>
+		当这个属性被设置的时候,它将在渲染物体之前,检查每一帧的物体是否在摄像机的视锥体中。
+		否则,即使该物体不可见,它也将在每一帧中被渲染,默认值为*true*。
+	</p>
 
-		The reason for this special matrix is that simply using the modelViewMatrix could result in a non-unit length of normals (on scaling) or in a non-perpendicular direction (on non-uniform scaling).<br /><br />
+	<h3>[property:Integer id]</h3>
+	<p>只读 —— 表示该对象实例ID的唯一数字。</p>
+
+	<h3>[property:Boolean isObject3D]</h3>
+	<p>
+
+		用于测试这个类或者派生类是否为Object3D,默认为*true*。<br /><br />
+		你不应当对这个属性进行改变,因为它在内部使用,以用于优化。
+	</p>
+
+	<h3>[property:Layers layers]</h3>
+	<p>
+		物体的层级关系。
+		物体只有和一个正在使用的[page:Camera]至少在同一个层时才可见。
+	</p>
 
-		On the other hand the translation part of the modelViewMatrix is not relevant for the calculation of normals. Thus a Matrix3 is sufficient.
-		</p>
+	<h3>[property:Matrix4 matrix]</h3>
+	<p>局部变换矩阵。</p>
 
-		<h3>[property:function onAfterRender]</h3>
-		<p>
-		An optional callback that is executed immediately after the Object3D is rendered.
-		This function is called with the following parameters: renderer, scene, camera, geometry,
-		material, group.
-		</p>
+	<h3>[property:Boolean matrixAutoUpdate]</h3>
+	<p>
+		当这个属性设置了之后,它将计算每一帧的位移、旋转(四元变换)和缩放矩阵,并重新计算matrixWorld属性。默认值是[page:Object3D.DefaultMatrixAutoUpdate] (true)。
+	</p>
 
-		<h3>[property:function onBeforeRender]</h3>
-		<p>
-		An optional callback that is executed immediately before the Object3D is rendered.
-		This function is called with the following parameters: renderer, scene, camera, geometry,
-		material, group.
-		</p>
+	<h3>[property:Matrix4 matrixWorld]</h3>
+	<p>
+		物体的世界变换。若这个Object3D没有父级,则它将和local transform [page:.matrix](局部变换矩阵)相同。
+	</p>
 
-		<h3>[property:Object3D parent]</h3>
-		<p>Object's parent in the [link:https://en.wikipedia.org/wiki/Scene_graph scene graph]. An object can have at most
-		one parent.</p>
+	<h3>[property:Boolean matrixWorldNeedsUpdate]</h3>
+	<p>
+		当这个属性设置了之后,它将计算在那一帧中的matrixWorld,并将这个值重置为false。默认值为*false*。
+	</p>
 
-		<h3>[property:Vector3 position]</h3>
-		<p>A [page:Vector3] representing the object's local position. Default is (0, 0, 0).</p>
+	<h3>[property:Matrix4 modelViewMatrix]</h3>
+	<p>这个值传递给着色器,用于计算物体的位置。</p>
 
-		<h3>[property:Quaternion quaternion]</h3>
-		<p>Object's local rotation as a [page:Quaternion Quaternion].</p>
+	<h3>[property:String name]</h3>
+	<p>对象的名称,可选、不必唯一。默认值是一个空字符串。</p>
 
-		<h3>[property:Boolean receiveShadow]</h3>
-		<p>Whether the material receives shadows. Default is *false*.</p>
+	<h3>[property:Matrix3 normalMatrix]</h3>
+	<p>
+		这个值传递给着色器,用于计算物体的光照。
+		它是物体的modelViewMatrix矩阵中,左上角3x3子矩阵的逆的转置矩阵。
+		<br /><br />
+		使用这个特殊矩阵的原因,是只需使用modelViewMatrix就可以得出一个法线(缩放时)的非单位长度或者非垂直的方向(不规则缩放时)。
+		<br /><br />
+		另一方面,modelViewMatrix矩阵中的位移部分和法线的计算无关,因此Matrix3就已经足够了。
+	</p>
 
-		<h3>[property:Number renderOrder]</h3>
-		<p>
-		This value allows the default rendering order of [link:https://en.wikipedia.org/wiki/Scene_graph scene graph]
-		objects to be overridden although opaque and transparent objects remain sorted independently.
-		Sorting is from lowest to highest renderOrder. Default value is *0*.
-		</p>
+	<h3>[property:function onAfterRender]</h3>
+	<p>
+		一个可选的回调函数,在Object3D渲染之后直接执行。
+		使用以下参数来调用此函数:renderer,scene,camera,geometry,material,group。
+	</p>
 
-		<h3>[property:Euler rotation]</h3>
-		<p>
-		Object's local rotation (see [link:https://en.wikipedia.org/wiki/Euler_angles Euler angles]), in radians.
-		</p>
+	<h3>[property:function onBeforeRender]</h3>
+	<p>
+			一个可选的回调函数,在Object3D渲染之前直接执行。
+			使用以下参数来调用此函数:renderer,scene,camera,geometry,material,group。
+	</p>
 
-		<h3>[property:Vector3 scale]</h3>
-		<p>
-		The object's local scale. Default is [page:Vector3]( 1, 1, 1 ).
-		</p>
-
-		<h3>[property:Vector3 up]</h3>
-		<p>
-		This is used by the [page:.lookAt lookAt] method, for example, to determine the orientation of the result.<br />
-		Default is [page:Object3D.DefaultUp] - that is, ( 0, 1, 0 ).
-		</p>
+	<h3>[property:Object3D parent]</h3>
+	<p>在[link:https://en.wikipedia.org/wiki/Scene_graph scene graph](场景图)中,一个对象的父级对象。
+		一个对象最多仅能有一个父级对象。</p>
 
-		<h3>[property:object userData]</h3>
-		<p>
-		An object that can be used to store custom data about the Object3D. It should not hold
-		references to functions as these will not be cloned.
-		</p>
+	<h3>[property:Vector3 position]</h3>
+	<p>表示对象局部位置的[page:Vector3]。默认值为(0, 0, 0)。</p>
 
-		<h3>[property:String uuid]</h3>
-		<p>
-		[link:http://en.wikipedia.org/wiki/Universally_unique_identifier UUID] of this object instance.
-		This gets automatically assigned, so this shouldn't be edited.
-		</p>
+	<h3>[property:Quaternion quaternion]</h3>
+	<p>表示对象局部旋转的[page:Quaternion Quaternion](四元数)。</p>
 
-		<h3>[property:Boolean visible]</h3>
-		<p>Object gets rendered if *true*. Default is *true*.</p>
+	<h3>[property:Boolean receiveShadow]</h3>
+	<p>材质是否接收阴影。默认值为*false*。</p>
 
+	<h3>[property:Number renderOrder]</h3>
+	<p>
+		这个值将使得[link:https://en.wikipedia.org/wiki/Scene_graph scene graph](场景图)中默认的的渲染顺序被覆盖,
+		即使不透明对象和透明对象保持独立顺序。
+		渲染顺序是由低到高来排序的,默认值为*0*。
+	</p>
 
+	<h3>[property:Euler rotation]</h3>
+	<p>
+		物体的局部旋转,以弧度来表示。(请参阅[link:https://en.wikipedia.org/wiki/Euler_angles Euler angles]-欧拉角)
+	</p>
+
+	<h3>[property:Vector3 scale]</h3>
+	<p>
+		物体的局部缩放。默认值是[page:Vector3]( 1, 1, 1 )。
+	</p>
+
+	<h3>[property:Vector3 up]</h3>
+	<p>
+		这个属性由[page:.lookAt lookAt]方法所使用,例如,来决定结果的朝向。
+		默认值是[page:Object3D.DefaultUp],即( 0, 1, 0 )。
+	</p>
+
+	<h3>[property:object userData]</h3>
+	<p>
+		一个用于存储Object3D自定义数据的对象。
+		它不应当包含对函数的引用,因为这些函数将不会被克隆。
+	</p>
+
+	<h3>[property:String uuid]</h3>
+	<p>
+		该对象实例的[link:http://en.wikipedia.org/wiki/Universally_unique_identifier UUID]。
+		这是一个自动生成的值,不应当对其进行修改。
+	</p>
+
+	<h3>[property:Boolean visible]</h3>
+	<p>可见性。这个值为*true*时,物体将被渲染。默认值为*true*。</p>
+
+
+
+
+	<h2>静态属性</h2>
+	<p>
+		静态属性和方法由每个类所定义,并非由每个类的实例所定义。
+		也就是说,改变[page:Object3D.DefaultUp]或[page:Object3D.DefaultMatrixAutoUpdate]的值,
+		将改变<b>每个在此之后</b>由Object3D类(或派生类)创建的实例中的[page:.up up]和[page:.matrixAutoUpdate matrixAutoUpdate]的值。(已经创建好的Object3D不会受到影响)。
+	</p>
+
+	<h3>[property:Vector3 DefaultUp]</h3>
+	<p>
+		默认的物体的[page:.up up]方向,同时也作为[page:DirectionalLight]、[page:HemisphereLight]和[page:Spotlight](自顶向下创建的灯光)的默认方向。
+		默认设为( 0, 1, 0 )。
+	</p>
+
+	<h3>[property:Vector3 DefaultMatrixAutoUpdate]</h3>
+	<p>
+			[page:.matrixAutoUpdate matrixAutoUpdate]的默认设置,用于新创建的Object3D。<br />
+
+	</p>
+
+
+	<h2>方法</h2>
+
+	<h3>[page:EventDispatcher EventDispatcher] 方法在这个类上是可用的。</h3>
+
+	<h3>[method:null add]( [param:Object3D object], ... )</h3>
+	<p>
+		添加<b>对象</b>到这个对象的子级,可以添加任意数量的对象。
+		当前传入的对象中的父级将在这里被移除,因为一个对象仅能有一个父级。<br /><br />
+		请参阅[page:Group]来查看手动编组对象的相关信息。
+	</p>
+
+	<h3>[method:null applyMatrix]( [param:Matrix4 matrix] )</h3>
+	<p>对当前物体应用这个变换矩阵,并更新物体的位置、旋转和缩放。</p>
+
+	<h3>[method:Object3D applyQuaternion]( [param:Quaternion quaternion] )</h3>
+	<p>对当前物体应用由四元数所表示的变换。</p>
+
+	<h3>[method:Object3D clone]( [param:Boolean recursive] )</h3>
+	<p>
+		recursive —— 如果值为true,则该物体的后代也会被克隆。默认值为true。<br /><br />
+
+		返回对象前物体的克隆(以及可选的所有后代)。
+	</p>
+
+	<h3>[method:this copy]( [param:Object3D object], [param:Boolean recursive] )</h3>
+	<p>
+		recursive —— 如果值为true,则该物体的后代也会被复制。默认值为true。<br /><br />
+		复制给定的对象到这个对象中。
+	</p>
+
+	<h3>[method:Object3D getObjectById]( [param:Integer id] )</h3>
+	<p>
+		id —— 标识该对象实例的唯一数字。<br /><br />
+
+		搜索该对象的子级,返回第一个带有匹配id的子对象。<br />
+		请注意,id是按照时间顺序来分配的:1、2、3、……,每增加一个新的对象就自增1。
+	</p>
+
+	<h3>[method:Object3D getObjectByName]( [param:String name] )</h3>
+	<p>
+		name —— 用于来匹配子物体中Object3D.name属性的字符串。<br /><br />
+
+		搜索该对象的子级,返回第一个带有匹配name的子对象。<br />
+		请注意,大多数的对象中name默认是一个空字符串,要使用这个方法,你将需要手动地设置name属性。
+	</p>
+
+	<h3>[method:Object3D getObjectByProperty]( [param:String name], [param:Float value] )</h3>
+	<p>
+		name —— 将要用于查找的属性的名称。<br />
+		value —— 给定的属性的值。 <br /><br />
+		搜索该对象的子级,返回第一个给定的属性中包含有匹配的值的子对象。
+	</p>
+
+	<h3>[method:Vector3 getWorldPosition]( [param:Vector3 target] )</h3>
+	<p>
+		[page:Vector3 target] — 结果将被复制到这个Vector3中。<br /><br />
+		返回一个表示该物体在世界空间中位置的矢量。
+	</p>
 
+	<h3>[method:Quaternion getWorldQuaternion]( [param:Quaternion target] )</h3>
+	<p>
+		[page:Quaternion target] — 结果将被复制到这个Quaternion中。<br /><br />
+		返回一个表示该物体在世界空间中旋转的四元数。
+	</p>
 
-		<h2>Static Properties</h2>
-		<p>
-			Static properties and methods are defined per class rather than per instance of that class.
-			This means that changing [page:Object3D.DefaultUp] or [page:Object3D.DefaultMatrixAutoUpdate]
-			will change the values of [page:.up up] and [page:.matrixAutoUpdate matrixAutoUpdate] for
-			<em>every</em>	instance of Object3D (or derived classes)	created after the change has
-			been made (already created Object3Ds will not be affected).
-		</p>
+	<h3>[method:Vector3 getWorldScale]( [param:Vector3 target] )</h3>
+	<p>
+		[page:Vector3 target] — 结果将被复制到这个Vector3中。<br /><br />
+		返回一个包含着该物体在世界空间中各个轴向上所应用的缩放因数的矢量。
+	</p>
 
-		<h3>[property:Vector3 DefaultUp]</h3>
-		<p>
-			The default [page:.up up] direction for objects, also used as the default position for [page:DirectionalLight],
-			[page:HemisphereLight] and [page:Spotlight] (which creates lights shining from the top down).<br />
-			Set to ( 0, 1, 0 ) by default.
-		</p>
+	<h3>[method:Vector3 getWorldDirection]( [param:Vector3 target] )</h3>
+	<p>
+		[page:Vector3 target] — 结果将被复制到这个Vector3中。 <br /><br />
+		返回一个表示该物体在世界空间中Z轴正方向的矢量。
+	</p>
 
-		<h3>[property:Vector3 DefaultMatrixAutoUpdate]</h3>
-		<p>
-			The default setting for [page:.matrixAutoUpdate matrixAutoUpdate] for newly created Object3Ds.<br />
 
-		</p>
-
-
-		<h2>Methods</h2>
-
-		<h3>[page:EventDispatcher EventDispatcher] methods are available on this class.</h3>
-
-		<h3>[method:null add]( [param:Object3D object], ... )</h3>
-		<p>
-		Adds *object* as child of this object. An arbitrary number of objects may be added. Any current parent on an
-		object passed in here will be removed, since an object can have at most one parent.<br /><br />
-
-		See [page:Group] for info on manually grouping objects.
-		</p>
-
-		<h3>[method:null applyMatrix]( [param:Matrix4 matrix] )</h3>
-		<p>Applies the matrix transform to the object and updates the object's position, rotation and scale.</p>
-
-		<h3>[method:Object3D applyQuaternion]( [param:Quaternion quaternion] )</h3>
-		<p>Applies the rotation represented by the quaternion to the object.</p>
-
-		<h3>[method:Object3D clone]( [param:Boolean recursive] )</h3>
-		<p>
-		recursive -- if true, descendants of the object are also cloned. Default is true.<br /><br />
-
-		Returns a clone of this object and optionally all descendants.
-		</p>
-
-		<h3>[method:this copy]( [param:Object3D object], [param:Boolean recursive] )</h3>
-		<p>
-		recursive -- if true, descendants of the object are also copied. Default is true.<br /><br />
-
-		Copy the given object into this object.
-		</p>
-
-		<h3>[method:Object3D getObjectById]( [param:Integer id] )</h3>
-		<p>
-		id -- Unique number of the object instance<br /><br />
-
-		Searches through the object's children and returns the first with a matching id.<br />
-		Note that ids are assigned in chronological order: 1, 2, 3, ..., incrementing by one for each new object.
-		</p>
-
-		<h3>[method:Object3D getObjectByName]( [param:String name] )</h3>
-		<p>
-		name -- String to match to the children's Object3D.name property. <br /><br />
-
-		Searches through the object's children and returns the first with a matching name.<br />
-		Note that for most objects the name is an empty string by default. You will
-		have to set it manually to make use of this method.
-		</p>
-
-		<h3>[method:Object3D getObjectByProperty]( [param:String name], [param:Float value] )</h3>
-		<p>
-		name -- the property name to search for. <br />
-		value -- value of the given property. <br /><br />
-
-		Searches through the object's children and returns the first with a property that matches the value given.
-		</p>
-
-		<h3>[method:Vector3 getWorldPosition]( [param:Vector3 target] )</h3>
-		<p>
-		[page:Vector3 target] — the result will be copied into this Vector3. <br /><br />
-
-		Returns a vector representing the position of the object in world space.
-		</p>
-
-		<h3>[method:Quaternion getWorldQuaternion]( [param:Quaternion target] )</h3>
-		<p>
-		[page:Quaternion target] — the result will be copied into this Quaternion. <br /><br />
-
-		Returns a quaternion representing the rotation of the object in world space.
-		</p>
-
-		<h3>[method:Vector3 getWorldScale]( [param:Vector3 target] )</h3>
-		<p>
-		[page:Vector3 target] — the result will be copied into this Vector3. <br /><br />
-
-		Returns a vector of the scaling factors applied to the object for each axis in world space.
-		</p>
-
-		<h3>[method:Vector3 getWorldDirection]( [param:Vector3 target] )</h3>
-		<p>
-		[page:Vector3 target] — the result will be copied into this Vector3. <br /><br />
-
-		Returns a vector representing the direction of object's positive z-axis in world space.
-		</p>
-
-
-		<h3>[method:Vector3 localToWorld]( [param:Vector3 vector] )</h3>
-		<p>
-		vector - A vector representing a position in local (object) space.<br /><br />
-
-		Converts the vector from local space to world space.
-		</p>
-
-		<h3>[method:null lookAt]( [param:Vector3 vector] )</br>
+	<h3>[method:Vector3 localToWorld]( [param:Vector3 vector] )</h3>
+	<p>
+		vector - 一个表示局部(物体)空间中位置的向量。 <br /><br />
+		将局部空间向量转换为世界空间向量。
+	</p>
+
+	<h3>[method:null lookAt]( [param:Vector3 vector] )</br>
 		[method:null lookAt]( [param:Float x], [param:Float y], [param:Float z] )</h3>
-		<p>
-		vector - A vector representing a position in world space.<br /><br />
-		Optionally, the [page:.x x], [page:.y y] and [page:.z z] components of the world space position.<br /><br />
-
-		Rotates the object to face a point in world space.<br /><br />
-
-		This method does not support objects with rotated and/or translated parent(s).
-		</p>
-
-		<h3>[method:Array raycast]( [param:Raycaster raycaster], [param:Array intersects] )</h3>
-		<p>
-		Abstract (empty) method to get intersections between a casted ray and this object.
-		Subclasses such as [page:Mesh], [page:Line], and [page:Points] implement this method in order
-		to use raycasting.
-		</p>
-
-		<h3>[method:null remove]( [param:Object3D object], ... )</h3>
-		<p>
-		Removes *object* as child of this object. An arbitrary number of objects may be removed.
-		</p>
-
-		<h3>[method:this rotateOnAxis]( [param:Vector3 axis], [param:Float angle] )</h3>
-		<p>
-		axis -- A normalized vector in object space. <br />
-		angle -- The angle in radians.<br /><br />
-
-		Rotate an object along an axis in object space. The axis is assumed to be normalized.
-		</p>
-
-		<h3>[method:this rotateOnWorldAxis]( [param:Vector3 axis], [param:Float angle] )</h3>
-		<p>
-		axis -- A normalized vector in world space. <br />
-		angle -- The angle in radians.<br /><br />
-
-		Rotate an object along an axis in world space. The axis is assumed to be normalized.
-		Method Assumes no rotated parent.
-		</p>
-
-		<h3>[method:this rotateX]( [param:Float rad] )</h3>
-		<p>
-		rad - the angle to rotate in radians.<br /><br />
-
-		Rotates the object around x axis in local space.
-		</p>
-
-		<h3>[method:this rotateY]( [param:Float rad] )</h3>
-		<p>
-		rad - the angle to rotate in radians.<br /><br />
-
-		Rotates the object around y axis in local space.
-		</p>
-
-		<h3>[method:this rotateZ]( [param:Float rad] )</h3>
-		<p>
-		rad - the angle to rotate in radians.<br /><br />
-
-		Rotates the object around z axis in local space.
-		</p>
-
-		<h3>[method:null setRotationFromAxisAngle]( [param:Vector3 axis], [param:Float angle] )</h3>
-		<p>
-			axis -- A normalized vector in object space. <br />
-			angle -- angle in radians<br /><br />
-
-			Calls [page:Quaternion.setFromAxisAngle setFromAxisAngle]( [page:Float axis], [page:Float angle] )
-			on the [page:.quaternion].
-		</p>
-
-		<h3>[method:null setRotationFromEuler]( [param:Euler euler] )</h3>
-		<p>
-			euler -- Euler angle specifying rotation amount.<br />
-
-			Calls [page:Quaternion.setRotationFromEuler setRotationFromEuler]( [page:Euler euler])
-			on the [page:.quaternion].
-		</p>
-
-		<h3>[method:null setRotationFromMatrix]( [param:Matrix4 m] )</h3>
-		<p>
-			m -- rotate the quaternion by the rotation component of the matrix.<br />
-
-			Calls [page:Quaternion.setFromRotationMatrix setFromRotationMatrix]( [page:Matrix4 m])
-			on the [page:.quaternion].<br /><br />
-
-			Note that this assumes that the upper 3x3 of m is a pure rotation matrix (i.e, unscaled).
-		</p>
-
-		<h3>[method:null setRotationFromQuaternion]( [param:Quaternion q] )</h3>
-		<p>
-			q -- normalized Quaternion.<br /><br />
-
-			Copy the given quaternion into [page:.quaternion].
-		</p>
-
-		<h3>[method:null toJSON]( [param:Quaternion q] )</h3>
-		<p>
-			Convert the object to JSON format.
-		</p>
-
-		<h3>[method:this translateOnAxis]( [param:Vector3 axis], [param:Float distance] )</h3>
-		<p>
-		axis -- A normalized vector in object space.<br />
-		distance -- The distance to translate.<br /><br />
-
-		Translate an object by distance along an axis in object space. The axis is assumed to be normalized.
-		</p>
-
-		<h3>[method:this translateX]( [param:Float distance] )</h3>
-		<p>Translates object along x axis in object space by *distance* units.</p>
+	<p>
+		vector - 一个表示世界空间中位置的向量。<br /><br />
+		也可以使用世界空间中[page:.x x]、[page:.y y]和[page:.z z]的位置分量。<br /><br />
+		旋转物体使其在世界空间中面朝一个点。<br /><br />
+		这一方法不支持其父级被旋转过或者被位移过的物体。
+	</p>
+
+	<h3>[method:Array raycast]( [param:Raycaster raycaster], [param:Array intersects] )</h3>
+	<p>抽象(空方法),在一条被投射出的射线与这个物体之间获得交点。
+		在一些子类,例如[page:Mesh], [page:Line], and [page:Points]实现了这个方法,以用于光线投射。
+	</p>
+
+	<h3>[method:null remove]( [param:Object3D object], ... )</h3>
+	<p>
+		从当前对象的子级中移除<b>对象</b>。可以移除任意数量的对象。
+	</p>
+
+	<h3>[method:this rotateOnAxis]( [param:Vector3 axis], [param:Float angle] )</h3>
+	<p>
+		axis —— 一个在局部空间中的标准化向量。<br />
+		angle —— 角度,以弧度来表示。<br /><br />
+		在局部空间中绕着该物体的轴来旋转一个物体,假设这个轴已被标准化。
+	</p>
+
+	<h3>[method:this rotateOnWorldAxis]( [param:Vector3 axis], [param:Float angle] )</h3>
+	<p>
+		axis -- 一个在世界空间中的标准化向量。<br />
+		angle -- 角度,以弧度来表示。<br /><br />
+
+		在世界空间中绕着该物体的轴来旋转一个物体,假设这个轴已被标准化。
+		方法假设该物体没有旋转过的父级。
+	</p>
+
+	<h3>[method:this rotateX]( [param:Float rad] )</h3>
+	<p>
+		rad - 将要旋转的角度(以弧度来表示)。<br /><br />
+		绕局部空间的X轴旋转这个物体。
+	</p>
+
+	<h3>[method:this rotateY]( [param:Float rad] )</h3>
+	<p>
+		rad - 将要旋转的角度(以弧度来表示)。<br /><br />
+		绕局部空间的Y轴旋转这个物体。
+	</p>
+
+	<h3>[method:this rotateZ]( [param:Float rad] )</h3>
+	<p>
+		rad - 将要旋转的角度(以弧度来表示)。<br /><br />
+		绕局部空间的Z轴旋转这个物体。
+	</p>
+
+	<h3>[method:null setRotationFromAxisAngle]( [param:Vector3 axis], [param:Float angle] )</h3>
+	<p>
+		axis -- 一个在局部空间中的标准化向量。<br />
+		angle -- 角度(以弧度来表示)。<br /><br />
+
+		调用[page:.quaternion]中的[page:Quaternion.setFromAxisAngle setFromAxisAngle]( [page:Float axis], [page:Float angle] )。
+	</p>
+
+	<h3>[method:null setRotationFromEuler]( [param:Euler euler] )</h3>
+	<p>
+		euler -- 指定了旋转量的欧拉角。<br />
+
+		调用[page:.quaternion]中的[page:Quaternion.setRotationFromEuler setRotationFromEuler]( [page:Euler euler])。
+
+	</p>
+
+	<h3>[method:null setRotationFromMatrix]( [param:Matrix4 m] )</h3>
+	<p>
+		m -- 通过该矩阵中的旋转分量来旋转四元数。<br />
+			
+		调用[page:.quaternion]中的[page:Quaternion.setFromRotationMatrix setFromRotationMatrix]( [page:Matrix4 m])。
+		<br /><br />
+
+		请注意,这里假设m上的3x3矩阵是一个纯旋转矩阵(即未缩放的矩阵)。
+	</p>
+
+	<h3>[method:null setRotationFromQuaternion]( [param:Quaternion q] )</h3>
+	<p>
+		q -- 标准化的四元数。<br /><br />
+
+将所给的四元数复制到[page:.quaternion]中。
+	</p>
+
+	<h3>[method:null toJSON]( [param:Quaternion q] )</h3>
+	<p>
+		将这个对象转换为JSON格式。
+	</p>
+
+	<h3>[method:this translateOnAxis]( [param:Vector3 axis], [param:Float distance] )</h3>
+	<p>
+		axis -- 一个在局部空间中的标准化向量。<br />
+		distance -- 将要平移的距离。<br /><br />
+		在局部空间中沿着一条轴来平移物体,假设轴已被标准化。
+	</p>
+
+	<h3>[method:this translateX]( [param:Float distance] )</h3>
+	<p>沿着X轴将平移*distance*个单位。</p>
+
+	<h3>[method:this translateY]( [param:Float distance] )</h3>
+	<p>沿着Y轴将平移*distance*个单位。</p>
 
-		<h3>[method:this translateY]( [param:Float distance] )</h3>
-		<p>Translates object along y axis in object space by *distance* units.</p>
+	<h3>[method:this translateZ]( [param:Float distance] )</h3>
+	<p>沿着Z轴将平移*distance*个单位。</p>
 
-		<h3>[method:this translateZ]( [param:Float distance] )</h3>
-		<p>Translates object along z axis in object space by *distance* units.</p>
+	<h3>[method:null traverse]( [param:Function callback] )</h3>
+	<p>
 
-		<h3>[method:null traverse]( [param:Function callback] )</h3>
-		<p>
-		callback - A function with as first argument an object3D object.<br /><br />
+		callback - 以一个object3D对象作为第一个参数的函数。
+		<br /><br />
 
-		Executes the callback on this object and all descendants.
-		</p>
+		在对象以及后代中执行的回调函数。
+	</p>
 
-		<h3>[method:null traverseVisible]( [param:Function callback] )</h3>
-		<p>
-		callback - A function with as first argument an object3D object.<br /><br />
+	<h3>[method:null traverseVisible]( [param:Function callback] )</h3>
+	<p>
+			callback - 以一个object3D对象作为第一个参数的函数。
+			<br /><br />
 
-		Like traverse, but the callback will only be executed for visible objects.
-		Descendants of invisible objects are not traversed.
-		</p>
+		类似traverse函数,但在这里,回调函数仅对可见的对象执行,不可见对象的后代将不遍历。
+	</p>
 
-		<h3>[method:null traverseAncestors]( [param:Function callback] )</h3>
-		<p>
-		callback - A function with as first argument an object3D object.<br /><br />
+	<h3>[method:null traverseAncestors]( [param:Function callback] )</h3>
+	<p>
+		callback - 以一个object3D对象作为第一个参数的函数。<br /><br />
 
-		Executes the callback on all ancestors.
-		</p>
+		在所有的祖先中执行回调函数。
+	</p>
 
-		<h3>[method:null updateMatrix]()</h3>
-		<p>Update the local transform.</p>
+	<h3>[method:null updateMatrix]()</h3>
+	<p>更新局部变换。</p>
 
-		<h3>[method:null updateMatrixWorld]( [param:Boolean force] )</h3>
-		<p>Update the global transform of the object and its children.</p>
+	<h3>[method:null updateMatrixWorld]( [param:Boolean force] )</h3>
+	<p>更新物体及其子级的全局变换。</p>
 
 
-		<h3>[method:Vector3 worldToLocal]( [param:Vector3 vector] )</h3>
-		<p>
-		vector - A world vector.<br /><br />
+	<h3>[method:Vector3 worldToLocal]( [param:Vector3 vector] )</h3>
+	<p>
+		vector - 一个世界向量.<br /><br />
+		将世界空间中的向量转换为局部空间向量。
+	</p>
 
-		Updates the vector from world space to local space.
-		</p>
+	<h2>源代码</h2>
 
-		<h2>Source</h2>
+	[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+</body>
 
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+</html>

+ 54 - 51
docs/api/zh/core/Raycaster.html

@@ -8,23 +8,21 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		<h1>[name]</h1>
+		<h1>光线投射[name]</h1>
 
 		<p class="desc">
-		This class is designed to assist with [link:https://en.wikipedia.org/wiki/Ray_casting raycasting].
-		Raycasting is used for mouse picking (working out what objects in the 3d space the mouse is over) amongst
-		other things.
+			这个类用于进行[link:https://en.wikipedia.org/wiki/Ray_casting raycasting](光线投射)。
+			光线投射用于进行鼠标拾取(在三维空间中计算出鼠标移过了什么物体)。
 		</p>
 
-		<h2>Example</h2>
+		<h2>示例</h2>
 		<code>
 		var raycaster = new THREE.Raycaster();
 		var mouse = new THREE.Vector2();
 
 		function onMouseMove( event ) {
 
-			// calculate mouse position in normalized device coordinates
-			// (-1 to +1) for both components
+			// 将鼠标位置归一化为设备坐标。x 和 y 方向的取值范围是 (-1 to +1)
 
 			mouse.x = ( event.clientX / window.innerWidth ) * 2 - 1;
 			mouse.y = - ( event.clientY / window.innerHeight ) * 2 + 1;
@@ -33,10 +31,10 @@
 
 		function render() {
 
-			// update the picking ray with the camera and mouse position
+			// 通过摄像机和鼠标位置更新射线
 			raycaster.setFromCamera( mouse, camera );
 
-			// calculate objects intersecting the picking ray
+			// 计算物体和射线的焦点
 			var intersects = raycaster.intersectObjects( scene.children );
 
 			for ( var i = 0; i < intersects.length; i++ ) {
@@ -55,7 +53,7 @@
 
 		</code>
 		<div>
-			Examples: [example:webgl_interactive_cubes Raycasting to a Mesh]<br />
+			其它示例:<br>[example:webgl_interactive_cubes Raycasting to a Mesh]<br />
 			[example:webgl_interactive_cubes_ortho Raycasting to a Mesh in using an OrthographicCamera]<br />
 			[example:webgl_interactive_buffergeometry Raycasting to a Mesh with BufferGeometry]<br />
 			[example:webgl_interactive_lines Raycasting to a Line]<br />
@@ -71,44 +69,44 @@
 		</p>
 
 
-		<h2>Constructor</h2>
+		<h2>构造器</h2>
 
 		<h3>[name]( [param:Vector3 origin], [param:Vector3 direction], [param:Float near], [param:Float far] ) {</h3>
 		<p>
-		[page:Vector3 origin] — The origin vector where the ray casts from.<br />
-		[page:Vector3 direction] — The direction vector that gives direction to the ray. Should be normalized.<br />
-		[page:Float near] — All results returned are further away than near. Near can't be negative. Default value is 0.<br />
-		[page:Float far] — All results returned are closer than far. Far can't be lower than near. Default value is Infinity.
-		</p>
+		[page:Vector3 origin] —— 光线投射的原点向量。<br />
+		[page:Vector3 direction] —— 向射线提供方向的方向向量,应当被标准化。<br />
+		[page:Float near] —— 返回的所有结果比near远。near不能为负值,其默认值为0。<br />
+		[page:Float far] —— 返回的所有结果都比far近。far不能小于near,其默认值为Infinity(正无穷。)</p>
 		<p>
-		This creates a new raycaster object.<br />
+			这将创建一个新的raycaster对象。<br />
+
 		</p>
 
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:float far]</h3>
 		<p>
-		The far factor of the raycaster. This value indicates which objects can be discarded based on the distance.
-		This value shouldn't be negative and should be larger than the near property.
+			raycaster的远距离因数(投射远点)。这个值表明哪些对象可以基于该距离而被raycaster所丢弃。
+			这个值不应当为负,并且应当比near属性大。
 		</p>
 
 		<h3>[property:float linePrecision]</h3>
 		<p>
-		The precision factor of the raycaster when intersecting [page:Line] objects.
+
+			raycaster与[page:Line](线)物体相交时的精度因数。
+
 		</p>
 
 		<h3>[property:float near]</h3>
 		<p>
-		The near factor of the raycaster. This value indicates which objects can be discarded based on the distance.
-		This value shouldn't be negative and should be smaller than the far property.
+			raycaster的近距离因数(投射近点)。这个值表明哪些对象可以基于该距离而被raycaster所丢弃。
+			这个值不应当为负,并且应当比near属性小。
 		</p>
 
 		<h3>[property:Object params]</h3>
 		<p>
-		An object with the following properties:
-
-			<code>
+			具有以下属性的物体:<code>
 {
 	Mesh: {},
 	Line: {},
@@ -121,68 +119,73 @@
 		</p>
 
 		<h3>[property:Ray ray]</h3>
-		<p>The [Page:Ray] used for the raycasting.</p>
+		<p>用于进行光线投射的[Page:Ray](射线)。</p>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 		<h3>[method:null set]( [param:Vector3 origin], [param:Vector3 direction] )</h3>
 		<p>
-		[page:Vector3 origin] — The origin vector where the ray casts from.<br />
-		[page:Vector3 direction] — The normalized direction vector that gives direction to the ray.
+		[page:Vector3 origin] —— 光线投射的原点向量。<br />
+		[page:Vector3 direction] —— 为光线提供方向的标准化方向向量。
 		</p>
 		<p>
-		Updates the ray with a new origin and direction.
+			使用一个新的原点和方向来更新射线。
 		</p>
 
 		<h3>[method:null setFromCamera]( [param:Vector2 coords], [param:Camera camera] )</h3>
 		<p>
-		[page:Vector2 coords] — 2D coordinates of the mouse, in normalized device coordinates (NDC)---X and Y components should be between -1 and 1.<br />
-		[page:Camera camera] — camera from which the ray should originate
+		[page:Vector2 coords] —— 在标准化设备坐标中鼠标的二维坐标 —— X分量与Y分量应当在-1到1之间。<br />
+								
+		[page:Camera camera] —— 射线所来源的摄像机。
 		</p>
 		<p>
-		Updates the ray with a new origin and direction.
+			使用一个新的原点和方向来更新射线。
 		</p>
 
 		<h3>[method:Array intersectObject]( [param:Object3D object], [param:Boolean recursive], [param:Array optionalTarget] )</h3>
 		<p>
-		[page:Object3D object] — The object to check for intersection with the ray.<br />
-		[page:Boolean recursive] — If true, it also checks all descendants. Otherwise it only checks intersecton with the object. Default is false.<br />
-		[page:Array optionalTarget] — (optional) target to set the result. Otherwise a new [page:Array] is instantiated. If set, you must clear this array prior to each call (i.e., array.length = 0;).
+		[page:Object3D object] —— 检查与射线相交的物体。<br />
+		[page:Boolean recursive] —— 若为true,则同时也会检查所有的后代。否则将只会检查对象本身。默认值为false。<br />
+		[page:Array optionalTarget] — (可选)设置结果的目标数组。如果不设置这个值,则一个新的[page:Array]会被实例化;如果设置了这个值,则在每次调用之前必须清空这个数组(例如:array.length = 0;)。
 		</p>
 		<p>
-		Checks all intersection between the ray and the object with or without the descendants. Intersections are returned sorted by distance, closest first. An array of intersections is returned...
+			检测所有在射线与物体之间,包括或不包括后代的相交部分。返回结果时,相交部分将按距离进行排序,最近的位于第一个)。<br>
+			该方法返回一个包含有交叉部分的数组:
 		</p>
 		<code>
 				[ { distance, point, face, faceIndex, object }, ... ]
 		</code>
 		<p>
-			[page:Float distance] – distance between the origin of the ray and the intersection<br />
-			[page:Vector3 point] – point of intersection, in world coordinates<br />
-			[page:Face3 face] – intersected face<br />
-			[page:Integer faceIndex] – index of the intersected face<br />
-			[page:Object3D object] – the intersected object<br />
-			[page:Vector2 uv] - U,V coordinates at point of intersection
+			[page:Float distance] —— 射线投射原点和相交部分之间的距离。<br />
+			[page:Vector3 point] —— 相交部分的点(世界坐标)<br />
+			[page:Face3 face] —— 相交的面<br />
+			[page:Integer faceIndex] —— 相交的面的索引<br />
+			[page:Object3D object] —— 相交的物体<br />
+			[page:Vector2 uv] —— 相交部分的点的UV坐标。
 		</p>
 		<p>
-		*Raycaster* delegates to the [page:Object3D.raycast raycast] method of the passed object, when evaluating whether the ray intersects the object or not. This allows [page:Mesh meshes] to respond differently to ray casting than [page:Line lines] and [page:Points pointclouds].
+			当计算这条射线是否和物体相交的时候,*Raycaster*将传入的对象委托给[page:Object3D.raycast raycast]方法。
+			这将可以让[page:Mesh mesh]对于光线投射的响应不同于[page:Line lines]和[page:Points pointclouds]。
 		</p>
 		<p>
-		*Note* that for meshes, faces must be pointed towards the origin of the [page:.ray ray] in order to be detected; intersections of the ray passing through the back of a face will not be detected. To raycast against both faces of an object, you'll want to set the [page:Mesh.material material]'s [page:Material.side side] property to *THREE.DoubleSide*.
+			<strong>请注意</strong>:对于网格来说,面必须朝向射线的原点,以便其能够被检测到。
+			用于交互的射线穿过面的背侧时,将不会被检测到。如果需要对物体中面的两侧进行光线投射,
+			你需要将[page:Mesh.material material]中的[page:Material.side side]属性设置为*THREE.DoubleSide*。
 		</p>
 
 		<h3>[method:Array intersectObjects]( [param:Array objects], [param:Boolean recursive], [param:Array optionalTarget] )</h3>
 		<p>
-		[page:Array objects] — The objects to check for intersection with the ray.<br />
-		[page:Boolean recursive] — If true, it also checks all descendants of the objects. Otherwise it only checks intersecton with the objects. Default is false.<br />
-		[page:Array optionalTarget] — (optional) target to set the result. Otherwise a new [page:Array] is instantiated. If set, you must clear this array prior to each call (i.e., array.length = 0;).
+		[page:Array objects] —— 检测和射线相交的一组物体。<br />
+		[page:Boolean recursive] —— 若为true,则同时也会检测所有物体的后代。否则将只会检测对象本身的相交部分。默认值为false。<br />
+		[page:Array optionalTarget] —— (可选)(可选)设置结果的目标数组。如果不设置这个值,则一个新的[page:Array]会被实例化;如果设置了这个值,则在每次调用之前必须清空这个数组(例如:array.length = 0;)。
 		</p>
 		<p>
-		Checks all intersection between the ray and the objects with or without the descendants. Intersections are returned sorted by distance, closest first. Intersections are of the same form as those returned by [page:.intersectObject].
+			检测所有在射线与这些物体之间,包括或不包括后代的相交部分。返回结果时,相交部分将按距离进行排序,最近的位于第一个),相交部分和[page:.intersectObject]所返回的格式是相同的。
 		</p>
 
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

+ 25 - 25
docs/api/zh/core/Uniform.html

@@ -10,11 +10,12 @@
 	<body>
 		<h1>[name]</h1>
 
-		<p class="desc">Uniforms are global [link:https://www.opengl.org/documentation/glsl/ GLSL] variables. They are passed to shader programs.
+		<p class="desc">Uniforms 是 [link:https://www.opengl.org/documentation/glsl/ GLSL] 着色器中的全局变量。
 		</p>
 
-		<h3>Example</h3>
+		<h3>示例</h3>
 		<p>
+			在声明一个 [page:ShaderMaterial] 的 Uniform 变量时,该变量被值或对象声明。
 		When declaring a uniform of a [page:ShaderMaterial], it is declared by value or by object.
 		</p>
 		<code>
@@ -24,24 +25,21 @@
 		}
 		</code>
 
-		<h3>Uniform types</h3>
+		<h3>Uniform 种类</h3>
 
 		<p>
-		Each uniform must have a *value* property. The type of the value must correspond to the
-		type of the uniform variable in the GLSL code as specified for the primitive GLSL types
-		in the table below. Uniform structures and arrays are also supported. GLSL arrays of primitive
-		type must either be specified as an array of the corresponding THREE objects or as a flat
-		array containing the data of all the objects. In other words; GLSL primitives in arrays
-		must not be represented by arrays. This rule does not apply transitively.
-		An array of *vec2* arrays, each with a length of five vectors, must be an array of arrays,
-		of either five [page:Vector2] objects or ten *number*s.
+			每个 Uniform 必须包括一个 *value* 属性。value 的类型必须和下表中 GLSL 的基本类型相对应。同样,Uniform 的结构体和队列
+			也是支持的。 GLSL基本类型队列必须要么被显示声明为一个 THREE 对象的队列,要么被声明为一个包含所有对象数据的队列。这就是说,
+			队列中的 GLSL 基础类型不能再是一个队列。举例,一个有 5 个 *vec2* 元素的队列,必须是一个包含 5 个 [page:Vector2] 的队列数组,
+			或包含 10 个 *number* 的队列。
+
 		</p>
 		<table>
-			<caption><a id="uniform-types">Uniform types</a></caption>
+			<caption><a id="uniform-types">Uniform 类型</a></caption>
 			<thead>
 				<tr>
-					<th>GLSL type</th>
-					<th>JavaScript type</th>
+					<th>GLSL 类型</th>
+					<th>JavaScript 类型</th>
 				</tr>
 			</thead>
 			<tbody>
@@ -179,34 +177,36 @@
 		</table>
 
 		<p>
-		(*) Same for an (innermost) array (dimension) of the same GLSL type, containing the components of all vectors or matrices in the array.
+
+		(*) 与最内层队列中 GSLS 的类型保持一致。包含队列中所有矢量的元素或矩阵中的元素。
 		</p>
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
 		<h3>[name]( [param:Object value] )</h3>
 		<p>
-		value -- An object containing the value to set up the uniform. It's type must be one of the Uniform Types described above.
+		value -- 包含需要设置 Uniform 数据的对象。 数据类型必须是上述类型中的一种。
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Object value]</h3>
 		<p>
-		Current value of the uniform.
+			当前 uniform 的值。
 		</p>
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 		<h3>[method:Uniform clone]()</h3>
 		<p>
-		Returns a clone of this uniform.<br />
-		If the uniform's value property is an [page:Object] with a clone() method, this is used, otherwise the value is copied by assigment.
-		Array values are shared between cloned [page:Uniform]s.<br /><br />
-		See [example:webgldeferred_animation WebGL deferred animation] for an example of this method in use.
+			返回该 Uniform 的克隆。<br />
+			如果 Uniform 的 value 属性是一个带 clone() 方法的 [page:Object],则克隆该对象时,value 的 clone() 方法也会被调用,否则克隆时只会使用赋值语句。
+			队列中的值会在该 Uniform 和 被克隆对象间共享。<br /><br />
+
+			该方法的使用示例详见 [example:webgldeferred_animation WebGL deferred animation]。
 		</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

+ 11 - 11
docs/api/zh/core/bufferAttributeTypes/BufferAttributeTypes.html

@@ -13,7 +13,7 @@
 		<h1>BufferAttribute Types</h1>
 
 		<p class="desc">
-		There are nine types of [page:BufferAttribute] available in three.js. These correspond to the JavaScript
+		在 three.js 中一共有 9 种 [page:BufferAttribute]。每种和 JavaScript 中的类型相对应。
 		[link:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray#Syntax Typed Arrays].
 		</p>
 
@@ -29,27 +29,27 @@
 		THREE.Int8BufferAttribute
 		</code>
 
-		<h2>Constructor</h2>
+		<h2>构造函数</h2>
 
-		All of the above are called in the same way.
+		所有上述内容都以相同的方式调用。
 		<h3>TypedBufferAttribute( [param:Array array], [param:Integer itemSize], [param:Boolean normalized] )</h3>
 		<p>
-			array -- this can be a typed or untyped (normal) array. It will be converted to the Type specified.<br /><br />
+			array -- 这可以是类型化或非类型化的(普通)数组。它将被转换为指定的类型。<br /><br />
 
-			itemSize -- the number of values of the array that should be associated with a particular vertex.<br /><br />
+			itemSize -- 应与特定顶点关联的数组值的数量。<br /><br />
 
-			normalized -- (optional) indicates how the underlying data in the buffer maps to the values in the GLSL code.
+			normalized -- (可选)表示缓冲区中的基础数据如何映射到GLSL代码中的值。
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
-		See the [page:BufferAttribute] page for inherited properties.
+		继承属性详见 [page:BufferAttribute]。
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
-		See the [page:BufferAttribute] page for inherited methods.
+		继承方法详见 [page:BufferAttribute]。
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/core/BufferAttribute.js src/core/BufferAttribute.js]
 	</body>

+ 195 - 227
docs/api/zh/deprecated/DeprecatedList.html

@@ -8,81 +8,61 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	<body>
-		<h1>Deprecated API List</h1>
+		<h1>已被弃用API列表(Deprecated API List</h1>
 
 		<p>
-			As three.js has a rapidly evolving interface, you may come across examples that
-			suggest the use of API elements that are no longer part of the core.<br /><br />
-
-			Below is a list of such elements, along with info regarding their replacements.
+			由于three.js具有一个快速发展的接口,你可能会遇上类似“提示你当前所调用的API元素不再是Three.js核心的一部分”的提示。<br /><br />
+			下面就列举出了这些API元素,以及一些关于他们的替代信息。
 		</p>
 
-
-
-
-
-
-
-
-
-
-		<h2>Audio</h2>
+		<h2>音频(Audio)</h2>
 
 		<h3>[page:Audio]</h3>
-		<p>Audio.load has been deprecated. Use [page:AudioLoader] instead.</p>
+		<p>Audio.load 已被弃用。 请使用 [page:AudioLoader]。</p>
 
 		<h3>[page:AudioAnalyser]</h3>
-		<p>AudioAnalyser.getData() has been renamed to [page:AudioAnalyser.getFrequencyData]().</p>
+		<p>AudioAnalyser.getData() 已被重命名为 [page:AudioAnalyser.getFrequencyData]()。</p>
 
 		<h3>[page:BinaryTextureLoader]</h3>
-		<p>BinaryTextureLoader has been renamed to [page:DataTextureLoader].</p>
+		<p>BinaryTextureLoader 已被重命名为 [page:DataTextureLoader]。</p>
 
 
-
-
-
-
-
-
-
-
-
-		<h2>Buffers</h2>
+		<h2>缓冲器(Buffers)</h2>
 
 		<h3>[page:BufferAttribute]</h3>
-		<p>BufferAttribute.length has been renamed to [page:BufferAttribute.count].</p>
-		<p>BufferAttribute.copyIndicesArray() has been removed.</p>
+		<p>BufferAttribute.length 已被重命名为 [page:BufferAttribute.count]。</p>
+		<p>BufferAttribute.copyIndicesArray() 已被删除。</p>
 
 
 		<h3>[page:DynamicBufferAttribute]</h3>
-		<p>DynamicBufferAttribute has been removed. Use [page:BufferAttribute.setDynamic]( true ) instead.</p>
+		<p>DynamicBufferAttribute 已被删除。 请使用[page:BufferAttribute.setDynamic]( true )。</p>
 
 		<h3>[page:Int8Attribute]</h3>
-		<p>Int8Attribute has been removed. Use [page:BufferAttributeTypes Int8BufferAttribute] instead.</p>
+		<p>Int8Attribute 已被删除。 请使用[page:BufferAttributeTypes Int8BufferAttribute]。</p>
 
 		<h3>[page:Uint8Attribute]</h3>
-		<p>Uint8Attribute has been removed. Use [page:BufferAttributeTypes Uint8BufferAttribute] instead.</p>
+		<p>Uint8Attribute 已被删除。 请使用[page:BufferAttributeTypes Uint8BufferAttribute]。</p>
 
 		<h3>[page:Uint8ClampedAttribute]</h3>
-		<p>Uint8ClampedAttribute has been removed. Use [page:BufferAttributeTypes Uint8ClampedBufferAttribute] instead.</p>
+		<p>Uint8ClampedAttribute 已被删除。 请使用[page:BufferAttributeTypes Uint8ClampedBufferAttribute]。</p>
 
 		<h3>[page:Int16Attribute]</h3>
-		<p>Int16Attribute has been removed. Use [page:BufferAttributeTypes Int16BufferAttribute] instead.</p>
+		<p>Int16Attribute 已被删除。 请使用[page:BufferAttributeTypes Int16BufferAttribute]。</p>
 
 		<h3>[page:Uint16Attribute]</h3>
-		<p>Uint16Attribute has been removed. Use [page:BufferAttributeTypes Uint16BufferAttribute] instead.</p>
+		<p>Uint16Attribute 已被删除。 请使用[page:BufferAttributeTypes Uint16BufferAttribute]。</p>
 
 		<h3>[page:Int32Attribute]</h3>
-		<p>Int32Attribute has been removed. Use [page:BufferAttributeTypes Int32BufferAttribute] instead.</p>
+		<p>Int32Attribute 已被删除。 请使用[page:BufferAttributeTypes Int32BufferAttribute]。</p>
 
 		<h3>[page:Uint32Attribute]</h3>
-		<p>Uint32Attribute has been removed. Use [page:BufferAttributeTypes Uint32BufferAttribute] instead.</p>
+		<p>Uint32Attribute 已被删除。 请使用[page:BufferAttributeTypes Uint32BufferAttribute]。</p>
 
 		<h3>[page:Float32Attribute]</h3>
-		<p>Float32Attribute has been removed. Use [page:BufferAttributeTypes Float32BufferAttribute] instead.</p>
+		<p>Float32Attribute 已被删除。 请使用[page:BufferAttributeTypes Float32BufferAttribute]。</p>
 
 		<h3>[page:Float64Attribute]</h3>
-		<p>Float64Attribute has been removed. Use [page:BufferAttributeTypes Float64BufferAttribute] instead.</p>
+		<p>Float64Attribute 已被删除。 请使用[page:BufferAttributeTypes Float64BufferAttribute]。</p>
 
 
 
@@ -90,12 +70,12 @@
 
 
 
-		<h2>Cameras</h2>
+		<h2>摄像机(Cameras</h2>
 
 		<h3>[page:PerspectiveCamera]</h3>
 		<p>
-		PerspectiveCamera.setLens() is deprecated. Use [page:PerspectiveCamera.setFocalLength]()
-		 and [page:PerspectiveCamera.filmGauge]() for a photographic setup.
+		PerspectiveCamera.setLens() 已被弃用。 请使用[page:PerspectiveCamera.setFocalLength]()
+		 和 [page:PerspectiveCamera.filmGauge]() 来对摄像机拍摄进行设置。
 		</p>
 
 
@@ -104,33 +84,33 @@
 
 
 
-		<h2>Constants</h2>
+		<h2>常量(Constants</h2>
 
 		<h3>[page:LineStrip]</h3>
 
 		<h3>[page:LinePieces]</h3>
 		<p>
-		LinePieces mode is no longer supported for [page:Line]s. Create a [page:LineSegments] instead.
+		LinePieces mode 已经不再对 [page:Line]s 进行支持。 请创建一个 [page:LineSegments] 。
 		</p>
 
 
 
 
 
-		<h2>Core</h2>
+		<h2>核心(Core</h2>
 
 		<h3>[page:EventDispatcher]</h3>
-		<p>EventDispatcher.apply has been removed. Inherit or Object.assign the prototype to mix-in instead.</p>
+		<p>EventDispatcher.apply 已被删除。 请继承或者Object.assign其原型来“混合”。Inherit or Object.assign the prototype to mix-in。</p>
 
 		<h3>[page:Raycaster]</h3>
-		<p>Raycaster.params.PointCloud has been renamed to [page:Raycaster.params.Points].</p>
+		<p>Raycaster.params.PointCloud 已被重命名为 [page:Raycaster.params.Points]。</p>
 
 
 		<h3>[page:Uniform]</h3>
 		<p>
-			Uniform.dynamic has been removed. Use object.onBeforeRender() instead.<br /><br />
+			Uniform.dynamic 已被删除。 请使用object.onBeforeRender()。<br /><br />
 
-			Uniform.onUpdate has been removed. Use object.onBeforeRender() instead.
+			Uniform.onUpdate 已被删除。 请使用object.onBeforeRender() 。
 		</p>
 
 
@@ -138,13 +118,13 @@
 
 
 
-		<h2>Extras</h2>
+		<h2>附件(Extras</h2>
 
 		<h3>[page:ClosedSplineCurve3]</h3>
-		<p>ClosedSplineCurve3 has been deprecated. Use [page:CatmullRomCurve3] instead.</p>
+		<p>ClosedSplineCurve3 已被弃用。 请使用[page:CatmullRomCurve3]。</p>
 
 		<h3>[page:SplineCurve3]</h3>
-		<p>SplineCurve3 has been deprecated. Use [page:CatmullRomCurve3] instead.</p>
+		<p>SplineCurve3 已被弃用。 请使用[page:CatmullRomCurve3]。</p>
 
 
 
@@ -152,48 +132,48 @@
 
 
 
-		<h2>Geometry</h2>
+		<h2>几何体(Geometry</h2>
 
 		<p>
-			Geometry.computeTangents() has been removed.<br /><br />
+			Geometry.computeTangents() 已被删除。<br /><br />
 
-			Geometry.computeLineDistances() has been removed. Use [page:Line.computeLineDistances] instead.<br /><br />
+			Geometry.computeLineDistances() 已被删除。 请使用[page:Line.computeLineDistances]。<br /><br />
 		</p>
 
 		<h3>[page:BufferGeometry]</h3>
 		<p>
-			BufferGeometry.addIndex has been renamed to [page:BufferGeometry.setIndex].<br /><br />
+			BufferGeometry.addIndex 已被重命名为 [page:BufferGeometry.setIndex]。<br /><br />
 
-			BufferGeometry.addDrawCall is now [page:BufferGeometry.addGroup].<br /><br />
+			BufferGeometry.addDrawCall 现在是 [page:BufferGeometry.addGroup]。<br /><br />
 
-			BufferGeometry.clearDrawCalls is now [page:BufferGeometry.clearGroups].<br /><br />
+			BufferGeometry.clearDrawCalls 现在是 [page:BufferGeometry.clearGroups]。<br /><br />
 
-			BufferGeometry.computeTangents has been removed.<br /><br />
+			BufferGeometry.computeTangents 已被删除。<br /><br />
 
-			BufferGeometry.computeOffsets has been removed.<br /><br />
+			BufferGeometry.computeOffsets 已被删除。<br /><br />
 
-			BufferGeometry.drawcalls has been renamed to [page:BufferGeometry.groups].<br /><br />
+			BufferGeometry.drawcalls 已被重命名为 [page:BufferGeometry.groups]。<br /><br />
 
-			BufferGeometry.offsets has been renamed to [page:BufferGeometry.groups].<br /><br />
+			BufferGeometry.offsets 已被重命名为 [page:BufferGeometry.groups]。<br /><br />
 
 		</p>
 
 		<h3>[page:CubeGeometry]</h3>
-		<p>CubeGeometry has been renamed to [page:BoxGeometry].</p>
+		<p>CubeGeometry 已被重命名为 [page:BoxGeometry]。</p>
 
 		<h3>[page:Geometry]</h3>
-		<p>Geometry.computeTangents() has been removed.</p>
+		<p>Geometry.computeTangents() 已被删除。</p>
 
 		<h3>[page:GeometryUtils]</h3>
 		<p>
-			GeometryUtils.merge has been moved to [page:Geometry]. Use [page:Geometry.merge]( geometry2, matrix, materialIndexOffset ) instead.<br /><br />
+			GeometryUtils.merge 已被移动到了 [page:Geometry],请使用[page:Geometry.merge]( geometry2, matrix, materialIndexOffset )。<br /><br />
 
-			GeometryUtils.center has been moved to [page:Geometry]. Use [page:Geometry.center]( ) instead.
+			GeometryUtils.center 已被移动到了 [page:Geometry],请使用[page:Geometry.center]( ) 。
 		</p>
 
 		<h3>[page:Plane]</h3>
 		<p>
-			Plane.isIntersectionLine() has been renamed to	[page:Plane.intersectsLine]().
+			Plane.isIntersectionLine() 已被重命名为	[page:Plane.intersectsLine]()。
 		</p>
 
 
@@ -203,207 +183,196 @@
 
 
 
-		<h2>Helpers</h2>
+		<h2>辅助工具(Helpers</h2>
 
 		<h3>[page:BoundingBoxHelper]</h3>
-		<p>BoundingBoxHelper has been deprecated. Use [page:BoxHelper] instead.</p>
+		<p>BoundingBoxHelper 已被弃用。 请使用[page:BoxHelper]。</p>
 
 		<h3>[page:EdgesHelper]</h3>
-		<p>EdgesHelper has been removed. Use [page:EdgesGeometry] instead.</p>
+		<p>EdgesHelper 已被删除。 请使用[page:EdgesGeometry]。</p>
 
 		<h3>[page:GridHelper]</h3>
-		<p>GridHelper.setColors() has been deprecated, pass them in the constructor instead.</p>
+		<p>GridHelper.setColors() 已被弃用,请在构造器中传递它们。</p>
 
 		<h3>[page:WireframeHelper WireframeHelper]</h3>
-		<p>WireframeHelper has been removed. Use [page:WireframeGeometry] instead.</p>
+		<p>WireframeHelper 已被删除。 请使用[page:WireframeGeometry]。</p>
 
 
 
 
-		<h2>Lights</h2>
+		<h2>灯光(Lights</h2>
 
 		<h3>[page:Light]</h3>
 		<p>
-			Light.onlyShadow has been removed.<br /><br />
+			Light.onlyShadow 已被删除。<br /><br />
 
-			Light.shadowCameraLeft is now [page:Light.shadow.camera.left].<br /><br />
+			Light.shadowCameraLeft 现在是 [page:Light.shadow.camera.left]。<br /><br />
 
-			Light.shadowCameraRight is now [page:Light.shadow.camera.right].<br /><br />
+			Light.shadowCameraRight 现在是 [page:Light.shadow.camera.right]。<br /><br />
 
-			Light.shadowCameraTop is now [page:Light.shadow.camera.top].<br /><br />
+			Light.shadowCameraTop 现在是 [page:Light.shadow.camera.top]。<br /><br />
 
-			Light.shadowCameraBottom is now [page:Light.shadow.camera.bottom].<br /><br />
+			Light.shadowCameraBottom 现在是 [page:Light.shadow.camera.bottom]。<br /><br />
 
-			Light.shadowCameraNear is now [page:Light.shadow.camera.near].<br /><br />
+			Light.shadowCameraNear 现在是 [page:Light.shadow.camera.near]。<br /><br />
 
-			Light.shadowCameraFar is now [page:Light.shadow.camera.far].<br /><br />
+			Light.shadowCameraFar 现在是 [page:Light.shadow.camera.far]。<br /><br />
 
-			Light.shadowCameraVisible has been removed. Use [page:CameraHelper] ( light.shadow.camera ) instead.<br /><br />
+			Light.shadowCameraVisible 已被删除。 请使用[page:CameraHelper] ( light.shadow.camera )。<br /><br />
 
-			Light.shadowMapWidth is now [page:Light.shadow.mapSize.width].<br /><br />
+			Light.shadowMapWidth 现在是 [page:Light.shadow.mapSize.width]。<br /><br />
 
-			Light.shadowMapHeight is now [page:Light.shadow.mapSize.height].
+			Light.shadowMapHeight 现在是 [page:Light.shadow.mapSize.height]。
 		</p>
 
-
-
-
-
-
-
-
-		<h2>Loaders</h2>
+		<h2>加载器(Loaders)</h2>
 
 		<h3>[page:XHRLoader]</h3>
-		<p>XHRLoader has been renamed to [page:FileLoader].</p>
-
-
-
-
+		<p>XHRLoader 已被重命名为 [page:FileLoader]。</p>
 
+		<h3>[page:JSONLoader]</h3>
+		<p>JSONLoader has been removed from core.</p>
 
-
-
-		<h2>Maths</h2>
+		<h2>数学(Maths)</h2>
 
 		<h3>[page:Box2]</h3>
 		<p>
-			Box2.center has been renamed to [page:Box2.getCenter]().<br /><br />
+			Box2.center 已被重命名为 [page:Box2.getCenter]()。<br /><br />
 
-			Box2.empty has been renamed to [page:Box2.isEmpty]().<br /><br />
+			Box2.empty 已被重命名为 [page:Box2.isEmpty]()。<br /><br />
 
-			Box2.isIntersectionBox has been renamed to [page:Box2.intersectsBox]().<br /><br />
+			Box2.isIntersectionBox 已被重命名为 [page:Box2.intersectsBox]()。<br /><br />
 
-			Box2.size has been renamed to [page:Box2.getSize]().
+			Box2.size 已被重命名为 [page:Box2.getSize]()。
 
 		</p>
 
 		<h3>[page:Box3]</h3>
 		<p>
-			Box3.center has been renamed to [page:Box3.getCenter]().<br /><br />
+			Box3.center 已被重命名为 [page:Box3.getCenter]()。<br /><br />
 
-			Box3.empty has been renamed to [page:Box3.isEmpty]().<br /><br />
+			Box3.empty 已被重命名为 [page:Box3.isEmpty]()。<br /><br />
 
-			Box3.isIntersectionBox has been renamed to [page:Box3.intersectsBox]().<br /><br />
+			Box3.isIntersectionBox 已被重命名为 [page:Box3.intersectsBox]()。<br /><br />
 
-			Box3.isIntersectionSphere has been renamed to [page:Box3.intersectsSphere]().<br /><br />
+			Box3.isIntersectionSphere 已被重命名为 [page:Box3.intersectsSphere]()。<br /><br />
 
-			Box3.size has been renamed to [page:Box3.getSize]().
+			Box3.size 已被重命名为 [page:Box3.getSize]()。
 		</p>
 
 		<h3>[page:Face4]</h3>
-		<p>Face4 has been removed. Use [page:Face3] instead.</p>
+		<p>Face4 已被删除。 请使用[page:Face3]。</p>
 
 		<h3>[page:Line3]</h3>
-		<p>Line3.center has been renamed to [page:Line3.getCenter]().</p>
+		<p>Line3.center 已被重命名为 [page:Line3.getCenter]()。</p>
 
 		<h3>[page:Math]</h3>
 		<p>
-			Math.random16() has been deprecated. Use Math.random() instead.
+			Math.random16() 已被弃用。 请使用Math.random() 。
 		</p>
 
 		<h3>[page:Matrix3]</h3>
 		<p>
-			Matrix3.flattenToArrayOffset is deprecated. Use [page:Matrix3.toArray]() instead.<br /><br />
+			Matrix3.flattenToArrayOffset 已被弃用。请使用[page:Matrix3.toArray]()。<br /><br />
 
-			Matrix3.multiplyVector3 has been removed. Use vector.applyMatrix3( matrix ) instead.<br /><br />
+			Matrix3.multiplyVector3 已被删除。 请使用vector.applyMatrix3( matrix )。<br /><br />
 
-			Matrix3.multiplyVector3Array has been renamed to [page:Matrix3.applyToVector3Array]( array ).<br /><br />
+			Matrix3.multiplyVector3Array 已被重命名为 [page:Matrix3.applyToVector3Array]( array )。<br /><br />
 
-			Matrix3.applyToBuffer has been removed. Use matrix.applyToBufferAttribute( attribute ) instead.<br /><br />
+			Matrix3.applyToBuffer 已被删除。 请使用matrix.applyToBufferAttribute( attribute )。<br /><br />
 
-			Matrix3.applyToVector3Array has been removed.
+			Matrix3.applyToVector3Array 已被删除。
 		<p>
 
 		<h3>[page:Matrix4]</h3>
 		<p>
-			Matrix4.flattenToArrayOffset() is deprecated. Use [page:Matrix4.toArray]() instead.<br /><br />
+			Matrix4.flattenToArrayOffset() 已被弃用。请使用[page:Matrix4.toArray]()。<br /><br />
 
-			Matrix4.extractPosition() has been renamed to [page:Matrix4.copyPosition]( matrix ).<br /><br />
+			Matrix4.extractPosition() 已被重命名为 [page:Matrix4.copyPosition]( matrix )。<br /><br />
 
-			Matrix4.getPosition() has been removed. Use [page:Vector3.setFromMatrixPosition]( matrix ) instead.<br /><br />
+			Matrix4.getPosition() 已被删除。 请使用[page:Vector3.setFromMatrixPosition]( matrix )。<br /><br />
 
-			Matrix4.setRotationFromQuaternion() has been renamed to [page:Matrix4.makeRotationFromQuaternion]( quaternion ).<br /><br />
+			Matrix4.setRotationFromQuaternion() 已被重命名为 [page:Matrix4.makeRotationFromQuaternion]( quaternion )。<br /><br />
 
-			Matrix4.multiplyVector3() has been removed. Use vector.applyMatrix4( matrix ) instead.<br /><br />
+			Matrix4.multiplyVector3() 已被删除。 请使用vector.applyMatrix4( matrix )。<br /><br />
 
-			Matrix4.multiplyVector4() has been removed. Use vector.applyMatrix4( matrix ) instead.<br /><br />
+			Matrix4.multiplyVector4() 已被删除。 请使用vector.applyMatrix4( matrix )。<br /><br />
 
-			Matrix4.multiplyVector3Array() has been renamed to [page:Matrix4.applyToVector3Array] ( array ).<br /><br />
+			Matrix4.multiplyVector3Array() 已被重命名为 [page:Matrix4.applyToVector3Array] ( array )。<br /><br />
 
-			Matrix4.rotateAxis() has been removed. Use [page:Matrix4.transformDirection]( matrix ) instead.<br /><br />
+			Matrix4.rotateAxis() 已被删除。 请使用[page:Matrix4.transformDirection]( matrix )。<br /><br />
 
-			Matrix4.crossVector() has been removed. Use vector.applyMatrix4( matrix ) instead.<br /><br />
+			Matrix4.crossVector() 已被删除。 请使用vector.applyMatrix4( matrix )。<br /><br />
 
-			Matrix4.rotateX() has been removed.<br /><br />
+			Matrix4.rotateX() 已被删除。<br /><br />
 
-			Matrix4.rotateY() has been removed.<br /><br />
+			Matrix4.rotateY() 已被删除。<br /><br />
 
-			Matrix4.rotateZ() has been removed.<br /><br />
+			Matrix4.rotateZ() 已被删除。<br /><br />
 
-			Matrix4.rotateByAxis() has been removed.<br /><br />
+			Matrix4.rotateByAxis() 已被删除。<br /><br />
 
-			Matrix4.applyToBuffer() has been removed. Use matrix.applyToBufferAttribute() instead.<br /><br />
+			Matrix4.applyToBuffer() 已被删除。 请使用matrix.applyToBufferAttribute()。<br /><br />
 
-			Matrix4.applyToVector3Array() has been removed.<br /><br />
+			Matrix4.applyToVector3Array() 已被删除。<br /><br />
 
-			Matrix4.makeFrustum() has been removed. Use [page:Matrix4.makePerspective]( left, right, top, bottom, near, far ) instead.
+			Matrix4.makeFrustum() 已被删除。 请使用[page:Matrix4.makePerspective]( left, right, top, bottom, near, far ) 。
 		</p>
 
 
 		<h3>[page:Quaternion.multiplyVector3]</h3>
-		<p>Quaternion.multiplyVector3() has been removed. Use vector.applyQuaternion( quaternion ) instead.</p>
+		<p>Quaternion.multiplyVector3() 已被删除。 请使用vector.applyQuaternion( quaternion )。</p>
 
 		<h3>[page:Ray]</h3>
 		<p>
-			Ray.isIntersectionBox() has been renamed to [page:Ray.intersectsBox]().<br /><br />
+			Ray.isIntersectionBox() 已被重命名为 [page:Ray.intersectsBox]()。<br /><br />
 
-			Ray.isIntersectionPlane has been renamed to [page:Ray.intersectsPlane].<br /><br />
+			Ray.isIntersectionPlane 已被重命名为 [page:Ray.intersectsPlane]。<br /><br />
 
-			Ray.isIntersectionSphere has been renamed to [page:Ray.intersectsSphere].
+			Ray.isIntersectionSphere 已被重命名为 [page:Ray.intersectsSphere]。
 		</p>
 
 		<h3>[page:Triangle]</h3>
 		<p>
-			Triangle.area() has been renamed to [page:Triangle.getArea]().<br /><br />
-			Triangle.barycoordFromPoint() has been renamed to [page:Triangle.getBarycoord]().<br /><br />
-			Triangle.midpoint() has been renamed to [page:Triangle.getMidpoint]().<br /><br />
-			Triangle.normal() has been renamed to [page:Triangle.getNormal]().<br /><br />
-			Triangle.plane() has been renamed to [page:Triangle.getPlane]().
+			Triangle.area() 已被重命名为 [page:Triangle.getArea]()。<br /><br />
+			Triangle.barycoordFromPoint() 已被重命名为 [page:Triangle.getBarycoord]()。<br /><br />
+			Triangle.midpoint() 已被重命名为 [page:Triangle.getMidpoint]()。<br /><br />
+			Triangle.normal() 已被重命名为 [page:Triangle.getNormal]()。<br /><br />
+			Triangle.plane() 已被重命名为 [page:Triangle.getPlane]()。
 		</p>
 
 		<h3>[page:Vector2]</h3>
 		<p>
-			Vector2.fromAttribute() has been renamed to [page:Vector2.fromBufferAttribute]().
+			Vector2.fromAttribute() 已被重命名为 [page:Vector2.fromBufferAttribute]()。
 		</p>
 
 		<h3>[page:Vector3]</h3>
 		<p>
-			Vector3.setEulerFromRotationMatrix() has been removed. Use [page:Euler.setFromRotationMatrix]() instead.<br /><br />
+			Vector3.setEulerFromRotationMatrix() 已被删除。 请使用[page:Euler.setFromRotationMatrix]()。<br /><br />
 
-			Vector3.setEulerFromQuaternion() has been removed. Use [page:Euler.setFromQuaternion]() instead.<br /><br />
+			Vector3.setEulerFromQuaternion() 已被删除。 请使用[page:Euler.setFromQuaternion]()。<br /><br />
 
-			Vector3.getPositionFromMatrix() has been renamed to [page:Vector3.setFromMatrixPosition]().<br /><br />
+			Vector3.getPositionFromMatrix() 已被重命名为 [page:Vector3.setFromMatrixPosition]()。<br /><br />
 
-			Vector3.getScaleFromMatrix() has been renamed to [page:Vector3.setFromMatrixScale]().<br /><br />
+			Vector3.getScaleFromMatrix() 已被重命名为 [page:Vector3.setFromMatrixScale]()。<br /><br />
 
-			Vector3.getColumnFromMatrix() has been renamed to [page:Vector3.setFromMatrixColumn]().<br /><br />
+			Vector3.getColumnFromMatrix() 已被重命名为 [page:Vector3.setFromMatrixColumn]()。<br /><br />
 
-			Vector3.applyProjection() has been removed. Use [page:Vector3.applyMatrix4]() instead.<br /><br />
+			Vector3.applyProjection() 已被删除。 请使用[page:Vector3.applyMatrix4]()。<br /><br />
 
-			Vector3.fromAttribute() has been renamed to [page:Vector3.fromBufferAttribute]().
+			Vector3.fromAttribute() 已被重命名为 [page:Vector3.fromBufferAttribute]()。
 		</p>
 
 		<h3>[page:Vector4]</h3>
 		<p>
-			Vector4.fromAttribute() has been renamed to [page:Vector4.fromBufferAttribute]().
+			Vector4.fromAttribute() 已被重命名为 [page:Vector4.fromBufferAttribute]().
 		</p>
 
 		<h3>[page:Vertex]</h3>
-		<p>Vertex has been removed. Use [page:Vector3] instead.</p>
+		<p>Vertex 已被删除。 请使用[page:Vector3]。</p>
 
 		<h3>[page:Spline]</h3>
-		<p>Spline has been removed. Use [page:CatmullRomCurve3] instead.</p>
+		<p>Spline 已被删除。 请使用[page:CatmullRomCurve3]。</p>
 
 
 
@@ -416,36 +385,36 @@
 
 
 
-		<h2>Materials</h2>
+		<h2>材质(Materials</h2>
 
 		<h3>[page:Material]</h3>
 		<p>
-			Material.wrapAround has been removed.<br /><br />
+			Material.wrapAround 已被删除。<br /><br />
 
-			Material.wrapRGB has been removed.
+			Material.wrapRGB 已被删除。
 
 		</p>
 
 		<h3>[page:MeshFaceMaterial]</h3>
-		<p>MeshFaceMaterial has been removed. Use an array of materials instead.</p>
+		<p>MeshFaceMaterial 已被删除。 请使用一个材质数组。</p>
 
 		<h3>[page:MultiMaterial]</h3>
-		<p>MultiMaterial has been removed. Use an array of materials instead.</p>
+		<p>MultiMaterial 已被删除。 请使用一个材质数组。</p>
 
 		<h3>[page:MeshPhongMaterial]</h3>
-		<p>MeshPhongMaterial.metal has been removed. Use [page:MeshStandardMaterial] instead.</p>
+		<p>MeshPhongMaterial.metal 已被删除。 请使用[page:MeshStandardMaterial]。</p>
 
 		<h3>[page:ParticleBasicMaterial]</h3>
-		<p>ParticleBasicMaterial has been renamed to [page:PointsMaterial].</p>
+		<p>ParticleBasicMaterial 已被重命名为 [page:PointsMaterial]。</p>
 
 		<h3>[page:ParticleSystemMaterial]</h3>
-		<p>ParticleBasicMaterial has been renamed to [page:PointsMaterial].</p>
+		<p>ParticleBasicMaterial 已被重命名为 [page:PointsMaterial]。</p>
 
 		<h3>[page:PointCloudMaterial]</h3>
-		<p>PointCloudMaterial has been renamed to [page:PointsMaterial].</p>
+		<p>PointCloudMaterial 已被重命名为 [page:PointsMaterial]。</p>
 
 		<h3>[page:ShaderMaterial.derivatives]</h3>
-		<p>ShaderMaterial.derivatives has been moved to [page:ShaderMaterial.extensions.derivatives].</p>
+		<p>ShaderMaterial.derivatives 已被移动到了 [page:ShaderMaterial.extensions.derivatives]。</p>
 
 
 
@@ -454,164 +423,163 @@
 
 
 
-		<h2>Objects</h2>
+		<h2>物体(Objects</h2>
 
 		<h3>[page:LOD.objects]</h3>
-		<p>LOD.objects has been renamed to [page:LOD.levels].</p>
+		<p>LOD.objects 已被重命名为 [page:LOD.levels]。</p>
 
 		<h3>[page:Object3D]</h3>
 		<p>
-			Object3D.eulerOrder is now [page:Object3D.rotation.order].<br /><br />
+			Object3D.eulerOrder 现在是 [page:Object3D.rotation.order]。<br /><br />
 
-			Object3D.getChildByName() has been renamed to [page:Object3D.getObjectByName]().<br /><br />
+			Object3D.getChildByName() 已被重命名为 [page:Object3D.getObjectByName]()。<br /><br />
 
-			Object3D.renderDepth has been removed. Use [page:Object3D.renderOrder] instead.<br /><br />
+			Object3D.renderDepth 已被删除。 请使用[page:Object3D.renderOrder]。<br /><br />
 
-			Object3D.translate() has been removed. Use [page:Object3D.translateOnAxis]( axis, distance ) instead.<br /><br />
+			Object3D.translate() 已被删除。 请使用[page:Object3D.translateOnAxis]( axis, distance )。<br /><br />
 
-			Object3D.useQuaternion has been removed. The library now uses quaternions by default.
+			Object3D.useQuaternion 已被删除。 默认情况下,Three.js库是使用quaternions(四元数)的。
 		</p>
 
 		<h3>[page:LensFlare]</h3>
 		<p>
-			LensFlare has been moved to [link:https://github.com/mrdoob/three.js/blob/master/examples/js/objects/Lensflare.js /examples/js/objects/Lensflare.js].
+			LensFlare 已被移动到了 [link:https://github.com/mrdoob/three.js/blob/master/examples/js/objects/Lensflare.js /examples/js/objects/Lensflare.js].
 		</p>
 
 
 		<h3>[page:Particle]</h3>
-		<p>Particle has been renamed to [page:Sprite].</p>
+		<p>Particle 已被重命名为 [page:Sprite]。</p>
 
 		<h3>[page:ParticleSystem]</h3>
-		<p>ParticleSystem has been renamed to [page:Points].</p>
+		<p>ParticleSystem 已被重命名为 [page:Points]。</p>
 
 		<h3>[page:PointCloud]</h3>
-		<p>PointCloud has been renamed to [page:Points].</p>
+		<p>PointCloud 已被重命名为 [page:Points]。</p>
 
 		<h3>[page:Shape]</h3>
 		<p>
-			Shape.extrude has been removed. Use [page:ExtrudeGeometry] instead.<br /><br />
+			Shape.extrude 已被删除。 请使用[page:ExtrudeGeometry]。<br /><br />
 
-			Shape.makeGeometry has been removed. Use [page:ShapeGeometry] instead.
+			Shape.makeGeometry 已被删除。 请使用[page:ShapeGeometry] 。
 		</p>
 
+		<h3>[page:SkinnedMesh]</h3>
+		<p>
+			SkinnedMesh.initBones() has been removed.
+		</p>
 
 
-
-
-
-
-
-		<h2>Renderer</h2>
+		<h2>渲染器(Renderer)</h2>
 
 		<h3>[page:Projector]</h3>
 		<p>
-			CanvasRenderer has been moved to [link:https://github.com/mrdoob/three.js/blob/master/examples/js/renderers/CanvasRenderer.js /examples/js/renderers/CanvasRenderer.js].
+			CanvasRenderer 已被移动到了 [link:https://github.com/mrdoob/three.js/blob/master/examples/js/renderers/CanvasRenderer.js /examples/js/renderers/CanvasRenderer.js].
 		</p>
 
 		<h3>[page:Projector]</h3>
 		<p>
-			Projector has been moved to
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/js/renderers/Projector.js 	/examples/js/renderers/Projector.js].<br /><br />
+			Projector 已被移动到了
+			[link:https://github.com/mrdoob/three.js/blob/master/examples/js/renderers/Projector.js 	/examples/js/renderers/Projector.js]<br /><br />
 
-			Projector.projectVector() is now [page:Vector.project]().<br /><br />
+			Projector.projectVector() 现在是 [page:Vector.project]()。<br /><br />
 
-			Projector.unprojectVector() is now [page:Vector.unproject]().<br /><br />
+			Projector.unprojectVector() 现在是 [page:Vector.unproject]()。<br /><br />
 
-			Projector:.pickingRay() is now [page:Raycaster.setFromCamera]().
+			Projector:.pickingRay() 现在是 [page:Raycaster.setFromCamera]()。
 		</p>
 
 		<h3>[page:WebGLProgram]</h3>
 		<p>
-			WebGLProgram.uniforms is now [page:WebGLProgram.getUniforms]().<br /><br />
+			WebGLProgram.uniforms 现在是 [page:WebGLProgram.getUniforms]()。<br /><br />
 
-			WebGLProgram.attributes is now [page:WebGLProgram.getAttributes]().
+			WebGLProgram.attributes 现在是 [page:WebGLProgram.getAttributes]()。
 		</p>
 
 		<h3>[page:WebGLRenderer]</h3>
 		<p>
-			WebGLRenderer.supportsFloatTextures() is now [page:WebGLRenderer.extensions.get]( 'OES_texture_float' ).<br /><br />
+			WebGLRenderer.supportsFloatTextures() 现在是 [page:WebGLRenderer.extensions.get]( 'OES_texture_float' )。<br /><br />
 
-			WebGLRenderer.supportsHalfFloatTextures() is now [page:WebGLRenderer.extensions.get]( 'OES_texture_half_float' ).<br /><br />
+			WebGLRenderer.supportsHalfFloatTextures() 现在是 [page:WebGLRenderer.extensions.get]( 'OES_texture_half_float' )。<br /><br />
 
-			WebGLRenderer.supportsStandardDerivatives() is now [page:WebGLRenderer.extensions.get]( 'OES_standard_derivatives' ).<br /><br />
+			WebGLRenderer.supportsStandardDerivatives() 现在是 [page:WebGLRenderer.extensions.get]( 'OES_standard_derivatives' )。<br /><br />
 
-			WebGLRenderer.supportsCompressedTextureS3TC() is now [page:WebGLRenderer.extensions.get]( 'WEBGL_compressed_texture_s3tc' ).<br /><br />
+			WebGLRenderer.supportsCompressedTextureS3TC() 现在是 [page:WebGLRenderer.extensions.get]( 'WEBGL_compressed_texture_s3tc' )。<br /><br />
 
-			WebGLRenderer.supportsCompressedTexturePVRTC() is now [page:WebGLRenderer.extensions.get]( 'WEBGL_compressed_texture_pvrtc' ).<br /><br />
+			WebGLRenderer.supportsCompressedTexturePVRTC() 现在是 [page:WebGLRenderer.extensions.get]( 'WEBGL_compressed_texture_pvrtc' )。<br /><br />
 
-			WebGLRenderer.supportsBlendMinMax() is now [page:WebGLRenderer.extensions.get]( 'EXT_blend_minmax' ).<br /><br />
+			WebGLRenderer.supportsBlendMinMax() 现在是 [page:WebGLRenderer.extensions.get]( 'EXT_blend_minmax' )。<br /><br />
 
-			WebGLRenderer.supportsVertexTextures() is now [page:WebGLRenderer.capabilities.vertexTextures].<br /><br />
+			WebGLRenderer.supportsVertexTextures() 现在是 [page:WebGLRenderer.capabilities.vertexTextures]。<br /><br />
 
-			WebGLRenderer.supportsInstancedArrays() is now [page:WebGLRenderer.extensions.get]( 'ANGLE_instanced_arrays' ).<br /><br />
+			WebGLRenderer.supportsInstancedArrays() 现在是 [page:WebGLRenderer.extensions.get]( 'ANGLE_instanced_arrays' )。<br /><br />
 
-			WebGLRenderer.enableScissorTest() is now [page:WebGLRenderer.setScissorTest]().<br /><br />
+			WebGLRenderer.enableScissorTest() 现在是 [page:WebGLRenderer.setScissorTest]()。<br /><br />
 
-			WebGLRenderer.initMaterial() has been removed.<br /><br />
+			WebGLRenderer.initMaterial() 已被删除。<br /><br />
 
-			WebGLRenderer.addPrePlugin() has been removed.<br /><br />
+			WebGLRenderer.addPrePlugin() 已被删除。<br /><br />
 
-			WebGLRenderer.addPostPlugin() has been removed.<br /><br />
+			WebGLRenderer.addPostPlugin() 已被删除。<br /><br />
 
-			WebGLRenderer.updateShadowMap() has been removed.<br /><br />
+			WebGLRenderer.updateShadowMap() 已被删除。<br /><br />
 
-			WebGLRenderer.setFaceCulling() has been removed.<br /><br />
+			WebGLRenderer.setFaceCulling() 已被删除。<br /><br />
 
-			WebGLRenderer.setTexture is deprecated, use [page:WebGLRenderer.setTexture2D]() instead.<br /><br />
+			WebGLRenderer.setTexture is deprecated, 请使用[page:WebGLRenderer.setTexture2D]()。<br /><br />
 
-			WebGLRenderer.shadowMapEnabled is now [page:WebGLRenderer.shadowMap.enabled].<br /><br />
+			WebGLRenderer.shadowMapEnabled 现在是 [page:WebGLRenderer.shadowMap.enabled]。<br /><br />
 
-			WebGLRenderer.shadowMapType is now [page:WebGLRenderer.shadowMap.type].<br /><br />
+			WebGLRenderer.shadowMapType 现在是 [page:WebGLRenderer.shadowMap.type]。<br /><br />
 
-			WebGLRenderer.shadowMapCullFace has been removed. Set [page:Material.shadowSide] instead.<br /><br />
+			WebGLRenderer.shadowMapCullFace 已被删除。请设置[page:Material.shadowSide]。<br /><br />
 
-			WebGLRenderer.shadowMap.cullFace has been removed. Set [page:Material.shadowSide] instead.<br /><br />
+			WebGLRenderer.shadowMap.cullFace 已被删除。请设置[page:Material.shadowSide]。<br /><br />
 
-			WebGLRenderer.shadowMap.renderReverseSided has been removed. Set [page:Material.shadowSide] instead.<br /><br />
+			WebGLRenderer.shadowMap.renderReverseSided 已被删除。请设置[page:Material.shadowSide]。<br /><br />
 
-			WebGLRenderer.shadowMap.renderSingleSided has been removed. Set [page:Material.shadowSide] instead.
+			WebGLRenderer.shadowMap.renderSingleSided 已被删除。请设置[page:Material.shadowSide]。
 
 		</p>
 
 		<h3>[page:WebGLRenderTarget]</h3>
 		<p>
-			WebGLRenderTarget.wrapS is now [page:WebGLRenderTarget.texture.wrapS].<br /><br />
+			WebGLRenderTarget.wrapS 现在是 [page:WebGLRenderTarget.texture.wrapS]。<br /><br />
 
-			WebGLRenderTarget.wrapT is now [page:WebGLRenderTarget.texture.wrapT].<br /><br />
+			WebGLRenderTarget.wrapT 现在是 [page:WebGLRenderTarget.texture.wrapT]。<br /><br />
 
-			WebGLRenderTarget.magFilter is now [page:WebGLRenderTarget.texture.magFilter].<br /><br />
+			WebGLRenderTarget.magFilter 现在是 [page:WebGLRenderTarget.texture.magFilter]。<br /><br />
 
-			WebGLRenderTarget.minFilter is now [page:WebGLRenderTarget.texture.minFilter].<br /><br />
+			WebGLRenderTarget.minFilter 现在是 [page:WebGLRenderTarget.texture.minFilter]。<br /><br />
 
-			WebGLRenderTarget.anisotropy is now [page:WebGLRenderTarget.texture.anisotropy].<br /><br />
+			WebGLRenderTarget.anisotropy 现在是 [page:WebGLRenderTarget.texture.anisotropy]。<br /><br />
 
-			WebGLRenderTarget.offset is now [page:WebGLRenderTarget.texture.offset].<br /><br />
+			WebGLRenderTarget.offset 现在是 [page:WebGLRenderTarget.texture.offset]。<br /><br />
 
-			WebGLRenderTarget.repeat is now [page:WebGLRenderTarget.texture.repeat].<br /><br />
+			WebGLRenderTarget.repeat 现在是 [page:WebGLRenderTarget.texture.repeat]。<br /><br />
 
-			WebGLRenderTarget.format is now [page:WebGLRenderTarget.texture.format].<br /><br />
+			WebGLRenderTarget.format 现在是 [page:WebGLRenderTarget.texture.format]。<br /><br />
 
-			WebGLRenderTarget.type is now [page:WebGLRenderTarget.texture.type].<br /><br />
+			WebGLRenderTarget.type 现在是 [page:WebGLRenderTarget.texture.type]。<br /><br />
 
-			WebGLRenderTarget.generateMipmaps is now [page:WebGLRenderTarget.texture.generateMipmaps].
+			WebGLRenderTarget.generateMipmaps 现在是 [page:WebGLRenderTarget.texture.generateMipmaps].
 		</p>
 
 
-		<h2>Textures</h2>
+		<h2>纹理(Textures</h2>
 
 		<h3>[page:ImageUtils]</h3>
 		<p>
-			ImageUtils.loadTexture has been deprecated. Use [page:TextureLoader] instead.<br /><br />
+			ImageUtils.loadTexture 已被弃用。 请使用[page:TextureLoader]。<br /><br />
 
-			ImageUtils.loadTextureCube has been deprecated. Use [page:CubeTextureLoader] instead.<br /><br />
+			ImageUtils.loadTextureCube 已被弃用。 请使用[page:CubeTextureLoader]。<br /><br />
 
-			ImageUtils.loadCompressedTexture has been removed. Use [page:DDSLoader] instead.<br /><br />
+			ImageUtils.loadCompressedTexture 已被删除。 请使用[page:DDSLoader]。<br /><br />
 
-			ImageUtils.loadCompressedTextureCube has been removed. Use [page:DDSLoader] instead.
+			ImageUtils.loadCompressedTextureCube 已被删除。 请使用[page:DDSLoader] 。
 		</p>
 
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/Three.Legacy.js src/Three.Legacy.js]
 

+ 6 - 6
docs/api/zh/extras/Earcut.html

@@ -11,20 +11,20 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-		An implementation of the earcut polygon triangulation algorithm. The code is a port of [link:https://github.com/mapbox/earcut mapbox/earcut].
+		切割多边形三角剖分算法的实现。这份代码是[link:https://github.com/mapbox/earcut mapbox/earcut]的一个端口。
 		</p>
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 		<h3>[method:Array triangulate]( data, holeIndices, dim )</h3>
 		<p>
-		data -- A flat array of vertice coordinates.<br /><br />
-		holeIndices -- An array of hole indices if any.<br /><br />
-		dim -- The number of coordinates per vertice in the input array.<br /><br />
+		data -- 一个顶点坐标的平面数组。<br /><br />
+		holeIndices -- 空洞索引的数组(如果有的话)。<br /><br />
+		dim -- 输入数组中每个顶点的坐标数。<br /><br />
 
 		</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

+ 12 - 15
docs/api/zh/extras/ShapeUtils.html

@@ -11,43 +11,40 @@
 		<h1>[name]</h1>
 
 		<p class="desc">
-		A class containing utility functions for shapes.<br /><br />
+		一个包含形状实用函数的类。<br /><br />
 
-		Note that these are all linear functions so it is neccessary to calculate separately for
-		x, y (and z, w if present) components of a vector.
+		请注意,这些都是线性函数,因此有必要分别计算向量的x,y(和z,w,如果存在的话)分量。
 		</p>
 
 
-		<h2>Methods</h2>
+		<h2>方法</h2>
 
 		<h3>[method:Number area]( contour )</h3>
 		<p>
-		contour -- 2D polygon.<br /><br />
+		contour -- 2D多边形。<br /><br />
 
-		Calculate area of a ( 2D ) contour polygon.<br /><br />
+		计算(2D)轮廓多边形的面积。<br /><br />
 
 		</p>
 
 		<h3>[method:Boolean isClockwise]( pts )</h3>
 		<p>
-		pts -- points defining a 2D polygon<br /><br />
+		pts -- 定义2D多边形的点<br /><br />
 
-		Note that this is a linear function so it is neccessary to calculate separately for
-		x, y  components of a polygon.<br /><br />
+		请注意,这是一个线性函数,因此需要分别计算多边形的x,y分量。<br /><br />
 
-		Used internally by [page:Path Path],
-		[page:ExtrudeGeometry ExtrudeGeometry] and [page:ShapeGeometry ShapeGeometry].
+		由[page:Path Path],[page:ExtrudeGeometry ExtrudeGeometry]和[page:ShapeGeometry ShapeGeometry]内部使用。
 		</p>
 
 		<h3>[method:Array triangulateShape]( contour, holes )</h3>
 		<p>
-		contour -- 2D polygon.<br />
-		holes -- array of holes<br /><br />
+		contour -- 2D多边形。<br />
+		holes -- 空洞数组<br /><br />
 
-		Used internally by [page:ExtrudeGeometry ExtrudeGeometry] and [page:ShapeGeometry ShapeGeometry] to calculate faces in shapes with holes.
+		由[page:ExtrudeGeometry ExtrudeGeometry]和[page:ShapeGeometry ShapeGeometry]内部使用以计算带孔的形状中的面。
 		</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

+ 8 - 8
docs/api/zh/extras/objects/ImmediateRenderObject.html

@@ -10,32 +10,32 @@
 	<body>
 		[page:Object3D] &rarr;
 
-		<h1>[name]</h1>
+		<h1>及时渲染对象([name])</h1>
 
-		<p class="desc">base class for immediate rendering objects.</p>
+		<p class="desc">及时渲染对象的基类。</p>
 
 
-		<h2>Constructor</h2>
+		<h2>构造函数(Constructor)</h2>
 
 
 		<h3>[name]()</h3>
 		<p>
-		This creates a new [name].
+			这会创建一个新的 [name]。
 		</p>
 
 
-		<h2>Methods</h2>
+		<h2>方法(Methods)</h2>
 
 
 		<h3>[method:null render]([param:Function renderCallback])</h3>
 		<p>
-		renderCallback -- A function to render the generated object.
+		renderCallback -- 生成对象的渲染函数。
 		</p>
 		<p>
-		This function needs to be overridden to start the creation of the object and should call renderCallback when finished.
+		需要重写此函数以开始创建对象,并在完成时调用renderCallback。
 		</p>
 
-		<h2>Source</h2>
+		<h2>源码(Source)</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

+ 20 - 19
docs/api/zh/geometries/BoxBufferGeometry.html

@@ -10,9 +10,10 @@
 	<body>
 		[page:BufferGeometry] &rarr;
 
-		<h1>[name]</h1>
+		<h1>立方缓冲几何体([name]</h1>
 
-		<p class="desc">This is the [page:BufferGeometry] port of [page:BoxGeometry].</p>
+		<p class="desc">
+			这是[page:BoxGeometry]中的[page:BufferGeometry]接口。</p>
 
 		<iframe id="scene" src="scenes/geometry-browser.html#BoxBufferGeometry"></iframe>
 
@@ -32,7 +33,7 @@
 
 		</script>
 
-		<h2>Example</h2>
+		<h2>示例</h2>
 
 		<code>var geometry = new THREE.BoxBufferGeometry( 1, 1, 1 );
 		var material = new THREE.MeshBasicMaterial( {color: 0x00ff00} );
@@ -40,35 +41,35 @@
 		scene.add( cube );
 		</code>
 
-		<h2>Constructor</h2>
+		<h2>构造器</h2>
 
 		<h3>[name]([param:Float width], [param:Float height], [param:Float depth], [param:Integer widthSegments], [param:Integer heightSegments], [param:Integer depthSegments])</h3>
 		<p>
-		width — Width of the sides on the X axis. Default is 1.<br />
-		height — Height of the sides on the Y axis. Default is 1.<br />
-		depth — Depth of the sides on the Z axis. Default is 1.<br />
-		widthSegments — Optional. Number of segmented faces along the width of the sides. Default is 1.<br />
-		heightSegments — Optional. Number of segmented faces along the height of the sides. Default is 1.<br />
-		depthSegments — Optional. Number of segmented faces along the depth of the sides. Default is 1.
+		width — X轴上面的宽度,默认值为1。<br />
+		height — Y轴上面的高度,默认值为1。<br />
+		depth — Z轴上面的深度,默认值为1。<br />
+		widthSegments — (可选)宽度的分段数,默认值是1。<br />
+		heightSegments — (可选)宽度的分段数,默认值是1。<br />
+		depthSegments — (可选)宽度的分段数,默认值是1。
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Object parameters]</h3>
 		<p>
-		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
-		</p>
+				一个包含着构造函数中每个参数的对象。在对象实例化之后,对该属性的任何修改都不会改变这个几何体。
+			</p>
  		<p>
-			Using the above example code above as our basis:
+			 使用上面的示例代码来作为基础:
 			<code>
-		geometry.parameters; // outputs an object {width: 1, height: 1, depth: 1, widthSegments: undefined, heightSegments: undefined}
-		cube.geometry.parameters; // as above
-		cube.geometry.parameters.width; // === 1
-		cube.geometry.parameters.widthSegments // === undefined.
+				geometry.parameters; // outputs an object {width: 1, height: 1, depth: 1, widthSegments: undefined, heightSegments: undefined}
+				cube.geometry.parameters; // as above
+				cube.geometry.parameters.width; // === 1
+				cube.geometry.parameters.widthSegments // === undefined.
 			</code>
  		</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/BoxGeometry.js src/geometries/BoxGeometry.js]
 	</body>

+ 17 - 16
docs/api/zh/geometries/BoxGeometry.html

@@ -10,9 +10,10 @@
 	<body>
 		[page:Geometry] &rarr;
 
-		<h1>[name]</h1>
+		<h1>立方几何体([name]</h1>
 
-		<p class="desc">BoxGeometry is the quadrilateral primitive geometry class. It is typically used for creating a cube or irregular quadrilateral of the dimensions provided with the 'width', 'height', and 'depth' constructor arguments.</p>
+		<p class="desc">
+			BoxGeometry是四边形的原始几何类,它通常使用构造函数所提供的“width”、“height”、“depth”参数来创建立方体或者不规则四边形。</p>
 
 		<iframe id="scene" src="scenes/geometry-browser.html#BoxGeometry"></iframe>
 
@@ -32,7 +33,7 @@
 
 		</script>
 
-		<h2>Example</h2>
+		<h2>示例</h2>
 
 		<code>var geometry = new THREE.BoxGeometry( 1, 1, 1 );
 		var material = new THREE.MeshBasicMaterial( {color: 0x00ff00} );
@@ -40,27 +41,27 @@
 		scene.add( cube );
 		</code>
 
-		<h2>Constructor</h2>
+		<h2>构造器</h2>
 
 		<h3>[name]([param:Float width], [param:Float height], [param:Float depth], [param:Integer widthSegments], [param:Integer heightSegments], [param:Integer depthSegments])</h3>
 		<p>
-		width — Width of the sides on the X axis. Default is 1.<br />
-		height — Height of the sides on the Y axis. Default is 1.<br />
-		depth — Depth of the sides on the Z axis. Default is 1.<br />
-		widthSegments — Optional. Number of segmented faces along the width of the sides. Default is 1.<br />
-		heightSegments — Optional. Number of segmented faces along the height of the sides. Default is 1.<br />
-		depthSegments — Optional. Number of segmented faces along the depth of the sides. Default is 1.
+				width — X轴上面的宽度,默认值为1。<br />
+				height — Y轴上面的高度,默认值为1。<br />
+				depth — Z轴上面的深度,默认值为1。<br />
+				widthSegments — (可选)宽度的分段数,默认值是1。<br />
+				heightSegments — (可选)宽度的分段数,默认值是1。<br />
+				depthSegments — (可选)宽度的分段数,默认值是1。
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Object parameters]</h3>
 		<p>
-		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
-		</p>
+				一个包含着构造函数中每个参数的对象。在对象实例化之后,对该属性的任何修改都不会改变这个几何体。
+			</p>
  		<p>
-			Using the above example code above as our basis:
-			<code>
+				使用上面的示例代码来作为基础:
+				<code>
 				geometry.parameters; // outputs an object {width: 1, height: 1, depth: 1, widthSegments: undefined, heightSegments: undefined}
 				cube.geometry.parameters; // as above
 				cube.geometry.parameters.width; // === 1
@@ -68,7 +69,7 @@
 			</code>
  		</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

+ 12 - 12
docs/api/zh/geometries/CircleBufferGeometry.html

@@ -10,9 +10,9 @@
 	<body>
 		[page:BufferGeometry] &rarr;
 
-		<h1>[name]</h1>
+		<h1>圆形缓冲几何体[name]</h1>
 
-		<p class="desc">This is the [page:BufferGeometry] port of [page:CircleGeometry].</p>
+		<p class="desc">这是[page:CircleGeometry]中的[page:BufferGeometry]接口。</p>
 
 		<iframe id="scene" src="scenes/geometry-browser.html#CircleBufferGeometry"></iframe>
 
@@ -32,7 +32,7 @@
 
 		</script>
 
-		<h2>Example</h2>
+		<h2>示例</h2>
 
 		<code>
 		var geometry = new THREE.CircleBufferGeometry( 5, 32 );
@@ -41,24 +41,24 @@
 		scene.add( circle );
 		</code>
 
-		<h2>Constructor</h2>
+		<h2>构造器</h2>
 
 		<h3>[name]([param:Float radius], [param:Integer segments], [param:Float thetaStart], [param:Float thetaLength])</h3>
 		<p>
-		radius — Radius of the circle, default = 1.<br />
-		segments — Number of segments (triangles), minimum = 3, default = 8.<br />
-		thetaStart — Start angle for first segment, default = 0 (three o'clock position).<br />
-		thetaLength — The central angle, often called theta, of the circular sector. The default is 2*Pi, which makes for a complete circle.
+		radius — 圆形的半径,默认值为1<br />
+		segments — 分段(三角面)的数量,最小值为3,默认值为8。<br />
+		thetaStart — 第一个分段的起始角度,默认为0。(three o'clock position)<br />
+		thetaLength — 圆形扇区的中心角,通常被称为“θ”(西塔)。默认值是2*Pi,这使其成为一个完整的圆。
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Object parameters]</h3>
 		<p>
-		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
-		</p>
+				一个包含着构造函数中每个参数的对象。在对象实例化之后,对该属性的任何修改都不会改变这个几何体。
+			</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/CircleGeometry.js src/geometries/CircleGeometry.js]
 	</body>

+ 13 - 12
docs/api/zh/geometries/CircleGeometry.html

@@ -10,9 +10,10 @@
 	<body>
 		[page:Geometry] &rarr;
 
-		<h1>[name]</h1>
+		<h1>圆形几何体([name]</h1>
 
-		<p class="desc">CircleGeometry is a simple shape of Euclidean geometry.  It is contructed from a number of triangular segments that are oriented around a central point and extend as far out as a given radius.  It is built counter-clockwise from a start angle and a given central angle.  It can also be used to create regular polygons, where the number of segments determines the number of sides.
+		<p class="desc">CircleGeometry是欧式几何的一个简单形状,它由围绕着一个中心点的三角分段的数量所构造,由给定的半径来延展。
+			同时它也可以用于创建规则多边形,其分段数量取决于该规则多边形的边数。
 		</p>
 
 		<iframe id="scene" src="scenes/geometry-browser.html#CircleGeometry"></iframe>
@@ -33,7 +34,7 @@
 
 		</script>
 
-		<h2>Example</h2>
+		<h2>示例</h2>
 
 		<code>
 		var geometry = new THREE.CircleGeometry( 5, 32 );
@@ -42,24 +43,24 @@
 		scene.add( circle );
 		</code>
 
-		<h2>Constructor</h2>
+		<h2>构造器</h2>
 
 		<h3>[name]([param:Float radius], [param:Integer segments], [param:Float thetaStart], [param:Float thetaLength])</h3>
 		<p>
-		radius — Radius of the circle, default = 1.<br />
-		segments — Number of segments (triangles), minimum = 3, default = 8.<br />
-		thetaStart — Start angle for first segment, default = 0 (three o'clock position).<br />
-		thetaLength — The central angle, often called theta, of the circular sector. The default is 2*Pi, which makes for a complete circle.
+			radius — 圆形的半径,默认值为1<br />
+			segments — 分段(三角面)的数量,最小值为3,默认值为8。<br />
+			thetaStart — 第一个分段的起始角度,默认为0。(three o'clock position)<br />
+			thetaLength — 圆形扇区的中心角,通常被称为“θ”(西塔)。默认值是2*Pi,这使其成为一个完整的圆。
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Object parameters]</h3>
 		<p>
-		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
-		</p>
+				一个包含着构造函数中每个参数的对象。在对象实例化之后,对该属性的任何修改都不会改变这个几何体。
+			</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

+ 15 - 15
docs/api/zh/geometries/ConeBufferGeometry.html

@@ -10,9 +10,9 @@
 	<body>
 		[page:CylinderBufferGeometry] &rarr;
 
-		<h1>[name]</h1>
+		<h1>圆锥缓冲几何体([name]</h1>
 
-		<p class="desc">This is the [page:BufferGeometry] port of [page:ConeGeometry].</p>
+		<p class="desc">这是[page:ConeGeometry]中的[page:BufferGeometry]接口。</p>
 
 		<iframe id="scene" src="scenes/geometry-browser.html#ConeBufferGeometry"></iframe>
 
@@ -32,7 +32,7 @@
 
 		</script>
 
-		<h2>Example</h2>
+		<h2>示例</h2>
 
 		<code>var geometry = new THREE.ConeBufferGeometry( 5, 20, 32 );
 		var material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
@@ -40,27 +40,27 @@
 		scene.add( cone );
 		</code>
 
-		<h2>Constructor</h2>
+		<h2>构造器</h2>
 
 		<h3>[name]([param:Float radius], [param:Float height], [param:Integer radialSegments], [param:Integer heightSegments], [param:Boolean openEnded], [param:Float thetaStart], [param:Float thetaLength])</h3>
 		<p>
-		radius — Radius of the cone base. Default is 1.<br />
-		height — Height of the cone. Default is 1.<br />
-		radialSegments — Number of segmented faces around the circumference of the cone. Default is 8<br />
-		heightSegments — Number of rows of faces along the height of the cone. Default is 1.<br />
-		openEnded — A Boolean indicating whether the base of the cone is open or capped. Default is false, meaning capped.<br />
-		thetaStart — Start angle for first segment, default = 0 (three o'clock position).<br />
-		thetaLength — The central angle, often called theta, of the circular sector. The default is 2*Pi, which makes for a complete cone.
+		radius — 圆锥底部的半径,默认值为1。<br />
+		height — 圆锥的高度,默认值为1。<br />
+		radialSegments —  圆锥侧面周围的分段数,默认为8。<br />
+		heightSegments — 圆锥侧面沿着其高度的分段数,默认值为1。<br />
+		openEnded — 一个Boolean值,指明该圆锥的底面是开放的还是封顶的。默认值为false,即其底面默认是封顶的。<br />
+		thetaStart — 第一个分段的起始角度,默认为0。(three o'clock position)<br />
+		thetaLength — 圆锥底面圆扇区的中心角,通常被称为“θ”(西塔)。默认值是2*Pi,这使其成为一个完整的圆锥。
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Object parameters]</h3>
 		<p>
-		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
-		</p>
+				一个包含着构造函数中每个参数的对象。在对象实例化之后,对该属性的任何修改都不会改变这个几何体。
+			</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/ConeGeometry.js src/geometries/ConeGeometry.js]
 	</body>

+ 14 - 14
docs/api/zh/geometries/ConeGeometry.html

@@ -10,9 +10,9 @@
 	<body>
 		[page:CylinderGeometry] &rarr;
 
-		<h1>[name]</h1>
+		<h1>圆锥几何体([name]</h1>
 
-		<p class="desc">A class for generating cone geometries</p>
+		<p class="desc">一个用于生成圆锥几何体的类。</p>
 
 		<iframe id="scene" src="scenes/geometry-browser.html#ConeGeometry"></iframe>
 
@@ -32,7 +32,7 @@
 
 		</script>
 
-		<h2>Example</h2>
+		<h2>示例</h2>
 
 		<code>var geometry = new THREE.ConeGeometry( 5, 20, 32 );
 		var material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
@@ -40,25 +40,25 @@
 		scene.add( cone );
 		</code>
 
-		<h2>Constructor</h2>
+		<h2>构造器</h2>
 
 		<h3>[name]([param:Float radius], [param:Float height], [param:Integer radialSegments], [param:Integer heightSegments], [param:Boolean openEnded], [param:Float thetaStart], [param:Float thetaLength])</h3>
 		<p>
-		radius — Radius of the cone at the base. Default is 1.<br />
-		height — Height of the cone. Default is 1.<br />
-		radialSegments — Number of segmented faces around the circumference of the cone. Default is 8<br />
-		heightSegments — Number of rows of faces along the height of the cone. Default is 1.<br />
-		openEnded — A Boolean indicating whether the base of the cone is open or capped. Default is false, meaning capped.<br />
-		thetaStart — Start angle for first segment, default = 0 (three o'clock position).<br />
-		thetaLength — The central angle, often called theta, of the circular sector. The default is 2*Pi, which makes for a complete cone.
+				radius — 圆锥底部的半径,默认值为1。<br />
+				height — 圆锥的高度,默认值为1。<br />
+				radialSegments — 圆锥侧面周围的分段数,默认为8。<br />
+				heightSegments — 圆锥侧面沿着其高度的分段数,默认值为1。<br />
+				openEnded — 一个Boolean值,指明该圆锥的底面是开放的还是封顶的。默认值为false,即其底面默认是封顶的。<br />
+				thetaStart — 第一个分段的起始角度,默认为0。(three o'clock position)<br />
+				thetaLength — 圆锥底面圆扇区的中心角,通常被称为“θ”(西塔)。默认值是2*Pi,这使其成为一个完整的圆锥。
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Object parameters]</h3>
 		<p>
-		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
-		</p>
+				一个包含着构造函数中每个参数的对象。在对象实例化之后,对该属性的任何修改都不会改变这个几何体。
+			</p>
 
 		<h2>Source</h2>
 

+ 14 - 14
docs/api/zh/geometries/CylinderBufferGeometry.html

@@ -10,9 +10,9 @@
 	<body>
 		[page:BufferGeometry] &rarr;
 
-		<h1>[name]</h1>
+		<h1>圆柱缓冲几何体([name]</h1>
 
-		<p class="desc">This is the [page:BufferGeometry] port of [page:CylinderGeometry].</p>
+		<p class="desc">这是[page:CylinderGeometry]中的[page:BufferGeometry]接口。</p>
 
 		<iframe id="scene" src="scenes/geometry-browser.html#CylinderBufferGeometry"></iframe>
 
@@ -32,7 +32,7 @@
 
 		</script>
 
-		<h2>Example</h2>
+		<h2>示例</h2>
 
 		<code>var geometry = new THREE.CylinderBufferGeometry( 5, 5, 20, 32 );
 		var material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
@@ -44,24 +44,24 @@
 
 		<h3>[name]([param:Float radiusTop], [param:Float radiusBottom], [param:Float height], [param:Integer radialSegments], [param:Integer heightSegments], [param:Boolean openEnded], [param:Float thetaStart], [param:Float thetaLength])</h3>
 		<p>
-		radiusTop — Radius of the cylinder at the top. Default is 1.<br />
-		radiusBottom — Radius of the cylinder at the bottom. Default is 1.<br />
-		height — Height of the cylinder. Default is 1.<br />
-		radialSegments — Number of segmented faces around the circumference of the cylinder. Default is 8<br />
-		heightSegments — Number of rows of faces along the height of the cylinder. Default is 1.<br />
-		openEnded — A Boolean indicating whether the ends of the cylinder are open or capped. Default is false, meaning capped.<br />
-		thetaStart — Start angle for first segment, default = 0 (three o'clock position).<br />
-		thetaLength — The central angle, often called theta, of the circular sector. The default is 2*Pi, which makes for a complete cylinder.
+		radiusTop — 圆柱的顶部半径,默认值是1。<br />
+		radiusBottom — 圆柱的底部半径,默认值是1。<br />
+		height — 圆柱的高度,默认值是1。<br />
+		radialSegments —  圆柱侧面周围的分段数,默认为8。<br />
+		heightSegments — 圆柱侧面沿着其高度的分段数,默认值为1。<br />
+		openEnded — 一个Boolean值,指明该圆锥的底面是开放的还是封顶的。默认值为false,即其底面默认是封顶的。<br />
+		thetaStart — 第一个分段的起始角度,默认为0。(three o'clock position)<br />
+		thetaLength — 圆柱底面圆扇区的中心角,通常被称为“θ”(西塔)。默认值是2*Pi,这使其成为一个完整的圆柱。
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Object parameters]</h3>
 		<p>
-		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
+				一个包含着构造函数中每个参数的对象。在对象实例化之后,对该属性的任何修改都不会改变这个几何体。
 		</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/CylinderGeometry.js src/geometries/CylinderGeometry.js]
 	</body>

+ 15 - 15
docs/api/zh/geometries/CylinderGeometry.html

@@ -10,9 +10,9 @@
 	<body>
 		[page:Geometry] &rarr;
 
-		<h1>[name]</h1>
+		<h1>圆柱几何体([name]</h1>
 
-		<p class="desc">A class for generating cylinder geometries</p>
+		<p class="desc">一个用于生成圆柱几何体的类</p>
 
 		<iframe id="scene" src="scenes/geometry-browser.html#CylinderGeometry"></iframe>
 
@@ -32,7 +32,7 @@
 
 		</script>
 
-		<h2>Example</h2>
+		<h2>示例</h2>
 
 		<code>var geometry = new THREE.CylinderGeometry( 5, 5, 20, 32 );
 		var material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
@@ -40,28 +40,28 @@
 		scene.add( cylinder );
 		</code>
 
-		<h2>Constructor</h2>
+		<h2>构造器</h2>
 
 		<h3>[name]([param:Float radiusTop], [param:Float radiusBottom], [param:Float height], [param:Integer radialSegments], [param:Integer heightSegments], [param:Boolean openEnded], [param:Float thetaStart], [param:Float thetaLength])</h3>
 		<p>
-		radiusTop — Radius of the cylinder at the top. Default is 1.<br />
-		radiusBottom — Radius of the cylinder at the bottom. Default is 1.<br />
-		height — Height of the cylinder. Default is 1.<br />
-		radialSegments — Number of segmented faces around the circumference of the cylinder. Default is 8<br />
-		heightSegments — Number of rows of faces along the height of the cylinder. Default is 1.<br />
-		openEnded — A Boolean indicating whether the ends of the cylinder are open or capped. Default is false, meaning capped.<br />
-		thetaStart — Start angle for first segment, default = 0 (three o'clock position).<br />
-		thetaLength — The central angle, often called theta, of the circular sector. The default is 2*Pi, which makes for a complete cylinder.
+				radiusTop — 圆柱的顶部半径,默认值是1。<br />
+				radiusBottom — 圆柱的底部半径,默认值是1。<br />
+				height — 圆柱的高度,默认值是1。<br />
+				radialSegments —  圆柱侧面周围的分段数,默认为8。<br />
+				heightSegments — 圆柱侧面沿着其高度的分段数,默认值为1。<br />
+				openEnded — 一个Boolean值,指明该圆锥的底面是开放的还是封顶的。默认值为false,即其底面默认是封顶的。<br />
+				thetaStart — 第一个分段的起始角度,默认为0。(three o'clock position)<br />
+				thetaLength — 圆柱底面圆扇区的中心角,通常被称为“θ”(西塔)。默认值是2*Pi,这使其成为一个完整的圆柱。
 		</p>
 
-		<h2>Properties</h2>
+		<h2>属性</h2>
 
 		<h3>[property:Object parameters]</h3>
 		<p>
-		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
+				一个包含着构造函数中每个参数的对象。在对象实例化之后,对该属性的任何修改都不会改变这个几何体。
 		</p>
 
-		<h2>Source</h2>
+		<h2>源代码</h2>
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 	</body>

Неке датотеке нису приказане због велике количине промена