Browse Source

Merge branch 'dev' of https://github.com/mrdoob/three.js into dev

Luis Blanco 6 years ago
parent
commit
70aee41b03
100 changed files with 4694 additions and 4193 deletions
  1. 14 0
      .editorconfig
  2. 1 1
      .github/ISSUE_TEMPLATE.md
  3. 4 4
      README.md
  4. 1661 1781
      build/three.js
  5. 566 412
      build/three.min.js
  6. 1661 1781
      build/three.module.js
  7. 1 1
      docs/api/en/animation/KeyframeTrack.html
  8. 2 2
      docs/api/en/cameras/ArrayCamera.html
  9. 1 1
      docs/api/en/cameras/CubeCamera.html
  10. 3 3
      docs/api/en/cameras/OrthographicCamera.html
  11. 3 2
      docs/api/en/cameras/PerspectiveCamera.html
  12. 45 0
      docs/api/en/constants/Materials.html
  13. 8 8
      docs/api/en/constants/Textures.html
  14. 1 38
      docs/api/en/core/BufferGeometry.html
  15. 2 2
      docs/api/en/core/Clock.html
  16. 4 2
      docs/api/en/core/Geometry.html
  17. 1 1
      docs/api/en/core/InterleavedBufferAttribute.html
  18. 9 3
      docs/api/en/core/Object3D.html
  19. 2 1
      docs/api/en/core/Raycaster.html
  20. 2 1
      docs/api/en/core/bufferAttributeTypes/BufferAttributeTypes.html
  21. 1 1
      docs/api/en/extras/ShapeUtils.html
  22. 1 1
      docs/api/en/extras/core/Path.html
  23. 1 1
      docs/api/en/extras/core/Shape.html
  24. 1 1
      docs/api/en/extras/core/ShapePath.html
  25. 1 1
      docs/api/en/extras/curves/ArcCurve.html
  26. 5 3
      docs/api/en/geometries/BoxBufferGeometry.html
  27. 6 2
      docs/api/en/geometries/BoxGeometry.html
  28. 4 0
      docs/api/en/geometries/CircleBufferGeometry.html
  29. 4 0
      docs/api/en/geometries/CircleGeometry.html
  30. 5 1
      docs/api/en/geometries/ConeBufferGeometry.html
  31. 5 1
      docs/api/en/geometries/ConeGeometry.html
  32. 4 0
      docs/api/en/geometries/CylinderBufferGeometry.html
  33. 4 0
      docs/api/en/geometries/CylinderGeometry.html
  34. 5 1
      docs/api/en/geometries/DodecahedronBufferGeometry.html
  35. 4 0
      docs/api/en/geometries/DodecahedronGeometry.html
  36. 4 0
      docs/api/en/geometries/EdgesGeometry.html
  37. 7 1
      docs/api/en/geometries/ExtrudeBufferGeometry.html
  38. 7 1
      docs/api/en/geometries/ExtrudeGeometry.html
  39. 5 1
      docs/api/en/geometries/IcosahedronBufferGeometry.html
  40. 4 0
      docs/api/en/geometries/IcosahedronGeometry.html
  41. 4 0
      docs/api/en/geometries/LatheBufferGeometry.html
  42. 4 0
      docs/api/en/geometries/LatheGeometry.html
  43. 5 1
      docs/api/en/geometries/OctahedronBufferGeometry.html
  44. 4 0
      docs/api/en/geometries/OctahedronGeometry.html
  45. 3 0
      docs/api/en/geometries/ParametricBufferGeometry.html
  46. 3 0
      docs/api/en/geometries/ParametricGeometry.html
  47. 4 0
      docs/api/en/geometries/PlaneBufferGeometry.html
  48. 4 0
      docs/api/en/geometries/PlaneGeometry.html
  49. 3 0
      docs/api/en/geometries/PolyhedronBufferGeometry.html
  50. 3 0
      docs/api/en/geometries/PolyhedronGeometry.html
  51. 3 0
      docs/api/en/geometries/RingBufferGeometry.html
  52. 4 1
      docs/api/en/geometries/RingGeometry.html
  53. 4 0
      docs/api/en/geometries/ShapeBufferGeometry.html
  54. 3 0
      docs/api/en/geometries/ShapeGeometry.html
  55. 4 0
      docs/api/en/geometries/SphereBufferGeometry.html
  56. 4 0
      docs/api/en/geometries/SphereGeometry.html
  57. 4 2
      docs/api/en/geometries/TetrahedronBufferGeometry.html
  58. 4 0
      docs/api/en/geometries/TetrahedronGeometry.html
  59. 7 1
      docs/api/en/geometries/TextBufferGeometry.html
  60. 7 1
      docs/api/en/geometries/TextGeometry.html
  61. 4 0
      docs/api/en/geometries/TorusBufferGeometry.html
  62. 4 0
      docs/api/en/geometries/TorusGeometry.html
  63. 4 0
      docs/api/en/geometries/TorusKnotBufferGeometry.html
  64. 5 0
      docs/api/en/geometries/TorusKnotGeometry.html
  65. 4 0
      docs/api/en/geometries/TubeBufferGeometry.html
  66. 4 0
      docs/api/en/geometries/TubeGeometry.html
  67. 6 0
      docs/api/en/geometries/WireframeGeometry.html
  68. 2 2
      docs/api/en/helpers/ArrowHelper.html
  69. 1 1
      docs/api/en/helpers/AxesHelper.html
  70. 1 1
      docs/api/en/helpers/Box3Helper.html
  71. 7 7
      docs/api/en/helpers/BoxHelper.html
  72. 1 1
      docs/api/en/helpers/CameraHelper.html
  73. 1 1
      docs/api/en/helpers/FaceNormalsHelper.html
  74. 2 2
      docs/api/en/helpers/GridHelper.html
  75. 1 1
      docs/api/en/helpers/PlaneHelper.html
  76. 1 1
      docs/api/en/helpers/PointLightHelper.html
  77. 1 1
      docs/api/en/helpers/PolarGridHelper.html
  78. 1 1
      docs/api/en/helpers/VertexNormalsHelper.html
  79. 3 2
      docs/api/en/lights/Light.html
  80. 1 1
      docs/api/en/lights/RectAreaLight.html
  81. 4 5
      docs/api/en/loaders/AnimationLoader.html
  82. 10 0
      docs/api/en/loaders/ImageBitmapLoader.html
  83. 1 1
      docs/api/en/loaders/ImageLoader.html
  84. 24 0
      docs/api/en/loaders/Loader.html
  85. 38 3
      docs/api/en/materials/Material.html
  86. 131 0
      docs/api/en/materials/MeshDistanceMaterial.html
  87. 150 0
      docs/api/en/materials/MeshMatcapMaterial.html
  88. 61 1
      docs/api/en/materials/MeshNormalMaterial.html
  89. 2 2
      docs/api/en/materials/MeshToonMaterial.html
  90. 1 1
      docs/api/en/materials/RawShaderMaterial.html
  91. 2 3
      docs/api/en/materials/ShaderMaterial.html
  92. 22 2
      docs/api/en/math/Box3.html
  93. 4 29
      docs/api/en/math/Euler.html
  94. 1 1
      docs/api/en/math/Matrix3.html
  95. 3 2
      docs/api/en/math/Matrix4.html
  96. 8 32
      docs/api/en/math/Quaternion.html
  97. 4 4
      docs/api/en/math/Vector2.html
  98. 4 4
      docs/api/en/math/Vector3.html
  99. 10 4
      docs/api/en/math/Vector4.html
  100. 10 11
      docs/api/en/objects/LOD.html

+ 14 - 0
.editorconfig

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

+ 1 - 1
.github/ISSUE_TEMPLATE.md

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

+ 4 - 4
README.md

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

File diff suppressed because it is too large
+ 1661 - 1781
build/three.js


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


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


+ 1 - 1
docs/api/en/animation/KeyframeTrack.html

@@ -58,7 +58,7 @@
 
 
 		<p>
 		<p>
 			Some examples of how to manually create [page:AnimationClip AnimationClips] with different sorts
 			Some examples of how to manually create [page:AnimationClip AnimationClips] with different sorts
-			of KeyframeTracks can be found in the [link:https://threejs.org/examples/js/AnimationClipCreator.js]
+			of KeyframeTracks can be found in the [link:https://threejs.org/examples/js/animation/AnimationClipCreator.js AnimationClipCreator]
 			file.
 			file.
 		</p>
 		</p>
 
 

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

@@ -8,13 +8,13 @@
 		<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>
 
 
 		<p class="desc">
 		<p class="desc">
 			[name] can be used in order to efficiently render a scene with a predefined set of cameras. This is an important performance aspect for rendering VR scenes.<br />
 			[name] can be used in order to efficiently render a scene with a predefined set of cameras. This is an important performance aspect for rendering VR scenes.<br />
-			An instance of [name] always has an array of sub cameras. It's mandatory to define for each sub camera the *bounds* property which determines the part of the viewport that is rendered with this camera.
+			An instance of [name] always has an array of sub cameras. It's mandatory to define for each sub camera the *viewport* property which determines the part of the viewport that is rendered with this camera.
 		</p>
 		</p>
 
 
 		<h2>Example</h2>
 		<h2>Example</h2>

+ 1 - 1
docs/api/en/cameras/CubeCamera.html

@@ -24,7 +24,7 @@
 		scene.add( cubeCamera );
 		scene.add( cubeCamera );
 
 
 		// Create car
 		// Create car
-		var chromeMaterial = new THREE.MeshLambertMaterial( { color: 0xffffff, envMap: cubeCamera.renderTarget } );
+		var chromeMaterial = new THREE.MeshLambertMaterial( { color: 0xffffff, envMap: cubeCamera.renderTarget.texture } );
 		var car = new Mesh( carGeometry, chromeMaterial );
 		var car = new Mesh( carGeometry, chromeMaterial );
 		scene.add( car );
 		scene.add( car );
 
 

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

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

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

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

+ 45 - 0
docs/api/en/constants/Materials.html

@@ -92,7 +92,52 @@
 		[page:Constant MixOperation] uses reflectivity to blend between the two colors.<br />
 		[page:Constant MixOperation] uses reflectivity to blend between the two colors.<br />
 		[page:Constant AddOperation] adds the two colors.
 		[page:Constant AddOperation] adds the two colors.
 		</p>
 		</p>
+		
+		<h2>Stencil Functions</h2>
+		<code>
+		THREE.NeverStencilFunc
+		THREE.LessStencilFunc
+		THREE.EqualStencilFunc
+		THREE.LessEqualStencilFunc
+		THREE.GreaterStencilFunc
+		THREE.NotEqualStencilFunc
+		THREE.GreaterEqualStencilFunc
+		THREE.AlwaysStencilFunc
+		</code>
+		<p>
+		Which stencil function the material uses to determine whether or not to perform a stencil operation.<br />
+		[page:Materials NeverStencilFunc] will never return true.<br />
+		[page:Materials LessStencilFunc] will return true if the stencil reference value is less than the current stencil value.<br />
+		[page:Materials EqualStencilFunc] will return true if the stencil reference value is equal to the current stencil value.<br />
+		[page:Materials LessEqualStencilFunc] will return true if the stencil reference value is less than or equal to the current stencil value.<br />
+		[page:Materials GreaterStencilFunc] will return true if the stencil reference value is greater than the current stencil value.<br />
+		[page:Materials NotEqualStencilFunc] will return true if the stencil reference value is not equal to the current stencil value.<br />
+		[page:Materials GreaterEqualStencilFunc] will return true if the stencil reference value is greater than or equal to the current stencil value.<br />
+		[page:Materials AlwaysStencilFunc] will always return true.<br />
+		</p>
 
 
+		<h2>Stencil Operations</h2>
+		<code>
+		THREE.ZeroStencilOp
+		THREE.KeepStencilOp
+		THREE.ReplaceStencilOp
+		THREE.IncrementStencilOp
+		THREE.DecrementStencilOp
+		THREE.IncrementWrapStencilOp
+		THREE.DecrementWrapStencilOp
+		THREE.InvertStencilOp
+		</code>
+		<p>
+		Which stencil operation the material will perform on the stencil buffer pixel if the provided stencil function passes.<br />
+		[page:Materials ZeroStencilOp] will set the stencil value to 0.<br />
+		[page:Materials KeepStencilOp] will not change the current stencil value.<br />
+		[page:Materials ReplaceStencilOp] will replace the stencil value with the specified stencil reference value.<br />
+		[page:Materials IncrementStencilOp] will increment the current stencil value by 1.<br />
+		[page:Materials DecrementStencilOp] will decrement the current stencil value by 1.<br />
+		[page:Materials IncrementWrapStencilOp] will increment the current stencil value by 1. If the value increments past 255 it will be set to 0.<br />
+		[page:Materials DecrementWrapStencilOp] will increment the current stencil value by 1. If the value decrements below 0 it will be set to 255.<br />
+		[page:Materials InvertStencilOp] will perform a bitwise iversion of the current stencil value.<br />
+		</p>
 
 
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 

+ 8 - 8
docs/api/en/constants/Textures.html

@@ -87,11 +87,11 @@
 		<h2>Minification Filters</h2>
 		<h2>Minification Filters</h2>
 		<code>
 		<code>
 		THREE.NearestFilter
 		THREE.NearestFilter
-		THREE.NearestMipMapNearestFilter
-		THREE.NearestMipMapLinearFilter
+		THREE.NearestMipmapNearestFilter
+		THREE.NearestMipmapLinearFilter
 		THREE.LinearFilter
 		THREE.LinearFilter
-		THREE.LinearMipMapNearestFilter
-		THREE.LinearMipMapLinearFilter
+		THREE.LinearMipmapNearestFilter
+		THREE.LinearMipmapLinearFilter
 		</code>
 		</code>
 
 
 		<p>
 		<p>
@@ -102,21 +102,21 @@
 		In addition to [page:constant NearestFilter] and [page:constant LinearFilter],
 		In addition to [page:constant NearestFilter] and [page:constant LinearFilter],
 		the following four functions can be used for minification:<br /><br />
 		the following four functions can be used for minification:<br /><br />
 
 
-		[page:constant NearestMipMapNearestFilter] chooses the mipmap that most closely
+		[page:constant NearestMipmapNearestFilter] chooses the mipmap that most closely
 		matches the size of the pixel being textured
 		matches the size of the pixel being textured
 		and uses the [page:constant NearestFilter] criterion (the texel nearest to the
 		and uses the [page:constant NearestFilter] criterion (the texel nearest to the
 		center of the pixel) to produce a texture value.<br /><br />
 		center of the pixel) to produce a texture value.<br /><br />
 
 
-		[page:constant NearestMipMapLinearFilter] chooses the two mipmaps that most closely
+		[page:constant NearestMipmapLinearFilter] chooses the two mipmaps that most closely
 		match the size of the pixel being textured and uses the [page:constant NearestFilter] criterion to produce
 		match the size of the pixel being textured and uses the [page:constant NearestFilter] criterion to produce
 		a texture value from each mipmap. The final texture value is a weighted average of those two values.<br /><br />
 		a texture value from each mipmap. The final texture value is a weighted average of those two values.<br /><br />
 
 
-		[page:constant LinearMipMapNearestFilter] chooses the mipmap that most closely matches
+		[page:constant LinearMipmapNearestFilter] chooses the mipmap that most closely matches
 		the size of the pixel being textured and uses the [page:constant LinearFilter] criterion
 		the size of the pixel being textured and uses the [page:constant LinearFilter] criterion
 		(a weighted average of the four texels that are closest to the center of the pixel)
 		(a weighted average of the four texels that are closest to the center of the pixel)
 		to produce a texture value.<br /><br />
 		to produce a texture value.<br /><br />
 
 
-		[page:constant LinearMipMapLinearFilter] is the default and chooses the two mipmaps
+		[page:constant LinearMipmapLinearFilter] is the default and chooses the two mipmaps
 		that most closely match the size of the pixel being textured and uses the [page:constant LinearFilter] criterion
 		that most closely match the size of the pixel being textured and uses the [page:constant LinearFilter] criterion
 		to produce a texture value from each mipmap. The final texture value is a weighted average of those two values.<br /><br />
 		to produce a texture value from each mipmap. The final texture value is a weighted average of those two values.<br /><br />
 
 

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

@@ -51,43 +51,6 @@
 			[example:webgl_buffergeometry_rawshader Raw Shaders]
 			[example:webgl_buffergeometry_rawshader Raw Shaders]
 		</p>
 		</p>
 
 
-
-		<h2>Accessing Attributes</h2>
-		<p>
-		WebGL stores data associated with individual vertices of a geometry in <em>attributes</em>.
-		Examples include the position of the vertex, the normal vector for the vertex, the vertex color,
-		and so on. When using [page:Geometry], the [page:WebGLRenderer renderer] takes care of wrapping
-		up this information into typed array buffers and sending this data to the shader. With
-		BufferGeometry, all of this data is stored in buffers associated with individual attributes.
-		This means that to get the position data associated with a vertex (for instance), you must call
-		[page:.getAttribute] to access the 'position' [page:BufferAttribute attribute], then access the individual
-		x, y, and z coordinates of the position.
-		</p>
-		<p>
-		The following attributes are set by various members of this class:
-		</p>
-		<h3>[page:BufferAttribute position] (itemSize: 3)</h3>
-		<p>
-		Stores the x, y, and z coordinates of each vertex in this geometry. Set by [page:.fromGeometry]().
-		</p>
-
-		<h3>[page:BufferAttribute normal] (itemSize: 3)</h3>
-		<p>
-		Stores the x, y, and z components of the vertex normal vector of each vertex in this geometry.
-		Set by [page:.fromGeometry]().
-		</p>
-
-		<h3>[page:BufferAttribute color] (itemSize: 3)</h3>
-		<p>
-		Stores the red, green, and blue channels of vertex color of each vertex in this geometry.
-		Set by [page:.fromGeometry]().
-		</p>
-
-		<p>
-		In addition to the the built-in attributes, you can set your own custom attributes using the addAttribute method. With [page:Geometry], these attributes are set and stored on the [page:Material]. In BufferGeometry, the attributes are stored with the geometry itself. Note that you still need to set the attributes information on the material as well, but the value of each attribute is stored in the BufferGeometry.
-		</p>
-
-
 		<h2>Constructor</h2>
 		<h2>Constructor</h2>
 
 
 
 
@@ -327,7 +290,7 @@
 		<p>Sets the attributes for this BufferGeometry from an array of points.</p>
 		<p>Sets the attributes for this BufferGeometry from an array of points.</p>
 
 
 		<h3>[method:Object toJSON]()</h3>
 		<h3>[method:Object toJSON]()</h3>
-		<p>Returns a JSON object representation of the BufferGeometry.</p>
+		<p>Convert the buffer geometry to three.js [link:https://github.com/mrdoob/three.js/wiki/JSON-Object-Scene-format-4 JSON Object/Scene format].</p>
 
 
 		<h3>[method:BufferGeometry toNonIndexed]()</h3>
 		<h3>[method:BufferGeometry toNonIndexed]()</h3>
 		<p>Return a non-index version of an indexed BufferGeometry.</p>
 		<p>Return a non-index version of an indexed BufferGeometry.</p>

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

@@ -11,8 +11,8 @@
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
 		<p class="desc">
 		<p class="desc">
-		Object for keeping track of time. This uses <a href="https://developer.mozilla.org/en-US/docs/Web/API/Performance/now">performance.now()</a>
-		if it is available, otherwise it reverts to the less accurate <a href="https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Date/now">Date.now()</a>.
+		Object for keeping track of time. This uses [link:https://developer.mozilla.org/en-US/docs/Web/API/Performance/now performance.now]
+		if it is available, otherwise it reverts to the less accurate [link:https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Date/now Date.now].
 		</p>
 		</p>
 
 
 
 

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

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

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

@@ -52,7 +52,7 @@
 
 
 		<h3>[property:Boolean normalized]</h3>
 		<h3>[property:Boolean normalized]</h3>
 		<p>
 		<p>
-			Default is *true*.
+			Default is *false*.
 		</p>
 		</p>
 
 
 		<h3>[property:Boolean isInterleavedBufferAttribute]</h3>
 		<h3>[property:Boolean isInterleavedBufferAttribute]</h3>

+ 9 - 3
docs/api/en/core/Object3D.html

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

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

@@ -161,7 +161,8 @@
 			[page:Face3 face] – intersected face<br />
 			[page:Face3 face] – intersected face<br />
 			[page:Integer faceIndex] – index of the intersected face<br />
 			[page:Integer faceIndex] – index of the intersected face<br />
 			[page:Object3D object] – the intersected object<br />
 			[page:Object3D object] – the intersected object<br />
-			[page:Vector2 uv] - U,V coordinates at point of intersection
+			[page:Vector2 uv] - U,V coordinates at point of intersection<br />
+			[page:Vector2 uv2] - Second set of U,V coordinates at point of intersection
 		</p>
 		</p>
 		<p>
 		<p>
 		*Raycaster* delegates to the [page:Object3D.raycast raycast] method of the passed object, when evaluating whether the ray intersects the object or not. This allows [page:Mesh meshes] to respond differently to ray casting than [page:Line lines] and [page:Points pointclouds].
 		*Raycaster* delegates to the [page:Object3D.raycast raycast] method of the passed object, when evaluating whether the ray intersects the object or not. This allows [page:Mesh meshes] to respond differently to ray casting than [page:Line lines] and [page:Points pointclouds].

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

@@ -31,7 +31,8 @@
 
 
 		<h2>Constructor</h2>
 		<h2>Constructor</h2>
 
 
-		All of the above are called in the same way.
+		<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 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. It will be converted to the Type specified.<br /><br />

+ 1 - 1
docs/api/en/extras/ShapeUtils.html

@@ -22,7 +22,7 @@
 
 
 		<h3>[method:Number area]( contour )</h3>
 		<h3>[method:Number area]( contour )</h3>
 		<p>
 		<p>
-		contour -- 2D polygon.<br /><br />
+		contour -- 2D polygon. An array of THREE.Vector2()<br /><br />
 
 
 		Calculate area of a ( 2D ) contour polygon.<br /><br />
 		Calculate area of a ( 2D ) contour polygon.<br /><br />
 
 

+ 1 - 1
docs/api/en/extras/core/Path.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:CurvePath] &rarr;
+		[page:Curve] &rarr; [page:CurvePath] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 

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

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

+ 1 - 1
docs/api/en/extras/core/ShapePath.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:CurvePath] &rarr;
+		[page:Curve] &rarr; [page:CurvePath] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 

+ 1 - 1
docs/api/en/extras/curves/ArcCurve.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:EllipseCurve] &rarr;
+		[page:Curve] &rarr; [page:EllipseCurve] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 

+ 5 - 3
docs/api/en/geometries/BoxBufferGeometry.html

@@ -53,7 +53,8 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
-	
+		<p>See the base [page:BufferGeometry] class for common properties.</p>
+
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
@@ -67,8 +68,9 @@
 		cube.geometry.parameters.widthSegments; // === undefined.
 		cube.geometry.parameters.widthSegments; // === undefined.
 		</code>
 		</code>
 		</p>
 		</p>
-		
-		<h2>Methods</h2>	
+
+		<h2>Methods</h2>
+		<p>See the base [page:BufferGeometry] class for common methods.</p>
 
 
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 

+ 6 - 2
docs/api/en/geometries/BoxGeometry.html

@@ -13,7 +13,7 @@
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
 		<p class="desc">BoxGeometry is a geometry class for a [link:https://en.wikipedia.org/wiki/Cuboid rectangular cuboid] with a given 'width', 'height', and 'depth'. On creation, the cuboid is centred on the origin, with each edge parallel to one of the axes.</p>
 		<p class="desc">BoxGeometry is a geometry class for a [link:https://en.wikipedia.org/wiki/Cuboid rectangular cuboid] with a given 'width', 'height', and 'depth'. On creation, the cuboid is centred on the origin, with each edge parallel to one of the axes.</p>
-		
+
 		<iframe id="scene" src="scenes/geometry-browser.html#BoxGeometry"></iframe>
 		<iframe id="scene" src="scenes/geometry-browser.html#BoxGeometry"></iframe>
 
 
 		<script>
 		<script>
@@ -53,6 +53,7 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:Geometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
@@ -66,7 +67,10 @@
 		cube.geometry.parameters.width; // === 1
 		cube.geometry.parameters.width; // === 1
 		cube.geometry.parameters.widthSegments; // === undefined.
 		cube.geometry.parameters.widthSegments; // === undefined.
 		</code>
 		</code>
- 		</p>
+		</p>
+
+		<h2>Methods</h2>
+		<p>See the base [page:Geometry] class for common methods.</p>
 
 
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 

+ 4 - 0
docs/api/en/geometries/CircleBufferGeometry.html

@@ -52,12 +52,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:BufferGeometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:BufferGeometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/CircleGeometry.js src/geometries/CircleGeometry.js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/CircleGeometry.js src/geometries/CircleGeometry.js]

+ 4 - 0
docs/api/en/geometries/CircleGeometry.html

@@ -53,12 +53,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:Geometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:Geometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 5 - 1
docs/api/en/geometries/ConeBufferGeometry.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:CylinderBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:CylinderBufferGeometry] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
@@ -54,12 +54,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:CylinderBufferGeometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:CylinderBufferGeometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/ConeGeometry.js src/geometries/ConeGeometry.js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/ConeGeometry.js src/geometries/ConeGeometry.js]

+ 5 - 1
docs/api/en/geometries/ConeGeometry.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:CylinderGeometry] &rarr;
+		[page:Geometry] &rarr; [page:CylinderGeometry] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
@@ -54,12 +54,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:CylinderGeometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:CylinderGeometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 4 - 0
docs/api/en/geometries/CylinderBufferGeometry.html

@@ -55,12 +55,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:BufferGeometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:BufferGeometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/CylinderGeometry.js src/geometries/CylinderGeometry.js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/CylinderGeometry.js src/geometries/CylinderGeometry.js]

+ 4 - 0
docs/api/en/geometries/CylinderGeometry.html

@@ -55,12 +55,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:Geometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:Geometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 5 - 1
docs/api/en/geometries/DodecahedronBufferGeometry.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:PolyhedronBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:PolyhedronBufferGeometry] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
@@ -41,12 +41,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:PolyhedronBufferGeometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:PolyhedronBufferGeometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/DodecahedronGeometry.js src/geometries/DodecahedronGeometry.js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/DodecahedronGeometry.js src/geometries/DodecahedronGeometry.js]

+ 4 - 0
docs/api/en/geometries/DodecahedronGeometry.html

@@ -41,12 +41,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:Geometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:Geometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 4 - 0
docs/api/en/geometries/EdgesGeometry.html

@@ -34,12 +34,16 @@ scene.add( line );
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:BufferGeometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:BufferGeometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 7 - 1
docs/api/en/geometries/ExtrudeBufferGeometry.html

@@ -51,6 +51,7 @@
 			bevelEnabled: true,
 			bevelEnabled: true,
 			bevelThickness: 1,
 			bevelThickness: 1,
 			bevelSize: 1,
 			bevelSize: 1,
+			bevelOffset: 0,
 			bevelSegments: 1
 			bevelSegments: 1
 		};
 		};
 
 
@@ -76,8 +77,9 @@
 				<li>bevelEnabled — bool. Apply beveling to the shape. Default is true.</li>
 				<li>bevelEnabled — bool. Apply beveling to the shape. Default is true.</li>
 				<li>bevelThickness — float. How deep into the original shape the bevel goes. Default is 6.</li>
 				<li>bevelThickness — float. How deep into the original shape the bevel goes. Default is 6.</li>
 				<li>bevelSize — float. Distance from the shape outline that the bevel extends. Default is bevelThickness - 2.</li>
 				<li>bevelSize — float. Distance from the shape outline that the bevel extends. Default is bevelThickness - 2.</li>
+				<li>bevelOffset — float. Distance from the shape outline that the bevel starts. Default is 0.</li>
 				<li>bevelSegments — int. Number of bevel layers. Default is 3.</li>
 				<li>bevelSegments — int. Number of bevel layers. Default is 3.</li>
-				<li>extrudePath — THREE.CurvePath. A 3D spline path along which the shape should be extruded.</li>
+				<li>extrudePath — THREE.Curve. A 3D spline path along which the shape should be extruded.</li>
 				<li>UVGenerator —  Object. object that provides UV generator functions</li>
 				<li>UVGenerator —  Object. object that provides UV generator functions</li>
 			</ul>
 			</ul>
 
 
@@ -93,12 +95,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:BufferGeometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:BufferGeometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/ExtrudeGeometry.js src/geometries/ExtrudeGeometry.js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/ExtrudeGeometry.js src/geometries/ExtrudeGeometry.js]

+ 7 - 1
docs/api/en/geometries/ExtrudeGeometry.html

@@ -51,6 +51,7 @@
 			bevelEnabled: true,
 			bevelEnabled: true,
 			bevelThickness: 1,
 			bevelThickness: 1,
 			bevelSize: 1,
 			bevelSize: 1,
+			bevelOffset: 0,
 			bevelSegments: 1
 			bevelSegments: 1
 		};
 		};
 
 
@@ -76,8 +77,9 @@
 				<li>bevelEnabled — bool. Apply beveling to the shape. Default is true.</li>
 				<li>bevelEnabled — bool. Apply beveling to the shape. Default is true.</li>
 				<li>bevelThickness — float. How deep into the original shape the bevel goes. Default is 6.</li>
 				<li>bevelThickness — float. How deep into the original shape the bevel goes. Default is 6.</li>
 				<li>bevelSize — float. Distance from the shape outline that the bevel extends. Default is bevelThickness - 2.</li>
 				<li>bevelSize — float. Distance from the shape outline that the bevel extends. Default is bevelThickness - 2.</li>
+				<li>bevelOffset — float. Distance from the shape outline that the bevel starts. Default is 0.</li>
 				<li>bevelSegments — int. Number of bevel layers. Default is 3.</li>
 				<li>bevelSegments — int. Number of bevel layers. Default is 3.</li>
-				<li>extrudePath — THREE.CurvePath. A 3D spline path along which the shape should be extruded.</li>
+				<li>extrudePath — THREE.Curve. A 3D spline path along which the shape should be extruded.</li>
 				<li>UVGenerator —  Object. object that provides UV generator functions</li>
 				<li>UVGenerator —  Object. object that provides UV generator functions</li>
 			</ul>
 			</ul>
 
 
@@ -93,12 +95,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:Geometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:Geometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 5 - 1
docs/api/en/geometries/IcosahedronBufferGeometry.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:PolyhedronBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:PolyhedronBufferGeometry] &rarr;
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
 		<p class="desc">A class for generating an icosahedron geometry.</p>
 		<p class="desc">A class for generating an icosahedron geometry.</p>
@@ -40,12 +40,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:PolyhedronBufferGeometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:PolyhedronBufferGeometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/IcosahedronGeometry.js src/geometries/IcosahedronGeometry.js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/IcosahedronGeometry.js src/geometries/IcosahedronGeometry.js]

+ 4 - 0
docs/api/en/geometries/IcosahedronGeometry.html

@@ -41,12 +41,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:Geometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:Geometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 4 - 0
docs/api/en/geometries/LatheBufferGeometry.html

@@ -59,12 +59,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:BufferGeometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:BufferGeometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/LatheGeometry.js src/geometries/LatheGeometry.js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/LatheGeometry.js src/geometries/LatheGeometry.js]

+ 4 - 0
docs/api/en/geometries/LatheGeometry.html

@@ -59,12 +59,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:Geometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:Geometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 5 - 1
docs/api/en/geometries/OctahedronBufferGeometry.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:PolyhedronBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:PolyhedronBufferGeometry] &rarr;
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
 		<p class="desc">A class for generating an octahedron geometry.</p>
 		<p class="desc">A class for generating an octahedron geometry.</p>
@@ -40,12 +40,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:PolyhedronBufferGeometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:PolyhedronBufferGeometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/OctahedronGeometry.js src/geometries/OctahedronGeometry.js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/OctahedronGeometry.js src/geometries/OctahedronGeometry.js]

+ 4 - 0
docs/api/en/geometries/OctahedronGeometry.html

@@ -41,12 +41,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:Geometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:Geometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 3 - 0
docs/api/en/geometries/ParametricBufferGeometry.html

@@ -53,12 +53,15 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:BufferGeometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:BufferGeometry] class for common methods.</p>
 
 
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 

+ 3 - 0
docs/api/en/geometries/ParametricGeometry.html

@@ -54,12 +54,15 @@
 
 
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:Geometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:Geometry] class for common methods.</p>
 
 
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 

+ 4 - 0
docs/api/en/geometries/PlaneBufferGeometry.html

@@ -51,12 +51,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:BufferGeometry] class for common properties.</p>
 
 
 		<h3>.parameters</h3>
 		<h3>.parameters</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:BufferGeometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/PlaneGeometry.js src/geometries/PlaneGeometry.js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/PlaneGeometry.js src/geometries/PlaneGeometry.js]

+ 4 - 0
docs/api/en/geometries/PlaneGeometry.html

@@ -51,12 +51,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:Geometry] class for common properties.</p>
 
 
 		<h3>.parameters</h3>
 		<h3>.parameters</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:Geometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 3 - 0
docs/api/en/geometries/PolyhedronBufferGeometry.html

@@ -50,12 +50,15 @@ var geometry = new THREE.PolyhedronBufferGeometry( verticesOfCube, indicesOfFace
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:BufferGeometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:BufferGeometry] class for common methods.</p>
 
 
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 

+ 3 - 0
docs/api/en/geometries/PolyhedronGeometry.html

@@ -48,12 +48,15 @@ var geometry = new THREE.PolyhedronGeometry( verticesOfCube, indicesOfFaces, 6,
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:Geometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:Geometry] class for common methods.</p>
 
 
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 

+ 3 - 0
docs/api/en/geometries/RingBufferGeometry.html

@@ -54,12 +54,15 @@
 
 
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:BufferGeometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:BufferGeometry] class for common methods.</p>
 
 
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 

+ 4 - 1
docs/api/en/geometries/RingGeometry.html

@@ -53,12 +53,15 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:Geometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
-		
+
+		<h2>Methods</h2>
+		<p>See the base [page:Geometry] class for common methods.</p>
 
 
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 

+ 4 - 0
docs/api/en/geometries/ShapeBufferGeometry.html

@@ -65,12 +65,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:BufferGeometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:BufferGeometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/ShapeGeometry.js src/geometries/ShapeGeometry.js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/ShapeGeometry.js src/geometries/ShapeGeometry.js]

+ 3 - 0
docs/api/en/geometries/ShapeGeometry.html

@@ -65,12 +65,15 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:Geometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:Geometry] class for common methods.</p>
 
 
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 

+ 4 - 0
docs/api/en/geometries/SphereBufferGeometry.html

@@ -59,12 +59,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:BufferGeometry] class for common properties.</p>
 
 
 		<h3>.parameters</h3>
 		<h3>.parameters</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:BufferGeometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/SphereGeometry.js src/geometries/SphereGeometry.js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/SphereGeometry.js src/geometries/SphereGeometry.js]

+ 4 - 0
docs/api/en/geometries/SphereGeometry.html

@@ -59,12 +59,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:Geometry] class for common properties.</p>
 
 
 		<h3>.parameters</h3>
 		<h3>.parameters</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:Geometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 4 - 2
docs/api/en/geometries/TetrahedronBufferGeometry.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:PolyhedronBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:PolyhedronBufferGeometry] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
@@ -41,13 +41,15 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:PolyhedronBufferGeometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
-
+		<h2>Methods</h2>
+		<p>See the base [page:PolyhedronBufferGeometry] class for common methods.</p>
 
 
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 

+ 4 - 0
docs/api/en/geometries/TetrahedronGeometry.html

@@ -41,12 +41,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:Geometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:Geometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 7 - 1
docs/api/en/geometries/TextBufferGeometry.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:ExtrudeBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:ExtrudeBufferGeometry] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
@@ -55,6 +55,7 @@
 				bevelEnabled: true,
 				bevelEnabled: true,
 				bevelThickness: 10,
 				bevelThickness: 10,
 				bevelSize: 8,
 				bevelSize: 8,
+				bevelOffset: 0,
 				bevelSegments: 5
 				bevelSegments: 5
 			} );
 			} );
 		} );
 		} );
@@ -74,6 +75,7 @@
 			<li>bevelEnabled — Boolean. Turn on bevel. Default is False.</li>
 			<li>bevelEnabled — Boolean. Turn on bevel. Default is False.</li>
 			<li>bevelThickness — Float. How deep into text bevel goes. Default is 10.</li>
 			<li>bevelThickness — Float. How deep into text bevel goes. Default is 10.</li>
 			<li>bevelSize — Float. How far from text outline is bevel. Default is 8.</li>
 			<li>bevelSize — Float. How far from text outline is bevel. Default is 8.</li>
+			<li>bevelOffset — Float. How far from text outline bevel starts. Default is 0.</li>
 			<li>bevelSegments — Integer. Number of bevel segments. Default is 3.</li>
 			<li>bevelSegments — Integer. Number of bevel segments. Default is 3.</li>
 		</ul>
 		</ul>
 		</p>
 		</p>
@@ -154,12 +156,16 @@
 		</table>
 		</table>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:ExtrudeBufferGeometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:ExtrudeBufferGeometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/TextGeometry.js src/geometries/TextGeometry.js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/TextGeometry.js src/geometries/TextGeometry.js]

+ 7 - 1
docs/api/en/geometries/TextGeometry.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:ExtrudeGeometry] &rarr;
+		[page:Geometry] &rarr; [page:ExtrudeGeometry] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
@@ -55,6 +55,7 @@
 				bevelEnabled: true,
 				bevelEnabled: true,
 				bevelThickness: 10,
 				bevelThickness: 10,
 				bevelSize: 8,
 				bevelSize: 8,
+				bevelOffset: 0,
 				bevelSegments: 5
 				bevelSegments: 5
 			} );
 			} );
 		} );
 		} );
@@ -74,6 +75,7 @@
 			<li>bevelEnabled — Boolean. Turn on bevel. Default is False.</li>
 			<li>bevelEnabled — Boolean. Turn on bevel. Default is False.</li>
 			<li>bevelThickness — Float. How deep into text bevel goes. Default is 10.</li>
 			<li>bevelThickness — Float. How deep into text bevel goes. Default is 10.</li>
 			<li>bevelSize — Float. How far from text outline is bevel. Default is 8.</li>
 			<li>bevelSize — Float. How far from text outline is bevel. Default is 8.</li>
+			<li>bevelOffset — Float. How far from text outline bevel starts. Default is 0.</li>
 			<li>bevelSegments — Integer. Number of bevel segments. Default is 3.</li>
 			<li>bevelSegments — Integer. Number of bevel segments. Default is 3.</li>
 		</ul>
 		</ul>
 		</p>
 		</p>
@@ -154,12 +156,16 @@
 		</table>
 		</table>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:ExtrudeGeometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:ExtrudeGeometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 4 - 0
docs/api/en/geometries/TorusBufferGeometry.html

@@ -52,12 +52,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:BufferGeometry] class for common properties.</p>
 
 
 		<h3>.parameters</h3>
 		<h3>.parameters</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:BufferGeometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/TorusGeometry.js src/geometries/TorusGeometry.js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/TorusGeometry.js src/geometries/TorusGeometry.js]

+ 4 - 0
docs/api/en/geometries/TorusGeometry.html

@@ -52,12 +52,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:Geometry] class for common properties.</p>
 
 
 		<h3>.parameters</h3>
 		<h3>.parameters</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:Geometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 4 - 0
docs/api/en/geometries/TorusKnotBufferGeometry.html

@@ -55,12 +55,16 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:BufferGeometry] class for common properties.</p>
 
 
 		<h3>.parameters</h3>
 		<h3>.parameters</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:BufferGeometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/TorusKnotGeometry.js src/geometries/TorusKnotGeometry.js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/TorusKnotGeometry.js src/geometries/TorusKnotGeometry.js]

+ 5 - 0
docs/api/en/geometries/TorusKnotGeometry.html

@@ -55,12 +55,17 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:Geometry] class for common properties.</p>
 
 
 		<h3>.parameters</h3>
 		<h3>.parameters</h3>
 		<p>
 		<p>
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		An object with a property for each of the constructor parameters. Any modification after instantiation does not change the geometry.
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:Geometry] class for common methods.</p>
+
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 4 - 0
docs/api/en/geometries/TubeBufferGeometry.html

@@ -77,6 +77,7 @@
 
 
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:BufferGeometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
@@ -98,6 +99,9 @@
 		An array of [page:Vector3] binormals
 		An array of [page:Vector3] binormals
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:BufferGeometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/TubeGeometry.js src/geometries/TubeGeometry.js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/TubeGeometry.js src/geometries/TubeGeometry.js]

+ 4 - 0
docs/api/en/geometries/TubeGeometry.html

@@ -77,6 +77,7 @@
 
 
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
+		<p>See the base [page:Geometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
@@ -98,6 +99,9 @@
 		An array of [page:Vector3] binormals
 		An array of [page:Vector3] binormals
 		</p>
 		</p>
 
 
+		<h2>Methods</h2>
+		<p>See the base [page:Geometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

+ 6 - 0
docs/api/en/geometries/WireframeGeometry.html

@@ -56,6 +56,12 @@ scene.add( line );
 		geometry — any geometry object.
 		geometry — any geometry object.
 		</p>
 		</p>
 
 
+		<h2>Properties</h2>
+		<p>See the base [page:BufferGeometry] class for common properties.</p>
+
+		<h2>Methods</h2>
+		<p>See the base [page:BufferGeometry] class for common methods.</p>
+
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
 		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

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

@@ -68,9 +68,9 @@
 
 
 
 
 
 
-		<h3>[method:null setColor]([param:Number hex])</h3>
+		<h3>[method:null setColor]([param:Color color])</h3>
 		<p>
 		<p>
-		hex -- The hexadecimal value of the color.<br /><br />
+		color -- The desired color.<br /><br />
 
 
 		Sets the color of the arrowHelper.
 		Sets the color of the arrowHelper.
 		</p>
 		</p>

+ 1 - 1
docs/api/en/helpers/AxesHelper.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:LineSegments] &rarr;
+		[page:Object3D] &rarr; [page:Line] &rarr; [page:LineSegments] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 

+ 1 - 1
docs/api/en/helpers/Box3Helper.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:LineSegments] &rarr;
+		[page:Object3D] &rarr; [page:Line] &rarr; [page:LineSegments] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 

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

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

+ 1 - 1
docs/api/en/helpers/CameraHelper.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:LineSegments] &rarr;
+		[page:Object3D] &rarr; [page:Line] &rarr; [page:LineSegments] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 

+ 1 - 1
docs/api/en/helpers/FaceNormalsHelper.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:LineSegments] &rarr;
+		[page:Object3D] &rarr; [page:Line] &rarr; [page:LineSegments] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 

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

@@ -8,8 +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:Line] &rarr;
-
+		[page:Object3D] &rarr; [page:Line] &rarr;
+		
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
 		<p class="desc">The GridHelper is an object to define grids. Grids are two-dimensional arrays of lines.</p>
 		<p class="desc">The GridHelper is an object to define grids. Grids are two-dimensional arrays of lines.</p>

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

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

+ 1 - 1
docs/api/en/helpers/PointLightHelper.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:Mesh] &rarr;
+		[page:Object3D] &rarr; [page:Mesh] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 

+ 1 - 1
docs/api/en/helpers/PolarGridHelper.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:Line] &rarr;
+		[page:Object3D] &rarr; [page:Line] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 

+ 1 - 1
docs/api/en/helpers/VertexNormalsHelper.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:Line] &rarr;
+		[page:Object3D] &rarr; [page:Line] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 

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

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

+ 1 - 1
docs/api/en/lights/RectAreaLight.html

@@ -20,7 +20,7 @@
 			<ul>
 			<ul>
 				<li>There is no shadow support.</li>
 				<li>There is no shadow support.</li>
 				<li>Only [page:MeshStandardMaterial MeshStandardMaterial] and [page:MeshPhysicalMaterial MeshPhysicalMaterial] are supported.</li>
 				<li>Only [page:MeshStandardMaterial MeshStandardMaterial] and [page:MeshPhysicalMaterial MeshPhysicalMaterial] are supported.</li>
-				<li>You have to include [link:https://threejs.org/examples/js/lights/RectAreaLightUniformsLib.js RectAreaLightUniformsLib] into your scene.</li>
+				<li>You have to include [link:https://threejs.org/examples/js/lights/RectAreaLightUniformsLib.js RectAreaLightUniformsLib] into your scene and call *init()*.</li>
 			</ul>
 			</ul>
 		</p>
 		</p>
 
 

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

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

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

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

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

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

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

@@ -62,6 +62,30 @@
 		Creates an array of [page:Material] based on the array of parameters m. The index of the parameters decide the correct index of the materials.
 		Creates an array of [page:Material] based on the array of parameters m. The index of the parameters decide the correct index of the materials.
 		</p>
 		</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>
 
 

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

@@ -123,6 +123,41 @@
 		When drawing 2D overlays it can be useful to disable the depth writing in order to layer several things together without creating z-index artifacts.
 		When drawing 2D overlays it can be useful to disable the depth writing in order to layer several things together without creating z-index artifacts.
 		</p>
 		</p>
 
 
+		<h3>[property:Boolean stencilWrite]</h3>
+		<p>
+		Whether rendering this material has any effect on the stencil buffer. Default is *false*.
+		</p>
+
+		<h3>[property:Boolean stencilFunc]</h3>
+		<p>
+		The stencil comparison function to use. Default is [page:Materials AlwaysStencilFunc]. See stencil function [page:Materials constants] for all possible values.
+		</p>
+
+		<h3>[property:Integer stencilRef]</h3>
+		<p>
+		The value to use when performing stencil comparisons or stencil operations. Default is *0*.
+		</p>
+
+		<h3>[property:Boolean stencilMask]</h3>
+		<p>
+		The bit mask to use when comparing against or writing to the stencil buffer. Default is *0xFF*.
+		</p>
+
+		<h3>[property:Integer stencilFail]</h3>
+		<p>
+		Which stencil operation to perform when the comparison function returns false. Default is [page:Materials KeepStencilOp]. See the stencil operations [page:Materials constants] for all possible values.
+		</p>
+
+		<h3>[property:Boolean stencilZFail]</h3>
+		<p>
+		Which stencil operation to perform when the comparison function returns true but the depth test fails. Default is [page:Materials KeepStencilOp]. See the stencil operations [page:Materials constants] for all possible values.
+		</p>
+
+		<h3>[property:Boolean stencilZPass]</h3>
+		<p>
+		Which stencil operation to perform when the comparison function returns true and the depth test passes. Default is [page:Materials KeepStencilOp]. See the stencil operations [page:Materials constants] for all possible values.
+		</p>
+
 		<h3>[property:Boolean flatShading]</h3>
 		<h3>[property:Boolean flatShading]</h3>
 		<p>
 		<p>
 		Define whether the material is rendered with flat shading. Default is false.
 		Define whether the material is rendered with flat shading. Default is false.
@@ -295,7 +330,7 @@
 		These needs to be disposed by [page:Texture Texture].
 		These needs to be disposed by [page:Texture Texture].
 		</p>
 		</p>
 
 
-		<h3>[method:null onBeforeCompile]( [param:Object shader], [param:WebGLRenderer renderer] )</h3>
+		<h3>[method:null onBeforeCompile]( [param:Shader shader], [param:WebGLRenderer renderer] )</h3>
 		<p>
 		<p>
 		An optional callback that is executed immediately before the shader program is compiled.
 		An optional callback that is executed immediately before the shader program is compiled.
 		This function is called with the shader source code as a parameter. Useful for the modification of built-in materials.
 		This function is called with the shader source code as a parameter. Useful for the modification of built-in materials.
@@ -307,10 +342,10 @@
 		Sets the properties based on the *values*.
 		Sets the properties based on the *values*.
 		</p>
 		</p>
 
 
-		<h3>[method:null toJSON]( [param:object meta] )</h3>
+		<h3>[method:Object toJSON]( [param:object meta] )</h3>
 		<p>
 		<p>
 		meta -- object containing metadata such as textures or images for the material.<br />
 		meta -- object containing metadata such as textures or images for the material.<br />
-		Convert the material to three.js JSON format.
+		Convert the material to three.js [link:https://github.com/mrdoob/three.js/wiki/JSON-Object-Scene-format-4 JSON Object/Scene format].
 		</p>
 		</p>
 
 
 		<h2>Source</h2>
 		<h2>Source</h2>

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

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

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

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

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

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

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

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

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

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

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

@@ -378,13 +378,12 @@ this.extensions = {
 
 
 		<h3>[property:Boolean morphTargets]</h3>
 		<h3>[property:Boolean morphTargets]</h3>
 		<p>
 		<p>
-		Defines whether the material uses morphTargets; true morphTarget attributes to this shader
+		When set to true, morph target attributes are available in the vertex shader. Default is *false*.
 		</p>
 		</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 attributes from the [page:Geometry]
-			to the shader. Default is *false*.
+		When set to true, morph normal attributes are available in the vertex shader. Default is *false*.
 		</p>
 		</p>
 
 
 
 

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

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

+ 4 - 29
docs/api/en/math/Euler.html

@@ -58,29 +58,21 @@
 			to the <em>local</em> coordinate system. That is, for order 'XYZ', the rotation is first around the local-X
 			to the <em>local</em> coordinate system. That is, for order 'XYZ', the rotation is first around the local-X
 			axis (which is the same as the world-X axis), then around local-Y (which may now be different from the
 			axis (which is the same as the world-X axis), then around local-Y (which may now be different from the
 			world Y-axis), then local-Z (which may be different from the world Z-axis).<br /><br />
 			world Y-axis), then local-Z (which may be different from the world Z-axis).<br /><br />
-
-			If the order is changed, [page:.onChangeCallback onChangeCallback] will be called.
 		</p>
 		</p>
 
 
 		<h3>[property:Float x]</h3>
 		<h3>[property:Float x]</h3>
 		<p>
 		<p>
 			The current value of the x component.<br /><br />
 			The current value of the x component.<br /><br />
-
-			If this is changed, [page:.onChangeCallback onChangeCallback] will be called.
 		</p>
 		</p>
 
 
 		<h3>[property:Float y]</h3>
 		<h3>[property:Float y]</h3>
 		<p>
 		<p>
 			The current value of the y component.<br /><br />
 			The current value of the y component.<br /><br />
-
-			If this is changed, [page:.onChangeCallback onChangeCallback] will be called.
 		</p>
 		</p>
 
 
 		<h3>[property:Float z]</h3>
 		<h3>[property:Float z]</h3>
 		<p>
 		<p>
 			The current value of the z component.<br /><br />
 			The current value of the z component.<br /><br />
-
-			If this is changed, [page:.onChangeCallback onChangeCallback] will be called.
 		</p>
 		</p>
 
 
 		<h2>Methods</h2>
 		<h2>Methods</h2>
@@ -104,18 +96,6 @@
 		Optionally assigns this euler's [page:.order order] to array[3].
 		Optionally assigns this euler's [page:.order order] to array[3].
 		</p>
 		</p>
 
 
-		<h3>[method:Euler onChange]( [param:Function onChangeCallback] )</h3>
-		<p>
-			[page:Function onChangeCallback] - set the value of the onChangeCallback() function.
-		</p>
-
-		<h3>[method:Euler onChangeCallback](  )</h3>
-		<p>
-			By default this is an empty function, however it can be set via [page:.onChange onChange]().<br />
-			It gets called after changing the [page:.x x], [page:.y y], [page:.z z] or [page:.order order] properties,
-			and also after calling most setter functions (see those for details).
-		</p>
-
 		<h3>[method:Euler reorder]( [param:String newOrder] )</h3>
 		<h3>[method:Euler reorder]( [param:String newOrder] )</h3>
 		<p>
 		<p>
 		Resets the euler angle with a new order by creating a quaternion from this euler angle
 		Resets the euler angle with a new order by creating a quaternion from this euler angle
@@ -131,27 +111,23 @@
 			[page:.z z] - the angle of the z axis in radians.<br />
 			[page:.z z] - the angle of the z axis in radians.<br />
 			[page:.order order] - (optional) a string representing the order that the rotations are applied.<br /><br />
 			[page:.order order] - (optional) a string representing the order that the rotations are applied.<br /><br />
 
 
-			Sets the angles of this euler transform and optionally the [page:.order order] and then call [page:.onChangeCallback onChangeCallback]().
+			Sets the angles of this euler transform and optionally the [page:.order order].
 		</p>
 		</p>
 
 
-		<h3>[method:Euler setFromRotationMatrix]( [param:Matrix4 m], [param:String order], [param:Boolean update] )</h3>
+		<h3>[method:Euler setFromRotationMatrix]( [param:Matrix4 m], [param:String order] )</h3>
 		<p>
 		<p>
 		[page:Matrix4 m] - a [page:Matrix4] of which the upper 3x3 of matrix is a pure
 		[page:Matrix4 m] - a [page:Matrix4] of which the upper 3x3 of matrix is a pure
 		[link:https://en.wikipedia.org/wiki/Rotation_matrix rotation matrix] (i.e. unscaled).<br />
 		[link:https://en.wikipedia.org/wiki/Rotation_matrix rotation matrix] (i.e. unscaled).<br />
 		[page:.order order] - (optional) a string representing the order that the rotations are applied.<br />
 		[page:.order order] - (optional) a string representing the order that the rotations are applied.<br />
-		[page:Boolean update] - (optional) whether to call [page:.onChangeCallback onChangeCallback]() after applying
-		the matrix.<br /><br />
 
 
 		Sets the angles of this euler transform from a pure rotation matrix based on the orientation
 		Sets the angles of this euler transform from a pure rotation matrix based on the orientation
 		specified by order.
 		specified by order.
 		</p>
 		</p>
 
 
-		<h3>[method:Euler setFromQuaternion]( [param:Quaternion q], [param:String order], [param:Boolean update] )</h3>
+		<h3>[method:Euler setFromQuaternion]( [param:Quaternion q], [param:String order] )</h3>
 		<p>
 		<p>
 		[page:Quaternion q] - a normalized quaternion.<br />
 		[page:Quaternion q] - a normalized quaternion.<br />
 		[page:.order order] - (optional) a string representing the order that the rotations are applied.<br />
 		[page:.order order] - (optional) a string representing the order that the rotations are applied.<br />
-		[page:Boolean update] - (optional) whether to call [page:.onChangeCallback onChangeCallback]() after applying
-		the matrix.<br /><br />
 
 
 		Sets the angles of this euler transform from a normalized quaternion based on the orientation
 		Sets the angles of this euler transform from a normalized quaternion based on the orientation
 		specified by [page:.order order].
 		specified by [page:.order order].
@@ -163,8 +139,7 @@
 		[page:Vector3 vector] - [page:Vector3].<br />
 		[page:Vector3 vector] - [page:Vector3].<br />
 		[page:.order order] - (optional) a string representing the order that the rotations are applied.<br /><br />
 		[page:.order order] - (optional) a string representing the order that the rotations are applied.<br /><br />
 
 
-		Set the [page:.x x], [page:.y y] and [page:.z z], and optionally update the [page:.order order]. [page:.onChangeCallback onChangeCallback]()
-		is called after these changes are made.
+		Set the [page:.x x], [page:.y y] and [page:.z z], and optionally update the [page:.order order].
 		</p>
 		</p>
 
 
 
 

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

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

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

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

+ 8 - 32
docs/api/en/math/Quaternion.html

@@ -44,17 +44,20 @@
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
 
 
+		<h3>[property:Boolean isQuaternion]</h3>
+		<p>
+			Used to check whether this or derived classes are Quaternions. Default is *true*.<br /><br />
+
+			You should not change this, as it is used internally for optimisation.
+		</p>
+
 		<h3>[property:Float x]</h3>
 		<h3>[property:Float x]</h3>
-		<p>Changing this property will result in [page:.onChangeCallback onChangeCallback] being called.</p>
 
 
 		<h3>[property:Float y]</h3>
 		<h3>[property:Float y]</h3>
-		<p>Changing this property will result in [page:.onChangeCallback onChangeCallback] being called.</p>
 
 
 		<h3>[property:Float z]</h3>
 		<h3>[property:Float z]</h3>
-		<p>Changing this property will result in [page:.onChangeCallback onChangeCallback] being called.</p>
 
 
 		<h3>[property:Float w]</h3>
 		<h3>[property:Float w]</h3>
-		<p>Changing this property will result in [page:.onChangeCallback onChangeCallback] being called.</p>
 
 
 
 
 		<h2>Methods</h2>
 		<h2>Methods</h2>
@@ -108,8 +111,7 @@
 
 
 		<h3>[method:Quaternion inverse]()</h3>
 		<h3>[method:Quaternion inverse]()</h3>
 		<p>
 		<p>
-			Inverts this quaternion - calculate the [page:.conjugate conjugate] and then
-			[page:.normalize normalizes] the result.
+			Inverts this quaternion - calculates the [page:.conjugate conjugate]. The quaternion is assumed to have unit length.
 		</p>
 		</p>
 
 
 		<h3>[method:Float length]()</h3>
 		<h3>[method:Float length]()</h3>
@@ -140,32 +142,6 @@
 		Adapted from the method outlined [link:http://www.euclideanspace.com/maths/algebra/realNormedAlgebra/quaternions/code/index.htm here].
 		Adapted from the method outlined [link:http://www.euclideanspace.com/maths/algebra/realNormedAlgebra/quaternions/code/index.htm here].
 		</p>
 		</p>
 
 
-		<h3>[method:Quaternion onChange]( [param:Function onChangeCallback] )</h3>
-		<p>Sets the [page:.onChangeCallback onChangeCallback]() method.</p>
-
-		<h3>[method:Quaternion onChangeCallback]( )</h3>
-		<p>
-			This function is called whenever any of the following occurs:
-			<ul>
-				<li>
-					The [page:.x x], [page:.y y], [page:.z z] or
-				  [page:.w w] properties are changed.
-				</li>
-				<li>
-					The [page:.set set](), [page:.copy copy](), [page:.clone clone](),
-					[page:.setFromAxisAngle setFromAxisAngle](),  [page:.setFromRotationMatrix setFromRotationMatrix](),
-					[page:.conjugate conjugate](), [page:.normalize normalize](),
-					[page:.multiplyQuaternions multiplyQuaternions](), [page:.slerp slerp]() or [page:.fromArray fromArray]()
-					functions are called.
-				</li>
-				<li>
-					[page:.setFromEuler setFromEuler]() function is called with its *update* argument set to true.
-				</li>
-			</ul>
-			By default it is the empty function, however you can change it if needed using [page:.onChange onChange]( [page:Function onChangeCallback] ).
-		</p>
-
-
 		<h3>[method:Quaternion premultiply]( [param:Quaternion q] )</h3>
 		<h3>[method:Quaternion premultiply]( [param:Quaternion q] )</h3>
 		<p>Pre-multiplies this quaternion by [page:Quaternion q].</p>
 		<p>Pre-multiplies this quaternion by [page:Quaternion q].</p>
 
 

+ 4 - 4
docs/api/en/math/Vector2.html

@@ -232,20 +232,20 @@
 		<h3>[method:this lerp]( [param:Vector2 v], [param:Float alpha] )</h3>
 		<h3>[method:this lerp]( [param:Vector2 v], [param:Float alpha] )</h3>
 		<p>
 		<p>
 		[page:Vector2 v] - [page:Vector2] to interpolate towards.<br />
 		[page:Vector2 v] - [page:Vector2] to interpolate towards.<br />
-		alpha - interpolation factor in the closed interval [0, 1].<br /><br />
+		[page:Float alpha] - interpolation factor, typically in the closed interval [0, 1].<br /><br />
 
 
 		Linearly interpolates between this vector and [page:Vector2 v], where alpha is the
 		Linearly interpolates between this vector and [page:Vector2 v], where alpha is the
-		distance along the line - alpha = 0 will be this vector, and alpha = 1 will be [page:Vector2 v].
+		percent distance along the line - alpha = 0 will be this vector, and alpha = 1 will be [page:Vector2 v].
 		</p>
 		</p>
 
 
 		<h3>[method:this lerpVectors]( [param:Vector2 v1], [param:Vector2 v2], [param:Float alpha] )</h3>
 		<h3>[method:this lerpVectors]( [param:Vector2 v1], [param:Vector2 v2], [param:Float alpha] )</h3>
 		<p>
 		<p>
 		[page:Vector2 v1] - the starting [page:Vector2].<br />
 		[page:Vector2 v1] - the starting [page:Vector2].<br />
 		[page:Vector2 v2] - [page:Vector2] to interpolate towards.<br />
 		[page:Vector2 v2] - [page:Vector2] to interpolate towards.<br />
-		[page:Float alpha] - interpolation factor in the closed interval [0, 1].<br /><br />
+		[page:Float alpha] - interpolation factor, typically in the closed interval [0, 1].<br /><br />
 
 
 		Sets this vector to be the vector linearly interpolated between [page:Vector2 v1] and
 		Sets this vector to be the vector linearly interpolated between [page:Vector2 v1] and
-		[page:Vector2 v2] where alpha is the distance along the line connecting the two vectors
+		[page:Vector2 v2] where alpha is the percent distance along the line connecting the two vectors
 		- alpha = 0 will be [page:Vector2 v1], and alpha = 1 will be [page:Vector2 v2].
 		- alpha = 0 will be [page:Vector2 v1], and alpha = 1 will be [page:Vector2 v2].
 		</p>
 		</p>
 
 

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

@@ -258,20 +258,20 @@ var d = a.distanceTo( b );
 		<h3>[method:this lerp]( [param:Vector3 v], [param:Float alpha] )</h3>
 		<h3>[method:this lerp]( [param:Vector3 v], [param:Float alpha] )</h3>
 		<p>
 		<p>
 		[page:Vector3 v] - [page:Vector3] to interpolate towards.<br />
 		[page:Vector3 v] - [page:Vector3] to interpolate towards.<br />
-		alpha - interpolation factor in the closed interval [0, 1].<br /><br />
+		[page:Float alpha] - interpolation factor, typically in the closed interval [0, 1].<br /><br />
 
 
 		Linearly interpolate between this vector and [page:Vector3 v], where alpha is the
 		Linearly interpolate between this vector and [page:Vector3 v], where alpha is the
-		distance along the line - alpha = 0 will be this vector, and alpha = 1 will be [page:Vector3 v].
+		percent distance along the line - alpha = 0 will be this vector, and alpha = 1 will be [page:Vector3 v].
 		</p>
 		</p>
 
 
 		<h3>[method:this lerpVectors]( [param:Vector3 v1], [param:Vector3 v2], [param:Float alpha] )</h3>
 		<h3>[method:this lerpVectors]( [param:Vector3 v1], [param:Vector3 v2], [param:Float alpha] )</h3>
 		<p>
 		<p>
 		[page:Vector3 v1] - the starting [page:Vector3].<br />
 		[page:Vector3 v1] - the starting [page:Vector3].<br />
 		[page:Vector3 v2] - [page:Vector3] to interpolate towards.<br />
 		[page:Vector3 v2] - [page:Vector3] to interpolate towards.<br />
-		[page:Float alpha] - interpolation factor in the closed interval [0, 1].<br /><br />
+		[page:Float alpha] - interpolation factor, typically in the closed interval [0, 1].<br /><br />
 
 
 		Sets this vector to be the vector linearly interpolated between [page:Vector3 v1] and
 		Sets this vector to be the vector linearly interpolated between [page:Vector3 v1] and
-		[page:Vector3 v2] where alpha is the distance along the line connecting the two vectors
+		[page:Vector3 v2] where alpha is the percent distance along the line connecting the two vectors
 		- alpha = 0 will be [page:Vector3 v1], and alpha = 1 will be [page:Vector3 v2].
 		- alpha = 0 will be [page:Vector3 v1], and alpha = 1 will be [page:Vector3 v2].
 		</p>
 		</p>
 
 

+ 10 - 4
docs/api/en/math/Vector4.html

@@ -78,6 +78,12 @@ var d = a.dot( b );
 
 
 		<h3>[property:Float w]</h3>
 		<h3>[property:Float w]</h3>
 
 
+		<h3>[property:Float width]</h3>
+		<p>Alias for [page:.z z].</p>
+
+		<h3>[property:Float height]</h3>
+		<p>Alias for [page:.w w].</p>
+
 
 
 		<h2>Methods</h2>
 		<h2>Methods</h2>
 
 
@@ -205,20 +211,20 @@ var d = a.dot( b );
 		<h3>[method:this lerp]( [param:Vector4 v], [param:Float alpha] )</h3>
 		<h3>[method:this lerp]( [param:Vector4 v], [param:Float alpha] )</h3>
 		<p>
 		<p>
 		[page:Vector4 v] - [page:Vector4] to interpolate towards.<br />
 		[page:Vector4 v] - [page:Vector4] to interpolate towards.<br />
-		alpha - interpolation factor in the closed interval [0, 1].<br /><br />
+		[page:Float alpha] - interpolation factor, typically in the closed interval [0, 1].<br /><br />
 
 
 		Linearly interpolates between this vector and [page:Vector4 v], where alpha is the
 		Linearly interpolates between this vector and [page:Vector4 v], where alpha is the
-		distance along the line - alpha = 0 will be this vector, and alpha = 1 will be [page:Vector4 v].
+		percent distance along the line - alpha = 0 will be this vector, and alpha = 1 will be [page:Vector4 v].
 		</p>
 		</p>
 
 
 		<h3>[method:this lerpVectors]( [param:Vector4 v1], [param:Vector4 v2], [param:Float alpha] )</h3>
 		<h3>[method:this lerpVectors]( [param:Vector4 v1], [param:Vector4 v2], [param:Float alpha] )</h3>
 		<p>
 		<p>
 		[page:Vector4 v1] - the starting [page:Vector4].<br />
 		[page:Vector4 v1] - the starting [page:Vector4].<br />
 		[page:Vector4 v2] - [page:Vector4] to interpolate towards.<br />
 		[page:Vector4 v2] - [page:Vector4] to interpolate towards.<br />
-		[page:Float alpha] - interpolation factor in the closed interval [0, 1].<br /><br />
+		[page:Float alpha] - interpolation factor, typically in the closed interval [0, 1].<br /><br />
 
 
 		Sets this vector to be the vector linearly interpolated between [page:Vector4 v1] and
 		Sets this vector to be the vector linearly interpolated between [page:Vector4 v1] and
-		[page:Vector4 v2] where alpha is the distance along the line connecting the two vectors
+		[page:Vector4 v2] where alpha is the percent distance along the line connecting the two vectors
 		- alpha = 0 will be [page:Vector4 v1], and alpha = 1 will be [page:Vector4 v2].
 		- alpha = 0 will be [page:Vector4 v1], and alpha = 1 will be [page:Vector4 v2].
 		</p>
 		</p>
 
 

+ 10 - 11
docs/api/en/objects/LOD.html

@@ -43,13 +43,6 @@ for( var i = 0; i < 3; i++ ) {
 scene.add( lod );
 scene.add( lod );
 		</code>
 		</code>
 
 
-		<p>
-		Note that for the LOD to switch between the different detail levels, you will
-		have to call [page:.update update]( camera ) in your render loop. See the source code
-		for this example for details:
-		[example:webgl_lod WebGL / LOD]
-		</div>
-
 		<h2>Constructor</h2>
 		<h2>Constructor</h2>
 		<h3>[name]( )</h3>
 		<h3>[name]( )</h3>
 		<p>
 		<p>
@@ -60,6 +53,13 @@ scene.add( lod );
 		<h2>Properties</h2>
 		<h2>Properties</h2>
 		<p>See the base [page:Object3D] class for common properties.</p>
 		<p>See the base [page:Object3D] class for common properties.</p>
 
 
+		<h3>[property:boolean autoUpdate]</h3>
+		<p>
+		Whether the LOD object is updated automatically by the renderer per frame or not.
+		If set to false, you have to call [page:LOD.update]() in the render loop by yourself.
+		Default is true.
+		</p>
+
 		<h3>[property:array levels]</h3>
 		<h3>[property:array levels]</h3>
 		<p>
 		<p>
 		An array of [page:object level] objects<br /><br />
 		An array of [page:object level] objects<br /><br />
@@ -72,7 +72,7 @@ scene.add( lod );
 		<h2>Methods</h2>
 		<h2>Methods</h2>
 		<p>See the base [page:Object3D] class for common methods.</p>
 		<p>See the base [page:Object3D] class for common methods.</p>
 
 
-		<h3>[method:null addLevel]( [param:Object3D object], [param:Float distance] )</h3>
+		<h3>[method:this addLevel]( [param:Object3D object], [param:Float distance] )</h3>
 		<p>
 		<p>
 		[page:Object3D object] - The [page:Object3D] to display at this level.<br />
 		[page:Object3D object] - The [page:Object3D] to display at this level.<br />
 		[page:Float distance] - The distance at which to display this level of detail.<br /><br />
 		[page:Float distance] - The distance at which to display this level of detail.<br /><br />
@@ -100,7 +100,7 @@ scene.add( lod );
 
 
 
 
 
 
-		<h3>[method:null toJSON]( meta )</h3>
+		<h3>[method:Object toJSON]( meta )</h3>
 		<p>
 		<p>
 		Create a JSON structure with details of this LOD object.
 		Create a JSON structure with details of this LOD object.
 		</p>
 		</p>
@@ -108,8 +108,7 @@ scene.add( lod );
 		<h3>[method:null update]( [param:Camera camera] )</h3>
 		<h3>[method:null update]( [param:Camera camera] )</h3>
 		<p>
 		<p>
 			Set the visibility of each [page:levels level]'s [page:Object3D object] based on
 			Set the visibility of each [page:levels level]'s [page:Object3D object] based on
-			distance from the [page:Camera camera]. This needs to be called in the render loop
-			for levels of detail to be updated dynamically.
+			distance from the [page:Camera camera]. 
 		</p>
 		</p>
 
 
 		<h2>Source</h2>
 		<h2>Source</h2>

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