Browse Source

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

Luis Blanco 7 years ago
parent
commit
db0fab0c88
100 changed files with 4517 additions and 4778 deletions
  1. 28 28
      .github/CONTRIBUTING.md
  2. 1 1
      build/three.js
  3. 159 381
      build/three.min.js
  4. 1 1
      build/three.module.js
  5. 87 87
      docs/api/cameras/Camera.html
  6. 99 99
      docs/api/constants/Materials.html
  7. 355 357
      docs/api/core/BufferGeometry.html
  8. 100 100
      docs/api/core/EventDispatcher.html
  9. 134 134
      docs/api/core/Face3.html
  10. 1 5
      docs/api/core/Geometry.html
  11. 7 1
      docs/api/deprecated/DeprecatedList.html
  12. 1 1
      docs/api/extras/core/Curve.html
  13. 101 101
      docs/api/extras/core/Shape.html
  14. 1 1
      docs/api/extras/curves/ArcCurve.html
  15. 1 1
      docs/api/extras/curves/CubicBezierCurve.html
  16. 1 1
      docs/api/extras/curves/CubicBezierCurve3.html
  17. 1 1
      docs/api/extras/curves/EllipseCurve.html
  18. 1 1
      docs/api/extras/curves/LineCurve.html
  19. 1 1
      docs/api/extras/curves/LineCurve3.html
  20. 1 1
      docs/api/extras/curves/QuadraticBezierCurve.html
  21. 1 1
      docs/api/extras/curves/QuadraticBezierCurve3.html
  22. 72 72
      docs/api/extras/curves/SplineCurve.html
  23. 1 1
      docs/api/extras/objects/ImmediateRenderObject.html
  24. 1 1
      docs/api/geometries/CircleBufferGeometry.html
  25. 67 67
      docs/api/geometries/CylinderBufferGeometry.html
  26. 1 1
      docs/api/geometries/DodecahedronBufferGeometry.html
  27. 1 1
      docs/api/geometries/DodecahedronGeometry.html
  28. 1 1
      docs/api/geometries/IcosahedronBufferGeometry.html
  29. 1 1
      docs/api/geometries/IcosahedronGeometry.html
  30. 1 1
      docs/api/geometries/OctahedronBufferGeometry.html
  31. 1 1
      docs/api/geometries/OctahedronGeometry.html
  32. 1 1
      docs/api/geometries/ParametricBufferGeometry.html
  33. 1 1
      docs/api/geometries/ParametricGeometry.html
  34. 63 63
      docs/api/geometries/PlaneGeometry.html
  35. 1 1
      docs/api/geometries/PolyhedronBufferGeometry.html
  36. 1 1
      docs/api/geometries/PolyhedronGeometry.html
  37. 1 1
      docs/api/geometries/RingBufferGeometry.html
  38. 1 1
      docs/api/geometries/ShapeBufferGeometry.html
  39. 1 1
      docs/api/geometries/ShapeGeometry.html
  40. 1 1
      docs/api/geometries/SphereBufferGeometry.html
  41. 1 1
      docs/api/geometries/TetrahedronBufferGeometry.html
  42. 1 1
      docs/api/geometries/TetrahedronGeometry.html
  43. 160 160
      docs/api/geometries/TextBufferGeometry.html
  44. 160 160
      docs/api/geometries/TextGeometry.html
  45. 1 1
      docs/api/geometries/TorusBufferGeometry.html
  46. 1 1
      docs/api/geometries/TorusKnotBufferGeometry.html
  47. 105 105
      docs/api/geometries/TubeBufferGeometry.html
  48. 105 105
      docs/api/geometries/TubeGeometry.html
  49. 98 98
      docs/api/helpers/ArrowHelper.html
  50. 1 1
      docs/api/helpers/CameraHelper.html
  51. 80 80
      docs/api/helpers/FaceNormalsHelper.html
  52. 46 46
      docs/api/helpers/GridHelper.html
  53. 83 83
      docs/api/helpers/SpotLightHelper.html
  54. 79 79
      docs/api/helpers/VertexNormalsHelper.html
  55. 1 1
      docs/api/lights/AmbientLight.html
  56. 1 1
      docs/api/lights/HemisphereLight.html
  57. 79 79
      docs/api/lights/Light.html
  58. 119 119
      docs/api/lights/PointLight.html
  59. 191 191
      docs/api/lights/SpotLight.html
  60. 108 108
      docs/api/loaders/JSONLoader.html
  61. 1 1
      docs/api/loaders/Loader.html
  62. 1 1
      docs/api/loaders/LoaderUtils.html
  63. 232 232
      docs/api/loaders/ObjectLoader.html
  64. 109 109
      docs/api/materials/LineBasicMaterial.html
  65. 1 1
      docs/api/materials/RawShaderMaterial.html
  66. 23 0
      docs/api/materials/ShaderMaterial.html
  67. 1 1
      docs/api/materials/SpriteMaterial.html
  68. 2 2
      docs/api/math/Plane.html
  69. 1 1
      docs/api/math/Ray.html
  70. 5 0
      docs/api/objects/Line.html
  71. 110 110
      docs/api/objects/Skeleton.html
  72. 90 90
      docs/api/objects/Sprite.html
  73. 134 134
      docs/api/renderers/WebGLRenderTarget.html
  74. 71 71
      docs/api/renderers/WebGLRenderTargetCube.html
  75. 2 1
      docs/api/renderers/WebGLRenderer.html
  76. 1 1
      docs/api/renderers/shaders/ShaderChunk.html
  77. 1 1
      docs/api/renderers/shaders/ShaderLib.html
  78. 1 1
      docs/api/renderers/shaders/UniformsLib.html
  79. 1 1
      docs/api/renderers/shaders/UniformsUtils.html
  80. 1 1
      docs/api/renderers/webgl/WebGLProgram.html
  81. 1 1
      docs/api/renderers/webgl/WebGLShader.html
  82. 1 1
      docs/api/renderers/webgl/WebGLState.html
  83. 0 41
      docs/api/renderers/webgl/plugins/LensFlarePlugin.html
  84. 50 50
      docs/api/scenes/Fog.html
  85. 1 1
      docs/api/textures/DataTexture.html
  86. 257 257
      docs/api/textures/Texture.html
  87. 1 1
      docs/examples/geometries/ConvexBufferGeometry.html
  88. 1 1
      docs/examples/geometries/ConvexGeometry.html
  89. 1 1
      docs/examples/geometries/DecalGeometry.html
  90. 1 7
      docs/examples/loaders/GLTFLoader.html
  91. 671 671
      docs/examples/loaders/LoaderSupport.html
  92. 9 11
      docs/examples/objects/Lensflare.html
  93. 1 2
      docs/list.js
  94. 1 1
      docs/manual/introduction/Useful-links.html
  95. 0 2
      editor/js/Menubar.Edit.js
  96. 1 2
      editor/js/Sidebar.Settings.Shortcuts.js
  97. 1 7
      editor/js/Sidebar.Settings.Viewport.js
  98. 8 0
      editor/js/Toolbar.js
  99. 0 4
      editor/js/libs/tern-threejs/threejs.js
  100. 3 16
      examples/canvas_lines_dashed.html

+ 28 - 28
.github/CONTRIBUTING.md

@@ -1,28 +1,28 @@
-
-# Help 
-#### The issues section is for bug reports and feature requests only. If you need help, please use [stackoverflow](http://stackoverflow.com/questions/tagged/three.js).
----
-# Bugs
-#### Before reporting a bug
-
-1. Search issue tracker for similar issues.
-2. Try the latest dev branch version of three.js.
-3. Refer to the [Migration Guide](https://github.com/mrdoob/three.js/wiki/Migration) when upgrading to the dev version.
-
-#### How to report a bug
-
-1. Specify the revision number of the three.js library where the bug occurred.
-2. Specify your browser version, operating system, and graphics card. (for example, Chrome 23.0.1271.95, Windows 7, Nvidia Quadro 2000M)
-3. Describe the problem in detail. Explain what happened, and what you expected would happen.
-4. Provide a small test-case (http://jsfiddle.net). [Here is a fiddle](http://jsfiddle.net/akmcv7Lh/) you can edit that runs the current version. [And here is a fiddle](http://jsfiddle.net/hw9rcLL8/) that uses the dev branch. If a test-case is not possible, provide a link to a live version of your application.
-5. If helpful, include a screenshot. Annotate the screenshot for clarity.
-
----
-# Contribution
-#### How to contribute to three.js
-
-1. Make sure you have a GitHub account.
-2. Fork the repository on GitHub.
-3. Check the [Contribution Guidelines](https://github.com/mrdoob/three.js/wiki/How-to-contribute-to-three.js).
-4. Make changes to your clone of the repository.
-5. Submit a pull request. Don't include build files in the PR.
+
+# Help 
+#### The issues section is for bug reports and feature requests only. If you need help, please use [stackoverflow](http://stackoverflow.com/questions/tagged/three.js).
+---
+# Bugs
+#### Before reporting a bug
+
+1. Search issue tracker for similar issues.
+2. Try the latest dev branch version of three.js.
+3. Refer to the [Migration Guide](https://github.com/mrdoob/three.js/wiki/Migration) when upgrading to the dev version.
+
+#### How to report a bug
+
+1. Specify the revision number of the three.js library where the bug occurred.
+2. Specify your browser version, operating system, and graphics card. (for example, Chrome 23.0.1271.95, Windows 7, Nvidia Quadro 2000M)
+3. Describe the problem in detail. Explain what happened, and what you expected would happen.
+4. Provide a small test-case (http://jsfiddle.net). [Here is a fiddle](http://jsfiddle.net/akmcv7Lh/) you can edit that runs the current version. [And here is a fiddle](http://jsfiddle.net/hw9rcLL8/) that uses the dev branch. If a test-case is not possible, provide a link to a live version of your application.
+5. If helpful, include a screenshot. Annotate the screenshot for clarity.
+
+---
+# Contribution
+#### How to contribute to three.js
+
+1. Make sure you have a GitHub account.
+2. Fork the repository on GitHub.
+3. Check the [Contribution Guidelines](https://github.com/mrdoob/three.js/wiki/How-to-contribute-to-three.js).
+4. Make changes to your clone of the repository.
+5. Submit a pull request. Don't include build files in the PR.

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


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


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


+ 87 - 87
docs/api/cameras/Camera.html

@@ -1,87 +1,87 @@
-<!DOCTYPE html>
-<html lang="en">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../" />
-		<script src="list.js"></script>
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		[page:Object3D] &rarr;
-
-		<h1>[name]</h1>
-
-		<div class="desc">
-			Abstract base class for cameras. This class should always be inherited when you build a new camera.
-		</div>
-
-
-		<h2>Constructor</h2>
-
-
-		<h3>[name]()</h3>
-		<div>
-			Creates a new [name]. Note that this class is not intended to be called directly;
-			you probably want a [page:PerspectiveCamera] or [page:OrthographicCamera] instead.
-		</div>
-
-
-		<h2>Properties</h2>
-		<div>See the base [page:Object3D] class for common properties.</div>
-
-		<h3>[property:Boolean isCamera]</h3>
-		<div>
-			Used to check whether this or derived classes are cameras. Default is *true*.<br /><br />
-
-			You should not change this, as it used internally by the renderer for optimisation.
-		</div>
-
-		<h3>[property:Layers layers]</h3>
-		<div>
-		The [page:Layers layers] that the camera is a member of. This is an inherited
-		property from [page:Object3D].<br /><br />
-
-		Objects must share at least one layer with the camera to be seen
-		when the camera's viewpoint is rendered.
-		</div>
-
-		<h3>[property:Matrix4 matrixWorldInverse]</h3>
-		<div>
-			This is the inverse of matrixWorld. MatrixWorld contains the Matrix which has
-			the world transform of the Camera.
-		</div>
-
-		<h3>[property:Matrix4 projectionMatrix]</h3>
-		<div>This is the matrix which contains the projection.</div>
-
-
-		<h2>Methods</h2>
-		<div>See the base [page:Object3D] class for common methods.</div>
-
-		<h3>[method:Camera clone]( )</h3>
-		<div>
-			Return a new camera with the same properties as this one.
-		</div>
-
-		<h3>[method:Camera copy]( [page:Camera source] )</h3>
-		<div>
-		Copy the properties from the source camera into this one.
-		</div>
-
-		<h3>[method:Vector3 getWorldDirection]( [page:Vector3 optionalTarget] )</h3>
-		<div>
-		Returns a [page:Vector3] representing the world space direction in which the camera is looking.<br /><br />
-		
-		Note: This is not the camera’s positive, but its negative z-axis, in contrast to
-		[page:Object3D.getWorldDirection getWorldDirection] of the base class (Object3D).<br /><br />
-		
-		If an [page:Vector3 optionalTarget] vector is specified, the result will be copied into this vector
-		(which can be reused in this way), otherwise a new vector will be created.
-		</div>
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Object3D] &rarr;
+
+		<h1>[name]</h1>
+
+		<div class="desc">
+			Abstract base class for cameras. This class should always be inherited when you build a new camera.
+		</div>
+
+
+		<h2>Constructor</h2>
+
+
+		<h3>[name]()</h3>
+		<div>
+			Creates a new [name]. Note that this class is not intended to be called directly;
+			you probably want a [page:PerspectiveCamera] or [page:OrthographicCamera] instead.
+		</div>
+
+
+		<h2>Properties</h2>
+		<div>See the base [page:Object3D] class for common properties.</div>
+
+		<h3>[property:Boolean isCamera]</h3>
+		<div>
+			Used to check whether this or derived classes are cameras. Default is *true*.<br /><br />
+
+			You should not change this, as it used internally by the renderer for optimisation.
+		</div>
+
+		<h3>[property:Layers layers]</h3>
+		<div>
+		The [page:Layers layers] that the camera is a member of. This is an inherited
+		property from [page:Object3D].<br /><br />
+
+		Objects must share at least one layer with the camera to be seen
+		when the camera's viewpoint is rendered.
+		</div>
+
+		<h3>[property:Matrix4 matrixWorldInverse]</h3>
+		<div>
+			This is the inverse of matrixWorld. MatrixWorld contains the Matrix which has
+			the world transform of the Camera.
+		</div>
+
+		<h3>[property:Matrix4 projectionMatrix]</h3>
+		<div>This is the matrix which contains the projection.</div>
+
+
+		<h2>Methods</h2>
+		<div>See the base [page:Object3D] class for common methods.</div>
+
+		<h3>[method:Camera clone]( )</h3>
+		<div>
+			Return a new camera with the same properties as this one.
+		</div>
+
+		<h3>[method:Camera copy]( [page:Camera source] )</h3>
+		<div>
+		Copy the properties from the source camera into this one.
+		</div>
+
+		<h3>[method:Vector3 getWorldDirection]( [page:Vector3 optionalTarget] )</h3>
+		<div>
+		Returns a [page:Vector3] representing the world space direction in which the camera is looking.<br /><br />
+		
+		Note: This is not the camera’s positive, but its negative z-axis, in contrast to
+		[page:Object3D.getWorldDirection getWorldDirection] of the base class (Object3D).<br /><br />
+		
+		If an [page:Vector3 optionalTarget] vector is specified, the result will be copied into this vector
+		(which can be reused in this way), otherwise a new vector will be created.
+		</div>
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 99 - 99
docs/api/constants/Materials.html

@@ -1,99 +1,99 @@
-<!DOCTYPE html>
-<html lang="en">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../" />
-		<script src="list.js"></script>
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>Material Constants</h1>
-
-		<div class="desc">
-		These constants define properties common to all material types,
-		with the exception of Texture Combine Operations which only apply to [page:MeshBasicMaterial.combine MeshBasicMaterial], [page:MeshLambertMaterial.combine MeshLambertMaterial] and [page:MeshPhongMaterial.combine MeshPhongMaterial].<br />
-		</div>
-
-
-		<h2>Side</h2>
-		<code>
-		THREE.FrontSide
-		THREE.BackSide
-		THREE.DoubleSide
-		</code>
-		<div>
-		Defines which side of faces will be rendered - front, back or both.
-		Default is [page:Constant FrontSide].
-		</div>
-
-
-		<h2>Colors</h2>
-		<code>
-		THREE.NoColors
-		THREE.FaceColors
-		THREE.VertexColors
-		</code>
-		<div>
-		[page:Constant NoColors] is the default and applies the material's color to all faces.<br />
-		[page:Constant FaceColors] colors faces according to each [page:Face3 Face3][property:Color color] value.<br />
-		[page:Constant VertexColors] colors faces according to each [page:Face3 Face3][property:Array vertexColors] value. This is an array of three [page:Color Color]s, one for each vertex in the face.<br />
-		See the [example:webgl_geometry_colors geometry / colors] example.
-		</div>
-
-		<h2>Blending Mode</h2>
-		<code>
-		THREE.NoBlending
-		THREE.NormalBlending
-		THREE.AdditiveBlending
-		THREE.SubtractiveBlending
-		THREE.MultiplyBlending
-		THREE.CustomBlending
-		</code>
-
-
-		<div>
-		These control the source and destination blending equations for the material's RGB and Alpha sent to the WebGLRenderer for use by WebGL.<br />
-		[page:Constant NormalBlending] is the default.<br />
-		Note that [page:Constant CustomBlending] must be set to use [page:CustomBlendingEquation Custom Blending Equations].<br />
-		See the [example:webgl_materials_blending materials / blending] example.<br />
-		</div>
-
-		<h2>Depth Mode</h2>
-		<code>
-		THREE.NeverDepth
-		THREE.AlwaysDepth
-		THREE.LessDepth
-		THREE.LessEqualDepth
-		THREE.GreaterEqualDepth
-		THREE.GreaterDepth
-		THREE.NotEqualDepth
-		</code>
-		<div>
-		Which depth function the material uses to compare incoming pixels Z-depth against the current Z-depth buffer value. If the result of the comparison is true, the pixel will be drawn.<br />
-		[page:Materials NeverDepth] will never return true.<br />
-		[page:Materials AlwaysDepth] will always return true.<br />
-		[page:Materials LessDepth] will return true if the incoming pixel Z-depth is less than the current buffer Z-depth.<br />
-		[page:Materials LessEqualDepth] is the default and will return true if the incoming pixel Z-depth is less than or equal to the current buffer Z-depth.<br />
-		[page:Materials GreaterEqualDepth] will return true if the incoming pixel Z-depth is greater than or equal to the current buffer Z-depth.<br />
-		[page:Materials GreaterDepth] will return true if the incoming pixel Z-depth is greater than the current buffer Z-depth.<br />
-		[page:Materials NotEqualDepth] will return true if the incoming pixel Z-depth is not equal to the current buffer Z-depth.<br />
-		</div>
-
-		<h2>Texture Combine Operations</h2>
-		<code>
-		THREE.MultiplyOperation
-		THREE.MixOperation
-		THREE.AddOperation
-		</code>
-		These define how the result of the surface's color is combined with the environment map (if present), for [page:MeshBasicMaterial.combine MeshBasicMaterial], [page:MeshLambertMaterial.combine MeshLambertMaterial] and [page:MeshPhongMaterial.combine MeshPhongMaterial]. <br />
-		[page:Constant MultiplyOperation] is the default and multiplies the environment map color with the surface color.<br />
-		[page:Constant MixOperation] uses reflectivity to blend between the two colors.<br />
-		[page:Constant AddOperation] adds the two colors.
-
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/constants.js src/constants.js]
-	</body>
-</html>
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		<h1>Material Constants</h1>
+
+		<div class="desc">
+		These constants define properties common to all material types,
+		with the exception of Texture Combine Operations which only apply to [page:MeshBasicMaterial.combine MeshBasicMaterial], [page:MeshLambertMaterial.combine MeshLambertMaterial] and [page:MeshPhongMaterial.combine MeshPhongMaterial].<br />
+		</div>
+
+
+		<h2>Side</h2>
+		<code>
+		THREE.FrontSide
+		THREE.BackSide
+		THREE.DoubleSide
+		</code>
+		<div>
+		Defines which side of faces will be rendered - front, back or both.
+		Default is [page:Constant FrontSide].
+		</div>
+
+
+		<h2>Colors</h2>
+		<code>
+		THREE.NoColors
+		THREE.FaceColors
+		THREE.VertexColors
+		</code>
+		<div>
+		[page:Constant NoColors] is the default and applies the material's color to all faces.<br />
+		[page:Constant FaceColors] colors faces according to each [page:Face3 Face3][property:Color color] value.<br />
+		[page:Constant VertexColors] colors faces according to each [page:Face3 Face3][property:Array vertexColors] value. This is an array of three [page:Color Color]s, one for each vertex in the face.<br />
+		See the [example:webgl_geometry_colors geometry / colors] example.
+		</div>
+
+		<h2>Blending Mode</h2>
+		<code>
+		THREE.NoBlending
+		THREE.NormalBlending
+		THREE.AdditiveBlending
+		THREE.SubtractiveBlending
+		THREE.MultiplyBlending
+		THREE.CustomBlending
+		</code>
+
+
+		<div>
+		These control the source and destination blending equations for the material's RGB and Alpha sent to the WebGLRenderer for use by WebGL.<br />
+		[page:Constant NormalBlending] is the default.<br />
+		Note that [page:Constant CustomBlending] must be set to use [page:CustomBlendingEquation Custom Blending Equations].<br />
+		See the [example:webgl_materials_blending materials / blending] example.<br />
+		</div>
+
+		<h2>Depth Mode</h2>
+		<code>
+		THREE.NeverDepth
+		THREE.AlwaysDepth
+		THREE.LessDepth
+		THREE.LessEqualDepth
+		THREE.GreaterEqualDepth
+		THREE.GreaterDepth
+		THREE.NotEqualDepth
+		</code>
+		<div>
+		Which depth function the material uses to compare incoming pixels Z-depth against the current Z-depth buffer value. If the result of the comparison is true, the pixel will be drawn.<br />
+		[page:Materials NeverDepth] will never return true.<br />
+		[page:Materials AlwaysDepth] will always return true.<br />
+		[page:Materials LessDepth] will return true if the incoming pixel Z-depth is less than the current buffer Z-depth.<br />
+		[page:Materials LessEqualDepth] is the default and will return true if the incoming pixel Z-depth is less than or equal to the current buffer Z-depth.<br />
+		[page:Materials GreaterEqualDepth] will return true if the incoming pixel Z-depth is greater than or equal to the current buffer Z-depth.<br />
+		[page:Materials GreaterDepth] will return true if the incoming pixel Z-depth is greater than the current buffer Z-depth.<br />
+		[page:Materials NotEqualDepth] will return true if the incoming pixel Z-depth is not equal to the current buffer Z-depth.<br />
+		</div>
+
+		<h2>Texture Combine Operations</h2>
+		<code>
+		THREE.MultiplyOperation
+		THREE.MixOperation
+		THREE.AddOperation
+		</code>
+		These define how the result of the surface's color is combined with the environment map (if present), for [page:MeshBasicMaterial.combine MeshBasicMaterial], [page:MeshLambertMaterial.combine MeshLambertMaterial] and [page:MeshPhongMaterial.combine MeshPhongMaterial]. <br />
+		[page:Constant MultiplyOperation] is the default and multiplies the environment map color with the surface color.<br />
+		[page:Constant MixOperation] uses reflectivity to blend between the two colors.<br />
+		[page:Constant AddOperation] adds the two colors.
+
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/constants.js src/constants.js]
+	</body>
+</html>

+ 355 - 357
docs/api/core/BufferGeometry.html

@@ -1,357 +1,355 @@
-<!DOCTYPE html>
-<html lang="en">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../" />
-		<script src="list.js"></script>
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>[name]</h1>
-
-		<div class="desc">
-		<p>
-		This class is an efficient alternative to [page:Geometry], because it stores all data, including
-		vertex positions, face indices, normals, colors, UVs, and custom attributes within buffers; this
-		reduces the cost of passing all this data to the GPU.<br />
-		This also makes BufferGeometry harder to work with than [page:Geometry]; rather than accessing
-		position data as [page:Vector3] objects, color data as [page:Color] objects, and so on, you have to
-		access the raw data from the appropriate [page:BufferAttribute attribute buffer]. This makes
-		BufferGeometry best-suited for static objects where you don't need to manipulate the geometry much
-		after instantiating it.
-		</p>
-
-		<h2>Example</h2>
-		<code>
-		var geometry = new THREE.BufferGeometry();
-		// create a simple square shape. We duplicate the top left and bottom right
-		// vertices because each vertex needs to appear once per triangle.
-		var vertices = new Float32Array( [
-			-1.0, -1.0,  1.0,
-			 1.0, -1.0,  1.0,
-			 1.0,  1.0,  1.0,
-
-			 1.0,  1.0,  1.0,
-			-1.0,  1.0,  1.0,
-			-1.0, -1.0,  1.0
-		] );
-
-		// itemSize = 3 because there are 3 values (components) per vertex
-		geometry.addAttribute( 'position', new THREE.BufferAttribute( vertices, 3 ) );
-		var material = new THREE.MeshBasicMaterial( { color: 0xff0000 } );
-		var mesh = new THREE.Mesh( geometry, material );
-		</code>
-		<div>
-			[example:webgl_buffergeometry Complex mesh with non-indexed faces]<br />
-			[example:webgl_buffergeometry_uint Complex mesh with indexed faces]<br />
-			[example:webgl_buffergeometry_lines Lines]<br />
-			[example:webgl_buffergeometry_lines_indexed Indexed Lines]<br />
-			[example:webgl_buffergeometry_custom_attributes_particles Particles]<br />
-			[example:webgl_buffergeometry_rawshader Raw Shaders]
-		</div>
-
-
-		<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>
-		<div>
-		Stores the x, y, and z coordinates of each vertex in this geometry. Set by [page:.fromGeometry]().
-		</div>
-
-		<h3>[page:BufferAttribute normal] (itemSize: 3)</h3>
-		<div>
-		Stores the x, y, and z components of the vertex normal vector of each vertex in this geometry.
-		Set by [page:.fromGeometry]().
-		</div>
-
-		<h3>[page:BufferAttribute color] (itemSize: 3)</h3>
-		<div>
-		Stores the red, green, and blue channels of vertex color of each vertex in this geometry.
-		Set by [page:.fromGeometry]().
-		</div>
-
-		<h3>[page:BufferAttribute index] (itemSize: 1)</h3>
-		Allows for vertices to be re-used across multiple triangles; this is called using "indexed triangles" and
-		works much the same as it does in [page:Geometry]: each triangle is associated with the indices of three vertices.
-		This attribute therefore stores the index of each vertex for each triangular face.
-
-		If this attribute is not set, the [page:WebGLRenderer renderer] assumes that each three contiguous
-		positions represent a single triangle.
-		</div>
-		<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>
-
-
-		<h3>[name]()</h3>
-		<div>
-		This creates a new [name]. It also sets several properties to a default value.
-		</div>
-
-
-		<h2>Properties</h2>
-
-		<h3>[property:Hashmap attributes]</h3>
-		<div>
-		This hashmap has as id the name of the attribute to be set and as value the [page:BufferAttribute buffer] to set it to.
-		Rather than accessing this property directly, use [page:.addAttribute] and [page:.getAttribute] to access attributes of this geometry.
-		</div>
-
-		<h3>[property:Box3 boundingBox]</h3>
-		<div>
-			Bounding box for the bufferGeometry, which can be calculated with
-			[page:.computeBoundingBox](). Default is *null*.
-		</div>
-
-		<h3>[property:Sphere boundingSphere]</h3>
-		<div>
-			Bounding sphere for the bufferGeometry, which can be calculated with
-			[page:.computeBoundingSphere](). Default is *null*.
-		</div>
-
-		<h3>[property:Object drawRange]</h3>
-		<div>
-			Used to determine what part of the geometry should be rendered. This should not
-			be set directly, instead use [page:.setDrawRange].<br />
-			Default is
-			<code>
-				{ start: 0, count: Infinity }
-			</code>
-		</div>
-
-		<h3>[property:Array groups]</h3>
-		<div>
-			Split the geometry into groups, each of which will be rendered in a separate WebGL draw call.
-			This allows an array of materials to be used with the bufferGeometry.<br /><br />
-
-			Each group is an object of the form:
-			<code>{ start: Integer, count: Integer, materialIndex: Integer }</code>
-			where start specifies the index of the first vertex in this draw call, count specifies
-			how many vertices are included, and materialIndex specifies the material array index to use.<br /><br />
-
-			Use [page:.addGroup] to add groups, rather than modifying this array directly.
-		</div>
-
-
-		<!-- Note: groups used to be called drawCalls
-
-		<h3>[property:Array drawcalls]</h3>
-		<div>
-		For geometries that use indexed triangles, this Array can be used to split the object
-		into multiple WebGL draw calls. Each draw call will draw some subset of the vertices
-		in this geometry using the configured [page:Material shader]. This may be necessary if,
-		for instance, you have more than 65535 vertices in your object.
-		</div> -->
-
-
-		<h3>[property:Integer id]</h3>
-		<div>Unique number for this bufferGeometry instance.</div>
-
-		<h3>[property:BufferAttribute index]</h3>
-		<div>
-			See "Accessing Attributes" section above for a description of this property.
-			Default is *null*.
-		</div>
-
-		<h3>[property:Boolean isBufferGeometry]</h3>
-		<div>
-			Used to check whether this or derived classes are BufferGeometries. Default is *true*.<br /><br />
-
-			You should not change this, as it used internally for optimisation.
-		</div>
-
-		<h3>[property:Object morphAttributes]</h3>
-		<div>
-			Hashmap of [page:BufferAttribute]s holding details of the geometry's [page:Geometry.morphTargets morphTargets].
-		</div>
-
-		<h3>[property:String name]</h3>
-		<div>
-		Optional name for this bufferGeometry instance. Default is an empty string.
-		</div>
-
-		<h3>[property:String uuid]</h3>
-		<div>
-		[link:http://en.wikipedia.org/wiki/Universally_unique_identifier UUID] of this object instance.
-		This gets automatically assigned and shouldn't be edited.
-		</div>
-
-		<h2>Methods</h2>
-
-		<h3>[page:EventDispatcher EventDispatcher] methods are available on this class.</h3>
-
-		<h3>[property:null addAttribute]( [page:String name], [page:BufferAttribute attribute] )</h3>
-		<div>
-		Adds an attribute to this geometry. Use this rather than the attributes property,
-		because an internal hashmap of [page:.attributes] is maintained to speed up iterating over
-		attributes.
-		</div>
-
-		<h3>[method:null addGroup]( [page:Integer start], [page:Integer count], [page:Integer materialIndex] )</h3>
-		<div>
-			Adds a group to this geometry; see the [page:BufferGeometry.groups groups]
-			property for details.
-		</div>
-
-
-		<h3>[method:null applyMatrix]( [page:Matrix4 matrix] )</h3>
-		<div>Bakes matrix transform directly into vertex coordinates.</div>
-
-		<h3>[method:null center] ()</h3>
-		<div>Center the geometry based on the bounding box.</div>
-
-		<h3>[method:BufferGeometry clone]()</h3>
-		<div>Creates a clone of this BufferGeometry.</div>
-
-		<h3>[method:BufferGeometry copy]( [page:BufferGeometry bufferGeometry] )</h3>
-		<div>Copies another BufferGeometry to this BufferGeometry.</div>
-
-		<h3>[method:null clearGroups]( )</h3>
-		<div>Clears all groups.</div>
-
-		<h3>[method:null computeBoundingBox]()</h3>
-		<div>
-		Computes bounding box of the geometry, updating [page:.boundingBox] attribute.<br />
-		Bounding boxes aren't computed by default. They need to be explicitly computed, otherwise they are *null*.
-		</div>
-
-		<h3>[method:null computeBoundingSphere]()</h3>
-		<div>
-		Computes bounding sphere of the geometry, updating [page:.boundingSphere] attribute.<br />
-		Bounding spheres aren't computed by default. They need to be explicitly computed, otherwise they are *null*.
-		</div>
-
-		<h3>[method:null computeVertexNormals]()</h3>
-		<div>Computes vertex normals by averaging face normals.</div>
-
-		<h3>[method:null dispose]()</h3>
-		<div>
-		Disposes the object from memory. <br />
-		You need to call this when you want the bufferGeometry removed while the application is running.
-		</div>
-
-		<h3>[method:BufferGeometry fromDirectGeometry]( [page:Geometry] )</h3>
-		<div>
-			Populates this BufferGeometry with data from a [page:DirectGeometry] object.<br /><br />
-
-			Note: [page:DirectGeometry] is mainly used as an intermediary object for converting between [page:Geometry]
-			and BufferGeometry.
-		</div>
-
-		<h3>[method:BufferGeometry fromGeometry]( [page:Geometry] )</h3>
-		<div>Populates this BufferGeometry with data from a [page:Geometry] object.</div>
-
-		<h3>[method:BufferAttribute getAttribute]( [page:String name] )</h3>
-		<div>Returns the [page:BufferAttribute attribute] with the specified name.</div>
-
-		<h3>[method:BufferAttribute getIndex] ()</h3>
-		<div>Return the [page:.index] buffer.</div>
-
-		<h3>[method:BufferGeometry lookAt] ( [page:Vector3 vector] )</h3>
-		<div>
-		vector - A world vector to look at.<br /><br />
-
-		Rotates the geometry to face a point in space. This is typically done as a one time operation, and not during a loop.
-		Use [page:Object3D.lookAt] for typical real-time mesh usage.
-		</div>
-
-		<h3>[method:null merge]( [page:BufferGeometry bufferGeometry], [page:Integer offset] )</h3>
-		<div>Merge in another BufferGeometry with an optional offset of where to start merging in.</div>
-
-		<h3>[method:null normalizeNormals]()</h3>
-		<div>
-		Every normal vector in a geometry will have a magnitude of 1.
-		This will correct lighting on the geometry surfaces.
-		</div>
-
-		<h3>[method:BufferAttribute removeAttribute]( [page:String name] )</h3>
-		<div>Removes the [page:BufferAttribute attribute] with the specified name.</div>
-
-		<h3>[method:BufferGeometry rotateX] ( [page:Float radians] )</h3>
-		<div>
-		Rotate the geometry about the X axis. This is typically done as a one time operation, and not during a loop.
-    Use [page:Object3D.rotation] for typical real-time mesh rotation.
-		</div>
-
-		<h3>[method:BufferGeometry rotateY] ( [page:Float radians] )</h3>
-		<div>
-		Rotate the geometry about the Y axis. This is typically done as a one time operation, and not during a loop.
-    Use [page:Object3D.rotation] for typical real-time mesh rotation.
-		</div>
-
-		<h3>[method:BufferGeometry rotateZ] ( [page:Float radians] )</h3>
-		<div>
-		Rotate the geometry about the Z axis. This is typically done as a one time operation, and not during a loop.
-    Use [page:Object3D.rotation] for typical real-time mesh rotation.
-		</div>
-
-		<h3>[method:BufferGeometry scale] ( [page:Float x], [page:Float y], [page:Float z] )</h3>
-		<div>
-		Scale the geometry data. This is typically done as a one time operation, and not during a loop.
-		Use [page:Object3D.scale] for typical real-time mesh scaling.
-		</div>
-
-		<h3>[method:null setIndex] ( [page:BufferAttribute index] )</h3>
-		<div>Set the [page:.index] buffer.</div>
-
-		<h3>[method:null setDrawRange] ( [page:Integer start], [page:Integer count] )</h3>
-		<div>Set the [page:.drawRange] buffer. See that property for details.</div>
-
-		<h3>[method:BufferGeometry setFromObject] ( [page:Object3D object] )</h3>
-		<div>Sets the attributes for this BufferGeometry from an [page:Object3D].</div>
-
-		<h3>[method:BufferGeometry setFromPoints] ( [page:Array points] )</h3>
-		<div>Sets the attributes for this BufferGeometry from an array of points.</div>
-
-		<h3>[method:Object toJSON]()</h3>
-		<div>Returns a JSON object representation of the BufferGeometry.</div>
-
-		<h3>[method:BufferGeometry toNonIndexed]()</h3>
-		<div>Return a non-index version of an indexed BufferGeometry.</div>
-
-		<h3>[method:BufferGeometry translate] ( [page:Float x], [page:Float y], [page:Float z] )</h3>
-		<div>
-		Translate the geometry. This is typically done as a one time operation, and not during a loop.
-    Use [page:Object3D.position] for typical real-time mesh translation.
-		</div>
-
-		<h3>[method:BufferGeometry updateFromObject] ( [page:Object3D object] )</h3>
-		<div>Updates the attributes for this BufferGeometry from an [page:Object3D].</div>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		<h1>[name]</h1>
+
+		<div class="desc">
+		<p>
+		This class is an efficient alternative to [page:Geometry], because it stores all data, including
+		vertex positions, face indices, normals, colors, UVs, and custom attributes within buffers; this
+		reduces the cost of passing all this data to the GPU.<br />
+		This also makes BufferGeometry harder to work with than [page:Geometry]; rather than accessing
+		position data as [page:Vector3] objects, color data as [page:Color] objects, and so on, you have to
+		access the raw data from the appropriate [page:BufferAttribute attribute buffer]. This makes
+		BufferGeometry best-suited for static objects where you don't need to manipulate the geometry much
+		after instantiating it.
+		</p>
+
+		<h2>Example</h2>
+		<code>
+		var geometry = new THREE.BufferGeometry();
+		// create a simple square shape. We duplicate the top left and bottom right
+		// vertices because each vertex needs to appear once per triangle.
+		var vertices = new Float32Array( [
+			-1.0, -1.0,  1.0,
+			 1.0, -1.0,  1.0,
+			 1.0,  1.0,  1.0,
+
+			 1.0,  1.0,  1.0,
+			-1.0,  1.0,  1.0,
+			-1.0, -1.0,  1.0
+		] );
+
+		// itemSize = 3 because there are 3 values (components) per vertex
+		geometry.addAttribute( 'position', new THREE.BufferAttribute( vertices, 3 ) );
+		var material = new THREE.MeshBasicMaterial( { color: 0xff0000 } );
+		var mesh = new THREE.Mesh( geometry, material );
+		</code>
+		<div>
+			[example:webgl_buffergeometry Mesh with non-indexed faces]<br />
+			[example:webgl_buffergeometry_indexed Mesh with indexed faces]<br />
+			[example:webgl_buffergeometry_lines Lines]<br />
+			[example:webgl_buffergeometry_lines_indexed Indexed Lines]<br />
+			[example:webgl_buffergeometry_custom_attributes_particles Particles]<br />
+			[example:webgl_buffergeometry_rawshader Raw Shaders]
+		</div>
+
+
+		<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>
+		<div>
+		Stores the x, y, and z coordinates of each vertex in this geometry. Set by [page:.fromGeometry]().
+		</div>
+
+		<h3>[page:BufferAttribute normal] (itemSize: 3)</h3>
+		<div>
+		Stores the x, y, and z components of the vertex normal vector of each vertex in this geometry.
+		Set by [page:.fromGeometry]().
+		</div>
+
+		<h3>[page:BufferAttribute color] (itemSize: 3)</h3>
+		<div>
+		Stores the red, green, and blue channels of vertex color of each vertex in this geometry.
+		Set by [page:.fromGeometry]().
+		</div>
+
+		<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>
+
+
+		<h3>[name]()</h3>
+		<div>
+		This creates a new [name]. It also sets several properties to a default value.
+		</div>
+
+
+		<h2>Properties</h2>
+
+		<h3>[property:Hashmap attributes]</h3>
+		<div>
+		This hashmap has as id the name of the attribute to be set and as value the [page:BufferAttribute buffer] to set it to.
+		Rather than accessing this property directly, use [page:.addAttribute] and [page:.getAttribute] to access attributes of this geometry.
+		</div>
+
+		<h3>[property:Box3 boundingBox]</h3>
+		<div>
+			Bounding box for the bufferGeometry, which can be calculated with
+			[page:.computeBoundingBox](). Default is *null*.
+		</div>
+
+		<h3>[property:Sphere boundingSphere]</h3>
+		<div>
+			Bounding sphere for the bufferGeometry, which can be calculated with
+			[page:.computeBoundingSphere](). Default is *null*.
+		</div>
+
+		<h3>[property:Object drawRange]</h3>
+		<div>
+			Used to determine what part of the geometry should be rendered. This should not
+			be set directly, instead use [page:.setDrawRange].<br />
+			Default is
+			<code>
+				{ start: 0, count: Infinity }
+			</code>
+		</div>
+
+		<h3>[property:Array groups]</h3>
+		<div>
+			Split the geometry into groups, each of which will be rendered in a separate WebGL draw call.
+			This allows an array of materials to be used with the bufferGeometry.<br /><br />
+
+			Each group is an object of the form:
+			<code>{ start: Integer, count: Integer, materialIndex: Integer }</code>
+			where start specifies the index of the first vertex in this draw call, count specifies
+			how many vertices are included, and materialIndex specifies the material array index to use.<br /><br />
+
+			Use [page:.addGroup] to add groups, rather than modifying this array directly.
+		</div>
+
+
+		<!-- Note: groups used to be called drawCalls
+
+		<h3>[property:Array drawcalls]</h3>
+		<div>
+		For geometries that use indexed triangles, this Array can be used to split the object
+		into multiple WebGL draw calls. Each draw call will draw some subset of the vertices
+		in this geometry using the configured [page:Material shader]. This may be necessary if,
+		for instance, you have more than 65535 vertices in your object.
+		</div> -->
+
+
+		<h3>[property:Integer id]</h3>
+		<div>Unique number for this bufferGeometry instance.</div>
+
+		<h3>[property:BufferAttribute index]</h3>
+		<div>
+			Allows for vertices to be re-used across multiple triangles; this is called using "indexed triangles" and
+			works much the same as it does in [page:Geometry]: each triangle is associated with the indices of three vertices.
+			This attribute therefore stores the index of each vertex for each triangular face.
+
+			If this attribute is not set, the [page:WebGLRenderer renderer] assumes that each three contiguous
+			positions represent a single triangle.
+
+			Default is *null*.
+		</div>
+
+		<h3>[property:Boolean isBufferGeometry]</h3>
+		<div>
+			Used to check whether this or derived classes are BufferGeometries. Default is *true*.<br /><br />
+
+			You should not change this, as it used internally for optimisation.
+		</div>
+
+		<h3>[property:Object morphAttributes]</h3>
+		<div>
+			Hashmap of [page:BufferAttribute]s holding details of the geometry's [page:Geometry.morphTargets morphTargets].
+		</div>
+
+		<h3>[property:String name]</h3>
+		<div>
+		Optional name for this bufferGeometry instance. Default is an empty string.
+		</div>
+
+		<h3>[property:String uuid]</h3>
+		<div>
+		[link:http://en.wikipedia.org/wiki/Universally_unique_identifier UUID] of this object instance.
+		This gets automatically assigned and shouldn't be edited.
+		</div>
+
+		<h2>Methods</h2>
+
+		<h3>[page:EventDispatcher EventDispatcher] methods are available on this class.</h3>
+
+		<h3>[property:null addAttribute]( [page:String name], [page:BufferAttribute attribute] )</h3>
+		<div>
+		Adds an attribute to this geometry. Use this rather than the attributes property,
+		because an internal hashmap of [page:.attributes] is maintained to speed up iterating over
+		attributes.
+		</div>
+
+		<h3>[method:null addGroup]( [page:Integer start], [page:Integer count], [page:Integer materialIndex] )</h3>
+		<div>
+			Adds a group to this geometry; see the [page:BufferGeometry.groups groups]
+			property for details.
+		</div>
+
+
+		<h3>[method:null applyMatrix]( [page:Matrix4 matrix] )</h3>
+		<div>Bakes matrix transform directly into vertex coordinates.</div>
+
+		<h3>[method:null center] ()</h3>
+		<div>Center the geometry based on the bounding box.</div>
+
+		<h3>[method:BufferGeometry clone]()</h3>
+		<div>Creates a clone of this BufferGeometry.</div>
+
+		<h3>[method:BufferGeometry copy]( [page:BufferGeometry bufferGeometry] )</h3>
+		<div>Copies another BufferGeometry to this BufferGeometry.</div>
+
+		<h3>[method:null clearGroups]( )</h3>
+		<div>Clears all groups.</div>
+
+		<h3>[method:null computeBoundingBox]()</h3>
+		<div>
+		Computes bounding box of the geometry, updating [page:.boundingBox] attribute.<br />
+		Bounding boxes aren't computed by default. They need to be explicitly computed, otherwise they are *null*.
+		</div>
+
+		<h3>[method:null computeBoundingSphere]()</h3>
+		<div>
+		Computes bounding sphere of the geometry, updating [page:.boundingSphere] attribute.<br />
+		Bounding spheres aren't computed by default. They need to be explicitly computed, otherwise they are *null*.
+		</div>
+
+		<h3>[method:null computeVertexNormals]()</h3>
+		<div>Computes vertex normals by averaging face normals.</div>
+
+		<h3>[method:null dispose]()</h3>
+		<div>
+		Disposes the object from memory. <br />
+		You need to call this when you want the bufferGeometry removed while the application is running.
+		</div>
+
+		<h3>[method:BufferGeometry fromDirectGeometry]( [page:Geometry] )</h3>
+		<div>
+			Populates this BufferGeometry with data from a [page:DirectGeometry] object.<br /><br />
+
+			Note: [page:DirectGeometry] is mainly used as an intermediary object for converting between [page:Geometry]
+			and BufferGeometry.
+		</div>
+
+		<h3>[method:BufferGeometry fromGeometry]( [page:Geometry] )</h3>
+		<div>Populates this BufferGeometry with data from a [page:Geometry] object.</div>
+
+		<h3>[method:BufferAttribute getAttribute]( [page:String name] )</h3>
+		<div>Returns the [page:BufferAttribute attribute] with the specified name.</div>
+
+		<h3>[method:BufferAttribute getIndex] ()</h3>
+		<div>Return the [page:.index] buffer.</div>
+
+		<h3>[method:BufferGeometry lookAt] ( [page:Vector3 vector] )</h3>
+		<div>
+		vector - A world vector to look at.<br /><br />
+
+		Rotates the geometry to face a point in space. This is typically done as a one time operation, and not during a loop.
+		Use [page:Object3D.lookAt] for typical real-time mesh usage.
+		</div>
+
+		<h3>[method:null merge]( [page:BufferGeometry bufferGeometry], [page:Integer offset] )</h3>
+		<div>Merge in another BufferGeometry with an optional offset of where to start merging in.</div>
+
+		<h3>[method:null normalizeNormals]()</h3>
+		<div>
+		Every normal vector in a geometry will have a magnitude of 1.
+		This will correct lighting on the geometry surfaces.
+		</div>
+
+		<h3>[method:BufferAttribute removeAttribute]( [page:String name] )</h3>
+		<div>Removes the [page:BufferAttribute attribute] with the specified name.</div>
+
+		<h3>[method:BufferGeometry rotateX] ( [page:Float radians] )</h3>
+		<div>
+		Rotate the geometry about the X axis. This is typically done as a one time operation, and not during a loop.
+    Use [page:Object3D.rotation] for typical real-time mesh rotation.
+		</div>
+
+		<h3>[method:BufferGeometry rotateY] ( [page:Float radians] )</h3>
+		<div>
+		Rotate the geometry about the Y axis. This is typically done as a one time operation, and not during a loop.
+    Use [page:Object3D.rotation] for typical real-time mesh rotation.
+		</div>
+
+		<h3>[method:BufferGeometry rotateZ] ( [page:Float radians] )</h3>
+		<div>
+		Rotate the geometry about the Z axis. This is typically done as a one time operation, and not during a loop.
+    Use [page:Object3D.rotation] for typical real-time mesh rotation.
+		</div>
+
+		<h3>[method:BufferGeometry scale] ( [page:Float x], [page:Float y], [page:Float z] )</h3>
+		<div>
+		Scale the geometry data. This is typically done as a one time operation, and not during a loop.
+		Use [page:Object3D.scale] for typical real-time mesh scaling.
+		</div>
+
+		<h3>[method:null setIndex] ( [page:BufferAttribute index] )</h3>
+		<div>Set the [page:.index] buffer.</div>
+
+		<h3>[method:null setDrawRange] ( [page:Integer start], [page:Integer count] )</h3>
+		<div>Set the [page:.drawRange] buffer. See that property for details.</div>
+
+		<h3>[method:BufferGeometry setFromObject] ( [page:Object3D object] )</h3>
+		<div>Sets the attributes for this BufferGeometry from an [page:Object3D].</div>
+
+		<h3>[method:BufferGeometry setFromPoints] ( [page:Array points] )</h3>
+		<div>Sets the attributes for this BufferGeometry from an array of points.</div>
+
+		<h3>[method:Object toJSON]()</h3>
+		<div>Returns a JSON object representation of the BufferGeometry.</div>
+
+		<h3>[method:BufferGeometry toNonIndexed]()</h3>
+		<div>Return a non-index version of an indexed BufferGeometry.</div>
+
+		<h3>[method:BufferGeometry translate] ( [page:Float x], [page:Float y], [page:Float z] )</h3>
+		<div>
+		Translate the geometry. This is typically done as a one time operation, and not during a loop.
+    Use [page:Object3D.position] for typical real-time mesh translation.
+		</div>
+
+		<h3>[method:BufferGeometry updateFromObject] ( [page:Object3D object] )</h3>
+		<div>Updates the attributes for this BufferGeometry from an [page:Object3D].</div>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 100 - 100
docs/api/core/EventDispatcher.html

@@ -1,100 +1,100 @@
-<!DOCTYPE html>
-<html lang="en">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../" />
-		<script src="list.js"></script>
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>[name]</h1>
-
-		<div class="desc">
-			JavaScript events for custom objects.<br />
-			[link:https://github.com/mrdoob/eventdispatcher.js Eventdispatcher on GitHub]
-		</div>
-
-		<h2>Example</h2>
-
-		<code>
-// Adding events to a custom object
-
-var Car = function () {
-
-    this.start = function () {
-
-        this.dispatchEvent( { type: 'start', message: 'vroom vroom!' } );
-
-    };
-
-};
-
-// Mixing the EventDispatcher.prototype with the custom object prototype
-
-Object.assign( Car.prototype, EventDispatcher.prototype );
-
-// Using events with the custom object
-
-var car = new Car();
-
-car.addEventListener( 'start', function ( event ) {
-
-    alert( event.message );
-
-} );
-
-car.start();
-		</code>
-
-		<h2>Constructor</h2>
-
-		<h3>[name]()</h3>
-		<div>
-		Creates EventDispatcher object.
-		</div>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null addEventListener]( [page:String type], [page:Function listener] )</h3>
-		<div>
-		type - The type of event to listen to.<br />
-		listener - The function that gets called when the event is fired.
-		</div>
-		<div>
-		Adds a listener to an event type.
-		</div>
-
-		<h3>[method:Boolean hasEventListener]( [page:String type], [page:Function listener] )</h3>
-		<div>
-		type - The type of event to listen to.<br />
-		listener - The function that gets called when the event is fired.
-		</div>
-		<div>
-		Checks if listener is added to an event type.
-		</div>
-
-		<h3>[method:null removeEventListener]( [page:String type], [page:Function listener] )</h3>
-		<div>
-		type - The type of the listener that gets removed.<br />
-		listener - The listener function that gets removed.
-		</div>
-		<div>
-		Removes a listener from an event type.
-		</div>
-
-		<h3>[method:null dispatchEvent]( [page:object event] )</h3>
-		<div>
-		event - The event that gets fired.
-		</div>
-		<div>
-		Fire an event type.
-		</div>
-
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		<h1>[name]</h1>
+
+		<div class="desc">
+			JavaScript events for custom objects.<br />
+			[link:https://github.com/mrdoob/eventdispatcher.js Eventdispatcher on GitHub]
+		</div>
+
+		<h2>Example</h2>
+
+		<code>
+// Adding events to a custom object
+
+var Car = function () {
+
+    this.start = function () {
+
+        this.dispatchEvent( { type: 'start', message: 'vroom vroom!' } );
+
+    };
+
+};
+
+// Mixing the EventDispatcher.prototype with the custom object prototype
+
+Object.assign( Car.prototype, EventDispatcher.prototype );
+
+// Using events with the custom object
+
+var car = new Car();
+
+car.addEventListener( 'start', function ( event ) {
+
+    alert( event.message );
+
+} );
+
+car.start();
+		</code>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]()</h3>
+		<div>
+		Creates EventDispatcher object.
+		</div>
+
+
+		<h2>Methods</h2>
+
+		<h3>[method:null addEventListener]( [page:String type], [page:Function listener] )</h3>
+		<div>
+		type - The type of event to listen to.<br />
+		listener - The function that gets called when the event is fired.
+		</div>
+		<div>
+		Adds a listener to an event type.
+		</div>
+
+		<h3>[method:Boolean hasEventListener]( [page:String type], [page:Function listener] )</h3>
+		<div>
+		type - The type of event to listen to.<br />
+		listener - The function that gets called when the event is fired.
+		</div>
+		<div>
+		Checks if listener is added to an event type.
+		</div>
+
+		<h3>[method:null removeEventListener]( [page:String type], [page:Function listener] )</h3>
+		<div>
+		type - The type of the listener that gets removed.<br />
+		listener - The listener function that gets removed.
+		</div>
+		<div>
+		Removes a listener from an event type.
+		</div>
+
+		<h3>[method:null dispatchEvent]( [page:object event] )</h3>
+		<div>
+		event - The event that gets fired.
+		</div>
+		<div>
+		Fire an event type.
+		</div>
+
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 134 - 134
docs/api/core/Face3.html

@@ -1,134 +1,134 @@
-<!DOCTYPE html>
-<html lang="en">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../" />
-		<script src="list.js"></script>
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>[name]</h1>
-
-		<div class="desc">
-		Triangular face used in [page:Geometry]. These are created automatically for all
-		standard geometry types, however if you are building a custom geometry you will have to
-		create them manually.
-		</div>
-
-
-		<h2>Examples</h2>
-
-		<div>[example:misc_ubiquity_test ubiquity / test ]</div>
-		<div>[example:svg_sandbox svg / sandbox ]</div>
-		<div>[example:misc_exporter_obj exporter / obj ]</div>
-		<div>[example:webgl_shaders_vector WebGL / shaders / vector ]</div>
-
-
-		<code>
-var material = new THREE.MeshStandardMaterial( { color : 0x00cc00 } );
-
-//create a triangular geometry
-var geometry = new THREE.Geometry();
-geometry.vertices.push( new THREE.Vector3( -50, -50, 0 ) );
-geometry.vertices.push( new THREE.Vector3(  50, -50, 0 ) );
-geometry.vertices.push( new THREE.Vector3(  50,  50, 0 ) );
-
-//create a new face using vertices 0, 1, 2
-var normal = new THREE.Vector3( 0, 1, 0 ); //optional
-var color = new THREE.Color( 0xffaa00 ); //optional
-var materialIndex = 0; //optional
-var face = new THREE.Face3( 0, 1, 2, normal, color, materialIndex );
-
-//add the face to the geometry's faces array
-geometry.faces.push( face );
-
-//the face normals and vertex normals can be calculated automatically if not supplied above
-geometry.computeFaceNormals();
-geometry.computeVertexNormals();
-
-scene.add( new THREE.Mesh( geometry, material ) );
-	</code>
-
-
-		<h2>Constructor</h2>
-
-		<h3>[name]( [page:Integer a], [page:Integer b], [page:Integer c], [page:Vector3 normal], [page:Color color], [page:Integer materialIndex] )</h3>
-		<div>
-		a — Vertex A index.<br />
-		b — Vertex B index.<br />
-		c — Vertex C index.<br /><br />
-
-		normal — (optional) Face normal ([page:Vector3 Vector3]) or array of vertex normals.
-		If a single vector is passed in, this sets [page:.normal], otherwise if an array of three
-		vectors is passed in this sets [page:.vertexNormals]<br /><br />
-
-		color — (optional) Face [page:Color color] or array of vertex [page:Color colors].
-		If a single vector is passed in, this sets [page:.color], otherwise if an array of three
-		vectors is passed in this sets [page:.vertexColors]<br /><br />
-
-		materialIndex — (optional) which index of an array of materials to associate
-		with the face.
-		</div>
-
-		<h2>Properties</h2>
-
-		<h3>[property:Integer a]</h3>
-		<div>
-		Vertex A index.
-		</div>
-
-		<h3>[property:Integer b]</h3>
-		<div>
-		Vertex B index.
-		</div>
-
-		<h3>[property:Integer c]</h3>
-		<div>
-		Vertex C index.
-		</div>
-
-		<h3>[property:Vector3 normal]</h3>
-		<div>
-		Face normal - vector showing the direction of the Face3. If calculated automatically
-		(using [page:Geometry.computeFaceNormals]), this is the normalized cross product of two edges of the
-		triangle. Default is *(0, 0, 0)*.
-		</div>
-
-		<h3>[property:Color color]</h3>
-		<div>
-		Face color - for this to be used a material's [page:Material.vertexColors vertexColors] property
-		must be set to [page:Materials THREE.FaceColors].
-		</div>
-
-		<h3>[property:Array vertexNormals]</h3>
-		<div>
-		Array of 3 [page:Vector3 vertex normals].
-		</div>
-
-		<h3>[property:Array vertexColors]</h3>
-		<div>
-		Array of 3 vertex colors - for these to be used a material's [page:Material.vertexColors vertexColors] property
-		must be set to [page:Materials THREE.VertexColors].
-		</div>
-
-
-		<h3>[property:Integer materialIndex]</h3>
-		<div>
-		Material index (points to an index in the associated array of materials). Default is *0*.
-		</div>
-
-		<h2>Methods</h2>
-
-		<h3>[method:Face3 clone]()</h3>
-		<div>Creates a new clone of the Face3 object.</div>
-
-		<h3>[method:Face3 copy]( [page:Face3 face3] )</h3>
-		<div>Copy the paramaters of another Face3 into this.</div>
-
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		<h1>[name]</h1>
+
+		<div class="desc">
+		Triangular face used in [page:Geometry]. These are created automatically for all
+		standard geometry types, however if you are building a custom geometry you will have to
+		create them manually.
+		</div>
+
+
+		<h2>Examples</h2>
+
+		<div>[example:misc_ubiquity_test ubiquity / test ]</div>
+		<div>[example:svg_sandbox svg / sandbox ]</div>
+		<div>[example:misc_exporter_obj exporter / obj ]</div>
+		<div>[example:webgl_shaders_vector WebGL / shaders / vector ]</div>
+
+
+		<code>
+var material = new THREE.MeshStandardMaterial( { color : 0x00cc00 } );
+
+//create a triangular geometry
+var geometry = new THREE.Geometry();
+geometry.vertices.push( new THREE.Vector3( -50, -50, 0 ) );
+geometry.vertices.push( new THREE.Vector3(  50, -50, 0 ) );
+geometry.vertices.push( new THREE.Vector3(  50,  50, 0 ) );
+
+//create a new face using vertices 0, 1, 2
+var normal = new THREE.Vector3( 0, 1, 0 ); //optional
+var color = new THREE.Color( 0xffaa00 ); //optional
+var materialIndex = 0; //optional
+var face = new THREE.Face3( 0, 1, 2, normal, color, materialIndex );
+
+//add the face to the geometry's faces array
+geometry.faces.push( face );
+
+//the face normals and vertex normals can be calculated automatically if not supplied above
+geometry.computeFaceNormals();
+geometry.computeVertexNormals();
+
+scene.add( new THREE.Mesh( geometry, material ) );
+	</code>
+
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( [page:Integer a], [page:Integer b], [page:Integer c], [page:Vector3 normal], [page:Color color], [page:Integer materialIndex] )</h3>
+		<div>
+		a — Vertex A index.<br />
+		b — Vertex B index.<br />
+		c — Vertex C index.<br /><br />
+
+		normal — (optional) Face normal ([page:Vector3 Vector3]) or array of vertex normals.
+		If a single vector is passed in, this sets [page:.normal], otherwise if an array of three
+		vectors is passed in this sets [page:.vertexNormals]<br /><br />
+
+		color — (optional) Face [page:Color color] or array of vertex [page:Color colors].
+		If a single vector is passed in, this sets [page:.color], otherwise if an array of three
+		vectors is passed in this sets [page:.vertexColors]<br /><br />
+
+		materialIndex — (optional) which index of an array of materials to associate
+		with the face.
+		</div>
+
+		<h2>Properties</h2>
+
+		<h3>[property:Integer a]</h3>
+		<div>
+		Vertex A index.
+		</div>
+
+		<h3>[property:Integer b]</h3>
+		<div>
+		Vertex B index.
+		</div>
+
+		<h3>[property:Integer c]</h3>
+		<div>
+		Vertex C index.
+		</div>
+
+		<h3>[property:Vector3 normal]</h3>
+		<div>
+		Face normal - vector showing the direction of the Face3. If calculated automatically
+		(using [page:Geometry.computeFaceNormals]), this is the normalized cross product of two edges of the
+		triangle. Default is *(0, 0, 0)*.
+		</div>
+
+		<h3>[property:Color color]</h3>
+		<div>
+		Face color - for this to be used a material's [page:Material.vertexColors vertexColors] property
+		must be set to [page:Materials THREE.FaceColors].
+		</div>
+
+		<h3>[property:Array vertexNormals]</h3>
+		<div>
+		Array of 3 [page:Vector3 vertex normals].
+		</div>
+
+		<h3>[property:Array vertexColors]</h3>
+		<div>
+		Array of 3 vertex colors - for these to be used a material's [page:Material.vertexColors vertexColors] property
+		must be set to [page:Materials THREE.VertexColors].
+		</div>
+
+
+		<h3>[property:Integer materialIndex]</h3>
+		<div>
+		Material index (points to an index in the associated array of materials). Default is *0*.
+		</div>
+
+		<h2>Methods</h2>
+
+		<h3>[method:Face3 clone]()</h3>
+		<div>Creates a new clone of the Face3 object.</div>
+
+		<h3>[method:Face3 copy]( [page:Face3 face3] )</h3>
+		<div>Copy the paramaters of another Face3 into this.</div>
+
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 1 - 5
docs/api/core/Geometry.html

@@ -107,8 +107,7 @@
 		<h3>[property:array lineDistances]</h3>
 		<div>
 		An array containing distances between vertices for Line geometries.
-		This is required for [page:LineSegments] / [page:LineDashedMaterial] to render correctly.
-		Line distances can be generated automatically with [page:.computeLineDistances].
+		This is required for [page:LineDashedMaterial] to render correctly.
 		</div>
 
 		<h3>[property:Array morphTargets]</h3>
@@ -242,9 +241,6 @@
 		<h3>[method:null computeFlatVertexNormals]()</h3>
 		<div>Computes flat [page:Face3.vertexNormals vertex normals]. Sets the vertex normal of each vertex of each face to be the same as the face's normal.</div>
 
-		<h3>[method:null computeLineDistances]()</h3>
-		<div>Compute [page:.lineDistances].</div>
-
 		<h3>[method:null computeMorphNormals]()</h3>
 		<div>Computes [page:.morphNormals].</div>
 

+ 7 - 1
docs/api/deprecated/DeprecatedList.html

@@ -153,6 +153,12 @@
 
 		<h2>Geometry</h2>
 
+		<div>
+			Geometry.computeTangents() has been removed.<br /><br />
+
+			Geometry.computeLineDistances() has been removed. Use [page:Line.computeLineDistances] instead.<br /><br />
+		</div>
+
 		<h3>[page:BufferGeometry]</h3>
 		<div>
 			BufferGeometry.addIndex has been renamed to [page:BufferGeometry.setIndex].<br /><br />
@@ -458,7 +464,7 @@
 
 		<h3>[page:LensFlare]</h3>
 		<div>
-			LensFlare has been moved to [link:https://github.com/mrdoob/three.js/blob/master/examples/js/objects/LensFlare.js /examples/js/objects/LensFlare.js].
+			LensFlare has been moved to [link:https://github.com/mrdoob/three.js/blob/master/examples/js/objects/Lensflare.js /examples/js/objects/Lensflare.js].
 		</div>
 
 

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

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 101 - 101
docs/api/extras/core/Shape.html

@@ -1,101 +1,101 @@
-<!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:Path] &rarr;
-
-		<h1>[name]</h1>
-
-		<div class="desc">
-		Defines an arbitrary 2d shape plane using paths with optional holes. It can be used with [page:ExtrudeGeometry],
-		[page:ShapeGeometry], to get points, or to get triangulated faces.
-		</div>
-
-		<code>
-		var heartShape = new THREE.Shape();
-
-		heartShape.moveTo( 25, 25 );
-		heartShape.bezierCurveTo( 25, 25, 20, 0, 0, 0 );
-		heartShape.bezierCurveTo( 30, 0, 30, 35,30,35 );
-		heartShape.bezierCurveTo( 30, 55, 10, 77, 25, 95 );
-		heartShape.bezierCurveTo( 60, 77, 80, 55, 80, 35 );
-		heartShape.bezierCurveTo( 80, 35, 80, 0, 50, 0 );
-		heartShape.bezierCurveTo( 35, 0, 25, 25, 25, 25 );
-
-		var extrudeSettings = { amount: 8, bevelEnabled: true, bevelSegments: 2, steps: 2, bevelSize: 1, bevelThickness: 1 };
-
-		var geometry = new THREE.ExtrudeGeometry( heartShape, extrudeSettings );
-
-		var mesh = new THREE.Mesh( geometry, new THREE.MeshPhongMaterial() );
-		</code>
-
-		<h2>Examples</h2>
-
-		<div>
-		[example:webgl_geometry_shapes geometry / shapes ]<br/>
-		[example:webgl_geometry_extrude_shapes geometry / extrude / shapes ]<br/>
-		[example:webgl_geometry_extrude_shapes2 geometry / extrude / shapes2 ]<br/>
-		</div>
-
-
-		<h2>Constructor</h2>
-
-
-		<h3>[name]( [page:Array points] )</h3>
-		<div>
-		points -- (optional) array of [page:Vector2 Vector2s].<br /><br />
-
-		Creates a Shape from the points. The first point defines the offset, then successive points
-		are added to the [page:CurvePath.curves curves] array as [page:LineCurve LineCurves].<br /><br />
-
-		If no points are specified, an empty shape is created and the [page:.currentPoint] is set to
-		the origin.
-		</div>
-
-
-		<h2>Properties</h2>
-		<div>See the base [page:Path] class for common properties.</div>
-
-		<h3>[property:String uuid]</h3>
-		<div>
-		[link:http://en.wikipedia.org/wiki/Universally_unique_identifier UUID] of this instance. This gets automatically assigned, so this shouldn't be edited.
-		</div>
-
-		<h3>[property:array holes]</h3>
-		<div>An array of [page:Path paths] that define the holes in the shape.</div>
-
-		<h2>Methods</h2>
-		<div>See the base [page:Path] class for common methods.</div>
-
-		<h3>[method:Array extractPoints]( [page:Integer divisions] )</h3>
-		<div>
-		divisions -- The fineness of the result.<br /><br />
-
-		Call [page:Curve.getPoints getPoints] on the shape and the [page:.holes] array, and return an object of the form:
-		<code>
-{
-	shape
-	holes
-}
-		</code>
-		where shape and holes are arrays of [page:Vector2 Vector2s].
-		</div>
-
-		<h3>[method:Array getPointsHoles]( [page:Integer divisions] )</h3>
-		<div>
-		divisions -- The fineness of the result.<br /><br />
-
-		Get an array of [page:Vector2 Vector2s] that represent the holes in the shape.
-		</div>
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!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:Path] &rarr;
+
+		<h1>[name]</h1>
+
+		<div class="desc">
+		Defines an arbitrary 2d shape plane using paths with optional holes. It can be used with [page:ExtrudeGeometry],
+		[page:ShapeGeometry], to get points, or to get triangulated faces.
+		</div>
+
+		<code>
+		var heartShape = new THREE.Shape();
+
+		heartShape.moveTo( 25, 25 );
+		heartShape.bezierCurveTo( 25, 25, 20, 0, 0, 0 );
+		heartShape.bezierCurveTo( 30, 0, 30, 35,30,35 );
+		heartShape.bezierCurveTo( 30, 55, 10, 77, 25, 95 );
+		heartShape.bezierCurveTo( 60, 77, 80, 55, 80, 35 );
+		heartShape.bezierCurveTo( 80, 35, 80, 0, 50, 0 );
+		heartShape.bezierCurveTo( 35, 0, 25, 25, 25, 25 );
+
+		var extrudeSettings = { amount: 8, bevelEnabled: true, bevelSegments: 2, steps: 2, bevelSize: 1, bevelThickness: 1 };
+
+		var geometry = new THREE.ExtrudeGeometry( heartShape, extrudeSettings );
+
+		var mesh = new THREE.Mesh( geometry, new THREE.MeshPhongMaterial() );
+		</code>
+
+		<h2>Examples</h2>
+
+		<div>
+		[example:webgl_geometry_shapes geometry / shapes ]<br/>
+		[example:webgl_geometry_extrude_shapes geometry / extrude / shapes ]<br/>
+		[example:webgl_geometry_extrude_shapes2 geometry / extrude / shapes2 ]<br/>
+		</div>
+
+
+		<h2>Constructor</h2>
+
+
+		<h3>[name]( [page:Array points] )</h3>
+		<div>
+		points -- (optional) array of [page:Vector2 Vector2s].<br /><br />
+
+		Creates a Shape from the points. The first point defines the offset, then successive points
+		are added to the [page:CurvePath.curves curves] array as [page:LineCurve LineCurves].<br /><br />
+
+		If no points are specified, an empty shape is created and the [page:.currentPoint] is set to
+		the origin.
+		</div>
+
+
+		<h2>Properties</h2>
+		<div>See the base [page:Path] class for common properties.</div>
+
+		<h3>[property:String uuid]</h3>
+		<div>
+		[link:http://en.wikipedia.org/wiki/Universally_unique_identifier UUID] of this instance. This gets automatically assigned, so this shouldn't be edited.
+		</div>
+
+		<h3>[property:array holes]</h3>
+		<div>An array of [page:Path paths] that define the holes in the shape.</div>
+
+		<h2>Methods</h2>
+		<div>See the base [page:Path] class for common methods.</div>
+
+		<h3>[method:Array extractPoints]( [page:Integer divisions] )</h3>
+		<div>
+		divisions -- The fineness of the result.<br /><br />
+
+		Call [page:Curve.getPoints getPoints] on the shape and the [page:.holes] array, and return an object of the form:
+		<code>
+{
+	shape
+	holes
+}
+		</code>
+		where shape and holes are arrays of [page:Vector2 Vector2s].
+		</div>
+
+		<h3>[method:Array getPointsHoles]( [page:Integer divisions] )</h3>
+		<div>
+		divisions -- The fineness of the result.<br /><br />
+
+		Get an array of [page:Vector2 Vector2s] that represent the holes in the shape.
+		</div>
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

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

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/extras/curves/CubicBezierCurve.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/extras/curves/CubicBezierCurve3.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/extras/curves/EllipseCurve.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/extras/curves/LineCurve.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/extras/curves/LineCurve3.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

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

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/extras/curves/QuadraticBezierCurve3.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 72 - 72
docs/api/extras/curves/SplineCurve.html

@@ -1,72 +1,72 @@
-<!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:Curve] &rarr;
-
-		<h1>[name]</h1>
-
-		<div class="desc">
-		Create a smooth 2d spline curve from a series of points. Internally this uses
-		[page:Interpolations.CatmullRom] to create the curve.
-		</div>
-
-		<h2>Example</h2>
-
-<code>
-// Create a sine-like wave
-var curve = new THREE.SplineCurve( [
-	new THREE.Vector2( -10, 0 ),
-	new THREE.Vector2( -5, 5 ),
-	new THREE.Vector2( 0, 0 ),
-	new THREE.Vector2( 5, -5 ),
-	new THREE.Vector2( 10, 0 )
-] );
-
-var points = curve.getPoints( 50 );
-var geometry = new THREE.BufferGeometry().setFromPoints( points );
-
-var material = new THREE.LineBasicMaterial( { color : 0xff0000 } );
-
-// Create the final object to add to the scene
-var splineObject = new THREE.Line( geometry, material );
-</code>
-
-		<h2>Constructor</h2>
-
-
-		<h3>[name]( [page:Array points] )</h3>
-		<div>points – An array of [page:Vector2] points that define the curve.</div>
-
-
-		<h2>Properties</h2>
-		<div>See the base [page:Curve] class for common properties.</div>
-
-		<h3>[property:Boolean isSplineCurve]</h3>
-		<div>
-			Used to check whether this or derived classes are SplineCurves. Default is *true*.<br /><br />
-
-			You should not change this, as it used internally for optimisation.
-		</div>
-
-		<h3>[property:Array points]</h3>
-		<div>The array of [page:Vector2] points that define the curve.</div>
-
-
-
-		<h2>Methods</h2>
-		<div>See the base [page:Curve] class for common methods.</div>
-
-
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!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:Curve] &rarr;
+
+		<h1>[name]</h1>
+
+		<div class="desc">
+		Create a smooth 2d spline curve from a series of points. Internally this uses
+		[page:Interpolations.CatmullRom] to create the curve.
+		</div>
+
+		<h2>Example</h2>
+
+<code>
+// Create a sine-like wave
+var curve = new THREE.SplineCurve( [
+	new THREE.Vector2( -10, 0 ),
+	new THREE.Vector2( -5, 5 ),
+	new THREE.Vector2( 0, 0 ),
+	new THREE.Vector2( 5, -5 ),
+	new THREE.Vector2( 10, 0 )
+] );
+
+var points = curve.getPoints( 50 );
+var geometry = new THREE.BufferGeometry().setFromPoints( points );
+
+var material = new THREE.LineBasicMaterial( { color : 0xff0000 } );
+
+// Create the final object to add to the scene
+var splineObject = new THREE.Line( geometry, material );
+</code>
+
+		<h2>Constructor</h2>
+
+
+		<h3>[name]( [page:Array points] )</h3>
+		<div>points – An array of [page:Vector2] points that define the curve.</div>
+
+
+		<h2>Properties</h2>
+		<div>See the base [page:Curve] class for common properties.</div>
+
+		<h3>[property:Boolean isSplineCurve]</h3>
+		<div>
+			Used to check whether this or derived classes are SplineCurves. Default is *true*.<br /><br />
+
+			You should not change this, as it used internally for optimisation.
+		</div>
+
+		<h3>[property:Array points]</h3>
+		<div>The array of [page:Vector2] points that define the curve.</div>
+
+
+
+		<h2>Methods</h2>
+		<div>See the base [page:Curve] class for common methods.</div>
+
+
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 1 - 1
docs/api/extras/objects/ImmediateRenderObject.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/geometries/CircleBufferGeometry.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 67 - 67
docs/api/geometries/CylinderBufferGeometry.html

@@ -1,67 +1,67 @@
-<!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:BufferGeometry] &rarr;
-
-		<h1>[name]</h1>
-
-		<div class="desc">This is the [page:BufferGeometry] port of [page:CylinderGeometry].</div>
-
-		<iframe id="scene" src="scenes/geometry-browser.html#CylinderBufferGeometry"></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>Example</h2>
-
-		<code>var geometry = new THREE.CylinderBufferGeometry( 5, 5, 20, 32 );
-		var material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
-		var cylinder = new THREE.Mesh( geometry, material );
-		scene.add( cylinder );
-		</code>
-
-		<h2>Constructor</h2>
-
-		<h3>[name]([page:Float radiusTop], [page:Float radiusBottom], [page:Float height], [page:Integer radialSegments], [page:Integer heightSegments], [page:Boolean openEnded], [page:Float thetaStart], [page:Float thetaLength])</h3>
-		<div>
-		radiusTop — Radius of the cylinder at the top. Default is 1.<br />
-		radiusBottom — Radius of the cylinder at the bottom. Default is 1.<br />
-		height — Height of the cylinder. Default is 1.<br />
-		radialSegments — Number of segmented faces around the circumference of the cylinder. Default is 8<br />
-		heightSegments — Number of rows of faces along the height of the cylinder. Default is 1.<br />
-		openEnded — A Boolean indicating whether the ends of the cylinder are open or capped. Default is false, meaning capped.<br />
-		thetaStart — Start angle for first segment, default = 0 (three o'clock position).<br />
-		thetaLength — The central angle, often called theta, of the circular sector. The default is 2*Pi, which makes for a complete cylinder.
-		</div>
-
-		<h2>Properties</h2>
-
-		<div>
-		Each of the constructor parameters is accessible as a property of the same name. Any modification of these properties after instantiation does not change the geometry.
-		</div>
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/CylinderGeometry.js src/geometries/CylinderGeometry.js]
-	</body>
-</html>
+<!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:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<div class="desc">This is the [page:BufferGeometry] port of [page:CylinderGeometry].</div>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#CylinderBufferGeometry"></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>Example</h2>
+
+		<code>var geometry = new THREE.CylinderBufferGeometry( 5, 5, 20, 32 );
+		var material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
+		var cylinder = new THREE.Mesh( geometry, material );
+		scene.add( cylinder );
+		</code>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]([page:Float radiusTop], [page:Float radiusBottom], [page:Float height], [page:Integer radialSegments], [page:Integer heightSegments], [page:Boolean openEnded], [page:Float thetaStart], [page:Float thetaLength])</h3>
+		<div>
+		radiusTop — Radius of the cylinder at the top. Default is 1.<br />
+		radiusBottom — Radius of the cylinder at the bottom. Default is 1.<br />
+		height — Height of the cylinder. Default is 1.<br />
+		radialSegments — Number of segmented faces around the circumference of the cylinder. Default is 8<br />
+		heightSegments — Number of rows of faces along the height of the cylinder. Default is 1.<br />
+		openEnded — A Boolean indicating whether the ends of the cylinder are open or capped. Default is false, meaning capped.<br />
+		thetaStart — Start angle for first segment, default = 0 (three o'clock position).<br />
+		thetaLength — The central angle, often called theta, of the circular sector. The default is 2*Pi, which makes for a complete cylinder.
+		</div>
+
+		<h2>Properties</h2>
+
+		<div>
+		Each of the constructor parameters is accessible as a property of the same name. Any modification of these properties after instantiation does not change the geometry.
+		</div>
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/CylinderGeometry.js src/geometries/CylinderGeometry.js]
+	</body>
+</html>

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

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/geometries/DodecahedronGeometry.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

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

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/geometries/IcosahedronGeometry.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

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

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/geometries/OctahedronGeometry.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/geometries/ParametricBufferGeometry.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/geometries/ParametricGeometry.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 63 - 63
docs/api/geometries/PlaneGeometry.html

@@ -1,63 +1,63 @@
-<!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:Geometry] &rarr;
-
-		<h1>[name]</h1>
-
-		<div class="desc">A class for generating plane geometries</div>
-
-		<iframe id="scene" src="scenes/geometry-browser.html#PlaneGeometry"></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>Example</h2>
-
-		<code>var geometry = new THREE.PlaneGeometry( 5, 20, 32 );
-		var material = new THREE.MeshBasicMaterial( {color: 0xffff00, side: THREE.DoubleSide} );
-		var plane = new THREE.Mesh( geometry, material );
-		scene.add( plane );
-		</code>
-
-		<h2>Constructor</h2>
-
-		<h3>[name]([page:Float width], [page:Float height], [page:Integer widthSegments], [page:Integer heightSegments])</h3>
-		<div>
-		width — Width along the X axis. Default is 1.<br />
-		height — Height along the Y axis. Default is 1.<br />
-		widthSegments — Optional. Default is 1. <br />
-		heightSegments — Optional. Default is 1.
-		</div>
-
-		<h2>Properties</h2>
-
-		<div>
-		Each of the contructor parameters is accessible in the parameters property of the object. Any modification of these properties after instantiation does not change the geometry.
-		</div>
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!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:Geometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<div class="desc">A class for generating plane geometries</div>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#PlaneGeometry"></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>Example</h2>
+
+		<code>var geometry = new THREE.PlaneGeometry( 5, 20, 32 );
+		var material = new THREE.MeshBasicMaterial( {color: 0xffff00, side: THREE.DoubleSide} );
+		var plane = new THREE.Mesh( geometry, material );
+		scene.add( plane );
+		</code>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]([page:Float width], [page:Float height], [page:Integer widthSegments], [page:Integer heightSegments])</h3>
+		<div>
+		width — Width along the X axis. Default is 1.<br />
+		height — Height along the Y axis. Default is 1.<br />
+		widthSegments — Optional. Default is 1. <br />
+		heightSegments — Optional. Default is 1.
+		</div>
+
+		<h2>Properties</h2>
+
+		<div>
+		Each of the contructor parameters is accessible in the parameters property of the object. Any modification of these properties after instantiation does not change the geometry.
+		</div>
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 1 - 1
docs/api/geometries/PolyhedronBufferGeometry.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/geometries/PolyhedronGeometry.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/geometries/RingBufferGeometry.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/geometries/ShapeBufferGeometry.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/geometries/ShapeGeometry.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/geometries/SphereBufferGeometry.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

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

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/geometries/TetrahedronGeometry.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 160 - 160
docs/api/geometries/TextBufferGeometry.html

@@ -1,160 +1,160 @@
-<!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:ExtrudeBufferGeometry] &rarr;
-
-		<h1>[name]</h1>
-
-		<div class="desc">
-			A class for generating text as a single geometry. It is constructed by providing a string of text, and a hash of
-			parameters consisting of a loaded [page:Font] and settings for the geometry's parent [page:ExtrudeBufferGeometry].
-			See the [page:Font], [page:FontLoader] and [page:Creating_Text] pages for additional details.
-		</div>
-
-		<iframe id="scene" src="scenes/geometry-browser.html#TextBufferGeometry"></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>Examples</h2>
-
-		<div>
-		[example:webgl_geometry_text geometry / text ]
-		</div>
-
-		<code>
-		var loader = new THREE.FontLoader();
-
-		loader.load( 'fonts/helvetiker_regular.typeface.json', function ( font ) {
-
-			var geometry = new THREE.TextBufferGeometry( 'Hello three.js!', {
-				font: font,
-				size: 80,
-				height: 5,
-				curveSegments: 12,
-				bevelEnabled: true,
-				bevelThickness: 10,
-				bevelSize: 8,
-				bevelSegments: 5
-			} );
-		} );
-		</code>
-
-		<h2>Constructor</h2>
-
-		<h3>[name]([page:String text], [page:Object parameters])</h3>
-		<div>
-		text — The text that needs to be shown. <br />
-		parameters — Object that can contains the following parameters.
-		<ul>
-			<li>font — an instance of THREE.Font.</li>
-			<li>size — Float. Size of the text. Default is 100.</li>
-			<li>height — Float. Thickness to extrude text.  Default is 50.</li>
-			<li>curveSegments — Integer. Number of points on the curves. Default is 12.</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>bevelSize — Float. How far from text outline is bevel. Default is 8.</li>
-			<li>bevelSegments — Integer. Number of bevel segments. Default is 3.</li>
-		</ul>
-		</div>
-
-		<h2>Available Fonts</h2>
-
-		<div>
-		TextGeometry uses <a href='http://gero3.github.io/facetype.js/' target="_top">typeface.json</a> generated fonts.
-		Some existing fonts can be found located in <b>/examples/fonts</b> and must be included in the page.
-		</div>
-		<table>
-			<tr>
-				<th>Font</th>
-				<th>Weight</th>
-				<th>Style</th>
-				<th>File Path</th>
-			</tr>
-			<tr>
-				<td>helvetiker</td>
-				<td>normal</td>
-				<td>normal</td>
-				<td>/examples/fonts/helvetiker_regular.typeface.json</td>
-			</tr>
-			<tr>
-				<td>helvetiker</td>
-				<td>bold</td>
-				<td>normal</td>
-				<td>/examples/fonts/helvetiker_bold.typeface.json</td>
-			</tr>
-			<tr>
-				<td>optimer</td>
-				<td>normal</td>
-				<td>normal</td>
-				<td>/examples/fonts/optimer_regular.typeface.json</td>
-			</tr>
-			<tr>
-				<td>optimer</td>
-				<td>bold</td>
-				<td>normal</td>
-				<td>/examples/fonts/optimer_bold.typeface.json</td>
-			</tr>
-			<tr>
-				<td>gentilis</td>
-				<td>normal</td>
-				<td>normal</td>
-				<td>/examples/fonts/gentilis_regular.typeface.json</td>
-			</tr>
-			<tr>
-				<td>gentilis</td>
-				<td>bold</td>
-				<td>normal</td>
-				<td>/examples/fonts/gentilis_bold.typeface.json</td>
-			</tr>
-			<tr>
-				<td>droid sans</td>
-				<td>normal</td>
-				<td>normal</td>
-				<td>/examples/fonts/droid/droid_sans_regular.typeface.json</td>
-			</tr>
-			<tr>
-				<td>droid sans</td>
-				<td>bold</td>
-				<td>normal</td>
-				<td>/examples/fonts/droid/droid_sans_bold.typeface.json</td>
-			</tr>
-			<tr>
-				<td>droid serif</td>
-				<td>normal</td>
-				<td>normal</td>
-				<td>/examples/fonts/droid/droid_serif_regular.typeface.json</td>
-			</tr>
-			<tr>
-				<td>droid serif</td>
-				<td>bold</td>
-				<td>normal</td>
-				<td>/examples/fonts/droid/droid_serif_bold.typeface.json</td>
-			</tr>
-		</table>
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/TextGeometry.js src/TextGeometry.js]
-	</body>
-</html>
+<!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:ExtrudeBufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<div class="desc">
+			A class for generating text as a single geometry. It is constructed by providing a string of text, and a hash of
+			parameters consisting of a loaded [page:Font] and settings for the geometry's parent [page:ExtrudeBufferGeometry].
+			See the [page:Font], [page:FontLoader] and [page:Creating_Text] pages for additional details.
+		</div>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#TextBufferGeometry"></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>Examples</h2>
+
+		<div>
+		[example:webgl_geometry_text geometry / text ]
+		</div>
+
+		<code>
+		var loader = new THREE.FontLoader();
+
+		loader.load( 'fonts/helvetiker_regular.typeface.json', function ( font ) {
+
+			var geometry = new THREE.TextBufferGeometry( 'Hello three.js!', {
+				font: font,
+				size: 80,
+				height: 5,
+				curveSegments: 12,
+				bevelEnabled: true,
+				bevelThickness: 10,
+				bevelSize: 8,
+				bevelSegments: 5
+			} );
+		} );
+		</code>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]([page:String text], [page:Object parameters])</h3>
+		<div>
+		text — The text that needs to be shown. <br />
+		parameters — Object that can contains the following parameters.
+		<ul>
+			<li>font — an instance of THREE.Font.</li>
+			<li>size — Float. Size of the text. Default is 100.</li>
+			<li>height — Float. Thickness to extrude text.  Default is 50.</li>
+			<li>curveSegments — Integer. Number of points on the curves. Default is 12.</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>bevelSize — Float. How far from text outline is bevel. Default is 8.</li>
+			<li>bevelSegments — Integer. Number of bevel segments. Default is 3.</li>
+		</ul>
+		</div>
+
+		<h2>Available Fonts</h2>
+
+		<div>
+		TextGeometry uses <a href='http://gero3.github.io/facetype.js/' target="_top">typeface.json</a> generated fonts.
+		Some existing fonts can be found located in <b>/examples/fonts</b> and must be included in the page.
+		</div>
+		<table>
+			<tr>
+				<th>Font</th>
+				<th>Weight</th>
+				<th>Style</th>
+				<th>File Path</th>
+			</tr>
+			<tr>
+				<td>helvetiker</td>
+				<td>normal</td>
+				<td>normal</td>
+				<td>/examples/fonts/helvetiker_regular.typeface.json</td>
+			</tr>
+			<tr>
+				<td>helvetiker</td>
+				<td>bold</td>
+				<td>normal</td>
+				<td>/examples/fonts/helvetiker_bold.typeface.json</td>
+			</tr>
+			<tr>
+				<td>optimer</td>
+				<td>normal</td>
+				<td>normal</td>
+				<td>/examples/fonts/optimer_regular.typeface.json</td>
+			</tr>
+			<tr>
+				<td>optimer</td>
+				<td>bold</td>
+				<td>normal</td>
+				<td>/examples/fonts/optimer_bold.typeface.json</td>
+			</tr>
+			<tr>
+				<td>gentilis</td>
+				<td>normal</td>
+				<td>normal</td>
+				<td>/examples/fonts/gentilis_regular.typeface.json</td>
+			</tr>
+			<tr>
+				<td>gentilis</td>
+				<td>bold</td>
+				<td>normal</td>
+				<td>/examples/fonts/gentilis_bold.typeface.json</td>
+			</tr>
+			<tr>
+				<td>droid sans</td>
+				<td>normal</td>
+				<td>normal</td>
+				<td>/examples/fonts/droid/droid_sans_regular.typeface.json</td>
+			</tr>
+			<tr>
+				<td>droid sans</td>
+				<td>bold</td>
+				<td>normal</td>
+				<td>/examples/fonts/droid/droid_sans_bold.typeface.json</td>
+			</tr>
+			<tr>
+				<td>droid serif</td>
+				<td>normal</td>
+				<td>normal</td>
+				<td>/examples/fonts/droid/droid_serif_regular.typeface.json</td>
+			</tr>
+			<tr>
+				<td>droid serif</td>
+				<td>bold</td>
+				<td>normal</td>
+				<td>/examples/fonts/droid/droid_serif_bold.typeface.json</td>
+			</tr>
+		</table>
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/TextGeometry.js src/TextGeometry.js]
+	</body>
+</html>

+ 160 - 160
docs/api/geometries/TextGeometry.html

@@ -1,160 +1,160 @@
-<!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:ExtrudeGeometry] &rarr;
-
-		<h1>[name]</h1>
-
-		<div class="desc">
-			A class for generating text as a single geometry. It is constructed by providing a string of text, and a hash of 
-			parameters consisting of a loaded [page:Font] and settings for the geometry's parent [page:ExtrudeGeometry].
-			See the [page:Font], [page:FontLoader] and [page:Creating_Text] pages for additional details.
-		</div>
-
-		<iframe id="scene" src="scenes/geometry-browser.html#TextGeometry"></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>Examples</h2>
-
-		<div>
-		[example:webgl_geometry_text geometry / text ]
-		</div>
-
-		<code>
-		var loader = new THREE.FontLoader();
-		
-		loader.load( 'fonts/helvetiker_regular.typeface.json', function ( font ) {
-
-			var geometry = new THREE.TextGeometry( 'Hello three.js!', {
-				font: font,
-				size: 80,
-				height: 5,
-				curveSegments: 12,
-				bevelEnabled: true,
-				bevelThickness: 10,
-				bevelSize: 8,
-				bevelSegments: 5
-			} );
-		} );			
-		</code>
-
-		<h2>Constructor</h2>
-
-		<h3>[name]([page:String text], [page:Object parameters])</h3>
-		<div>
-		text — The text that needs to be shown. <br />
-		parameters — Object that can contains the following parameters.
-		<ul>
-			<li>font — an instance of THREE.Font.</li>
-			<li>size — Float. Size of the text. Default is 100.</li>
-			<li>height — Float. Thickness to extrude text.  Default is 50.</li>
-			<li>curveSegments — Integer. Number of points on the curves. Default is 12.</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>bevelSize — Float. How far from text outline is bevel. Default is 8.</li>
-			<li>bevelSegments — Integer. Number of bevel segments. Default is 3.</li>
-		</ul>
-		</div>
-
-		<h2>Available Fonts</h2>
-
-		<div>
-		TextGeometry uses <a href='http://gero3.github.io/facetype.js/' target="_top">typeface.json</a> generated fonts.
-		Some existing fonts can be found located in <b>/examples/fonts</b> and must be included in the page.
-		</div>
-		<table>
-			<tr>
-				<th>Font</th>
-				<th>Weight</th>
-				<th>Style</th>
-				<th>File Path</th>
-			</tr>
-			<tr>
-				<td>helvetiker</td>
-				<td>normal</td>
-				<td>normal</td>
-				<td>/examples/fonts/helvetiker_regular.typeface.json</td>
-			</tr>
-			<tr>
-				<td>helvetiker</td>
-				<td>bold</td>
-				<td>normal</td>
-				<td>/examples/fonts/helvetiker_bold.typeface.json</td>
-			</tr>
-			<tr>
-				<td>optimer</td>
-				<td>normal</td>
-				<td>normal</td>
-				<td>/examples/fonts/optimer_regular.typeface.json</td>
-			</tr>
-			<tr>
-				<td>optimer</td>
-				<td>bold</td>
-				<td>normal</td>
-				<td>/examples/fonts/optimer_bold.typeface.json</td>
-			</tr>
-			<tr>
-				<td>gentilis</td>
-				<td>normal</td>
-				<td>normal</td>
-				<td>/examples/fonts/gentilis_regular.typeface.json</td>
-			</tr>
-			<tr>
-				<td>gentilis</td>
-				<td>bold</td>
-				<td>normal</td>
-				<td>/examples/fonts/gentilis_bold.typeface.json</td>
-			</tr>
-			<tr>
-				<td>droid sans</td>
-				<td>normal</td>
-				<td>normal</td>
-				<td>/examples/fonts/droid/droid_sans_regular.typeface.json</td>
-			</tr>
-			<tr>
-				<td>droid sans</td>
-				<td>bold</td>
-				<td>normal</td>
-				<td>/examples/fonts/droid/droid_sans_bold.typeface.json</td>
-			</tr>
-			<tr>
-				<td>droid serif</td>
-				<td>normal</td>
-				<td>normal</td>
-				<td>/examples/fonts/droid/droid_serif_regular.typeface.json</td>
-			</tr>
-			<tr>
-				<td>droid serif</td>
-				<td>bold</td>
-				<td>normal</td>
-				<td>/examples/fonts/droid/droid_serif_bold.typeface.json</td>
-			</tr>
-		</table>
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!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:ExtrudeGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<div class="desc">
+			A class for generating text as a single geometry. It is constructed by providing a string of text, and a hash of 
+			parameters consisting of a loaded [page:Font] and settings for the geometry's parent [page:ExtrudeGeometry].
+			See the [page:Font], [page:FontLoader] and [page:Creating_Text] pages for additional details.
+		</div>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#TextGeometry"></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>Examples</h2>
+
+		<div>
+		[example:webgl_geometry_text geometry / text ]
+		</div>
+
+		<code>
+		var loader = new THREE.FontLoader();
+		
+		loader.load( 'fonts/helvetiker_regular.typeface.json', function ( font ) {
+
+			var geometry = new THREE.TextGeometry( 'Hello three.js!', {
+				font: font,
+				size: 80,
+				height: 5,
+				curveSegments: 12,
+				bevelEnabled: true,
+				bevelThickness: 10,
+				bevelSize: 8,
+				bevelSegments: 5
+			} );
+		} );			
+		</code>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]([page:String text], [page:Object parameters])</h3>
+		<div>
+		text — The text that needs to be shown. <br />
+		parameters — Object that can contains the following parameters.
+		<ul>
+			<li>font — an instance of THREE.Font.</li>
+			<li>size — Float. Size of the text. Default is 100.</li>
+			<li>height — Float. Thickness to extrude text.  Default is 50.</li>
+			<li>curveSegments — Integer. Number of points on the curves. Default is 12.</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>bevelSize — Float. How far from text outline is bevel. Default is 8.</li>
+			<li>bevelSegments — Integer. Number of bevel segments. Default is 3.</li>
+		</ul>
+		</div>
+
+		<h2>Available Fonts</h2>
+
+		<div>
+		TextGeometry uses <a href='http://gero3.github.io/facetype.js/' target="_top">typeface.json</a> generated fonts.
+		Some existing fonts can be found located in <b>/examples/fonts</b> and must be included in the page.
+		</div>
+		<table>
+			<tr>
+				<th>Font</th>
+				<th>Weight</th>
+				<th>Style</th>
+				<th>File Path</th>
+			</tr>
+			<tr>
+				<td>helvetiker</td>
+				<td>normal</td>
+				<td>normal</td>
+				<td>/examples/fonts/helvetiker_regular.typeface.json</td>
+			</tr>
+			<tr>
+				<td>helvetiker</td>
+				<td>bold</td>
+				<td>normal</td>
+				<td>/examples/fonts/helvetiker_bold.typeface.json</td>
+			</tr>
+			<tr>
+				<td>optimer</td>
+				<td>normal</td>
+				<td>normal</td>
+				<td>/examples/fonts/optimer_regular.typeface.json</td>
+			</tr>
+			<tr>
+				<td>optimer</td>
+				<td>bold</td>
+				<td>normal</td>
+				<td>/examples/fonts/optimer_bold.typeface.json</td>
+			</tr>
+			<tr>
+				<td>gentilis</td>
+				<td>normal</td>
+				<td>normal</td>
+				<td>/examples/fonts/gentilis_regular.typeface.json</td>
+			</tr>
+			<tr>
+				<td>gentilis</td>
+				<td>bold</td>
+				<td>normal</td>
+				<td>/examples/fonts/gentilis_bold.typeface.json</td>
+			</tr>
+			<tr>
+				<td>droid sans</td>
+				<td>normal</td>
+				<td>normal</td>
+				<td>/examples/fonts/droid/droid_sans_regular.typeface.json</td>
+			</tr>
+			<tr>
+				<td>droid sans</td>
+				<td>bold</td>
+				<td>normal</td>
+				<td>/examples/fonts/droid/droid_sans_bold.typeface.json</td>
+			</tr>
+			<tr>
+				<td>droid serif</td>
+				<td>normal</td>
+				<td>normal</td>
+				<td>/examples/fonts/droid/droid_serif_regular.typeface.json</td>
+			</tr>
+			<tr>
+				<td>droid serif</td>
+				<td>bold</td>
+				<td>normal</td>
+				<td>/examples/fonts/droid/droid_serif_bold.typeface.json</td>
+			</tr>
+		</table>
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 1 - 1
docs/api/geometries/TorusBufferGeometry.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/geometries/TorusKnotBufferGeometry.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 105 - 105
docs/api/geometries/TubeBufferGeometry.html

@@ -1,105 +1,105 @@
-<!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:BufferGeometry] &rarr;
-
-		<h1>[name]</h1>
-
-		<div class="desc">Creates a tube that extrudes along a 3d curve.</div>
-
-		<iframe id="scene" src="scenes/geometry-browser.html#TubeBufferGeometry"></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>Example</h2>
-
-		<code>
-		function CustomSinCurve( scale ) {
-
-			THREE.Curve.call( this );
-
-			this.scale = ( scale === undefined ) ? 1 : scale;
-
-		}
-
-		CustomSinCurve.prototype = Object.create( THREE.Curve.prototype );
-		CustomSinCurve.prototype.constructor = CustomSinCurve;
-
-		CustomSinCurve.prototype.getPoint = function ( t ) {
-
-			var tx = t * 3 - 1.5;
-			var ty = Math.sin( 2 * Math.PI * t );
-			var tz = 0;
-
-			return new THREE.Vector3( tx, ty, tz ).multiplyScalar( this.scale );
-
-		};
-
-		var path = new CustomSinCurve( 10 );
-		var geometry = new THREE.TubeBufferGeometry( path, 20, 2, 8, false );
-		var material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
-		var mesh = new THREE.Mesh( geometry, material );
-		scene.add( mesh );
-		</code>
-
-		<h2>Constructor</h2>
-
-
-		<h3>[name]([page:Curve path], [page:Integer tubularSegments], [page:Float radius], [page:Integer radialSegments], [page:Boolean closed])</h3>
-		<div>
-		path — [page:Curve] - A path that inherits from the [page:Curve] base class<br />
-		tubularSegments — [page:Integer] - The number of segments that make up the tube, default is 64<br />
-		radius — [page:Float] - The radius of the tube, default is 1<br />
-		radialSegments — [page:Integer] - The number of segments that make up the cross-section, default is 8 <br />
-		closed — [page:Boolean] Is the tube open or closed, default is false <br />
-		</div>
-
-
-		<h2>Properties</h2>
-
-		<h3>[property:Object parameters]</h3>
-		<div>
-		An object with all of the parameters that were used to generate the geometry.
-		</div>
-
-		<h3>[property:Array tangents]</h3>
-		<div>
-		An array of [page:Vector3] tangents
-		</div>
-
-		<h3>[property:Array normals]</h3>
-		<div>
-		An array of [page:Vector3] normals
-		</div>
-
-		<h3>[property:Array binormals]</h3>
-		<div>
-		An array of [page:Vector3] binormals
-		</div>
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/TubeGeometry.js src/geometries/TubeGeometry.js]
-	</body>
-</html>
+<!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:BufferGeometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<div class="desc">Creates a tube that extrudes along a 3d curve.</div>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#TubeBufferGeometry"></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>Example</h2>
+
+		<code>
+		function CustomSinCurve( scale ) {
+
+			THREE.Curve.call( this );
+
+			this.scale = ( scale === undefined ) ? 1 : scale;
+
+		}
+
+		CustomSinCurve.prototype = Object.create( THREE.Curve.prototype );
+		CustomSinCurve.prototype.constructor = CustomSinCurve;
+
+		CustomSinCurve.prototype.getPoint = function ( t ) {
+
+			var tx = t * 3 - 1.5;
+			var ty = Math.sin( 2 * Math.PI * t );
+			var tz = 0;
+
+			return new THREE.Vector3( tx, ty, tz ).multiplyScalar( this.scale );
+
+		};
+
+		var path = new CustomSinCurve( 10 );
+		var geometry = new THREE.TubeBufferGeometry( path, 20, 2, 8, false );
+		var material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
+		var mesh = new THREE.Mesh( geometry, material );
+		scene.add( mesh );
+		</code>
+
+		<h2>Constructor</h2>
+
+
+		<h3>[name]([page:Curve path], [page:Integer tubularSegments], [page:Float radius], [page:Integer radialSegments], [page:Boolean closed])</h3>
+		<div>
+		path — [page:Curve] - A path that inherits from the [page:Curve] base class<br />
+		tubularSegments — [page:Integer] - The number of segments that make up the tube, default is 64<br />
+		radius — [page:Float] - The radius of the tube, default is 1<br />
+		radialSegments — [page:Integer] - The number of segments that make up the cross-section, default is 8 <br />
+		closed — [page:Boolean] Is the tube open or closed, default is false <br />
+		</div>
+
+
+		<h2>Properties</h2>
+
+		<h3>[property:Object parameters]</h3>
+		<div>
+		An object with all of the parameters that were used to generate the geometry.
+		</div>
+
+		<h3>[property:Array tangents]</h3>
+		<div>
+		An array of [page:Vector3] tangents
+		</div>
+
+		<h3>[property:Array normals]</h3>
+		<div>
+		An array of [page:Vector3] normals
+		</div>
+
+		<h3>[property:Array binormals]</h3>
+		<div>
+		An array of [page:Vector3] binormals
+		</div>
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/geometries/TubeGeometry.js src/geometries/TubeGeometry.js]
+	</body>
+</html>

+ 105 - 105
docs/api/geometries/TubeGeometry.html

@@ -1,105 +1,105 @@
-<!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:Geometry] &rarr;
-
-		<h1>[name]</h1>
-
-		<div class="desc">Creates a tube that extrudes along a 3d curve.</div>
-
-		<iframe id="scene" src="scenes/geometry-browser.html#TubeGeometry"></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>Example</h2>
-
-		<code>
-		function CustomSinCurve( scale ) {
-
-			THREE.Curve.call( this );
-
-			this.scale = ( scale === undefined ) ? 1 : scale;
-
-		}
-
-		CustomSinCurve.prototype = Object.create( THREE.Curve.prototype );
-		CustomSinCurve.prototype.constructor = CustomSinCurve;
-
-		CustomSinCurve.prototype.getPoint = function ( t ) {
-
-			var tx = t * 3 - 1.5;
-			var ty = Math.sin( 2 * Math.PI * t );
-			var tz = 0;
-
-			return new THREE.Vector3( tx, ty, tz ).multiplyScalar( this.scale );
-
-		};
-
-		var path = new CustomSinCurve( 10 );
-		var geometry = new THREE.TubeGeometry( path, 20, 2, 8, false );
-		var material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
-		var mesh = new THREE.Mesh( geometry, material );
-		scene.add( mesh );
-		</code>
-
-		<h2>Constructor</h2>
-
-
-		<h3>[name]([page:Curve path], [page:Integer tubularSegments], [page:Float radius], [page:Integer radialSegments], [page:Boolean closed])</h3>
-		<div>
-		path — [page:Curve] - A path that inherits from the [page:Curve] base class<br />
-		tubularSegments — [page:Integer] - The number of segments that make up the tube, default is 64<br />
-		radius — [page:Float] - The radius of the tube, default is 1<br />
-		radialSegments — [page:Integer] - The number of segments that make up the cross-section, default is 8 <br />
-		closed — [page:Boolean] Is the tube open or closed, default is false <br />
-		</div>
-
-
-		<h2>Properties</h2>
-
-		<h3>[property:Object parameters]</h3>
-		<div>
-		An object with all of the parameters that were used to generate the geometry.
-		</div>
-
-		<h3>[property:Array tangents]</h3>
-		<div>
-		An array of [page:Vector3] tangents
-		</div>
-
-		<h3>[property:Array normals]</h3>
-		<div>
-		An array of [page:Vector3] normals
-		</div>
-
-		<h3>[property:Array binormals]</h3>
-		<div>
-		An array of [page:Vector3] binormals
-		</div>
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!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:Geometry] &rarr;
+
+		<h1>[name]</h1>
+
+		<div class="desc">Creates a tube that extrudes along a 3d curve.</div>
+
+		<iframe id="scene" src="scenes/geometry-browser.html#TubeGeometry"></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>Example</h2>
+
+		<code>
+		function CustomSinCurve( scale ) {
+
+			THREE.Curve.call( this );
+
+			this.scale = ( scale === undefined ) ? 1 : scale;
+
+		}
+
+		CustomSinCurve.prototype = Object.create( THREE.Curve.prototype );
+		CustomSinCurve.prototype.constructor = CustomSinCurve;
+
+		CustomSinCurve.prototype.getPoint = function ( t ) {
+
+			var tx = t * 3 - 1.5;
+			var ty = Math.sin( 2 * Math.PI * t );
+			var tz = 0;
+
+			return new THREE.Vector3( tx, ty, tz ).multiplyScalar( this.scale );
+
+		};
+
+		var path = new CustomSinCurve( 10 );
+		var geometry = new THREE.TubeGeometry( path, 20, 2, 8, false );
+		var material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
+		var mesh = new THREE.Mesh( geometry, material );
+		scene.add( mesh );
+		</code>
+
+		<h2>Constructor</h2>
+
+
+		<h3>[name]([page:Curve path], [page:Integer tubularSegments], [page:Float radius], [page:Integer radialSegments], [page:Boolean closed])</h3>
+		<div>
+		path — [page:Curve] - A path that inherits from the [page:Curve] base class<br />
+		tubularSegments — [page:Integer] - The number of segments that make up the tube, default is 64<br />
+		radius — [page:Float] - The radius of the tube, default is 1<br />
+		radialSegments — [page:Integer] - The number of segments that make up the cross-section, default is 8 <br />
+		closed — [page:Boolean] Is the tube open or closed, default is false <br />
+		</div>
+
+
+		<h2>Properties</h2>
+
+		<h3>[property:Object parameters]</h3>
+		<div>
+		An object with all of the parameters that were used to generate the geometry.
+		</div>
+
+		<h3>[property:Array tangents]</h3>
+		<div>
+		An array of [page:Vector3] tangents
+		</div>
+
+		<h3>[property:Array normals]</h3>
+		<div>
+		An array of [page:Vector3] normals
+		</div>
+
+		<h3>[property:Array binormals]</h3>
+		<div>
+		An array of [page:Vector3] binormals
+		</div>
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 98 - 98
docs/api/helpers/ArrowHelper.html

@@ -1,98 +1,98 @@
-<!DOCTYPE html>
-<html lang="en">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../" />
-		<script src="list.js"></script>
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		[page:Object3D] &rarr;
-
-		<h1>[name]</h1>
-
-		<div class="desc">An 3D arrow object for visualizing directions.</div>
-
-
-		<h2>Example</h2>
-
-		<div>[example:webgl_geometries WebGL / geometries]</div>
-		<div>[example:webgl_geometry_normals WebGL / geometry / normals]</div>
-		<div>[example:webgl_shadowmesh WebGL / shadowmesh]</div>
-
-		<code>
-		var dir = new THREE.Vector3( 1, 2, 0 );
-
-		//normalize the direction vector (convert to vector of length 1)
-		dir.normalize();
-
-		var origin = new THREE.Vector3( 0, 0, 0 );
-		var length = 1;
-		var hex = 0xffff00;
-
-		var arrowHelper = new THREE.ArrowHelper( dir, origin, length, hex );
-		scene.add( arrowHelper );
-		</code>
-
-
-
-		<h2>Constructor</h2>
-
-
-		<h3>[name]([page:Vector3 dir], [page:Vector3 origin], [page:Number length], [page:Number hex], [page:Number headLength], [page:Number headWidth] )</h3>
-		<div>
-		[page:Vector3 dir] -- direction from origin. Must be a unit vector. <br />
-		[page:Vector3 origin] -- Point at which the arrow starts.<br />
-		[page:Number length] -- length of the arrow. Default is *1*.<br />
-		[page:Number hex] -- hexadecimal value to define color. Default is 0xffff00.<br />
-		[page:Number headLength] -- The length of the head of the arrow. Default is 0.2 * length.<br />
-		[page:Number headWidth] -- The length of the width of the arrow. Default is 0.2 * headLength.
-		</div>
-
-		<h2>Properties</h2>
-		<div>See the base [page:Object3D] class for common properties.</div>
-
-
-		<h3>[property:Line line]</h3>
-		<div>Contains the line part of the arrowHelper.</div>
-
-		<h3>[property:Mesh cone]</h3>
-		<div>Contains the cone part of the arrowHelper.</div>
-
-
-
-
-		<h2>Methods</h2>
-		<div>See the base [page:Object3D] class for common methods.</div>
-
-
-
-		<h3>[method:null setColor]([page:Number hex])</h3>
-		<div>
-		hex -- The hexadecimal value of the color.<br /><br />
-
-		Sets the color of the arrowHelper.
-		</div>
-
-		<h3>[method:null setLength]([page:Number length], [page:Number headLength], [page:Number headWidth])</h3>
-		<div>
-		length -- The desired length.<br />
-		headLength -- The length of the head of the arrow.<br />
-		headWidth -- The length of the width of the arrow.<br /><br />
-
-		Sets the length of the arrowhelper.
-		</div>
-
-		<h3>[method:null setDirection]([page:Vector3 dir])</h3>
-		<div>
-		dir -- The desired direction. Must be a unit vector.<br /><br />
-
-		Sets the direction of the arrowhelper.
-		</div>
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Object3D] &rarr;
+
+		<h1>[name]</h1>
+
+		<div class="desc">An 3D arrow object for visualizing directions.</div>
+
+
+		<h2>Example</h2>
+
+		<div>[example:webgl_geometries WebGL / geometries]</div>
+		<div>[example:webgl_geometry_normals WebGL / geometry / normals]</div>
+		<div>[example:webgl_shadowmesh WebGL / shadowmesh]</div>
+
+		<code>
+		var dir = new THREE.Vector3( 1, 2, 0 );
+
+		//normalize the direction vector (convert to vector of length 1)
+		dir.normalize();
+
+		var origin = new THREE.Vector3( 0, 0, 0 );
+		var length = 1;
+		var hex = 0xffff00;
+
+		var arrowHelper = new THREE.ArrowHelper( dir, origin, length, hex );
+		scene.add( arrowHelper );
+		</code>
+
+
+
+		<h2>Constructor</h2>
+
+
+		<h3>[name]([page:Vector3 dir], [page:Vector3 origin], [page:Number length], [page:Number hex], [page:Number headLength], [page:Number headWidth] )</h3>
+		<div>
+		[page:Vector3 dir] -- direction from origin. Must be a unit vector. <br />
+		[page:Vector3 origin] -- Point at which the arrow starts.<br />
+		[page:Number length] -- length of the arrow. Default is *1*.<br />
+		[page:Number hex] -- hexadecimal value to define color. Default is 0xffff00.<br />
+		[page:Number headLength] -- The length of the head of the arrow. Default is 0.2 * length.<br />
+		[page:Number headWidth] -- The length of the width of the arrow. Default is 0.2 * headLength.
+		</div>
+
+		<h2>Properties</h2>
+		<div>See the base [page:Object3D] class for common properties.</div>
+
+
+		<h3>[property:Line line]</h3>
+		<div>Contains the line part of the arrowHelper.</div>
+
+		<h3>[property:Mesh cone]</h3>
+		<div>Contains the cone part of the arrowHelper.</div>
+
+
+
+
+		<h2>Methods</h2>
+		<div>See the base [page:Object3D] class for common methods.</div>
+
+
+
+		<h3>[method:null setColor]([page:Number hex])</h3>
+		<div>
+		hex -- The hexadecimal value of the color.<br /><br />
+
+		Sets the color of the arrowHelper.
+		</div>
+
+		<h3>[method:null setLength]([page:Number length], [page:Number headLength], [page:Number headWidth])</h3>
+		<div>
+		length -- The desired length.<br />
+		headLength -- The length of the head of the arrow.<br />
+		headWidth -- The length of the width of the arrow.<br /><br />
+
+		Sets the length of the arrowhelper.
+		</div>
+
+		<h3>[method:null setDirection]([page:Vector3 dir])</h3>
+		<div>
+		dir -- The desired direction. Must be a unit vector.<br /><br />
+
+		Sets the direction of the arrowhelper.
+		</div>
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

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

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 80 - 80
docs/api/helpers/FaceNormalsHelper.html

@@ -1,80 +1,80 @@
-<!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:LineSegments] &rarr;
-
-		<h1>[name]</h1>
-
-		<div class="desc">
-			Renders [page:ArrowHelper arrows] to visualize an object's [page:Face3 face] normals.
-			Requires  that face normals have been specified on all 	[page:Face3 faces] or calculated with [page:Geometry.computeFaceNormals computeFaceNormals].</div>
-
-			Note that this only works with the objects whose geometry is an instance of [page:Geometry].
-			For [page:BufferGeometry] use a [page:VertexNormalsHelper] instead.
-		<div>
-
-
-		<h2>Example</h2>
-
-		<div>[example:webgl_helpers WebGL / helpers]</div>
-
-		<code>
-		geometry = new THREE.BoxGeometry( 10, 10, 10, 2, 2, 2 );
-		material = new THREE.MeshBasicMaterial( { color: 0xff0000 } );
-		box = new THREE.Mesh( geometry, material );
-
-		helper = new THREE.FaceNormalsHelper( box, 2, 0x00ff00, 1 );
-
-		scene.add( box );
-		scene.add( helper );
-		</code>
-
-		<h2>Constructor</h2>
-
-
-		<h3>[name]( [page:Object3D object], [page:Number size], [page:Color color], [page:Number linewidth] )</h3>
-		<div>
-		[page:Object3D object] -- object for which to render face normals.<br />
-		[page:Number size] -- (optional) length of the arrows. Default is *1*.<br />
-		[page:Hex color] -- (optional) hex color of the arrows. Default is *0xffff00*.<br />
-		[page:Number linewidth] -- (optional) width of the arrow lines.  Default is *1*.
-		</div>
-
-
-		<h2>Properties</h2>
-		<div>See the base [page:LineSegments] class for common properties.</div>
-
-		<h3>[property:object matrixAutoUpdate]</h3>
-		<div>
-			See [page:Object3D.matrixAutoUpdate]. Set to *false* here as the helper is using the
-			objects's [page:Object3D.matrixWorld matrixWorld].
-		</div>
-
-		<h3>[property:Object3D object]</h3>
-		<div>The object for which the face normals are being visualized.</div>
-
-		<h3>[property:Number size]</h3>
-		<div>Length of the arrows. Default is *1*.</div>
-
-
-
-		<h2>Methods</h2>
-		<div>See the base [page:LineSegments] class for common methods.</div>
-
-
-		<h3>[method:null update]()</h3>
-		<div>Updates the face normal preview based on movement of the object.</div>
-
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!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:LineSegments] &rarr;
+
+		<h1>[name]</h1>
+
+		<div class="desc">
+			Renders [page:ArrowHelper arrows] to visualize an object's [page:Face3 face] normals.
+			Requires  that face normals have been specified on all 	[page:Face3 faces] or calculated with [page:Geometry.computeFaceNormals computeFaceNormals].</div>
+
+			Note that this only works with the objects whose geometry is an instance of [page:Geometry].
+			For [page:BufferGeometry] use a [page:VertexNormalsHelper] instead.
+		<div>
+
+
+		<h2>Example</h2>
+
+		<div>[example:webgl_helpers WebGL / helpers]</div>
+
+		<code>
+		geometry = new THREE.BoxGeometry( 10, 10, 10, 2, 2, 2 );
+		material = new THREE.MeshBasicMaterial( { color: 0xff0000 } );
+		box = new THREE.Mesh( geometry, material );
+
+		helper = new THREE.FaceNormalsHelper( box, 2, 0x00ff00, 1 );
+
+		scene.add( box );
+		scene.add( helper );
+		</code>
+
+		<h2>Constructor</h2>
+
+
+		<h3>[name]( [page:Object3D object], [page:Number size], [page:Color color], [page:Number linewidth] )</h3>
+		<div>
+		[page:Object3D object] -- object for which to render face normals.<br />
+		[page:Number size] -- (optional) length of the arrows. Default is *1*.<br />
+		[page:Hex color] -- (optional) hex color of the arrows. Default is *0xffff00*.<br />
+		[page:Number linewidth] -- (optional) width of the arrow lines.  Default is *1*.
+		</div>
+
+
+		<h2>Properties</h2>
+		<div>See the base [page:LineSegments] class for common properties.</div>
+
+		<h3>[property:object matrixAutoUpdate]</h3>
+		<div>
+			See [page:Object3D.matrixAutoUpdate]. Set to *false* here as the helper is using the
+			objects's [page:Object3D.matrixWorld matrixWorld].
+		</div>
+
+		<h3>[property:Object3D object]</h3>
+		<div>The object for which the face normals are being visualized.</div>
+
+		<h3>[property:Number size]</h3>
+		<div>Length of the arrows. Default is *1*.</div>
+
+
+
+		<h2>Methods</h2>
+		<div>See the base [page:LineSegments] class for common methods.</div>
+
+
+		<h3>[method:null update]()</h3>
+		<div>Updates the face normal preview based on movement of the object.</div>
+
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 46 - 46
docs/api/helpers/GridHelper.html

@@ -1,46 +1,46 @@
-<!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:Line] &rarr;
-
-		<h1>[name]</h1>
-
-		<div class="desc">The GridHelper is an object to define grids. Grids are two-dimensional arrays of lines.</div>
-
-
-		<h2>Example</h2>
-
-		<code>var size = 10;
-		var divisions = 10;
-
-		var gridHelper = new THREE.GridHelper( size, divisions );
-		scene.add( gridHelper );
-		</code>
-		[example:webgl_helpers Example using various helpers]
-
-
-		<h2>Constructor</h2>
-
-		<h3>[name]( [page:number size], [page:Number divisions], [page:Color colorCenterLine], [page:Color colorGrid] )</h3>
-		<div>
-		size -- The size of the grid. Default is 10. <br />
-		divisions -- The number of divisions across the grid. Default is 10. <br />
-		colorCenterLine -- The color of the centerline. This can be a [page:Color], a hexadecimal value and an CSS-Color name. Default is 0x444444 <br />
-		colorGrid -- The color of the lines of the grid. This can be a [page:Color], a hexadecimal value and an CSS-Color name. Default is 0x888888
-		</div>
-		<div>
-		Creates a new [name] of size 'size' and divided into 'divisions' segments per side. Colors are optional.
-		</div>
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!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:Line] &rarr;
+
+		<h1>[name]</h1>
+
+		<div class="desc">The GridHelper is an object to define grids. Grids are two-dimensional arrays of lines.</div>
+
+
+		<h2>Example</h2>
+
+		<code>var size = 10;
+		var divisions = 10;
+
+		var gridHelper = new THREE.GridHelper( size, divisions );
+		scene.add( gridHelper );
+		</code>
+		[example:webgl_helpers Example using various helpers]
+
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( [page:number size], [page:Number divisions], [page:Color colorCenterLine], [page:Color colorGrid] )</h3>
+		<div>
+		size -- The size of the grid. Default is 10. <br />
+		divisions -- The number of divisions across the grid. Default is 10. <br />
+		colorCenterLine -- The color of the centerline. This can be a [page:Color], a hexadecimal value and an CSS-Color name. Default is 0x444444 <br />
+		colorGrid -- The color of the lines of the grid. This can be a [page:Color], a hexadecimal value and an CSS-Color name. Default is 0x888888
+		</div>
+		<div>
+		Creates a new [name] of size 'size' and divided into 'divisions' segments per side. Colors are optional.
+		</div>
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 83 - 83
docs/api/helpers/SpotLightHelper.html

@@ -1,83 +1,83 @@
-<!DOCTYPE html>
-<html lang="en">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../" />
-		<script src="list.js"></script>
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		[page:Object3D] &rarr;
-
-		<h1>[name]</h1>
-
-		<div class="desc">This displays a cone shaped helper object for a [page:SpotLight].</div>
-
-		<h2>Example</h2>
-		<iframe src='../examples/webgl_lights_spotlight.html'></iframe>
-		<a target="THREE_Examples" href="../examples/#webgl_lights_spotlight">View in Examples</a><br />
-		<h2>Other Examples</h2>
-
-		<div>[example:webgl_lights_spotlights lights / spotlights ]</div>
-
-		<h2>Code Example</h2>
-		<code>
-		var spotLight = new THREE.SpotLight( 0xffffff );
-		spotLight.position.set( 10, 10, 10 );
-		scene.add( spotLight );
-
-		var spotLightHelper = new THREE.SpotLightHelper( spotLight );
-		scene.add( spotLightHelper );
-		</code>
-
-
-		<h2>Constructor</h2>
-
-
-		<h3>[name]( [page:SpotLight light], [page:Hex color] )</h3>
-		<div>
-			[page:SpotLight light] -- The [page:SpotLight] to be visualized. <br /><br/>
-			
-			[page:Hex color] -- (optional) if this is not the set the helper will take the color of the light. 
-		</div>
-
-
-		<h2>Properties</h2>
-		<div>See the base [page:Object3D] class for common properties.</div>
-
-		<h3>[property:LineSegments cone]</h3>
-		<div>[page:LineSegments] used to visualize the light.</div>
-
-		<h3>[property:SpotLight light]</h3>
-		<div>Reference to the [page:SpotLight] being visualized.</div>
-
-		<h3>[property:object matrix]</h3>
-		<div>Reference to the spotLight's [page:Object3D.matrixWorld matrixWorld].</div>
-
-		<h3>[property:object matrixAutoUpdate]</h3>
-		<div>
-			See [page:Object3D.matrixAutoUpdate]. Set to *false* here as the helper is using the
-			spotLight's [page:Object3D.matrixWorld matrixWorld].
-		</div>
-
-		<h3>[property:hex color]</h3>
-		<div>
-					 The color parameter passed in the constructor. Default is *undefined*. If this is changed, the helper's color will update
-					the next time [page:.update update] is called.
-		</div>
-
-		<h2>Methods</h2>
-		<div>See the base [page:Object3D] class for common methods.</div>
-
-		<h3>[method:null dispose]()</h3>
-		<div>Disposes of the light helper.</div>
-
-		<h3>[method:null update]()</h3>
-		<div>Updates the light helper.</div>
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Object3D] &rarr;
+
+		<h1>[name]</h1>
+
+		<div class="desc">This displays a cone shaped helper object for a [page:SpotLight].</div>
+
+		<h2>Example</h2>
+		<iframe src='../examples/webgl_lights_spotlight.html'></iframe>
+		<a target="THREE_Examples" href="../examples/#webgl_lights_spotlight">View in Examples</a><br />
+		<h2>Other Examples</h2>
+
+		<div>[example:webgl_lights_spotlights lights / spotlights ]</div>
+
+		<h2>Code Example</h2>
+		<code>
+		var spotLight = new THREE.SpotLight( 0xffffff );
+		spotLight.position.set( 10, 10, 10 );
+		scene.add( spotLight );
+
+		var spotLightHelper = new THREE.SpotLightHelper( spotLight );
+		scene.add( spotLightHelper );
+		</code>
+
+
+		<h2>Constructor</h2>
+
+
+		<h3>[name]( [page:SpotLight light], [page:Hex color] )</h3>
+		<div>
+			[page:SpotLight light] -- The [page:SpotLight] to be visualized. <br /><br/>
+			
+			[page:Hex color] -- (optional) if this is not the set the helper will take the color of the light. 
+		</div>
+
+
+		<h2>Properties</h2>
+		<div>See the base [page:Object3D] class for common properties.</div>
+
+		<h3>[property:LineSegments cone]</h3>
+		<div>[page:LineSegments] used to visualize the light.</div>
+
+		<h3>[property:SpotLight light]</h3>
+		<div>Reference to the [page:SpotLight] being visualized.</div>
+
+		<h3>[property:object matrix]</h3>
+		<div>Reference to the spotLight's [page:Object3D.matrixWorld matrixWorld].</div>
+
+		<h3>[property:object matrixAutoUpdate]</h3>
+		<div>
+			See [page:Object3D.matrixAutoUpdate]. Set to *false* here as the helper is using the
+			spotLight's [page:Object3D.matrixWorld matrixWorld].
+		</div>
+
+		<h3>[property:hex color]</h3>
+		<div>
+					 The color parameter passed in the constructor. Default is *undefined*. If this is changed, the helper's color will update
+					the next time [page:.update update] is called.
+		</div>
+
+		<h2>Methods</h2>
+		<div>See the base [page:Object3D] class for common methods.</div>
+
+		<h3>[method:null dispose]()</h3>
+		<div>Disposes of the light helper.</div>
+
+		<h3>[method:null update]()</h3>
+		<div>Updates the light helper.</div>
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 79 - 79
docs/api/helpers/VertexNormalsHelper.html

@@ -1,79 +1,79 @@
-<!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:Line] &rarr;
-
-		<h1>[name]</h1>
-
-		<div class="desc">
-			Renders [page:ArrowHelper arrows] to visualize an object's vertex normal vectors.
-			Requires that normals have been specified in a [page:BufferAttribute custom attribute] or
-			have been calculated using [page:Geometry.computeVertexNormals computeVertexNormals].<br /><br />
-
-			Unlike [page:FaceNormalsHelper], this works with [page:BufferGeometry].
-		</div>
-
-		<h2>Example</h2>
-
-		[example:webgl_helpers WebGL / helpers]
-
-		<code>
-		var geometry = new THREE.BoxGeometry( 10, 10, 10, 2, 2, 2 );
-		var material = new THREE.MeshBasicMaterial( { color: 0xff0000 } );
-		var box = new THREE.Mesh( geometry, material );
-
-		var helper = new THREE.VertexNormalsHelper( box, 2, 0x00ff00, 1 );
-
-		scene.add( box );
-		scene.add( helper );
-		</code>
-
-
-		<h2>Constructor</h2>
-
-
-		<h3>[name]( [page:Object3D object], [page:Number size], [page:Hex color], [page:Number linewidth] )</h3>
-		<div>
-			[page:Object3D object] -- object for which to render vertex normals.<br />
-			[page:Number size] -- (optional) length of the arrows. Default is 1.<br />
-			[page:Hex color] -- hex color of the arrows. Default is 0xff0000.<br />
-			[page:Number linewidth] -- (optional) width of the arrow lines. Default is 1.
-		</div>
-
-
-		<h2>Properties</h2>
-		<div>See the base [page:LineSegments] class for common properties.</div>
-
-		<h3>[property:object matrixAutoUpdate]</h3>
-		<div>
-			See [page:Object3D.matrixAutoUpdate]. Set to *false* here as the helper is using the
-			objects's [page:Object3D.matrixWorld matrixWorld].
-		</div>
-
-		<h3>[property:Object3D object]</h3>
-		<div>The object for which the vertex normals are being visualized.</div>
-
-		<h3>[property:Number size]</h3>
-		<div>Length of the arrows. Default is *1*.</div>
-
-
-		<h2>Methods</h2>
-		<div>See the base [page:LineSegments] class for common methods.</div>
-
-
-		<h3>[method:null update]()</h3>
-		<div>Updates the vertex normal preview based on movement of the object.</div>
-
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!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:Line] &rarr;
+
+		<h1>[name]</h1>
+
+		<div class="desc">
+			Renders [page:ArrowHelper arrows] to visualize an object's vertex normal vectors.
+			Requires that normals have been specified in a [page:BufferAttribute custom attribute] or
+			have been calculated using [page:Geometry.computeVertexNormals computeVertexNormals].<br /><br />
+
+			Unlike [page:FaceNormalsHelper], this works with [page:BufferGeometry].
+		</div>
+
+		<h2>Example</h2>
+
+		[example:webgl_helpers WebGL / helpers]
+
+		<code>
+		var geometry = new THREE.BoxGeometry( 10, 10, 10, 2, 2, 2 );
+		var material = new THREE.MeshBasicMaterial( { color: 0xff0000 } );
+		var box = new THREE.Mesh( geometry, material );
+
+		var helper = new THREE.VertexNormalsHelper( box, 2, 0x00ff00, 1 );
+
+		scene.add( box );
+		scene.add( helper );
+		</code>
+
+
+		<h2>Constructor</h2>
+
+
+		<h3>[name]( [page:Object3D object], [page:Number size], [page:Hex color], [page:Number linewidth] )</h3>
+		<div>
+			[page:Object3D object] -- object for which to render vertex normals.<br />
+			[page:Number size] -- (optional) length of the arrows. Default is 1.<br />
+			[page:Hex color] -- hex color of the arrows. Default is 0xff0000.<br />
+			[page:Number linewidth] -- (optional) width of the arrow lines. Default is 1.
+		</div>
+
+
+		<h2>Properties</h2>
+		<div>See the base [page:LineSegments] class for common properties.</div>
+
+		<h3>[property:object matrixAutoUpdate]</h3>
+		<div>
+			See [page:Object3D.matrixAutoUpdate]. Set to *false* here as the helper is using the
+			objects's [page:Object3D.matrixWorld matrixWorld].
+		</div>
+
+		<h3>[property:Object3D object]</h3>
+		<div>The object for which the vertex normals are being visualized.</div>
+
+		<h3>[property:Number size]</h3>
+		<div>Length of the arrows. Default is *1*.</div>
+
+
+		<h2>Methods</h2>
+		<div>See the base [page:LineSegments] class for common methods.</div>
+
+
+		<h3>[method:null update]()</h3>
+		<div>Updates the vertex normal preview based on movement of the object.</div>
+
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 1 - 1
docs/api/lights/AmbientLight.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/lights/HemisphereLight.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 79 - 79
docs/api/lights/Light.html

@@ -1,79 +1,79 @@
-<!DOCTYPE html>
-<html lang="en">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../" />
-		<script src="list.js"></script>
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		[page:Object3D] &rarr;
-
-		<h1>[name]</h1>
-
-		<div class="desc">
-			Abstract base class for lights - all other light types inherit the properties and methods
-			described here.
-		</div>
-
-
-		<h2>Constructor</h2>
-
-
-		<h3>[name]( [page:Integer color], [page:float intensity] )</h3>
-		<div>
-		[page:Integer color] - (optional) hexadecimal color of the light. Default is 0xffffff (white).<br />
-		[page:Float intensity] - (optional) numeric value of the light's strength/intensity. Default is 1.<br /><br />
-
-		Creates a new [name]. Note that this is not intended to be called directly (use one of derived classes instead).
-		</div>
-
-		<h2>Properties</h2>
-		<div>
-			See the base [page:Object3D Object3D] class for common properties.
-		</div>
-
-		<h3>[property:Color color]</h3>
-		<div>
-			Color of the light. Defaults to a new [page:Color] set to white, if not passed in the constructor.<br />
-		</div>
-
-		<h3>[property:Float intensity]</h3>
-		<div>
-			The light's intensity, or strength.<br />
-			In [page:WebGLRenderer.physicallyCorrectLights physically correct] mode, the product of
-			[page:.color color] * intensity is interpreted as luminous intensity measured in candela.<br />
-			Default - *1.0*.
-		</div>
-
-		<h3>[property:Boolean isLight]</h3>
-		<div>
-			Used to check whether this or derived classes are lights. Default is *true*.<br /><br />
-
-			You should not change this, as it used internally for optimisation.
-		</div>
-
-
-		<h2>Methods</h2>
-		<div>
-			See the base [page:Object3D Object3D] class for common methods.
-		</div>
-
-
-		<h3>[method:Light copy]( [page:Light source] )</h3>
-		<div>
-		Copies the value of [page:.color color] and [page:.intensity intensity] from the
-		[page:Light source] light into this one.
-		</div>
-
-		<h3>[method:JSON toJSON]( [page:String meta] )</h3>
-		<div>
-		Return Light data in JSON format.
-		</div>
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Object3D] &rarr;
+
+		<h1>[name]</h1>
+
+		<div class="desc">
+			Abstract base class for lights - all other light types inherit the properties and methods
+			described here.
+		</div>
+
+
+		<h2>Constructor</h2>
+
+
+		<h3>[name]( [page:Integer color], [page:float intensity] )</h3>
+		<div>
+		[page:Integer color] - (optional) hexadecimal color of the light. Default is 0xffffff (white).<br />
+		[page:Float intensity] - (optional) numeric value of the light's strength/intensity. Default is 1.<br /><br />
+
+		Creates a new [name]. Note that this is not intended to be called directly (use one of derived classes instead).
+		</div>
+
+		<h2>Properties</h2>
+		<div>
+			See the base [page:Object3D Object3D] class for common properties.
+		</div>
+
+		<h3>[property:Color color]</h3>
+		<div>
+			Color of the light. Defaults to a new [page:Color] set to white, if not passed in the constructor.<br />
+		</div>
+
+		<h3>[property:Float intensity]</h3>
+		<div>
+			The light's intensity, or strength.<br />
+			In [page:WebGLRenderer.physicallyCorrectLights physically correct] mode, the product of
+			[page:.color color] * intensity is interpreted as luminous intensity measured in candela.<br />
+			Default - *1.0*.
+		</div>
+
+		<h3>[property:Boolean isLight]</h3>
+		<div>
+			Used to check whether this or derived classes are lights. Default is *true*.<br /><br />
+
+			You should not change this, as it used internally for optimisation.
+		</div>
+
+
+		<h2>Methods</h2>
+		<div>
+			See the base [page:Object3D Object3D] class for common methods.
+		</div>
+
+
+		<h3>[method:Light copy]( [page:Light source] )</h3>
+		<div>
+		Copies the value of [page:.color color] and [page:.intensity intensity] from the
+		[page:Light source] light into this one.
+		</div>
+
+		<h3>[method:JSON toJSON]( [page:String meta] )</h3>
+		<div>
+		Return Light data in JSON format.
+		</div>
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 119 - 119
docs/api/lights/PointLight.html

@@ -1,119 +1,119 @@
-<!DOCTYPE html>
-<html lang="en">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../" />
-		<script src="list.js"></script>
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		[page:Object3D] &rarr; [page:Light] &rarr;
-
-		<h1>[name]</h1>
-
-		<div class="desc">
-			A light that gets emitted from a single point in all directions. A common use case for this
-			is to replicate the light emitted from a bare lightbulb.<br /><br />
-
-			 This light can cast shadows - see [page:LightShadow] page for details.
-		</div>
-
-
-		<h2>Example</h2>
-
-		<div>
-			[example:canvas_lights_pointlights lights / pointlights ]<br />
-			[example:webgl_lights_pointlights lights / pointlights ]<br />
-			[example:webgl_lights_pointlights2 lights / pointlights2 ]<br />
-			[example:webgldeferred_animation animation ]<br />
-			[example:webgl_effects_anaglyph effects / anaglyph ]<br />
-			[example:webgl_geometry_text geometry / text ]<br />
-			[example:webgl_lensflares lensflares ]
-		</div>
-
-		<code>
-var light = new THREE.PointLight( 0xff0000, 1, 100 );
-light.position.set( 50, 50, 50 );
-scene.add( light );
-		</code>
-
-
-		<h2>Constructor</h2>
-
-		<h3>[name]( [page:Integer color], [page:Float intensity], [page:Number distance], [page:Float decay] )</h3>
-		<div>
-			[page:Integer color] - (optional) hexadecimal color of the light. Default is 0xffffff (white).<br />
-			[page:Float intensity] - (optional) numeric value of the light's strength/intensity. Default is 1.<br /><br />
-			[page:Number distance] - The distance from the light where the intensity is 0.
-			When set to 0, then the light never stops. Default is 0.<br />
-			[page:Float decay] - The amount the light dims along the distance of the light. Default is 1.
-			For [page:WebGLRenderer.physicallyCorrectLights physically correct] lighting, set this to 2.<br /><br />
-
-			Creates a new [name].
-		</div>
-
-		<h2>Properties</h2>
-		<div>
-			See the base [page:Light Light] class for common properties.
-		</div>
-
-		<h3>[property:Float decay]</h3>
-		<div>
-			The amount the light dims along the distance of the light<br />
-			In [page:WebGLRenderer.physicallyCorrectLights physically correct] mode, decay = 2 leads to physically realistic light falloff.<br/>
-			Default is *1*.
-		</div>
-
-		<h3>[property:Float distance]</h3>
-		<div>
-			If non-zero, light will attenuate linearly from maximum intensity at the light's
-			position down to zero at this distance from the light. Default is *0.0*.
-		</div>
-
-		<h3>[property:Boolean isPointLight]</h3>
-		<div>
-			Used to check whether this or derived classes are point lights. Default is *true*.<br /><br />
-
-			You should not change this, as it used internally for optimisation.
-		</div>
-
-		<h3>[property:Float power]</h3>
-		<div>
-			The light's power.<br />
-			In [page:WebGLRenderer.physicallyCorrectLights physically correct] mode, the luminous
-			power of the light measured in lumens. Default is *4Math.PI*. <br /><br />
-
-			This is directly related to the [page:.intensity intensity] in the ratio
-			<code>
-				power = intensity * 4&pi;
-			</code>
-			and changing this will also change the intensity.
-		</div>
-
-		<h3>[property:LightShadow shadow]</h3>
-		<div>
-			A [page:LightShadow] used to calculate shadows for this light.<br /><br />
-
-			 The lightShadow's [page:LightShadow.camera camera]
-			is set to a  [page:PerspectiveCamera] with [page:PerspectiveCamera.fov fov] of 90,
-			[page:PerspectiveCamera.aspect aspect] of 1, [page:PerspectiveCamera.near near]
-			clipping plane at 0.5 and	[page:PerspectiveCamera.far far] clipping plane at 500.
-		</div>
-
-		<h2>Methods</h2>
-		<div>
-			See the base [page:Light Light] class for common methods.
-		</div>
-
-		<h3>[method:PointLight copy]( [page:PointLight source] )</h3>
-		<div>
-		Copies value of all the properties from the [page:PointLight source] to this
-		PointLight.
-		</div>
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Object3D] &rarr; [page:Light] &rarr;
+
+		<h1>[name]</h1>
+
+		<div class="desc">
+			A light that gets emitted from a single point in all directions. A common use case for this
+			is to replicate the light emitted from a bare lightbulb.<br /><br />
+
+			 This light can cast shadows - see [page:LightShadow] page for details.
+		</div>
+
+
+		<h2>Example</h2>
+
+		<div>
+			[example:canvas_lights_pointlights lights / pointlights ]<br />
+			[example:webgl_lights_pointlights lights / pointlights ]<br />
+			[example:webgl_lights_pointlights2 lights / pointlights2 ]<br />
+			[example:webgldeferred_animation animation ]<br />
+			[example:webgl_effects_anaglyph effects / anaglyph ]<br />
+			[example:webgl_geometry_text geometry / text ]<br />
+			[example:webgl_lensflares lensflares ]
+		</div>
+
+		<code>
+var light = new THREE.PointLight( 0xff0000, 1, 100 );
+light.position.set( 50, 50, 50 );
+scene.add( light );
+		</code>
+
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( [page:Integer color], [page:Float intensity], [page:Number distance], [page:Float decay] )</h3>
+		<div>
+			[page:Integer color] - (optional) hexadecimal color of the light. Default is 0xffffff (white).<br />
+			[page:Float intensity] - (optional) numeric value of the light's strength/intensity. Default is 1.<br /><br />
+			[page:Number distance] - The distance from the light where the intensity is 0.
+			When set to 0, then the light never stops. Default is 0.<br />
+			[page:Float decay] - The amount the light dims along the distance of the light. Default is 1.
+			For [page:WebGLRenderer.physicallyCorrectLights physically correct] lighting, set this to 2.<br /><br />
+
+			Creates a new [name].
+		</div>
+
+		<h2>Properties</h2>
+		<div>
+			See the base [page:Light Light] class for common properties.
+		</div>
+
+		<h3>[property:Float decay]</h3>
+		<div>
+			The amount the light dims along the distance of the light<br />
+			In [page:WebGLRenderer.physicallyCorrectLights physically correct] mode, decay = 2 leads to physically realistic light falloff.<br/>
+			Default is *1*.
+		</div>
+
+		<h3>[property:Float distance]</h3>
+		<div>
+			If non-zero, light will attenuate linearly from maximum intensity at the light's
+			position down to zero at this distance from the light. Default is *0.0*.
+		</div>
+
+		<h3>[property:Boolean isPointLight]</h3>
+		<div>
+			Used to check whether this or derived classes are point lights. Default is *true*.<br /><br />
+
+			You should not change this, as it used internally for optimisation.
+		</div>
+
+		<h3>[property:Float power]</h3>
+		<div>
+			The light's power.<br />
+			In [page:WebGLRenderer.physicallyCorrectLights physically correct] mode, the luminous
+			power of the light measured in lumens. Default is *4Math.PI*. <br /><br />
+
+			This is directly related to the [page:.intensity intensity] in the ratio
+			<code>
+				power = intensity * 4&pi;
+			</code>
+			and changing this will also change the intensity.
+		</div>
+
+		<h3>[property:LightShadow shadow]</h3>
+		<div>
+			A [page:LightShadow] used to calculate shadows for this light.<br /><br />
+
+			 The lightShadow's [page:LightShadow.camera camera]
+			is set to a  [page:PerspectiveCamera] with [page:PerspectiveCamera.fov fov] of 90,
+			[page:PerspectiveCamera.aspect aspect] of 1, [page:PerspectiveCamera.near near]
+			clipping plane at 0.5 and	[page:PerspectiveCamera.far far] clipping plane at 500.
+		</div>
+
+		<h2>Methods</h2>
+		<div>
+			See the base [page:Light Light] class for common methods.
+		</div>
+
+		<h3>[method:PointLight copy]( [page:PointLight source] )</h3>
+		<div>
+		Copies value of all the properties from the [page:PointLight source] to this
+		PointLight.
+		</div>
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 191 - 191
docs/api/lights/SpotLight.html

@@ -1,191 +1,191 @@
-<!DOCTYPE html>
-<html lang="en">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../" />
-		<script src="list.js"></script>
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		[page:Object3D] &rarr; [page:Light] &rarr;
-
-		<h1>[name]</h1>
-
-		<div class="desc">
-			This light gets emitted from a single point in one direction, along a cone that increases in size
-			the further from the light it gets. <br /><br />
-
-			This light can cast shadows - see the [page:SpotLightShadow] page for details.
-		</div>
-
-
-
-
-		<h2>Example</h2>
-
-		<iframe src='../examples/webgl_lights_spotlight.html'></iframe>
-		<div>
-			[example:webgl_lights_spotlight View in Examples ]
-		</div>
-
-		<h2>Other Examples</h2>
-
-		<div>
-			[example:webgl_interactive_cubes_gpu interactive / cubes / gpu ]<br />
-			[example:webgl_interactive_draggablecubes interactive / draggablecubes ]<br />
-			[example:webgl_materials_bumpmap_skin materials / bumpmap / skin ]<br />
-			[example:webgl_materials_cubemap_dynamic materials / cubemap / dynamic ]<br />
-			[example:webgl_loader_md2 loader / md2 ]<br />
-			[example:webgl_shading_physical shading / physical ]<br />
-			[example:webgl_materials_bumpmap materials / bumpmap]<br/>
-			[example:webgl_shading_physical shading / physical]<br/>
-			[example:webgl_shadowmap shadowmap]<br/>
-			[example:webgl_shadowmap_performance shadowmap / performance]<br/>
-			[example:webgl_shadowmap_viewer shadowmap / viewer]
-		</div>
-
-		<h2>Code Example</h2>
-		<code>
-		// white spotlight shining from the side, casting a shadow
-
-		var spotLight = new THREE.SpotLight( 0xffffff );
-		spotLight.position.set( 100, 1000, 100 );
-
-		spotLight.castShadow = true;
-
-		spotLight.shadow.mapSize.width = 1024;
-		spotLight.shadow.mapSize.height = 1024;
-
-		spotLight.shadow.camera.near = 500;
-		spotLight.shadow.camera.far = 4000;
-		spotLight.shadow.camera.fov = 30;
-
-		scene.add( spotLight );
-		</code>
-
-		<h2>Constructor</h2>
-
-
-		<h3>[name]( [page:Integer color], [page:Float intensity], [page:Float distance], [page:Radians angle], [page:Float penumbra], [page:Float decay] )</h3>
-		<div>
-			[page:Integer color] - (optional) hexadecimal color of the light. Default is 0xffffff (white).<br />
-			[page:Float intensity] - (optional) numeric value of the light's strength/intensity. Default is 1.<br /><br />
-			[page:Float distance] - Maximum distance from origin where light will shine whose intensity
-			is attenuated linearly based on distance from origin. <br />
-			[page:Radians angle] - Maximum angle of light dispersion from its direction whose upper
-			bound is Math.PI/2.<br />
-			[page:Float penumbra] - Percent of the spotlight cone that is attenuated due to penumbra.
-			Takes values between zero and 1. Default is zero.<br />
-			[page:Float decay] - The amount the light dims along the distance of the light.<br /><br />
-
-			Creates a new [name].
-		</div>
-
-		<h2>Properties</h2>
-
-		See the base [page:Light Light] class for common properties.
-
-		<h3>[property:Float angle]</h3>
-		<div>
-			Maximum extent of the spotlight, in radians, from its direction. Should be no more than
-			*Math.PI/2*. The default is *Math.PI/3*.
-		</div>
-
-
-		<h3>[property:Boolean castShadow]</h3>
-		<div>
-			If set to *true* light will cast dynamic shadows. *Warning*: This is expensive and
-			requires tweaking to get shadows looking right. See the [page:SpotLightShadow] for details.
-			The default is *false*.
-		</div>
-
-		<h3>[property:Float decay]</h3>
-		<div>
-			The amount the light dims along the distance of the light.<br />
-			In [page:WebGLRenderer.physicallyCorrectLights physically correct] mode, decay = 2 leads to
-			physically realistic light falloff. The default is *1*.
-		</div>
-
-		<h3>[property:Float distance]</h3>
-		<div>
-			If non-zero, light will attenuate linearly from maximum intensity at the light's
-			position down to zero at this distance from the light. Default is *0.0*.
-		</div>
-
-		<h3>[property:Boolean isSpotLight]</h3>
-		<div>
-			Used to check whether this or derived classes are spot lights. Default is *true*.<br /><br />
-
-			You should not change this, as it used internally for optimisation.
-		</div>
-
-		<h3>[property:Float penumbra]</h3>
-		<div>
-			Percent of the spotlight cone that is attenuated due to penumbra. Takes values between
-			zero and 1. The default is *0.0*.
-		</div>
-
-		<h3>[property:Vector3 position]</h3>
-		<div>
-			This is set equal to [page:Object3D.DefaultUp] (0, 1, 0), so that the light shines from the top down.
-		</div>
-
-		<h3>[property:Float power]</h3>
-		<div>
-			The light's power.<br />
-			In [page:WebGLRenderer.physicallyCorrectLights physically correct] mode, the luminous
-			power of the light measured in lumens. Default is *4Math.PI*. <br /><br />
-
-			This is directly related to the [page:.intensity intensity] in the ratio
-			<code>
-				power = intensity * &pi;
-			</code>
-			and changing this will also change the intensity.
-		</div>
-
-		<h3>[property:SpotLightShadow shadow]</h3>
-		<div>
-			A [page:SpotLightShadow] used to calculate shadows for this light.
-		</div>
-
-
-		<h3>[property:Object3D target]</h3>
-		<div>
-			The Spotlight points from its [page:.position position] to target.position. The default
-			position of the target is *(0, 0, 0)*.<br />
-
-			*Note*: For the target's position to be changed to anything other than the default,
-			it must be added to the [page:Scene scene] using
-			<code>
-				scene.add( light.target );
-			</code>
-
-			This is so that the target's [page:Object3D.matrixWorld matrixWorld] gets automatically
-			updated each frame.<br /><br />
-
-			It is also possible to set the target to be another object in the scene (anything with a
-			[page:Object3D.position position] property), like so:
-			<code>
-var targetObject = new THREE.Object3D();
-scene.add(targetObject);
-
-light.target = targetObject;
-			</code>
-			The spotlight will now track the target object.
-		</div>
-
-
-		<h2>Methods</h2>
-
-		See the base [page:Light Light] class for common methods.
-
-		<h3>[method:SpotLight copy]( [page:SpotLight source] )</h3>
-		<div>
-		Copies value of all the properties from the [page:SpotLight source] to this
-		SpotLight.
-		</div>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Object3D] &rarr; [page:Light] &rarr;
+
+		<h1>[name]</h1>
+
+		<div class="desc">
+			This light gets emitted from a single point in one direction, along a cone that increases in size
+			the further from the light it gets. <br /><br />
+
+			This light can cast shadows - see the [page:SpotLightShadow] page for details.
+		</div>
+
+
+
+
+		<h2>Example</h2>
+
+		<iframe src='../examples/webgl_lights_spotlight.html'></iframe>
+		<div>
+			[example:webgl_lights_spotlight View in Examples ]
+		</div>
+
+		<h2>Other Examples</h2>
+
+		<div>
+			[example:webgl_interactive_cubes_gpu interactive / cubes / gpu ]<br />
+			[example:webgl_interactive_draggablecubes interactive / draggablecubes ]<br />
+			[example:webgl_materials_bumpmap_skin materials / bumpmap / skin ]<br />
+			[example:webgl_materials_cubemap_dynamic materials / cubemap / dynamic ]<br />
+			[example:webgl_loader_md2 loader / md2 ]<br />
+			[example:webgl_shading_physical shading / physical ]<br />
+			[example:webgl_materials_bumpmap materials / bumpmap]<br/>
+			[example:webgl_shading_physical shading / physical]<br/>
+			[example:webgl_shadowmap shadowmap]<br/>
+			[example:webgl_shadowmap_performance shadowmap / performance]<br/>
+			[example:webgl_shadowmap_viewer shadowmap / viewer]
+		</div>
+
+		<h2>Code Example</h2>
+		<code>
+		// white spotlight shining from the side, casting a shadow
+
+		var spotLight = new THREE.SpotLight( 0xffffff );
+		spotLight.position.set( 100, 1000, 100 );
+
+		spotLight.castShadow = true;
+
+		spotLight.shadow.mapSize.width = 1024;
+		spotLight.shadow.mapSize.height = 1024;
+
+		spotLight.shadow.camera.near = 500;
+		spotLight.shadow.camera.far = 4000;
+		spotLight.shadow.camera.fov = 30;
+
+		scene.add( spotLight );
+		</code>
+
+		<h2>Constructor</h2>
+
+
+		<h3>[name]( [page:Integer color], [page:Float intensity], [page:Float distance], [page:Radians angle], [page:Float penumbra], [page:Float decay] )</h3>
+		<div>
+			[page:Integer color] - (optional) hexadecimal color of the light. Default is 0xffffff (white).<br />
+			[page:Float intensity] - (optional) numeric value of the light's strength/intensity. Default is 1.<br /><br />
+			[page:Float distance] - Maximum distance from origin where light will shine whose intensity
+			is attenuated linearly based on distance from origin. <br />
+			[page:Radians angle] - Maximum angle of light dispersion from its direction whose upper
+			bound is Math.PI/2.<br />
+			[page:Float penumbra] - Percent of the spotlight cone that is attenuated due to penumbra.
+			Takes values between zero and 1. Default is zero.<br />
+			[page:Float decay] - The amount the light dims along the distance of the light.<br /><br />
+
+			Creates a new [name].
+		</div>
+
+		<h2>Properties</h2>
+
+		See the base [page:Light Light] class for common properties.
+
+		<h3>[property:Float angle]</h3>
+		<div>
+			Maximum extent of the spotlight, in radians, from its direction. Should be no more than
+			*Math.PI/2*. The default is *Math.PI/3*.
+		</div>
+
+
+		<h3>[property:Boolean castShadow]</h3>
+		<div>
+			If set to *true* light will cast dynamic shadows. *Warning*: This is expensive and
+			requires tweaking to get shadows looking right. See the [page:SpotLightShadow] for details.
+			The default is *false*.
+		</div>
+
+		<h3>[property:Float decay]</h3>
+		<div>
+			The amount the light dims along the distance of the light.<br />
+			In [page:WebGLRenderer.physicallyCorrectLights physically correct] mode, decay = 2 leads to
+			physically realistic light falloff. The default is *1*.
+		</div>
+
+		<h3>[property:Float distance]</h3>
+		<div>
+			If non-zero, light will attenuate linearly from maximum intensity at the light's
+			position down to zero at this distance from the light. Default is *0.0*.
+		</div>
+
+		<h3>[property:Boolean isSpotLight]</h3>
+		<div>
+			Used to check whether this or derived classes are spot lights. Default is *true*.<br /><br />
+
+			You should not change this, as it used internally for optimisation.
+		</div>
+
+		<h3>[property:Float penumbra]</h3>
+		<div>
+			Percent of the spotlight cone that is attenuated due to penumbra. Takes values between
+			zero and 1. The default is *0.0*.
+		</div>
+
+		<h3>[property:Vector3 position]</h3>
+		<div>
+			This is set equal to [page:Object3D.DefaultUp] (0, 1, 0), so that the light shines from the top down.
+		</div>
+
+		<h3>[property:Float power]</h3>
+		<div>
+			The light's power.<br />
+			In [page:WebGLRenderer.physicallyCorrectLights physically correct] mode, the luminous
+			power of the light measured in lumens. Default is *4Math.PI*. <br /><br />
+
+			This is directly related to the [page:.intensity intensity] in the ratio
+			<code>
+				power = intensity * &pi;
+			</code>
+			and changing this will also change the intensity.
+		</div>
+
+		<h3>[property:SpotLightShadow shadow]</h3>
+		<div>
+			A [page:SpotLightShadow] used to calculate shadows for this light.
+		</div>
+
+
+		<h3>[property:Object3D target]</h3>
+		<div>
+			The Spotlight points from its [page:.position position] to target.position. The default
+			position of the target is *(0, 0, 0)*.<br />
+
+			*Note*: For the target's position to be changed to anything other than the default,
+			it must be added to the [page:Scene scene] using
+			<code>
+				scene.add( light.target );
+			</code>
+
+			This is so that the target's [page:Object3D.matrixWorld matrixWorld] gets automatically
+			updated each frame.<br /><br />
+
+			It is also possible to set the target to be another object in the scene (anything with a
+			[page:Object3D.position position] property), like so:
+			<code>
+var targetObject = new THREE.Object3D();
+scene.add(targetObject);
+
+light.target = targetObject;
+			</code>
+			The spotlight will now track the target object.
+		</div>
+
+
+		<h2>Methods</h2>
+
+		See the base [page:Light Light] class for common methods.
+
+		<h3>[method:SpotLight copy]( [page:SpotLight source] )</h3>
+		<div>
+		Copies value of all the properties from the [page:SpotLight source] to this
+		SpotLight.
+		</div>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 108 - 108
docs/api/loaders/JSONLoader.html

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

+ 1 - 1
docs/api/loaders/Loader.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/loaders/LoaderUtils.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 232 - 232
docs/api/loaders/ObjectLoader.html

@@ -1,232 +1,232 @@
-<!DOCTYPE html>
-<html lang="en">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../" />
-		<script src="list.js"></script>
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>[name]</h1>
-
-		<div class="desc">
-			A loader for loading a JSON resource. Unlike the [page:JSONLoader], this one make use of the
-			<em>.type</em> attributes of objects to map them to their original classes.<br /><br />
-
-			Note that this loader can't load [page:Geometries]. Use [page:JSONLoader] instead for that.<br /><br />
-
-			This uses the [page:FileLoader] internally for loading files.
-		</div>
-
-		<h2>Example</h2>
-
-		<div>
-
-			[example:webgl_animation_scene WebGL / animation / scene]<br />
-			[example:webgl_loader_json_claraio WebGL / loader / json / claraio]<br />
-			[example:webgl_loader_msgpack WebGL / loader / msgpack]
-		</div>
-
-		<code>
-		var loader = new THREE.ObjectLoader();
-
-		loader.load(
-			// resource URL
-			"models/json/example.json",
-
-			// onLoad callback
-			// Here the loaded data is assumed to be an object
-			function ( obj ) {
-				// Add the loaded object to the scene
-				scene.add( obj );
-			},
-
-			// onProgress callback
-			function ( xhr ) {
-				console.log( (xhr.loaded / xhr.total * 100) + '% loaded' );
-			},
-
-			// onError callback
-			function ( err ) {
-				console.error( 'An error happened' );
-			}
-		);
-
-
-		// Alternatively, to parse a previously loaded JSON structure
-		var object = loader.parse( a_json_object );
-
-		scene.add( object );
-		</code>
-
-
-
-		<h2>Constructor</h2>
-
-		<h3>[name]( [page:LoadingManager manager] )</h3>
-		<div>
-		[page:LoadingManager manager] — The [page:LoadingManager loadingManager] for the loader to use. Default is [page:LoadingManager THREE.DefaultLoadingManager].<br /><br />
-
-		Creates a new [name].
-		</div>
-
-
-		<h2>Properties</h2>
-
-		<h3>[property:String crossOrigin]</h3>
-		<div>
-		If set, assigns the [link:https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_settings_attributes crossOrigin]
-	 attribute of the image to the value of *crossOrigin*,
-		prior to starting the load. Default is *undefined*.
-		</div>
-
-		<h3>[property:LoadingManager manager]</h3>
-		<div>
-			The [page:LoadingManager loadingManager]  the loader is using. Default is [page:DefaultLoadingManager].
-		</div>
-
-		<h3>[property:String texturePath]</h3>
-		<div>
-			The base path or URL from which textures will be loaded. See [page:.setTexturePath].
-			Default is the empty string.
-		</div>
-
-		<h2>Methods</h2>
-
-		<h3>[method:null load]( [page:String url], [page:Function onLoad], [page:Function onProgress], [page:Function onError] )</h3>
-		<div>
-		[page:String url] — the path or URL to the file. This can also be a
-			[link:https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs Data URI].<br />
-		[page:Function onLoad] — Will be called when load completes. The argument will be the loaded [page:Object3D object].<br />
-		[page:Function onProgress] — Will be called while load progresses. The argument will be the XMLHttpRequest instance, which contains .[page:Integer total] and .[page:Integer loaded] bytes.<br />
-		[page:Function onError] — Will be called when load errors.<br />
-		</div>
-		<div>
-		Begin loading from url and call onLoad with the parsed response content.
-		</div>
-
-
-		<h3>[method:Object3D parse]( [page:Object json], [page:Function onLoad]  )</h3>
-		<div>
-		[page:Object json] — required. The JSON source to parse.<br /><br />
-		[page:Function onLoad] — Will be called when parsed completes. The argument will be the parsed [page:Object3D object].<br />
-
-		Parse a <em>JSON</em> structure and return a threejs object.
-		This is used internally by [page:.load], but can also be used directly to parse
-		a previously loaded JSON structure.
-		</div>
-
-		<h3>[method:Object3D parseGeometries]( [page:Object json] )</h3>
-		<div>
-		[page:Object json] — required. The JSON source to parse.<br /><br />
-
-		This is used [page:.parse] to parse any [page:Geometry geometries] or [page:BufferGeometry buffer geometries]  in the JSON structure.
-		Internally it uses [page:JSONLoader] for geometries and [page:BufferGeometryLoader] for buffer geometries.
-		</div>
-
-		<h3>[method:Object3D parseMaterials]( [page:Object json] )</h3>
-		<div>
-		[page:Object json] — required. The JSON source to parse.<br /><br />
-
-		This is used [page:.parse] to parse any materials in the JSON structure using [page:MaterialLoader].
-		</div>
-
-		<h3>[method:Object3D parseAnimations]( [page:Object json] )</h3>
-		<div>
-		[page:Object json] — required. The JSON source to parse.<br /><br />
-
-		This is used [page:.parse] to parse any animations in the JSON structure, using [page:AnimationClip.parse].
-		</div>
-
-		<h3>[method:Object3D parseImages]( [page:Object json] )</h3>
-		<div>
-		[page:Object json] — required. The JSON source to parse.<br /><br />
-
-		This is used [page:.parse] to parse any images in the JSON structure, using [page:ImageLoader].
-		</div>
-
-		<h3>[method:Object3D parseTextures]( [page:Object json] )</h3>
-		<div>
-		[page:Object json] — required. The JSON source to parse.<br /><br />
-
-		This is used [page:.parse] to parse any textures in the JSON structure.
-		</div>
-
-		<h3>[method:Object3D parseObject]( [page:Object json] )</h3>
-		<div>
-		[page:Object json] — required. The JSON source to parse.<br /><br />
-
-		This is used [page:.parse] to parse any objects in the JSON structure.
-		Objects can be of the following types:
-
-		<ul>
-			<li>
-				[page:Scene]
-			</li>
-			<li>
-				[page:PerspectiveCamera]
-			</li>
-			<li>
-				[page:OrthographicCamera]
-			</li>
-			<li>
-				[page:AmbientLight]
-			</li>
-			<li>
-				[page:DirectionalLight]
-			</li>
-			<li>
-				[page:PointLight]
-			</li>
-			<li>
-				[page:SpotLight]
-			</li>
-			<li>
-				[page:HemisphereLight]
-			</li>
-			<li>
-				[page:Mesh]
-			</li>
-			<li>
-				[page:LOD]
-			</li>
-			<li>
-				[page:Line]
-			</li>
-			<li>
-				[page:LineSegments]
-			</li>
-			<li>
-				[page:Points]
-			</li>
-			<li>
-				[page:Sprite]
-			</li>
-			<li>
-				[page:Group]
-			</li>
-			<li>
-				[page:Object3D]
-			</li>
-
-		</ul>
-		</div>
-
-		<h3>[method:null setCrossOrigin]( [page:String value] )</h3>
-		<div>
-		[page:String value] — The crossOrigin string to implement CORS for loading the url from a different domain that allows CORS.
-		</div>
-
-		<h3>[method:null setTexturePath]( [page:String value] )</h3>
-		<div>
-		[page:String value] — The base path or URL from which textures will be loaded.<br /><br />
-
-
-		</div>
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		<h1>[name]</h1>
+
+		<div class="desc">
+			A loader for loading a JSON resource. Unlike the [page:JSONLoader], this one make use of the
+			<em>.type</em> attributes of objects to map them to their original classes.<br /><br />
+
+			Note that this loader can't load [page:Geometries]. Use [page:JSONLoader] instead for that.<br /><br />
+
+			This uses the [page:FileLoader] internally for loading files.
+		</div>
+
+		<h2>Example</h2>
+
+		<div>
+
+			[example:webgl_animation_scene WebGL / animation / scene]<br />
+			[example:webgl_loader_json_claraio WebGL / loader / json / claraio]<br />
+			[example:webgl_loader_msgpack WebGL / loader / msgpack]
+		</div>
+
+		<code>
+		var loader = new THREE.ObjectLoader();
+
+		loader.load(
+			// resource URL
+			"models/json/example.json",
+
+			// onLoad callback
+			// Here the loaded data is assumed to be an object
+			function ( obj ) {
+				// Add the loaded object to the scene
+				scene.add( obj );
+			},
+
+			// onProgress callback
+			function ( xhr ) {
+				console.log( (xhr.loaded / xhr.total * 100) + '% loaded' );
+			},
+
+			// onError callback
+			function ( err ) {
+				console.error( 'An error happened' );
+			}
+		);
+
+
+		// Alternatively, to parse a previously loaded JSON structure
+		var object = loader.parse( a_json_object );
+
+		scene.add( object );
+		</code>
+
+
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( [page:LoadingManager manager] )</h3>
+		<div>
+		[page:LoadingManager manager] — The [page:LoadingManager loadingManager] for the loader to use. Default is [page:LoadingManager THREE.DefaultLoadingManager].<br /><br />
+
+		Creates a new [name].
+		</div>
+
+
+		<h2>Properties</h2>
+
+		<h3>[property:String crossOrigin]</h3>
+		<div>
+		If set, assigns the [link:https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_settings_attributes crossOrigin]
+	 attribute of the image to the value of *crossOrigin*,
+		prior to starting the load. Default is *undefined*.
+		</div>
+
+		<h3>[property:LoadingManager manager]</h3>
+		<div>
+			The [page:LoadingManager loadingManager]  the loader is using. Default is [page:DefaultLoadingManager].
+		</div>
+
+		<h3>[property:String texturePath]</h3>
+		<div>
+			The base path or URL from which textures will be loaded. See [page:.setTexturePath].
+			Default is the empty string.
+		</div>
+
+		<h2>Methods</h2>
+
+		<h3>[method:null load]( [page:String url], [page:Function onLoad], [page:Function onProgress], [page:Function onError] )</h3>
+		<div>
+		[page:String url] — the path or URL to the file. This can also be a
+			[link:https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs Data URI].<br />
+		[page:Function onLoad] — Will be called when load completes. The argument will be the loaded [page:Object3D object].<br />
+		[page:Function onProgress] — Will be called while load progresses. The argument will be the XMLHttpRequest instance, which contains .[page:Integer total] and .[page:Integer loaded] bytes.<br />
+		[page:Function onError] — Will be called when load errors.<br />
+		</div>
+		<div>
+		Begin loading from url and call onLoad with the parsed response content.
+		</div>
+
+
+		<h3>[method:Object3D parse]( [page:Object json], [page:Function onLoad]  )</h3>
+		<div>
+		[page:Object json] — required. The JSON source to parse.<br /><br />
+		[page:Function onLoad] — Will be called when parsed completes. The argument will be the parsed [page:Object3D object].<br />
+
+		Parse a <em>JSON</em> structure and return a threejs object.
+		This is used internally by [page:.load], but can also be used directly to parse
+		a previously loaded JSON structure.
+		</div>
+
+		<h3>[method:Object3D parseGeometries]( [page:Object json] )</h3>
+		<div>
+		[page:Object json] — required. The JSON source to parse.<br /><br />
+
+		This is used [page:.parse] to parse any [page:Geometry geometries] or [page:BufferGeometry buffer geometries]  in the JSON structure.
+		Internally it uses [page:JSONLoader] for geometries and [page:BufferGeometryLoader] for buffer geometries.
+		</div>
+
+		<h3>[method:Object3D parseMaterials]( [page:Object json] )</h3>
+		<div>
+		[page:Object json] — required. The JSON source to parse.<br /><br />
+
+		This is used [page:.parse] to parse any materials in the JSON structure using [page:MaterialLoader].
+		</div>
+
+		<h3>[method:Object3D parseAnimations]( [page:Object json] )</h3>
+		<div>
+		[page:Object json] — required. The JSON source to parse.<br /><br />
+
+		This is used [page:.parse] to parse any animations in the JSON structure, using [page:AnimationClip.parse].
+		</div>
+
+		<h3>[method:Object3D parseImages]( [page:Object json] )</h3>
+		<div>
+		[page:Object json] — required. The JSON source to parse.<br /><br />
+
+		This is used [page:.parse] to parse any images in the JSON structure, using [page:ImageLoader].
+		</div>
+
+		<h3>[method:Object3D parseTextures]( [page:Object json] )</h3>
+		<div>
+		[page:Object json] — required. The JSON source to parse.<br /><br />
+
+		This is used [page:.parse] to parse any textures in the JSON structure.
+		</div>
+
+		<h3>[method:Object3D parseObject]( [page:Object json] )</h3>
+		<div>
+		[page:Object json] — required. The JSON source to parse.<br /><br />
+
+		This is used [page:.parse] to parse any objects in the JSON structure.
+		Objects can be of the following types:
+
+		<ul>
+			<li>
+				[page:Scene]
+			</li>
+			<li>
+				[page:PerspectiveCamera]
+			</li>
+			<li>
+				[page:OrthographicCamera]
+			</li>
+			<li>
+				[page:AmbientLight]
+			</li>
+			<li>
+				[page:DirectionalLight]
+			</li>
+			<li>
+				[page:PointLight]
+			</li>
+			<li>
+				[page:SpotLight]
+			</li>
+			<li>
+				[page:HemisphereLight]
+			</li>
+			<li>
+				[page:Mesh]
+			</li>
+			<li>
+				[page:LOD]
+			</li>
+			<li>
+				[page:Line]
+			</li>
+			<li>
+				[page:LineSegments]
+			</li>
+			<li>
+				[page:Points]
+			</li>
+			<li>
+				[page:Sprite]
+			</li>
+			<li>
+				[page:Group]
+			</li>
+			<li>
+				[page:Object3D]
+			</li>
+
+		</ul>
+		</div>
+
+		<h3>[method:null setCrossOrigin]( [page:String value] )</h3>
+		<div>
+		[page:String value] — The crossOrigin string to implement CORS for loading the url from a different domain that allows CORS.
+		</div>
+
+		<h3>[method:null setTexturePath]( [page:String value] )</h3>
+		<div>
+		[page:String value] — The base path or URL from which textures will be loaded.<br /><br />
+
+
+		</div>
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 109 - 109
docs/api/materials/LineBasicMaterial.html

@@ -1,109 +1,109 @@
-<!DOCTYPE html>
-<html lang="en">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../" />
-		<script src="list.js"></script>
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		[page:Material] &rarr;
-
-		<h1>[name]</h1>
-
-		<div class="desc">A material for drawing wireframe-style geometries.</div>
-
-		<h2>Examples</h2>
-
-		<div>
-			[example:webgl_buffergeometry_drawcalls WebGL / buffergeometry / drawcalls]<br />
-			[example:webgl_buffergeometry_lines WebGL / buffergeometry / lines]<br />
-			[example:webgl_buffergeometry_lines_indexed WebGL / buffergeometry / lines / indexed]<br />
-			[example:webgl_decals WebGL / decals]<br />
-			[example:webgl_geometry_nurbs WebGL / geometry / nurbs]<br />
-			[example:webgl_geometry_shapes WebGL / geometry / shapes]<br />
-			[example:webgl_geometry_spline_editor WebGL / geometry / spline / editor]<br />
-			[example:webgl_interactive_buffergeometry WebGL / interactive / buffergeometry]<br />
-			[example:webgl_interactive_voxelpainter WebGL / interactive / voxelpainter]<br />
-			[example:webgl_lines_colors WebGL / lines / colors]<br />
-			[example:webgl_lines_cubes WebGL / lines / cubes]<br />
-			[example:webgl_lines_dashed WebGL / lines / dashed]<br />
-			[example:webgl_lines_sphere WebGL / lines / sphere]<br />
-			[example:webgl_lines_splines WebGL / lines / splines]<br />
-			[example:webgl_materials WebGL / materials]<br />
-			[example:webgl_physics_rope WebGL / phyics / rope]
-		</div>
-
-		<code>
-var material = new THREE.LineBasicMaterial( {
-	color: 0xffffff,
-	linewidth: 1,
-	linecap: 'round', //ignored by WebGLRenderer
-	linejoin:  'round' //ignored by WebGLRenderer
-} );
-		</code>
-
-		<h2>Constructor</h2>
-
-		<h3>[name]( [page:Object parameters] )</h3>
-
-		<div>
-		[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.
-		</div>
-
-		<h2>Properties</h2>
-		<div>See the base [page:Material] class for common properties.</div>
-
-		<h3>[property:Color color]</h3>
-		<div>[page:Color] of the material, by default set to white (0xffffff).</div>
-
-		<h3>[property:Boolean isLineBasicMaterial]</h3>
-		<div>
-			Used to check whether this or derived classes are line basic materials. Default is *true*.<br /><br />
-
-			You should not change this, as it used internally for optimisation.
-		</div>
-
-		<h3>[property:Boolean lights]</h3>
-		<div>Whether the material is affected by lights. Default is *false*.</div>
-
-		<h3>[property:Float linewidth]</h3>
-		<div>
-			Controls line thickness. Default is *1*.<br /><br />
-
-			Due to limitations in the [link:https://code.google.com/p/angleproject ANGLE layer],
-			with the [page:WebGLRenderer WebGL] renderer on Windows platforms linewidth will
-			always be 1 regardless of the set value.
-		</div>
-
-		<h3>[property:String linecap]</h3>
-		<div>
-			Define appearance of line ends. Possible values are 'butt', 'round' and 'square'.
-			Default is 'round'.<br /><br />
-
-			This corresponds to the [link:https://developer.mozilla.org/en/docs/Web/API/CanvasRenderingContext2D/lineCap 2D Canvas lineCap]
-			property and it is ignored by the [page:WebGLRenderer WebGL] renderer.
-		</div>
-
-		<h3>[property:String linejoin]</h3>
-		<div>
-			Define appearance of line joints. Possible values are 'round', 'bevel' and 'miter'. Default is 'round'. <br /><br />
-
-			This corresponds to the [link:https://developer.mozilla.org/en/docs/Web/API/CanvasRenderingContext2D/lineJoin 2D Canvas lineJoin]
-			property and it is ignored by the [page:WebGLRenderer WebGL] renderer.
-		</div>
-
-
-		<h2>Methods</h2>
-		<div>See the base [page:Material] class for common methods.</div>
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!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>
+
+		<div class="desc">A material for drawing wireframe-style geometries.</div>
+
+		<h2>Examples</h2>
+
+		<div>
+			[example:webgl_buffergeometry_drawcalls WebGL / buffergeometry / drawcalls]<br />
+			[example:webgl_buffergeometry_lines WebGL / buffergeometry / lines]<br />
+			[example:webgl_buffergeometry_lines_indexed WebGL / buffergeometry / lines / indexed]<br />
+			[example:webgl_decals WebGL / decals]<br />
+			[example:webgl_geometry_nurbs WebGL / geometry / nurbs]<br />
+			[example:webgl_geometry_shapes WebGL / geometry / shapes]<br />
+			[example:webgl_geometry_spline_editor WebGL / geometry / spline / editor]<br />
+			[example:webgl_interactive_buffergeometry WebGL / interactive / buffergeometry]<br />
+			[example:webgl_interactive_voxelpainter WebGL / interactive / voxelpainter]<br />
+			[example:webgl_lines_colors WebGL / lines / colors]<br />
+			[example:webgl_lines_cubes WebGL / lines / cubes]<br />
+			[example:webgl_lines_dashed WebGL / lines / dashed]<br />
+			[example:webgl_lines_sphere WebGL / lines / sphere]<br />
+			[example:webgl_lines_splines WebGL / lines / splines]<br />
+			[example:webgl_materials WebGL / materials]<br />
+			[example:webgl_physics_rope WebGL / phyics / rope]
+		</div>
+
+		<code>
+var material = new THREE.LineBasicMaterial( {
+	color: 0xffffff,
+	linewidth: 1,
+	linecap: 'round', //ignored by WebGLRenderer
+	linejoin:  'round' //ignored by WebGLRenderer
+} );
+		</code>
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( [page:Object parameters] )</h3>
+
+		<div>
+		[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.
+		</div>
+
+		<h2>Properties</h2>
+		<div>See the base [page:Material] class for common properties.</div>
+
+		<h3>[property:Color color]</h3>
+		<div>[page:Color] of the material, by default set to white (0xffffff).</div>
+
+		<h3>[property:Boolean isLineBasicMaterial]</h3>
+		<div>
+			Used to check whether this or derived classes are line basic materials. Default is *true*.<br /><br />
+
+			You should not change this, as it used internally for optimisation.
+		</div>
+
+		<h3>[property:Boolean lights]</h3>
+		<div>Whether the material is affected by lights. Default is *false*.</div>
+
+		<h3>[property:Float linewidth]</h3>
+		<div>
+			Controls line thickness. Default is *1*.<br /><br />
+
+			Due to limitations in the [link:https://code.google.com/p/angleproject ANGLE layer],
+			with the [page:WebGLRenderer WebGL] renderer on Windows platforms linewidth will
+			always be 1 regardless of the set value.
+		</div>
+
+		<h3>[property:String linecap]</h3>
+		<div>
+			Define appearance of line ends. Possible values are 'butt', 'round' and 'square'.
+			Default is 'round'.<br /><br />
+
+			This corresponds to the [link:https://developer.mozilla.org/en/docs/Web/API/CanvasRenderingContext2D/lineCap 2D Canvas lineCap]
+			property and it is ignored by the [page:WebGLRenderer WebGL] renderer.
+		</div>
+
+		<h3>[property:String linejoin]</h3>
+		<div>
+			Define appearance of line joints. Possible values are 'round', 'bevel' and 'miter'. Default is 'round'. <br /><br />
+
+			This corresponds to the [link:https://developer.mozilla.org/en/docs/Web/API/CanvasRenderingContext2D/lineJoin 2D Canvas lineJoin]
+			property and it is ignored by the [page:WebGLRenderer WebGL] renderer.
+		</div>
+
+
+		<h2>Methods</h2>
+		<div>See the base [page:Material] class for common methods.</div>
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

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

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 23 - 0
docs/api/materials/ShaderMaterial.html

@@ -44,6 +44,29 @@
 				If you don't want the [page:WebGLProgram] to add anything to your shader code, you can use
 				[page:RawShaderMaterial] instead of this class.
 			</li>
+			<li>
+				You can use the directive #pragma unroll_loop in order to unroll a *for* loop in GLSL by the shader preprocessor.
+				The directive has to be placed right above the loop. The loop formatting has to correspond to a defined standard.
+				<ul>
+					<li>
+						The loop has to be [link:https://en.wikipedia.org/wiki/Normalized_loop normalized].
+					</li>
+					<li>
+						The loop variable has to be *i*.
+					</li>
+					<li>
+						The loop has to use a certain whitespace formatting.
+					</li>
+				</ul>
+				<code>
+		#pragma unroll_loop
+		for ( int i = 0; i < 10; i ++ ) {
+
+			// ...
+
+		}
+				</code>
+			</li>
 		</ul>
 		</div>
 

+ 1 - 1
docs/api/materials/SpriteMaterial.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 2 - 2
docs/api/math/Plane.html

@@ -149,8 +149,8 @@
 		<h3>[method:Plane setFromCoplanarPoints]( [page:Vector3 a], [page:Vector3 b], [page:Vector3 c] )</h3>
 		<div>
 		 [page:Vector3 a] - first point on the plane.<br />
-		 [page:Vector3 a] - second point on the plane.<br />
-		 [page:Vector3 a] - third point on the plane.<br /><br />
+		 [page:Vector3 b] - second point on the plane.<br />
+		 [page:Vector3 c] - third point on the plane.<br /><br />
 
 		Defines the plane based on the 3 provided points. The winding order is assumed to be counter-clockwise,
 		and determines the direction of the [page:.normal normal].

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

@@ -12,7 +12,7 @@
 
 		<div class="desc">
 			A ray that emits from an origin in a certain direction. This is used by the
-			[page:RayCaster] to assist with [link:https://en.wikipedia.org/wiki/Ray_casting raycasting].
+			[page:Raycaster] to assist with [link:https://en.wikipedia.org/wiki/Ray_casting raycasting].
 			Raycasting is used for mouse picking (working out what objects in the 3D space the mouse is over) amongst
 			other things.
 		</div>

+ 5 - 0
docs/api/objects/Line.html

@@ -74,6 +74,11 @@
 		<h2>Methods</h2>
 		<div>See the base [page:Object3D] class for common methods.</div>
 
+		<h3>[method:Line computeLineDistances]()</h3>
+		<div>
+		Computes an array of distance values which are necessary for [page:LineDashedMaterial]. For each vertex in the geometry, the method calculates the cumulative length from the current point to the very beginning of the line.
+		</div>
+
 		<h3>[method:Array raycast]( [page:Raycaster raycaster], [page:Array intersects] )</h3>
 		<div>
 		Get intersections between a casted [page:Ray] and this Line.

+ 110 - 110
docs/api/objects/Skeleton.html

@@ -1,110 +1,110 @@
-<!DOCTYPE html>
-<html lang="en">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../" />
-		<script src="list.js"></script>
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-
-		<h1>[name]</h1>
-
-		<div class="desc">
-		Use an array of [page:Bone bones] to create a skeleton that can be used by a
-		[page:SkinnedMesh].
-		</div>
-
-		<h2>Example</h2>
-		<div>
-
-<code>
-// Create a simple "arm"
-
-var bones = [];
-
-var shoulder = new THREE.Bone();
-var elbow = new THREE.Bone();
-var hand = new THREE.Bone();
-
-shoulder.add( elbow );
-elbow.add( hand );
-
-bones.push( shoulder );
-bones.push( elbow );
-bones.push( hand );
-
-shoulder.position.y = -5;
-elbow.position.y = 0;
-hand.position.y = 5;
-
-var armSkeleton = new THREE.Skeleton( bones );
-</code>
-			See the [page:SkinnedMesh] page for an example of usage with standard [page:BufferGeometry].
- 		</div>
-
-		<h2>Constructor</h2>
-
-
-		<h3>[name]( [page:Array bones], [page:Array boneInverses] )</h3>
-		<div>
-		[page:Array bones] - The array of [page:Bone bones]. Default is an empty array.<br/>
-		[page:Array boneInverses] - (optional) An array of [page:Matrix4 Matrix4s].<br /><br />
-
-		Creates a new [name].
-		</div>
-
-
-		<h2>Properties</h2>
-
-		<h3>[property:Array bones]</h3>
-		<div>
-		The array of [page:bone bones]. Note this is a copy of the original array, not a reference,
-		so you can modify the original array without effecting this one.
-		</div>
-
-		<h3>[property:Array boneInverses]</h3>
-		<div>
-		An array of [page:Matrix4 Matrix4s] that represent the inverse of the [page:Matrix4 matrixWorld]
-		of the individual bones.
-		</div>
-
-		<h3>[property:Float32Array boneMatrices]</h3>
-		<div>
-		The array buffer holding the bone data when using a vertex texture.
-		</div>
-
-		<h3>[property:DataTexture boneTexture]</h3>
-		<div>
-		The [page:DataTexture] holding the bone data when using a vertex texture.
-		</div>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:Skeleton clone]()</h3>
-		<div>
-		Returns a clone of this Skeleton object.
-		</div>
-
-
-		<h3>[method:null calculateInverses]()</h3>
-		<div>Generates the [page:.boneInverses boneInverses] array if not provided in the constructor.</div>
-
-
-		<h3>[method:null pose]()</h3>
-		<div>Returns the skeleton to the base pose.</div>
-
-
-		<h3>[method:null update]()</h3>
-		<div>
-		Updates the [page:Float32Array boneMatrices] and [page:DataTexture boneTexture] after changing the bones.
-		This is called automatically by the [page:WebGLRenderer] if the skeleton is used with a [page:SkinnedMesh].
-		</div>
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+
+		<h1>[name]</h1>
+
+		<div class="desc">
+		Use an array of [page:Bone bones] to create a skeleton that can be used by a
+		[page:SkinnedMesh].
+		</div>
+
+		<h2>Example</h2>
+		<div>
+
+<code>
+// Create a simple "arm"
+
+var bones = [];
+
+var shoulder = new THREE.Bone();
+var elbow = new THREE.Bone();
+var hand = new THREE.Bone();
+
+shoulder.add( elbow );
+elbow.add( hand );
+
+bones.push( shoulder );
+bones.push( elbow );
+bones.push( hand );
+
+shoulder.position.y = -5;
+elbow.position.y = 0;
+hand.position.y = 5;
+
+var armSkeleton = new THREE.Skeleton( bones );
+</code>
+			See the [page:SkinnedMesh] page for an example of usage with standard [page:BufferGeometry].
+ 		</div>
+
+		<h2>Constructor</h2>
+
+
+		<h3>[name]( [page:Array bones], [page:Array boneInverses] )</h3>
+		<div>
+		[page:Array bones] - The array of [page:Bone bones]. Default is an empty array.<br/>
+		[page:Array boneInverses] - (optional) An array of [page:Matrix4 Matrix4s].<br /><br />
+
+		Creates a new [name].
+		</div>
+
+
+		<h2>Properties</h2>
+
+		<h3>[property:Array bones]</h3>
+		<div>
+		The array of [page:bone bones]. Note this is a copy of the original array, not a reference,
+		so you can modify the original array without effecting this one.
+		</div>
+
+		<h3>[property:Array boneInverses]</h3>
+		<div>
+		An array of [page:Matrix4 Matrix4s] that represent the inverse of the [page:Matrix4 matrixWorld]
+		of the individual bones.
+		</div>
+
+		<h3>[property:Float32Array boneMatrices]</h3>
+		<div>
+		The array buffer holding the bone data when using a vertex texture.
+		</div>
+
+		<h3>[property:DataTexture boneTexture]</h3>
+		<div>
+		The [page:DataTexture] holding the bone data when using a vertex texture.
+		</div>
+
+
+		<h2>Methods</h2>
+
+		<h3>[method:Skeleton clone]()</h3>
+		<div>
+		Returns a clone of this Skeleton object.
+		</div>
+
+
+		<h3>[method:null calculateInverses]()</h3>
+		<div>Generates the [page:.boneInverses boneInverses] array if not provided in the constructor.</div>
+
+
+		<h3>[method:null pose]()</h3>
+		<div>Returns the skeleton to the base pose.</div>
+
+
+		<h3>[method:null update]()</h3>
+		<div>
+		Updates the [page:Float32Array boneMatrices] and [page:DataTexture boneTexture] after changing the bones.
+		This is called automatically by the [page:WebGLRenderer] if the skeleton is used with a [page:SkinnedMesh].
+		</div>
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 90 - 90
docs/api/objects/Sprite.html

@@ -1,90 +1,90 @@
-<!DOCTYPE html>
-<html lang="en">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../" />
-		<script src="list.js"></script>
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		[page:Object3D] &rarr;
-
-		<h1>[name]</h1>
-
-		<div class="desc">
-			A sprite is a plane that always faces towards the camera, generally with a
-			partially transparent texture applied.<br /><br />
-
-			Sprites do not cast shadows, setting <code>castShadow = true</code> will have no effect.
-		</div>
-
-		<h2>Example</h2>
-
-		<code>
-var spriteMap = new THREE.TextureLoader().load( "sprite.png" );
-var spriteMaterial = new THREE.SpriteMaterial( { map: spriteMap, color: 0xffffff } );
-var sprite = new THREE.Sprite( spriteMaterial );
-scene.add( sprite );
-		</code>
-
-
-		<h2>Constructor</h2>
-
-		<h3>[name]( [page:Material material] )</h3>
-		<div>
-    [page:Material material] - (optional) an instance of [page:SpriteMaterial]. Default is a white [page:SpriteMaterial].<br /><br />
-
-		Creates a new [name].
-		</div>
-
-
-		<h2>Properties</h2>
-		<div>See the base [page:Object3D] class for common properties.</div>
-
-		<h3>[property:Boolean isSprite]</h3>
-		<div>
-			Used to check whether this or derived classes are sprites. Default is *true*.<br /><br />
-
-			You should not change this, as it used internally for optimisation.
-		</div>
-
-
-		<h3>[property:SpriteMaterial material]</h3>
-		<div>
-		An instance of [page:SpriteMaterial], defining the object's appearance.
-		Default is a white [page:SpriteMaterial].
-		</div>
-
-
-		<h3>[property:Vector2 center]</h3>
-		<div>
-		The sprite's anchor point, and the point around which the sprite rotates. A value of (0.5, 0.5) corresponds to the midpoint of the sprite.
-		A value of (0, 0) corresponds to the lower left corner of the sprite. The default is (0.5, 0.5).
-		</div>
-
-		<h2>Methods</h2>
-		<div>See the base [page:Object3D] class for common methods.</div>
-
-		<h3>[method:Sprite clone]()</h3>
-		<div>
-		Returns a clone of this Sprite object and any descendants.
-		</div>
-
-		<h3>[method:Sprite copy]( [page:Sprite sprite] )</h3>
-		<div>
-		Copies the properties of the passed sprite to this one.
-		</div>
-
-		<h3>[method:Array raycast]( [page:Raycaster raycaster], [page:Array intersects] )</h3>
-		<div>
-		Get intersections between a casted ray and this sprite.
-		[page:Raycaster.intersectObject] will call this method.
-		</div>
-
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		[page:Object3D] &rarr;
+
+		<h1>[name]</h1>
+
+		<div class="desc">
+			A sprite is a plane that always faces towards the camera, generally with a
+			partially transparent texture applied.<br /><br />
+
+			Sprites do not cast shadows, setting <code>castShadow = true</code> will have no effect.
+		</div>
+
+		<h2>Example</h2>
+
+		<code>
+var spriteMap = new THREE.TextureLoader().load( "sprite.png" );
+var spriteMaterial = new THREE.SpriteMaterial( { map: spriteMap, color: 0xffffff } );
+var sprite = new THREE.Sprite( spriteMaterial );
+scene.add( sprite );
+		</code>
+
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( [page:Material material] )</h3>
+		<div>
+    [page:Material material] - (optional) an instance of [page:SpriteMaterial]. Default is a white [page:SpriteMaterial].<br /><br />
+
+		Creates a new [name].
+		</div>
+
+
+		<h2>Properties</h2>
+		<div>See the base [page:Object3D] class for common properties.</div>
+
+		<h3>[property:Boolean isSprite]</h3>
+		<div>
+			Used to check whether this or derived classes are sprites. Default is *true*.<br /><br />
+
+			You should not change this, as it used internally for optimisation.
+		</div>
+
+
+		<h3>[property:SpriteMaterial material]</h3>
+		<div>
+		An instance of [page:SpriteMaterial], defining the object's appearance.
+		Default is a white [page:SpriteMaterial].
+		</div>
+
+
+		<h3>[property:Vector2 center]</h3>
+		<div>
+		The sprite's anchor point, and the point around which the sprite rotates. A value of (0.5, 0.5) corresponds to the midpoint of the sprite.
+		A value of (0, 0) corresponds to the lower left corner of the sprite. The default is (0.5, 0.5).
+		</div>
+
+		<h2>Methods</h2>
+		<div>See the base [page:Object3D] class for common methods.</div>
+
+		<h3>[method:Sprite clone]()</h3>
+		<div>
+		Returns a clone of this Sprite object and any descendants.
+		</div>
+
+		<h3>[method:Sprite copy]( [page:Sprite sprite] )</h3>
+		<div>
+		Copies the properties of the passed sprite to this one.
+		</div>
+
+		<h3>[method:Array raycast]( [page:Raycaster raycaster], [page:Array intersects] )</h3>
+		<div>
+		Get intersections between a casted ray and this sprite.
+		[page:Raycaster.intersectObject] will call this method.
+		</div>
+
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 134 - 134
docs/api/renderers/WebGLRenderTarget.html

@@ -1,134 +1,134 @@
-<!DOCTYPE html>
-<html lang="en">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../" />
-		<script src="list.js"></script>
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>[name]</h1>
-
-		<div class="desc">
-			A [link:https://msdn.microsoft.com/en-us/library/ff604997.aspx render target] is a buffer
-			where the video card draws pixels for a scene that	is being rendered in the background.
-			It is used in different effects, such as applying postprocessing to a rendered image
-			before displaying it on the screen.
-		</div>
-
-
-		<h2>Constructor</h2>
-
-
-		<h3>[name]([page:Number width], [page:Number height], [page:Object options])</h3>
-
-		<div>
-		[page:Float width] - The width of the renderTarget. <br />
-		[page:Float height] - The height of the renderTarget.<br />
-		options - (optional object that holds texture parameters for an auto-generated target
-		texture and depthBuffer/stencilBuffer booleans.
-
-		For an explanation of the texture parameters see [page:Texture Texture]. The following are
-		valid options:<br /><br />
-
-		[page:Constant wrapS] - default is [page:Textures ClampToEdgeWrapping]. <br />
-		[page:Constant wrapT] - default is [page:Textures ClampToEdgeWrapping]. <br />
-		[page:Constant magFilter] - default is [page:Textures LinearFilter]. <br />
-		[page:Constant minFilter] - default is [page:Textures LinearFilter]. <br />
-		[page:Constant format] - default is [page:Textures RGBAFormat]. <br />
-		[page:Constant type] - default is [page:Textures UnsignedByteType]. <br />
-		[page:Number anisotropy] - default is *1*. See [page:Texture.anistropy]<br />
-		[page:Constant encoding] - default is [page:Textures LinearEncoding]. <br />
-		[page:Boolean depthBuffer] - default is *true*. Set this to false if you don't need it. <br />
-		[page:Boolean stencilBuffer] - default is *true*. Set this to false if you don't need it.<br /><br />
-
-		Creates a new [name]
-		</div>
-
-		<h2>Properties</h2>
-
-		<h3>[property:number uuid]</h3>
-		<div>
-		A unique number for this render target instance.
-		</div>
-
-		<h3>[property:number width]</h3>
-		<div>
-		The width of the render target.
-		</div>
-
-		<h3>[property:number height]</h3>
-		<div>
-		The height of the render target.
-		</div>
-
-		<h3>[property:Vector4 scissor]</h3>
-		<div>
-		A rectangular area inside the render target's viewport. Fragments that are outside the area will be discarded.
-		</div>
-
-		<h3>[property:boolean scissorTest]</h3>
-		<div>
-		Indicates whether the scissor test is active or not.
-		</div>
-
-		<h3>[property:Vector4 viewport]</h3>
-		<div>
-		The viewport of this render target.
-		</div>
-
-		<h3>[property:Texture texture]</h3>
-		<div>
-		This texture instance holds the rendered pixels. Use it as input for further processing.
-		</div>
-
-		<h3>[property:boolean depthBuffer]</h3>
-		<div>
-		Renders to the depth buffer. Default is true.
-		</div>
-
-		<h3>[property:boolean stencilBuffer]</h3>
-		<div>
-		Renders to the stencil buffer. Default is true.
-		</div>
-
-		<h3>[property:DepthTexture depthTexture]</h3>
-		<div>
-		If set, the scene depth will be rendered to this texture. Default is null.
-		</div>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null setSize]( [page:Number width], [page:Number height] )</h3>
-		<div>
-		Sets the size of the render target.
-		</div>
-
-		<h3>[method:WebGLRenderTarget clone]()</h3>
-		<div>
-		Creates a copy of this render target.
-		</div>
-
-		<h3>[method:WebGLRenderTarget copy]( [page:WebGLRenderTarget source] )</h3>
-		<div>
-		Adopts the settings of the given render target.
-		</div>
-
-		<h3>[method:null dispose]()</h3>
-		<div>
-		Dispatches a dispose event.
-		</div>
-
-
-
-
-
-		<h3>[page:EventDispatcher EventDispatcher] methods are available on this class.</h3>
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		<h1>[name]</h1>
+
+		<div class="desc">
+			A [link:https://msdn.microsoft.com/en-us/library/ff604997.aspx render target] is a buffer
+			where the video card draws pixels for a scene that	is being rendered in the background.
+			It is used in different effects, such as applying postprocessing to a rendered image
+			before displaying it on the screen.
+		</div>
+
+
+		<h2>Constructor</h2>
+
+
+		<h3>[name]([page:Number width], [page:Number height], [page:Object options])</h3>
+
+		<div>
+		[page:Float width] - The width of the renderTarget. <br />
+		[page:Float height] - The height of the renderTarget.<br />
+		options - (optional object that holds texture parameters for an auto-generated target
+		texture and depthBuffer/stencilBuffer booleans.
+
+		For an explanation of the texture parameters see [page:Texture Texture]. The following are
+		valid options:<br /><br />
+
+		[page:Constant wrapS] - default is [page:Textures ClampToEdgeWrapping]. <br />
+		[page:Constant wrapT] - default is [page:Textures ClampToEdgeWrapping]. <br />
+		[page:Constant magFilter] - default is [page:Textures LinearFilter]. <br />
+		[page:Constant minFilter] - default is [page:Textures LinearFilter]. <br />
+		[page:Constant format] - default is [page:Textures RGBAFormat]. <br />
+		[page:Constant type] - default is [page:Textures UnsignedByteType]. <br />
+		[page:Number anisotropy] - default is *1*. See [page:Texture.anistropy]<br />
+		[page:Constant encoding] - default is [page:Textures LinearEncoding]. <br />
+		[page:Boolean depthBuffer] - default is *true*. Set this to false if you don't need it. <br />
+		[page:Boolean stencilBuffer] - default is *true*. Set this to false if you don't need it.<br /><br />
+
+		Creates a new [name]
+		</div>
+
+		<h2>Properties</h2>
+
+		<h3>[property:number uuid]</h3>
+		<div>
+		A unique number for this render target instance.
+		</div>
+
+		<h3>[property:number width]</h3>
+		<div>
+		The width of the render target.
+		</div>
+
+		<h3>[property:number height]</h3>
+		<div>
+		The height of the render target.
+		</div>
+
+		<h3>[property:Vector4 scissor]</h3>
+		<div>
+		A rectangular area inside the render target's viewport. Fragments that are outside the area will be discarded.
+		</div>
+
+		<h3>[property:boolean scissorTest]</h3>
+		<div>
+		Indicates whether the scissor test is active or not.
+		</div>
+
+		<h3>[property:Vector4 viewport]</h3>
+		<div>
+		The viewport of this render target.
+		</div>
+
+		<h3>[property:Texture texture]</h3>
+		<div>
+		This texture instance holds the rendered pixels. Use it as input for further processing.
+		</div>
+
+		<h3>[property:boolean depthBuffer]</h3>
+		<div>
+		Renders to the depth buffer. Default is true.
+		</div>
+
+		<h3>[property:boolean stencilBuffer]</h3>
+		<div>
+		Renders to the stencil buffer. Default is true.
+		</div>
+
+		<h3>[property:DepthTexture depthTexture]</h3>
+		<div>
+		If set, the scene depth will be rendered to this texture. Default is null.
+		</div>
+
+
+		<h2>Methods</h2>
+
+		<h3>[method:null setSize]( [page:Number width], [page:Number height] )</h3>
+		<div>
+		Sets the size of the render target.
+		</div>
+
+		<h3>[method:WebGLRenderTarget clone]()</h3>
+		<div>
+		Creates a copy of this render target.
+		</div>
+
+		<h3>[method:WebGLRenderTarget copy]( [page:WebGLRenderTarget source] )</h3>
+		<div>
+		Adopts the settings of the given render target.
+		</div>
+
+		<h3>[method:null dispose]()</h3>
+		<div>
+		Dispatches a dispose event.
+		</div>
+
+
+
+
+
+		<h3>[page:EventDispatcher EventDispatcher] methods are available on this class.</h3>
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 71 - 71
docs/api/renderers/WebGLRenderTargetCube.html

@@ -1,71 +1,71 @@
-<!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:WebGLRenderTarget] &rarr;
-
-		<h1>[name]</h1>
-
-		<div class="desc">
-			Used by the [page:CubeCamera] as its [page:WebGLRenderTarget].
-		</div>
-
-		<h2>Examples</h2>
-
-		<div>See [page:CubeCamera] for examples.</div>
-
-
-		<h2>Constructor</h2>
-
-
-		<h3>[name]([page:Number width], [page:Number height], [page:Object options])</h3>
-		<div>
-		[page:Float width] - The width of the renderTarget. <br />
-		[page:Float height] - The height of the renderTarget. <br />
-		options - (optional) object that holds texture parameters for an auto-generated target
-		texture and depthBuffer/stencilBuffer booleans.
-
-		For an explanation of the texture parameters see [page:Texture Texture]. The following are
-		valid options:<br /><br />
-
-		[page:Constant wrapS] - default is [page:Textures ClampToEdgeWrapping]. <br />
-		[page:Constant wrapT] - default is [page:Textures ClampToEdgeWrapping]. <br />
-		[page:Constant magFilter] - default is [page:Textures .LinearFilter]. <br />
-		[page:Constant minFilter] - default is [page:Textures LinearFilter]. <br />
-		[page:Constant format] - default is [page:Textures RGBAFormat]. <br />
-		[page:Constant type] - default is [page:Textures UnsignedByteType]. <br />
-		[page:Number anisotropy] - default is *1*. See [page:Texture.anistropy]<br />
-		[page:Constant encoding] - default is [page:Textures LinearEncoding]. <br />
-		[page:Boolean depthBuffer] - default is *true*. Set this to false if you don't need it. <br />
-		[page:Boolean stencilBuffer] - default is *true*. Set this to false if you don't need it.<br /><br />
-
-		Creates a new [name]
-		</div>
-
-		<h2>Properties</h2>
-
-		<h3>[property:integer activeCubeFace]</h3>
-		<div>
-		The activeCubeFace property corresponds to a cube side (PX 0, NX 1, PY 2, NY 3, PZ 4, NZ 5) and is
-		used and set internally by the [page:CubeCamera].
-		</div>
-
-		<h3>See [page:WebGLRenderTarget] for inherited properties</h3>
-
-
-		<h2>Methods</h2>
-
-		<h3>See [page:WebGLRenderTarget] for inherited methods</h3>
-
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!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:WebGLRenderTarget] &rarr;
+
+		<h1>[name]</h1>
+
+		<div class="desc">
+			Used by the [page:CubeCamera] as its [page:WebGLRenderTarget].
+		</div>
+
+		<h2>Examples</h2>
+
+		<div>See [page:CubeCamera] for examples.</div>
+
+
+		<h2>Constructor</h2>
+
+
+		<h3>[name]([page:Number width], [page:Number height], [page:Object options])</h3>
+		<div>
+		[page:Float width] - The width of the renderTarget. <br />
+		[page:Float height] - The height of the renderTarget. <br />
+		options - (optional) object that holds texture parameters for an auto-generated target
+		texture and depthBuffer/stencilBuffer booleans.
+
+		For an explanation of the texture parameters see [page:Texture Texture]. The following are
+		valid options:<br /><br />
+
+		[page:Constant wrapS] - default is [page:Textures ClampToEdgeWrapping]. <br />
+		[page:Constant wrapT] - default is [page:Textures ClampToEdgeWrapping]. <br />
+		[page:Constant magFilter] - default is [page:Textures .LinearFilter]. <br />
+		[page:Constant minFilter] - default is [page:Textures LinearFilter]. <br />
+		[page:Constant format] - default is [page:Textures RGBAFormat]. <br />
+		[page:Constant type] - default is [page:Textures UnsignedByteType]. <br />
+		[page:Number anisotropy] - default is *1*. See [page:Texture.anistropy]<br />
+		[page:Constant encoding] - default is [page:Textures LinearEncoding]. <br />
+		[page:Boolean depthBuffer] - default is *true*. Set this to false if you don't need it. <br />
+		[page:Boolean stencilBuffer] - default is *true*. Set this to false if you don't need it.<br /><br />
+
+		Creates a new [name]
+		</div>
+
+		<h2>Properties</h2>
+
+		<h3>[property:integer activeCubeFace]</h3>
+		<div>
+		The activeCubeFace property corresponds to a cube side (PX 0, NX 1, PY 2, NY 3, PZ 4, NZ 5) and is
+		used and set internally by the [page:CubeCamera].
+		</div>
+
+		<h3>See [page:WebGLRenderTarget] for inherited properties</h3>
+
+
+		<h2>Methods</h2>
+
+		<h3>See [page:WebGLRenderTarget] for inherited methods</h3>
+
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

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

@@ -54,7 +54,8 @@
 		or overwritten. Default is *false*.<br />
 
 		[page:String powerPreference] - Provides a hint to the user agent indicating what configuration
-		of GPU is suitable for this WebGL context. Can be *"high-performance"*, *"low-power"* or *"default"*. Default is *"default"*.<br />
+		of GPU is suitable for this WebGL context. Can be *"high-performance"*, *"low-power"* or *"default"*. Default is *"default"*.
+		See the [link:https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.2 WebGL spec] for more information.<br />
 
 		[page:Boolean depth] - whether the drawing buffer has a
 		[link:https://en.wikipedia.org/wiki/Z-buffering depth buffer] of at least 16 bits.

+ 1 - 1
docs/api/renderers/shaders/ShaderChunk.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/renderers/shaders/ShaderLib.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/renderers/shaders/UniformsLib.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

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

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/renderers/webgl/WebGLProgram.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/renderers/webgl/WebGLShader.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/api/renderers/webgl/WebGLState.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 0 - 41
docs/api/renderers/webgl/plugins/LensFlarePlugin.html

@@ -1,41 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../../" />
-		<script src="list.js"></script>
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>[name]</h1>
-
-		<div class="desc">The Webglrenderer plugin class that allows lensflares to be rendered in the WebglRenderer. This plugin is automatically loaded in the Webglrenderer.</div>
-
-
-		<h2>Constructor</h2>
-
-		<h3>[name]()</h3>
-		<div>
-		Creates a new [name].
-		</div>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null render]( [page:Scene scene], [page:Camera camera], [page:Number viewportWidth], [page:Number viewportHeight] )</h3>
-		<div>
-		scene -- The scene to render. <br />
-		camera -- The camera to render. <br />
-		viewportWidth -- The width of the viewport. <br />
-		viewportHeight -- The height of the viewport.
-		</div>
-		<div>
-		Renders the lensflares defined in the scene. This gets automatically called as post render function to draw the lensflares.
-		</div>
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>

+ 50 - 50
docs/api/scenes/Fog.html

@@ -1,50 +1,50 @@
-<!DOCTYPE html>
-<html lang="en">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../" />
-		<script src="list.js"></script>
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>[name]</h1>
-
-		<div class="desc">This class contains the parameters that define linear fog, i.e., that grows linearly denser with the distance.</div>
-
-
-		<h2>Constructor</h2>
-
-
-		<h3>[name]( [page:Integer color], [page:Float near], [page:Float far] )</h3>
-		<div>The color parameter is passed to the [page:Color] constructor to set the color property. Color can be a hexadecimal integer or a CSS-style string.</div>
-
-		<h2>Properties</h2>
-
-		<h3>[property:String name]</h3>
-		<div>Optional name of the object (doesn't need to be unique). Default is an empty string.</div>
-
-		<h3>[property:Color color]</h3>
-		<div>Fog color.  Example: If set to black, far away objects will be rendered black.</div>
-
-		<h3>[property:Float near]</h3>
-		<div>The minimum distance to start applying fog. Objects that are less than 'near' units from the active camera won't be affected by fog.</div>
-		<div>Default is 1.</div>
-
-		<h3>[property:Float far]</h3>
-		<div>The maximum distance at which fog stops being calculated and applied. Objects that are more than 'far' units away from the active camera won't be affected by fog.</div>
-		<div>Default is 1000.</div>
-
-		<h2>Methods</h2>
-
-		<h3>[method:Fog clone]()</h3>
-		<div>Returns a new fog instance with the same parameters as this one.</div>
-
-		<h3>[method:Fog toJSON]()</h3>
-		<div>Return fog data in JSON format.</div>
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		<h1>[name]</h1>
+
+		<div class="desc">This class contains the parameters that define linear fog, i.e., that grows linearly denser with the distance.</div>
+
+
+		<h2>Constructor</h2>
+
+
+		<h3>[name]( [page:Integer color], [page:Float near], [page:Float far] )</h3>
+		<div>The color parameter is passed to the [page:Color] constructor to set the color property. Color can be a hexadecimal integer or a CSS-style string.</div>
+
+		<h2>Properties</h2>
+
+		<h3>[property:String name]</h3>
+		<div>Optional name of the object (doesn't need to be unique). Default is an empty string.</div>
+
+		<h3>[property:Color color]</h3>
+		<div>Fog color.  Example: If set to black, far away objects will be rendered black.</div>
+
+		<h3>[property:Float near]</h3>
+		<div>The minimum distance to start applying fog. Objects that are less than 'near' units from the active camera won't be affected by fog.</div>
+		<div>Default is 1.</div>
+
+		<h3>[property:Float far]</h3>
+		<div>The maximum distance at which fog stops being calculated and applied. Objects that are more than 'far' units away from the active camera won't be affected by fog.</div>
+		<div>Default is 1000.</div>
+
+		<h2>Methods</h2>
+
+		<h3>[method:Fog clone]()</h3>
+		<div>Returns a new fog instance with the same parameters as this one.</div>
+
+		<h3>[method:Fog toJSON]()</h3>
+		<div>Return fog data in JSON format.</div>
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

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

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 257 - 257
docs/api/textures/Texture.html

@@ -1,257 +1,257 @@
-<!DOCTYPE html>
-<html lang="en">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../" />
-		<script src="list.js"></script>
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>[name]</h1>
-
-		<div class="desc">Create a texture to apply to a surface or as a reflection or refraction map.</div>
-
-
-		<h2>Constructor</h2>
-
-		<h3>[name]( image, mapping, wrapS, wrapT, magFilter, minFilter, format, type, anisotropy, encoding )</h3>
-
-		<h2>Example</h2>
-
-		<code>
-		// load a texture, set wrap mode to repeat
-		var texture = new THREE.TextureLoader().load( "textures/water.jpg" );
-		texture.wrapS = THREE.RepeatWrapping;
-		texture.wrapT = THREE.RepeatWrapping;
-		texture.repeat.set( 4, 4 );
-		</code>
-
-		<h2>Properties</h2>
-
-		<h3>[property:Integer id]</h3>
-		<div>
-		Readonly - unique number for this texture instance.
-		</div>
-
-		<h3>[property:String uuid]</h3>
-		<div>
-		[link:http://en.wikipedia.org/wiki/Universally_unique_identifier UUID] of this object instance.
-		This gets automatically assigned, so this shouldn't be edited.
-		</div>
-
-		<h3>[property:String name]</h3>
-		<div>
-		Optional name of the object (doesn't need to be unique). Default is an empty string.
-		</div>
-
-		<h3>[property:Image image]</h3>
-		<div>
-		An image object, typically created using the [page:TextureLoader.load] method.
-		This can be any image (e.g., PNG, JPG, GIF, DDS) or video (e.g., MP4, OGG/OGV) type supported by three.js.<br /><br />
-
-		To use video as a texture you need to have a playing HTML5
-		video element as a source for your texture image and continuously update this texture
-		as long as video is playing - the [page:VideoTexture VideoTexture] class handles this automatically.
-		</div>
-
-		<h3>[property:array mipmaps]</h3>
-		<div>
-		Array of user-specified mipmaps (optional).
-		</div>
-
-		<h3>[property:object mapping]</h3>
-		<div>
-		How the image is applied to the object. An object type of [page:Textures THREE.UVMapping] is the default,
-		where the U,V coordinates are used to apply the map.<br />
-
-		See the [page:Textures texture constants] page for other mapping types.
-		</div>
-
-		<h3>[property:number wrapS]</h3>
-		<div>
-		This defines how the texture is wrapped horizontally and corresponds to *U* in UV mapping.<br />
-		The default is [page:Textures THREE.ClampToEdgeWrapping], where the edge is clamped to the outer edge texels.
-		The other two choices are [page:Textures THREE.RepeatWrapping] and [page:Textures THREE.MirroredRepeatWrapping].
-		See the [page:Textures texture constants] page for details.
-		</div>
-
-		<h3>[property:number wrapT]</h3>
-		<div>
-		This defines how the texture is wrapped vertically and corresponds to *V* in UV mapping.<br />
-		The same choices are available as for [property:number wrapS].<br /><br />
-
-		NOTE: tiling of images in textures only functions if image dimensions are powers of two
-		 (2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, ...) in terms of pixels.
-		 Individual dimensions need not be equal, but each must be a power of two.
-		 This is a limitation of WebGL, not three.js.
-		</div>
-
-		<h3>[property:number magFilter]</h3>
-		<div>
-		How the texture is sampled when a texel covers more than one pixel. The default is
-		 [page:Textures THREE.LinearFilter], which takes the four closest texels and bilinearly interpolates among them.
-		 The other option is [page:Textures THREE.NearestFilter], which uses the value of the closest texel.<br />
-		 See the [page:Textures texture constants] page for details.
-		</div>
-
-		<h3>[property:number minFilter]</h3>
-		<div>
-		How the texture is sampled when a texel covers less than one pixel. The default is
-		[page:Textures THREE.LinearMipMapLinearFilter], which uses mipmapping and a trilinear filter. <br /><br />
-
-		See the [page:Textures texture constants] page for all possible choices.
-		</div>
-
-		<h3>[property:number anisotropy]</h3>
-		<div>
-		The number of samples taken along the axis through the pixel that has the highest density of texels.
-		By default, this value is 1. A higher value gives a less blurry result than a basic mipmap,
-		at the cost of more texture samples being used. Use [page:WebGLRenderer.getMaxAnisotropy renderer.getMaxAnisotropy]() to
-		find the maximum valid anisotropy value for the GPU; this value is usually a power of 2.
-		</div>
-
-		<h3>[property:number format]</h3>
-		<div>
-		The default is [page:Textures THREE.RGBAFormat], although the [page:TextureLoader TextureLoader] will automatically
-		set this to [page:Textures THREE.RGBFormat] for JPG images. <br /><br />
-
-		See the [page:Textures texture constants] page for details of other formats.
-		</div>
-
-		<h3>[property:number type]</h3>
-		<div>
-		This must correspond to the [page:Texture.format .format]. The default is [page:Textures THREE.UnsignedByteType],
-		which will be used for most texture formats.<br /><br />
-
-		See the [page:Textures texture constants] page for details of other formats.
-		</div>
-
-		<h3>[property:Vector2 offset]</h3>
-		<div>
-		How much a single repetition of the texture is offset from the beginning, in each direction U and V.
-		Typical range is *0.0* to *1.0*.  _Note:_ The offset property is a convenience modifier and only affects 
-		the Texture's application to the first set of UVs on a model.  If the Texture is used as a map requiring
-		additional UV sets (e.g. the aoMap or lightMap of most stock materials), those UVs must be manually 
-		assigned to achieve the desired offset.
-		</div>
-
-		<h3>[property:Vector2 repeat]</h3>
-		<div>
-		How many times the texture is repeated across the surface, in each direction U and V.  If repeat is set 
-		greater than 1 in either direction, the corresponding Wrap parameter should also be set to 
-		[page:Textures THREE.RepeatWrapping] or [page:Textures THREE.MirroredRepeatWrapping] to achieve the desired 
-		tiling effect.  _Note:_ The repeat property is a convenience modifier and only affects 
-		the Texture's application to the first set of UVs on a model.  If the Texture is used as a map requiring
-		additional UV sets (e.g. the aoMap or lightMap of most stock materials), those UVs must be manually 
-		assigned to achieve the desired repetiton.
-		</div>
-
-		<h3>[property:number rotation]</h3>
-		<div>
-		How much the texture is rotated around the center point, in radians. Postive values are counter-clockwise. Default is *0*.
-		</div>
-
-		<h3>[property:Vector2 center]</h3>
-		<div>
-		Indicates where the center of rotation is. To rotate around the center point set this value to (0.5, 0.5). Default value is (0.0, 0.0).
-		</div>
-
-		<h3>[property:boolean matrixAutoUpdate]</h3>
-		<div>
-		Whether to update the texture's uv-transform [property:Matrix3 matrix] based on the [property:Vector2 offset],
-		[property:Vector2 repeat], and [property:number rotation] settings. True by default.
-		Set this to false if you are specifying the uv-transform matrix directly.
-		</div>
-
-		<h3>[property:Matrix3 matrix]</h3>
-		<div>
-		The uv-transform matrix for the texture. Updated by the renderer from the texture properties [property:Vector2 offset], [property:Vector2 repeat],
-		and [property:number rotation] when the texture's [property:boolean matrixAutoUpdate] property is true.
-		When [property:boolean matrixAutoUpdate] property is false, this matrix may be set manually.
-		Default is the indentity matrix.
-		</div>
-
-		<h3>[property:boolean generateMipmaps]</h3>
-		<div>
-		Whether to generate mipmaps (if possible) for a texture. True by default. Set this to false if you are
-		creating mipmaps manually.
-		</div>
-
-		<h3>[property:boolean premultiplyAlpha]</h3>
-		<div>
-		False by default, which is the norm for PNG images. Set to true if the RGB values have
-		been stored premultiplied by alpha.
-		</div>
-
-		<h3>[property:boolean flipY]</h3>
-		<div>
-		True by default. Flips the image's Y axis to match the WebGL texture coordinate space.
-		</div>
-
-		<h3>[property:number unpackAlignment]</h3>
-		<div>
-		4 by default. Specifies the alignment requirements for the start of each pixel row in memory.
-		The allowable values are 1 (byte-alignment), 2 (rows aligned to even-numbered bytes),
-		4 (word-alignment), and 8 (rows start on double-word boundaries).
-		See <a href="http://www.khronos.org/opengles/sdk/docs/man/xhtml/glPixelStorei.xml">glPixelStorei</a>
-		for more information.
-		</div>
-
-		<h3>[property:number encoding]</h3>
-		<div>
-		[page:Textures THREE.LinearEncoding] is the default.
-		See the [page:Textures texture constants] page for details of other formats.<br /><br />
-
-		Note that ff this value is changed on a texture after the material has been used,
-		it is necessary to trigger a Material.needsUpdate for this value to be realized in the shader.
-		</div>
-
-		<h3>[property:Integer version]</h3>
-		<div>
-		This starts at *0* and counts how many times [property:Boolean needsUpdate] is set to *true*.
-		</div>
-
-		<h3>[property:Function onUpdate]</h3>
-		<div>
-		A callback function, called when the texture is updated (e.g., when needsUpdate has been set to true
-		and then the texture is used).
-		</div>
-
-		<h3>[property:Boolean needsUpdate]</h3>
-		<div>
-		Set this to *true* to trigger an update next time the texture is used. Particularly important for setting the wrap mode.
-		</div>
-
-
-		<h2>Methods</h2>
-
-		<h3>[page:EventDispatcher EventDispatcher] methods are available on this class.</h3>
-
-		<h3>[method:Texture clone]( [page:Texture texture] )</h3>
-		<div>
-		Make copy of the texture. Note this is not a "deep copy", the image is shared.
-		</div>
-
-		<h3>[method:Texture toJSON]( meta )</h3>
-		<div>
-		meta -- optional object containing metadata.<br />
-		Convert the material to three.js JSON format.
-		</div>
-
-		<h3>[method:null dispose]()</h3>
-		<div>
-		Call [page:EventDispatcher EventDispatcher].dispatchEvent with a 'dispose' event type.
-		</div>
-
-		<h3>[method:null transformUv]( uv )</h3>
-		<div>
-		Transform the uv based on the value of this texture's [page:Texture.repeat .repeat], [page:Texture.offset .offset],
-		[page:Texture.wrapS .wrapS], [page:Texture.wrapT .wrapT] and [page:Texture.flipY .flipY] properties.
-		</div>
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
-	</body>
-</html>
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+		<h1>[name]</h1>
+
+		<div class="desc">Create a texture to apply to a surface or as a reflection or refraction map.</div>
+
+
+		<h2>Constructor</h2>
+
+		<h3>[name]( image, mapping, wrapS, wrapT, magFilter, minFilter, format, type, anisotropy, encoding )</h3>
+
+		<h2>Example</h2>
+
+		<code>
+		// load a texture, set wrap mode to repeat
+		var texture = new THREE.TextureLoader().load( "textures/water.jpg" );
+		texture.wrapS = THREE.RepeatWrapping;
+		texture.wrapT = THREE.RepeatWrapping;
+		texture.repeat.set( 4, 4 );
+		</code>
+
+		<h2>Properties</h2>
+
+		<h3>[property:Integer id]</h3>
+		<div>
+		Readonly - unique number for this texture instance.
+		</div>
+
+		<h3>[property:String uuid]</h3>
+		<div>
+		[link:http://en.wikipedia.org/wiki/Universally_unique_identifier UUID] of this object instance.
+		This gets automatically assigned, so this shouldn't be edited.
+		</div>
+
+		<h3>[property:String name]</h3>
+		<div>
+		Optional name of the object (doesn't need to be unique). Default is an empty string.
+		</div>
+
+		<h3>[property:Image image]</h3>
+		<div>
+		An image object, typically created using the [page:TextureLoader.load] method.
+		This can be any image (e.g., PNG, JPG, GIF, DDS) or video (e.g., MP4, OGG/OGV) type supported by three.js.<br /><br />
+
+		To use video as a texture you need to have a playing HTML5
+		video element as a source for your texture image and continuously update this texture
+		as long as video is playing - the [page:VideoTexture VideoTexture] class handles this automatically.
+		</div>
+
+		<h3>[property:array mipmaps]</h3>
+		<div>
+		Array of user-specified mipmaps (optional).
+		</div>
+
+		<h3>[property:object mapping]</h3>
+		<div>
+		How the image is applied to the object. An object type of [page:Textures THREE.UVMapping] is the default,
+		where the U,V coordinates are used to apply the map.<br />
+
+		See the [page:Textures texture constants] page for other mapping types.
+		</div>
+
+		<h3>[property:number wrapS]</h3>
+		<div>
+		This defines how the texture is wrapped horizontally and corresponds to *U* in UV mapping.<br />
+		The default is [page:Textures THREE.ClampToEdgeWrapping], where the edge is clamped to the outer edge texels.
+		The other two choices are [page:Textures THREE.RepeatWrapping] and [page:Textures THREE.MirroredRepeatWrapping].
+		See the [page:Textures texture constants] page for details.
+		</div>
+
+		<h3>[property:number wrapT]</h3>
+		<div>
+		This defines how the texture is wrapped vertically and corresponds to *V* in UV mapping.<br />
+		The same choices are available as for [property:number wrapS].<br /><br />
+
+		NOTE: tiling of images in textures only functions if image dimensions are powers of two
+		 (2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, ...) in terms of pixels.
+		 Individual dimensions need not be equal, but each must be a power of two.
+		 This is a limitation of WebGL, not three.js.
+		</div>
+
+		<h3>[property:number magFilter]</h3>
+		<div>
+		How the texture is sampled when a texel covers more than one pixel. The default is
+		 [page:Textures THREE.LinearFilter], which takes the four closest texels and bilinearly interpolates among them.
+		 The other option is [page:Textures THREE.NearestFilter], which uses the value of the closest texel.<br />
+		 See the [page:Textures texture constants] page for details.
+		</div>
+
+		<h3>[property:number minFilter]</h3>
+		<div>
+		How the texture is sampled when a texel covers less than one pixel. The default is
+		[page:Textures THREE.LinearMipMapLinearFilter], which uses mipmapping and a trilinear filter. <br /><br />
+
+		See the [page:Textures texture constants] page for all possible choices.
+		</div>
+
+		<h3>[property:number anisotropy]</h3>
+		<div>
+		The number of samples taken along the axis through the pixel that has the highest density of texels.
+		By default, this value is 1. A higher value gives a less blurry result than a basic mipmap,
+		at the cost of more texture samples being used. Use [page:WebGLRenderer.getMaxAnisotropy renderer.getMaxAnisotropy]() to
+		find the maximum valid anisotropy value for the GPU; this value is usually a power of 2.
+		</div>
+
+		<h3>[property:number format]</h3>
+		<div>
+		The default is [page:Textures THREE.RGBAFormat], although the [page:TextureLoader TextureLoader] will automatically
+		set this to [page:Textures THREE.RGBFormat] for JPG images. <br /><br />
+
+		See the [page:Textures texture constants] page for details of other formats.
+		</div>
+
+		<h3>[property:number type]</h3>
+		<div>
+		This must correspond to the [page:Texture.format .format]. The default is [page:Textures THREE.UnsignedByteType],
+		which will be used for most texture formats.<br /><br />
+
+		See the [page:Textures texture constants] page for details of other formats.
+		</div>
+
+		<h3>[property:Vector2 offset]</h3>
+		<div>
+		How much a single repetition of the texture is offset from the beginning, in each direction U and V.
+		Typical range is *0.0* to *1.0*.  _Note:_ The offset property is a convenience modifier and only affects 
+		the Texture's application to the first set of UVs on a model.  If the Texture is used as a map requiring
+		additional UV sets (e.g. the aoMap or lightMap of most stock materials), those UVs must be manually 
+		assigned to achieve the desired offset.
+		</div>
+
+		<h3>[property:Vector2 repeat]</h3>
+		<div>
+		How many times the texture is repeated across the surface, in each direction U and V.  If repeat is set 
+		greater than 1 in either direction, the corresponding Wrap parameter should also be set to 
+		[page:Textures THREE.RepeatWrapping] or [page:Textures THREE.MirroredRepeatWrapping] to achieve the desired 
+		tiling effect.  _Note:_ The repeat property is a convenience modifier and only affects 
+		the Texture's application to the first set of UVs on a model.  If the Texture is used as a map requiring
+		additional UV sets (e.g. the aoMap or lightMap of most stock materials), those UVs must be manually 
+		assigned to achieve the desired repetiton.
+		</div>
+
+		<h3>[property:number rotation]</h3>
+		<div>
+		How much the texture is rotated around the center point, in radians. Postive values are counter-clockwise. Default is *0*.
+		</div>
+
+		<h3>[property:Vector2 center]</h3>
+		<div>
+		Indicates where the center of rotation is. To rotate around the center point set this value to (0.5, 0.5). Default value is (0.0, 0.0).
+		</div>
+
+		<h3>[property:boolean matrixAutoUpdate]</h3>
+		<div>
+		Whether to update the texture's uv-transform [property:Matrix3 matrix] based on the [property:Vector2 offset],
+		[property:Vector2 repeat], and [property:number rotation] settings. True by default.
+		Set this to false if you are specifying the uv-transform matrix directly.
+		</div>
+
+		<h3>[property:Matrix3 matrix]</h3>
+		<div>
+		The uv-transform matrix for the texture. Updated by the renderer from the texture properties [property:Vector2 offset], [property:Vector2 repeat],
+		and [property:number rotation] when the texture's [property:boolean matrixAutoUpdate] property is true.
+		When [property:boolean matrixAutoUpdate] property is false, this matrix may be set manually.
+		Default is the indentity matrix.
+		</div>
+
+		<h3>[property:boolean generateMipmaps]</h3>
+		<div>
+		Whether to generate mipmaps (if possible) for a texture. True by default. Set this to false if you are
+		creating mipmaps manually.
+		</div>
+
+		<h3>[property:boolean premultiplyAlpha]</h3>
+		<div>
+		False by default, which is the norm for PNG images. Set to true if the RGB values have
+		been stored premultiplied by alpha.
+		</div>
+
+		<h3>[property:boolean flipY]</h3>
+		<div>
+		True by default. Flips the image's Y axis to match the WebGL texture coordinate space.
+		</div>
+
+		<h3>[property:number unpackAlignment]</h3>
+		<div>
+		4 by default. Specifies the alignment requirements for the start of each pixel row in memory.
+		The allowable values are 1 (byte-alignment), 2 (rows aligned to even-numbered bytes),
+		4 (word-alignment), and 8 (rows start on double-word boundaries).
+		See <a href="http://www.khronos.org/opengles/sdk/docs/man/xhtml/glPixelStorei.xml">glPixelStorei</a>
+		for more information.
+		</div>
+
+		<h3>[property:number encoding]</h3>
+		<div>
+		[page:Textures THREE.LinearEncoding] is the default.
+		See the [page:Textures texture constants] page for details of other formats.<br /><br />
+
+		Note that ff this value is changed on a texture after the material has been used,
+		it is necessary to trigger a Material.needsUpdate for this value to be realized in the shader.
+		</div>
+
+		<h3>[property:Integer version]</h3>
+		<div>
+		This starts at *0* and counts how many times [property:Boolean needsUpdate] is set to *true*.
+		</div>
+
+		<h3>[property:Function onUpdate]</h3>
+		<div>
+		A callback function, called when the texture is updated (e.g., when needsUpdate has been set to true
+		and then the texture is used).
+		</div>
+
+		<h3>[property:Boolean needsUpdate]</h3>
+		<div>
+		Set this to *true* to trigger an update next time the texture is used. Particularly important for setting the wrap mode.
+		</div>
+
+
+		<h2>Methods</h2>
+
+		<h3>[page:EventDispatcher EventDispatcher] methods are available on this class.</h3>
+
+		<h3>[method:Texture clone]( [page:Texture texture] )</h3>
+		<div>
+		Make copy of the texture. Note this is not a "deep copy", the image is shared.
+		</div>
+
+		<h3>[method:Texture toJSON]( meta )</h3>
+		<div>
+		meta -- optional object containing metadata.<br />
+		Convert the material to three.js JSON format.
+		</div>
+
+		<h3>[method:null dispose]()</h3>
+		<div>
+		Call [page:EventDispatcher EventDispatcher].dispatchEvent with a 'dispose' event type.
+		</div>
+
+		<h3>[method:null transformUv]( uv )</h3>
+		<div>
+		Transform the uv based on the value of this texture's [page:Texture.repeat .repeat], [page:Texture.offset .offset],
+		[page:Texture.wrapS .wrapS], [page:Texture.wrapT .wrapT] and [page:Texture.flipY .flipY] properties.
+		</div>
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+	</body>
+</html>

+ 1 - 1
docs/examples/geometries/ConvexBufferGeometry.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/examples/geometries/ConvexGeometry.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

+ 1 - 1
docs/examples/geometries/DecalGeometry.html

@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html lang="en">
 	<head>
-		<meta charset="utf-8" />
+		<meta charset="utf-8" />
 		<base href="../../" />
 		<script src="list.js"></script>
 		<script src="page.js"></script>

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

@@ -28,16 +28,10 @@
 
 		<ul>
 			<li>
-				<a target="_blank" href="https://github.com/KhronosGroup/glTF/tree/master/extensions/Khronos/KHR_materials_pbrSpecularGlossiness">
+				<a target="_blank" href="https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Khronos/KHR_materials_pbrSpecularGlossiness">
 					KHR_materials_pbrSpecularGlossiness
 				</a>
 			</li>
-			<li>
-				<a target="_blank" href="https://github.com/KhronosGroup/glTF/tree/master/extensions/Khronos/KHR_materials_common">
-					KHR_materials_common
-				</a>
-				(experimental)
-			</li>
 			<li>
 				KHR_lights (experimental)
 			</li>

+ 671 - 671
docs/examples/loaders/LoaderSupport.html

@@ -1,671 +1,671 @@
-<!DOCTYPE html>
-<html lang="en">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../" />
-		<script src="list.js"></script>
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-
-		<h1>[name]</h1>
-
-		<div class="desc">Supporting classes for file loaders and web worker based loaders.</div>
-
-		<h2>Sub-Classes</h2>
-		[page:LoaderSupport.Builder]<br>
-		[page:LoaderSupport.LoadedMeshUserOverride]<br>
-		[page:LoaderSupport.WorkerSupport]<br>
-		[page:LoaderSupport.WorkerRunnerRefImpl]<br>
-		[page:LoaderSupport.WorkerDirector]<br>
-		[page:LoaderSupport.PrepData]<br>
-		[page:LoaderSupport.LoaderBase]<br>
-		[page:LoaderSupport.Callbacks]<br>
-		[page:LoaderSupport.Validator]<br>
-		[page:LoaderSupport.ConsoleLogger]
-
-
-		<h2>Example</h2>
-
-		[example:webgl_loader_obj2_meshspray] - Example using [page:LoaderSupport.LoaderWorkerDirector] and [page:LoaderSupport.LoaderWorkerSupport].<br>
-
-		<h2>Classes</h2>
-		<br>
-
-		<a name="Builder"></a><h1>Builder</h1>
-		<h2>Constructor</h2>
-
-		<h3>Builder()</h3>
-		<div>
-			Builds one or many [page:Mesh] from one raw set of Arraybuffers, materialGroup descriptions and further parameters.
-			Supports vertex, vertexColor, normal, uv and index buffers.
-		</div>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null setMaterials] ( Array of [page:Material materials] )</h3>
-		<div>
-			Array of [page:Material materials] - Array of [page:Material Materials]
-		</div>
-		<div>
-			Set materials loaded by any supplier of an Array of [page:Material Materials].
-		</div>
-
-
-		<h3>[method:Array processPayload] ( Object payload )</h3>
-		<div>
-			[page:Object payload] - Raw Mesh or Material descriptions.
-		</div>
-		<div>
-			Delegates processing of the payload (mesh building or material update) to the corresponding functions (BW-compatibility).
-		</div>
-		<br>
-		<br>
-
-
-		<h3>[method:Array buildMeshes] ( Object meshPayload )</h3>
-		<div>
-			[page:Object meshPayload] - Raw mesh description (buffers, params, materials) used to build one to many meshes.
-		</div>
-		<div>
-			Builds one or multiple meshes from the data described in the payload (buffers, params, material info).
-		</div>
-		<br>
-		<br>
-
-
-		<h3>[method:null updateMaterials] ( Object materialPayload )</h3>
-		<div>
-			[page:Object materialPayload] - Material update instructions
-		</div>
-		<div>
-			Updates the materials with contained material objects (sync) or from alteration instructions (async).
-		</div>
-		<br>
-		<br>
-
-
-		<h3>[method:Object getMaterialsJSON] ()</h3>
-		<div>
-			Returns the mapping object of material name and corresponding jsonified material.
-		</div>
-		<br>
-		<br>
-
-
-		<h3>[method:Object getMaterials] ()</h3>
-		<div>
-			Returns the mapping object of material name and corresponding material.
-		</div>
-		<br>
-		<br>
-
-
-		<a name="LoadedMeshUserOverride"></a><h1>LoadedMeshUserOverride</h1>
-		<h2>Constructor</h2>
-
-		<h3>LoadedMeshUserOverride( [page:Boolean disregardMesh], [page:BufferGeometry bufferGeometry] )</h3>
-		<div>
-			[page:Boolean disregardMesh] - Tell implementation to completely disregard this mesh<br>
-			[page:Boolean alteredMesh] - Tell implementation that mesh(es) have been altered or added
-		</div>
-		<div>
-			Object to return by callback onMeshAlter. Used to disregard a certain mesh or to return one to many meshes.
-		</div>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null addMesh] ( [page:Mesh mesh] )</h3>
-		<div>
-			[page:Mesh mesh] - Mesh
-		</div>
-		<div>
-			Add a mesh created within callback.
-		</div>
-
-
-		<h3>[method:boolean isDisregardMesh] ()</h3>
-		<div>
-			Answers if mesh shall be disregarded completely.
-		</div>
-
-
-		<h3>[method:boolean providesAlteredMeshes] ()</h3>
-		<div>
-			Answers if new mesh(es) were created.
-		</div>
-		<br>
-		<br>
-
-
-		<a name="WorkerSupport"></a><h1>WorkerSupport</h1>
-		<h2>Constructor</h2>
-
-		<h3>WorkerSupport( [page:LoaderSupport.ConsoleLogger logger] )</h3>
-		<div>
-			[page:LoaderSupport.ConsoleLogger logger] - logger to be used
-		</div>
-		<div>
-			This class provides means to transform existing parser code into a web worker.
-			It defines a simple communication protocol which allows to configure the worker and receive raw mesh data during execution.
-		</div>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null validate] ( [page:Function functionCodeBuilder], Array of [page:String libLocations], [page:String libPath], [page:LoaderSupport.WorkerRunnerRefImpl runnerImpl] )</h3>
-		<div>
-			[page:Function functionCodeBuilder] - Function that is invoked with funcBuildObject and funcBuildSingelton that allows stringification of objects and singletons.<br>
-			Array of [page:String libLocations] - URL of libraries that shall be added to worker code relative to libPath.<br>
-			[page:String libPath] - Base path used for loading libraries.<br>
-			[page:LoaderSupport.WorkerRunnerRefImpl runnerImpl] - The default worker parser wrapper implementation (communication and execution). An extended class could be passed here.
-		</div>
-		<div>
-			Validate the status of worker code and the derived worker.
-		</div>
-
-
-		<h3>[method:null setTerminateRequested] ( [page:Boolean terminateRequested] )</h3>
-		<div>
-			[page:Boolean terminateRequested] - True or false.
-		</div>
-		<div>
-			Request termination of worker once parser is finished.
-		</div>
-
-
-		<h3>[method:null setCallbacks] ( [page:Function builder], [page:Function onLoad] )</h3>
-		<div>
-			[page:Function builder] - The builder function. Default is [page:LoaderSupport.Builder].<br>
-			[page:Function onLoad] - The function that is called when parsing is complete.
-		</div>
-		<div>
-			Specify functions that should be build when new raw mesh data becomes available and when the parser is finished.
-		</div>
-
-
-		<h3>[method:null run] ( [page:Object payload] )</h3>
-		<div>
-			[page:Object payload] - Raw mesh description (buffers, params, materials) used to build one to many meshes.
-		</div>
-		<div>
-			Runs the parser with the provided configuration.
-		</div>
-		<br>
-		<br>
-
-
-		<a name="WorkerRunnerRefImpl"></a><h1>WorkerRunnerRefImpl</h1>
-		<h2>Constructor</h2>
-
-		<h3>WorkerRunnerRefImpl()</h3>
-		<div>
-			Default implementation of the WorkerRunner responsible for creation and configuration of the parser within the worker.
-		</div>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null applyProperties] ( [page:Object parser], [page:Object params] )</h3>
-		<div>
-			[page:Object parser] - The parser instance<br>
-			[page:Object params] - The parameter object
-		</div>
-		<div>
-			Applies values from parameter object via set functions or via direct assignment.
-		</div>
-
-
-		<h3>[method:null run] ( [page:Object payload] )</h3>
-		<div>
-			[page:Object payload] - Raw mesh description (buffers, params, materials) used to build one to many meshes.
-		</div>
-		<div>
-			Configures the Parser implementation according the supplied configuration object.
-		</div>
-		<br>
-		<br>
-
-
-		<a name="WorkerDirector"></a><h1>WorkerDirector</h1>
-		<h2>Constructor</h2>
-
-		<h3>WorkerDirector( [page:String classDef], [page:LoaderSupport.ConsoleLogger logger] )</h3>
-		<div>
-			[page:String classDef] - Class definition to be used for construction<br>
-			[page:LoaderSupport.ConsoleLogger logger] - logger to be used
-		</div>
-		<div>
-			Orchestrate loading of multiple OBJ files/data from an instruction queue with a configurable amount of workers (1-16).<br>
-			- Workflow:<br>
-			- prepareWorkers<br>
-			- enqueueForRun<br>
-			- processQueue<br>
-			- tearDown
-		</div>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null prepareWorkers]( [page:WWOBJLoader2.Callbacks globalCallbacks], [page:Number maxQueueSize], [page:Number maxWebWorkers] )</h3>
-		<div>
-			[page:LoaderSupport.Callbacks globalCallbacks] - Register global callbacks used by all web workers<br>
-			[page:Number maxQueueSize] - Set the maximum size of the instruction queue (1-1024)<br>
-			[page:Number maxWebWorkers] - Set the maximum amount of workers (1-16)
-		</div>
-		<div>
-			Create or destroy workers according limits. Set the name and register callbacks for dynamically created web workers.
-		</div>
-
-
-		<h3>[method:null enqueueForRun]( [page:LoaderSupport.PrepData runParams] )</h3>
-		<div>
-			[page:LoaderSupport.PrepData runParams]
-		</div>
-		<div>
-			Store run instructions in internal instructionQueue.
-		</div>
-
-
-		<h3>[method:null processQueue]()</h3>
-		<div>
-			Process the instructionQueue until it is depleted.
-		</div>
-
-
-		<h3>[method:null tearDown]( [page:Function callbackOnFinishedProcessing] )</h3>
-		<div>
-			[page:Function callbackOnFinishedProcessing] - Function called once all workers finished processing.
-		</div>
-		<div>
-			Terminate all workers.
-		</div>
-
-
-		<h3>[method:null getMaxQueueSize]()</h3>
-		<div>
-			Returns the maximum length of the instruction queue.
-		</div>
-
-
-		<h3>[method:null getMaxWebWorkers]()</h3>
-		<div>
-			Returns the maximum number of workers.
-		</div>
-
-		<h3>[method:Boolean isRunning]()</h3>
-		<div>
-			Returns if any workers are running.
-		</div>
-
-
-		<h3>[method:null setCrossOrigin]( [page:String crossOrigin] )</h3>
-		<div>
-			[page:String crossOrigin] - CORS value
-		</div>
-		<div>
-			Sets the CORS string to be used.
-		</div>
-
-
-		<a name="PrepData"></a><h1>PrepData</h1>
-		<h2>Constructor</h2>
-
-		<h3>PrepData( [page:String modelName] )</h3>
-		<div>
-			[page:String modelName] - Overall name of the model
-		</div>
-		<div>
-			Configuration instructions to be used by run method.
-		</div>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null setStreamMeshesTo] ( [page:Object3D streamMeshesTo] )</h3>
-		<div>
-			[page:Object3D streamMeshesTo] - Object already attached to scenegraph where new meshes will be attached to
-		</div>
-		<div>
-			Set the node where the loaded objects will be attached directly.
-		</div>
-
-
-		<h3>[method:null setMaterialPerSmoothingGroup] ( [page:boolean materialPerSmoothingGroup] )</h3>
-		<div>
-			[page:boolean materialPerSmoothingGroup]
-		</div>
-		<div>
-			Tells whether a material shall be created per smoothing group.
-		</div>
-
-
-		<h3>[method:null setUseIndices]( [page:Boolean useIndices] )</h3>
-		<div>
-			[page:Boolean useIndices] - Default is false
-		</div>
-		<div>
-			Instructs loaders to create indexed [page:BufferGeometry].
-		</div>
-
-
-		<h3>[method:null setDisregardNormals]( [page:Boolean disregardNormals] )</h3>
-		<div>
-			[page:Boolean disregardNormals]
-		</div>
-		<div>
-			Tells whether normals should be completely disregarded and regenerated.
-		</div>
-
-
-		<h3>[method:Callbacks getCallbacks]()</h3>
-		<div>
-			Returns all callbacks as [page:LoaderSupport.Callbacks].
-		</div>
-
-
-		<h3>[method:null setCrossOrigin]( [page:String crossOrigin] )</h3>
-		<div>
-			[page:String crossOrigin] - CORS value
-		</div>
-		<div>
-			Sets the CORS string to be used.
-		</div>
-
-
-		<h3>[method:null addResource]( [page:LoaderSupport.ResourceDescriptor resource] )</h3>
-		<div>
-			[page:LoaderSupport.ResourceDescriptor resource]
-		</div>
-		<div>
-			Add a resource description.
-		</div>
-
-
-		<h3>[method:null setUseAsync]( [page:Boolean useAsync] )</h3>
-		<div>
-			[page:Boolean useAsync]
-		</div>
-		<div>
-			If true uses async loading with worker, if false loads data synchronously.
-		</div>
-		<br>
-		<br>
-
-
-		<a name="LoaderBase"></a><h1>LoaderBase</h1>
-		<h2>Constructor</h2>
-
-		<h3>LoaderBase( [page:LoadingManager manager], [page:LoaderSupport.ConsoleLogger logger] )</h3>
-		<div>
-			[page:LoadingManager manager] - The [page:LoadingManager loadingManager] for the loader to use. Default is [page:LoadingManager THREE.DefaultLoadingManager].
-			[page:LoaderSupport.ConsoleLogger logger] - logger to be used
-		</div>
-		<div>
-			Base class to be used by loaders.
-		</div>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:ConsoleLogger getLogger] ()</h3>
-		<div>
-			Returns [page:LoaderSupport.ConsoleLogger].
-		</div>
-
-
-		<h3>[method:null setModelName] ( [page:String modelName] )</h3>
-		<div>
-			[page:String modelName]
-		</div>
-		<div>
-			Set the name of the model.
-		</div>
-
-
-		<h3>[method:null setPath] ( [page:String path] )</h3>
-		<div>
-			[page:String path] - URL
-		</div>
-		<div>
-			The URL of the base path.
-		</div>
-
-
-		<h3>[method:null setStreamMeshesTo] ( [page:Object3D streamMeshesTo] )</h3>
-		<div>
-			[page:Object3D streamMeshesTo] - Object already attached to scenegraph where new meshes will be attached to
-		</div>
-		<div>
-			Set the node where the loaded objects will be attached directly.
-		</div>
-
-
-		<h3>[method:null setMaterials] ( Array of [page:Material materials] )</h3>
-		<div>
-			Array of [page:Material materials] - Array of [page:Material Materials]
-		</div>
-		<div>
-			Set materials loaded by MTLLoader or any other supplier of an Array of [page:Material Materials].
-		</div>
-
-
-		<h3>[method:null setUseIndices]( [page:Boolean useIndices] )</h3>
-		<div>
-			[page:Boolean useIndices]
-		</div>
-		<div>
-			Instructs loaders to create indexed [page:BufferGeometry].
-		</div>
-
-
-		<h3>[method:null setDisregardNormals]( [page:Boolean disregardNormals] )</h3>
-		<div>
-			[page:Boolean disregardNormals]
-		</div>
-		<div>
-			Tells whether normals should be completely disregarded and regenerated.
-		</div>
-
-
-		<h3>[method:null onProgress]( [page:String type], [page:String text], [page:Number numericalValue] )</h3>
-		<div>
-			[page:String type] - The type of event<br>
-			[page:String text] - Textual description of the event<br>
-			[page:Number numericalValue] - Numerical value describing the progress
-		</div>
-		<div>
-			Announce feedback which is give to the registered [page:LoaderSupport.Callbacks].
-		</div>
-		<br>
-		<br>
-
-
-		<a name="Callbacks"></a><h1>Callbacks</h1>
-		<h2>Constructor</h2>
-
-		<h3>Callbacks()</h3>
-		<div>
-			Callbacks utilized by loaders and builder.
-		</div>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null setCallbackOnProgress]( [page:Function callbackOnProgress] )</h3>
-		<div>
-			[page:Function callbackOnProgress] - Callback function for described functionality
-		</div>
-		<div>
-			Register callback function that is invoked by internal function "announceProgress" to print feedback.
-		</div>
-
-
-		<h3>[method:null setCallbackOnMeshAlter]( [page:Function callbackOnMeshAlter] )</h3>
-		<div>
-			[page:Function callbackOnMeshAlter] - Callback function for described functionality
-		</div>
-		<div>
-			Register callback function that is called every time a mesh was loaded.
-			Use [page:LoadedMeshUserOverride] for alteration instructions (geometry, material or disregard mesh).
-		</div>
-
-
-		<h3>[method:null setCallbackOnLoad]( [page:Function callbackOnLoad] )</h3>
-		<div>
-			[page:Function callbackOnLoad] - Callback function for described functionality
-		</div>
-		<div>
-			Register callback function that is called once loading of the complete OBJ file is completed.
-		</div>
-
-		<h3>[method:null setCallbackOnLoadMaterials]( [page:Function callbackOnLoadMaterials] )</h3>
-		<div>
-			[page:Function callbackOnLoadMaterials] - Callback function for described functionality
-		</div>
-		<div>
-			Register callback function that is called when materials have been loaded.
-		</div>
-		<br>
-		<br>
-
-
-		<a name="Validator"></a><h1>Validator</h1>
-		<h2>Constructor</h2>
-
-		<h3>Validator()</h3>
-		<div>
-			Validation functions.
-		</div>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:Boolean isValid]( [page:Object input] )</h3>
-		<div>
-			[page:Object input] - Can be anything
-		</div>
-		<div>
-			If given input is null or undefined, false is returned otherwise true.
-		</div>
-
-
-		<h3>[method:null verifyInput]( [page:Object input], [page:Object defaultValue] )</h3>
-		<div>
-			[page:Object input] - Can be anything
-			[page:Object defaultValue] - Can be anything
-		</div>
-		<div>
-			If given input is null or undefined, the defaultValue is returned otherwise the given input.
-		</div>
-		<br>
-		<br>
-
-
-		<a name="ConsoleLogger"></a><h1>ConsoleLogger</h1>
-		<h2>Constructor</h2>
-
-		<h3>ConsoleLogger( [page:Boolean enabled], [page:Boolean debug] )</h3>
-		<div>
-			[page:Boolean enabled] - Tell if logger is enabled.
-			[page:Boolean debug] - Toggle debug logging.
-		<div>
-			Logging wrapper for console.
-		</div>
-
-
-		<h2>Methods</h2>
-
-		<h3>[method:null setDebug]( [page:Boolean debug] )</h3>
-		<div>
-			[page:Boolean debug] - True or False
-		</div>
-		<div>
-			Enable or disable debug logging.
-		</div>
-
-
-		<h3>[method:Boolean isDebug]()</h3>
-		<div>
-			Returns if is enabled and debug.
-		</div>
-
-		<h3>[method:null setEnabled]( [page:Boolean enabled] )</h3>
-		<div>
-			[page:Boolean enabled] - True or False
-		</div>
-		<div>
-			Enable or disable info, debug and time logging.
-		</div>
-
-
-		<h3>[method:Boolean isEnabled]()</h3>
-		<div>
-			Returns if is enabled.
-		</div>
-
-
-		<h3>[method:null logDebug]( [page:String message] )</h3>
-		<div>
-			[page:String message] - Message to log
-		</div>
-		<div>
-			Log a debug message if enabled and debug is set.
-		</div>
-
-
-		<h3>[method:null logInfo]( [page:String message] )</h3>
-		<div>
-			[page:String message] - Message to log
-		</div>
-		<div>
-			Log an info message if enabled.
-		</div>
-
-
-		<h3>[method:null logWarn]( [page:String message] )</h3>
-		<div>
-			[page:String message] - Message to log
-		</div>
-		<div>
-			Log a warn message (always).
-		</div>
-
-
-		<h3>[method:null logError]( [page:String message] )</h3>
-		<div>
-			[page:String message] - Message to log
-		</div>
-		<div>
-			Log an error message (always).
-		</div>
-
-
-		<h3>[method:null logTimeStart]( [page:String id] )</h3>
-		<div>
-			[page:String id] - Time identification
-		</div>
-		<div>
-			Start time measurement with provided id.
-		</div>
-
-
-		<h3>[method:null logTimeEnd]( [page:String id] )</h3>
-		<div>
-			[page:String id] - Time identification
-		</div>
-		<div>
-			Stop time measurement started with provided id.
-		</div>
-		<br>
-		<br>
-
-		<h2>Source</h2>
-
-		[link:https://github.com/mrdoob/three.js/blob/master/examples/js/loaders/LoaderSupport.js examples/js/loaders/LoaderSupport.js]
-
-	</body>
-</html>
+<!DOCTYPE html>
+<html lang="en">
+	<head>
+		<meta charset="utf-8" />
+		<base href="../../" />
+		<script src="list.js"></script>
+		<script src="page.js"></script>
+		<link type="text/css" rel="stylesheet" href="page.css" />
+	</head>
+	<body>
+
+		<h1>[name]</h1>
+
+		<div class="desc">Supporting classes for file loaders and web worker based loaders.</div>
+
+		<h2>Sub-Classes</h2>
+		[page:LoaderSupport.Builder]<br>
+		[page:LoaderSupport.LoadedMeshUserOverride]<br>
+		[page:LoaderSupport.WorkerSupport]<br>
+		[page:LoaderSupport.WorkerRunnerRefImpl]<br>
+		[page:LoaderSupport.WorkerDirector]<br>
+		[page:LoaderSupport.PrepData]<br>
+		[page:LoaderSupport.LoaderBase]<br>
+		[page:LoaderSupport.Callbacks]<br>
+		[page:LoaderSupport.Validator]<br>
+		[page:LoaderSupport.ConsoleLogger]
+
+
+		<h2>Example</h2>
+
+		[example:webgl_loader_obj2_meshspray] - Example using [page:LoaderSupport.LoaderWorkerDirector] and [page:LoaderSupport.LoaderWorkerSupport].<br>
+
+		<h2>Classes</h2>
+		<br>
+
+		<a name="Builder"></a><h1>Builder</h1>
+		<h2>Constructor</h2>
+
+		<h3>Builder()</h3>
+		<div>
+			Builds one or many [page:Mesh] from one raw set of Arraybuffers, materialGroup descriptions and further parameters.
+			Supports vertex, vertexColor, normal, uv and index buffers.
+		</div>
+
+
+		<h2>Methods</h2>
+
+		<h3>[method:null setMaterials] ( Array of [page:Material materials] )</h3>
+		<div>
+			Array of [page:Material materials] - Array of [page:Material Materials]
+		</div>
+		<div>
+			Set materials loaded by any supplier of an Array of [page:Material Materials].
+		</div>
+
+
+		<h3>[method:Array processPayload] ( Object payload )</h3>
+		<div>
+			[page:Object payload] - Raw Mesh or Material descriptions.
+		</div>
+		<div>
+			Delegates processing of the payload (mesh building or material update) to the corresponding functions (BW-compatibility).
+		</div>
+		<br>
+		<br>
+
+
+		<h3>[method:Array buildMeshes] ( Object meshPayload )</h3>
+		<div>
+			[page:Object meshPayload] - Raw mesh description (buffers, params, materials) used to build one to many meshes.
+		</div>
+		<div>
+			Builds one or multiple meshes from the data described in the payload (buffers, params, material info).
+		</div>
+		<br>
+		<br>
+
+
+		<h3>[method:null updateMaterials] ( Object materialPayload )</h3>
+		<div>
+			[page:Object materialPayload] - Material update instructions
+		</div>
+		<div>
+			Updates the materials with contained material objects (sync) or from alteration instructions (async).
+		</div>
+		<br>
+		<br>
+
+
+		<h3>[method:Object getMaterialsJSON] ()</h3>
+		<div>
+			Returns the mapping object of material name and corresponding jsonified material.
+		</div>
+		<br>
+		<br>
+
+
+		<h3>[method:Object getMaterials] ()</h3>
+		<div>
+			Returns the mapping object of material name and corresponding material.
+		</div>
+		<br>
+		<br>
+
+
+		<a name="LoadedMeshUserOverride"></a><h1>LoadedMeshUserOverride</h1>
+		<h2>Constructor</h2>
+
+		<h3>LoadedMeshUserOverride( [page:Boolean disregardMesh], [page:BufferGeometry bufferGeometry] )</h3>
+		<div>
+			[page:Boolean disregardMesh] - Tell implementation to completely disregard this mesh<br>
+			[page:Boolean alteredMesh] - Tell implementation that mesh(es) have been altered or added
+		</div>
+		<div>
+			Object to return by callback onMeshAlter. Used to disregard a certain mesh or to return one to many meshes.
+		</div>
+
+
+		<h2>Methods</h2>
+
+		<h3>[method:null addMesh] ( [page:Mesh mesh] )</h3>
+		<div>
+			[page:Mesh mesh] - Mesh
+		</div>
+		<div>
+			Add a mesh created within callback.
+		</div>
+
+
+		<h3>[method:boolean isDisregardMesh] ()</h3>
+		<div>
+			Answers if mesh shall be disregarded completely.
+		</div>
+
+
+		<h3>[method:boolean providesAlteredMeshes] ()</h3>
+		<div>
+			Answers if new mesh(es) were created.
+		</div>
+		<br>
+		<br>
+
+
+		<a name="WorkerSupport"></a><h1>WorkerSupport</h1>
+		<h2>Constructor</h2>
+
+		<h3>WorkerSupport( [page:LoaderSupport.ConsoleLogger logger] )</h3>
+		<div>
+			[page:LoaderSupport.ConsoleLogger logger] - logger to be used
+		</div>
+		<div>
+			This class provides means to transform existing parser code into a web worker.
+			It defines a simple communication protocol which allows to configure the worker and receive raw mesh data during execution.
+		</div>
+
+
+		<h2>Methods</h2>
+
+		<h3>[method:null validate] ( [page:Function functionCodeBuilder], Array of [page:String libLocations], [page:String libPath], [page:LoaderSupport.WorkerRunnerRefImpl runnerImpl] )</h3>
+		<div>
+			[page:Function functionCodeBuilder] - Function that is invoked with funcBuildObject and funcBuildSingelton that allows stringification of objects and singletons.<br>
+			Array of [page:String libLocations] - URL of libraries that shall be added to worker code relative to libPath.<br>
+			[page:String libPath] - Base path used for loading libraries.<br>
+			[page:LoaderSupport.WorkerRunnerRefImpl runnerImpl] - The default worker parser wrapper implementation (communication and execution). An extended class could be passed here.
+		</div>
+		<div>
+			Validate the status of worker code and the derived worker.
+		</div>
+
+
+		<h3>[method:null setTerminateRequested] ( [page:Boolean terminateRequested] )</h3>
+		<div>
+			[page:Boolean terminateRequested] - True or false.
+		</div>
+		<div>
+			Request termination of worker once parser is finished.
+		</div>
+
+
+		<h3>[method:null setCallbacks] ( [page:Function builder], [page:Function onLoad] )</h3>
+		<div>
+			[page:Function builder] - The builder function. Default is [page:LoaderSupport.Builder].<br>
+			[page:Function onLoad] - The function that is called when parsing is complete.
+		</div>
+		<div>
+			Specify functions that should be build when new raw mesh data becomes available and when the parser is finished.
+		</div>
+
+
+		<h3>[method:null run] ( [page:Object payload] )</h3>
+		<div>
+			[page:Object payload] - Raw mesh description (buffers, params, materials) used to build one to many meshes.
+		</div>
+		<div>
+			Runs the parser with the provided configuration.
+		</div>
+		<br>
+		<br>
+
+
+		<a name="WorkerRunnerRefImpl"></a><h1>WorkerRunnerRefImpl</h1>
+		<h2>Constructor</h2>
+
+		<h3>WorkerRunnerRefImpl()</h3>
+		<div>
+			Default implementation of the WorkerRunner responsible for creation and configuration of the parser within the worker.
+		</div>
+
+
+		<h2>Methods</h2>
+
+		<h3>[method:null applyProperties] ( [page:Object parser], [page:Object params] )</h3>
+		<div>
+			[page:Object parser] - The parser instance<br>
+			[page:Object params] - The parameter object
+		</div>
+		<div>
+			Applies values from parameter object via set functions or via direct assignment.
+		</div>
+
+
+		<h3>[method:null run] ( [page:Object payload] )</h3>
+		<div>
+			[page:Object payload] - Raw mesh description (buffers, params, materials) used to build one to many meshes.
+		</div>
+		<div>
+			Configures the Parser implementation according the supplied configuration object.
+		</div>
+		<br>
+		<br>
+
+
+		<a name="WorkerDirector"></a><h1>WorkerDirector</h1>
+		<h2>Constructor</h2>
+
+		<h3>WorkerDirector( [page:String classDef], [page:LoaderSupport.ConsoleLogger logger] )</h3>
+		<div>
+			[page:String classDef] - Class definition to be used for construction<br>
+			[page:LoaderSupport.ConsoleLogger logger] - logger to be used
+		</div>
+		<div>
+			Orchestrate loading of multiple OBJ files/data from an instruction queue with a configurable amount of workers (1-16).<br>
+			- Workflow:<br>
+			- prepareWorkers<br>
+			- enqueueForRun<br>
+			- processQueue<br>
+			- tearDown
+		</div>
+
+
+		<h2>Methods</h2>
+
+		<h3>[method:null prepareWorkers]( [page:WWOBJLoader2.Callbacks globalCallbacks], [page:Number maxQueueSize], [page:Number maxWebWorkers] )</h3>
+		<div>
+			[page:LoaderSupport.Callbacks globalCallbacks] - Register global callbacks used by all web workers<br>
+			[page:Number maxQueueSize] - Set the maximum size of the instruction queue (1-1024)<br>
+			[page:Number maxWebWorkers] - Set the maximum amount of workers (1-16)
+		</div>
+		<div>
+			Create or destroy workers according limits. Set the name and register callbacks for dynamically created web workers.
+		</div>
+
+
+		<h3>[method:null enqueueForRun]( [page:LoaderSupport.PrepData runParams] )</h3>
+		<div>
+			[page:LoaderSupport.PrepData runParams]
+		</div>
+		<div>
+			Store run instructions in internal instructionQueue.
+		</div>
+
+
+		<h3>[method:null processQueue]()</h3>
+		<div>
+			Process the instructionQueue until it is depleted.
+		</div>
+
+
+		<h3>[method:null tearDown]( [page:Function callbackOnFinishedProcessing] )</h3>
+		<div>
+			[page:Function callbackOnFinishedProcessing] - Function called once all workers finished processing.
+		</div>
+		<div>
+			Terminate all workers.
+		</div>
+
+
+		<h3>[method:null getMaxQueueSize]()</h3>
+		<div>
+			Returns the maximum length of the instruction queue.
+		</div>
+
+
+		<h3>[method:null getMaxWebWorkers]()</h3>
+		<div>
+			Returns the maximum number of workers.
+		</div>
+
+		<h3>[method:Boolean isRunning]()</h3>
+		<div>
+			Returns if any workers are running.
+		</div>
+
+
+		<h3>[method:null setCrossOrigin]( [page:String crossOrigin] )</h3>
+		<div>
+			[page:String crossOrigin] - CORS value
+		</div>
+		<div>
+			Sets the CORS string to be used.
+		</div>
+
+
+		<a name="PrepData"></a><h1>PrepData</h1>
+		<h2>Constructor</h2>
+
+		<h3>PrepData( [page:String modelName] )</h3>
+		<div>
+			[page:String modelName] - Overall name of the model
+		</div>
+		<div>
+			Configuration instructions to be used by run method.
+		</div>
+
+
+		<h2>Methods</h2>
+
+		<h3>[method:null setStreamMeshesTo] ( [page:Object3D streamMeshesTo] )</h3>
+		<div>
+			[page:Object3D streamMeshesTo] - Object already attached to scenegraph where new meshes will be attached to
+		</div>
+		<div>
+			Set the node where the loaded objects will be attached directly.
+		</div>
+
+
+		<h3>[method:null setMaterialPerSmoothingGroup] ( [page:boolean materialPerSmoothingGroup] )</h3>
+		<div>
+			[page:boolean materialPerSmoothingGroup]
+		</div>
+		<div>
+			Tells whether a material shall be created per smoothing group.
+		</div>
+
+
+		<h3>[method:null setUseIndices]( [page:Boolean useIndices] )</h3>
+		<div>
+			[page:Boolean useIndices] - Default is false
+		</div>
+		<div>
+			Instructs loaders to create indexed [page:BufferGeometry].
+		</div>
+
+
+		<h3>[method:null setDisregardNormals]( [page:Boolean disregardNormals] )</h3>
+		<div>
+			[page:Boolean disregardNormals]
+		</div>
+		<div>
+			Tells whether normals should be completely disregarded and regenerated.
+		</div>
+
+
+		<h3>[method:Callbacks getCallbacks]()</h3>
+		<div>
+			Returns all callbacks as [page:LoaderSupport.Callbacks].
+		</div>
+
+
+		<h3>[method:null setCrossOrigin]( [page:String crossOrigin] )</h3>
+		<div>
+			[page:String crossOrigin] - CORS value
+		</div>
+		<div>
+			Sets the CORS string to be used.
+		</div>
+
+
+		<h3>[method:null addResource]( [page:LoaderSupport.ResourceDescriptor resource] )</h3>
+		<div>
+			[page:LoaderSupport.ResourceDescriptor resource]
+		</div>
+		<div>
+			Add a resource description.
+		</div>
+
+
+		<h3>[method:null setUseAsync]( [page:Boolean useAsync] )</h3>
+		<div>
+			[page:Boolean useAsync]
+		</div>
+		<div>
+			If true uses async loading with worker, if false loads data synchronously.
+		</div>
+		<br>
+		<br>
+
+
+		<a name="LoaderBase"></a><h1>LoaderBase</h1>
+		<h2>Constructor</h2>
+
+		<h3>LoaderBase( [page:LoadingManager manager], [page:LoaderSupport.ConsoleLogger logger] )</h3>
+		<div>
+			[page:LoadingManager manager] - The [page:LoadingManager loadingManager] for the loader to use. Default is [page:LoadingManager THREE.DefaultLoadingManager].
+			[page:LoaderSupport.ConsoleLogger logger] - logger to be used
+		</div>
+		<div>
+			Base class to be used by loaders.
+		</div>
+
+
+		<h2>Methods</h2>
+
+		<h3>[method:ConsoleLogger getLogger] ()</h3>
+		<div>
+			Returns [page:LoaderSupport.ConsoleLogger].
+		</div>
+
+
+		<h3>[method:null setModelName] ( [page:String modelName] )</h3>
+		<div>
+			[page:String modelName]
+		</div>
+		<div>
+			Set the name of the model.
+		</div>
+
+
+		<h3>[method:null setPath] ( [page:String path] )</h3>
+		<div>
+			[page:String path] - URL
+		</div>
+		<div>
+			The URL of the base path.
+		</div>
+
+
+		<h3>[method:null setStreamMeshesTo] ( [page:Object3D streamMeshesTo] )</h3>
+		<div>
+			[page:Object3D streamMeshesTo] - Object already attached to scenegraph where new meshes will be attached to
+		</div>
+		<div>
+			Set the node where the loaded objects will be attached directly.
+		</div>
+
+
+		<h3>[method:null setMaterials] ( Array of [page:Material materials] )</h3>
+		<div>
+			Array of [page:Material materials] - Array of [page:Material Materials]
+		</div>
+		<div>
+			Set materials loaded by MTLLoader or any other supplier of an Array of [page:Material Materials].
+		</div>
+
+
+		<h3>[method:null setUseIndices]( [page:Boolean useIndices] )</h3>
+		<div>
+			[page:Boolean useIndices]
+		</div>
+		<div>
+			Instructs loaders to create indexed [page:BufferGeometry].
+		</div>
+
+
+		<h3>[method:null setDisregardNormals]( [page:Boolean disregardNormals] )</h3>
+		<div>
+			[page:Boolean disregardNormals]
+		</div>
+		<div>
+			Tells whether normals should be completely disregarded and regenerated.
+		</div>
+
+
+		<h3>[method:null onProgress]( [page:String type], [page:String text], [page:Number numericalValue] )</h3>
+		<div>
+			[page:String type] - The type of event<br>
+			[page:String text] - Textual description of the event<br>
+			[page:Number numericalValue] - Numerical value describing the progress
+		</div>
+		<div>
+			Announce feedback which is give to the registered [page:LoaderSupport.Callbacks].
+		</div>
+		<br>
+		<br>
+
+
+		<a name="Callbacks"></a><h1>Callbacks</h1>
+		<h2>Constructor</h2>
+
+		<h3>Callbacks()</h3>
+		<div>
+			Callbacks utilized by loaders and builder.
+		</div>
+
+
+		<h2>Methods</h2>
+
+		<h3>[method:null setCallbackOnProgress]( [page:Function callbackOnProgress] )</h3>
+		<div>
+			[page:Function callbackOnProgress] - Callback function for described functionality
+		</div>
+		<div>
+			Register callback function that is invoked by internal function "announceProgress" to print feedback.
+		</div>
+
+
+		<h3>[method:null setCallbackOnMeshAlter]( [page:Function callbackOnMeshAlter] )</h3>
+		<div>
+			[page:Function callbackOnMeshAlter] - Callback function for described functionality
+		</div>
+		<div>
+			Register callback function that is called every time a mesh was loaded.
+			Use [page:LoadedMeshUserOverride] for alteration instructions (geometry, material or disregard mesh).
+		</div>
+
+
+		<h3>[method:null setCallbackOnLoad]( [page:Function callbackOnLoad] )</h3>
+		<div>
+			[page:Function callbackOnLoad] - Callback function for described functionality
+		</div>
+		<div>
+			Register callback function that is called once loading of the complete OBJ file is completed.
+		</div>
+
+		<h3>[method:null setCallbackOnLoadMaterials]( [page:Function callbackOnLoadMaterials] )</h3>
+		<div>
+			[page:Function callbackOnLoadMaterials] - Callback function for described functionality
+		</div>
+		<div>
+			Register callback function that is called when materials have been loaded.
+		</div>
+		<br>
+		<br>
+
+
+		<a name="Validator"></a><h1>Validator</h1>
+		<h2>Constructor</h2>
+
+		<h3>Validator()</h3>
+		<div>
+			Validation functions.
+		</div>
+
+
+		<h2>Methods</h2>
+
+		<h3>[method:Boolean isValid]( [page:Object input] )</h3>
+		<div>
+			[page:Object input] - Can be anything
+		</div>
+		<div>
+			If given input is null or undefined, false is returned otherwise true.
+		</div>
+
+
+		<h3>[method:null verifyInput]( [page:Object input], [page:Object defaultValue] )</h3>
+		<div>
+			[page:Object input] - Can be anything
+			[page:Object defaultValue] - Can be anything
+		</div>
+		<div>
+			If given input is null or undefined, the defaultValue is returned otherwise the given input.
+		</div>
+		<br>
+		<br>
+
+
+		<a name="ConsoleLogger"></a><h1>ConsoleLogger</h1>
+		<h2>Constructor</h2>
+
+		<h3>ConsoleLogger( [page:Boolean enabled], [page:Boolean debug] )</h3>
+		<div>
+			[page:Boolean enabled] - Tell if logger is enabled.
+			[page:Boolean debug] - Toggle debug logging.
+		<div>
+			Logging wrapper for console.
+		</div>
+
+
+		<h2>Methods</h2>
+
+		<h3>[method:null setDebug]( [page:Boolean debug] )</h3>
+		<div>
+			[page:Boolean debug] - True or False
+		</div>
+		<div>
+			Enable or disable debug logging.
+		</div>
+
+
+		<h3>[method:Boolean isDebug]()</h3>
+		<div>
+			Returns if is enabled and debug.
+		</div>
+
+		<h3>[method:null setEnabled]( [page:Boolean enabled] )</h3>
+		<div>
+			[page:Boolean enabled] - True or False
+		</div>
+		<div>
+			Enable or disable info, debug and time logging.
+		</div>
+
+
+		<h3>[method:Boolean isEnabled]()</h3>
+		<div>
+			Returns if is enabled.
+		</div>
+
+
+		<h3>[method:null logDebug]( [page:String message] )</h3>
+		<div>
+			[page:String message] - Message to log
+		</div>
+		<div>
+			Log a debug message if enabled and debug is set.
+		</div>
+
+
+		<h3>[method:null logInfo]( [page:String message] )</h3>
+		<div>
+			[page:String message] - Message to log
+		</div>
+		<div>
+			Log an info message if enabled.
+		</div>
+
+
+		<h3>[method:null logWarn]( [page:String message] )</h3>
+		<div>
+			[page:String message] - Message to log
+		</div>
+		<div>
+			Log a warn message (always).
+		</div>
+
+
+		<h3>[method:null logError]( [page:String message] )</h3>
+		<div>
+			[page:String message] - Message to log
+		</div>
+		<div>
+			Log an error message (always).
+		</div>
+
+
+		<h3>[method:null logTimeStart]( [page:String id] )</h3>
+		<div>
+			[page:String id] - Time identification
+		</div>
+		<div>
+			Start time measurement with provided id.
+		</div>
+
+
+		<h3>[method:null logTimeEnd]( [page:String id] )</h3>
+		<div>
+			[page:String id] - Time identification
+		</div>
+		<div>
+			Stop time measurement started with provided id.
+		</div>
+		<br>
+		<br>
+
+		<h2>Source</h2>
+
+		[link:https://github.com/mrdoob/three.js/blob/master/examples/js/loaders/LoaderSupport.js examples/js/loaders/LoaderSupport.js]
+
+	</body>
+</html>

+ 9 - 11
docs/examples/objects/LensFlare.html → docs/examples/objects/Lensflare.html

@@ -14,8 +14,6 @@
 
 		<div class="desc">
 			Creates a simulated lens flare that tracks a light.<br /><br />
-
-			Note: [page:WebGLRenderer.alpha] must be set to *true* for LensFlare to work.
 		</div>
 
 		<h2>Example</h2>
@@ -32,13 +30,13 @@ var textureFlare0 = textureLoader.load( "textures/lensflare/lensflare0.png" );
 var textureFlare1 = textureLoader.load( "textures/lensflare/lensflare2.png" );
 var textureFlare2 = textureLoader.load( "textures/lensflare/lensflare3.png" );
 
-var lensFlare = new THREE.LensFlare();
+var lensflare = new THREE.Lensflare();
 
-lensFlare.add( new THREE.LensFlareElement( textureFlare0, 512, 0 ) );
-lensFlare.add( new THREE.LensFlareElement( textureFlare1, 512, 0 ) );
-lensFlare.add( new THREE.LensFlareElement( textureFlare2, 60, 0.6 ) );
+lensflare.add( new THREE.LensflareElement( textureFlare0, 512, 0 ) );
+lensflare.add( new THREE.LensflareElement( textureFlare1, 512, 0 ) );
+lensflare.add( new THREE.LensflareElement( textureFlare2, 60, 0.6 ) );
 
-light.add( lensFlare );
+light.add( lensflare );
 			</code>
 
 		</div>
@@ -46,7 +44,7 @@ light.add( lensFlare );
 		<h2>Constructor</h2>
 
 
-		<h3>LensFlareElement( [page:Texture texture], [page:Float size], [page:Float distance], [page:Color color], [page:Materials blending] )</h3>
+		<h3>LensflareElement( [page:Texture texture], [page:Float size], [page:Float distance], [page:Color color], [page:Materials blending] )</h3>
 		<div>
 		[page:Texture texture] - THREE.Texture to use for the flare. <br />
 		[page:Float size] - (optional) size in pixels <br />
@@ -58,9 +56,9 @@ light.add( lensFlare );
 		<h2>Properties</h2>
 		<div>See the base [page:Mesh] class for common properties.</div>
 
-		<h3>[property:Boolean isLensFlare]</h3>
+		<h3>[property:Boolean isLensflare]</h3>
 		<div>
-			Used to check whether this or derived classes are lens flares. Default is *true*.<br /><br />
+			Used to check whether this or derived classes are lensflares. Default is *true*.<br /><br />
 
 			You should not change this, as it used internally for optimisation.
 		</div>
@@ -68,6 +66,6 @@ light.add( lensFlare );
 
 		<h2>Source</h2>
 
-		[link:https://github.com/mrdoob/three.js/blob/master/examples/js/objects/LensFlare.js examples/js/objects/LensFlare.js]
+		[link:https://github.com/mrdoob/three.js/blob/master/examples/js/objects/Lensflare.js examples/js/objects/Lensflare.js]
 	</body>
 </html>

+ 1 - 2
docs/list.js

@@ -361,7 +361,7 @@ var list = {
 		},
 
 		"Objects": {
-			"LensFlare": "examples/objects/LensFlare",
+			"Lensflare": "examples/objects/Lensflare",
 		},
 
 		"Exporters": {
@@ -404,7 +404,6 @@ var list = {
 		},
 
 		"WebGLRenderer / Plugins": {
-			"LensFlarePlugin": "api/renderers/webgl/plugins/LensFlarePlugin",
 			"SpritePlugin": "api/renderers/webgl/plugins/SpritePlugin"
 		}
 

+ 1 - 1
docs/manual/introduction/Useful-links.html

@@ -47,7 +47,7 @@
 				[link:http://blog.cjgammon.com/ Collection of tutorials] by [link:http://www.cjgammon.com/ CJ Gammon].
 			</li>
 			<li>
-				[link:https://medium.com/@soffritti.pierfrancesco/glossy-spheres-in-three-js-bfd2785d4857] Glossy spheres in three.js.
+				[link:https://medium.com/@soffritti.pierfrancesco/glossy-spheres-in-three-js-bfd2785d4857 Glossy spheres in three.js].
 			</li>
 		 <li>
 			 [link:https://www.udacity.com/course/cs291 Interactive 3D Graphics] - a free course on Udacity that teaches the fundamentals of 3D Graphics,

+ 0 - 2
editor/js/Menubar.Edit.js

@@ -109,8 +109,6 @@ Menubar.Edit = function ( editor ) {
 
 		var object = editor.selected;
 
-		if ( confirm( 'Delete ' + object.name + '?' ) === false ) return;
-
 		var parent = object.parent;
 		if ( parent === undefined ) return; // avoid deleting the camera or scene
 

+ 1 - 2
editor/js/Sidebar.Settings.Shortcuts.js

@@ -100,8 +100,7 @@ Sidebar.Settings.Shortcuts = function ( editor ) {
 				var object = editor.selected;
 
 				if ( object === null ) return;
-				if ( confirm( 'Delete ' + object.name + '?' ) === false ) return;
-
+				
 				var parent = object.parent;
 				if ( parent !== null ) editor.execute( new RemoveObjectCommand( object ) );
 

+ 1 - 7
editor/js/Sidebar.Settings.Viewport.js

@@ -20,19 +20,13 @@ Sidebar.Settings.Viewport = function ( editor ) {
 
 	var snap = new UI.THREE.Boolean( false, 'snap' ).onChange( update );
 	container.add( snap );
-
-	var local = new UI.THREE.Boolean( false, 'local' ).onChange( update );
-	container.add( local );
 	*/
 
 	function update() {
 
 		signals.showGridChanged.dispatch( show.getValue() );
 
-		/*
-		signals.snapChanged.dispatch( snap.getValue() === true ? snapSize.getValue() : null );
-		signals.spaceChanged.dispatch( local.getValue() === true ? "local" : "world" );
-		*/
+		// signals.snapChanged.dispatch( snap.getValue() === true ? snapSize.getValue() : null );
 
 	}
 

+ 8 - 0
editor/js/Toolbar.js

@@ -42,6 +42,14 @@ var Toolbar = function ( editor ) {
 	} );
 	buttons.add( scale );
 
+	var local = new UI.THREE.Boolean( false, 'local' )
+	local.onChange( function () {
+
+		signals.spaceChanged.dispatch( this.getValue() === true ? 'local' : 'world' );
+
+	} );
+	buttons.add( local );
+
 	signals.transformModeChanged.add( function ( mode ) {
 
 		translate.dom.classList.remove( 'selected' );

+ 0 - 4
editor/js/libs/tern-threejs/threejs.js

@@ -500,10 +500,6 @@
         "dispose": {
           "!type": "fn()",
           "!doc": "Removes The object from memory. <br>\n\t\tDon't forget to call this method when you remove a geometry because it can cause memory leaks."
-        },
-        "computeLineDistances": {
-          "!type": "fn()",
-          "!doc": "Compute distances between vertices for Line geometries."
         }
       },
       "!doc": "Base class for geometries.<br>\n\t\tA geometry holds all data necessary to describe a 3D model.",

+ 3 - 16
examples/canvas_lines_dashed.html

@@ -49,8 +49,7 @@
 			var objects = [];
 
 
-			var WIDTH = window.innerWidth,
-				HEIGHT = window.innerHeight;
+			var WIDTH = window.innerWidth, HEIGHT = window.innerHeight;
 
 			init();
 			animate();
@@ -63,28 +62,17 @@
 				scene = new THREE.Scene();
 				scene.background = new THREE.Color( 0x111111 );
 
-				root = new THREE.Object3D();
-
 				var subdivisions = 6;
 				var recursion = 1;
 
 				var points = hilbert3D( new THREE.Vector3( 0,0,0 ), 25.0, recursion, 0, 1, 2, 3, 4, 5, 6, 7 );
-
 				var spline = new THREE.CatmullRomCurve3( points );
-				var geometrySpline = new THREE.Geometry();
-
-				for ( var i = 0; i < points.length * subdivisions; i ++ ) {
 
-					var t = i / ( points.length * subdivisions );
-					geometrySpline.vertices[ i ] = spline.getPoint( t );
-
-				}
+				var samples = spline.getPoints( points.length * subdivisions );
+				var geometrySpline = new THREE.Geometry().setFromPoints( samples );
 
 				var geometryCube = cube( 50 );
 
-				geometryCube.computeLineDistances();
-				geometrySpline.computeLineDistances();
-
 				var object = new THREE.Line( geometrySpline, new THREE.LineDashedMaterial( { color: 0xffffff, dashSize: 1, gapSize: 0.5 } ) );
 
 				objects.push( object );
@@ -186,7 +174,6 @@
 
 					var object = objects[ i ];
 
-					//object.rotation.x = 0.25 * time * ( i%2 == 1 ? 1 : -1);
 					object.rotation.x = 0.25 * time;
 					object.rotation.y = 0.25 * time;
 

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