Mr.doob 5 years ago
parent
commit
319f0598c2
100 changed files with 3428 additions and 2636 deletions
  1. 249 241
      build/three.js
  2. 327 335
      build/three.min.js
  3. 238 230
      build/three.module.js
  4. 7 0
      docs/api/en/animation/AnimationMixer.html
  5. 5 0
      docs/api/en/audio/Audio.html
  6. 1 1
      docs/api/en/constants/Renderer.html
  7. 0 7
      docs/api/en/core/BufferAttribute.html
  8. 0 5
      docs/api/en/core/InterleavedBuffer.html
  9. 4 2
      docs/api/en/core/bufferAttributeTypes/BufferAttributeTypes.html
  10. 0 25
      docs/api/en/loaders/Loader.html
  11. 33 8
      docs/api/en/loaders/managers/LoadingManager.html
  12. 0 3
      docs/api/en/materials/LineBasicMaterial.html
  13. 0 3
      docs/api/en/materials/LineDashedMaterial.html
  14. 8 6
      docs/api/en/materials/Material.html
  15. 0 3
      docs/api/en/materials/MeshBasicMaterial.html
  16. 0 3
      docs/api/en/materials/MeshDepthMaterial.html
  17. 0 3
      docs/api/en/materials/MeshDistanceMaterial.html
  18. 0 3
      docs/api/en/materials/MeshNormalMaterial.html
  19. 1 1
      docs/api/en/materials/RawShaderMaterial.html
  20. 0 3
      docs/api/en/materials/ShaderMaterial.html
  21. 0 3
      docs/api/en/materials/ShadowMaterial.html
  22. 0 3
      docs/api/en/materials/SpriteMaterial.html
  23. 3 3
      docs/api/en/math/Vector3.html
  24. 4 1
      docs/api/en/renderers/WebGLRenderer.html
  25. 0 1
      docs/api/en/textures/DataTexture.html
  26. 5 5
      docs/api/en/textures/DataTexture3D.html
  27. 1 1
      docs/api/zh/cameras/ArrayCamera.html
  28. 0 1
      docs/api/zh/cameras/OrthographicCamera.html
  29. 0 2
      docs/api/zh/cameras/PerspectiveCamera.html
  30. 3 1
      docs/api/zh/constants/Renderer.html
  31. 0 7
      docs/api/zh/core/BufferAttribute.html
  32. 0 5
      docs/api/zh/core/InterleavedBuffer.html
  33. 10 0
      docs/api/zh/core/Layers.html
  34. 0 4
      docs/api/zh/lights/AmbientLight.html
  35. 0 1
      docs/api/zh/lights/DirectionalLight.html
  36. 0 1
      docs/api/zh/lights/PointLight.html
  37. 36 46
      docs/api/zh/lights/shadows/LightShadow.html
  38. 82 0
      docs/api/zh/lights/shadows/PointLightShadow.html
  39. 2 2
      docs/api/zh/loaders/AnimationLoader.html
  40. 2 2
      docs/api/zh/loaders/AudioLoader.html
  41. 2 2
      docs/api/zh/loaders/BufferGeometryLoader.html
  42. 2 2
      docs/api/zh/loaders/CubeTextureLoader.html
  43. 2 2
      docs/api/zh/loaders/DataTextureLoader.html
  44. 2 2
      docs/api/zh/loaders/FileLoader.html
  45. 2 2
      docs/api/zh/loaders/FontLoader.html
  46. 2 2
      docs/api/zh/loaders/ImageBitmapLoader.html
  47. 2 2
      docs/api/zh/loaders/ImageLoader.html
  48. 3 28
      docs/api/zh/loaders/Loader.html
  49. 2 2
      docs/api/zh/loaders/MaterialLoader.html
  50. 2 2
      docs/api/zh/loaders/ObjectLoader.html
  51. 2 2
      docs/api/zh/loaders/TextureLoader.html
  52. 36 10
      docs/api/zh/loaders/managers/LoadingManager.html
  53. 0 3
      docs/api/zh/materials/LineBasicMaterial.html
  54. 0 4
      docs/api/zh/materials/LineDashedMaterial.html
  55. 12 5
      docs/api/zh/materials/Material.html
  56. 0 3
      docs/api/zh/materials/MeshBasicMaterial.html
  57. 0 3
      docs/api/zh/materials/MeshDepthMaterial.html
  58. 0 3
      docs/api/zh/materials/MeshDistanceMaterial.html
  59. 0 3
      docs/api/zh/materials/MeshNormalMaterial.html
  60. 0 3
      docs/api/zh/materials/ShadowMaterial.html
  61. 0 3
      docs/api/zh/materials/SpriteMaterial.html
  62. 4 1
      docs/api/zh/renderers/WebGLRenderer.html
  63. 1 1
      docs/api/zh/textures/DataTexture3D.html
  64. 89 0
      docs/examples/en/controls/DeviceOrientationControls.html
  65. 119 0
      docs/examples/en/controls/DragControls.html
  66. 166 0
      docs/examples/en/controls/FirstPersonControls.html
  67. 95 0
      docs/examples/en/controls/FlyControls.html
  68. 149 0
      docs/examples/en/controls/PointerLockControls.html
  69. 208 0
      docs/examples/en/controls/TrackballControls.html
  70. 225 0
      docs/examples/en/controls/TransformControls.html
  71. 1 0
      docs/examples/en/exporters/GLTFExporter.html
  72. 0 101
      docs/examples/en/loaders/BabylonLoader.html
  73. 5 8
      docs/examples/en/loaders/BasisTextureLoader.html
  74. 4 13
      docs/examples/en/loaders/DRACOLoader.html
  75. 3 22
      docs/examples/en/loaders/GLTFLoader.html
  76. 0 543
      docs/examples/en/loaders/LoaderSupport.html
  77. 3 22
      docs/examples/en/loaders/MMDLoader.html
  78. 3 31
      docs/examples/en/loaders/MTLLoader.html
  79. 3 6
      docs/examples/en/loaders/OBJLoader.html
  80. 61 67
      docs/examples/en/loaders/OBJLoader2.html
  81. 109 0
      docs/examples/en/loaders/OBJLoader2Parallel.html
  82. 3 8
      docs/examples/en/loaders/PCDLoader.html
  83. 3 9
      docs/examples/en/loaders/PDBLoader.html
  84. 3 15
      docs/examples/en/loaders/PRWMLoader.html
  85. 3 9
      docs/examples/en/loaders/SVGLoader.html
  86. 6 9
      docs/examples/en/loaders/TGALoader.html
  87. 89 0
      docs/examples/zh/controls/DeviceOrientationControls.html
  88. 119 0
      docs/examples/zh/controls/DragControls.html
  89. 166 0
      docs/examples/zh/controls/FirstPersonControls.html
  90. 95 0
      docs/examples/zh/controls/FlyControls.html
  91. 149 0
      docs/examples/zh/controls/PointerLockControls.html
  92. 208 0
      docs/examples/zh/controls/TrackballControls.html
  93. 225 0
      docs/examples/zh/controls/TransformControls.html
  94. 1 0
      docs/examples/zh/exporters/GLTFExporter.html
  95. 0 101
      docs/examples/zh/loaders/BabylonLoader.html
  96. 5 8
      docs/examples/zh/loaders/BasisTextureLoader.html
  97. 4 13
      docs/examples/zh/loaders/DRACOLoader.html
  98. 3 22
      docs/examples/zh/loaders/GLTFLoader.html
  99. 0 543
      docs/examples/zh/loaders/LoaderSupport.html
  100. 6 25
      docs/examples/zh/loaders/MMDLoader.html

File diff suppressed because it is too large
+ 249 - 241
build/three.js


File diff suppressed because it is too large
+ 327 - 335
build/three.min.js


File diff suppressed because it is too large
+ 238 - 230
build/three.module.js


+ 7 - 0
docs/api/en/animation/AnimationMixer.html

@@ -85,6 +85,13 @@
 			This is usually done in the render loop, passing [page:Clock.getDelta clock.getDelta] scaled by the mixer's [page:.timeScale timeScale]).
 			This is usually done in the render loop, passing [page:Clock.getDelta clock.getDelta] scaled by the mixer's [page:.timeScale timeScale]).
 		</p>
 		</p>
 
 
+		<h3>[method:AnimationMixer setTime]([param:Number timeInSeconds]) </h3>
+		<p>
+			Sets the global mixer to a specific time and updates the animation accordingly.<br /><br />
+
+			This is useful when you need to jump to an exact time in an animation. The input parameter will be scaled by the mixer's [page:.timeScale timeScale].
+		</p>
+
 		<h3>[method:null uncacheClip]([param:AnimationClip clip])</h3>
 		<h3>[method:null uncacheClip]([param:AnimationClip clip])</h3>
 
 
 		<p>
 		<p>

+ 5 - 0
docs/api/en/audio/Audio.html

@@ -192,7 +192,12 @@
 		<p>
 		<p>
 		Applies the given object of type [link:https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement HTMLMediaElement] as the source of this audio.<br />
 		Applies the given object of type [link:https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement HTMLMediaElement] as the source of this audio.<br />
 		Also sets [page:Audio.hasPlaybackControl hasPlaybackControl] to false.
 		Also sets [page:Audio.hasPlaybackControl hasPlaybackControl] to false.
+		</p>
 
 
+		<h3>[method:Audio setMediaStreamSource]( mediaStream )</h3>
+		<p>
+		Applies the given object of type [link:https://developer.mozilla.org/en-US/docs/Web/API/MediaStream MediaStream] as the source of this audio.<br />
+		Also sets [page:Audio.hasPlaybackControl hasPlaybackControl] to false.
 		</p>
 		</p>
 
 
 		<h3>[method:Audio setNodeSource]( audioNode )</h3>
 		<h3>[method:Audio setNodeSource]( audioNode )</h3>

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

@@ -47,7 +47,7 @@
 		[page:constant BasicShadowMap] gives unfiltered shadow maps - fastest, but lowest quality.<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 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.<br />
 		[page:constant PCFSoftShadowMap] filters shadow maps using the Percentage-Closer Soft Shadows (PCSS) algorithm.<br />
-		[page:constant VSMShadowMap] filters shadow maps using the Variance Shadow Map (VSM) algorithm.
+		[page:constant VSMShadowMap] filters shadow maps using the Variance Shadow Map (VSM) algorithm. When using VSMShadowMap all shadow receivers will also cast shadows.
 		</p>
 		</p>
 
 
 		<h2>Tone Mapping</h2>
 		<h2>Tone Mapping</h2>

+ 0 - 7
docs/api/en/core/BufferAttribute.html

@@ -178,13 +178,6 @@
 		being a [page:TypedArray].
 		being a [page:TypedArray].
 		</p>
 		</p>
 
 
-		<h3>[method:BufferAttribute setArray] ( [param:TypedArray array] ) </h3>
-		<p>
-		[page:BufferAttribute.array array] to the TypedArray passed in here.<br /><br />
-
-		After setting the array, [page:BufferAttribute.needsUpdate needsUpdate] should be set to true.
-		</p>
-
 		<h3>[method:BufferAttribute setDynamic] ( [param:Boolean value] ) </h3>
 		<h3>[method:BufferAttribute setDynamic] ( [param:Boolean value] ) </h3>
 		<p>Set [page:BufferAttribute.dynamic dynamic] to value.</p>
 		<p>Set [page:BufferAttribute.dynamic dynamic] to value.</p>
 
 

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

@@ -81,11 +81,6 @@
 
 
 		<h2>Methods</h2>
 		<h2>Methods</h2>
 
 
-		<h3>[method:InterleavedBuffer setArray] ( [param:TypedArray array] ) </h3>
-		<p>
-		 array - must be  a Typed Array.
-		</p>
-
 		<h3>[method:InterleavedBuffer setDynamic] ( [param:Boolean value] ) </h3>
 		<h3>[method:InterleavedBuffer setDynamic] ( [param:Boolean value] ) </h3>
 		<p>
 		<p>
 			Set [page:InterleavedBuffer.dynamic dynamic] to value.
 			Set [page:InterleavedBuffer.dynamic dynamic] to value.

+ 4 - 2
docs/api/en/core/bufferAttributeTypes/BufferAttributeTypes.html

@@ -33,9 +33,11 @@
 
 
 		<p>All of the above are called in the same way.</p>
 		<p>All of the above are called in the same way.</p>
 
 
-		<h3>TypedBufferAttribute( [param:Array array], [param:Integer itemSize], [param:Boolean normalized] )</h3>
+		<h3>TypedBufferAttribute( [param:Array_or_Integer array], [param:Integer itemSize], [param:Boolean normalized] )</h3>
 		<p>
 		<p>
-			array -- this can be a typed or untyped (normal) array. It will be converted to the Type specified.<br /><br />
+			array -- this can be a typed or untyped (normal) array or an integer length.
+			An array value will be converted to the Type specified.
+			If a length is given a new TypedArray will created, initialized with all elements set to zero.<br /><br />
 
 
 			itemSize -- the number of values of the array that should be associated with a particular vertex.<br /><br />
 			itemSize -- the number of values of the array that should be associated with a particular vertex.<br /><br />
 
 

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

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

+ 33 - 8
docs/api/en/loaders/managers/LoadingManager.html

@@ -23,7 +23,6 @@
 		<h2>Example</h2>
 		<h2>Example</h2>
 
 
 		<p>
 		<p>
-			[example:webgl_loader_babylon WebGL / loader / babylon]<br />
 			[example:webgl_loader_fbx WebGL / loader / fbx]<br />
 			[example:webgl_loader_fbx WebGL / loader / fbx]<br />
 			[example:webgl_loader_obj WebGL / loader / obj]<br />
 			[example:webgl_loader_obj WebGL / loader / obj]<br />
 			[example:webgl_materials_reflectivity WebGL / materials / reflectivity]<br />
 			[example:webgl_materials_reflectivity WebGL / materials / reflectivity]<br />
@@ -160,14 +159,31 @@
 
 
 		<h2>Methods</h2>
 		<h2>Methods</h2>
 
 
-		<h3>[method:null setURLModifier]( [param:Function callback] )</h3>
+		<h3>[method:LoadingManager addHandler]( [param:Object regex], [param:Loader loader] )</h3>
 		<p>
 		<p>
-		[page:Function callback] — URL modifier callback. Called with [page:String url] argument, and
-		must return [page:String resolvedURL].<br /><br />
+		[page:Object regex] — A regular expression.<br />
+		[page:Loader loader] — The loader.
+		<p>
+		Registers a loader with the given regular expression. Can be used to define what loader should be used in
+		order to load specific files. A typical use case is to overwrite the default loader for textures.
+		</p>
+		<code>
+// add handler for TGA textures
+manager.addHandler( /\.tga$/i, new TGALoader() );
+		</code>
 
 
-		If provided, the callback will be passed each resource URL before a request is sent. The
-		callback may return the original URL, or a new URL to override loading behavior. This
-		behavior can be used to load assets from .ZIP files, drag-and-drop APIs, and Data URIs.
+		<h3>[method:null getHandler]( [param:String file] )</h3>
+		<p>
+		[page:String file] — The file path.
+		<p>
+		Can be used to retrieve the registered loader for the given file path.
+		</p>
+
+		<h3>[method:LoadingManager removeHandler]( [param:Object regex] )</h3>
+		<p>
+		[page:Object regex] — A regular expression.
+		<p>
+		Removes the loader for the given regular expression.
 		</p>
 		</p>
 
 
 		<h3>[method:String resolveURL]( [param:String url] )</h3>
 		<h3>[method:String resolveURL]( [param:String url] )</h3>
@@ -178,6 +194,16 @@
 		URL modifier is set, returns the original URL.
 		URL modifier is set, returns the original URL.
 		</p>
 		</p>
 
 
+		<h3>[method:null setURLModifier]( [param:Function callback] )</h3>
+		<p>
+		[page:Function callback] — URL modifier callback. Called with [page:String url] argument, and
+		must return [page:String resolvedURL].<br /><br />
+
+		If provided, the callback will be passed each resource URL before a request is sent. The
+		callback may return the original URL, or a new URL to override loading behavior. This
+		behavior can be used to load assets from .ZIP files, drag-and-drop APIs, and Data URIs.
+		</p>
+
 		<br /><br />
 		<br /><br />
 		<p>
 		<p>
 			<em>Note: The following methods are designed to be called internally by loaders. You shouldn't call
 			<em>Note: The following methods are designed to be called internally by loaders. You shouldn't call
@@ -198,7 +224,6 @@
 		This should be called by any loader using the manager when the loader ended loading an url.
 		This should be called by any loader using the manager when the loader ended loading an url.
 		</p>
 		</p>
 
 
-
 		<h3>[method:null itemError]( [param:String url] )</h3>
 		<h3>[method:null itemError]( [param:String url] )</h3>
 		<p>
 		<p>
 		[page:String url] — the loaded url<br /><br />
 		[page:String url] — the loaded url<br /><br />

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

@@ -67,9 +67,6 @@ var material = new THREE.LineBasicMaterial( {
 			You should not change this, as it used internally for optimisation.
 			You should not change this, as it used internally for optimisation.
 		</p>
 		</p>
 
 
-		<h3>[property:Boolean lights]</h3>
-		<p>Whether the material is affected by lights. Default is *false*.</p>
-
 		<h3>[property:Float linewidth]</h3>
 		<h3>[property:Float linewidth]</h3>
 		<p>
 		<p>
 			Controls line thickness. Default is *1*.<br /><br />
 			Controls line thickness. Default is *1*.<br /><br />

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

@@ -62,9 +62,6 @@ var material = new THREE.LineDashedMaterial( {
 			You should not change this, as it used internally for optimisation.
 			You should not change this, as it used internally for optimisation.
 		</p>
 		</p>
 
 
-		<h3>[property:Boolean lights]</h3>
-		<p>Whether the material is affected by lights. Default is *false*.</p>
-
 		<h3>[property:Float linewidth]</h3>
 		<h3>[property:Float linewidth]</h3>
 		<p>
 		<p>
 			Controls line thickness. Default is *1*.<br /><br />
 			Controls line thickness. Default is *1*.<br /><br />

+ 8 - 6
docs/api/en/materials/Material.html

@@ -128,6 +128,11 @@
 		Whether rendering this material has any effect on the stencil buffer. Default is *false*.
 		Whether rendering this material has any effect on the stencil buffer. Default is *false*.
 		</p>
 		</p>
 
 
+		<h3>[property:Boolean stencilWriteMask]</h3>
+		<p>
+		The bit mask to use when writing to the stencil buffer. Default is *0xFF*.
+		</p>
+
 		<h3>[property:Boolean stencilFunc]</h3>
 		<h3>[property:Boolean stencilFunc]</h3>
 		<p>
 		<p>
 		The stencil comparison function to use. Default is [page:Materials AlwaysStencilFunc]. See stencil function [page:Materials constants] for all possible values.
 		The stencil comparison function to use. Default is [page:Materials AlwaysStencilFunc]. See stencil function [page:Materials constants] for all possible values.
@@ -138,9 +143,9 @@
 		The value to use when performing stencil comparisons or stencil operations. Default is *0*.
 		The value to use when performing stencil comparisons or stencil operations. Default is *0*.
 		</p>
 		</p>
 
 
-		<h3>[property:Boolean stencilMask]</h3>
+		<h3>[property:Boolean stencilFuncMask]</h3>
 		<p>
 		<p>
-		The bit mask to use when comparing against or writing to the stencil buffer. Default is *0xFF*.
+		The bit mask to use when comparing against the stencil buffer. Default is *0xFF*.
 		</p>
 		</p>
 
 
 		<h3>[property:Integer stencilFail]</h3>
 		<h3>[property:Integer stencilFail]</h3>
@@ -176,9 +181,6 @@
 			You should not change this, as it used internally for optimisation.
 			You should not change this, as it used internally for optimisation.
 		</p>
 		</p>
 
 
-		<h3>[property:Boolean lights]</h3>
-		<p>Whether the material is affected by lights. Default is *true*.</p>
-
 		<h3>[property:String name]</h3>
 		<h3>[property:String name]</h3>
 		<p>Optional name of the object (doesn't need to be unique). Default is an empty string.</p>
 		<p>Optional name of the object (doesn't need to be unique). Default is an empty string.</p>
 
 
@@ -278,7 +280,7 @@
 		as transparent objects need special treatment and are rendered after
 		as transparent objects need special treatment and are rendered after
 		non-transparent objects. <br />
 		non-transparent objects. <br />
 		When set to true, the extent to which the material is transparent is
 		When set to true, the extent to which the material is transparent is
-		controlled by setting it's [page:Float opacity] property. <br />
+		controlled by setting its [page:Float opacity] property. <br />
 		Default is *false*.
 		Default is *false*.
 		</p>
 		</p>
 
 

+ 0 - 3
docs/api/en/materials/MeshBasicMaterial.html

@@ -100,9 +100,6 @@
 		<h3>[property:Float lightMapIntensity]</h3>
 		<h3>[property:Float lightMapIntensity]</h3>
 		<p>Intensity of the baked light. Default is 1.</p>
 		<p>Intensity of the baked light. Default is 1.</p>
 
 
-		<h3>[property:Boolean lights]</h3>
-		<p>Whether the material is affected by lights. Default is *false*.</p>
-
 		<h3>[property:Texture map]</h3>
 		<h3>[property:Texture map]</h3>
 		<p>The color map. Default is  null.</p>
 		<p>The color map. Default is  null.</p>
 
 

+ 0 - 3
docs/api/en/materials/MeshDepthMaterial.html

@@ -89,9 +89,6 @@
 			You should not change this, as it used internally for optimisation.
 			You should not change this, as it used internally for optimisation.
 		</p>
 		</p>
 
 
-		<h3>[property:Boolean lights]</h3>
-		<p>Whether the material is affected by lights. Default is *false*.</p>
-
 		<h3>[property:Texture map]</h3>
 		<h3>[property:Texture map]</h3>
 		<p>The color map. Default is  null.</p>
 		<p>The color map. Default is  null.</p>
 
 

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

@@ -98,9 +98,6 @@
 			You should not change this, as it used internally for optimisation.
 			You should not change this, as it used internally for optimisation.
 		</p>
 		</p>
 
 
-		<h3>[property:Boolean lights]</h3>
-		<p>Whether the material is affected by lights. Default is *false*.</p>
-
 		<h3>[property:Texture map]</h3>
 		<h3>[property:Texture map]</h3>
 		<p>The color map. Default is  null.</p>
 		<p>The color map. Default is  null.</p>
 
 

+ 0 - 3
docs/api/en/materials/MeshNormalMaterial.html

@@ -86,9 +86,6 @@
 			You should not change this, as it used internally for optimisation.
 			You should not change this, as it used internally for optimisation.
 		</p>
 		</p>
 
 
-		<h3>[property:Boolean lights]</h3>
-		<p>Whether the material is affected by lights. Default is *false*.</p>
-
 		<h3>[property:boolean morphNormals]</h3>
 		<h3>[property:boolean morphNormals]</h3>
 		<p>
 		<p>
 			Defines whether the material uses morphNormals. Set as true to pass morphNormal
 			Defines whether the material uses morphNormals. Set as true to pass morphNormal

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

@@ -50,7 +50,7 @@ var material = new THREE.RawShaderMaterial( {
 
 
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
-		<p>See the base [page:Material] and [page:ShaderMaterial] classes for common methods.</p>
+		<p>See the base [page:Material] and [page:ShaderMaterial] classes for common properties.</p>
 
 
 		<h3>[property:Boolean isRawShaderMaterial]</h3>
 		<h3>[property:Boolean isRawShaderMaterial]</h3>
 		<p>
 		<p>

+ 0 - 3
docs/api/en/materials/ShaderMaterial.html

@@ -359,9 +359,6 @@ this.extensions = {
 			You should not change this, as it used internally for optimisation.
 			You should not change this, as it used internally for optimisation.
 		</p>
 		</p>
 
 
-
-
-
 		<h3>[property:Boolean lights]</h3>
 		<h3>[property:Boolean lights]</h3>
 		<p>
 		<p>
 		Defines whether this material uses lighting; true to pass uniform data related to lighting to this shader. Default is false.
 		Defines whether this material uses lighting; true to pass uniform data related to lighting to this shader. Default is false.

+ 0 - 3
docs/api/en/materials/ShadowMaterial.html

@@ -51,9 +51,6 @@ scene.add( plane );
 			You should not change this, as it used internally for optimisation.
 			You should not change this, as it used internally for optimisation.
 		</p>
 		</p>
 
 
-		<h3>[property:Boolean lights]</h3>
-		<p>Whether the material is affected by lights. Default is *true*.</p>
-
 		<h3>[property:Boolean transparent]</h3>
 		<h3>[property:Boolean transparent]</h3>
 		<p>Defines whether this material is transparent. Default is *true*.</p>
 		<p>Defines whether this material is transparent. Default is *true*.</p>
 
 

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

@@ -56,9 +56,6 @@ scene.add( sprite );
 		<h3>[property:boolean fog]</h3>
 		<h3>[property:boolean fog]</h3>
 		<p>Whether or not this material affected by the scene's fog. Default is false</p>
 		<p>Whether or not this material affected by the scene's fog. Default is false</p>
 
 
-		<h3>[property:Boolean lights]</h3>
-		<p>Whether the material is affected by lights. Default is *false*.</p>
-
 		<h3>[property:Texture map]</h3>
 		<h3>[property:Texture map]</h3>
 		<p>The texture map. Default is null.</p>
 		<p>The texture map. Default is null.</p>
 
 

+ 3 - 3
docs/api/en/math/Vector3.html

@@ -121,7 +121,7 @@ var d = a.distanceTo( b );
 
 
 		<h3>[method:Float angleTo]( [param:Vector3 v] )</h3>
 		<h3>[method:Float angleTo]( [param:Vector3 v] )</h3>
 		<p>
 		<p>
-		Returns the angle between this vector and vector [page:Vector3 v] in radians.
+		Returns the angle between this vector and vector [page:Vector3 v] in radians. Neither this vector nor [page:Vector3 v] can be the zero vector.
 		</p>
 		</p>
 
 
 		<h3>[method:this ceil]()</h3>
 		<h3>[method:this ceil]()</h3>
@@ -320,8 +320,8 @@ var d = a.distanceTo( b );
 		normal from this vector.
 		normal from this vector.
 		</p>
 		</p>
 
 
-		<h3>[method:this projectOnVector]( [param:Vector3] )</h3>
-		<p>[link:https://en.wikipedia.org/wiki/Vector_projection Projects] this vector onto another vector.</p>
+		<h3>[method:this projectOnVector]( [param:Vector3 v] )</h3>
+		<p>[link:https://en.wikipedia.org/wiki/Vector_projection Projects] this vector onto [page:Vector3 v]. [page:Vector3 v] cannot be the zero vector.</p>
 
 
 		<h3>[method:this reflect]( [param:Vector3 normal] )</h3>
 		<h3>[method:this reflect]( [param:Vector3 normal] )</h3>
 		<p>
 		<p>

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

@@ -65,7 +65,9 @@
 		Default is *true*.<br />
 		Default is *true*.<br />
 
 
 		[page:Boolean logarithmicDepthBuffer] -  whether to use a logarithmic depth buffer. It may
 		[page:Boolean logarithmicDepthBuffer] -  whether to use a logarithmic depth buffer. It may
-		be neccesary to use this if dealing with huge differences in scale in a single scene.
+		be neccesary to use this if dealing with huge differences in scale in a single scene. Note that this setting
+		uses gl_FragDepth if available which disables the [link:https://www.khronos.org/opengl/wiki/Early_Fragment_Test Early Fragment Test]
+		optimization and can cause a decrease in performance.
 		Default is *false*. See the [example:webgl_camera_logarithmicdepthbuffer camera / logarithmicdepthbuffer] example.
 		Default is *false*. See the [example:webgl_camera_logarithmicdepthbuffer camera / logarithmicdepthbuffer] example.
 		</p>
 		</p>
 
 
@@ -186,6 +188,7 @@
 					<li>triangles</li>
 					<li>triangles</li>
 					<li>points</li>
 					<li>points</li>
 					<li>lines</li>
 					<li>lines</li>
+					<li>frame</li>
 				</ul>
 				</ul>
 			</li>
 			</li>
 			<li>programs
 			<li>programs

+ 0 - 1
docs/api/en/textures/DataTexture.html

@@ -57,7 +57,6 @@
 		// used the buffer to create a [name]
 		// used the buffer to create a [name]
 
 
 		var texture = new THREE.DataTexture( data, width, height, THREE.RGBFormat );
 		var texture = new THREE.DataTexture( data, width, height, THREE.RGBFormat );
-		texture.needsUpdate = true
 		</code>
 		</code>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>

+ 5 - 5
docs/api/en/textures/DataTexture3D.html

@@ -30,15 +30,15 @@
 		<h2>Example</h2>
 		<h2>Example</h2>
 
 
 		<div>[example:webgl2_materials_texture3d WebGL2 / materials / texture3d]</div>
 		<div>[example:webgl2_materials_texture3d WebGL2 / materials / texture3d]</div>
-		<div>[example:webgl2_materials_texture3d_volume WebGL2 / materials / texture3d / volume]</div>
+		<div>[example:webgl2_materials_texture2darray WebGL2 / materials / texture2darray]</div>
 
 
-    <h2>Properties</h2>
+		<h2>Properties</h2>
 
 
 		<p>
 		<p>
-    See the base [page:Texture Texture] class for common properties.
-    </p>
+		See the base [page:Texture Texture] class for common properties.
+		</p>
 
 
-    <h3>[property:number wrapR]</h3>
+		<h3>[property:number wrapR]</h3>
 		<p>
 		<p>
 		This defines how the texture is wrapped in the depth direction.<br />
 		This defines how the texture is wrapped in the depth direction.<br />
 		The default is [page:Textures THREE.ClampToEdgeWrapping], where the edge is clamped to the outer edge texels.
 		The default is [page:Textures THREE.ClampToEdgeWrapping], where the edge is clamped to the outer edge texels.

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

@@ -8,7 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	</head>
 	<body>
 	<body>
-		[page:PerspectiveCamera] &rarr;
+		[page:Object3D] &rarr; [page:Camera] &rarr; [page:PerspectiveCamera] &rarr;
 
 
 		<h1>摄像机阵列([name])</h1>
 		<h1>摄像机阵列([name])</h1>
 
 

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

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

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

@@ -22,8 +22,6 @@
 
 
 		<h2>示例</h2>
 		<h2>示例</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_blending animation / skinning / blending ]</p>
 		<p>[example:webgl_animation_skinning_morph animation / skinning / blending ]</p>
 		<p>[example:webgl_animation_skinning_morph animation / skinning / blending ]</p>
 		<p>[example:webgl_effects_stereo effects / stereo ]</p>
 		<p>[example:webgl_effects_stereo effects / stereo ]</p>

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

@@ -39,13 +39,15 @@
 		THREE.BasicShadowMap
 		THREE.BasicShadowMap
 		THREE.PCFShadowMap
 		THREE.PCFShadowMap
 		THREE.PCFSoftShadowMap
 		THREE.PCFSoftShadowMap
+		THREE.VSMShadowMap
 		</code>
 		</code>
 		<p>
 		<p>
 			这些常量定义了WebGLRenderer中[page:WebGLRenderer.shadowMap.type shadowMap.type]的属性。<br /><br />
 			这些常量定义了WebGLRenderer中[page:WebGLRenderer.shadowMap.type shadowMap.type]的属性。<br /><br />
 
 
 		[page:constant BasicShadowMap] 能够给出没有经过过滤的阴影映射 —— 速度最快,但质量最差。<br />
 		[page:constant BasicShadowMap] 能够给出没有经过过滤的阴影映射 —— 速度最快,但质量最差。<br />
 		[page:constant PCFShadowMap] 为默认值,使用Percentage-Closer Filtering (PCF)算法来过滤阴影映射。<br />
 		[page:constant PCFShadowMap] 为默认值,使用Percentage-Closer Filtering (PCF)算法来过滤阴影映射。<br />
-		[page:constant PCFSoftShadowMap] 使用Percentage-Closer Soft Shadows (PCSS) 算法来过滤阴影映射。
+		[page:constant PCFSoftShadowMap] 使用Percentage-Closer Soft Shadows (PCSS) 算法来过滤阴影映射。<br />
+		[page:constant VSMShadowMap] filters shadow maps using the Variance Shadow Map (VSM) algorithm.
 		</p>
 		</p>
 
 
 		<h2>色调映射</h2>
 		<h2>色调映射</h2>

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

@@ -158,13 +158,6 @@
 		特别的, 对将 [page:Array value] 转为  [page:TypedArray] 的要求详见上述链接。
 		特别的, 对将 [page:Array value] 转为  [page:TypedArray] 的要求详见上述链接。
 		</p>
 		</p>
 
 
-		<h3>[method:BufferAttribute setArray] ( [param:TypedArray array] ) </h3>
-		<p>
-		[page:BufferAttribute.array array] 被赋值的 TypedArray 队列。<br /><br />
-
-		队列被复制后,[page:BufferAttribute.needsUpdate needsUpdate] 应当被设置为 true。
-		</p>
-
 		<h3>[method:BufferAttribute setDynamic] ( [param:Boolean value] ) </h3>
 		<h3>[method:BufferAttribute setDynamic] ( [param:Boolean value] ) </h3>
 		<p>将 [page:BufferAttribute.dynamic dynamic] 设置为 value.</p>
 		<p>将 [page:BufferAttribute.dynamic dynamic] 设置为 value.</p>
 
 

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

@@ -81,11 +81,6 @@
 
 
 		<h2>方法</h2>
 		<h2>方法</h2>
 
 
-		<h3>[method:InterleavedBuffer setArray] ( [param:TypedArray array] ) </h3>
-		<p>
-		 array - 必须是一个类型化的队列。
-		</p>
-
 		<h3>[method:InterleavedBuffer setDynamic] ( [param:Boolean value] ) </h3>
 		<h3>[method:InterleavedBuffer setDynamic] ( [param:Boolean value] ) </h3>
 		<p>
 		<p>
 			根据输入参数设置 [page:InterleavedBuffer.dynamic dynamic] 的值。
 			根据输入参数设置 [page:InterleavedBuffer.dynamic dynamic] 的值。

+ 10 - 0
docs/api/zh/core/Layers.html

@@ -75,6 +75,16 @@
 			根据参数切换对象所属图层。
 			根据参数切换对象所属图层。
 		</p>
 		</p>
 
 
+		<h3>[method:null enableAll]()</h3>
+		<p>
+			Add membership to all layers.
+		</p>
+
+ 		<h3>[method:null disableAll]()</h3>
+		<p>
+			Remove membership from all layers.
+		</p>
+
 		<h2>源代码</h2>
 		<h2>源代码</h2>
 
 
 		<p>
 		<p>

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

@@ -21,10 +21,6 @@
 
 
 		<h2>示例</h2>
 		<h2>示例</h2>
 		<p>
 		<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_cloth animation / cloth ]<br />
 		  [example:webgl_animation_skinning_blending animation / skinning / blending ]
 		  [example:webgl_animation_skinning_blending animation / skinning / blending ]
 		</p>
 		</p>

+ 0 - 1
docs/api/zh/lights/DirectionalLight.html

@@ -36,7 +36,6 @@
 
 
 		<h2>示例</h2>
 		<h2>示例</h2>
 		<p>
 		<p>
-			[example:canvas_morphtargets_horse morphtargets / horse ]<br />
 			[example:misc_controls_fly controls / fly ]<br />
 			[example:misc_controls_fly controls / fly ]<br />
 			[example:webvr_cubes cubes ]<br />
 			[example:webvr_cubes cubes ]<br />
 			[example:webgl_effects_parallaxbarrier effects / parallaxbarrier ]<br />
 			[example:webgl_effects_parallaxbarrier effects / parallaxbarrier ]<br />

+ 0 - 1
docs/api/zh/lights/PointLight.html

@@ -22,7 +22,6 @@
 		<h2>示例</h2>
 		<h2>示例</h2>
 
 
 		<p>
 		<p>
-			[example:canvas_lights_pointlights lights / pointlights ]<br />
 			[example:webgl_lights_pointlights lights / pointlights ]<br />
 			[example:webgl_lights_pointlights lights / pointlights ]<br />
 			[example:webgl_lights_pointlights2 lights / pointlights2 ]<br />
 			[example:webgl_lights_pointlights2 lights / pointlights2 ]<br />
 			[example:webgldeferred_animation animation ]<br />
 			[example:webgldeferred_animation animation ]<br />

+ 36 - 46
docs/api/zh/lights/shadows/LightShadow.html

@@ -12,58 +12,17 @@
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
 		<p class="desc">
 		<p class="desc">
-			这在 [page:PointLight PointLights] 内部用于计算阴影,也可用作其他阴影类的基类
+			该类作为其他阴影类的基类来使用
 		</p>
 		</p>
 
 
 
 
-		<h2>例子</h2>
-		<p>
-			<code>
-//Create a WebGLRenderer and turn on shadows in the renderer
-var renderer = new THREE.WebGLRenderer();
-renderer.shadowMap.enabled = true;
-renderer.shadowMap.type = THREE.PCFSoftShadowMap; // default THREE.PCFShadowMap
-
-//Create a PointLight and turn on shadows for the light
-var light = new THREE.PointLight( 0xffffff, 1, 100 );
-light.position.set( 0, 10, 0 );
-light.castShadow = true;            // default false
-scene.add( light );
-
-//Set up shadow properties for the light
-light.shadow.mapSize.width = 512;  // default
-light.shadow.mapSize.height = 512; // default
-light.shadow.camera.near = 0.5;       // default
-light.shadow.camera.far = 500      // default
-
-//Create a sphere that cast shadows (but does not receive them)
-var sphereGeometry = new THREE.SphereBufferGeometry( 5, 32, 32 );
-var sphereMaterial = new THREE.MeshStandardMaterial( { color: 0xff0000 } );
-var sphere = new THREE.Mesh( sphereGeometry, sphereMaterial );
-sphere.castShadow = true; //default is false
-sphere.receiveShadow = false; //default
-scene.add( sphere );
-
-//Create a plane that receives shadows (but does not cast them)
-var planeGeometry = new THREE.PlaneBufferGeometry( 20, 20, 32, 32 );
-var planeMaterial = new THREE.MeshStandardMaterial( { color: 0x00ff00 } )
-var plane = new THREE.Mesh( planeGeometry, planeMaterial );
-plane.receiveShadow = true;
-scene.add( plane );
-
-//Create a helper for the shadow camera (optional)
-var helper = new THREE.CameraHelper( light.shadow.camera );
-scene.add( helper );
-			</code>
-		</p>
-
 		<h2>构造函数</h2>
 		<h2>构造函数</h2>
 
 
 		<h3>[name]( [param:Camera camera] )</h3>
 		<h3>[name]( [param:Camera camera] )</h3>
 		<p>
 		<p>
 		[page:Camera camera] - 在光的世界里<br /><br />
 		[page:Camera camera] - 在光的世界里<br /><br />
 
 
-			创建一个新的[name]。这不能直接调用的 - 它由[page:PointLight]在内部调用,或者由其他阴影用作基类。
+			创建一个新的[name]。这不能直接调用的 - 它由其他阴影用作基类。
 		</p>
 		</p>
 
 
 		<h2>属性</h2>
 		<h2>属性</h2>
@@ -84,6 +43,11 @@ scene.add( helper );
 			使用内置摄像头生成的深度图;超出像素深度的位置在阴影中。在渲染期间内部计算。
 			使用内置摄像头生成的深度图;超出像素深度的位置在阴影中。在渲染期间内部计算。
 		</p>
 		</p>
 
 
+		<h3>[property:WebGLRenderTarget mapPass]</h3>
+		<p>
+			The distribution map generated using the internal camera; an occlusion is calculated based 
+			on the distribution of depths. Computed internally during rendering.
+		</p>
 
 
 		<h3>[property:Vector2 mapSize]</h3>
 		<h3>[property:Vector2 mapSize]</h3>
 		<p>
 		<p>
@@ -113,9 +77,34 @@ scene.add( helper );
 
 
 
 
 		<h2>方法</h2>
 		<h2>方法</h2>
+		
+		<h3>[method:Vector2 getFrameExtents]()</h3>
+		<p>
+		Used internally by the renderer to extend the shadow map to contain all viewports
+		</p>
+
+		<h3>[method:null updateMatrices]( [param:Light light], [param:Camera viewCamera], [param:number viewportIndex])</h3>
+		<p>
+		Update the matrices for the camera and shadow, used internally by the renderer.<br /><br />
+
+		light -- the light for which the shadow is being rendered.<br />
+		viewCamera -- the camera view for which the shadow is being rendered.<br />
+		viewportIndex -- calculates the matrix for this viewport
+		</p>
+
+		<h3>[method:Frustum getFrustum]()</h3>
+		<p>
+		Gets the shadow cameras frustum. Used internally by the renderer to cull objects.
+		</p>
+
+		<h3>[method:number getViewportCount]()</h3>
+		<p>
+		Used internally by the renderer to get the number of viewports that need to be rendered for this shadow.
+		</p>
+
 		<h3>[method:LightShadow copy]( [param:LightShadow source] )</h3>
 		<h3>[method:LightShadow copy]( [param:LightShadow source] )</h3>
 		<p>
 		<p>
-			将[page:LightShadow]中的所有属性的值复制到 SpotLight。
+			将[page:LightShadow source]中的所有属性的值复制到该Light。
 		</p>
 		</p>
 
 
 		<h3>[method:LightShadow clone]()</h3>
 		<h3>[method:LightShadow clone]()</h3>
@@ -129,7 +118,8 @@ scene.add( helper );
 		</p>
 		</p>
 
 
 		<h2>源码</h2>
 		<h2>源码</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/lights/[name].js src/lights/[name].js]
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/lights/[name].js src/lights/[name].js]
+		</p>
 	</body>
 	</body>
 </html>
 </html>

+ 82 - 0
docs/api/zh/lights/shadows/PointLightShadow.html

@@ -0,0 +1,82 @@
+<!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">
+			该类在内部由[page:PointLight PointLights]所使用,以用于计算阴影。
+		</p>
+
+
+		<h2>示例</h2>
+		<p>
+			<code>
+//Create a WebGLRenderer and turn on shadows in the renderer
+var renderer = new THREE.WebGLRenderer();
+renderer.shadowMap.enabled = true;
+renderer.shadowMap.type = THREE.PCFSoftShadowMap; // default THREE.PCFShadowMap
+
+//Create a PointLight and turn on shadows for the light
+var light = new THREE.PointLight( 0xffffff, 1, 100 );
+light.position.set( 0, 10, 0 );
+light.castShadow = true;            // default false
+scene.add( light );
+
+//Set up shadow properties for the light
+light.shadow.mapSize.width = 512;  // default
+light.shadow.mapSize.height = 512; // default
+light.shadow.camera.near = 0.5;       // default
+light.shadow.camera.far = 500      // default
+
+//Create a sphere that cast shadows (but does not receive them)
+var sphereGeometry = new THREE.SphereBufferGeometry( 5, 32, 32 );
+var sphereMaterial = new THREE.MeshStandardMaterial( { color: 0xff0000 } );
+var sphere = new THREE.Mesh( sphereGeometry, sphereMaterial );
+sphere.castShadow = true; //default is false
+sphere.receiveShadow = false; //default
+scene.add( sphere );
+
+//Create a plane that receives shadows (but does not cast them)
+var planeGeometry = new THREE.PlaneBufferGeometry( 20, 20, 32, 32 );
+var planeMaterial = new THREE.MeshStandardMaterial( { color: 0x00ff00 } )
+var plane = new THREE.Mesh( planeGeometry, planeMaterial );
+plane.receiveShadow = true;
+scene.add( plane );
+
+//Create a helper for the shadow camera (optional)
+var helper = new THREE.CameraHelper( light.shadow.camera );
+scene.add( helper );
+			</code>
+		</p>
+
+		<h2>构造函数</h2>
+		<h3>[name]( )</h3>
+		<p>
+			创建一个新的[name]。该方法不是直接调用的 —— 其在内部由[page:PointLight]调用。
+		</p>
+
+		<h2>属性</h2>
+		<p>
+			共有属性请参见其基类[page:LightShadow LightShadow]。
+		</p>
+
+		<h2>方法</h2>
+		<p>
+			共有方法请参见其基类[page:LightShadow LightShadow]。
+		</p>
+
+		<h2>源代码</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/src/lights/[name].js src/lights/[name].js]
+		</p>
+	</body>
+</html>

+ 2 - 2
docs/api/zh/loaders/AnimationLoader.html

@@ -55,10 +55,10 @@
 		</p>
 		</p>
 
 
 		<h2>属性</h2>
 		<h2>属性</h2>
-		<p>See the base [page:Loader] class for common properties.</p>
+		<p>共有属性请参见其基类[page:Loader]。</p>
 
 
 		<h2>方法</h2>
 		<h2>方法</h2>
-		<p>See the base [page:Loader] class for common methods.</p>
+		<p>共有方法请参见其基类[page:Loader]。</p>
 
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>

+ 2 - 2
docs/api/zh/loaders/AudioLoader.html

@@ -72,10 +72,10 @@
 		</p>
 		</p>
 
 
 		<h2>属性</h2>
 		<h2>属性</h2>
-		<p>See the base [page:Loader] class for common properties.</p>
+		<p>共有属性请参见其基类[page:Loader]。</p>
 
 
 		<h2>方法</h2>
 		<h2>方法</h2>
-		<p>See the base [page:Loader] class for common methods.</p>
+		<p>共有方法请参见其基类[page:Loader]。</p>
 
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>

+ 2 - 2
docs/api/zh/loaders/BufferGeometryLoader.html

@@ -60,10 +60,10 @@
 		</p>
 		</p>
 
 
 		<h2>属性</h2>
 		<h2>属性</h2>
-		<p>See the base [page:Loader] class for common properties.</p>
+		<p>共有属性请参见其基类[page:Loader]。</p>
 
 
 		<h2>方法</h2>
 		<h2>方法</h2>
-		<p>See the base [page:Loader] class for common methods.</p>
+		<p>共有方法请参见其基类[page:Loader]。</p>
 
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>

+ 2 - 2
docs/api/zh/loaders/CubeTextureLoader.html

@@ -52,10 +52,10 @@ scene.background = new THREE.CubeTextureLoader()
 		</p>
 		</p>
 
 
 		<h2>属性</h2>
 		<h2>属性</h2>
-		<p>See the base [page:Loader] class for common properties.</p>
+		<p>共有属性请参见其基类[page:Loader]。</p>
 
 
 		<h2>方法</h2>
 		<h2>方法</h2>
-		<p>See the base [page:Loader] class for common methods.</p>
+		<p>共有方法请参见其基类[page:Loader]。</p>
 
 
 		<h3>[method:null load]( [param:String urls], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String urls], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>

+ 2 - 2
docs/api/zh/loaders/DataTextureLoader.html

@@ -36,10 +36,10 @@
 		</p>
 		</p>
 
 
 		<h2>属性</h2>
 		<h2>属性</h2>
-		<p>See the base [page:Loader] class for common properties.</p>
+		<p>共有属性请参见其基类[page:Loader]。</p>
 
 
 		<h2>方法</h2>
 		<h2>方法</h2>
-		<p>See the base [page:Loader] class for common methods.</p>
+		<p>共有方法请参见其基类[page:Loader]。</p>
 
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>

+ 2 - 2
docs/api/zh/loaders/FileLoader.html

@@ -66,7 +66,7 @@
 		</p>
 		</p>
 
 
 		<h2>属性</h2>
 		<h2>属性</h2>
-		<p>See the base [page:Loader] class for common properties.</p>
+		<p>共有属性请参见其基类[page:Loader]。</p>
 
 
 		<h3>[property:String mimeType]</h3>
 		<h3>[property:String mimeType]</h3>
 		<p>
 		<p>
@@ -87,7 +87,7 @@
 		</p>
 		</p>
 
 
 		<h2>方法</h2>
 		<h2>方法</h2>
-		<p>See the base [page:Loader] class for common methods.</p>
+		<p>共有方法请参见其基类[page:Loader]。</p>
 
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>

+ 2 - 2
docs/api/zh/loaders/FontLoader.html

@@ -59,10 +59,10 @@
 		</p>
 		</p>
 
 
 		<h2>属性</h2>
 		<h2>属性</h2>
-		<p>See the base [page:Loader] class for common properties.</p>
+		<p>共有属性请参见其基类[page:Loader]。</p>
 
 
 		<h2>方法</h2>
 		<h2>方法</h2>
-		<p>See the base [page:Loader] class for common methods.</p>
+		<p>共有方法请参见其基类[page:Loader]。</p>
 
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>

+ 2 - 2
docs/api/zh/loaders/ImageBitmapLoader.html

@@ -70,7 +70,7 @@
 		</p>
 		</p>
 
 
 		<h2>属性</h2>
 		<h2>属性</h2>
-		<p>See the base [page:Loader] class for common properties.</p>
+		<p>共有属性请参见其基类[page:Loader]。</p>
 
 
 
 
 		<h3>[property:String options]</h3>
 		<h3>[property:String options]</h3>
@@ -78,7 +78,7 @@
             默认为*undefined*.</p>
             默认为*undefined*.</p>
 
 
 		<h2>方法</h2>
 		<h2>方法</h2>
-		<p>See the base [page:Loader] class for common methods.</p>
+		<p>共有方法请参见其基类[page:Loader]。</p>
 
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>

+ 2 - 2
docs/api/zh/loaders/ImageLoader.html

@@ -67,10 +67,10 @@
 		</p>
 		</p>
 
 
 		<h2>属性</h2>
 		<h2>属性</h2>
-		<p>See the base [page:Loader] class for common properties.</p>
+		<p>共有属性请参见其基类[page:Loader]。</p>
 
 
 		<h2>方法</h2>
 		<h2>方法</h2>
-		<p>See the base [page:Loader] class for common methods.</p>
+		<p>共有方法请参见其基类[page:Loader]。</p>
 
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>

+ 3 - 28
docs/api/zh/loaders/Loader.html

@@ -8,12 +8,12 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	</head>
 	<body>
 	<body>
-		<h1>[name]</h1>
+		<h1>加载器([name]</h1>
 
 
-		<p class="desc">所有加载器的基类</p>
+		<p class="desc">用于实现加载器的基类。</p>
 
 
 
 
-		<h2>构造方法</h2>
+		<h2>构造函数</h2>
 
 
 
 
 		<h3>[name]( [param:LoadingManager manager] )</h3>
 		<h3>[name]( [param:LoadingManager manager] )</h3>
@@ -77,31 +77,6 @@
 			[page:String resourcePath] — Set the base path for dependent resources like textures.
 			[page:String resourcePath] — Set the base path for dependent resources like textures.
 		</p>
 		</p>
 
 
-		<h2>Handlers</h2>
-
-		<p>
-		*[name].Handlers* is a special object normally used by other loaders like [page:GLTFLoader] or [page:MTLLoader]. It provides an
-		API that allows the definition of special mappings: What loaders should be used in order to load specific files. A typical use case
-		is to overwrite the default loader for textures.<br /><br />
-
-		Note: It's only possible to use *[name].Handlers* if the respective loader support the usage.
-		</p>
-
-		<h3>[method:null add]( [param:Object regex], [param:Loader loader] )</h3>
-		<p>
-		[page:Object regex] — A regular expression.<br />
-		[page:Loader loader] — The loader.
-		<p>
-		Registers a loader with the given regular expression.
-		</p>
-
-		<h3>[method:null get]( [param:String file] )</h3>
-		<p>
-		[page:String file] — The file path.
-		<p>
-		Can be used to retrieve the registered loader for the given file path.
-		</p>
-
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		<p>
 		<p>

+ 2 - 2
docs/api/zh/loaders/MaterialLoader.html

@@ -56,14 +56,14 @@
 		</p>
 		</p>
 
 
 		<h2>属性</h2>
 		<h2>属性</h2>
-		<p>See the base [page:Loader] class for common properties.</p>
+		<p>共有属性请参见其基类[page:Loader]。</p>
 
 
 		<h3>[property:Object textures]</h3>
 		<h3>[property:Object textures]</h3>
 		<p>持有材质的任何纹理的对象,请参考 [page:.setTextures].</p>
 		<p>持有材质的任何纹理的对象,请参考 [page:.setTextures].</p>
 
 
 
 
 		<h2>方法</h2>
 		<h2>方法</h2>
-		<p>See the base [page:Loader] class for common methods.</p>
+		<p>共有方法请参见其基类[page:Loader]。</p>
 
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>

+ 2 - 2
docs/api/zh/loaders/ObjectLoader.html

@@ -69,10 +69,10 @@
 		</p>
 		</p>
 
 
 		<h2>属性</h2>
 		<h2>属性</h2>
-		<p>See the base [page:Loader] class for common properties.</p>
+		<p>共有属性请参见其基类[page:Loader]。</p>
 
 
 		<h2>方法</h2>
 		<h2>方法</h2>
-		<p>See the base [page:Loader] class for common methods.</p>
+		<p>共有方法请参见其基类[page:Loader]。</p>
 
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>

+ 2 - 2
docs/api/zh/loaders/TextureLoader.html

@@ -69,10 +69,10 @@
 		</p>
 		</p>
 
 
 		<h2>属性</h2>
 		<h2>属性</h2>
-		<p>See the base [page:Loader] class for common properties.</p>
+		<p>共有属性请参见其基类[page:Loader]。</p>
 
 
 		<h2>方法</h2>
 		<h2>方法</h2>
-		<p>See the base [page:Loader] class for common methods.</p>
+		<p>共有方法请参见其基类[page:Loader]。</p>
 
 
 		<h3>[method:Texture load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:Texture load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>

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

@@ -23,7 +23,6 @@
 		<h2>例子</h2>
 		<h2>例子</h2>
 
 
 		<p>
 		<p>
-			[example:webgl_loader_babylon WebGL / loader / babylon]<br />
 			[example:webgl_loader_fbx WebGL / loader / fbx]<br />
 			[example:webgl_loader_fbx WebGL / loader / fbx]<br />
 			[example:webgl_loader_obj WebGL / loader / obj]<br />
 			[example:webgl_loader_obj WebGL / loader / obj]<br />
 			[example:webgl_materials_reflectivity WebGL / materials / reflectivity]<br />
 			[example:webgl_materials_reflectivity WebGL / materials / reflectivity]<br />
@@ -158,22 +157,49 @@
 
 
 		<h2>方法</h2>
 		<h2>方法</h2>
 
 
-		<h3>[method:null setURLModifier]( [param:Function callback] )</h3>
+		<h3>[method:LoadingManager addHandler]( [param:Object regex], [param:Loader loader] )</h3>
+		<p>
+		[page:Object regex] — A regular expression.<br />
+		[page:Loader loader] — The loader.
 		<p>
 		<p>
-		[page:Function callback] —
-            设置URL修饰符成功时回调。使用url参数进行回调,并且必须返回 [page:String resolvedURL] 。<br /><br />
+		Registers a loader with the given regular expression. Can be used to define what loader should be used in
+		order to load specific files. A typical use case is to overwrite the default loader for textures.
+		</p>
+		<code>
+// add handler for TGA textures
+manager.addHandler( /\.tga$/i, new TGALoader() );
+		</code>
 
 
-            如果设置了回调,则在发送请求之前将向每个资源URL传递回调。回调可以返回最初的URL,也可以返回新URL以覆盖加载行为。
-            此行为可用于从.ZIP、拖拽API和数据URI中加载资源文件。
+		<h3>[method:LoadingManager removeHandler]( [param:Object regex] )</h3>
+		<p>
+		[page:Object regex] — A regular expression.
+		<p>
+		Removes the loader for the given regular expression.
+		</p>
+
+		<h3>[method:null getHandler]( [param:String file] )</h3>
+		<p>
+		[page:String file] — The file path.
+		<p>
+		Can be used to retrieve the registered loader for the given file path.
 		</p>
 		</p>
 
 
 		<h3>[method:String resolveURL]( [param:String url] )</h3>
 		<h3>[method:String resolveURL]( [param:String url] )</h3>
 		<p>
 		<p>
 		[page:String url] — 所要加载的url<br /><br />
 		[page:String url] — 所要加载的url<br /><br />
 
 
-            给定URL,使用URL修饰符回调(如果有)并返回已解析的URL。如果未设置URL修饰符,则返回原始URL。
+		给定URL,使用URL修饰符回调(如果有)并返回已解析的URL。如果未设置URL修饰符,则返回原始URL。
+		</p>
+
+		<h3>[method:null setURLModifier]( [param:Function callback] )</h3>
+		<p>
+		[page:Function callback] — 设置URL修饰符成功时回调。使用url参数进行回调,并且必须返回 [page:String resolvedURL] 。<br /><br />
+
+		如果设置了回调,则在发送请求之前将向每个资源URL传递回调。回调可以返回最初的URL,也可以返回新URL以覆盖加载行为。
+		此行为可用于从.ZIP、拖拽API和数据URI中加载资源文件。
 		</p>
 		</p>
 
 
+
 		<br /><br />
 		<br /><br />
 		<p>
 		<p>
 			<em>Note: The following methods are designed to be called internally by loaders. You shouldn't call
 			<em>Note: The following methods are designed to be called internally by loaders. You shouldn't call
@@ -184,14 +210,14 @@
 		<p>
 		<p>
 		[page:String url] — 所要加载的url<br /><br />
 		[page:String url] — 所要加载的url<br /><br />
 
 
-           任何使用管理器的加载器都会调用此方法, 当加载器需要开始加载URL时。
+		任何使用管理器的加载器都会调用此方法, 当加载器需要开始加载URL时。
 		</p>
 		</p>
 
 
 		<h3>[method:null itemEnd]( [param:String url] )</h3>
 		<h3>[method:null itemEnd]( [param:String url] )</h3>
 		<p>
 		<p>
 		[page:String url] — 所要加载的url<br /><br />
 		[page:String url] — 所要加载的url<br /><br />
 
 
-            任何使用管理器的加载器都会调用此方法, 当加载器需要加载URL结束时。
+		任何使用管理器的加载器都会调用此方法, 当加载器需要加载URL结束时。
 		</p>
 		</p>
 
 
 
 
@@ -199,7 +225,7 @@
 		<p>
 		<p>
 		[page:String url] — 所要加载的url<br /><br />
 		[page:String url] — 所要加载的url<br /><br />
 
 
-            任何使用管理器的加载器都会调用此方法, 当加载器出现加载错误时。
+		任何使用管理器的加载器都会调用此方法, 当加载器出现加载错误时。
 		</p>
 		</p>
 
 
 		<h2>源</h2>
 		<h2>源</h2>

+ 0 - 3
docs/api/zh/materials/LineBasicMaterial.html

@@ -63,9 +63,6 @@ var material = new THREE.LineBasicMaterial( {
 			因为其通常用在内部优化,所以不应该更改该属性值。
 			因为其通常用在内部优化,所以不应该更改该属性值。
 		</p>
 		</p>
 
 
-		<h3>[property:Boolean lights]</h3>
-		<p>材质是否受到光照的影响。默认值为 *false*。</p>
-
 		<h3>[property:Float linewidth]</h3>
 		<h3>[property:Float linewidth]</h3>
 		<p> 控制线宽。默认值为 *1*。<br /><br />
 		<p> 控制线宽。默认值为 *1*。<br /><br />
 			由于[link:https://www.khronos.org/registry/OpenGL/specs/gl/glspec46.core.pdf OpenGL Core Profile]与
 			由于[link:https://www.khronos.org/registry/OpenGL/specs/gl/glspec46.core.pdf OpenGL Core Profile]与

+ 0 - 4
docs/api/zh/materials/LineDashedMaterial.html

@@ -18,7 +18,6 @@
 
 
 		<p>
 		<p>
 			[example:webgl_lines_dashed WebGL / lines / dashed]<br />
 			[example:webgl_lines_dashed WebGL / lines / dashed]<br />
-			[example:canvas_lines_dashed Canvas / lines /dashed]
 		</p>
 		</p>
 
 
 		<code>
 		<code>
@@ -59,9 +58,6 @@ var material = new THREE.LineDashedMaterial( {
 			因为其通常用在内部优化,所以不应该更改该属性值。
 			因为其通常用在内部优化,所以不应该更改该属性值。
 		</p>
 		</p>
 
 
-		<h3>[property:Boolean lights]</h3>
-		<p>材质是否受到光照的影响。默认值为 *false*。</p>
-
 		<h3>[property:Float linewidth]</h3>
 		<h3>[property:Float linewidth]</h3>
 		<p>
 		<p>
 			控制线宽。默认值为 *1*。<br /><br />
 			控制线宽。默认值为 *1*。<br /><br />

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

@@ -108,6 +108,11 @@
 Whether rendering this material has any effect on the stencil buffer. Default is *false*.
 Whether rendering this material has any effect on the stencil buffer. Default is *false*.
 </p>
 </p>
 
 
+<h3>[property:Boolean stencilWriteMask]</h3>
+<p>
+The bit mask to use when writing to the stencil buffer. Default is *0xFF*.
+</p>
+
 <h3>[property:Boolean stencilFunc]</h3>
 <h3>[property:Boolean stencilFunc]</h3>
 <p>
 <p>
 The stencil comparison function to use. Default is [page:Materials AlwaysStencilFunc]. See stencil function [page:Materials constants] for all possible values.
 The stencil comparison function to use. Default is [page:Materials AlwaysStencilFunc]. See stencil function [page:Materials constants] for all possible values.
@@ -118,9 +123,9 @@ The stencil comparison function to use. Default is [page:Materials AlwaysStencil
 The value to use when performing stencil comparisons or stencil operations. Default is *0*.
 The value to use when performing stencil comparisons or stencil operations. Default is *0*.
 </p>
 </p>
 
 
-<h3>[property:Boolean stencilMask]</h3>
+<h3>[property:Boolean stencilFuncMask]</h3>
 <p>
 <p>
-The bit mask to use when comparing against or writing to the stencil buffer. Default is *0xFF*.
+The bit mask to use when comparing against the stencil buffer. Default is *0xFF*.
 </p>
 </p>
 
 
 <h3>[property:Integer stencilFail]</h3>
 <h3>[property:Integer stencilFail]</h3>
@@ -154,9 +159,6 @@ Which stencil operation to perform when the comparison function returns true and
     因为其通常用在内部优化,所以不应该更改该属性值。
     因为其通常用在内部优化,所以不应该更改该属性值。
 </p>
 </p>
 
 
-<h3>[property:Boolean lights]</h3>
-<p>材质是否受到光照的影响。默认为*true*。</p>
-
 <h3>[property:String name]</h3>
 <h3>[property:String name]</h3>
 <p>对象的可选名称(不必是唯一的)。默认值为空字符串。</p>
 <p>对象的可选名称(不必是唯一的)。默认值为空字符串。</p>
 
 
@@ -232,6 +234,11 @@ Which stencil operation to perform when the comparison function returns true and
     默认为[page:Materials THREE.FrontSide]。其他选项有[page:Materials THREE.BackSide]和[page:Materials THREE.DoubleSide]。
     默认为[page:Materials THREE.FrontSide]。其他选项有[page:Materials THREE.BackSide]和[page:Materials THREE.DoubleSide]。
 </p>
 </p>
 
 
+<h3>[property:Boolean toneMapped]</h3>
+<p>
+Defines whether this material is tone mapped according to the renderer's [page:WebGLRenderer.toneMapping toneMapping] setting. Default is *true*.
+</p>
+
 <h3>[property:Boolean transparent]</h3>
 <h3>[property:Boolean transparent]</h3>
 <p>
 <p>
     定义此材质是否透明。这对渲染有影响,因为透明对象需要特殊处理,并在非透明对象之后渲染。
     定义此材质是否透明。这对渲染有影响,因为透明对象需要特殊处理,并在非透明对象之后渲染。

+ 0 - 3
docs/api/zh/materials/MeshBasicMaterial.html

@@ -82,9 +82,6 @@
 		<h3>[property:Float lightMapIntensity]</h3>
 		<h3>[property:Float lightMapIntensity]</h3>
 		<p>烘焙光的强度。默认值为1。</p>
 		<p>烘焙光的强度。默认值为1。</p>
 
 
-		<h3>[property:Boolean lights]</h3>
-		<p>材质是否受到光照的影响。默认值为 *false*。</p>
-
 		<h3>[property:Texture map]</h3>
 		<h3>[property:Texture map]</h3>
 		<p> 颜色贴图。默认为null。</p>
 		<p> 颜色贴图。默认为null。</p>
 
 

+ 0 - 3
docs/api/zh/materials/MeshDepthMaterial.html

@@ -73,9 +73,6 @@
 			因为其通常用在内部优化,所以不应该更改该属性值。
 			因为其通常用在内部优化,所以不应该更改该属性值。
 		</p>
 		</p>
 
 
-		<h3>[property:Boolean lights]</h3>
-		<p>材质是否受到光照的影响。默认值为 *false*。</p>
-
 		<h3>[property:Texture map]</h3>
 		<h3>[property:Texture map]</h3>
 		<p>颜色贴图。默认为null。</p>
 		<p>颜色贴图。默认为null。</p>
 
 

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

@@ -82,9 +82,6 @@
 			因为其通常用在内部优化,所以不应该更改该属性值。
 			因为其通常用在内部优化,所以不应该更改该属性值。
 		</p>
 		</p>
 
 
-		<h3>[property:Boolean lights]</h3>
-		<p>材质是否受到光照的影响。默认值为 *false*。</p>
-
 		<h3>[property:Texture map]</h3>
 		<h3>[property:Texture map]</h3>
 		<p>颜色贴图。默认为null。</p>
 		<p>颜色贴图。默认为null。</p>
 
 

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

@@ -72,9 +72,6 @@
 			因为其通常用在内部优化,所以不应该更改该属性值。
 			因为其通常用在内部优化,所以不应该更改该属性值。
 		</p>
 		</p>
 
 
-		<h3>[property:Boolean lights]</h3>
-		<p>材质是否受到光照的影响。默认值为 *false*。</p>
-
 		<h3>[property:boolean morphNormals]</h3>
 		<h3>[property:boolean morphNormals]</h3>
 		<p> 定义是否使用morphNormals。设置为true可将morphNormal属性从[page:Geometry]传递到shader。默认值为*false*。
 		<p> 定义是否使用morphNormals。设置为true可将morphNormal属性从[page:Geometry]传递到shader。默认值为*false*。
 		</p>
 		</p>

+ 0 - 3
docs/api/zh/materials/ShadowMaterial.html

@@ -48,9 +48,6 @@ scene.add( plane );
 			因为其通常用在内部优化,所以不应该更改该属性值。
 			因为其通常用在内部优化,所以不应该更改该属性值。
 		</p>
 		</p>
 
 
-		<h3>[property:Boolean lights]</h3>
-		<p> 材质是否受到光照的影响。默认值为 *true*。</p>
-
 		<h3>[property:Boolean transparent]</h3>
 		<h3>[property:Boolean transparent]</h3>
 		<p>定义此材质是否透明。默认值为 *true*。</p>
 		<p>定义此材质是否透明。默认值为 *true*。</p>
 
 

+ 0 - 3
docs/api/zh/materials/SpriteMaterial.html

@@ -55,9 +55,6 @@ scene.add( sprite );
 		<h3>[property:boolean fog]</h3>
 		<h3>[property:boolean fog]</h3>
 		<p>材质是否受场景雾的影响。默认值为*false*。</p>
 		<p>材质是否受场景雾的影响。默认值为*false*。</p>
 
 
-		<h3>[property:Boolean lights]</h3>
-		<p>材质是否受到光照的影响。默认值为 *false*。</p>
-
 		<h3>[property:Texture map]</h3>
 		<h3>[property:Texture map]</h3>
 		<p>颜色贴图。默认为null。</p>
 		<p>颜色贴图。默认为null。</p>
 
 

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

@@ -54,6 +54,8 @@
 		默认是*true*.<br />
 		默认是*true*.<br />
 
 
 		[page:Boolean logarithmicDepthBuffer] -  是否使用对数深度缓存。如果要在单个场景中处理巨大的比例差异,就有必要使用。
 		[page:Boolean logarithmicDepthBuffer] -  是否使用对数深度缓存。如果要在单个场景中处理巨大的比例差异,就有必要使用。
+		Note that this setting uses gl_FragDepth if available which disables the [link:https://www.khronos.org/opengl/wiki/Early_Fragment_Test Early Fragment Test]
+		optimization and can cause a decrease in performance.
 		默认是*false*。 示例:[example:webgl_camera_logarithmicdepthbuffer camera / logarithmicdepthbuffer]
 		默认是*false*。 示例:[example:webgl_camera_logarithmicdepthbuffer camera / logarithmicdepthbuffer]
 		</p>
 		</p>
 
 
@@ -165,6 +167,7 @@
 					<li>triangles</li>
 					<li>triangles</li>
 					<li>points</li>
 					<li>points</li>
 					<li>lines</li>
 					<li>lines</li>
+					<li>frame</li>
 				</ul>
 				</ul>
 			</li>
 			</li>
 			<li>programs
 			<li>programs
@@ -227,7 +230,7 @@
 
 
 		<h3>[property:Integer shadowMap.type]</h3>
 		<h3>[property:Integer shadowMap.type]</h3>
 		<p>定义阴影贴图类型 (未过滤, 关闭部分过滤, 关闭部分双线性过滤)</p>
 		<p>定义阴影贴图类型 (未过滤, 关闭部分过滤, 关闭部分双线性过滤)</p>
-		<p>可选值有THREE.BasicShadowMap, THREE.PCFShadowMap (默认)和 THREE.PCFSoftShadowMap。 详见[page:Renderer Renderer constants]</p>
+		<p>可选值有THREE.BasicShadowMap, THREE.PCFShadowMap (默认), THREE.PCFSoftShadowMap 和 THREE.VSMShadowMap。详见[page:Renderer Renderer constants]</p>
 
 
 		<h3>[property:Boolean sortObjects]</h3>
 		<h3>[property:Boolean sortObjects]</h3>
 		<p>
 		<p>

+ 1 - 1
docs/api/zh/textures/DataTexture3D.html

@@ -30,7 +30,7 @@
 		<h2>示例</h2>
 		<h2>示例</h2>
 
 
 		<div>[example:webgl2_materials_texture3d WebGL2 / materials / texture3d]</div>
 		<div>[example:webgl2_materials_texture3d WebGL2 / materials / texture3d]</div>
-		<div>[example:webgl2_materials_texture3d_volume WebGL2 / materials / texture3d / volume]</div>
+		<div>[example:webgl2_materials_texture2darray WebGL2 / materials / texture2darray]</div>
 
 
 		<h2>属性</h2>
 		<h2>属性</h2>
 
 

+ 89 - 0
docs/examples/en/controls/DeviceOrientationControls.html

@@ -0,0 +1,89 @@
+<!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">
+			Can be used to orient the camera based on the mobile device's orientation.
+		</p>
+
+		<h2>Example</h2>
+
+		<p>[example:misc_controls_deviceorientation misc / controls / deviceorientation ]</p>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( [param:Camera object] )</h3>
+		<p>
+			<p>
+				[page:Camera object]: The camera to be controlled.
+			</p>
+			<p>
+				Creates a new instance of [name].
+			</p>
+		</p>
+
+		<h2>Properties</h2>
+
+		<h3>[property:Number alphaOffset]</h3>
+		<p>
+			The alpha offset in radians. Default is *0*.
+		</p>
+
+		<h3>[property:Object deviceOrientation]</h3>
+		<p>
+			The current *deviceorientation* event object.
+		</p>
+
+		<h3>[property:Boolean enabled]</h3>
+		<p>
+			Whether or not the controls are enabled.
+		</p>
+
+		<h3>[property:Camera object]</h3>
+		<p>
+			The camera to be controlled.
+		</p>
+
+		<h3>[property:Number screenOrientation]</h3>
+		<p>
+			The orientation in degrees (in 90-degree increments) of the viewport relative to the device's natural orientation. Default is *0*.
+		</p>
+
+		<h2>Methods</h2>
+
+		<h3>[method:null connect] ()</h3>
+		<p>
+			Adds the event listeners of the controls and enables it.
+		</p>
+
+		<h3>[method:null disconnect] ()</h3>
+		<p>
+			Removes the event listeners of the controls and disables it.
+		</p>
+
+		<h3>[method:null dispose] ()</h3>
+		<p>
+			Should be called if the controls is no longer required.
+		</p>
+
+		<h3>[method:null update] ()</h3>
+		<p>
+			Updates the controls. Usually called in the animation loop.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/examples/js/controls/DeviceOrientationControls.js examples/js/controls/DeviceOrientationControls.js]
+		</p>
+	</body>
+</html>

+ 119 - 0
docs/examples/en/controls/DragControls.html

@@ -0,0 +1,119 @@
+<!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:EventDispatcher] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+		This class can be used to provide a drag'n'drop interaction.
+		</p>
+
+		<h2>Example</h2>
+
+		<p>[example:misc_controls_drag misc / controls / drag ]</p>
+
+		<code>
+var controls = new THREE.DragControls( objects, camera, renderer.domElement );
+
+// add event listener to highlight dragged objects
+
+controls.addEventListener( 'dragstart', function ( event ) {
+
+	event.object.material.emissive.set( 0xaaaaaa );
+
+} );
+
+controls.addEventListener( 'dragend', function ( event ) {
+
+	event.object.material.emissive.set( 0x000000 );
+
+} );
+
+		</code>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( [param:Array objects], [param:Camera camera], [param:HTMLDOMElement domElement] )</h3>
+		<p>
+			<p>
+				[page:Array objects]: An array of draggable 3D objects.
+			</p>
+			<p>
+			[page:Camera camera]: The camera of the rendered scene.
+			</p>
+			<p>
+			[page:HTMLDOMElement domElement]: The HTML element used for event listeners.
+			</p>
+			<p>
+				Creates a new instance of [name].
+			</p>
+		</p>
+
+		<h2>Events</h2>
+
+		<h3>dragstart</h3>
+		<p>
+			Fires when the user starts to drag a 3D object.
+		</p>
+
+		<h3>drag</h3>
+		<p>
+			Fires when the user drags a 3D object.
+		</p>
+
+		<h3>dragend</h3>
+		<p>
+			Fires when the user has finished dragging a 3D object.
+		</p>
+
+		<h3>hoveron</h3>
+		<p>
+			Fires when the pointer is moved onto a 3D object, or onto one of its children.
+		</p>
+
+		<h3>hoveroff</h3>
+		<p>
+			Fires when the pointer is moved out of a 3D object.
+		</p>
+
+		<h2>Properties</h2>
+
+		<h3>[property:Boolean enabled]</h3>
+		<p>
+			Whether or not the controls are enabled.
+		</p>
+
+		<h2>Methods</h2>
+
+		<p>See the base [page:EventDispatcher] class for common methods.</p>
+
+		<h3>[method:null activate] ()</h3>
+		<p>
+			Adds the event listeners of the controls.
+		</p>
+
+		<h3>[method:null deactivate] ()</h3>
+		<p>
+			Removes the event listeners of the controls.
+		</p>
+
+		<h3>[method:null dispose] ()</h3>
+		<p>
+			Should be called if the controls is no longer required.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/examples/js/controls/DragControls.js examples/js/controls/DragControls.js]
+		</p>
+	</body>
+</html>

+ 166 - 0
docs/examples/en/controls/FirstPersonControls.html

@@ -0,0 +1,166 @@
+<!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 class is an alternative implementation of [page:FlyControls].
+		</p>
+
+		<h2>Example</h2>
+
+		<p>[example:webgl_geometry_terrain webgl / geometry / terrain ]</p>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( [param:Camera object], [param:HTMLDOMElement domElement] )</h3>
+		<p>
+			<p>
+				[page:Camera object]: The camera to be controlled.
+			</p>
+			<p>
+				[page:HTMLDOMElement domElement]: (optional) The HTML element used for event listeners. By default this is the whole document,
+				however if you only want the controls to work over a specific element (e.g. the canvas) you can specify that here.
+			</p>
+			<p>
+				Creates a new instance of [name].
+			</p>
+		</p>
+
+		<h2>Properties</h2>
+
+		<h3>[property:Boolean activeLook]</h3>
+		<p>
+			Whether or not it's possible to look around. Default is *true*.
+		</p>
+
+		<h3>[property:Boolean autoForward]</h3>
+		<p>
+			Whether or not the camera is automatically moved forward. Default is *false*.
+		</p>
+
+		<h3>[property:Boolean constrainVertical]</h3>
+		<p>
+			Whether or not looking around is vertically constrained by [[page:.verticalMin], [page:.verticalMax]]. Default is *false*.
+		</p>
+
+		<h3>[property:HTMLDOMElement domElement]</h3>
+		<p>
+			The HTMLDOMElement used to listen for mouse / touch events. This must be passed in the constructor; changing it here will
+			not set up new event listeners. Default is the whole document.
+		</p>
+
+		<h3>[property:Boolean enabled]</h3>
+		<p>
+			Whether or not the controls are enabled. Default is *true*.
+		</p>
+
+		<h3>[property:Number heightCoef]</h3>
+		<p>
+			Determines how much faster the camera moves when it's y-component is near [page:.heightMax]. Default is *1*.
+		</p>
+
+		<h3>[property:Number heightMax]</h3>
+		<p>
+			Upper camera height limit used for movement speed adjusment. Default is *1*.
+		</p>
+
+		<h3>[property:Number heightMin]</h3>
+		<p>
+			Lower camera height limit used for movement speed adjusment. Default is *0*.
+		</p>
+
+		<h3>[property:Boolean heightSpeed]</h3>
+		<p>
+			Whether or not the camera's height influences the forward movement speed. Default is *false*.
+			Use the properties [page:.heightCoef], [page:.heightMin] and [page:.heightMax] for configuration.
+		</p>
+
+		<h3>[property:Boolean lookVertical]</h3>
+		<p>
+			Whether or not it's possible to vertically look around. Default is *true*.
+		</p>
+
+		<h3>[property:Number lookSpeed]</h3>
+		<p>
+			The look around speed. Default is *0.005*.
+		</p>
+
+		<h3>[property:Boolean mouseDragOn]</h3>
+		<p>
+			Whether or not the mouse is pressed down. Read-only property.
+		</p>
+
+		<h3>[property:Number movementSpeed]</h3>
+		<p>
+			The movement speed. Default is *1*.
+		</p>
+
+		<h3>[property:Camera object]</h3>
+		<p>
+			The camera to be controlled.
+		</p>
+
+		<h3>[property:Number verticalMax]</h3>
+		<p>
+			How far you can vertically look around, upper limit. Range is 0 to Math.PI radians. Default is *Math.PI*.
+		</p>
+
+		<h3>[property:Number verticalMin]</h3>
+		<p>
+			How far you can vertically look around, lower limit. Range is 0 to Math.PI radians. Default is *0*.
+		</p>
+
+		<h2>Methods</h2>
+
+		<h3>[method:null dispose] ()</h3>
+		<p>
+			Should be called if the controls is no longer required.
+		</p>
+
+		<h3>[method:null handleResize] ()</h3>
+		<p>
+			Should be called if the application window is resized.
+		</p>
+
+		<h3>[method:FirstPersonControls lookAt]( [param:Vector3 vector] )<br />
+		[method:FirstPersonControls lookAt]( [param:Float x], [param:Float y], [param:Float z] )</h3>
+		<p>
+			<p>
+				<p>
+					vector - A vector representing the target position.
+				</p>
+				<p>
+					Optionally, the x, y, z components of the world space position.
+				</p>
+			</p>
+			<p>
+				Ensures the controls orient the camera towards the defined target position.
+			</p>
+		</p>
+
+		<h3>[method:null update] ( [param:Number delta] )</h3>
+		<p>
+			<p>
+				[page:Number delta]: Time delta value.
+			</p>
+			<p>
+				Updates the controls. Usually called in the animation loop.
+			</p>
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/examples/js/controls/FirstPersonControls.js examples/js/controls/FirstPersonControls.js]
+		</p>
+	</body>
+</html>

+ 95 - 0
docs/examples/en/controls/FlyControls.html

@@ -0,0 +1,95 @@
+<!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">
+			[name] enables a navigation similar to fly modes in DCC tools like Blender. You can arbitrarily transform the camera in
+			3D space without any limitations (e.g. focus on a specific target).
+		</p>
+
+		<h2>Example</h2>
+
+		<p>[example:misc_controls_fly misc / controls / fly ]</p>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( [param:Camera object], [param:HTMLDOMElement domElement] )</h3>
+		<p>
+			<p>
+				[page:Camera object]: The camera to be controlled.
+			</p>
+			<p>
+				[page:HTMLDOMElement domElement]: (optional) The HTML element used for event listeners. By default this is the whole document,
+				however if you only want the controls to work over a specific element (e.g. the canvas) you can specify that here.
+			</p>
+			<p>
+				Creates a new instance of [name].
+			</p>
+		</p>
+
+		<h2>Properties</h2>
+
+		<h3>[property:Boolean autoForward]</h3>
+		<p>
+			If set to *true*, the camera automatically moves forward (and does not stop) when initially translated. Default is *false*.
+		</p>
+
+		<h3>[property:HTMLDOMElement domElement]</h3>
+		<p>
+			The HTMLDOMElement used to listen for mouse / touch events. This must be passed in the constructor; changing it here will
+			not set up new event listeners. Default is the whole document.
+		</p>
+
+		<h3>[property:Boolean dragToLook]</h3>
+		<p>
+			If set to *true*, you can only look around by performing a drag interaction. Default is *false*.
+		</p>
+
+		<h3>[property:Number movementSpeed]</h3>
+		<p>
+			The movement speed. Default is *1*.
+		</p>
+
+		<h3>[property:Camera object]</h3>
+		<p>
+			The camera to be controlled.
+		</p>
+
+		<h3>[property:Number rollSpeed]</h3>
+		<p>
+			The rotation speed. Default is *0.005*.
+		</p>
+
+		<h2>Methods</h2>
+
+		<h3>[method:null dispose] ()</h3>
+		<p>
+			Should be called if the controls is no longer required.
+		</p>
+
+		<h3>[method:null update] ( [param:Number delta] )</h3>
+		<p>
+			<p>
+				[page:Number delta]: Time delta value.
+			</p>
+			<p>
+				Updates the controls. Usually called in the animation loop.
+			</p>
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/examples/js/controls/FlyControls.js examples/js/controls/FlyControls.js]
+		</p>
+	</body>
+</html>

+ 149 - 0
docs/examples/en/controls/PointerLockControls.html

@@ -0,0 +1,149 @@
+<!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:EventDispatcher] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+		The implementation of this class is based on the [link:https://developer.mozilla.org/en-US/docs/Web/API/Pointer_Lock_API Pointer Lock API].
+		[name] is a perfect choice for first person 3D games.
+		</p>
+
+		<h2>Example</h2>
+
+		<p>[example:misc_controls_pointerlock misc / controls / pointerlock ]</p>
+
+		<code>
+var controls = new PointerLockControls( camera );
+
+// add event listener to show/hide a UI (e.g. the game's menu)
+
+controls.addEventListener( 'lock', function () {
+
+	menu.style.display = 'none';
+
+} );
+
+controls.addEventListener( 'unlock', function () {
+
+	menu.style.display = 'block';
+
+} );
+
+		</code>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( [param:Camera camera], [param:HTMLDOMElement domElement] )</h3>
+		<p>
+			<p>
+			[page:Camera camera]: The camera of the rendered scene.
+			</p>
+			<p>
+			[page:HTMLDOMElement domElement]: (optional) The HTML element used for event listeners. By default this is the document's body.
+			</p>
+			<p>
+				Creates a new instance of [name].
+			</p>
+		</p>
+
+		<h2>Events</h2>
+
+		<h3>change</h3>
+		<p>
+			Fires when the user moves the mouse.
+		</p>
+
+		<h3>lock</h3>
+		<p>
+			Fires when the pointer lock status is "locked" (in other words: the mouse is captured).
+		</p>
+
+		<h3>unlock</h3>
+		<p>
+			Fires when the pointer lock status is "unlocked" (in other words: the mouse is not captured anymore).
+		</p>
+
+		<h2>Properties</h2>
+
+		<h3>[property:HTMLDOMElement domElement]</h3>
+		<p>
+			The HTMLDOMElement used to listen for mouse / touch events. This must be passed in the constructor; changing it here will
+			not set up new event listeners. Default is the document's body.
+		</p>
+
+
+		<h3>[property:Boolean isLocked]</h3>
+		<p>
+			Whether or not the controls are locked.
+		</p>
+
+		<h2>Methods</h2>
+
+		<p>See the base [page:EventDispatcher] class for common methods.</p>
+
+		<h3>[method:null connect] ()</h3>
+		<p>
+			Adds the event listeners of the controls.
+		</p>
+
+		<h3>[method:null disconnect] ()</h3>
+		<p>
+			Removes the event listeners of the controls.
+		</p>
+
+		<h3>[method:Vector3 getDirection] ( [param:Vector3 target] )</h3>
+		<p>
+			<p>
+				[page:Vector3 target]: The target vector.
+			</p>
+			<p>
+				Returns the look direction of the camera.
+			</p>
+		</p>
+
+		<h3>[method:null lock] ()</h3>
+		<p>
+			Activates the pointer lock.
+		</p>
+
+		<h3>[method:null moveForward] ( [param:Number distance] )</h3>
+		<p>
+			<p>
+				[page:Number distance]: The signed distance.
+			</p>
+			<p>
+				Moves the camera forward parallel to the xz-plane. Assumes camera.up is y-up.
+			</p>
+		</p>
+
+		<h3>[method:null moveRight] ( [param:Number distance] )</h3>
+		<p>
+			<p>
+				[page:Number distance]: The signed distance.
+			</p>
+			<p>
+				Moves the camera sidewards parallel to the xz-plane.
+			</p>
+		</p>
+
+		<h3>[method:null unlock] ()</h3>
+		<p>
+			Exits the pointer lock.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/examples/js/controls/PointerLockControls.js examples/js/controls/PointerLockControls.js]
+		</p>
+	</body>
+</html>

+ 208 - 0
docs/examples/en/controls/TrackballControls.html

@@ -0,0 +1,208 @@
+<!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:EventDispatcher] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+			<p>
+				[name] is similar to [page:OrbitControls]. However, it does not maintain a constant camera [page:Object3D.up up] vector.
+				That means if the camera orbits over the “north” and “south” poles, it does not flip to stay "right side up".
+			</p>
+		</p>
+
+		<h2>Example</h2>
+
+		<p>[example:misc_controls_trackball misc / controls / trackball ]</p>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( [param:Camera camera], [param:HTMLDOMElement domElement] )</h3>
+		<p>
+			<p>
+				[page:Camera camera]: The camera of the rendered scene.
+			</p>
+			<p>
+				[page:HTMLDOMElement domElement]: (optional) The HTML element used for event listeners. By default this is the whole document,
+				however if you only want the controls to work over a specific element (e.g. the canvas) you can specify that here.
+			</p>
+			<p>
+				Creates a new instance of [name].
+			</p>
+		</p>
+
+		<h2>Events</h2>
+
+		<h3>change</h3>
+		<p>
+			Fires when the camera has been transformed by the controls.
+		</p>
+
+		<h3>start</h3>
+		<p>
+			Fires when an interaction (e.g. touch) was initiated.
+		</p>
+
+		<h3>end</h3>
+		<p>
+			Fires when an interaction has finished.
+		</p>
+
+		<h2>Properties</h2>
+
+		<h3>[property:HTMLDOMElement domElement]</h3>
+		<p>
+			The HTMLDOMElement used to listen for mouse / touch events. This must be passed in the constructor; changing it here will
+			not set up new event listeners. Default is the whole document.
+		</p>
+
+		<h3>[property:Number dynamicDampingFactor]</h3>
+		<p>
+			Defines the intensity of damping. Only considered if [page:.staticMoving staticMoving] is set to *false*. Default is *0.2*.
+		</p>
+
+		<h3>[property:Boolean enabled]</h3>
+		<p>
+			Whether or not the controls are enabled.
+		</p>
+
+		<h3>[property:Array keys]</h3>
+		<p>
+			This array holds keycodes for controlling interactions.
+			<ul>
+				<li>When the first defined key is pressed, all mouse interactions (left, middle, right) performs orbiting.</li>
+				<li>When the second defined key is pressed, all mouse interactions (left, middle, right) performs zooming.</li>
+				<li>When the third defined key is pressed, all mouse interactions (left, middle, right) performs panning.</li>
+			</ul>
+			Default is *65, 83, 68* which represents A, S, D.
+		</p>
+
+		<h3>[property:Number maxDistance]</h3>
+		<p>
+			 How far you can zoom in. Default is *Infinity*.
+		</p>
+
+		<h3>[property:Number minDistance]</h3>
+		<p>
+			 How far you can zoom in. Default is *0*.
+		</p>
+
+		<h3>
+			[property:Object mouseButtons]</h3>
+		<p>
+			This object contains references to the mouse actions used by the controls.
+			<ul>
+				<li>.LEFT is assinged with *THREE.MOUSE.ROTATE*</li>
+				<li>.MIDDLE is assinged with *THREE.MOUSE.ZOOM*</li>
+				<li>.RIGHT is assinged with *THREE.MOUSE.PAN*</li>
+			</ul>
+		</p>
+
+		<h3>[property:Boolean noPan]</h3>
+		<p>
+			Whether or not panning is disabled. Default is *false*.
+		</p>
+
+		<h3>[property:Boolean noRotate]</h3>
+		<p>
+			Whether or not rotation is disabled. Default is *false*.
+		</p>
+
+		<h3>[property:Boolean noZoom]</h3>
+		<p>
+			Whether or not zooming is disabled. Default is *false*.
+		</p>
+
+		<h3>[property:Camera object]</h3>
+		<p>
+			The camera being controlled.
+		</p>
+
+		<h3>[property:Number panSpeed]</h3>
+		<p>
+			The zoom speed. Default is *0.3*.
+		</p>
+
+		<h3>[property:Number rotateSpeed]</h3>
+		<p>
+			The rotation speed. Default is *1.0*.
+		</p>
+
+		<h3>[property:Object screen]</h3>
+		<p>
+			Represents the properties of the screen. Automatically set when [page:.handleResize handleResize]() is called.
+			<ul>
+				<li>left: Represents the offset in pixels to the screen's left boundary.</li>
+				<li>top: Represents the offset in pixels to the screen's top boundary.</li>
+				<li>width: Represents the screen width in pixels.</li>
+				<li>height: Represents the screen height in pixels.</li>
+			</ul>
+		</p>
+
+		<h3>[property:Boolean staticMoving]</h3>
+		<p>
+			Whether or not damping is disabled. Default is *false*.
+		</p>
+
+		<h3>[property:Number zoomSpeed]</h3>
+		<p>
+			The zoom speed. Default is *1.2*.
+		</p>
+
+		<h2>Methods</h2>
+
+		<h3>[method:null checkDistances] ()</h3>
+		<p>
+			Ensures the controls stay in the range [minDistance, maxDistance]. Called by [page:.update update]().
+		</p>
+
+		<h3>[method:null dispose] ()</h3>
+		<p>
+			Should be called if the controls is no longer required.
+		</p>
+
+		<h3>[method:null handleResize] ()</h3>
+		<p>
+			Should be called if the application window is resized.
+		</p>
+
+		<h3>[method:null panCamera] ()</h3>
+		<p>
+			Performs panning if necessary. Called by [page:.update update]().
+		</p>
+
+		<h3>[method:null reset] ()</h3>
+		<p>
+			Resets the controls to its initial state.
+		</p>
+
+		<h3>[method:null rotateCamera] ()</h3>
+		<p>
+			Rotates the camera if necessary. Called by [page:.update update]().
+		</p>
+
+		<h3>[method:null update] ()</h3>
+		<p>
+			Updates the controls. Usually called in the animation loop.
+		</p>
+
+		<h3>[method:null zoomCamera] ()</h3>
+		<p>
+			Performs zooming if necessary. Called by [page:.update update]().
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/examples/js/controls/TrackballControls.js examples/js/controls/TrackballControls.js]
+		</p>
+	</body>
+</html>

+ 225 - 0
docs/examples/en/controls/TransformControls.html

@@ -0,0 +1,225 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Object3D] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+			This class can be used to transform objects in 3D space by adapting a similar interaction model of DCC tools like Blender.
+			Unlike other controls, it is not intended to transform the scene's camera.
+		</p>
+
+		<h2>Example</h2>
+
+		<p>[example:misc_controls_transform misc / controls / transform ]</p>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( [param:Camera camera], [param:HTMLDOMElement domElement] )</h3>
+		<p>
+			<p>
+				[page:Camera camera]: The camera of the rendered scene.
+			</p>
+			<p>
+				[page:HTMLDOMElement domElement]: (optional) The HTML element used for event listeners. By default this is the whole document,
+				however if you only want the controls to work over a specific element (e.g. the canvas) you can specify that here.
+			</p>
+			<p>
+				Creates a new instance of [name].
+			</p>
+		</p>
+
+		<h2>Events</h2>
+
+		<h3>change</h3>
+		<p>
+			Fires if any type of change (object or property change) is performed. Property changes
+			are separate events you can add event listeners to. The event type is "propertyname-changed".
+		</p>
+
+		<h3>mouseDown</h3>
+		<p>
+			Fires if a pointer (mouse/touch) becomes active.
+		</p>
+
+		<h3>mouseUp</h3>
+		<p>
+			Fires if a pointer (mouse/touch) is no longer active.
+		</p>
+
+		<h3>objectChange</h3>
+		<p>
+			Fires if the controlled 3D object is changed.
+		</p>
+
+		<h2>Properties</h2>
+
+		<p>See the base [page:Object3D] class for common properties.</p>
+
+		<h3>[property:String axis]</h3>
+		<p>
+			The current transformation axis.
+		</p>
+
+		<h3>[property:Camera camera]</h3>
+		<p>
+			The camera of the rendered scene.
+		</p>
+
+		<h3>[property:HTMLDOMElement domElement]</h3>
+		<p>
+			The HTMLDOMElement used to listen for mouse / touch events. This must be passed in the constructor; changing it here will
+			not set up new event listeners. Default is the whole document.
+		</p>
+
+		<h3>[property:Boolean dragging]</h3>
+		<p>
+			Whether or not dragging is currently performed. Read-only property.
+		</p>
+
+		<h3>[property:Boolean enabled]</h3>
+		<p>
+			Whether or not the controls are enabled.
+		</p>
+
+		<h3>[property:String mode]</h3>
+		<p>
+			The current transformation mode. Possible values are "translate", "rotate" and "scale". Default is *translate*.
+		</p>
+
+		<h3>[property:Object3D object]</h3>
+		<p>
+			The 3D object being controlled.
+		</p>
+
+		<h3>[property:Number rotationSnap]</h3>
+		<p>
+			By default, 3D objects are continously rotated. If you set this property to a numeric value (radians), you can define in which
+			steps the 3D object should be rotated. Deault is *null*.
+		</p>
+
+		<h3>[property:Boolean showX]</h3>
+		<p>
+			Whether or not the x-axis helper should be visible. Default is *true*.
+		</p>
+
+		<h3>[property:Boolean showY]</h3>
+		<p>
+			Whether or not the y-axis helper should be visible. Default is *true*.
+		</p>
+
+		<h3>[property:Boolean showZ]</h3>
+		<p>
+			Whether or not the z-axis helper should be visible. Default is *true*.
+		</p>
+
+		<h3>[property:Number size]</h3>
+		<p>
+			The size of the helper UI (axes/planes). Default is *1*.
+		</p>
+
+		<h3>[property:String space]</h3>
+		<p>
+			Defines in which coordinate space transformations should be performed. Possible values are "world" and "local". Default is *world*.
+		</p>
+
+		<h3>[property:Number translationSnap]</h3>
+		<p>
+			By default, 3D objects are continously translated. If you set this property to a numeric value (world units), you can define in which
+			steps the 3D object should be translated. Deault is *null*.
+		</p>
+
+		<h2>Methods</h2>
+
+		<p>See the base [page:Object3D] class for common methods.</p>
+
+		<h3>[method:TransformControls attach] ( [param:Object3D object] )</h3>
+		<p>
+			<p>
+				[page:Object3D object]: The 3D object that should be transformed.
+			</p>
+			<p>
+				Sets the 3D object that should be transformed and ensures the controls UI is visible.
+			</p>
+		</p>
+
+		<h3>[method:TransformControls detach] ()</h3>
+		<p>
+			Removes the current 3D object from the controls and makes the helper UI is invisible.
+		</p>
+
+		<h3>[method:null dispose] ()</h3>
+		<p>
+			Should be called if the controls is no longer required.
+		</p>
+
+		<h3>[method:String getMode] ()</h3>
+		<p>
+			Returns the transformation mode.
+		</p>
+
+		<h3>[method:null setMode] ( [param:String mode] )</h3>
+		<p>
+			<p>
+				[page:String mode]: The transformation mode.
+			</p>
+			<p>
+				Sets the transformation mode.
+			</p>
+		</p>
+
+		<h3>[method:null setRotationSnap] ( [param:Number rotationSnap] )</h3>
+		<p>
+			<p>
+				[page:Number rotationSnap]: The rotation snap.
+			</p>
+			<p>
+				Sets the rotation snap.
+			</p>
+		</p>
+
+		<h3>[method:null setSize] ( [param:Number size] )</h3>
+		<p>
+			<p>
+				[page:Number size]: The size of the helper UI.
+			</p>
+			<p>
+				Sets the size of the helper UI.
+			</p>
+		</p>
+
+		<h3>[method:null setSpace] ( [param:String space] )</h3>
+		<p>
+			<p>
+				[page:String space]: The coordinate space in which transformations are applied.
+			</p>
+			<p>
+				Sets the coordinate space in which transformations are applied.
+			</p>
+		</p>
+
+		<h3>[method:null setTranslationSnap] ( [param:Number translationSnap] )</h3>
+		<p>
+			<p>
+				[page:Number translationSnap]: The translation snap.
+			</p>
+			<p>
+				Sets the translation snap.
+			</p>
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/examples/js/controls/TransformControls.js examples/js/controls/TransformControls.js]
+		</p>
+	</body>
+</html>

+ 1 - 0
docs/examples/en/exporters/GLTFExporter.html

@@ -94,6 +94,7 @@
 			<li>truncateDrawRange - bool. Export just the attributes within the drawRange, if defined, instead of exporting the whole array. Default is true.</li>
 			<li>truncateDrawRange - bool. Export just the attributes within the drawRange, if defined, instead of exporting the whole array. Default is true.</li>
 			<li>binary - bool. Export in binary (.glb) format, returning an ArrayBuffer. Default is false.</li>
 			<li>binary - bool. Export in binary (.glb) format, returning an ArrayBuffer. Default is false.</li>
 			<li>embedImages - bool. Export with images embedded into the glTF asset. Default is true.</li>
 			<li>embedImages - bool. Export with images embedded into the glTF asset. Default is true.</li>
+			<li>maxTextureSize - int. Restricts the image maximum size (both width and height) to the given value. This option works only if embedImages is true. Default is Infinity.</li>
 			<li>animations - Array<[page:AnimationClip AnimationClip]>. List of animations to be included in the export.</li>
 			<li>animations - Array<[page:AnimationClip AnimationClip]>. List of animations to be included in the export.</li>
 			<li>forceIndices - bool. Generate indices for non-index geometry and export with them. Default is false.</li>
 			<li>forceIndices - bool. Generate indices for non-index geometry and export with them. Default is false.</li>
 			<li>forcePowerOfTwoTextures - bool. Export with images resized to POT size. This option works only if embedImages is true. Default is false.</li>
 			<li>forcePowerOfTwoTextures - bool. Export with images resized to POT size. This option works only if embedImages is true. Default is false.</li>

+ 0 - 101
docs/examples/en/loaders/BabylonLoader.html

@@ -1,101 +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 a <em>.babylon</em> resource. <br />
-		The <a href="https://doc.babylonjs.com/generals/file_format_map_(.babylon)"> .babylon </a> file format used by
-		<a href="https://www.babylonjs.com/">Babylon.js</a>.
-		</p>
-
-		<h2>Example</h2>
-
-		<code>
-		// instantiate a loader
-		var loader = new THREE.BabylonLoader();
-
-		// load a Babylon resource
-		loader.load(
-			// resource URL
-			'models/babylon/skull.babylon',
-			// called when resource is loaded
-			function ( object ) {
-
-				scene.add( object );
-
-			},
-			// called when loading is in progress
-			function ( xhr ) {
-
-				console.log( ( xhr.loaded / xhr.total * 100 ) + '% loaded' );
-
-			},
-			// called when loading has errors
-			function ( xhr ) {
-
-				console.log( 'An error happened' );
-
-			}
-		);
-		</code>
-
-		[example:webgl_loader_babylon]
-
-		<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>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
-		<p>
-		[page:String url] — A string containing the path/URL of the <em>.babylon</em> file.<br />
-		[page:function onLoad] — (optional) A function to be called after loading is successfully completed. The function receives the loaded [page:Object3D] as an argument.<br />
-		[page:function onProgress] — (optional) A function to be called while the loading is in progress. The argument will be the XMLHttpRequest instance, which contains [page:Integer total] and [page:Integer loaded] bytes.<br />
-		[page:function onError] — (optional) A function to be called if an error occurs during loading. The function receives the error as an argument.<br />
-		</p>
-		<p>
-		Begin loading from url and call onLoad with the parsed response content.
-		</p>
-
-		<h3>[method:Object3D parse]( [param:Object json] )</h3>
-		<p>
-		[page:Object json] — The <em>JSON</em> structure to parse.
-		</p>
-		<p>
-		Parse a <em>JSON</em> structure and return an [page:Object3D object] or a [page:Scene scene].<br />
-		Found objects are converted to [page:Mesh] with a [page:BufferGeometry] and a default [page:MeshPhongMaterial].<br />
-		Lights are parsed accordingly.
-		</p>
-
-		<h3>[method:BabylonLoader setPath]( [param:String path] )</h3>
-		<p>
-		[page:String path] — Base path.
-		</p>
-		<p>
-		Set the base path for the file.
-		</p>
-
-		<h2>Source</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/js/loaders/BabylonLoader.js examples/js/loaders/BabylonLoader.js]
-		</p>
-	</body>
-</html>

+ 5 - 8
docs/examples/en/loaders/BasisTextureLoader.html

@@ -9,6 +9,7 @@
 	</head>
 	</head>
 	<body>
 	<body>
 		[page:Loader] &rarr;
 		[page:Loader] &rarr;
+
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
 		<p class="desc">
 		<p class="desc">
@@ -81,7 +82,11 @@
 		Creates a new [name].
 		Creates a new [name].
 		</p>
 		</p>
 
 
+		<h2>Properties</h2>
+		<p>See the base [page:Loader] class for common properties.</p>
+
 		<h2>Methods</h2>
 		<h2>Methods</h2>
+		<p>See the base [page:Loader] class for common methods.</p>
 
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>
@@ -103,14 +108,6 @@
 		the output format for the transcoder. Must be called before loading a texture.
 		the output format for the transcoder. Must be called before loading a texture.
 		</p>
 		</p>
 
 
-		<h3>[method:this setCrossOrigin]( [param:String crossOrigin] )</h3>
-		<p>
-		[page:String crossOrigin] — Options are '', 'anonymous', or 'use-credentials'. Default is 'anonymous'.
-		</p>
-		<p>
-		Sets options for CORS requests.
-		</p>
-
 		<h3>[method:this setTranscoderPath]( [param:String path] )</h3>
 		<h3>[method:this setTranscoderPath]( [param:String path] )</h3>
 		<p>
 		<p>
 		[page:String path] — Path to folder containing the WASM transcoder and JS wrapper.
 		[page:String path] — Path to folder containing the WASM transcoder and JS wrapper.

+ 4 - 13
docs/examples/en/loaders/DRACOLoader.html

@@ -87,7 +87,11 @@
 		Creates a new [name].
 		Creates a new [name].
 		</p>
 		</p>
 
 
+		<h2>Properties</h2>
+		<p>See the base [page:Loader] class for common properties.</p>
+
 		<h2>Methods</h2>
 		<h2>Methods</h2>
+		<p>See the base [page:Loader] class for common methods.</p>
 
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>
@@ -100,19 +104,6 @@
 		Begin loading from url and call the <em>onLoad</em> function with the decompressed geometry.
 		Begin loading from url and call the <em>onLoad</em> function with the decompressed geometry.
 		</p>
 		</p>
 
 
-		<h3>[method:this setPath]( [param:String path] )</h3>
-		<p>
-		[page:String path] — Base path.
-		</p>
-		<p>
-		Set the base path for the <em>.drc</em> file.
-		</p>
-
-		<h3>[method:this setCrossOrigin]( [param:String value] )</h3>
-		<p>
-		[page:String value] — The crossOrigin string to implement CORS for loading the url from a different domain that allows CORS.
-		</p>
-
 		<h3>[method:this setDecoderPath]( [param:String value] )</h3>
 		<h3>[method:this setDecoderPath]( [param:String value] )</h3>
 		<p>
 		<p>
 		[page:String value] — Path to folder containing the JS and WASM decoder libraries.
 		[page:String value] — Path to folder containing the JS and WASM decoder libraries.

+ 3 - 22
docs/examples/en/loaders/GLTFLoader.html

@@ -9,6 +9,7 @@
 	</head>
 	</head>
 	<body>
 	<body>
 		[page:Loader] &rarr;
 		[page:Loader] &rarr;
+
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
 		<p class="desc"> A loader for <em>glTF 2.0</em> resources. <br /><br />
 		<p class="desc"> A loader for <em>glTF 2.0</em> resources. <br /><br />
@@ -161,9 +162,10 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
-
+		<p>See the base [page:Loader] class for common properties.</p>
 
 
 		<h2>Methods</h2>
 		<h2>Methods</h2>
+		<p>See the base [page:Loader] class for common methods.</p>
 
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>
@@ -176,27 +178,6 @@
 		Begin loading from url and call the callback function with the parsed response content.
 		Begin loading from url and call the callback function with the parsed response content.
 		</p>
 		</p>
 
 
-		<h3>[method:GLTFLoader setPath]( [param:String path] )</h3>
-		<p>
-		[page:String path] — Base path.
-		</p>
-		<p>
-		Set the base path for the .gltf/.glb file.
-		</p>
-
-		<h3>[method:GLTFLoader setResourcePath]( [param:String path] )</h3>
-		<p>
-		[page:String path] — Base path for loading additional resources e.g. textures and .bin data.
-		</p>
-		<p>
-		Set the base path for additional resources.
-		</p>
-
-		<h3>[method:null setCrossOrigin]( [param:String value] )</h3>
-		<p>
-		[page:String value] — The crossOrigin string to implement CORS for loading the url from a different domain that allows CORS.
-		</p>
-
 		<h3>[method:null setDRACOLoader]( [param:DRACOLoader dracoLoader] )</h3>
 		<h3>[method:null setDRACOLoader]( [param:DRACOLoader dracoLoader] )</h3>
 		<p>
 		<p>
 		[page:DRACOLoader dracoLoader] — Instance of THREE.DRACOLoader, to be used for decoding assets compressed with the KHR_draco_mesh_compression extension.
 		[page:DRACOLoader dracoLoader] — Instance of THREE.DRACOLoader, to be used for decoding assets compressed with the KHR_draco_mesh_compression extension.

+ 0 - 543
docs/examples/en/loaders/LoaderSupport.html

@@ -1,543 +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">Supporting classes for file loaders and web worker based loaders.</p>
-
-		<h2>Sub-Classes</h2>
-		[page:LoaderSupport.Builder]<br>
-		[page:LoaderSupport.LoadedMeshUserOverride]<br>
-		[page:LoaderSupport.WorkerSupport]<br>
-		[page:LoaderSupport.WorkerRunnerRefImpl]<br>
-		[page:LoaderSupport.WorkerDirector]<br>
-		[page:LoaderSupport.ResourceDescriptor]<br>
-		[page:LoaderSupport.PrepData]<br>
-		[page:LoaderSupport.Callbacks]<br>
-		[page:LoaderSupport.Validator]<br>
-
-
-		<h2>Example</h2>
-
-		[example:webgl_loader_obj2_meshspray] - Example using [page:LoaderSupport.LoaderWorkerDirector] and [page:LoaderSupport.LoaderWorkerSupport].<br>
-
-		<h2>Classes</h2>
-		<br>
-
-		<a name="Builder"></a><h1>Builder</h1>
-		<h2>Constructor</h2>
-
-		<h3>Builder()</h3>
-		<p>
-			Builds one or many [page:Mesh] from one raw set of Arraybuffers, materialGroup descriptions and further parameters.
-			Supports vertex, vertexColor, normal, uv and index buffers.
-		</p>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null setLogging] ( [param:Boolean enabled], [param:Boolean debug] )</h3>
-		<p>
-			[page:Boolean enabled] True or false.<br>
-			[page:Boolean debug] True or false.
-		</p>
-		<p>
-			Enable or disable logging in general (except warn and error), plus enable or disable debug logging.
-		</p>
-
-
-		<h3>[method:null init] ()</h3>
-		<p>
-			Initializes the Builder (currently only default material initialisation).
-		</p>
-
-
-		<h3>[method:null setMaterials] ( Array of [param:Material materials] )</h3>
-		<p>
-			Array of [page:Material materials] - Array of [page:Material Materials]
-		</p>
-		<p>
-			Set materials loaded by any supplier of an Array of [page:Material Materials].
-		</p>
-
-
-		<h3>[method:Array processPayload] ( Object payload )</h3>
-		<p>
-			[page:Object payload] - Raw Mesh or Material descriptions.
-		</p>
-		<p>
-			Delegates processing of the payload (mesh building or material update) to the corresponding functions (BW-compatibility).
-		</p>
-
-
-		<h3>[method:Array buildMeshes] ( Object meshPayload )</h3>
-		<p>
-			[page:Object meshPayload] - Raw mesh description (buffers, params, materials) used to build one to many meshes.
-		</p>
-		<p>
-			Builds one or multiple meshes from the data described in the payload (buffers, params, material info).
-		</p>
-
-
-		<h3>[method:null updateMaterials] ( Object materialPayload )</h3>
-		<p>
-			[page:Object materialPayload] - Material update instructions
-		</p>
-		<p>
-			Updates the materials with contained material objects (sync) or from alteration instructions (async).
-		</p>
-
-
-		<h3>[method:Object getMaterialsJSON] ()</h3>
-		<p>
-			Returns the mapping object of material name and corresponding jsonified material.
-		</p>
-
-
-		<h3>[method:Object getMaterials] ()</h3>
-		<p>
-			Returns the mapping object of material name and corresponding material.
-		</p>
-		<br>
-		<br>
-
-
-		<a name="LoadedMeshUserOverride"></a><h1>LoadedMeshUserOverride</h1>
-		<h2>Constructor</h2>
-
-		<h3>LoadedMeshUserOverride( [param:Boolean disregardMesh], [param:BufferGeometry bufferGeometry] )</h3>
-		<p>
-			[page:Boolean disregardMesh] - Tell implementation to completely disregard this mesh<br>
-			[page:Boolean alteredMesh] - Tell implementation that mesh(es) have been altered or added
-		</p>
-		<p>
-			Object to return by callback onMeshAlter. Used to disregard a certain mesh or to return one to many meshes.
-		</p>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null addMesh] ( [param:Mesh mesh] )</h3>
-		<p>
-			[page:Mesh mesh] - Mesh
-		</p>
-		<p>
-			Add a mesh created within callback.
-		</p>
-
-
-		<h3>[method:boolean isDisregardMesh] ()</h3>
-		<p>
-			Answers if mesh shall be disregarded completely.
-		</p>
-
-
-		<h3>[method:boolean providesAlteredMeshes] ()</h3>
-		<p>
-			Answers if new mesh(es) were created.
-		</p>
-		<br>
-		<br>
-
-
-		<a name="WorkerSupport"></a><h1>WorkerSupport</h1>
-		<h2>Constructor</h2>
-
-		<h3>WorkerSupport()</h3>
-		<p>
-			This class provides means to transform existing parser code into a web worker.
-			It defines a simple communication protocol which allows to configure the worker and receive raw mesh data during execution.
-		</p>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null setLogging]( [param:Boolean enabled], [param:Boolean debug] )</h3>
-		<p>
-			[page:Boolean enabled] True or false.<br>
-			[page:Boolean debug] True or false.
-		</p>
-		<p>
-			Enable or disable logging in general (except warn and error), plus enable or disable debug logging.
-		</p>
-
-
-		<h3>[method:null setForceWorkerDataCopy]( [param:Boolean forceWorkerDataCopy] )</h3>
-		<p>
-			[page:Boolean forceWorkerDataCopy] True or false.
-		</p>
-		<p>
-			Forces all ArrayBuffers to be transferred to worker to be copied.
-		</p>
-
-
-		<h3>[method:null validate] ( [param:Function functionCodeBuilder], Array of [param:String libLocations], [param:String libPath], [param:LoaderSupport.WorkerRunnerRefImpl runnerImpl] )</h3>
-		<p>
-			[page:Function functionCodeBuilder] - Function that is invoked with funcBuildObject and funcBuildSingleton that allows stringification of objects and singletons.<br>
-			Array of [page:String libLocations] - URL of libraries that shall be added to worker code relative to libPath.<br>
-			[page:String libPath] - Base path used for loading libraries.<br>
-			[page:LoaderSupport.WorkerRunnerRefImpl runnerImpl] - The default worker parser wrapper implementation (communication and execution). An extended class could be passed here.
-		</p>
-		<p>
-			Validate the status of worker code and the derived worker.
-		</p>
-
-
-		<h3>[method:null setTerminateRequested] ( [param:Boolean terminateRequested] )</h3>
-		<p>
-			[page:Boolean terminateRequested] - True or false.
-		</p>
-		<p>
-			Request termination of worker once parser is finished.
-		</p>
-
-
-		<h3>[method:null setCallbacks] ( [param:Function builder], [param:Function onLoad] )</h3>
-		<p>
-			[page:Function builder] - The builder function. Default is [page:LoaderSupport.Builder].<br>
-			[page:Function onLoad] - The function that is called when parsing is complete.
-		</p>
-		<p>
-			Specify functions that should be build when new raw mesh data becomes available and when the parser is finished.
-		</p>
-
-
-		<h3>[method:null run] ( [param:Object payload] )</h3>
-		<p>
-			[page:Object payload] - Raw mesh description (buffers, params, materials) used to build one to many meshes.
-		</p>
-		<p>
-			Runs the parser with the provided configuration.
-		</p>
-		<br>
-		<br>
-
-
-		<a name="WorkerRunnerRefImpl"></a><h1>WorkerRunnerRefImpl</h1>
-		<h2>Constructor</h2>
-
-		<h3>WorkerRunnerRefImpl()</h3>
-		<p>
-			Default implementation of the WorkerRunner responsible for creation and configuration of the parser within the worker.
-		</p>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null applyProperties] ( [param:Object parser], [param:Object params] )</h3>
-		<p>
-			[page:Object parser] - The parser instance<br>
-			[page:Object params] - The parameter object
-		</p>
-		<p>
-			Applies values from parameter object via set functions or via direct assignment.
-		</p>
-
-
-		<h3>[method:null run] ( [param:Object payload] )</h3>
-		<p>
-			[page:Object payload] - Raw mesh description (buffers, params, materials) used to build one to many meshes.
-		</p>
-		<p>
-			Configures the Parser implementation according the supplied configuration object.
-		</p>
-		<br>
-		<br>
-
-
-		<a name="WorkerDirector"></a><h1>WorkerDirector</h1>
-		<h2>Constructor</h2>
-
-		<h3>WorkerDirector( [param:String classDef] )</h3>
-		<p>
-			[page:String classDef] - Class definition to be used for construction
-		</p>
-		<p>
-			Orchestrate loading of multiple OBJ files/data from an instruction queue with a configurable amount of workers (1-16).<br>
-			- Workflow:<br>
-			- prepareWorkers<br>
-			- enqueueForRun<br>
-			- processQueue<br>
-			- tearDown
-		</p>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null setLogging]( [param:Boolean enabled], [param:Boolean debug] )</h3>
-		<p>
-			[page:Boolean enabled] True or false.<br>
-			[page:Boolean debug] True or false.
-		</p>
-		<p>
-			Enable or disable logging in general (except warn and error), plus enable or disable debug logging.
-		</p>
-
-
-		<h3>[method:null setForceWorkerDataCopy]( [param:Boolean forceWorkerDataCopy] )</h3>
-		<p>
-			[page:Boolean forceWorkerDataCopy] True or false.
-		</p>
-		<p>
-			Forces all ArrayBuffers to be transferred to worker to be copied.
-		</p>
-
-
-		<h3>[method:null prepareWorkers]( [param:WWOBJLoader2.Callbacks globalCallbacks], [param:Number maxQueueSize], [param:Number maxWebWorkers] )</h3>
-		<p>
-			[page:LoaderSupport.Callbacks globalCallbacks] - Register global callbacks used by all web workers<br>
-			[page:Number maxQueueSize] - Set the maximum size of the instruction queue (1-1024)<br>
-			[page:Number maxWebWorkers] - Set the maximum amount of workers (1-16)
-		</p>
-		<p>
-			Create or destroy workers according limits. Set the name and register callbacks for dynamically created web workers.
-		</p>
-
-
-		<h3>[method:null enqueueForRun]( [param:LoaderSupport.PrepData runParams] )</h3>
-		<p>
-			[page:LoaderSupport.PrepData runParams]
-		</p>
-		<p>
-			Store run instructions in internal instructionQueue.
-		</p>
-
-
-		<h3>[method:null processQueue]()</h3>
-		<p>
-			Process the instructionQueue until it is depleted.
-		</p>
-
-
-		<h3>[method:null tearDown]( [param:Function callbackOnFinishedProcessing] )</h3>
-		<p>
-			[page:Function callbackOnFinishedProcessing] - Function called once all workers finished processing.
-		</p>
-		<p>
-			Terminate all workers.
-		</p>
-
-
-		<h3>[method:null getMaxQueueSize]()</h3>
-		<p>
-			Returns the maximum length of the instruction queue.
-		</p>
-
-
-		<h3>[method:null getMaxWebWorkers]()</h3>
-		<p>
-			Returns the maximum number of workers.
-		</p>
-
-		<h3>[method:Boolean isRunning]()</h3>
-		<p>
-			Returns if any workers are running.
-		</p>
-
-
-		<h3>[method:null setCrossOrigin]( [param:String crossOrigin] )</h3>
-		<p>
-			[page:String crossOrigin] - CORS value
-		</p>
-		<p>
-			Sets the CORS string to be used.
-		</p>
-		<br>
-		<br>
-
-
-		<a name="ResourceDescriptor"></a><h1>ResourceDescriptor</h1>
-		<h2>Constructor</h2>
-
-		<h3>ResourceDescriptor( [param:String url], [param:String extension] )</h3>
-		<p>
-			[page:String url] - URL to the file<br>
-			[page:String extension] - The file extension (type)
-		</p>
-		<p>
-			A resource description used by [page:LoaderSupport.PrepData] and others.
-		</p>
-
-		<h2>Methods</h2>
-
-		<h3>[method:null setContent]( [param:Object content )</h3>
-		<p>
-			[page:Object content] - The file content as ArrayBuffer or text
-		</p>
-		<p>
-			Set the content of this resource
-		</p>
-
-
-		<h3>[method:null setResourcePath] ( [param:String resourcePath] )</h3>
-		<p>
-			[page:String resourcePath] - URL
-		</p>
-		<p>
-			Allows to specify resourcePath for dependencies of specified resource.
-		</p>
-		<br>
-		<br>
-
-
-		<a name="PrepData"></a><h1>PrepData</h1>
-		<h2>Constructor</h2>
-
-		<h3>PrepData( [param:String modelName] )</h3>
-		<p>
-			[page:String modelName] - Overall name of the model
-		</p>
-		<p>
-			Configuration instructions to be used by run method.
-		</p>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null setLogging]( [param:Boolean enabled], [param:Boolean debug] )</h3>
-		<p>
-			[page:Boolean enabled] True or false.<br>
-			[page:Boolean debug] True or false.
-		</p>
-		<p>
-			Enable or disable logging in general (except warn and error), plus enable or disable debug logging.
-		</p>
-
-
-		<h3>[method:Callbacks getCallbacks]()</h3>
-		<p>
-			Returns all callbacks as [page:LoaderSupport.Callbacks].
-		</p>
-
-
-		<h3>[method:null addResource]( [param:LoaderSupport.ResourceDescriptor resource] )</h3>
-		<p>
-			[page:LoaderSupport.ResourceDescriptor resource] Adds a [page:LoaderSupport.ResourceDescriptor]
-		</p>
-		<p>
-			Add a resource description.
-		</p>
-
-
-		<h3>[method:null checkResourceDescriptorFiles] ( [param:LoaderSupport.ResourceDescriptor resources], [param:Object fileDesc] )</h3>
-		<p>
-			[page:LoaderSupport.ResourceDescriptor resources] - Array of [page:LoaderSupport.ResourceDescriptor]<br>
-			[page:Object fileDesc] - Object describing which resources are of interest (ext, type (string or UInt8Array) and ignore (boolean))
-		</p>
-		<p>
-			Identify files or content of interest from an Array of [page:LoaderSupport.ResourceDescriptor].
-			Returns Object with each "ext" and the corresponding [page:LoaderSupport.ResourceDescriptor]
-		</p>
-
-
-		<h3>[method:PrepData clone] ()</h3>
-		<p>
-			Clones this object and returns it afterwards. Callbacks and resources are not cloned deep (references!).
-		</p>
-		<br>
-		<br>
-
-
-		<a name="Callbacks"></a><h1>Callbacks</h1>
-		<h2>Constructor</h2>
-
-		<h3>Callbacks()</h3>
-		<p>
-			Callbacks utilized by loaders and builder.
-		</p>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null setCallbackOnProgress]( [param:Function callbackOnProgress] )</h3>
-		<p>
-			[page:Function callbackOnProgress] - Callback function for described functionality
-		</p>
-		<p>
-			Register callback function that is invoked by internal function "announceProgress" to print feedback.
-		</p>
-
-		<h3>[method:null setCallbackOnReportError]( [param:Function callbackOnReportError] )</h3>
-		<p>
-			[page:Function callbackOnReportError] - Callback function for described functionality
-		</p>
-		<p>
-			Register callback function that is invoked when an error is reported.
-		</p>
-
-		<h3>[method:null setCallbackOnMeshAlter]( [param:Function callbackOnMeshAlter] )</h3>
-		<p>
-			[page:Function callbackOnMeshAlter] - Callback function for described functionality
-		</p>
-		<p>
-			Register callback function that is called every time a mesh was loaded.
-			Use [page:LoadedMeshUserOverride] for alteration instructions (geometry, material or disregard mesh).
-		</p>
-
-
-		<h3>[method:null setCallbackOnLoad]( [param:Function callbackOnLoad] )</h3>
-		<p>
-			[page:Function callbackOnLoad] - Callback function for described functionality
-		</p>
-		<p>
-			Register callback function that is called once loading of the complete OBJ file is completed.
-		</p>
-
-		<h3>[method:null setCallbackOnLoadMaterials]( [param:Function callbackOnLoadMaterials] )</h3>
-		<p>
-			[page:Function callbackOnLoadMaterials] - Callback function for described functionality
-		</p>
-		<p>
-			Register callback function that is called when materials have been loaded.
-		</p>
-		<br>
-		<br>
-
-
-		<a name="Validator"></a><h1>Validator</h1>
-		<h2>Constructor</h2>
-
-		<h3>Validator()</h3>
-		<p>
-			Validation functions.
-		</p>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:Boolean isValid]( [param:Object input] )</h3>
-		<p>
-			[page:Object input] - Can be anything
-		</p>
-		<p>
-			If given input is null or undefined, false is returned otherwise true.
-		</p>
-
-
-		<h3>[method:null verifyInput]( [param:Object input], [param:Object defaultValue] )</h3>
-		<p>
-			[page:Object input] - Can be anything<br>
-			[page:Object defaultValue] - Can be anything
-		</p>
-		<p>
-			If given input is null or undefined, the defaultValue is returned otherwise the given input.
-		</p>
-		<br>
-		<br>
-
-		<h2>Source</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/js/loaders/LoaderSupport.js examples/js/loaders/LoaderSupport.js]
-		</p>
-
-	</body>
-</html>

+ 3 - 22
docs/examples/en/loaders/MMDLoader.html

@@ -9,6 +9,7 @@
 	</head>
 	</head>
 	<body>
 	<body>
 		[page:Loader] &rarr;
 		[page:Loader] &rarr;
+
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
 		<p class="desc"> A loader for <a href="http://www.geocities.jp/higuchuu4/index_e.htm"><em>MMD</em></a> resources. <br /><br />
 		<p class="desc"> A loader for <a href="http://www.geocities.jp/higuchuu4/index_e.htm"><em>MMD</em></a> resources. <br /><br />
@@ -66,9 +67,10 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
-
+		<p>See the base [page:Loader] class for common properties.</p>
 
 
 		<h2>Methods</h2>
 		<h2>Methods</h2>
+		<p>See the base [page:Loader] class for common methods.</p>
 
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>
@@ -105,11 +107,6 @@
 		Begin loading PMD/PMX model file and VMD motion file(s) from urls and fire the callback function with an [page:Object] containing parsed [page:SkinnedMesh] and [page:AnimationClip] fitting to the [page:SkinnedMesh].
 		Begin loading PMD/PMX model file and VMD motion file(s) from urls and fire the callback function with an [page:Object] containing parsed [page:SkinnedMesh] and [page:AnimationClip] fitting to the [page:SkinnedMesh].
 		</p>
 		</p>
 
 
-		<h3>[method:MMDLoader setCrossOrigin]( [param:String crossOrigin] )</h3>
-		<p>
-		[page:String crossOrigin] — The crossOrigin string to implement CORS for loading the url from a different domain that allows CORS.
-		</p>
-
 		<h3>[method:MMDLoader setAnimationPath]( [param:String animationPath] )</h3>
 		<h3>[method:MMDLoader setAnimationPath]( [param:String animationPath] )</h3>
 		<p>
 		<p>
 		[page:String animationPath] — Base path for loading animation data (VMD/VPD files).
 		[page:String animationPath] — Base path for loading animation data (VMD/VPD files).
@@ -118,22 +115,6 @@
 		Set the base path for additional resources like textures.
 		Set the base path for additional resources like textures.
 		</p>
 		</p>
 
 
-		<h3>[method:MMDLoader setPath]( [param:String path] )</h3>
-		<p>
-		[page:String path] — Base path.
-		</p>
-		<p>
-		Sets the base path or URL from which to load files.
-		</p>
-
-		<h3>[method:MMDLoader setResourcePath]( [param:String resourcePath] )</h3>
-		<p>
-		[page:String resourcePath] — Base path for loading additional resources e.g. textures.
-		</p>
-		<p>
-		Set the base path for additional resources like textures.
-		</p>
-
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		<p>
 		<p>

+ 3 - 31
docs/examples/en/loaders/MTLLoader.html

@@ -8,6 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	</head>
 	<body>
 	<body>
+		[page:Loader] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
@@ -27,10 +28,10 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
-
+		<p>See the base [page:Loader] class for common properties.</p>
 
 
 		<h2>Methods</h2>
 		<h2>Methods</h2>
-
+		<p>See the base [page:Loader] class for common methods.</p>
 
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>
@@ -43,35 +44,6 @@
 			Begin loading from url and return the loaded material.
 			Begin loading from url and return the loaded material.
 		</p>
 		</p>
 
 
-
-		<h3>[method:MTLLoader setPath]( [param:String path] )</h3>
-		<p>
-			[page:String path] — required<br />
-		</p>
-		<p>
-			 Set base path for MTL file.
-		</p>
-
-
-		<h3>[method:MTLLoader setResourcePath]( [param:String path] )</h3>
-		<p>
-			[page:String path] — required<br />
-		</p>
-		<p>
-			Set base path for additional resources like textures. If set, this path will be used as the base path.
-		</p>
-
-
-		<h3>[method:MTLLoader setCrossOrigin]( [param:String value] )</h3>
-		<p>
-			[page:String value] — required<br />
-		</p>
-		<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>[method:MTLLoader setMaterialOptions]( [param:Object options] )</h3>
 		<h3>[method:MTLLoader setMaterialOptions]( [param:Object options] )</h3>
 		<p>
 		<p>
 			[page:Object options] — required
 			[page:Object options] — required

+ 3 - 6
docs/examples/en/loaders/OBJLoader.html

@@ -8,6 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	</head>
 	<body>
 	<body>
+		[page:Loader] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
@@ -64,9 +65,10 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
-
+		<p>See the base [page:Loader] class for common properties.</p>
 
 
 		<h2>Methods</h2>
 		<h2>Methods</h2>
+		<p>See the base [page:Loader] class for common methods.</p>
 
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>
@@ -97,11 +99,6 @@
 		Sets materials loaded by MTLLoader or any other supplier of a [page:MTLLoaderMaterialCreator MTLLoader.MaterialCreator].
 		Sets materials loaded by MTLLoader or any other supplier of a [page:MTLLoaderMaterialCreator MTLLoader.MaterialCreator].
 		</p>
 		</p>
 
 
-		<h3>[method:OBJLoader setPath]( [param:String path] )</h3>
-		<p>
-		Sets the base path or URL from which to load files. This can be useful to avoid repetition if you are calling [page:OBJLoader.load .load] multiple times on the same directory.
-		</p>
-
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		<p>
 		<p>

+ 61 - 67
docs/examples/en/loaders/OBJLoader2.html

@@ -22,183 +22,177 @@
 
 
 		<code>
 		<code>
 		// instantiate the loader
 		// instantiate the loader
-		var loader = new THREE.OBJLoader2();
+		let loader = new THREE.OBJLoader2();
 
 
 		// function called on successful load
 		// function called on successful load
-		var callbackOnLoad = function ( event ) {
-			scene.add( event.detail.loaderRootNode );
-		};
+		function callbackOnLoad ( object3d ) {
+			scene.add( object3d );
+		}
 
 
 		// load a resource from provided URL synchronously
 		// load a resource from provided URL synchronously
-		loader.load( 'obj/female02/female02.obj', callbackOnLoad, null, null, null, false );
+		loader.load( 'obj/female02/female02.obj', callbackOnLoad, null, null, null );
 		</code>
 		</code>
 
 
 		[example:webgl_loader_obj2] - Simple example <br>
 		[example:webgl_loader_obj2] - Simple example <br>
-		[example:webgl_loader_obj2_options] - Example for multiple use-cases (parse, load and run with instructions (sync and async)<br>
+		[example:webgl_loader_obj2_options] - Example for multiple use-cases (parse and load, sync or in parallel to main (see [page:OBJLoader2Parallel]))<br>
 
 
 
 
 		<h2>Constructor</h2>
 		<h2>Constructor</h2>
 
 
-		<h3>[name]( [param:LoadingManager manager], [param:LoaderSupport.ConsoleLogger logger] )</h3>
+		<h3>[name]( [param:LoadingManager manager] )</h3>
 		<p>
 		<p>
 			[page:LoadingManager manager] - The [page:LoadingManager loadingManager] for the loader to use. Default is [page:LoadingManager THREE.DefaultLoadingManager].<br>
 			[page:LoadingManager manager] - The [page:LoadingManager loadingManager] for the loader to use. Default is [page:LoadingManager THREE.DefaultLoadingManager].<br>
-			[page:LoaderSupport.ConsoleLogger logger] - logger to be used
 		</p>
 		</p>
 		<p>
 		<p>
-			Use [name] to load OBJ data from files or to parse OBJ data from arraybuffer or text.
+			Creates a new [name]. Use it to load OBJ data from files or to parse OBJ data from arraybuffer or text.
 		</p>
 		</p>
 
 
 
 
+		<h2>Properties</h2>
+		<p>See the base [page:Loader] class for common properties.</p>
+
+
 		<h2>Methods</h2>
 		<h2>Methods</h2>
+		<p>See the base [page:Loader] class for common methods.</p>
+
 
 
 		<h3>[method:Object3D parse]( [param:arraybuffer content]|[param:String content] )</h3>
 		<h3>[method:Object3D parse]( [param:arraybuffer content]|[param:String content] )</h3>
 		<p>
 		<p>
 			[[page:arraybuffer content]|[page:String content]] OBJ data as Uint8Array or String
 			[[page:arraybuffer content]|[page:String content]] OBJ data as Uint8Array or String
 		</p>
 		</p>
 		<p>
 		<p>
-			Parses OBJ data synchronously from arraybuffer or string and returns the [page:Object3D loaderRoorNode].
-		</p>
-
-
-		<h3>[method:Object3D parseAsync]( [param:arraybuffer content], [param:Function onLoad] )</h3>
-		<p>
-			[page:arraybuffer content] - OBJ data as Uint8Array<br>
-			[page:Function onLoad] - Called after worker successfully completed loading<br>
-		</p>
-		<p>
-			Parses OBJ content asynchronously from arraybuffer.
+			Parses OBJ data synchronously from arraybuffer or string and returns the [page:Object3D baseObject3d].
 		</p>
 		</p>
 
 
 
 
-		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError], [param:Function onMeshAlter], [param:boolean useAsync] )</h3>
+		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError], [param:Function onMeshAlter] )</h3>
 		<p>
 		<p>
 			[page:String url] - A string containing the path/URL of the file to be loaded.<br>
 			[page:String url] - A string containing the path/URL of the file to be loaded.<br>
 			[page:Function onLoad] - A function to be called after loading is successfully completed. The function receives loaded [page:Object3D] as an argument.<br>
 			[page:Function onLoad] - A function to be called after loading is successfully completed. The function receives loaded [page:Object3D] as an argument.<br>
 			[page:Function onProgress] - (optional) A function to be called while the loading is in progress. The argument will be the XMLHttpRequest instance, which contains [page:Integer total] and [page:Integer loaded] bytes.<br>
 			[page:Function onProgress] - (optional) A function to be called while the loading is in progress. The argument will be the XMLHttpRequest instance, which contains [page:Integer total] and [page:Integer loaded] bytes.<br>
 			[page:Function onError] - (optional) A function to be called if an error occurs during loading. The function receives the error as an argument.<br>
 			[page:Function onError] - (optional) A function to be called if an error occurs during loading. The function receives the error as an argument.<br>
 			[page:Function onMeshAlter] - (optional) A function to be called after a new mesh raw data becomes available for alteration.<br>
 			[page:Function onMeshAlter] - (optional) A function to be called after a new mesh raw data becomes available for alteration.<br>
-			[page:boolean useAsync] - (optional) If true, uses async loading with worker, if false loads data synchronously.
 		</p>
 		</p>
 		<p>
 		<p>
 			Use this convenient method to load a file at the given URL. By default the fileLoader uses an ArrayBuffer.
 			Use this convenient method to load a file at the given URL. By default the fileLoader uses an ArrayBuffer.
 		</p>
 		</p>
 
 
 
 
-		<h3>[method:null run]( [param:LoaderSupport.PrepData params], [param:LoaderSupport.WorkerSupport workerSupportExternal] )</h3>
+		<h3>[method:OBJLoader2 setLogging]( [param:Boolean enabled], [param:Boolean debug] )</h3>
 		<p>
 		<p>
-			[page:LoaderSupport.PrepData params] - prepData All parameters and resources required for execution<br>
-			[page:LoaderSupport.WorkerSupport workerSupportExternal] - Use pre-existing WorkerSupport
+			[page:Boolean enabled] True or false.<br>
+			[page:Boolean debug] True or false.
 		</p>
 		</p>
 		<p>
 		<p>
-			Run the loader according the provided instructions.
+			Enable or disable logging in general (except warn and error), plus enable or disable debug logging.
 		</p>
 		</p>
 
 
 
 
-		<h3>[method:null setLogging]( [param:Boolean enabled], [param:Boolean debug] )</h3>
+		<h3>[method:OBJLoader2 addMaterialPerSmoothingGroup] ( [param:boolean materialPerSmoothingGroup] )</h3>
 		<p>
 		<p>
-			[page:Boolean enabled] True or false.<br>
-			[page:Boolean debug] True or false.
+			[page:boolean materialPerSmoothingGroup]
 		</p>
 		</p>
 		<p>
 		<p>
-			Enable or disable logging in general (except warn and error), plus enable or disable debug logging.
+			Tells whether a material shall be created per smoothing group.
 		</p>
 		</p>
 
 
 
 
-		<h3>[method:null setModelName] ( [param:String modelName] )</h3>
+		<h3>[method:OBJLoader2 setUseOAsMesh] ( [param:boolean useOAsMesh] )</h3>
 		<p>
 		<p>
-			[page:String modelName]
+			[page:boolean useOAsMesh]
 		</p>
 		</p>
 		<p>
 		<p>
-			Set the name of the model.
+			Usually 'o' is meta-information and does not result in creation of new meshes, but mesh creation on occurrence of "o" can be enforced.
 		</p>
 		</p>
 
 
 
 
-		<h3>[method:null setPath] ( [param:String path] )</h3>
+		<h3>[method:OBJLoader2 setUseIndices]( [param:Boolean useIndices] )</h3>
 		<p>
 		<p>
-			[page:String path] - URL
+			[page:Boolean useIndices]
 		</p>
 		</p>
 		<p>
 		<p>
-			The URL of the base path.
+			Instructs loaders to create indexed [page:BufferGeometry].
 		</p>
 		</p>
 
 
 
 
-		<h3>[method:null setResourcePath] ( [param:String resourcePath] )</h3>
+		<h3>[method:OBJLoader2 setDisregardNormals]( [param:Boolean disregardNormals] )</h3>
 		<p>
 		<p>
-			[page:String resourcePath] - URL
+			[page:Boolean disregardNormals]
 		</p>
 		</p>
 		<p>
 		<p>
-			Allows to specify resourcePath for dependencies of specified resource.
+			Tells whether normals should be completely disregarded and regenerated.
 		</p>
 		</p>
 
 
 
 
-		<h3>[method:null setStreamMeshesTo] ( [param:Object3D streamMeshesTo] )</h3>
+		<h3>[method:OBJLoader2 setModelName] ( [param:String modelName] )</h3>
+		<p>
+			[page:String modelName]
+		</p>
 		<p>
 		<p>
-			[page:Object3D streamMeshesTo] - Object already attached to scenegraph where new meshes will be attached to
+			Set the name of the model.
+		</p>
+
+
+		<h3>[method:OBJLoader2 setBaseObject3d] ( [param:Object3d baseObject3d] )</h3>
+		<p>
+			[page:Object3D baseObject3d - Object already attached to scenegraph where new meshes will be attached to
 		</p>
 		</p>
 		<p>
 		<p>
 			Set the node where the loaded objects will be attached directly.
 			Set the node where the loaded objects will be attached directly.
 		</p>
 		</p>
 
 
 
 
-		<h3>[method:null setMaterials] ( Array of [param:Material materials] )</h3>
+		<h3>[method:OBJLoader2 setMaterials] ( [param:Object materials] )</h3>
 		<p>
 		<p>
-			Array of [page:Material materials] - Array of [page:Material Materials]
+			[page:Object materials] -  materials Object with named [page:Material Materials]
 		</p>
 		</p>
 		<p>
 		<p>
-			Set materials loaded by MTLLoader or any other supplier of an Array of [page:Material Materials].
+			Add materials as associated array.
 		</p>
 		</p>
 
 
 
 
-		<h3>[method:null setUseIndices]( [param:Boolean useIndices] )</h3>
+		<h3>[method:OBJLoader2 setCallbackOnLoad] ( [param:Function onLoad] )</h3>
 		<p>
 		<p>
-			[page:Boolean useIndices]
+			[page:Function onLoad]
 		</p>
 		</p>
 		<p>
 		<p>
-			Instructs loaders to create indexed [page:BufferGeometry].
+			Register a function that is called when parsing was completed.
 		</p>
 		</p>
 
 
 
 
-		<h3>[method:null setDisregardNormals]( [param:Boolean disregardNormals] )</h3>
+		<h3>[method:OBJLoader2 setCallbackOnAssetAvailable] ( [param:Function onAssetAvailable] )</h3>
 		<p>
 		<p>
-			[page:Boolean disregardNormals]
+			[page:Function onAssetAvailable]
 		</p>
 		</p>
 		<p>
 		<p>
-			Tells whether normals should be completely disregarded and regenerated.
+			Register a function that is called once an asset (mesh/material) becomes available.
 		</p>
 		</p>
 
 
 
 
-		<h3>[method:null setMaterialPerSmoothingGroup] ( [param:boolean materialPerSmoothingGroup] )</h3>
+		<h3>[method:OBJLoader2 setCallbackOnProgress] ( [param:Function onProgress] )</h3>
 		<p>
 		<p>
-			[page:boolean materialPerSmoothingGroup]
+			[page:Function onProgress]
 		</p>
 		</p>
 		<p>
 		<p>
-			Tells whether a material shall be created per smoothing group.
+			Register a function that is used to report overall processing progress.
 		</p>
 		</p>
 
 
 
 
-		<h3>[method:null onProgress]( [param:String type], [param:String text], [param:Number numericalValue] )</h3>
+		<h3>[method:OBJLoader2 setCallbackOnError] ( [param:Function onError] )</h3>
 		<p>
 		<p>
-			[page:String type] - The type of event<br>
-			[page:String text] - Textual description of the event<br>
-			[page:Number numericalValue] - Numerical value describing the progress
+			[page:Function onError]
 		</p>
 		</p>
 		<p>
 		<p>
-			Announce feedback which is give to the registered [page:LoaderSupport.Callbacks].
+			Register an error handler function that is called if errors occur. It can decide to just log or to throw an exception.
 		</p>
 		</p>
 
 
 
 
-		<h3>[method:null loadMtl]( [param:String url], [param:Object content], [param:Function callbackOnLoad], [param:String crossOrigin], [param:Object materialOptions]) </h3>
+		<h3>[method:OBJLoader2 setCallbackOnMeshAlter] ( [param:Function onMeshAlter] )</h3>
 		<p>
 		<p>
-			[page:String url] - URL to the file<br>
-			[page:Object content] - The file content as arraybuffer or text<br>
-			[page:Function onLoad] - Callback to be called after successful load<br>
-			[page:Function onProgress] - (optional) A function to be called while the loading is in progress. The argument will be the XMLHttpRequest instance, which contains [page:Integer total] and [page:Integer loaded] bytes.<br>
-			[page:Function onError] - (optional) A function to be called if an error occurs during loading. The function receives the error as an argument.<br>
-			[page:String crossOrigin] - (optional) CORS value<br>
-			[page:Function materialOptions] - (optional) Set material loading options for MTLLoader
+			[page:Function onMeshAlter]
 		</p>
 		</p>
 		<p>
 		<p>
-			Utility method for loading an mtl file according resource description. Provide url or content.
+			Register a function that is called once a single mesh is available and it could be altered by the supplied function.
 		</p>
 		</p>
 
 
 
 

+ 109 - 0
docs/examples/en/loaders/OBJLoader2Parallel.html

@@ -0,0 +1,109 @@
+<!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 a <em>.obj</em> resource.<br />
+			The <a href="https://en.wikipedia.org/wiki/Wavefront_.obj_file">OBJ file format</a> is a simple data-format
+			that represents 3D geometry in a human readable format as, the position of each vertex, the UV position of
+			each texture coordinate vertex, vertex normals, and the faces that make each polygon defined as a list of
+			vertices, and texture vertices.
+		</p>
+
+		<h2>Examples</h2>
+
+		<code>
+		// instantiate the loader
+		let objLoader2Parallel = new OBJLoader2Parallel();
+
+		// define where to attach the data
+		let local = new THREE.Object3D();
+
+		// function called on successful completion of parsing
+		function callbackOnLoad( object3d, message ) {
+			local.add( object3d );
+		}
+
+		// load a resource from provided URL in parallel to Main
+		objLoader2Parallel.load( 'models/obj/walt/WaltHead.obj', callbackOnLoad, null, null, null );
+		</code>
+
+		[example:webgl_loader_obj2_options] - Example for multiple use-cases (parse and load, sync (see [page:OBJLoader2]) or in parallel to main)<br>
+
+
+		<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].<br>
+		</p>
+		<p>
+			Creates a new [name]. Use it to load OBJ data from files or to parse OBJ data from arraybuffer.
+			It extends [page:OBJLoader2]  with the capability to run the parser in a web worker.
+		</p>
+
+
+		<h2>Properties</h2>
+		<p>See the base [page:OBJLoader2] class for common properties.</p>
+
+
+		<h2>Methods</h2>
+		<p>See the base [page:OBJLoader2] class for common methods. </p>
+
+
+		<h3>[method:Object3D parse]</h3>
+		<p>See [page:OBJLoader2.parse].<br>
+			The callback [page:OBJLoader2.setCallbackOnLoad OBJLoader2.onLoad] needs to be set to be able to receive the content if used in parallel mode.
+			Fallback is possible via [page:OBJLoader2Parallel.setExecuteParallel].
+		</p>
+
+
+		<h3>[method:null load]</h3>
+		<p>See [page:OBJLoader2.load].</p>
+
+
+		<h3>[method:OBJLoader2Parallel setExecuteParallel] ( [param:boolean executeParallel] )</h3>
+		<p>
+			[page:boolean executeParallel] - True or False
+		</p>
+		<p>
+			Execution of parse in parallel via Worker is default, but synchronous [page:OBJLoader2] parsing can be enforced via false here.
+		</p>
+
+
+		<h3>[method:OBJLoader2Parallel setPreferJsmWorker] ( [param:boolean preferJsmWorker] )</h3>
+		<p>
+			[page:boolean preferJsmWorker] - True or False
+		</p>
+		<p>
+			Set whether jsm modules in workers should be used. This requires browser support which is currently only experimental.
+		</p>
+
+
+		<h3>[method:WorkerExecutionSupport getWorkerExecutionSupport] ()</h3>
+		<p>
+			Allow to get hold of [page:WorkerExecutionSupport] for configuration purposes.
+		</p>
+
+
+		<h3>[method:CodeBuilderInstructions buildWorkerCode] ()</h3>
+		<p>
+			Provide instructions on what is to be contained in the worker.
+		</p>
+
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/loaders/OBJLoader2Parallel.js examples/jsm/loaders/OBJLoader2Parallel.js]
+		</p>
+	</body>
+</html>

+ 3 - 8
docs/examples/en/loaders/PCDLoader.html

@@ -8,6 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	</head>
 	<body>
 	<body>
+		[page:Loader] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
@@ -62,6 +63,7 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:Loader] class for common properties.</p>
 
 
 		<h3>[page:Boolean littleEndian]</h3>
 		<h3>[page:Boolean littleEndian]</h3>
 		<p>
 		<p>
@@ -69,6 +71,7 @@
 		</p>
 		</p>
 
 
 		<h2>Methods</h2>
 		<h2>Methods</h2>
+		<p>See the base [page:Loader] class for common methods.</p>
 
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>
@@ -93,14 +96,6 @@
 		The object is converted to [page:Points] with a [page:BufferGeometry] and a [page:PointsMaterial].
 		The object is converted to [page:Points] with a [page:BufferGeometry] and a [page:PointsMaterial].
 		</p>
 		</p>
 
 
-		<h3>[method:PCDLoader setPath]( [param:String path] )</h3>
-		<p>
-		[page:String path] — Base path.
-		</p>
-		<p>
-		Set the base path for the file.
-		</p>
-
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		<p>
 		<p>

+ 3 - 9
docs/examples/en/loaders/PDBLoader.html

@@ -8,6 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	</head>
 	<body>
 	<body>
+		[page:Loader] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
@@ -64,9 +65,10 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
-
+		<p>See the base [page:Loader] class for common properties.</p>
 
 
 		<h2>Methods</h2>
 		<h2>Methods</h2>
+		<p>See the base [page:Loader] class for common methods.</p>
 
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>
@@ -87,14 +89,6 @@
 		Parse a <em>pdb</em> text and return a <em>JSON</em> structure.<br />
 		Parse a <em>pdb</em> text and return a <em>JSON</em> structure.<br />
 		</p>
 		</p>
 
 
-		<h3>[method:PDBLoader setPath]( [param:String path] )</h3>
-		<p>
-		[page:String path] — Base path.
-		</p>
-		<p>
-		Set the base path for the file.
-		</p>
-
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		<p>
 		<p>

+ 3 - 15
docs/examples/en/loaders/PRWMLoader.html

@@ -8,6 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	</head>
 	<body>
 	<body>
+		[page:Loader] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
@@ -65,9 +66,10 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
-
+		<p>See the base [page:Loader] class for common properties.</p>
 
 
 		<h2>Methods</h2>
 		<h2>Methods</h2>
+		<p>See the base [page:Loader] class for common methods.</p>
 
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>
@@ -94,25 +96,11 @@
 		Return true if the endianness of the platform is Big Endian, false otherwise.
 		Return true if the endianness of the platform is Big Endian, false otherwise.
 		</p>
 		</p>
 
 
-		<h3>[method:PRWMLoader setPath]( [param:String path] )</h3>
-		<p>
-		[page:String path] — Base path.
-		</p>
-		<p>
-		Set the base path for the file.
-		</p>
-
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		<p>
 		<p>
 			[link:https://github.com/mrdoob/three.js/blob/master/examples/js/loaders/PRWMLoader.js examples/js/loaders/PRWMLoader.js]
 			[link:https://github.com/mrdoob/three.js/blob/master/examples/js/loaders/PRWMLoader.js examples/js/loaders/PRWMLoader.js]
 		</p>
 		</p>
 
 
-		<h2>Additional notes</h2>
-
-		<p>
-		This loader is additionally available on npm as <a href="https://www.npmjs.com/package/three-prwm-loader">three-prwm-loader</a>.
-		</p>
-
 	</body>
 	</body>
 </html>
 </html>

+ 3 - 9
docs/examples/en/loaders/SVGLoader.html

@@ -8,6 +8,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	</head>
 	<body>
 	<body>
+		[page:Loader] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
@@ -85,9 +86,10 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
-
+		<p>See the base [page:Loader] class for common properties.</p>
 
 
 		<h2>Methods</h2>
 		<h2>Methods</h2>
+		<p>See the base [page:Loader] class for common methods.</p>
 
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>
@@ -100,14 +102,6 @@
 		Begin loading from url and call onLoad with the response content.
 		Begin loading from url and call onLoad with the response content.
 		</p>
 		</p>
 
 
-		<h3>[method:SVGLoader setPath]( [param:String path] )</h3>
-		<p>
-		[page:String path] — Base path.
-		</p>
-		<p>
-		Set the base path for the file.
-		</p>
-
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		<p>
 		<p>

+ 6 - 9
docs/examples/en/loaders/TGALoader.html

@@ -8,6 +8,8 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	</head>
 	<body>
 	<body>
+		[page:Loader] &rarr;
+
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
 		<p class="desc">A loader for loading a <em>.tga</em> resource. <br />
 		<p class="desc">A loader for loading a <em>.tga</em> resource. <br />
@@ -50,7 +52,7 @@
 		} );
 		} );
 		</code>
 		</code>
 
 
-		[example:webgl_materials_texture_tga]
+		[example:webgl_loader_texture_tga]
 
 
 		<h2>Constructor</h2>
 		<h2>Constructor</h2>
 
 
@@ -62,8 +64,11 @@
 		Creates a new [name].
 		Creates a new [name].
 		</p>
 		</p>
 
 
+		<h2>Properties</h2>
+		<p>See the base [page:Loader] class for common properties.</p>
 
 
 		<h2>Methods</h2>
 		<h2>Methods</h2>
+		<p>See the base [page:Loader] class for common methods.</p>
 
 
 		<h3>[method:DataTexture load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:DataTexture load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>
@@ -76,14 +81,6 @@
 		Begin loading from url and pass the loaded [page:DataTexture texture] to onLoad. The [page:DataTexture texture] is also directly returned for immediate use (but may not be fully loaded).
 		Begin loading from url and pass the loaded [page:DataTexture texture] to onLoad. The [page:DataTexture texture] is also directly returned for immediate use (but may not be fully loaded).
 		</p>
 		</p>
 
 
-		<h3>[method:TGALoader setPath]( [param:String path] )</h3>
-		<p>
-		[page:String path] — Base path.
-		</p>
-		<p>
-		Set the base path for the file.
-		</p>
-
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		<p>
 		<p>

+ 89 - 0
docs/examples/zh/controls/DeviceOrientationControls.html

@@ -0,0 +1,89 @@
+<!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">
+			Can be used to orient the camera based on the mobile device's orientation.
+		</p>
+
+		<h2>Example</h2>
+
+		<p>[example:misc_controls_deviceorientation misc / controls / deviceorientation ]</p>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( [param:Camera object] )</h3>
+		<p>
+			<p>
+				[page:Camera object]: The camera to be controlled.
+			</p>
+			<p>
+				Creates a new instance of [name].
+			</p>
+		</p>
+
+		<h2>Properties</h2>
+
+		<h3>[property:Number alphaOffset]</h3>
+		<p>
+			The alpha offset in radians. Default is *0*.
+		</p>
+
+		<h3>[property:Object deviceOrientation]</h3>
+		<p>
+			The current *deviceorientation* event object.
+		</p>
+
+		<h3>[property:Boolean enabled]</h3>
+		<p>
+			Whether or not the controls are enabled.
+		</p>
+
+		<h3>[property:Camera object]</h3>
+		<p>
+			The camera to be controlled.
+		</p>
+
+		<h3>[property:Number screenOrientation]</h3>
+		<p>
+			The orientation in degrees (in 90-degree increments) of the viewport relative to the device's natural orientation. Default is *0*.
+		</p>
+
+		<h2>Methods</h2>
+
+		<h3>[method:null connect] ()</h3>
+		<p>
+			Adds the event listeners of the controls and enables it.
+		</p>
+
+		<h3>[method:null disconnect] ()</h3>
+		<p>
+			Removes the event listeners of the controls and disables it.
+		</p>
+
+		<h3>[method:null dispose] ()</h3>
+		<p>
+			Should be called if the controls is no longer required.
+		</p>
+
+		<h3>[method:null update] ()</h3>
+		<p>
+			Updates the controls. Usually called in the animation loop.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/examples/js/controls/DeviceOrientationControls.js examples/js/controls/DeviceOrientationControls.js]
+		</p>
+	</body>
+</html>

+ 119 - 0
docs/examples/zh/controls/DragControls.html

@@ -0,0 +1,119 @@
+<!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:EventDispatcher] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+		This class can be used to provide a drag'n'drop interaction.
+		</p>
+
+		<h2>Example</h2>
+
+		<p>[example:misc_controls_drag misc / controls / drag ]</p>
+
+		<code>
+var controls = new THREE.DragControls( objects, camera, renderer.domElement );
+
+// add event listener to highlight dragged objects
+
+controls.addEventListener( 'dragstart', function ( event ) {
+
+	event.object.material.emissive.set( 0xaaaaaa );
+
+} );
+
+controls.addEventListener( 'dragend', function ( event ) {
+
+	event.object.material.emissive.set( 0x000000 );
+
+} );
+
+		</code>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( [param:Array objects], [param:Camera camera], [param:HTMLDOMElement domElement] )</h3>
+		<p>
+			<p>
+				[page:Array objects]: An array of draggable 3D objects.
+			</p>
+			<p>
+			[page:Camera camera]: The camera of the rendered scene.
+			</p>
+			<p>
+			[page:HTMLDOMElement domElement]: The HTML element used for event listeners.
+			</p>
+			<p>
+				Creates a new instance of [name].
+			</p>
+		</p>
+
+		<h2>Events</h2>
+
+		<h3>dragstart</h3>
+		<p>
+			Fires when the user starts to drag a 3D object.
+		</p>
+
+		<h3>drag</h3>
+		<p>
+			Fires when the user drags a 3D object.
+		</p>
+
+		<h3>dragend</h3>
+		<p>
+			Fires when the user has finished dragging a 3D object.
+		</p>
+
+		<h3>hoveron</h3>
+		<p>
+			Fires when the pointer is moved onto a 3D object, or onto one of its children.
+		</p>
+
+		<h3>hoveroff</h3>
+		<p>
+			Fires when the pointer is moved out of a 3D object.
+		</p>
+
+		<h2>Properties</h2>
+
+		<h3>[property:Boolean enabled]</h3>
+		<p>
+			Whether or not the controls are enabled.
+		</p>
+
+		<h2>Methods</h2>
+
+		<p>See the base [page:EventDispatcher] class for common methods.</p>
+
+		<h3>[method:null activate] ()</h3>
+		<p>
+			Adds the event listeners of the controls.
+		</p>
+
+		<h3>[method:null deactivate] ()</h3>
+		<p>
+			Removes the event listeners of the controls.
+		</p>
+
+		<h3>[method:null dispose] ()</h3>
+		<p>
+			Should be called if the controls is no longer required.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/examples/js/controls/DragControls.js examples/js/controls/DragControls.js]
+		</p>
+	</body>
+</html>

+ 166 - 0
docs/examples/zh/controls/FirstPersonControls.html

@@ -0,0 +1,166 @@
+<!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 class is an alternative implementation of [page:FlyControls].
+		</p>
+
+		<h2>Example</h2>
+
+		<p>[example:webgl_geometry_terrain webgl / geometry / terrain ]</p>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( [param:Camera object], [param:HTMLDOMElement domElement] )</h3>
+		<p>
+			<p>
+				[page:Camera object]: The camera to be controlled.
+			</p>
+			<p>
+				[page:HTMLDOMElement domElement]: (optional) The HTML element used for event listeners. By default this is the whole document,
+				however if you only want the controls to work over a specific element (e.g. the canvas) you can specify that here.
+			</p>
+			<p>
+				Creates a new instance of [name].
+			</p>
+		</p>
+
+		<h2>Properties</h2>
+
+		<h3>[property:Boolean activeLook]</h3>
+		<p>
+			Whether or not it's possible to look around. Default is *true*.
+		</p>
+
+		<h3>[property:Boolean autoForward]</h3>
+		<p>
+			Whether or not the camera is automatically moved forward. Default is *false*.
+		</p>
+
+		<h3>[property:Boolean constrainVertical]</h3>
+		<p>
+			Whether or not looking around is vertically constrained by [[page:.verticalMin], [page:.verticalMax]]. Default is *false*.
+		</p>
+
+		<h3>[property:HTMLDOMElement domElement]</h3>
+		<p>
+			The HTMLDOMElement used to listen for mouse / touch events. This must be passed in the constructor; changing it here will
+			not set up new event listeners. Default is the whole document.
+		</p>
+
+		<h3>[property:Boolean enabled]</h3>
+		<p>
+			Whether or not the controls are enabled. Default is *true*.
+		</p>
+
+		<h3>[property:Number heightCoef]</h3>
+		<p>
+			Determines how much faster the camera moves when it's y-component is near [page:.heightMax]. Default is *1*.
+		</p>
+
+		<h3>[property:Number heightMax]</h3>
+		<p>
+			Upper camera height limit used for movement speed adjusment. Default is *1*.
+		</p>
+
+		<h3>[property:Number heightMin]</h3>
+		<p>
+			Lower camera height limit used for movement speed adjusment. Default is *0*.
+		</p>
+
+		<h3>[property:Boolean heightSpeed]</h3>
+		<p>
+			Whether or not the camera's height influences the forward movement speed. Default is *false*.
+			Use the properties [page:.heightCoef], [page:.heightMin] and [page:.heightMax] for configuration.
+		</p>
+
+		<h3>[property:Boolean lookVertical]</h3>
+		<p>
+			Whether or not it's possible to vertically look around. Default is *true*.
+		</p>
+
+		<h3>[property:Number lookSpeed]</h3>
+		<p>
+			The look around speed. Default is *0.005*.
+		</p>
+
+		<h3>[property:Boolean mouseDragOn]</h3>
+		<p>
+			Whether or not the mouse is pressed down. Read-only property.
+		</p>
+
+		<h3>[property:Number movementSpeed]</h3>
+		<p>
+			The movement speed. Default is *1*.
+		</p>
+
+		<h3>[property:Camera object]</h3>
+		<p>
+			The camera to be controlled.
+		</p>
+
+		<h3>[property:Number verticalMax]</h3>
+		<p>
+			How far you can vertically look around, upper limit. Range is 0 to Math.PI radians. Default is *Math.PI*.
+		</p>
+
+		<h3>[property:Number verticalMin]</h3>
+		<p>
+			How far you can vertically look around, lower limit. Range is 0 to Math.PI radians. Default is *0*.
+		</p>
+
+		<h2>Methods</h2>
+
+		<h3>[method:null dispose] ()</h3>
+		<p>
+			Should be called if the controls is no longer required.
+		</p>
+
+		<h3>[method:null handleResize] ()</h3>
+		<p>
+			Should be called if the application window is resized.
+		</p>
+
+		<h3>[method:FirstPersonControls lookAt]( [param:Vector3 vector] )<br />
+		[method:FirstPersonControls lookAt]( [param:Float x], [param:Float y], [param:Float z] )</h3>
+		<p>
+			<p>
+				<p>
+					vector - A vector representing the target position.
+				</p>
+				<p>
+					Optionally, the x, y, z components of the world space position.
+				</p>
+			</p>
+			<p>
+				Ensures the controls orient the camera towards the defined target position.
+			</p>
+		</p>
+
+		<h3>[method:null update] ( [param:Number delta] )</h3>
+		<p>
+			<p>
+				[page:Number delta]: Time delta value.
+			</p>
+			<p>
+				Updates the controls. Usually called in the animation loop.
+			</p>
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/examples/js/controls/FirstPersonControls.js examples/js/controls/FirstPersonControls.js]
+		</p>
+	</body>
+</html>

+ 95 - 0
docs/examples/zh/controls/FlyControls.html

@@ -0,0 +1,95 @@
+<!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">
+			[name] enables a navigation similar to fly modes in DCC tools like Blender. You can arbitrarily transform the camera in
+			3D space without any limitations (e.g. focus on a specific target).
+		</p>
+
+		<h2>Example</h2>
+
+		<p>[example:misc_controls_fly misc / controls / fly ]</p>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( [param:Camera object], [param:HTMLDOMElement domElement] )</h3>
+		<p>
+			<p>
+				[page:Camera object]: The camera to be controlled.
+			</p>
+			<p>
+				[page:HTMLDOMElement domElement]: (optional) The HTML element used for event listeners. By default this is the whole document,
+				however if you only want the controls to work over a specific element (e.g. the canvas) you can specify that here.
+			</p>
+			<p>
+				Creates a new instance of [name].
+			</p>
+		</p>
+
+		<h2>Properties</h2>
+
+		<h3>[property:Boolean autoForward]</h3>
+		<p>
+			If set to *true*, the camera automatically moves forward (and does not stop) when initially translated. Default is *false*.
+		</p>
+
+		<h3>[property:HTMLDOMElement domElement]</h3>
+		<p>
+			The HTMLDOMElement used to listen for mouse / touch events. This must be passed in the constructor; changing it here will
+			not set up new event listeners. Default is the whole document.
+		</p>
+
+		<h3>[property:Boolean dragToLook]</h3>
+		<p>
+			If set to *true*, you can only look around by performing a drag interaction. Default is *false*.
+		</p>
+
+		<h3>[property:Number movementSpeed]</h3>
+		<p>
+			The movement speed. Default is *1*.
+		</p>
+
+		<h3>[property:Camera object]</h3>
+		<p>
+			The camera to be controlled.
+		</p>
+
+		<h3>[property:Number rollSpeed]</h3>
+		<p>
+			The rotation speed. Default is *0.005*.
+		</p>
+
+		<h2>Methods</h2>
+
+		<h3>[method:null dispose] ()</h3>
+		<p>
+			Should be called if the controls is no longer required.
+		</p>
+
+		<h3>[method:null update] ( [param:Number delta] )</h3>
+		<p>
+			<p>
+				[page:Number delta]: Time delta value.
+			</p>
+			<p>
+				Updates the controls. Usually called in the animation loop.
+			</p>
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/examples/js/controls/FlyControls.js examples/js/controls/FlyControls.js]
+		</p>
+	</body>
+</html>

+ 149 - 0
docs/examples/zh/controls/PointerLockControls.html

@@ -0,0 +1,149 @@
+<!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:EventDispatcher] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+		The implementation of this class is based on the [link:https://developer.mozilla.org/en-US/docs/Web/API/Pointer_Lock_API Pointer Lock API].
+		[name] is a perfect choice for first person 3D games.
+		</p>
+
+		<h2>Example</h2>
+
+		<p>[example:misc_controls_pointerlock misc / controls / pointerlock ]</p>
+
+		<code>
+var controls = new PointerLockControls( camera );
+
+// add event listener to show/hide a UI (e.g. the game's menu)
+
+controls.addEventListener( 'lock', function () {
+
+	menu.style.display = 'none';
+
+} );
+
+controls.addEventListener( 'unlock', function () {
+
+	menu.style.display = 'block';
+
+} );
+
+		</code>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( [param:Camera camera], [param:HTMLDOMElement domElement] )</h3>
+		<p>
+			<p>
+			[page:Camera camera]: The camera of the rendered scene.
+			</p>
+			<p>
+			[page:HTMLDOMElement domElement]: (optional) The HTML element used for event listeners. By default this is the document's body.
+			</p>
+			<p>
+				Creates a new instance of [name].
+			</p>
+		</p>
+
+		<h2>Events</h2>
+
+		<h3>change</h3>
+		<p>
+			Fires when the user moves the mouse.
+		</p>
+
+		<h3>lock</h3>
+		<p>
+			Fires when the pointer lock status is "locked" (in other words: the mouse is captured).
+		</p>
+
+		<h3>unlock</h3>
+		<p>
+			Fires when the pointer lock status is "unlocked" (in other words: the mouse is not captured anymore).
+		</p>
+
+		<h2>Properties</h2>
+
+		<h3>[property:HTMLDOMElement domElement]</h3>
+		<p>
+			The HTMLDOMElement used to listen for mouse / touch events. This must be passed in the constructor; changing it here will
+			not set up new event listeners. Default is the document's body.
+		</p>
+
+
+		<h3>[property:Boolean isLocked]</h3>
+		<p>
+			Whether or not the controls are locked.
+		</p>
+
+		<h2>Methods</h2>
+
+		<p>See the base [page:EventDispatcher] class for common methods.</p>
+
+		<h3>[method:null connect] ()</h3>
+		<p>
+			Adds the event listeners of the controls.
+		</p>
+
+		<h3>[method:null disconnect] ()</h3>
+		<p>
+			Removes the event listeners of the controls.
+		</p>
+
+		<h3>[method:Vector3 getDirection] ( [param:Vector3 target] )</h3>
+		<p>
+			<p>
+				[page:Vector3 target]: The target vector.
+			</p>
+			<p>
+				Returns the look direction of the camera.
+			</p>
+		</p>
+
+		<h3>[method:null lock] ()</h3>
+		<p>
+			Activates the pointer lock.
+		</p>
+
+		<h3>[method:null moveForward] ( [param:Number distance] )</h3>
+		<p>
+			<p>
+				[page:Number distance]: The signed distance.
+			</p>
+			<p>
+				Moves the camera forward parallel to the xz-plane. Assumes camera.up is y-up.
+			</p>
+		</p>
+
+		<h3>[method:null moveRight] ( [param:Number distance] )</h3>
+		<p>
+			<p>
+				[page:Number distance]: The signed distance.
+			</p>
+			<p>
+				Moves the camera sidewards parallel to the xz-plane.
+			</p>
+		</p>
+
+		<h3>[method:null unlock] ()</h3>
+		<p>
+			Exits the pointer lock.
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/examples/js/controls/PointerLockControls.js examples/js/controls/PointerLockControls.js]
+		</p>
+	</body>
+</html>

+ 208 - 0
docs/examples/zh/controls/TrackballControls.html

@@ -0,0 +1,208 @@
+<!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:EventDispatcher] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+			<p>
+				[name] is similar to [page:OrbitControls]. However, it does not maintain a constant camera [page:Object3D.up up] vector.
+				That means if the camera orbits over the “north” and “south” poles, it does not flip to stay "right side up".
+			</p>
+		</p>
+
+		<h2>Example</h2>
+
+		<p>[example:misc_controls_trackball misc / controls / trackball ]</p>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( [param:Camera camera], [param:HTMLDOMElement domElement] )</h3>
+		<p>
+			<p>
+				[page:Camera camera]: The camera of the rendered scene.
+			</p>
+			<p>
+				[page:HTMLDOMElement domElement]: (optional) The HTML element used for event listeners. By default this is the whole document,
+				however if you only want the controls to work over a specific element (e.g. the canvas) you can specify that here.
+			</p>
+			<p>
+				Creates a new instance of [name].
+			</p>
+		</p>
+
+		<h2>Events</h2>
+
+		<h3>change</h3>
+		<p>
+			Fires when the camera has been transformed by the controls.
+		</p>
+
+		<h3>start</h3>
+		<p>
+			Fires when an interaction (e.g. touch) was initiated.
+		</p>
+
+		<h3>end</h3>
+		<p>
+			Fires when an interaction has finished.
+		</p>
+
+		<h2>Properties</h2>
+
+		<h3>[property:HTMLDOMElement domElement]</h3>
+		<p>
+			The HTMLDOMElement used to listen for mouse / touch events. This must be passed in the constructor; changing it here will
+			not set up new event listeners. Default is the whole document.
+		</p>
+
+		<h3>[property:Number dynamicDampingFactor]</h3>
+		<p>
+			Defines the intensity of damping. Only considered if [page:.staticMoving staticMoving] is set to *false*. Default is *0.2*.
+		</p>
+
+		<h3>[property:Boolean enabled]</h3>
+		<p>
+			Whether or not the controls are enabled.
+		</p>
+
+		<h3>[property:Array keys]</h3>
+		<p>
+			This array holds keycodes for controlling interactions.
+			<ul>
+				<li>When the first defined key is pressed, all mouse interactions (left, middle, right) performs orbiting.</li>
+				<li>When the second defined key is pressed, all mouse interactions (left, middle, right) performs zooming.</li>
+				<li>When the third defined key is pressed, all mouse interactions (left, middle, right) performs panning.</li>
+			</ul>
+			Default is *65, 83, 68* which represents A, S, D.
+		</p>
+
+		<h3>[property:Number maxDistance]</h3>
+		<p>
+			 How far you can zoom in. Default is *Infinity*.
+		</p>
+
+		<h3>[property:Number minDistance]</h3>
+		<p>
+			 How far you can zoom in. Default is *0*.
+		</p>
+
+		<h3>
+			[property:Object mouseButtons]</h3>
+		<p>
+			This object contains references to the mouse actions used by the controls.
+			<ul>
+				<li>.LEFT is assinged with *THREE.MOUSE.ROTATE*</li>
+				<li>.MIDDLE is assinged with *THREE.MOUSE.ZOOM*</li>
+				<li>.RIGHT is assinged with *THREE.MOUSE.PAN*</li>
+			</ul>
+		</p>
+
+		<h3>[property:Boolean noPan]</h3>
+		<p>
+			Whether or not panning is disabled. Default is *false*.
+		</p>
+
+		<h3>[property:Boolean noRotate]</h3>
+		<p>
+			Whether or not rotation is disabled. Default is *false*.
+		</p>
+
+		<h3>[property:Boolean noZoom]</h3>
+		<p>
+			Whether or not zooming is disabled. Default is *false*.
+		</p>
+
+		<h3>[property:Camera object]</h3>
+		<p>
+			The camera being controlled.
+		</p>
+
+		<h3>[property:Number panSpeed]</h3>
+		<p>
+			The zoom speed. Default is *0.3*.
+		</p>
+
+		<h3>[property:Number rotateSpeed]</h3>
+		<p>
+			The rotation speed. Default is *1.0*.
+		</p>
+
+		<h3>[property:Object screen]</h3>
+		<p>
+			Represents the properties of the screen. Automatically set when [page:.handleResize handleResize]() is called.
+			<ul>
+				<li>left: Represents the offset in pixels to the screen's left boundary.</li>
+				<li>top: Represents the offset in pixels to the screen's top boundary.</li>
+				<li>width: Represents the screen width in pixels.</li>
+				<li>height: Represents the screen height in pixels.</li>
+			</ul>
+		</p>
+
+		<h3>[property:Boolean staticMoving]</h3>
+		<p>
+			Whether or not damping is disabled. Default is *false*.
+		</p>
+
+		<h3>[property:Number zoomSpeed]</h3>
+		<p>
+			The zoom speed. Default is *1.2*.
+		</p>
+
+		<h2>Methods</h2>
+
+		<h3>[method:null checkDistances] ()</h3>
+		<p>
+			Ensures the controls stay in the range [minDistance, maxDistance]. Called by [page:.update update]().
+		</p>
+
+		<h3>[method:null dispose] ()</h3>
+		<p>
+			Should be called if the controls is no longer required.
+		</p>
+
+		<h3>[method:null handleResize] ()</h3>
+		<p>
+			Should be called if the application window is resized.
+		</p>
+
+		<h3>[method:null panCamera] ()</h3>
+		<p>
+			Performs panning if necessary. Called by [page:.update update]().
+		</p>
+
+		<h3>[method:null reset] ()</h3>
+		<p>
+			Resets the controls to its initial state.
+		</p>
+
+		<h3>[method:null rotateCamera] ()</h3>
+		<p>
+			Rotates the camera if necessary. Called by [page:.update update]().
+		</p>
+
+		<h3>[method:null update] ()</h3>
+		<p>
+			Updates the controls. Usually called in the animation loop.
+		</p>
+
+		<h3>[method:null zoomCamera] ()</h3>
+		<p>
+			Performs zooming if necessary. Called by [page:.update update]().
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/examples/js/controls/TrackballControls.js examples/js/controls/TrackballControls.js]
+		</p>
+	</body>
+</html>

+ 225 - 0
docs/examples/zh/controls/TransformControls.html

@@ -0,0 +1,225 @@
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Object3D] &rarr;
+
+		<h1>[name]</h1>
+
+		<p class="desc">
+			This class can be used to transform objects in 3D space by adapting a similar interaction model of DCC tools like Blender.
+			Unlike other controls, it is not intended to transform the scene's camera.
+		</p>
+
+		<h2>Example</h2>
+
+		<p>[example:misc_controls_transform misc / controls / transform ]</p>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( [param:Camera camera], [param:HTMLDOMElement domElement] )</h3>
+		<p>
+			<p>
+				[page:Camera camera]: The camera of the rendered scene.
+			</p>
+			<p>
+				[page:HTMLDOMElement domElement]: (optional) The HTML element used for event listeners. By default this is the whole document,
+				however if you only want the controls to work over a specific element (e.g. the canvas) you can specify that here.
+			</p>
+			<p>
+				Creates a new instance of [name].
+			</p>
+		</p>
+
+		<h2>Events</h2>
+
+		<h3>change</h3>
+		<p>
+			Fires if any type of change (object or property change) is performed. Property changes
+			are separate events you can add event listeners to. The event type is "propertyname-changed".
+		</p>
+
+		<h3>mouseDown</h3>
+		<p>
+			Fires if a pointer (mouse/touch) becomes active.
+		</p>
+
+		<h3>mouseUp</h3>
+		<p>
+			Fires if a pointer (mouse/touch) is no longer active.
+		</p>
+
+		<h3>objectChange</h3>
+		<p>
+			Fires if the controlled 3D object is changed.
+		</p>
+
+		<h2>Properties</h2>
+
+		<p>See the base [page:Object3D] class for common properties.</p>
+
+		<h3>[property:String axis]</h3>
+		<p>
+			The current transformation axis.
+		</p>
+
+		<h3>[property:Camera camera]</h3>
+		<p>
+			The camera of the rendered scene.
+		</p>
+
+		<h3>[property:HTMLDOMElement domElement]</h3>
+		<p>
+			The HTMLDOMElement used to listen for mouse / touch events. This must be passed in the constructor; changing it here will
+			not set up new event listeners. Default is the whole document.
+		</p>
+
+		<h3>[property:Boolean dragging]</h3>
+		<p>
+			Whether or not dragging is currently performed. Read-only property.
+		</p>
+
+		<h3>[property:Boolean enabled]</h3>
+		<p>
+			Whether or not the controls are enabled.
+		</p>
+
+		<h3>[property:String mode]</h3>
+		<p>
+			The current transformation mode. Possible values are "translate", "rotate" and "scale". Default is *translate*.
+		</p>
+
+		<h3>[property:Object3D object]</h3>
+		<p>
+			The 3D object being controlled.
+		</p>
+
+		<h3>[property:Number rotationSnap]</h3>
+		<p>
+			By default, 3D objects are continously rotated. If you set this property to a numeric value (radians), you can define in which
+			steps the 3D object should be rotated. Deault is *null*.
+		</p>
+
+		<h3>[property:Boolean showX]</h3>
+		<p>
+			Whether or not the x-axis helper should be visible. Default is *true*.
+		</p>
+
+		<h3>[property:Boolean showY]</h3>
+		<p>
+			Whether or not the y-axis helper should be visible. Default is *true*.
+		</p>
+
+		<h3>[property:Boolean showZ]</h3>
+		<p>
+			Whether or not the z-axis helper should be visible. Default is *true*.
+		</p>
+
+		<h3>[property:Number size]</h3>
+		<p>
+			The size of the helper UI (axes/planes). Default is *1*.
+		</p>
+
+		<h3>[property:String space]</h3>
+		<p>
+			Defines in which coordinate space transformations should be performed. Possible values are "world" and "local". Default is *world*.
+		</p>
+
+		<h3>[property:Number translationSnap]</h3>
+		<p>
+			By default, 3D objects are continously translated. If you set this property to a numeric value (world units), you can define in which
+			steps the 3D object should be translated. Deault is *null*.
+		</p>
+
+		<h2>Methods</h2>
+
+		<p>See the base [page:Object3D] class for common methods.</p>
+
+		<h3>[method:TransformControls attach] ( [param:Object3D object] )</h3>
+		<p>
+			<p>
+				[page:Object3D object]: The 3D object that should be transformed.
+			</p>
+			<p>
+				Sets the 3D object that should be transformed and ensures the controls UI is visible.
+			</p>
+		</p>
+
+		<h3>[method:TransformControls detach] ()</h3>
+		<p>
+			Removes the current 3D object from the controls and makes the helper UI is invisible.
+		</p>
+
+		<h3>[method:null dispose] ()</h3>
+		<p>
+			Should be called if the controls is no longer required.
+		</p>
+
+		<h3>[method:String getMode] ()</h3>
+		<p>
+			Returns the transformation mode.
+		</p>
+
+		<h3>[method:null setMode] ( [param:String mode] )</h3>
+		<p>
+			<p>
+				[page:String mode]: The transformation mode.
+			</p>
+			<p>
+				Sets the transformation mode.
+			</p>
+		</p>
+
+		<h3>[method:null setRotationSnap] ( [param:Number rotationSnap] )</h3>
+		<p>
+			<p>
+				[page:Number rotationSnap]: The rotation snap.
+			</p>
+			<p>
+				Sets the rotation snap.
+			</p>
+		</p>
+
+		<h3>[method:null setSize] ( [param:Number size] )</h3>
+		<p>
+			<p>
+				[page:Number size]: The size of the helper UI.
+			</p>
+			<p>
+				Sets the size of the helper UI.
+			</p>
+		</p>
+
+		<h3>[method:null setSpace] ( [param:String space] )</h3>
+		<p>
+			<p>
+				[page:String space]: The coordinate space in which transformations are applied.
+			</p>
+			<p>
+				Sets the coordinate space in which transformations are applied.
+			</p>
+		</p>
+
+		<h3>[method:null setTranslationSnap] ( [param:Number translationSnap] )</h3>
+		<p>
+			<p>
+				[page:Number translationSnap]: The translation snap.
+			</p>
+			<p>
+				Sets the translation snap.
+			</p>
+		</p>
+
+		<h2>Source</h2>
+
+		<p>
+			[link:https://github.com/mrdoob/three.js/blob/master/examples/js/controls/TransformControls.js examples/js/controls/TransformControls.js]
+		</p>
+	</body>
+</html>

+ 1 - 0
docs/examples/zh/exporters/GLTFExporter.html

@@ -94,6 +94,7 @@
 			<li>truncateDrawRange - bool. Export just the attributes within the drawRange, if defined, instead of exporting the whole array. Default is true.</li>
 			<li>truncateDrawRange - bool. Export just the attributes within the drawRange, if defined, instead of exporting the whole array. Default is true.</li>
 			<li>binary - bool. Export in binary (.glb) format, returning an ArrayBuffer. Default is false.</li>
 			<li>binary - bool. Export in binary (.glb) format, returning an ArrayBuffer. Default is false.</li>
 			<li>embedImages - bool. Export with images embedded into the glTF asset. Default is true.</li>
 			<li>embedImages - bool. Export with images embedded into the glTF asset. Default is true.</li>
+			<li>maxTextureSize - int. Restricts the image maximum size (both width and height) to the given value. This option works only if embedImages is true. Default is Infinity.</li>
 			<li>animations - Array<[page:AnimationClip AnimationClip]>. List of animations to be included in the export.</li>
 			<li>animations - Array<[page:AnimationClip AnimationClip]>. List of animations to be included in the export.</li>
 			<li>forceIndices - bool. Generate indices for non-index geometry and export with them. Default is false.</li>
 			<li>forceIndices - bool. Generate indices for non-index geometry and export with them. Default is false.</li>
 			<li>forcePowerOfTwoTextures - bool. Export with images resized to POT size. This option works only if embedImages is true. Default is false.</li>
 			<li>forcePowerOfTwoTextures - bool. Export with images resized to POT size. This option works only if embedImages is true. Default is false.</li>

+ 0 - 101
docs/examples/zh/loaders/BabylonLoader.html

@@ -1,101 +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 a <em>.babylon</em> resource. <br />
-		The <a href="https://doc.babylonjs.com/generals/file_format_map_(.babylon)"> .babylon </a> file format used by
-		<a href="https://www.babylonjs.com/">Babylon.js</a>.
-		</p>
-
-		<h2>Example</h2>
-
-		<code>
-		// instantiate a loader
-		var loader = new THREE.BabylonLoader();
-
-		// load a Babylon resource
-		loader.load(
-			// resource URL
-			'models/babylon/skull.babylon',
-			// called when resource is loaded
-			function ( object ) {
-
-				scene.add( object );
-
-			},
-			// called when loading is in progress
-			function ( xhr ) {
-
-				console.log( ( xhr.loaded / xhr.total * 100 ) + '% loaded' );
-
-			},
-			// called when loading has errors
-			function ( xhr ) {
-
-				console.log( 'An error happened' );
-
-			}
-		);
-		</code>
-
-		[example:webgl_loader_babylon]
-
-		<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>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
-		<p>
-		[page:String url] — A string containing the path/URL of the <em>.babylon</em> file.<br />
-		[page:function onLoad] — (optional) A function to be called after loading is successfully completed. The function receives the loaded [page:Object3D] as an argument.<br />
-		[page:function onProgress] — (optional) A function to be called while the loading is in progress. The argument will be the XMLHttpRequest instance, which contains [page:Integer total] and [page:Integer loaded] bytes.<br />
-		[page:function onError] — (optional) A function to be called if an error occurs during loading. The function receives the error as an argument.<br />
-		</p>
-		<p>
-		Begin loading from url and call onLoad with the parsed response content.
-		</p>
-
-		<h3>[method:Object3D parse]( [param:Object json] )</h3>
-		<p>
-		[page:Object json] — The <em>JSON</em> structure to parse.
-		</p>
-		<p>
-		Parse a <em>JSON</em> structure and return an [page:Object3D object] or a [page:Scene scene].<br />
-		Found objects are converted to [page:Mesh] with a [page:BufferGeometry] and a default [page:MeshPhongMaterial].<br />
-		Lights are parsed accordingly.
-		</p>
-
-		<h3>[method:BabylonLoader setPath]( [param:String path] )</h3>
-		<p>
-		[page:String path] — Base path.
-		</p>
-		<p>
-		Set the base path for the file.
-		</p>
-
-		<h2>Source</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/js/loaders/BabylonLoader.js examples/js/loaders/BabylonLoader.js]
-		</p>
-	</body>
-</html>

+ 5 - 8
docs/examples/zh/loaders/BasisTextureLoader.html

@@ -9,6 +9,7 @@
 	</head>
 	</head>
 	<body>
 	<body>
 		[page:Loader] &rarr;
 		[page:Loader] &rarr;
+
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
 		<p class="desc">
 		<p class="desc">
@@ -81,7 +82,11 @@
 		Creates a new [name].
 		Creates a new [name].
 		</p>
 		</p>
 
 
+		<h2>Properties</h2>
+		<p>See the base [page:Loader] class for common properties.</p>
+
 		<h2>Methods</h2>
 		<h2>Methods</h2>
+		<p>See the base [page:Loader] class for common methods.</p>
 
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>
@@ -103,14 +108,6 @@
 		the output format for the transcoder. Must be called before loading a texture.
 		the output format for the transcoder. Must be called before loading a texture.
 		</p>
 		</p>
 
 
-		<h3>[method:this setCrossOrigin]( [param:String crossOrigin] )</h3>
-		<p>
-		[page:String crossOrigin] — Options are '', 'anonymous', or 'use-credentials'. Default is 'anonymous'.
-		</p>
-		<p>
-		Sets options for CORS requests.
-		</p>
-
 		<h3>[method:this setTranscoderPath]( [param:String path] )</h3>
 		<h3>[method:this setTranscoderPath]( [param:String path] )</h3>
 		<p>
 		<p>
 		[page:String path] — Path to folder containing the WASM transcoder and JS wrapper.
 		[page:String path] — Path to folder containing the WASM transcoder and JS wrapper.

+ 4 - 13
docs/examples/zh/loaders/DRACOLoader.html

@@ -87,7 +87,11 @@
 		Creates a new [name].
 		Creates a new [name].
 		</p>
 		</p>
 
 
+		<h2>Properties</h2>
+		<p>See the base [page:Loader] class for common properties.</p>
+
 		<h2>Methods</h2>
 		<h2>Methods</h2>
+		<p>See the base [page:Loader] class for common methods.</p>
 
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>
@@ -100,19 +104,6 @@
 		Begin loading from url and call the <em>onLoad</em> function with the decompressed geometry.
 		Begin loading from url and call the <em>onLoad</em> function with the decompressed geometry.
 		</p>
 		</p>
 
 
-		<h3>[method:this setPath]( [param:String path] )</h3>
-		<p>
-		[page:String path] — Base path.
-		</p>
-		<p>
-		Set the base path for the <em>.drc</em> file.
-		</p>
-
-		<h3>[method:this setCrossOrigin]( [param:String value] )</h3>
-		<p>
-		[page:String value] — The crossOrigin string to implement CORS for loading the url from a different domain that allows CORS.
-		</p>
-
 		<h3>[method:this setDecoderPath]( [param:String value] )</h3>
 		<h3>[method:this setDecoderPath]( [param:String value] )</h3>
 		<p>
 		<p>
 		[page:String value] — Path to folder containing the JS and WASM decoder libraries.
 		[page:String value] — Path to folder containing the JS and WASM decoder libraries.

+ 3 - 22
docs/examples/zh/loaders/GLTFLoader.html

@@ -9,6 +9,7 @@
 	</head>
 	</head>
 	<body>
 	<body>
 		[page:Loader] &rarr;
 		[page:Loader] &rarr;
+
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
 		<p class="desc"> A loader for <em>glTF 2.0</em> resources. <br /><br />
 		<p class="desc"> A loader for <em>glTF 2.0</em> resources. <br /><br />
@@ -161,9 +162,10 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
-
+		<p>See the base [page:Loader] class for common properties.</p>
 
 
 		<h2>Methods</h2>
 		<h2>Methods</h2>
+		<p>See the base [page:Loader] class for common methods.</p>
 
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>
@@ -176,27 +178,6 @@
 		Begin loading from url and call the callback function with the parsed response content.
 		Begin loading from url and call the callback function with the parsed response content.
 		</p>
 		</p>
 
 
-		<h3>[method:GLTFLoader setPath]( [param:String path] )</h3>
-		<p>
-		[page:String path] — Base path.
-		</p>
-		<p>
-		Set the base path for the .gltf/.glb file.
-		</p>
-
-		<h3>[method:GLTFLoader setResourcePath]( [param:String path] )</h3>
-		<p>
-		[page:String path] — Base path for loading additional resources e.g. textures and .bin data.
-		</p>
-		<p>
-		Set the base path for additional resources.
-		</p>
-
-		<h3>[method:null setCrossOrigin]( [param:String value] )</h3>
-		<p>
-		[page:String value] — The crossOrigin string to implement CORS for loading the url from a different domain that allows CORS.
-		</p>
-
 		<h3>[method:null setDRACOLoader]( [param:DRACOLoader dracoLoader] )</h3>
 		<h3>[method:null setDRACOLoader]( [param:DRACOLoader dracoLoader] )</h3>
 		<p>
 		<p>
 		[page:DRACOLoader dracoLoader] — Instance of THREE.DRACOLoader, to be used for decoding assets compressed with the KHR_draco_mesh_compression extension.
 		[page:DRACOLoader dracoLoader] — Instance of THREE.DRACOLoader, to be used for decoding assets compressed with the KHR_draco_mesh_compression extension.

+ 0 - 543
docs/examples/zh/loaders/LoaderSupport.html

@@ -1,543 +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">Supporting classes for file loaders and web worker based loaders.</p>
-
-		<h2>Sub-Classes</h2>
-		[page:LoaderSupport.Builder]<br>
-		[page:LoaderSupport.LoadedMeshUserOverride]<br>
-		[page:LoaderSupport.WorkerSupport]<br>
-		[page:LoaderSupport.WorkerRunnerRefImpl]<br>
-		[page:LoaderSupport.WorkerDirector]<br>
-		[page:LoaderSupport.ResourceDescriptor]<br>
-		[page:LoaderSupport.PrepData]<br>
-		[page:LoaderSupport.Callbacks]<br>
-		[page:LoaderSupport.Validator]<br>
-
-
-		<h2>Example</h2>
-
-		[example:webgl_loader_obj2_meshspray] - Example using [page:LoaderSupport.LoaderWorkerDirector] and [page:LoaderSupport.LoaderWorkerSupport].<br>
-
-		<h2>Classes</h2>
-		<br>
-
-		<a name="Builder"></a><h1>Builder</h1>
-		<h2>Constructor</h2>
-
-		<h3>Builder()</h3>
-		<p>
-			Builds one or many [page:Mesh] from one raw set of Arraybuffers, materialGroup descriptions and further parameters.
-			Supports vertex, vertexColor, normal, uv and index buffers.
-		</p>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null setLogging] ( [param:Boolean enabled], [param:Boolean debug] )</h3>
-		<p>
-			[page:Boolean enabled] True or false.<br>
-			[page:Boolean debug] True or false.
-		</p>
-		<p>
-			Enable or disable logging in general (except warn and error), plus enable or disable debug logging.
-		</p>
-
-
-		<h3>[method:null init] ()</h3>
-		<p>
-			Initializes the Builder (currently only default material initialisation).
-		</p>
-
-
-		<h3>[method:null setMaterials] ( Array of [param:Material materials] )</h3>
-		<p>
-			Array of [page:Material materials] - Array of [page:Material Materials]
-		</p>
-		<p>
-			Set materials loaded by any supplier of an Array of [page:Material Materials].
-		</p>
-
-
-		<h3>[method:Array processPayload] ( Object payload )</h3>
-		<p>
-			[page:Object payload] - Raw Mesh or Material descriptions.
-		</p>
-		<p>
-			Delegates processing of the payload (mesh building or material update) to the corresponding functions (BW-compatibility).
-		</p>
-
-
-		<h3>[method:Array buildMeshes] ( Object meshPayload )</h3>
-		<p>
-			[page:Object meshPayload] - Raw mesh description (buffers, params, materials) used to build one to many meshes.
-		</p>
-		<p>
-			Builds one or multiple meshes from the data described in the payload (buffers, params, material info).
-		</p>
-
-
-		<h3>[method:null updateMaterials] ( Object materialPayload )</h3>
-		<p>
-			[page:Object materialPayload] - Material update instructions
-		</p>
-		<p>
-			Updates the materials with contained material objects (sync) or from alteration instructions (async).
-		</p>
-
-
-		<h3>[method:Object getMaterialsJSON] ()</h3>
-		<p>
-			Returns the mapping object of material name and corresponding jsonified material.
-		</p>
-
-
-		<h3>[method:Object getMaterials] ()</h3>
-		<p>
-			Returns the mapping object of material name and corresponding material.
-		</p>
-		<br>
-		<br>
-
-
-		<a name="LoadedMeshUserOverride"></a><h1>LoadedMeshUserOverride</h1>
-		<h2>Constructor</h2>
-
-		<h3>LoadedMeshUserOverride( [param:Boolean disregardMesh], [param:BufferGeometry bufferGeometry] )</h3>
-		<p>
-			[page:Boolean disregardMesh] - Tell implementation to completely disregard this mesh<br>
-			[page:Boolean alteredMesh] - Tell implementation that mesh(es) have been altered or added
-		</p>
-		<p>
-			Object to return by callback onMeshAlter. Used to disregard a certain mesh or to return one to many meshes.
-		</p>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null addMesh] ( [param:Mesh mesh] )</h3>
-		<p>
-			[page:Mesh mesh] - Mesh
-		</p>
-		<p>
-			Add a mesh created within callback.
-		</p>
-
-
-		<h3>[method:boolean isDisregardMesh] ()</h3>
-		<p>
-			Answers if mesh shall be disregarded completely.
-		</p>
-
-
-		<h3>[method:boolean providesAlteredMeshes] ()</h3>
-		<p>
-			Answers if new mesh(es) were created.
-		</p>
-		<br>
-		<br>
-
-
-		<a name="WorkerSupport"></a><h1>WorkerSupport</h1>
-		<h2>Constructor</h2>
-
-		<h3>WorkerSupport()</h3>
-		<p>
-			This class provides means to transform existing parser code into a web worker.
-			It defines a simple communication protocol which allows to configure the worker and receive raw mesh data during execution.
-		</p>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null setLogging]( [param:Boolean enabled], [param:Boolean debug] )</h3>
-		<p>
-			[page:Boolean enabled] True or false.<br>
-			[page:Boolean debug] True or false.
-		</p>
-		<p>
-			Enable or disable logging in general (except warn and error), plus enable or disable debug logging.
-		</p>
-
-
-		<h3>[method:null setForceWorkerDataCopy]( [param:Boolean forceWorkerDataCopy] )</h3>
-		<p>
-			[page:Boolean forceWorkerDataCopy] True or false.
-		</p>
-		<p>
-			Forces all ArrayBuffers to be transferred to worker to be copied.
-		</p>
-
-
-		<h3>[method:null validate] ( [param:Function functionCodeBuilder], Array of [param:String libLocations], [param:String libPath], [param:LoaderSupport.WorkerRunnerRefImpl runnerImpl] )</h3>
-		<p>
-			[page:Function functionCodeBuilder] - Function that is invoked with funcBuildObject and funcBuildSingleton that allows stringification of objects and singletons.<br>
-			Array of [page:String libLocations] - URL of libraries that shall be added to worker code relative to libPath.<br>
-			[page:String libPath] - Base path used for loading libraries.<br>
-			[page:LoaderSupport.WorkerRunnerRefImpl runnerImpl] - The default worker parser wrapper implementation (communication and execution). An extended class could be passed here.
-		</p>
-		<p>
-			Validate the status of worker code and the derived worker.
-		</p>
-
-
-		<h3>[method:null setTerminateRequested] ( [param:Boolean terminateRequested] )</h3>
-		<p>
-			[page:Boolean terminateRequested] - True or false.
-		</p>
-		<p>
-			Request termination of worker once parser is finished.
-		</p>
-
-
-		<h3>[method:null setCallbacks] ( [param:Function builder], [param:Function onLoad] )</h3>
-		<p>
-			[page:Function builder] - The builder function. Default is [page:LoaderSupport.Builder].<br>
-			[page:Function onLoad] - The function that is called when parsing is complete.
-		</p>
-		<p>
-			Specify functions that should be build when new raw mesh data becomes available and when the parser is finished.
-		</p>
-
-
-		<h3>[method:null run] ( [param:Object payload] )</h3>
-		<p>
-			[page:Object payload] - Raw mesh description (buffers, params, materials) used to build one to many meshes.
-		</p>
-		<p>
-			Runs the parser with the provided configuration.
-		</p>
-		<br>
-		<br>
-
-
-		<a name="WorkerRunnerRefImpl"></a><h1>WorkerRunnerRefImpl</h1>
-		<h2>Constructor</h2>
-
-		<h3>WorkerRunnerRefImpl()</h3>
-		<p>
-			Default implementation of the WorkerRunner responsible for creation and configuration of the parser within the worker.
-		</p>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null applyProperties] ( [param:Object parser], [param:Object params] )</h3>
-		<p>
-			[page:Object parser] - The parser instance<br>
-			[page:Object params] - The parameter object
-		</p>
-		<p>
-			Applies values from parameter object via set functions or via direct assignment.
-		</p>
-
-
-		<h3>[method:null run] ( [param:Object payload] )</h3>
-		<p>
-			[page:Object payload] - Raw mesh description (buffers, params, materials) used to build one to many meshes.
-		</p>
-		<p>
-			Configures the Parser implementation according the supplied configuration object.
-		</p>
-		<br>
-		<br>
-
-
-		<a name="WorkerDirector"></a><h1>WorkerDirector</h1>
-		<h2>Constructor</h2>
-
-		<h3>WorkerDirector( [param:String classDef] )</h3>
-		<p>
-			[page:String classDef] - Class definition to be used for construction
-		</p>
-		<p>
-			Orchestrate loading of multiple OBJ files/data from an instruction queue with a configurable amount of workers (1-16).<br>
-			- Workflow:<br>
-			- prepareWorkers<br>
-			- enqueueForRun<br>
-			- processQueue<br>
-			- tearDown
-		</p>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null setLogging]( [param:Boolean enabled], [param:Boolean debug] )</h3>
-		<p>
-			[page:Boolean enabled] True or false.<br>
-			[page:Boolean debug] True or false.
-		</p>
-		<p>
-			Enable or disable logging in general (except warn and error), plus enable or disable debug logging.
-		</p>
-
-
-		<h3>[method:null setForceWorkerDataCopy]( [param:Boolean forceWorkerDataCopy] )</h3>
-		<p>
-			[page:Boolean forceWorkerDataCopy] True or false.
-		</p>
-		<p>
-			Forces all ArrayBuffers to be transferred to worker to be copied.
-		</p>
-
-
-		<h3>[method:null prepareWorkers]( [param:WWOBJLoader2.Callbacks globalCallbacks], [param:Number maxQueueSize], [param:Number maxWebWorkers] )</h3>
-		<p>
-			[page:LoaderSupport.Callbacks globalCallbacks] - Register global callbacks used by all web workers<br>
-			[page:Number maxQueueSize] - Set the maximum size of the instruction queue (1-1024)<br>
-			[page:Number maxWebWorkers] - Set the maximum amount of workers (1-16)
-		</p>
-		<p>
-			Create or destroy workers according limits. Set the name and register callbacks for dynamically created web workers.
-		</p>
-
-
-		<h3>[method:null enqueueForRun]( [param:LoaderSupport.PrepData runParams] )</h3>
-		<p>
-			[page:LoaderSupport.PrepData runParams]
-		</p>
-		<p>
-			Store run instructions in internal instructionQueue.
-		</p>
-
-
-		<h3>[method:null processQueue]()</h3>
-		<p>
-			Process the instructionQueue until it is depleted.
-		</p>
-
-
-		<h3>[method:null tearDown]( [param:Function callbackOnFinishedProcessing] )</h3>
-		<p>
-			[page:Function callbackOnFinishedProcessing] - Function called once all workers finished processing.
-		</p>
-		<p>
-			Terminate all workers.
-		</p>
-
-
-		<h3>[method:null getMaxQueueSize]()</h3>
-		<p>
-			Returns the maximum length of the instruction queue.
-		</p>
-
-
-		<h3>[method:null getMaxWebWorkers]()</h3>
-		<p>
-			Returns the maximum number of workers.
-		</p>
-
-		<h3>[method:Boolean isRunning]()</h3>
-		<p>
-			Returns if any workers are running.
-		</p>
-
-
-		<h3>[method:null setCrossOrigin]( [param:String crossOrigin] )</h3>
-		<p>
-			[page:String crossOrigin] - CORS value
-		</p>
-		<p>
-			Sets the CORS string to be used.
-		</p>
-		<br>
-		<br>
-
-
-		<a name="ResourceDescriptor"></a><h1>ResourceDescriptor</h1>
-		<h2>Constructor</h2>
-
-		<h3>ResourceDescriptor( [param:String url], [param:String extension] )</h3>
-		<p>
-			[page:String url] - URL to the file<br>
-			[page:String extension] - The file extension (type)
-		</p>
-		<p>
-			A resource description used by [page:LoaderSupport.PrepData] and others.
-		</p>
-
-		<h2>Methods</h2>
-
-		<h3>[method:null setContent]( [param:Object content )</h3>
-		<p>
-			[page:Object content] - The file content as ArrayBuffer or text
-		</p>
-		<p>
-			Set the content of this resource
-		</p>
-
-
-		<h3>[method:null setResourcePath] ( [param:String resourcePath] )</h3>
-		<p>
-			[page:String resourcePath] - URL
-		</p>
-		<p>
-			Allows to specify resourcePath for dependencies of specified resource.
-		</p>
-		<br>
-		<br>
-
-
-		<a name="PrepData"></a><h1>PrepData</h1>
-		<h2>Constructor</h2>
-
-		<h3>PrepData( [param:String modelName] )</h3>
-		<p>
-			[page:String modelName] - Overall name of the model
-		</p>
-		<p>
-			Configuration instructions to be used by run method.
-		</p>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null setLogging]( [param:Boolean enabled], [param:Boolean debug] )</h3>
-		<p>
-			[page:Boolean enabled] True or false.<br>
-			[page:Boolean debug] True or false.
-		</p>
-		<p>
-			Enable or disable logging in general (except warn and error), plus enable or disable debug logging.
-		</p>
-
-
-		<h3>[method:Callbacks getCallbacks]()</h3>
-		<p>
-			Returns all callbacks as [page:LoaderSupport.Callbacks].
-		</p>
-
-
-		<h3>[method:null addResource]( [param:LoaderSupport.ResourceDescriptor resource] )</h3>
-		<p>
-			[page:LoaderSupport.ResourceDescriptor resource] Adds a [page:LoaderSupport.ResourceDescriptor]
-		</p>
-		<p>
-			Add a resource description.
-		</p>
-
-
-		<h3>[method:null checkResourceDescriptorFiles] ( [param:LoaderSupport.ResourceDescriptor resources], [param:Object fileDesc] )</h3>
-		<p>
-			[page:LoaderSupport.ResourceDescriptor resources] - Array of [page:LoaderSupport.ResourceDescriptor]<br>
-			[page:Object fileDesc] - Object describing which resources are of interest (ext, type (string or UInt8Array) and ignore (boolean))
-		</p>
-		<p>
-			Identify files or content of interest from an Array of [page:LoaderSupport.ResourceDescriptor].
-			Returns Object with each "ext" and the corresponding [page:LoaderSupport.ResourceDescriptor]
-		</p>
-
-
-		<h3>[method:PrepData clone] ()</h3>
-		<p>
-			Clones this object and returns it afterwards. Callbacks and resources are not cloned deep (references!).
-		</p>
-		<br>
-		<br>
-
-
-		<a name="Callbacks"></a><h1>Callbacks</h1>
-		<h2>Constructor</h2>
-
-		<h3>Callbacks()</h3>
-		<p>
-			Callbacks utilized by loaders and builder.
-		</p>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null setCallbackOnProgress]( [param:Function callbackOnProgress] )</h3>
-		<p>
-			[page:Function callbackOnProgress] - Callback function for described functionality
-		</p>
-		<p>
-			Register callback function that is invoked by internal function "announceProgress" to print feedback.
-		</p>
-
-		<h3>[method:null setCallbackOnReportError]( [param:Function callbackOnReportError] )</h3>
-		<p>
-			[page:Function callbackOnReportError] - Callback function for described functionality
-		</p>
-		<p>
-			Register callback function that is invoked when an error is reported.
-		</p>
-
-		<h3>[method:null setCallbackOnMeshAlter]( [param:Function callbackOnMeshAlter] )</h3>
-		<p>
-			[page:Function callbackOnMeshAlter] - Callback function for described functionality
-		</p>
-		<p>
-			Register callback function that is called every time a mesh was loaded.
-			Use [page:LoadedMeshUserOverride] for alteration instructions (geometry, material or disregard mesh).
-		</p>
-
-
-		<h3>[method:null setCallbackOnLoad]( [param:Function callbackOnLoad] )</h3>
-		<p>
-			[page:Function callbackOnLoad] - Callback function for described functionality
-		</p>
-		<p>
-			Register callback function that is called once loading of the complete OBJ file is completed.
-		</p>
-
-		<h3>[method:null setCallbackOnLoadMaterials]( [param:Function callbackOnLoadMaterials] )</h3>
-		<p>
-			[page:Function callbackOnLoadMaterials] - Callback function for described functionality
-		</p>
-		<p>
-			Register callback function that is called when materials have been loaded.
-		</p>
-		<br>
-		<br>
-
-
-		<a name="Validator"></a><h1>Validator</h1>
-		<h2>Constructor</h2>
-
-		<h3>Validator()</h3>
-		<p>
-			Validation functions.
-		</p>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:Boolean isValid]( [param:Object input] )</h3>
-		<p>
-			[page:Object input] - Can be anything
-		</p>
-		<p>
-			If given input is null or undefined, false is returned otherwise true.
-		</p>
-
-
-		<h3>[method:null verifyInput]( [param:Object input], [param:Object defaultValue] )</h3>
-		<p>
-			[page:Object input] - Can be anything<br>
-			[page:Object defaultValue] - Can be anything
-		</p>
-		<p>
-			If given input is null or undefined, the defaultValue is returned otherwise the given input.
-		</p>
-		<br>
-		<br>
-
-		<h2>Source</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/js/loaders/LoaderSupport.js examples/js/loaders/LoaderSupport.js]
-		</p>
-
-	</body>
-</html>

+ 6 - 25
docs/examples/zh/loaders/MMDLoader.html

@@ -9,6 +9,7 @@
 	</head>
 	</head>
 	<body>
 	<body>
 		[page:Loader] &rarr;
 		[page:Loader] &rarr;
+
 		<h1>MMD加载器([name])</h1>
 		<h1>MMD加载器([name])</h1>
 
 
  		<p class="desc">一个用于加载<a href="http://www.geocities.jp/higuchuu4/index_e.htm"><em>MMD</em></a>资源的加载器。<br /><br />
  		<p class="desc">一个用于加载<a href="http://www.geocities.jp/higuchuu4/index_e.htm"><em>MMD</em></a>资源的加载器。<br /><br />
@@ -65,10 +66,11 @@
 		创建一个新的[name]。
 		创建一个新的[name]。
 		</p>
 		</p>
 
 
- 		<h2>属性</h2>
-
+		<h2>属性</h2>
+		<p>共有属性请参见其基类[page:Loader]。</p>
 
 
- 		<h2>方法</h2>
+		<h2>方法</h2>
+		<p>共有方法请参见其基类[page:Loader]。</p>
 
 
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<h3>[method:null load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
 		<p>
 		<p>
@@ -102,12 +104,7 @@
 		[page:Function onError] — (可选)如果加载过程中发生错误时被调用的函数,该函数接受一个错误来作为参数。<br />
 		[page:Function onError] — (可选)如果加载过程中发生错误时被调用的函数,该函数接受一个错误来作为参数。<br />
 		</p>
 		</p>
 		<p>
 		<p>
-		开始从URL中加载PMD/PMX模型文件和VMD动画文件(可能有多个文件),并使用一个[page:Object] —— 包含有已解析的[page:SkinnedMesh]和适应[page:SkinnedMesh]的[page:AnimationClip],来触发回调函数。 
-		</p>
-
-		<h3>[method:MMDLoader setCrossOrigin]( [param:String crossOrigin] )</h3>
-		<p>
-		[page:String crossOrigin] — crossOrigin字符串,用于实现CORS,以便从一个允许CORS的其它域加载url。
+		开始从URL中加载PMD/PMX模型文件和VMD动画文件(可能有多个文件),并使用一个[page:Object] —— 包含有已解析的[page:SkinnedMesh]和适应[page:SkinnedMesh]的[page:AnimationClip],来触发回调函数。
 		</p>
 		</p>
 
 
 		<h3>[method:MMDLoader setAnimationPath]( [param:String animationPath] )</h3>
 		<h3>[method:MMDLoader setAnimationPath]( [param:String animationPath] )</h3>
@@ -118,22 +115,6 @@
 		设置额外资源(例如贴图)的基础路径。
 		设置额外资源(例如贴图)的基础路径。
 		</p>
 		</p>
 
 
-		<h3>[method:MMDLoader setPath]( [param:String path] )</h3>
-		<p>
-		[page:String path] — 基础路径。
-		</p>
-		<p>
-		设置用于加载文件的基础路径或URL。
-		</p>
-
-		<h3>[method:MMDLoader setResourcePath]( [param:String resourcePath] )</h3>
-		<p>
-		[page:String resourcePath] — 用于加载额外资源(例如贴图)的基础路径。
-		</p>
-		<p>
-		设置额外资源(例如贴图)的基础路径。
-		</p>
-
 		<h2>源代码</h2>
 		<h2>源代码</h2>
 
 
 		<p>
 		<p>

Some files were not shown because too many files changed in this diff