Browse Source

Merge branch 'dev' into geometry

# Conflicts:
#	examples/js/geometries/ConvexGeometry.js
#	examples/jsm/geometries/ConvexGeometry.js
#	src/Three.Legacy.js
#	test/unit/src/core/Geometry.tests.js
Mr.doob 4 years ago
parent
commit
1659408cb3
100 changed files with 607 additions and 883 deletions
  1. 2 2
      README.md
  2. 189 251
      build/three.js
  3. 0 0
      build/three.min.js
  4. 96 217
      build/three.module.js
  5. 1 1
      docs/api/ar/audio/PositionalAudio.html
  6. 1 1
      docs/api/en/audio/PositionalAudio.html
  7. 1 1
      docs/api/en/extras/core/Shape.html
  8. 2 2
      docs/api/en/geometries/BoxGeometry.html
  9. 2 2
      docs/api/en/geometries/CircleGeometry.html
  10. 5 5
      docs/api/en/geometries/ConeGeometry.html
  11. 2 2
      docs/api/en/geometries/CylinderGeometry.html
  12. 4 4
      docs/api/en/geometries/DodecahedronGeometry.html
  13. 1 1
      docs/api/en/geometries/EdgesGeometry.html
  14. 2 2
      docs/api/en/geometries/ExtrudeGeometry.html
  15. 4 4
      docs/api/en/geometries/IcosahedronGeometry.html
  16. 3 3
      docs/api/en/geometries/LatheGeometry.html
  17. 4 4
      docs/api/en/geometries/OctahedronGeometry.html
  18. 2 2
      docs/api/en/geometries/ParametricGeometry.html
  19. 2 2
      docs/api/en/geometries/PlaneGeometry.html
  20. 3 3
      docs/api/en/geometries/PolyhedronGeometry.html
  21. 2 2
      docs/api/en/geometries/RingGeometry.html
  22. 2 2
      docs/api/en/geometries/ShapeGeometry.html
  23. 2 2
      docs/api/en/geometries/SphereGeometry.html
  24. 4 4
      docs/api/en/geometries/TetrahedronGeometry.html
  25. 6 6
      docs/api/en/geometries/TextGeometry.html
  26. 2 2
      docs/api/en/geometries/TorusGeometry.html
  27. 2 2
      docs/api/en/geometries/TorusKnotGeometry.html
  28. 2 2
      docs/api/en/geometries/TubeGeometry.html
  29. 1 1
      docs/api/en/geometries/WireframeGeometry.html
  30. 1 1
      docs/api/en/helpers/BoxHelper.html
  31. 2 2
      docs/api/en/lights/shadows/DirectionalLightShadow.html
  32. 2 2
      docs/api/en/lights/shadows/PointLightShadow.html
  33. 2 2
      docs/api/en/lights/shadows/SpotLightShadow.html
  34. 1 1
      docs/api/en/materials/ShadowMaterial.html
  35. 1 1
      docs/api/en/math/Box3.html
  36. 1 1
      docs/api/en/objects/Group.html
  37. 1 1
      docs/api/en/objects/LOD.html
  38. 1 1
      docs/api/en/objects/Mesh.html
  39. 1 1
      docs/api/en/objects/SkinnedMesh.html
  40. 1 1
      docs/api/ko/audio/PositionalAudio.html
  41. 1 1
      docs/api/zh/audio/PositionalAudio.html
  42. 1 1
      docs/api/zh/extras/core/Shape.html
  43. 2 2
      docs/api/zh/geometries/BoxGeometry.html
  44. 2 2
      docs/api/zh/geometries/CircleGeometry.html
  45. 5 5
      docs/api/zh/geometries/ConeGeometry.html
  46. 2 2
      docs/api/zh/geometries/CylinderGeometry.html
  47. 4 4
      docs/api/zh/geometries/DodecahedronGeometry.html
  48. 1 1
      docs/api/zh/geometries/EdgesGeometry.html
  49. 2 2
      docs/api/zh/geometries/ExtrudeGeometry.html
  50. 4 4
      docs/api/zh/geometries/IcosahedronGeometry.html
  51. 2 2
      docs/api/zh/geometries/LatheGeometry.html
  52. 4 4
      docs/api/zh/geometries/OctahedronGeometry.html
  53. 2 2
      docs/api/zh/geometries/ParametricGeometry.html
  54. 2 2
      docs/api/zh/geometries/PlaneGeometry.html
  55. 2 2
      docs/api/zh/geometries/PolyhedronGeometry.html
  56. 2 2
      docs/api/zh/geometries/RingGeometry.html
  57. 2 2
      docs/api/zh/geometries/ShapeGeometry.html
  58. 2 2
      docs/api/zh/geometries/SphereGeometry.html
  59. 4 4
      docs/api/zh/geometries/TetrahedronGeometry.html
  60. 6 6
      docs/api/zh/geometries/TextGeometry.html
  61. 2 2
      docs/api/zh/geometries/TorusGeometry.html
  62. 2 2
      docs/api/zh/geometries/TorusKnotGeometry.html
  63. 2 2
      docs/api/zh/geometries/TubeGeometry.html
  64. 1 1
      docs/api/zh/geometries/WireframeGeometry.html
  65. 1 1
      docs/api/zh/helpers/BoxHelper.html
  66. 2 2
      docs/api/zh/lights/shadows/DirectionalLightShadow.html
  67. 2 2
      docs/api/zh/lights/shadows/PointLightShadow.html
  68. 2 2
      docs/api/zh/lights/shadows/SpotLightShadow.html
  69. 1 1
      docs/api/zh/materials/ShadowMaterial.html
  70. 1 1
      docs/api/zh/math/Box3.html
  71. 1 1
      docs/api/zh/objects/Group.html
  72. 1 1
      docs/api/zh/objects/LOD.html
  73. 1 1
      docs/api/zh/objects/Mesh.html
  74. 1 1
      docs/api/zh/objects/SkinnedMesh.html
  75. 0 44
      docs/examples/en/geometries/ConvexBufferGeometry.html
  76. 1 1
      docs/examples/en/geometries/ConvexGeometry.html
  77. 1 1
      docs/examples/en/helpers/VertexNormalsHelper.html
  78. 1 1
      docs/examples/en/helpers/VertexTangentsHelper.html
  79. 1 1
      docs/examples/en/loaders/SVGLoader.html
  80. 0 44
      docs/examples/zh/geometries/ConvexBufferGeometry.html
  81. 1 1
      docs/examples/zh/geometries/ConvexGeometry.html
  82. 1 1
      docs/examples/zh/helpers/VertexNormalsHelper.html
  83. 1 1
      docs/examples/zh/helpers/VertexTangentsHelper.html
  84. 1 1
      docs/examples/zh/loaders/SVGLoader.html
  85. 40 42
      docs/list.json
  86. 4 4
      docs/manual/ar/introduction/Creating-a-scene.html
  87. 4 4
      docs/manual/en/introduction/Creating-a-scene.html
  88. 4 4
      docs/manual/ko/introduction/Creating-a-scene.html
  89. 4 4
      docs/manual/zh/introduction/Creating-a-scene.html
  90. 2 2
      docs/scenes/bones-browser.html
  91. 79 79
      docs/scenes/geometry-browser.html
  92. 2 2
      docs/scenes/material-browser.html
  93. 5 3
      examples/js/geometries/ConvexGeometry.js
  94. 3 3
      examples/js/misc/ConvexObjectBreaker.js
  95. 1 8
      examples/jsm/geometries/ConvexGeometry.d.ts
  96. 6 4
      examples/jsm/geometries/ConvexGeometry.js
  97. 2 2
      examples/jsm/loaders/KTX2Loader.js
  98. 4 4
      examples/jsm/misc/ConvexObjectBreaker.js
  99. 2 2
      examples/jsm/physics/AmmoPhysics.js
  100. 2 2
      examples/physics_ammo_break.html

+ 2 - 2
README.md

@@ -39,7 +39,7 @@ function init() {
 
 
 	scene = new THREE.Scene();
 	scene = new THREE.Scene();
 
 
-	geometry = new THREE.BoxBufferGeometry( 0.2, 0.2, 0.2 );
+	geometry = new THREE.BoxGeometry( 0.2, 0.2, 0.2 );
 	material = new THREE.MeshNormalMaterial();
 	material = new THREE.MeshNormalMaterial();
 
 
 	mesh = new THREE.Mesh( geometry, material );
 	mesh = new THREE.Mesh( geometry, material );
@@ -62,7 +62,7 @@ function animation( time ) {
 }
 }
 ```
 ```
 
 
-If everything went well, you should see [this](https://jsfiddle.net/9v7eqwu1/).
+If everything went well, you should see [this](https://jsfiddle.net/zdjankqw/).
 
 
 ### Cloning this repository ###
 ### Cloning this repository ###
 
 

+ 189 - 251
build/three.js

@@ -8958,10 +8958,10 @@
 		return intersection;
 		return intersection;
 	}
 	}
 
 
-	var BoxBufferGeometry = /*#__PURE__*/function (_BufferGeometry) {
-		_inheritsLoose(BoxBufferGeometry, _BufferGeometry);
+	var BoxGeometry = /*#__PURE__*/function (_BufferGeometry) {
+		_inheritsLoose(BoxGeometry, _BufferGeometry);
 
 
-		function BoxBufferGeometry(width, height, depth, widthSegments, heightSegments, depthSegments) {
+		function BoxGeometry(width, height, depth, widthSegments, heightSegments, depthSegments) {
 			var _this;
 			var _this;
 
 
 			if (width === void 0) {
 			if (width === void 0) {
@@ -8989,7 +8989,7 @@
 			}
 			}
 
 
 			_this = _BufferGeometry.call(this) || this;
 			_this = _BufferGeometry.call(this) || this;
-			_this.type = 'BoxBufferGeometry';
+			_this.type = 'BoxGeometry';
 			_this.parameters = {
 			_this.parameters = {
 				width: width,
 				width: width,
 				height: height,
 				height: height,
@@ -9101,7 +9101,7 @@
 			return _this;
 			return _this;
 		}
 		}
 
 
-		return BoxBufferGeometry;
+		return BoxGeometry;
 	}(BufferGeometry);
 	}(BufferGeometry);
 
 
 	/**
 	/**
@@ -9674,7 +9674,7 @@
 			/* glsl */
 			/* glsl */
 			"\n\n\t\t\tuniform sampler2D tEquirect;\n\n\t\t\tvarying vec3 vWorldDirection;\n\n\t\t\t#include <common>\n\n\t\t\tvoid main() {\n\n\t\t\t\tvec3 direction = normalize( vWorldDirection );\n\n\t\t\t\tvec2 sampleUV = equirectUv( direction );\n\n\t\t\t\tgl_FragColor = texture2D( tEquirect, sampleUV );\n\n\t\t\t}\n\t\t"
 			"\n\n\t\t\tuniform sampler2D tEquirect;\n\n\t\t\tvarying vec3 vWorldDirection;\n\n\t\t\t#include <common>\n\n\t\t\tvoid main() {\n\n\t\t\t\tvec3 direction = normalize( vWorldDirection );\n\n\t\t\t\tvec2 sampleUV = equirectUv( direction );\n\n\t\t\t\tgl_FragColor = texture2D( tEquirect, sampleUV );\n\n\t\t\t}\n\t\t"
 		};
 		};
-		var geometry = new BoxBufferGeometry(5, 5, 5);
+		var geometry = new BoxGeometry(5, 5, 5);
 		var material = new ShaderMaterial({
 		var material = new ShaderMaterial({
 			name: 'CubemapFromEquirect',
 			name: 'CubemapFromEquirect',
 			uniforms: cloneUniforms(shader.uniforms),
 			uniforms: cloneUniforms(shader.uniforms),
@@ -10005,10 +10005,10 @@
 		};
 		};
 	}
 	}
 
 
-	var PlaneBufferGeometry = /*#__PURE__*/function (_BufferGeometry) {
-		_inheritsLoose(PlaneBufferGeometry, _BufferGeometry);
+	var PlaneGeometry = /*#__PURE__*/function (_BufferGeometry) {
+		_inheritsLoose(PlaneGeometry, _BufferGeometry);
 
 
-		function PlaneBufferGeometry(width, height, widthSegments, heightSegments) {
+		function PlaneGeometry(width, height, widthSegments, heightSegments) {
 			var _this;
 			var _this;
 
 
 			if (width === void 0) {
 			if (width === void 0) {
@@ -10028,7 +10028,7 @@
 			}
 			}
 
 
 			_this = _BufferGeometry.call(this) || this;
 			_this = _BufferGeometry.call(this) || this;
-			_this.type = 'PlaneBufferGeometry';
+			_this.type = 'PlaneGeometry';
 			_this.parameters = {
 			_this.parameters = {
 				width: width,
 				width: width,
 				height: height,
 				height: height,
@@ -10083,7 +10083,7 @@
 			return _this;
 			return _this;
 		}
 		}
 
 
-		return PlaneBufferGeometry;
+		return PlaneGeometry;
 	}(BufferGeometry);
 	}(BufferGeometry);
 
 
 	var alphamap_fragment = "#ifdef USE_ALPHAMAP\n\tdiffuseColor.a *= texture2D( alphaMap, vUv ).g;\n#endif";
 	var alphamap_fragment = "#ifdef USE_ALPHAMAP\n\tdiffuseColor.a *= texture2D( alphaMap, vUv ).g;\n#endif";
@@ -10995,7 +10995,7 @@
 
 
 			if (background && (background.isCubeTexture || background.isWebGLCubeRenderTarget || background.mapping === CubeUVReflectionMapping)) {
 			if (background && (background.isCubeTexture || background.isWebGLCubeRenderTarget || background.mapping === CubeUVReflectionMapping)) {
 				if (boxMesh === undefined) {
 				if (boxMesh === undefined) {
-					boxMesh = new Mesh(new BoxBufferGeometry(1, 1, 1), new ShaderMaterial({
+					boxMesh = new Mesh(new BoxGeometry(1, 1, 1), new ShaderMaterial({
 						name: 'BackgroundCubeMaterial',
 						name: 'BackgroundCubeMaterial',
 						uniforms: cloneUniforms(ShaderLib.cube.uniforms),
 						uniforms: cloneUniforms(ShaderLib.cube.uniforms),
 						vertexShader: ShaderLib.cube.vertexShader,
 						vertexShader: ShaderLib.cube.vertexShader,
@@ -11040,7 +11040,7 @@
 				renderList.unshift(boxMesh, boxMesh.geometry, boxMesh.material, 0, 0, null);
 				renderList.unshift(boxMesh, boxMesh.geometry, boxMesh.material, 0, 0, null);
 			} else if (background && background.isTexture) {
 			} else if (background && background.isTexture) {
 				if (planeMesh === undefined) {
 				if (planeMesh === undefined) {
-					planeMesh = new Mesh(new PlaneBufferGeometry(2, 2), new ShaderMaterial({
+					planeMesh = new Mesh(new PlaneGeometry(2, 2), new ShaderMaterial({
 						name: 'BackgroundMaterial',
 						name: 'BackgroundMaterial',
 						uniforms: cloneUniforms(ShaderLib.background.uniforms),
 						uniforms: cloneUniforms(ShaderLib.background.uniforms),
 						vertexShader: ShaderLib.background.vertexShader,
 						vertexShader: ShaderLib.background.vertexShader,
@@ -20441,10 +20441,10 @@
 	DepthTexture.prototype.constructor = DepthTexture;
 	DepthTexture.prototype.constructor = DepthTexture;
 	DepthTexture.prototype.isDepthTexture = true;
 	DepthTexture.prototype.isDepthTexture = true;
 
 
-	var CircleBufferGeometry = /*#__PURE__*/function (_BufferGeometry) {
-		_inheritsLoose(CircleBufferGeometry, _BufferGeometry);
+	var CircleGeometry = /*#__PURE__*/function (_BufferGeometry) {
+		_inheritsLoose(CircleGeometry, _BufferGeometry);
 
 
-		function CircleBufferGeometry(radius, segments, thetaStart, thetaLength) {
+		function CircleGeometry(radius, segments, thetaStart, thetaLength) {
 			var _this;
 			var _this;
 
 
 			if (radius === void 0) {
 			if (radius === void 0) {
@@ -20464,7 +20464,7 @@
 			}
 			}
 
 
 			_this = _BufferGeometry.call(this) || this;
 			_this = _BufferGeometry.call(this) || this;
-			_this.type = 'CircleBufferGeometry';
+			_this.type = 'CircleGeometry';
 			_this.parameters = {
 			_this.parameters = {
 				radius: radius,
 				radius: radius,
 				segments: segments,
 				segments: segments,
@@ -20516,13 +20516,13 @@
 			return _this;
 			return _this;
 		}
 		}
 
 
-		return CircleBufferGeometry;
+		return CircleGeometry;
 	}(BufferGeometry);
 	}(BufferGeometry);
 
 
-	var CylinderBufferGeometry = /*#__PURE__*/function (_BufferGeometry) {
-		_inheritsLoose(CylinderBufferGeometry, _BufferGeometry);
+	var CylinderGeometry = /*#__PURE__*/function (_BufferGeometry) {
+		_inheritsLoose(CylinderGeometry, _BufferGeometry);
 
 
-		function CylinderBufferGeometry(radiusTop, radiusBottom, height, radialSegments, heightSegments, openEnded, thetaStart, thetaLength) {
+		function CylinderGeometry(radiusTop, radiusBottom, height, radialSegments, heightSegments, openEnded, thetaStart, thetaLength) {
 			var _this;
 			var _this;
 
 
 			if (radiusTop === void 0) {
 			if (radiusTop === void 0) {
@@ -20558,7 +20558,7 @@
 			}
 			}
 
 
 			_this = _BufferGeometry.call(this) || this;
 			_this = _BufferGeometry.call(this) || this;
-			_this.type = 'CylinderBufferGeometry';
+			_this.type = 'CylinderGeometry';
 			_this.parameters = {
 			_this.parameters = {
 				radiusTop: radiusTop,
 				radiusTop: radiusTop,
 				radiusBottom: radiusBottom,
 				radiusBottom: radiusBottom,
@@ -20729,13 +20729,13 @@
 			return _this;
 			return _this;
 		}
 		}
 
 
-		return CylinderBufferGeometry;
+		return CylinderGeometry;
 	}(BufferGeometry);
 	}(BufferGeometry);
 
 
-	var ConeBufferGeometry = /*#__PURE__*/function (_CylinderBufferGeomet) {
-		_inheritsLoose(ConeBufferGeometry, _CylinderBufferGeomet);
+	var ConeGeometry = /*#__PURE__*/function (_CylinderGeometry) {
+		_inheritsLoose(ConeGeometry, _CylinderGeometry);
 
 
-		function ConeBufferGeometry(radius, height, radialSegments, heightSegments, openEnded, thetaStart, thetaLength) {
+		function ConeGeometry(radius, height, radialSegments, heightSegments, openEnded, thetaStart, thetaLength) {
 			var _this;
 			var _this;
 
 
 			if (radius === void 0) {
 			if (radius === void 0) {
@@ -20766,8 +20766,8 @@
 				thetaLength = Math.PI * 2;
 				thetaLength = Math.PI * 2;
 			}
 			}
 
 
-			_this = _CylinderBufferGeomet.call(this, 0, radius, height, radialSegments, heightSegments, openEnded, thetaStart, thetaLength) || this;
-			_this.type = 'ConeBufferGeometry';
+			_this = _CylinderGeometry.call(this, 0, radius, height, radialSegments, heightSegments, openEnded, thetaStart, thetaLength) || this;
+			_this.type = 'ConeGeometry';
 			_this.parameters = {
 			_this.parameters = {
 				radius: radius,
 				radius: radius,
 				height: height,
 				height: height,
@@ -20780,13 +20780,13 @@
 			return _this;
 			return _this;
 		}
 		}
 
 
-		return ConeBufferGeometry;
-	}(CylinderBufferGeometry);
+		return ConeGeometry;
+	}(CylinderGeometry);
 
 
-	var PolyhedronBufferGeometry = /*#__PURE__*/function (_BufferGeometry) {
-		_inheritsLoose(PolyhedronBufferGeometry, _BufferGeometry);
+	var PolyhedronGeometry = /*#__PURE__*/function (_BufferGeometry) {
+		_inheritsLoose(PolyhedronGeometry, _BufferGeometry);
 
 
-		function PolyhedronBufferGeometry(vertices, indices, radius, detail) {
+		function PolyhedronGeometry(vertices, indices, radius, detail) {
 			var _this;
 			var _this;
 
 
 			if (radius === void 0) {
 			if (radius === void 0) {
@@ -20798,7 +20798,7 @@
 			}
 			}
 
 
 			_this = _BufferGeometry.call(this) || this;
 			_this = _BufferGeometry.call(this) || this;
-			_this.type = 'PolyhedronBufferGeometry';
+			_this.type = 'PolyhedronGeometry';
 			_this.parameters = {
 			_this.parameters = {
 				vertices: vertices,
 				vertices: vertices,
 				indices: indices,
 				indices: indices,
@@ -20989,13 +20989,13 @@
 			return _this;
 			return _this;
 		}
 		}
 
 
-		return PolyhedronBufferGeometry;
+		return PolyhedronGeometry;
 	}(BufferGeometry);
 	}(BufferGeometry);
 
 
-	var DodecahedronBufferGeometry = /*#__PURE__*/function (_PolyhedronBufferGeom) {
-		_inheritsLoose(DodecahedronBufferGeometry, _PolyhedronBufferGeom);
+	var DodecahedronGeometry = /*#__PURE__*/function (_PolyhedronGeometry) {
+		_inheritsLoose(DodecahedronGeometry, _PolyhedronGeometry);
 
 
-		function DodecahedronBufferGeometry(radius, detail) {
+		function DodecahedronGeometry(radius, detail) {
 			var _this;
 			var _this;
 
 
 			if (radius === void 0) {
 			if (radius === void 0) {
@@ -21014,8 +21014,8 @@
 			-r, -t, 0, -r, t, 0, r, -t, 0, r, t, 0, // (±φ, 0, ±1/φ)
 			-r, -t, 0, -r, t, 0, r, -t, 0, r, t, 0, // (±φ, 0, ±1/φ)
 			-t, 0, -r, t, 0, -r, -t, 0, r, t, 0, r];
 			-t, 0, -r, t, 0, -r, -t, 0, r, t, 0, r];
 			var indices = [3, 11, 7, 3, 7, 15, 3, 15, 13, 7, 19, 17, 7, 17, 6, 7, 6, 15, 17, 4, 8, 17, 8, 10, 17, 10, 6, 8, 0, 16, 8, 16, 2, 8, 2, 10, 0, 12, 1, 0, 1, 18, 0, 18, 16, 6, 10, 2, 6, 2, 13, 6, 13, 15, 2, 16, 18, 2, 18, 3, 2, 3, 13, 18, 1, 9, 18, 9, 11, 18, 11, 3, 4, 14, 12, 4, 12, 0, 4, 0, 8, 11, 9, 5, 11, 5, 19, 11, 19, 7, 19, 5, 14, 19, 14, 4, 19, 4, 17, 1, 12, 14, 1, 14, 5, 1, 5, 9];
 			var indices = [3, 11, 7, 3, 7, 15, 3, 15, 13, 7, 19, 17, 7, 17, 6, 7, 6, 15, 17, 4, 8, 17, 8, 10, 17, 10, 6, 8, 0, 16, 8, 16, 2, 8, 2, 10, 0, 12, 1, 0, 1, 18, 0, 18, 16, 6, 10, 2, 6, 2, 13, 6, 13, 15, 2, 16, 18, 2, 18, 3, 2, 3, 13, 18, 1, 9, 18, 9, 11, 18, 11, 3, 4, 14, 12, 4, 12, 0, 4, 0, 8, 11, 9, 5, 11, 5, 19, 11, 19, 7, 19, 5, 14, 19, 14, 4, 19, 4, 17, 1, 12, 14, 1, 14, 5, 1, 5, 9];
-			_this = _PolyhedronBufferGeom.call(this, vertices, indices, radius, detail) || this;
-			_this.type = 'DodecahedronBufferGeometry';
+			_this = _PolyhedronGeometry.call(this, vertices, indices, radius, detail) || this;
+			_this.type = 'DodecahedronGeometry';
 			_this.parameters = {
 			_this.parameters = {
 				radius: radius,
 				radius: radius,
 				detail: detail
 				detail: detail
@@ -21023,8 +21023,8 @@
 			return _this;
 			return _this;
 		}
 		}
 
 
-		return DodecahedronBufferGeometry;
-	}(PolyhedronBufferGeometry);
+		return DodecahedronGeometry;
+	}(PolyhedronGeometry);
 
 
 	var _v0$2 = new Vector3();
 	var _v0$2 = new Vector3();
 
 
@@ -21799,14 +21799,14 @@
 		}
 		}
 	}
 	}
 
 
-	var ExtrudeBufferGeometry = /*#__PURE__*/function (_BufferGeometry) {
-		_inheritsLoose(ExtrudeBufferGeometry, _BufferGeometry);
+	var ExtrudeGeometry = /*#__PURE__*/function (_BufferGeometry) {
+		_inheritsLoose(ExtrudeGeometry, _BufferGeometry);
 
 
-		function ExtrudeBufferGeometry(shapes, options) {
+		function ExtrudeGeometry(shapes, options) {
 			var _this;
 			var _this;
 
 
 			_this = _BufferGeometry.call(this) || this;
 			_this = _BufferGeometry.call(this) || this;
-			_this.type = 'ExtrudeBufferGeometry';
+			_this.type = 'ExtrudeGeometry';
 			_this.parameters = {
 			_this.parameters = {
 				shapes: shapes,
 				shapes: shapes,
 				options: options
 				options: options
@@ -22249,7 +22249,7 @@
 			return _this;
 			return _this;
 		}
 		}
 
 
-		var _proto = ExtrudeBufferGeometry.prototype;
+		var _proto = ExtrudeGeometry.prototype;
 
 
 		_proto.toJSON = function toJSON() {
 		_proto.toJSON = function toJSON() {
 			var data = BufferGeometry.prototype.toJSON.call(this);
 			var data = BufferGeometry.prototype.toJSON.call(this);
@@ -22258,7 +22258,7 @@
 			return _toJSON(shapes, options, data);
 			return _toJSON(shapes, options, data);
 		};
 		};
 
 
-		return ExtrudeBufferGeometry;
+		return ExtrudeGeometry;
 	}(BufferGeometry);
 	}(BufferGeometry);
 
 
 	var WorldUVGenerator = {
 	var WorldUVGenerator = {
@@ -22309,10 +22309,10 @@
 		return data;
 		return data;
 	}
 	}
 
 
-	var IcosahedronBufferGeometry = /*#__PURE__*/function (_PolyhedronBufferGeom) {
-		_inheritsLoose(IcosahedronBufferGeometry, _PolyhedronBufferGeom);
+	var IcosahedronGeometry = /*#__PURE__*/function (_PolyhedronGeometry) {
+		_inheritsLoose(IcosahedronGeometry, _PolyhedronGeometry);
 
 
-		function IcosahedronBufferGeometry(radius, detail) {
+		function IcosahedronGeometry(radius, detail) {
 			var _this;
 			var _this;
 
 
 			if (radius === void 0) {
 			if (radius === void 0) {
@@ -22326,8 +22326,8 @@
 			var t = (1 + Math.sqrt(5)) / 2;
 			var t = (1 + Math.sqrt(5)) / 2;
 			var vertices = [-1, t, 0, 1, t, 0, -1, -t, 0, 1, -t, 0, 0, -1, t, 0, 1, t, 0, -1, -t, 0, 1, -t, t, 0, -1, t, 0, 1, -t, 0, -1, -t, 0, 1];
 			var vertices = [-1, t, 0, 1, t, 0, -1, -t, 0, 1, -t, 0, 0, -1, t, 0, 1, t, 0, -1, -t, 0, 1, -t, t, 0, -1, t, 0, 1, -t, 0, -1, -t, 0, 1];
 			var indices = [0, 11, 5, 0, 5, 1, 0, 1, 7, 0, 7, 10, 0, 10, 11, 1, 5, 9, 5, 11, 4, 11, 10, 2, 10, 7, 6, 7, 1, 8, 3, 9, 4, 3, 4, 2, 3, 2, 6, 3, 6, 8, 3, 8, 9, 4, 9, 5, 2, 4, 11, 6, 2, 10, 8, 6, 7, 9, 8, 1];
 			var indices = [0, 11, 5, 0, 5, 1, 0, 1, 7, 0, 7, 10, 0, 10, 11, 1, 5, 9, 5, 11, 4, 11, 10, 2, 10, 7, 6, 7, 1, 8, 3, 9, 4, 3, 4, 2, 3, 2, 6, 3, 6, 8, 3, 8, 9, 4, 9, 5, 2, 4, 11, 6, 2, 10, 8, 6, 7, 9, 8, 1];
-			_this = _PolyhedronBufferGeom.call(this, vertices, indices, radius, detail) || this;
-			_this.type = 'IcosahedronBufferGeometry';
+			_this = _PolyhedronGeometry.call(this, vertices, indices, radius, detail) || this;
+			_this.type = 'IcosahedronGeometry';
 			_this.parameters = {
 			_this.parameters = {
 				radius: radius,
 				radius: radius,
 				detail: detail
 				detail: detail
@@ -22335,13 +22335,13 @@
 			return _this;
 			return _this;
 		}
 		}
 
 
-		return IcosahedronBufferGeometry;
-	}(PolyhedronBufferGeometry);
+		return IcosahedronGeometry;
+	}(PolyhedronGeometry);
 
 
-	var LatheBufferGeometry = /*#__PURE__*/function (_BufferGeometry) {
-		_inheritsLoose(LatheBufferGeometry, _BufferGeometry);
+	var LatheGeometry = /*#__PURE__*/function (_BufferGeometry) {
+		_inheritsLoose(LatheGeometry, _BufferGeometry);
 
 
-		function LatheBufferGeometry(points, segments, phiStart, phiLength) {
+		function LatheGeometry(points, segments, phiStart, phiLength) {
 			var _this;
 			var _this;
 
 
 			if (segments === void 0) {
 			if (segments === void 0) {
@@ -22357,7 +22357,7 @@
 			}
 			}
 
 
 			_this = _BufferGeometry.call(this) || this;
 			_this = _BufferGeometry.call(this) || this;
-			_this.type = 'LatheBufferGeometry';
+			_this.type = 'LatheGeometry';
 			_this.parameters = {
 			_this.parameters = {
 				points: points,
 				points: points,
 				segments: segments,
 				segments: segments,
@@ -22449,13 +22449,13 @@
 			return _this;
 			return _this;
 		}
 		}
 
 
-		return LatheBufferGeometry;
+		return LatheGeometry;
 	}(BufferGeometry);
 	}(BufferGeometry);
 
 
-	var OctahedronBufferGeometry = /*#__PURE__*/function (_PolyhedronBufferGeom) {
-		_inheritsLoose(OctahedronBufferGeometry, _PolyhedronBufferGeom);
+	var OctahedronGeometry = /*#__PURE__*/function (_PolyhedronGeometry) {
+		_inheritsLoose(OctahedronGeometry, _PolyhedronGeometry);
 
 
-		function OctahedronBufferGeometry(radius, detail) {
+		function OctahedronGeometry(radius, detail) {
 			var _this;
 			var _this;
 
 
 			if (radius === void 0) {
 			if (radius === void 0) {
@@ -22468,8 +22468,8 @@
 
 
 			var vertices = [1, 0, 0, -1, 0, 0, 0, 1, 0, 0, -1, 0, 0, 0, 1, 0, 0, -1];
 			var vertices = [1, 0, 0, -1, 0, 0, 0, 1, 0, 0, -1, 0, 0, 0, 1, 0, 0, -1];
 			var indices = [0, 2, 4, 0, 4, 3, 0, 3, 5, 0, 5, 2, 1, 2, 5, 1, 5, 3, 1, 3, 4, 1, 4, 2];
 			var indices = [0, 2, 4, 0, 4, 3, 0, 3, 5, 0, 5, 2, 1, 2, 5, 1, 5, 3, 1, 3, 4, 1, 4, 2];
-			_this = _PolyhedronBufferGeom.call(this, vertices, indices, radius, detail) || this;
-			_this.type = 'OctahedronBufferGeometry';
+			_this = _PolyhedronGeometry.call(this, vertices, indices, radius, detail) || this;
+			_this.type = 'OctahedronGeometry';
 			_this.parameters = {
 			_this.parameters = {
 				radius: radius,
 				radius: radius,
 				detail: detail
 				detail: detail
@@ -22477,17 +22477,17 @@
 			return _this;
 			return _this;
 		}
 		}
 
 
-		return OctahedronBufferGeometry;
-	}(PolyhedronBufferGeometry);
+		return OctahedronGeometry;
+	}(PolyhedronGeometry);
 
 
 	/**
 	/**
 	 * Parametric Surfaces Geometry
 	 * Parametric Surfaces Geometry
 	 * based on the brilliant article by @prideout https://prideout.net/blog/old/blog/index.html@p=44.html
 	 * based on the brilliant article by @prideout https://prideout.net/blog/old/blog/index.html@p=44.html
 	 */
 	 */
 
 
-	function ParametricBufferGeometry(func, slices, stacks) {
+	function ParametricGeometry(func, slices, stacks) {
 		BufferGeometry.call(this);
 		BufferGeometry.call(this);
-		this.type = 'ParametricBufferGeometry';
+		this.type = 'ParametricGeometry';
 		this.parameters = {
 		this.parameters = {
 			func: func,
 			func: func,
 			slices: slices,
 			slices: slices,
@@ -22566,13 +22566,13 @@
 		this.setAttribute('uv', new Float32BufferAttribute(uvs, 2));
 		this.setAttribute('uv', new Float32BufferAttribute(uvs, 2));
 	}
 	}
 
 
-	ParametricBufferGeometry.prototype = Object.create(BufferGeometry.prototype);
-	ParametricBufferGeometry.prototype.constructor = ParametricBufferGeometry;
+	ParametricGeometry.prototype = Object.create(BufferGeometry.prototype);
+	ParametricGeometry.prototype.constructor = ParametricGeometry;
 
 
-	var RingBufferGeometry = /*#__PURE__*/function (_BufferGeometry) {
-		_inheritsLoose(RingBufferGeometry, _BufferGeometry);
+	var RingGeometry = /*#__PURE__*/function (_BufferGeometry) {
+		_inheritsLoose(RingGeometry, _BufferGeometry);
 
 
-		function RingBufferGeometry(innerRadius, outerRadius, thetaSegments, phiSegments, thetaStart, thetaLength) {
+		function RingGeometry(innerRadius, outerRadius, thetaSegments, phiSegments, thetaStart, thetaLength) {
 			var _this;
 			var _this;
 
 
 			if (innerRadius === void 0) {
 			if (innerRadius === void 0) {
@@ -22600,7 +22600,7 @@
 			}
 			}
 
 
 			_this = _BufferGeometry.call(this) || this;
 			_this = _BufferGeometry.call(this) || this;
-			_this.type = 'RingBufferGeometry';
+			_this.type = 'RingGeometry';
 			_this.parameters = {
 			_this.parameters = {
 				innerRadius: innerRadius,
 				innerRadius: innerRadius,
 				outerRadius: outerRadius,
 				outerRadius: outerRadius,
@@ -22671,13 +22671,13 @@
 			return _this;
 			return _this;
 		}
 		}
 
 
-		return RingBufferGeometry;
+		return RingGeometry;
 	}(BufferGeometry);
 	}(BufferGeometry);
 
 
-	var ShapeBufferGeometry = /*#__PURE__*/function (_BufferGeometry) {
-		_inheritsLoose(ShapeBufferGeometry, _BufferGeometry);
+	var ShapeGeometry = /*#__PURE__*/function (_BufferGeometry) {
+		_inheritsLoose(ShapeGeometry, _BufferGeometry);
 
 
-		function ShapeBufferGeometry(shapes, curveSegments) {
+		function ShapeGeometry(shapes, curveSegments) {
 			var _this;
 			var _this;
 
 
 			if (curveSegments === void 0) {
 			if (curveSegments === void 0) {
@@ -22685,7 +22685,7 @@
 			}
 			}
 
 
 			_this = _BufferGeometry.call(this) || this;
 			_this = _BufferGeometry.call(this) || this;
-			_this.type = 'ShapeBufferGeometry';
+			_this.type = 'ShapeGeometry';
 			_this.parameters = {
 			_this.parameters = {
 				shapes: shapes,
 				shapes: shapes,
 				curveSegments: curveSegments
 				curveSegments: curveSegments
@@ -22770,7 +22770,7 @@
 			return _this;
 			return _this;
 		}
 		}
 
 
-		var _proto = ShapeBufferGeometry.prototype;
+		var _proto = ShapeGeometry.prototype;
 
 
 		_proto.toJSON = function toJSON() {
 		_proto.toJSON = function toJSON() {
 			var data = BufferGeometry.prototype.toJSON.call(this);
 			var data = BufferGeometry.prototype.toJSON.call(this);
@@ -22778,7 +22778,7 @@
 			return _toJSON$1(shapes, data);
 			return _toJSON$1(shapes, data);
 		};
 		};
 
 
-		return ShapeBufferGeometry;
+		return ShapeGeometry;
 	}(BufferGeometry);
 	}(BufferGeometry);
 
 
 	function _toJSON$1(shapes, data) {
 	function _toJSON$1(shapes, data) {
@@ -22796,10 +22796,10 @@
 		return data;
 		return data;
 	}
 	}
 
 
-	var SphereBufferGeometry = /*#__PURE__*/function (_BufferGeometry) {
-		_inheritsLoose(SphereBufferGeometry, _BufferGeometry);
+	var SphereGeometry = /*#__PURE__*/function (_BufferGeometry) {
+		_inheritsLoose(SphereGeometry, _BufferGeometry);
 
 
-		function SphereBufferGeometry(radius, widthSegments, heightSegments, phiStart, phiLength, thetaStart, thetaLength) {
+		function SphereGeometry(radius, widthSegments, heightSegments, phiStart, phiLength, thetaStart, thetaLength) {
 			var _this;
 			var _this;
 
 
 			if (radius === void 0) {
 			if (radius === void 0) {
@@ -22831,7 +22831,7 @@
 			}
 			}
 
 
 			_this = _BufferGeometry.call(this) || this;
 			_this = _BufferGeometry.call(this) || this;
-			_this.type = 'SphereBufferGeometry';
+			_this.type = 'SphereGeometry';
 			_this.parameters = {
 			_this.parameters = {
 				radius: radius,
 				radius: radius,
 				widthSegments: widthSegments,
 				widthSegments: widthSegments,
@@ -22908,13 +22908,13 @@
 			return _this;
 			return _this;
 		}
 		}
 
 
-		return SphereBufferGeometry;
+		return SphereGeometry;
 	}(BufferGeometry);
 	}(BufferGeometry);
 
 
-	var TetrahedronBufferGeometry = /*#__PURE__*/function (_PolyhedronBufferGeom) {
-		_inheritsLoose(TetrahedronBufferGeometry, _PolyhedronBufferGeom);
+	var TetrahedronGeometry = /*#__PURE__*/function (_PolyhedronGeometry) {
+		_inheritsLoose(TetrahedronGeometry, _PolyhedronGeometry);
 
 
-		function TetrahedronBufferGeometry(radius, detail) {
+		function TetrahedronGeometry(radius, detail) {
 			var _this;
 			var _this;
 
 
 			if (radius === void 0) {
 			if (radius === void 0) {
@@ -22927,8 +22927,8 @@
 
 
 			var vertices = [1, 1, 1, -1, -1, 1, -1, 1, -1, 1, -1, -1];
 			var vertices = [1, 1, 1, -1, -1, 1, -1, 1, -1, 1, -1, -1];
 			var indices = [2, 1, 0, 0, 3, 2, 1, 3, 0, 2, 3, 1];
 			var indices = [2, 1, 0, 0, 3, 2, 1, 3, 0, 2, 3, 1];
-			_this = _PolyhedronBufferGeom.call(this, vertices, indices, radius, detail) || this;
-			_this.type = 'TetrahedronBufferGeometry';
+			_this = _PolyhedronGeometry.call(this, vertices, indices, radius, detail) || this;
+			_this.type = 'TetrahedronGeometry';
 			_this.parameters = {
 			_this.parameters = {
 				radius: radius,
 				radius: radius,
 				detail: detail
 				detail: detail
@@ -22936,13 +22936,13 @@
 			return _this;
 			return _this;
 		}
 		}
 
 
-		return TetrahedronBufferGeometry;
-	}(PolyhedronBufferGeometry);
+		return TetrahedronGeometry;
+	}(PolyhedronGeometry);
 
 
-	var TextBufferGeometry = /*#__PURE__*/function (_ExtrudeBufferGeometr) {
-		_inheritsLoose(TextBufferGeometry, _ExtrudeBufferGeometr);
+	var TextGeometry = /*#__PURE__*/function (_ExtrudeGeometry) {
+		_inheritsLoose(TextGeometry, _ExtrudeGeometry);
 
 
-		function TextBufferGeometry(text, parameters) {
+		function TextGeometry(text, parameters) {
 			var _this;
 			var _this;
 
 
 			if (parameters === void 0) {
 			if (parameters === void 0) {
@@ -22963,18 +22963,18 @@
 			if (parameters.bevelThickness === undefined) parameters.bevelThickness = 10;
 			if (parameters.bevelThickness === undefined) parameters.bevelThickness = 10;
 			if (parameters.bevelSize === undefined) parameters.bevelSize = 8;
 			if (parameters.bevelSize === undefined) parameters.bevelSize = 8;
 			if (parameters.bevelEnabled === undefined) parameters.bevelEnabled = false;
 			if (parameters.bevelEnabled === undefined) parameters.bevelEnabled = false;
-			_this = _ExtrudeBufferGeometr.call(this, shapes, parameters) || this;
-			_this.type = 'TextBufferGeometry';
+			_this = _ExtrudeGeometry.call(this, shapes, parameters) || this;
+			_this.type = 'TextGeometry';
 			return _this;
 			return _this;
 		}
 		}
 
 
-		return TextBufferGeometry;
-	}(ExtrudeBufferGeometry);
+		return TextGeometry;
+	}(ExtrudeGeometry);
 
 
-	var TorusBufferGeometry = /*#__PURE__*/function (_BufferGeometry) {
-		_inheritsLoose(TorusBufferGeometry, _BufferGeometry);
+	var TorusGeometry = /*#__PURE__*/function (_BufferGeometry) {
+		_inheritsLoose(TorusGeometry, _BufferGeometry);
 
 
-		function TorusBufferGeometry(radius, tube, radialSegments, tubularSegments, arc) {
+		function TorusGeometry(radius, tube, radialSegments, tubularSegments, arc) {
 			var _this;
 			var _this;
 
 
 			if (radius === void 0) {
 			if (radius === void 0) {
@@ -22998,7 +22998,7 @@
 			}
 			}
 
 
 			_this = _BufferGeometry.call(this) || this;
 			_this = _BufferGeometry.call(this) || this;
-			_this.type = 'TorusBufferGeometry';
+			_this.type = 'TorusGeometry';
 			_this.parameters = {
 			_this.parameters = {
 				radius: radius,
 				radius: radius,
 				tube: tube,
 				tube: tube,
@@ -23064,13 +23064,13 @@
 			return _this;
 			return _this;
 		}
 		}
 
 
-		return TorusBufferGeometry;
+		return TorusGeometry;
 	}(BufferGeometry);
 	}(BufferGeometry);
 
 
-	var TorusKnotBufferGeometry = /*#__PURE__*/function (_BufferGeometry) {
-		_inheritsLoose(TorusKnotBufferGeometry, _BufferGeometry);
+	var TorusKnotGeometry = /*#__PURE__*/function (_BufferGeometry) {
+		_inheritsLoose(TorusKnotGeometry, _BufferGeometry);
 
 
-		function TorusKnotBufferGeometry(radius, tube, tubularSegments, radialSegments, p, q) {
+		function TorusKnotGeometry(radius, tube, tubularSegments, radialSegments, p, q) {
 			var _this;
 			var _this;
 
 
 			if (radius === void 0) {
 			if (radius === void 0) {
@@ -23098,7 +23098,7 @@
 			}
 			}
 
 
 			_this = _BufferGeometry.call(this) || this;
 			_this = _BufferGeometry.call(this) || this;
-			_this.type = 'TorusKnotBufferGeometry';
+			_this.type = 'TorusKnotGeometry';
 			_this.parameters = {
 			_this.parameters = {
 				radius: radius,
 				radius: radius,
 				tube: tube,
 				tube: tube,
@@ -23197,13 +23197,13 @@
 			return _this;
 			return _this;
 		}
 		}
 
 
-		return TorusKnotBufferGeometry;
+		return TorusKnotGeometry;
 	}(BufferGeometry);
 	}(BufferGeometry);
 
 
-	var TubeBufferGeometry = /*#__PURE__*/function (_BufferGeometry) {
-		_inheritsLoose(TubeBufferGeometry, _BufferGeometry);
+	var TubeGeometry = /*#__PURE__*/function (_BufferGeometry) {
+		_inheritsLoose(TubeGeometry, _BufferGeometry);
 
 
-		function TubeBufferGeometry(path, tubularSegments, radius, radialSegments, closed) {
+		function TubeGeometry(path, tubularSegments, radius, radialSegments, closed) {
 			var _this;
 			var _this;
 
 
 			if (tubularSegments === void 0) {
 			if (tubularSegments === void 0) {
@@ -23223,7 +23223,7 @@
 			}
 			}
 
 
 			_this = _BufferGeometry.call(this) || this;
 			_this = _BufferGeometry.call(this) || this;
-			_this.type = 'TubeBufferGeometry';
+			_this.type = 'TubeGeometry';
 			_this.parameters = {
 			_this.parameters = {
 				path: path,
 				path: path,
 				tubularSegments: tubularSegments,
 				tubularSegments: tubularSegments,
@@ -23327,7 +23327,7 @@
 			return _this;
 			return _this;
 		}
 		}
 
 
-		var _proto = TubeBufferGeometry.prototype;
+		var _proto = TubeGeometry.prototype;
 
 
 		_proto.toJSON = function toJSON() {
 		_proto.toJSON = function toJSON() {
 			var data = BufferGeometry.prototype.toJSON.call(this);
 			var data = BufferGeometry.prototype.toJSON.call(this);
@@ -23335,7 +23335,7 @@
 			return data;
 			return data;
 		};
 		};
 
 
-		return TubeBufferGeometry;
+		return TubeGeometry;
 	}(BufferGeometry);
 	}(BufferGeometry);
 
 
 	var WireframeGeometry = /*#__PURE__*/function (_BufferGeometry) {
 	var WireframeGeometry = /*#__PURE__*/function (_BufferGeometry) {
@@ -23435,27 +23435,47 @@
 
 
 	var Geometries = /*#__PURE__*/Object.freeze({
 	var Geometries = /*#__PURE__*/Object.freeze({
 		__proto__: null,
 		__proto__: null,
-		BoxBufferGeometry: BoxBufferGeometry,
-		CircleBufferGeometry: CircleBufferGeometry,
-		ConeBufferGeometry: ConeBufferGeometry,
-		CylinderBufferGeometry: CylinderBufferGeometry,
-		DodecahedronBufferGeometry: DodecahedronBufferGeometry,
+		BoxGeometry: BoxGeometry,
+		BoxBufferGeometry: BoxGeometry,
+		CircleGeometry: CircleGeometry,
+		CircleBufferGeometry: CircleGeometry,
+		ConeGeometry: ConeGeometry,
+		ConeBufferGeometry: ConeGeometry,
+		CylinderGeometry: CylinderGeometry,
+		CylinderBufferGeometry: CylinderGeometry,
+		DodecahedronGeometry: DodecahedronGeometry,
+		DodecahedronBufferGeometry: DodecahedronGeometry,
 		EdgesGeometry: EdgesGeometry,
 		EdgesGeometry: EdgesGeometry,
-		ExtrudeBufferGeometry: ExtrudeBufferGeometry,
-		IcosahedronBufferGeometry: IcosahedronBufferGeometry,
-		LatheBufferGeometry: LatheBufferGeometry,
-		OctahedronBufferGeometry: OctahedronBufferGeometry,
-		ParametricBufferGeometry: ParametricBufferGeometry,
-		PlaneBufferGeometry: PlaneBufferGeometry,
-		PolyhedronBufferGeometry: PolyhedronBufferGeometry,
-		RingBufferGeometry: RingBufferGeometry,
-		ShapeBufferGeometry: ShapeBufferGeometry,
-		SphereBufferGeometry: SphereBufferGeometry,
-		TetrahedronBufferGeometry: TetrahedronBufferGeometry,
-		TextBufferGeometry: TextBufferGeometry,
-		TorusBufferGeometry: TorusBufferGeometry,
-		TorusKnotBufferGeometry: TorusKnotBufferGeometry,
-		TubeBufferGeometry: TubeBufferGeometry,
+		ExtrudeGeometry: ExtrudeGeometry,
+		ExtrudeBufferGeometry: ExtrudeGeometry,
+		IcosahedronGeometry: IcosahedronGeometry,
+		IcosahedronBufferGeometry: IcosahedronGeometry,
+		LatheGeometry: LatheGeometry,
+		LatheBufferGeometry: LatheGeometry,
+		OctahedronGeometry: OctahedronGeometry,
+		OctahedronBufferGeometry: OctahedronGeometry,
+		ParametricGeometry: ParametricGeometry,
+		ParametricBufferGeometry: ParametricGeometry,
+		PlaneGeometry: PlaneGeometry,
+		PlaneBufferGeometry: PlaneGeometry,
+		PolyhedronGeometry: PolyhedronGeometry,
+		PolyhedronBufferGeometry: PolyhedronGeometry,
+		RingGeometry: RingGeometry,
+		RingBufferGeometry: RingGeometry,
+		ShapeGeometry: ShapeGeometry,
+		ShapeBufferGeometry: ShapeGeometry,
+		SphereGeometry: SphereGeometry,
+		SphereBufferGeometry: SphereGeometry,
+		TetrahedronGeometry: TetrahedronGeometry,
+		TetrahedronBufferGeometry: TetrahedronGeometry,
+		TextGeometry: TextGeometry,
+		TextBufferGeometry: TextGeometry,
+		TorusGeometry: TorusGeometry,
+		TorusBufferGeometry: TorusGeometry,
+		TorusKnotGeometry: TorusKnotGeometry,
+		TorusKnotBufferGeometry: TorusKnotGeometry,
+		TubeGeometry: TubeGeometry,
+		TubeBufferGeometry: TubeGeometry,
 		WireframeGeometry: WireframeGeometry
 		WireframeGeometry: WireframeGeometry
 	});
 	});
 
 
@@ -28922,8 +28942,6 @@
 
 
 						case 'BoxGeometry':
 						case 'BoxGeometry':
 						case 'BoxBufferGeometry':
 						case 'BoxBufferGeometry':
-						case 'CubeGeometry':
-							// backwards compatible
 							geometry = new Geometries[data.type](data.width, data.height, data.depth, data.widthSegments, data.heightSegments, data.depthSegments);
 							geometry = new Geometries[data.type](data.width, data.height, data.depth, data.widthSegments, data.heightSegments, data.depthSegments);
 							break;
 							break;
 
 
@@ -34271,7 +34289,7 @@
 		function PointLightHelper(light, sphereSize, color) {
 		function PointLightHelper(light, sphereSize, color) {
 			var _this;
 			var _this;
 
 
-			var geometry = new SphereBufferGeometry(sphereSize, 4, 2);
+			var geometry = new SphereGeometry(sphereSize, 4, 2);
 			var material = new MeshBasicMaterial({
 			var material = new MeshBasicMaterial({
 				wireframe: true,
 				wireframe: true,
 				fog: false,
 				fog: false,
@@ -34355,7 +34373,7 @@
 			_this.matrix = light.matrixWorld;
 			_this.matrix = light.matrixWorld;
 			_this.matrixAutoUpdate = false;
 			_this.matrixAutoUpdate = false;
 			_this.color = color;
 			_this.color = color;
-			var geometry = new OctahedronBufferGeometry(size);
+			var geometry = new OctahedronGeometry(size);
 			geometry.rotateY(Math.PI * 0.5);
 			geometry.rotateY(Math.PI * 0.5);
 			_this.material = new MeshBasicMaterial({
 			_this.material = new MeshBasicMaterial({
 				wireframe: true,
 				wireframe: true,
@@ -35010,7 +35028,7 @@
 
 
 				_lineGeometry.setAttribute('position', new Float32BufferAttribute([0, 0, 0, 0, 1, 0], 3));
 				_lineGeometry.setAttribute('position', new Float32BufferAttribute([0, 0, 0, 0, 1, 0], 3));
 
 
-				_coneGeometry = new CylinderBufferGeometry(0, 0.5, 1, 5, 1);
+				_coneGeometry = new CylinderGeometry(0, 0.5, 1, 5, 1);
 
 
 				_coneGeometry.translate(0, -0.5, 0);
 				_coneGeometry.translate(0, -0.5, 0);
 			}
 			}
@@ -36248,12 +36266,12 @@
 			return this.extractPoints(divisions);
 			return this.extractPoints(divisions);
 		},
 		},
 		extrude: function extrude(options) {
 		extrude: function extrude(options) {
-			console.warn('THREE.Shape: .extrude() has been removed. Use ExtrudeBufferGeometry() instead.');
-			return new ExtrudeBufferGeometry(this, options);
+			console.warn('THREE.Shape: .extrude() has been removed. Use ExtrudeGeometry() instead.');
+			return new ExtrudeGeometry(this, options);
 		},
 		},
 		makeGeometry: function makeGeometry(options) {
 		makeGeometry: function makeGeometry(options) {
-			console.warn('THREE.Shape: .makeGeometry() has been removed. Use ShapeBufferGeometry() instead.');
-			return new ShapeBufferGeometry(this, options);
+			console.warn('THREE.Shape: .makeGeometry() has been removed. Use ShapeGeometry() instead.');
+			return new ShapeGeometry(this, options);
 		}
 		}
 	});
 	});
 	Object.assign(Vector2.prototype, {
 	Object.assign(Vector2.prototype, {
@@ -36328,87 +36346,7 @@
 			console.warn('THREE.Geometry: .applyMatrix() has been renamed to .applyMatrix4().');
 			console.warn('THREE.Geometry: .applyMatrix() has been renamed to .applyMatrix4().');
 			return this.applyMatrix4(matrix);
 			return this.applyMatrix4(matrix);
 		}
 		}
-	});
-	function BoxGeometry(width, height, depth, widthSegments, heightSegments, depthSegments) {
-		console.warn('THREE.BoxGeometry has been removed. Use THREE.BoxBufferGeometry instead.');
-		return new BoxBufferGeometry(width, height, depth, widthSegments, heightSegments, depthSegments);
-	}
-	function CircleGeometry(radius, segments, thetaStart, thetaLength) {
-		console.warn('THREE.CircleGeometry has been removed. Use THREE.CircleBufferGeometry instead.');
-		return new CircleBufferGeometry(radius, segments, thetaStart, thetaLength);
-	}
-	function ConeGeometry(radius, height, radialSegments, heightSegments, openEnded, thetaStart, thetaLength) {
-		console.warn('THREE.CircleGeometry has been removed. Use THREE.ConeBufferGeometry instead.');
-		return new ConeBufferGeometry(radius, height, radialSegments, heightSegments, openEnded, thetaStart, thetaLength);
-	}
-	function CylinderGeometry(radiusTop, radiusBottom, height, radialSegments, heightSegments, openEnded, thetaStart, thetaLength) {
-		console.warn('THREE.CylinderGeometry has been removed. Use THREE.CylinderBufferGeometry instead.');
-		return new CylinderBufferGeometry(radiusTop, radiusBottom, height, radialSegments, heightSegments, openEnded, thetaStart, thetaLength);
-	}
-	function DodecahedronGeometry(radius, detail) {
-		console.warn('THREE.DodecahedronGeometry has been removed. Use THREE.DodecahedronBufferGeometry instead.');
-		return new DodecahedronBufferGeometry(radius, detail);
-	}
-	function ExtrudeGeometry(shapes, options) {
-		console.warn('THREE.ExtrudeGeometry has been removed. Use THREE.ExtrudeBufferGeometry instead.');
-		return new ExtrudeBufferGeometry(shapes, options);
-	}
-	function IcosahedronGeometry(radius, detail) {
-		console.warn('THREE.IcosahedronGeometry has been removed. Use THREE.IcosahedronBufferGeometry instead.');
-		return new IcosahedronBufferGeometry(radius, detail);
-	}
-	function LatheGeometry(points, segments, phiStart, phiLength) {
-		console.warn('THREE.LatheGeometry has been removed. Use THREE.LatheBufferGeometry instead.');
-		return new LatheBufferGeometry(points, segments, phiStart, phiLength);
-	}
-	function OctahedronGeometry(radius, detail) {
-		console.warn('THREE.OctahedronGeometry has been removed. Use THREE.OctahedronBufferGeometry instead.');
-		return new OctahedronBufferGeometry(radius, detail);
-	}
-	function ParametricGeometry(func, slices, stacks) {
-		console.warn('THREE.ParametricGeometry has been removed. Use THREE.ParametricBufferGeometry instead.');
-		return new ParametricBufferGeometry(func, slices, stacks);
-	}
-	function PlaneGeometry(width, height, widthSegments, heightSegments) {
-		console.warn('THREE.PlaneGeometry has been removed. Use THREE.PlaneBufferGeometry instead.');
-		return new PlaneBufferGeometry(width, height, widthSegments, heightSegments);
-	}
-	function PolyhedronGeometry(vertices, indices, radius, detail) {
-		console.warn('THREE.PolyhedronGeometry has been removed. Use THREE.PolyhedronBufferGeometry instead.');
-		return new PolyhedronBufferGeometry(vertices, indices, radius, detail);
-	}
-	function RingGeometry(innerRadius, outerRadius, thetaSegments, phiSegments, thetaStart, thetaLength) {
-		console.warn('THREE.RingGeometry has been removed. Use THREE.RingBufferGeometry instead.');
-		return new RingBufferGeometry(innerRadius, outerRadius, thetaSegments, phiSegments, thetaStart, thetaLength);
-	}
-	function ShapeGeometry(shapes, curveSegments) {
-		console.warn('THREE.ShapeGeometry has been removed. Use THREE.ShapeBufferGeometry instead.');
-		return new ShapeBufferGeometry(shapes, curveSegments);
-	}
-	function SphereGeometry(radius, widthSegments, heightSegments, phiStart, phiLength, thetaStart, thetaLength) {
-		console.warn('THREE.SphereGeometry has been removed. Use THREE.SphereBufferGeometry instead.');
-		return new SphereBufferGeometry(radius, widthSegments, heightSegments, phiStart, phiLength, thetaStart, thetaLength);
-	}
-	function TetrahedronGeometry(radius, detail) {
-		console.warn('THREE.TetrahedronGeometry has been removed. Use THREE.TetrahedronBufferGeometry instead.');
-		return new TetrahedronBufferGeometry(radius, detail);
-	}
-	function TextGeometry(text, parameters) {
-		console.warn('THREE.TextGeometry has been removed. Use THREE.TextBufferGeometry instead.');
-		return new TextBufferGeometry(text, parameters);
-	}
-	function TorusGeometry(radius, tube, radialSegments, tubularSegments, arc) {
-		console.warn('THREE.TorusGeometry has been removed. Use THREE.TorusBufferGeometry instead.');
-		return new TorusBufferGeometry(radius, tube, radialSegments, tubularSegments, arc);
-	}
-	function TorusKnotGeometry(radius, tube, tubularSegments, radialSegments, p, q, heightScale) {
-		console.warn('THREE.TorusKnotGeometry has been removed. Use THREE.TorusKnotBufferGeometry instead.');
-		return new TorusKnotBufferGeometry(radius, tube, tubularSegments, radialSegments, p, q, heightScale);
-	}
-	function TubeGeometry(path, tubularSegments, radius, radialSegments, closed, taper) {
-		console.warn('THREE.TubeGeometry has been removed. Use THREE.TubeBufferGeometry instead.');
-		return new TubeBufferGeometry(path, tubularSegments, radius, radialSegments, closed, taper);
-	} //
+	}); //
 
 
 	Object.assign(Object3D.prototype, {
 	Object.assign(Object3D.prototype, {
 		getChildByName: function getChildByName(name) {
 		getChildByName: function getChildByName(name) {
@@ -36731,15 +36669,15 @@
 		}
 		}
 	}); //
 	}); //
 
 
-	Object.assign(ExtrudeBufferGeometry.prototype, {
+	Object.assign(ExtrudeGeometry.prototype, {
 		getArrays: function getArrays() {
 		getArrays: function getArrays() {
-			console.error('THREE.ExtrudeBufferGeometry: .getArrays() has been removed.');
+			console.error('THREE.ExtrudeGeometry: .getArrays() has been removed.');
 		},
 		},
 		addShapeList: function addShapeList() {
 		addShapeList: function addShapeList() {
-			console.error('THREE.ExtrudeBufferGeometry: .addShapeList() has been removed.');
+			console.error('THREE.ExtrudeGeometry: .addShapeList() has been removed.');
 		},
 		},
 		addShape: function addShape() {
 		addShape: function addShape() {
-			console.error('THREE.ExtrudeBufferGeometry: .addShape() has been removed.');
+			console.error('THREE.ExtrudeGeometry: .addShape() has been removed.');
 		}
 		}
 	}); //
 	}); //
 
 
@@ -37305,7 +37243,7 @@
 	exports.Box2 = Box2;
 	exports.Box2 = Box2;
 	exports.Box3 = Box3;
 	exports.Box3 = Box3;
 	exports.Box3Helper = Box3Helper;
 	exports.Box3Helper = Box3Helper;
-	exports.BoxBufferGeometry = BoxBufferGeometry;
+	exports.BoxBufferGeometry = BoxGeometry;
 	exports.BoxGeometry = BoxGeometry;
 	exports.BoxGeometry = BoxGeometry;
 	exports.BoxHelper = BoxHelper;
 	exports.BoxHelper = BoxHelper;
 	exports.BufferAttribute = BufferAttribute;
 	exports.BufferAttribute = BufferAttribute;
@@ -37319,7 +37257,7 @@
 	exports.CanvasTexture = CanvasTexture;
 	exports.CanvasTexture = CanvasTexture;
 	exports.CatmullRomCurve3 = CatmullRomCurve3;
 	exports.CatmullRomCurve3 = CatmullRomCurve3;
 	exports.CineonToneMapping = CineonToneMapping;
 	exports.CineonToneMapping = CineonToneMapping;
-	exports.CircleBufferGeometry = CircleBufferGeometry;
+	exports.CircleBufferGeometry = CircleGeometry;
 	exports.CircleGeometry = CircleGeometry;
 	exports.CircleGeometry = CircleGeometry;
 	exports.ClampToEdgeWrapping = ClampToEdgeWrapping;
 	exports.ClampToEdgeWrapping = ClampToEdgeWrapping;
 	exports.Clock = Clock;
 	exports.Clock = Clock;
@@ -37328,7 +37266,7 @@
 	exports.ColorKeyframeTrack = ColorKeyframeTrack;
 	exports.ColorKeyframeTrack = ColorKeyframeTrack;
 	exports.CompressedTexture = CompressedTexture;
 	exports.CompressedTexture = CompressedTexture;
 	exports.CompressedTextureLoader = CompressedTextureLoader;
 	exports.CompressedTextureLoader = CompressedTextureLoader;
-	exports.ConeBufferGeometry = ConeBufferGeometry;
+	exports.ConeBufferGeometry = ConeGeometry;
 	exports.ConeGeometry = ConeGeometry;
 	exports.ConeGeometry = ConeGeometry;
 	exports.CubeCamera = CubeCamera;
 	exports.CubeCamera = CubeCamera;
 	exports.CubeReflectionMapping = CubeReflectionMapping;
 	exports.CubeReflectionMapping = CubeReflectionMapping;
@@ -37348,7 +37286,7 @@
 	exports.CurvePath = CurvePath;
 	exports.CurvePath = CurvePath;
 	exports.CustomBlending = CustomBlending;
 	exports.CustomBlending = CustomBlending;
 	exports.CustomToneMapping = CustomToneMapping;
 	exports.CustomToneMapping = CustomToneMapping;
-	exports.CylinderBufferGeometry = CylinderBufferGeometry;
+	exports.CylinderBufferGeometry = CylinderGeometry;
 	exports.CylinderGeometry = CylinderGeometry;
 	exports.CylinderGeometry = CylinderGeometry;
 	exports.Cylindrical = Cylindrical;
 	exports.Cylindrical = Cylindrical;
 	exports.DataTexture = DataTexture;
 	exports.DataTexture = DataTexture;
@@ -37365,7 +37303,7 @@
 	exports.DirectionalLight = DirectionalLight;
 	exports.DirectionalLight = DirectionalLight;
 	exports.DirectionalLightHelper = DirectionalLightHelper;
 	exports.DirectionalLightHelper = DirectionalLightHelper;
 	exports.DiscreteInterpolant = DiscreteInterpolant;
 	exports.DiscreteInterpolant = DiscreteInterpolant;
-	exports.DodecahedronBufferGeometry = DodecahedronBufferGeometry;
+	exports.DodecahedronBufferGeometry = DodecahedronGeometry;
 	exports.DodecahedronGeometry = DodecahedronGeometry;
 	exports.DodecahedronGeometry = DodecahedronGeometry;
 	exports.DoubleSide = DoubleSide;
 	exports.DoubleSide = DoubleSide;
 	exports.DstAlphaFactor = DstAlphaFactor;
 	exports.DstAlphaFactor = DstAlphaFactor;
@@ -37383,7 +37321,7 @@
 	exports.EquirectangularRefractionMapping = EquirectangularRefractionMapping;
 	exports.EquirectangularRefractionMapping = EquirectangularRefractionMapping;
 	exports.Euler = Euler;
 	exports.Euler = Euler;
 	exports.EventDispatcher = EventDispatcher;
 	exports.EventDispatcher = EventDispatcher;
-	exports.ExtrudeBufferGeometry = ExtrudeBufferGeometry;
+	exports.ExtrudeBufferGeometry = ExtrudeGeometry;
 	exports.ExtrudeGeometry = ExtrudeGeometry;
 	exports.ExtrudeGeometry = ExtrudeGeometry;
 	exports.Face3 = Face3;
 	exports.Face3 = Face3;
 	exports.Face4 = Face4;
 	exports.Face4 = Face4;
@@ -37418,7 +37356,7 @@
 	exports.HemisphereLight = HemisphereLight;
 	exports.HemisphereLight = HemisphereLight;
 	exports.HemisphereLightHelper = HemisphereLightHelper;
 	exports.HemisphereLightHelper = HemisphereLightHelper;
 	exports.HemisphereLightProbe = HemisphereLightProbe;
 	exports.HemisphereLightProbe = HemisphereLightProbe;
-	exports.IcosahedronBufferGeometry = IcosahedronBufferGeometry;
+	exports.IcosahedronBufferGeometry = IcosahedronGeometry;
 	exports.IcosahedronGeometry = IcosahedronGeometry;
 	exports.IcosahedronGeometry = IcosahedronGeometry;
 	exports.ImageBitmapLoader = ImageBitmapLoader;
 	exports.ImageBitmapLoader = ImageBitmapLoader;
 	exports.ImageLoader = ImageLoader;
 	exports.ImageLoader = ImageLoader;
@@ -37448,7 +37386,7 @@
 	exports.KeepStencilOp = KeepStencilOp;
 	exports.KeepStencilOp = KeepStencilOp;
 	exports.KeyframeTrack = KeyframeTrack;
 	exports.KeyframeTrack = KeyframeTrack;
 	exports.LOD = LOD;
 	exports.LOD = LOD;
-	exports.LatheBufferGeometry = LatheBufferGeometry;
+	exports.LatheBufferGeometry = LatheGeometry;
 	exports.LatheGeometry = LatheGeometry;
 	exports.LatheGeometry = LatheGeometry;
 	exports.Layers = Layers;
 	exports.Layers = Layers;
 	exports.LensFlare = LensFlare;
 	exports.LensFlare = LensFlare;
@@ -37529,7 +37467,7 @@
 	exports.Object3D = Object3D;
 	exports.Object3D = Object3D;
 	exports.ObjectLoader = ObjectLoader;
 	exports.ObjectLoader = ObjectLoader;
 	exports.ObjectSpaceNormalMap = ObjectSpaceNormalMap;
 	exports.ObjectSpaceNormalMap = ObjectSpaceNormalMap;
-	exports.OctahedronBufferGeometry = OctahedronBufferGeometry;
+	exports.OctahedronBufferGeometry = OctahedronGeometry;
 	exports.OctahedronGeometry = OctahedronGeometry;
 	exports.OctahedronGeometry = OctahedronGeometry;
 	exports.OneFactor = OneFactor;
 	exports.OneFactor = OneFactor;
 	exports.OneMinusDstAlphaFactor = OneMinusDstAlphaFactor;
 	exports.OneMinusDstAlphaFactor = OneMinusDstAlphaFactor;
@@ -37540,7 +37478,7 @@
 	exports.PCFShadowMap = PCFShadowMap;
 	exports.PCFShadowMap = PCFShadowMap;
 	exports.PCFSoftShadowMap = PCFSoftShadowMap;
 	exports.PCFSoftShadowMap = PCFSoftShadowMap;
 	exports.PMREMGenerator = PMREMGenerator;
 	exports.PMREMGenerator = PMREMGenerator;
-	exports.ParametricBufferGeometry = ParametricBufferGeometry;
+	exports.ParametricBufferGeometry = ParametricGeometry;
 	exports.ParametricGeometry = ParametricGeometry;
 	exports.ParametricGeometry = ParametricGeometry;
 	exports.Particle = Particle;
 	exports.Particle = Particle;
 	exports.ParticleBasicMaterial = ParticleBasicMaterial;
 	exports.ParticleBasicMaterial = ParticleBasicMaterial;
@@ -37549,7 +37487,7 @@
 	exports.Path = Path;
 	exports.Path = Path;
 	exports.PerspectiveCamera = PerspectiveCamera;
 	exports.PerspectiveCamera = PerspectiveCamera;
 	exports.Plane = Plane;
 	exports.Plane = Plane;
-	exports.PlaneBufferGeometry = PlaneBufferGeometry;
+	exports.PlaneBufferGeometry = PlaneGeometry;
 	exports.PlaneGeometry = PlaneGeometry;
 	exports.PlaneGeometry = PlaneGeometry;
 	exports.PlaneHelper = PlaneHelper;
 	exports.PlaneHelper = PlaneHelper;
 	exports.PointCloud = PointCloud;
 	exports.PointCloud = PointCloud;
@@ -37559,7 +37497,7 @@
 	exports.Points = Points;
 	exports.Points = Points;
 	exports.PointsMaterial = PointsMaterial;
 	exports.PointsMaterial = PointsMaterial;
 	exports.PolarGridHelper = PolarGridHelper;
 	exports.PolarGridHelper = PolarGridHelper;
-	exports.PolyhedronBufferGeometry = PolyhedronBufferGeometry;
+	exports.PolyhedronBufferGeometry = PolyhedronGeometry;
 	exports.PolyhedronGeometry = PolyhedronGeometry;
 	exports.PolyhedronGeometry = PolyhedronGeometry;
 	exports.PositionalAudio = PositionalAudio;
 	exports.PositionalAudio = PositionalAudio;
 	exports.PropertyBinding = PropertyBinding;
 	exports.PropertyBinding = PropertyBinding;
@@ -37618,7 +37556,7 @@
 	exports.RepeatWrapping = RepeatWrapping;
 	exports.RepeatWrapping = RepeatWrapping;
 	exports.ReplaceStencilOp = ReplaceStencilOp;
 	exports.ReplaceStencilOp = ReplaceStencilOp;
 	exports.ReverseSubtractEquation = ReverseSubtractEquation;
 	exports.ReverseSubtractEquation = ReverseSubtractEquation;
-	exports.RingBufferGeometry = RingBufferGeometry;
+	exports.RingBufferGeometry = RingGeometry;
 	exports.RingGeometry = RingGeometry;
 	exports.RingGeometry = RingGeometry;
 	exports.SRGB8_ALPHA8_ASTC_10x10_Format = SRGB8_ALPHA8_ASTC_10x10_Format;
 	exports.SRGB8_ALPHA8_ASTC_10x10_Format = SRGB8_ALPHA8_ASTC_10x10_Format;
 	exports.SRGB8_ALPHA8_ASTC_10x5_Format = SRGB8_ALPHA8_ASTC_10x5_Format;
 	exports.SRGB8_ALPHA8_ASTC_10x5_Format = SRGB8_ALPHA8_ASTC_10x5_Format;
@@ -37641,7 +37579,7 @@
 	exports.ShaderMaterial = ShaderMaterial;
 	exports.ShaderMaterial = ShaderMaterial;
 	exports.ShadowMaterial = ShadowMaterial;
 	exports.ShadowMaterial = ShadowMaterial;
 	exports.Shape = Shape;
 	exports.Shape = Shape;
-	exports.ShapeBufferGeometry = ShapeBufferGeometry;
+	exports.ShapeBufferGeometry = ShapeGeometry;
 	exports.ShapeGeometry = ShapeGeometry;
 	exports.ShapeGeometry = ShapeGeometry;
 	exports.ShapePath = ShapePath;
 	exports.ShapePath = ShapePath;
 	exports.ShapeUtils = ShapeUtils;
 	exports.ShapeUtils = ShapeUtils;
@@ -37651,7 +37589,7 @@
 	exports.SkinnedMesh = SkinnedMesh;
 	exports.SkinnedMesh = SkinnedMesh;
 	exports.SmoothShading = SmoothShading;
 	exports.SmoothShading = SmoothShading;
 	exports.Sphere = Sphere;
 	exports.Sphere = Sphere;
-	exports.SphereBufferGeometry = SphereBufferGeometry;
+	exports.SphereBufferGeometry = SphereGeometry;
 	exports.SphereGeometry = SphereGeometry;
 	exports.SphereGeometry = SphereGeometry;
 	exports.Spherical = Spherical;
 	exports.Spherical = Spherical;
 	exports.SphericalHarmonics3 = SphericalHarmonics3;
 	exports.SphericalHarmonics3 = SphericalHarmonics3;
@@ -37677,21 +37615,21 @@
 	exports.SubtractiveBlending = SubtractiveBlending;
 	exports.SubtractiveBlending = SubtractiveBlending;
 	exports.TOUCH = TOUCH;
 	exports.TOUCH = TOUCH;
 	exports.TangentSpaceNormalMap = TangentSpaceNormalMap;
 	exports.TangentSpaceNormalMap = TangentSpaceNormalMap;
-	exports.TetrahedronBufferGeometry = TetrahedronBufferGeometry;
+	exports.TetrahedronBufferGeometry = TetrahedronGeometry;
 	exports.TetrahedronGeometry = TetrahedronGeometry;
 	exports.TetrahedronGeometry = TetrahedronGeometry;
-	exports.TextBufferGeometry = TextBufferGeometry;
+	exports.TextBufferGeometry = TextGeometry;
 	exports.TextGeometry = TextGeometry;
 	exports.TextGeometry = TextGeometry;
 	exports.Texture = Texture;
 	exports.Texture = Texture;
 	exports.TextureLoader = TextureLoader;
 	exports.TextureLoader = TextureLoader;
-	exports.TorusBufferGeometry = TorusBufferGeometry;
+	exports.TorusBufferGeometry = TorusGeometry;
 	exports.TorusGeometry = TorusGeometry;
 	exports.TorusGeometry = TorusGeometry;
-	exports.TorusKnotBufferGeometry = TorusKnotBufferGeometry;
+	exports.TorusKnotBufferGeometry = TorusKnotGeometry;
 	exports.TorusKnotGeometry = TorusKnotGeometry;
 	exports.TorusKnotGeometry = TorusKnotGeometry;
 	exports.Triangle = Triangle;
 	exports.Triangle = Triangle;
 	exports.TriangleFanDrawMode = TriangleFanDrawMode;
 	exports.TriangleFanDrawMode = TriangleFanDrawMode;
 	exports.TriangleStripDrawMode = TriangleStripDrawMode;
 	exports.TriangleStripDrawMode = TriangleStripDrawMode;
 	exports.TrianglesDrawMode = TrianglesDrawMode;
 	exports.TrianglesDrawMode = TrianglesDrawMode;
-	exports.TubeBufferGeometry = TubeBufferGeometry;
+	exports.TubeBufferGeometry = TubeGeometry;
 	exports.TubeGeometry = TubeGeometry;
 	exports.TubeGeometry = TubeGeometry;
 	exports.UVMapping = UVMapping;
 	exports.UVMapping = UVMapping;
 	exports.Uint16Attribute = Uint16Attribute;
 	exports.Uint16Attribute = Uint16Attribute;

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


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


+ 1 - 1
docs/api/ar/audio/PositionalAudio.html

@@ -36,7 +36,7 @@
 		});
 		});
 
 
 		// create an object for the sound to play from
 		// create an object for the sound to play from
-		const sphere = new THREE.SphereBufferGeometry( 20, 32, 16 );
+		const sphere = new THREE.SphereGeometry( 20, 32, 16 );
 		const material = new THREE.MeshPhongMaterial( { color: 0xff2200 } );
 		const material = new THREE.MeshPhongMaterial( { color: 0xff2200 } );
 		const mesh = new THREE.Mesh( sphere, material );
 		const mesh = new THREE.Mesh( sphere, material );
 		scene.add( mesh );
 		scene.add( mesh );

+ 1 - 1
docs/api/en/audio/PositionalAudio.html

@@ -36,7 +36,7 @@
 		});
 		});
 
 
 		// create an object for the sound to play from
 		// create an object for the sound to play from
-		const sphere = new THREE.SphereBufferGeometry( 20, 32, 16 );
+		const sphere = new THREE.SphereGeometry( 20, 32, 16 );
 		const material = new THREE.MeshPhongMaterial( { color: 0xff2200 } );
 		const material = new THREE.MeshPhongMaterial( { color: 0xff2200 } );
 		const mesh = new THREE.Mesh( sphere, material );
 		const mesh = new THREE.Mesh( sphere, material );
 		scene.add( mesh );
 		scene.add( mesh );

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

@@ -31,7 +31,7 @@
 
 
 		const extrudeSettings = { amount: 8, bevelEnabled: true, bevelSegments: 2, steps: 2, bevelSize: 1, bevelThickness: 1 };
 		const extrudeSettings = { amount: 8, bevelEnabled: true, bevelSegments: 2, steps: 2, bevelSize: 1, bevelThickness: 1 };
 
 
-		const geometry = new THREE.ExtrudeBufferGeometry( heartShape, extrudeSettings );
+		const geometry = new THREE.ExtrudeGeometry( heartShape, extrudeSettings );
 
 
 		const mesh = new THREE.Mesh( geometry, new THREE.MeshPhongMaterial() );
 		const mesh = new THREE.Mesh( geometry, new THREE.MeshPhongMaterial() );
 		</code>
 		</code>

+ 2 - 2
docs/api/en/geometries/BoxBufferGeometry.html → docs/api/en/geometries/BoxGeometry.html

@@ -16,7 +16,7 @@
 			On creation, the cuboid is centred on the origin, with each edge parallel to one of the axes.
 			On creation, the cuboid is centred on the origin, with each edge parallel to one of the axes.
 		</p>
 		</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#BoxBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#BoxGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -36,7 +36,7 @@
 
 
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
-		<code>const geometry = new THREE.BoxBufferGeometry( 1, 1, 1 );
+		<code>const geometry = new THREE.BoxGeometry( 1, 1, 1 );
 		const material = new THREE.MeshBasicMaterial( {color: 0x00ff00} );
 		const material = new THREE.MeshBasicMaterial( {color: 0x00ff00} );
 		const cube = new THREE.Mesh( geometry, material );
 		const cube = new THREE.Mesh( geometry, material );
 		scene.add( cube );
 		scene.add( cube );

+ 2 - 2
docs/api/en/geometries/CircleBufferGeometry.html → docs/api/en/geometries/CircleGeometry.html

@@ -18,7 +18,7 @@
 			It can also be used to create regular polygons, where the number of segments determines the number of sides.
 			It can also be used to create regular polygons, where the number of segments determines the number of sides.
 		</p>
 		</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#CircleBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#CircleGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -39,7 +39,7 @@
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>
-		const geometry = new THREE.CircleBufferGeometry( 5, 32 );
+		const geometry = new THREE.CircleGeometry( 5, 32 );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const circle = new THREE.Mesh( geometry, material );
 		const circle = new THREE.Mesh( geometry, material );
 		scene.add( circle );
 		scene.add( circle );

+ 5 - 5
docs/api/en/geometries/ConeBufferGeometry.html → docs/api/en/geometries/ConeGeometry.html

@@ -7,13 +7,13 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	</head>
 	<body>
 	<body>
-		[page:BufferGeometry] &rarr; [page:CylinderBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:CylinderGeometry] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
 		<p class="desc">A class for generating cone geometries.</p>
 		<p class="desc">A class for generating cone geometries.</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#ConeBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#ConeGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -33,7 +33,7 @@
 
 
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
-		<code>const geometry = new THREE.ConeBufferGeometry( 5, 20, 32 );
+		<code>const geometry = new THREE.ConeGeometry( 5, 20, 32 );
 		const material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
 		const material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
 		const cone = new THREE.Mesh( geometry, material );
 		const cone = new THREE.Mesh( geometry, material );
 		scene.add( cone );
 		scene.add( cone );
@@ -53,7 +53,7 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
-		<p>See the base [page:CylinderBufferGeometry] class for common properties.</p>
+		<p>See the base [page:CylinderGeometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
@@ -61,7 +61,7 @@
 		</p>
 		</p>
 
 
 		<h2>Methods</h2>
 		<h2>Methods</h2>
-		<p>See the base [page:CylinderBufferGeometry] class for common methods.</p>
+		<p>See the base [page:CylinderGeometry] class for common methods.</p>
 
 
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 

+ 2 - 2
docs/api/en/geometries/CylinderBufferGeometry.html → docs/api/en/geometries/CylinderGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">A class for generating cylinder geometries.</p>
 		<p class="desc">A class for generating cylinder geometries.</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#CylinderBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#CylinderGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -33,7 +33,7 @@
 
 
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
-		<code>const geometry = new THREE.CylinderBufferGeometry( 5, 5, 20, 32 );
+		<code>const geometry = new THREE.CylinderGeometry( 5, 5, 20, 32 );
 		const material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
 		const material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
 		const cylinder = new THREE.Mesh( geometry, material );
 		const cylinder = new THREE.Mesh( geometry, material );
 		scene.add( cylinder );
 		scene.add( cylinder );

+ 4 - 4
docs/api/en/geometries/DodecahedronBufferGeometry.html → docs/api/en/geometries/DodecahedronGeometry.html

@@ -7,13 +7,13 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	</head>
 	<body>
 	<body>
-		[page:BufferGeometry] &rarr; [page:PolyhedronBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:PolyhedronGeometry] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
 		<p class="desc">A class for generating a dodecahedron geometries.</p>
 		<p class="desc">A class for generating a dodecahedron geometries.</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#DodecahedronBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#DodecahedronGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -40,7 +40,7 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
-		<p>See the base [page:PolyhedronBufferGeometry] class for common properties.</p>
+		<p>See the base [page:PolyhedronGeometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
@@ -48,7 +48,7 @@
 		</p>
 		</p>
 
 
 		<h2>Methods</h2>
 		<h2>Methods</h2>
-		<p>See the base [page:PolyhedronBufferGeometry] class for common methods.</p>
+		<p>See the base [page:PolyhedronGeometry] class for common methods.</p>
 
 
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 

+ 1 - 1
docs/api/en/geometries/EdgesGeometry.html

@@ -16,7 +16,7 @@
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>
-const geometry = new THREE.BoxBufferGeometry( 100, 100, 100 );
+const geometry = new THREE.BoxGeometry( 100, 100, 100 );
 const edges = new THREE.EdgesGeometry( geometry );
 const edges = new THREE.EdgesGeometry( geometry );
 const line = new THREE.LineSegments( edges, new THREE.LineBasicMaterial( { color: 0xffffff } ) );
 const line = new THREE.LineSegments( edges, new THREE.LineBasicMaterial( { color: 0xffffff } ) );
 scene.add( line );
 scene.add( line );

+ 2 - 2
docs/api/en/geometries/ExtrudeBufferGeometry.html → docs/api/en/geometries/ExtrudeGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">Creates extruded geometry from a path shape.</p>
 		<p class="desc">Creates extruded geometry from a path shape.</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#ExtrudeBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#ExtrudeGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -54,7 +54,7 @@
 			bevelSegments: 1
 			bevelSegments: 1
 		};
 		};
 
 
-		const geometry = new THREE.ExtrudeBufferGeometry( shape, extrudeSettings );
+		const geometry = new THREE.ExtrudeGeometry( shape, extrudeSettings );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const mesh = new THREE.Mesh( geometry, material ) ;
 		const mesh = new THREE.Mesh( geometry, material ) ;
 		scene.add( mesh );
 		scene.add( mesh );

+ 4 - 4
docs/api/en/geometries/IcosahedronBufferGeometry.html → docs/api/en/geometries/IcosahedronGeometry.html

@@ -7,12 +7,12 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	</head>
 	<body>
 	<body>
-		[page:BufferGeometry] &rarr; [page:PolyhedronBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:PolyhedronGeometry] &rarr;
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
 		<p class="desc">A class for generating an icosahedron geometry.</p>
 		<p class="desc">A class for generating an icosahedron geometry.</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#IcosahedronBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#IcosahedronGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -39,7 +39,7 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
-		<p>See the base [page:PolyhedronBufferGeometry] class for common properties.</p>
+		<p>See the base [page:PolyhedronGeometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
@@ -47,7 +47,7 @@
 		</p>
 		</p>
 
 
 		<h2>Methods</h2>
 		<h2>Methods</h2>
-		<p>See the base [page:PolyhedronBufferGeometry] class for common methods.</p>
+		<p>See the base [page:PolyhedronGeometry] class for common methods.</p>
 
 
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 

+ 3 - 3
docs/api/en/geometries/LatheBufferGeometry.html → docs/api/en/geometries/LatheGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">Creates meshes with axial symmetry like vases. The lathe rotates around the Y axis.</p>
 		<p class="desc">Creates meshes with axial symmetry like vases. The lathe rotates around the Y axis.</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#LatheBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#LatheGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -38,7 +38,7 @@
 		for ( let i = 0; i < 10; i ++ ) {
 		for ( let i = 0; i < 10; i ++ ) {
 			points.push( new THREE.Vector2( Math.sin( i * 0.2 ) * 10 + 5, ( i - 5 ) * 2 ) );
 			points.push( new THREE.Vector2( Math.sin( i * 0.2 ) * 10 + 5, ( i - 5 ) * 2 ) );
 		}
 		}
-		const geometry = new THREE.LatheBufferGeometry( points );
+		const geometry = new THREE.LatheGeometry( points );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const lathe = new THREE.Mesh( geometry, material );
 		const lathe = new THREE.Mesh( geometry, material );
 		scene.add( lathe );
 		scene.add( lathe );
@@ -54,7 +54,7 @@
 		phiLength — the radian (0 to 2PI) range of the lathed section 2PI is a closed lathe, less than 2PI is a portion. Default is 2PI.
 		phiLength — the radian (0 to 2PI) range of the lathed section 2PI is a closed lathe, less than 2PI is a portion. Default is 2PI.
 		</p>
 		</p>
 		<p>
 		<p>
-		This creates a LatheBufferGeometry based on the parameters.
+		This creates a [name] based on the parameters.
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>

+ 4 - 4
docs/api/en/geometries/OctahedronBufferGeometry.html → docs/api/en/geometries/OctahedronGeometry.html

@@ -7,12 +7,12 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	</head>
 	<body>
 	<body>
-		[page:BufferGeometry] &rarr; [page:PolyhedronBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:PolyhedronGeometry] &rarr;
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
 		<p class="desc">A class for generating an octahedron geometry.</p>
 		<p class="desc">A class for generating an octahedron geometry.</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#OctahedronBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#OctahedronGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -39,7 +39,7 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
-		<p>See the base [page:PolyhedronBufferGeometry] class for common properties.</p>
+		<p>See the base [page:PolyhedronGeometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
@@ -47,7 +47,7 @@
 		</p>
 		</p>
 
 
 		<h2>Methods</h2>
 		<h2>Methods</h2>
-		<p>See the base [page:PolyhedronBufferGeometry] class for common methods.</p>
+		<p>See the base [page:PolyhedronGeometry] class for common methods.</p>
 
 
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 

+ 2 - 2
docs/api/en/geometries/ParametricBufferGeometry.html → docs/api/en/geometries/ParametricGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">Generate geometry representing a parametric surface.</p>
 		<p class="desc">Generate geometry representing a parametric surface.</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#ParametricBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#ParametricGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -34,7 +34,7 @@
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>
-		const geometry = new THREE.ParametricBufferGeometry( THREE.ParametricGeometries.klein, 25, 25 );
+		const geometry = new THREE.ParametricGeometry( THREE.ParametricGeometries.klein, 25, 25 );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const klein = new THREE.Mesh( geometry, material );
 		const klein = new THREE.Mesh( geometry, material );
 		scene.add( klein );
 		scene.add( klein );

+ 2 - 2
docs/api/en/geometries/PlaneBufferGeometry.html → docs/api/en/geometries/PlaneGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">A class for generating plane geometries.</p>
 		<p class="desc">A class for generating plane geometries.</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#PlaneBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#PlaneGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -33,7 +33,7 @@
 
 
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
-		<code>const geometry = new THREE.PlaneBufferGeometry( 5, 20, 32 );
+		<code>const geometry = new THREE.PlaneGeometry( 5, 20, 32 );
 		const material = new THREE.MeshBasicMaterial( {color: 0xffff00, side: THREE.DoubleSide} );
 		const material = new THREE.MeshBasicMaterial( {color: 0xffff00, side: THREE.DoubleSide} );
 		const plane = new THREE.Mesh( geometry, material );
 		const plane = new THREE.Mesh( geometry, material );
 		scene.add( plane );
 		scene.add( plane );

+ 3 - 3
docs/api/en/geometries/PolyhedronBufferGeometry.html → docs/api/en/geometries/PolyhedronGeometry.html

@@ -14,8 +14,8 @@
 		<p class="desc">
 		<p class="desc">
 			A polyhedron is a solid in three dimensions with flat faces. This class will take an array of vertices,
 			A polyhedron is a solid in three dimensions with flat faces. This class will take an array of vertices,
 			project them onto a sphere, and then divide them up to the desired level of detail. This class is used
 			project them onto a sphere, and then divide them up to the desired level of detail. This class is used
-			by [page:DodecahedronBufferGeometry], [page:IcosahedronBufferGeometry], [page:OctahedronBufferGeometry],
-			and [page:TetrahedronBufferGeometry] to generate their respective geometries.
+			by [page:DodecahedronGeometry], [page:IcosahedronGeometry], [page:OctahedronGeometry],
+			and [page:TetrahedronGeometry] to generate their respective geometries.
 		</p>
 		</p>
 
 
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
@@ -34,7 +34,7 @@ const indicesOfFaces = [
     4,5,6,    6,7,4
     4,5,6,    6,7,4
 ];
 ];
 
 
-const geometry = new THREE.PolyhedronBufferGeometry( verticesOfCube, indicesOfFaces, 6, 2 );
+const geometry = new THREE.PolyhedronGeometry( verticesOfCube, indicesOfFaces, 6, 2 );
 </code>
 </code>
 
 
 		<h2>Constructor</h2>
 		<h2>Constructor</h2>

+ 2 - 2
docs/api/en/geometries/RingBufferGeometry.html → docs/api/en/geometries/RingGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">A class for generating a two-dimensional ring geometry.</p>
 		<p class="desc">A class for generating a two-dimensional ring geometry.</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#RingBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#RingGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -33,7 +33,7 @@
 
 
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
-		<code>const geometry = new THREE.RingBufferGeometry( 1, 5, 32 );
+		<code>const geometry = new THREE.RingGeometry( 1, 5, 32 );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00, side: THREE.DoubleSide } );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00, side: THREE.DoubleSide } );
 		const mesh = new THREE.Mesh( geometry, material );
 		const mesh = new THREE.Mesh( geometry, material );
 		scene.add( mesh );
 		scene.add( mesh );

+ 2 - 2
docs/api/en/geometries/ShapeBufferGeometry.html → docs/api/en/geometries/ShapeGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">Creates an one-sided polygonal geometry from one or more path shapes.</p>
 		<p class="desc">Creates an one-sided polygonal geometry from one or more path shapes.</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#ShapeBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#ShapeGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -48,7 +48,7 @@
 		heartShape.bezierCurveTo( x + 16, y + 7, x + 16, y, x + 10, y );
 		heartShape.bezierCurveTo( x + 16, y + 7, x + 16, y, x + 10, y );
 		heartShape.bezierCurveTo( x + 7, y, x + 5, y + 5, x + 5, y + 5 );
 		heartShape.bezierCurveTo( x + 7, y, x + 5, y + 5, x + 5, y + 5 );
 
 
-		const geometry = new THREE.ShapeBufferGeometry( heartShape );
+		const geometry = new THREE.ShapeGeometry( heartShape );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const mesh = new THREE.Mesh( geometry, material ) ;
 		const mesh = new THREE.Mesh( geometry, material ) ;
 		scene.add( mesh );
 		scene.add( mesh );

+ 2 - 2
docs/api/en/geometries/SphereBufferGeometry.html → docs/api/en/geometries/SphereGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">A class for generating sphere geometries.</p>
 		<p class="desc">A class for generating sphere geometries.</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#SphereBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#SphereGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -33,7 +33,7 @@
 
 
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
-		<code>const geometry = new THREE.SphereBufferGeometry( 5, 32, 32 );
+		<code>const geometry = new THREE.SphereGeometry( 5, 32, 32 );
 		const material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
 		const material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
 		const sphere = new THREE.Mesh( geometry, material );
 		const sphere = new THREE.Mesh( geometry, material );
 		scene.add( sphere );
 		scene.add( sphere );

+ 4 - 4
docs/api/en/geometries/TetrahedronBufferGeometry.html → docs/api/en/geometries/TetrahedronGeometry.html

@@ -7,13 +7,13 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	</head>
 	<body>
 	<body>
-		[page:BufferGeometry] &rarr; [page:PolyhedronBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:PolyhedronGeometry] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
 		<p class="desc">A class for generating a tetrahedron geometries.</p>
 		<p class="desc">A class for generating a tetrahedron geometries.</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#TetrahedronBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#TetrahedronGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -40,7 +40,7 @@
 		</p>
 		</p>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
-		<p>See the base [page:PolyhedronBufferGeometry] class for common properties.</p>
+		<p>See the base [page:PolyhedronGeometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
@@ -48,7 +48,7 @@
 		</p>
 		</p>
 
 
 		<h2>Methods</h2>
 		<h2>Methods</h2>
-		<p>See the base [page:PolyhedronBufferGeometry] class for common methods.</p>
+		<p>See the base [page:PolyhedronGeometry] class for common methods.</p>
 
 
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 

+ 6 - 6
docs/api/en/geometries/TextBufferGeometry.html → docs/api/en/geometries/TextGeometry.html

@@ -7,17 +7,17 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	</head>
 	<body>
 	<body>
-		[page:BufferGeometry] &rarr; [page:ExtrudeBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:ExtrudeGeometry] &rarr;
 
 
 		<h1>[name]</h1>
 		<h1>[name]</h1>
 
 
 		<p class="desc">
 		<p class="desc">
 			A class for generating text as a single geometry. It is constructed by providing a string of text, and a hash of
 			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].
+			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.
 			See the [page:Font], [page:FontLoader] and [page:Creating_Text] pages for additional details.
 		</p>
 		</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#TextBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#TextGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -42,7 +42,7 @@
 
 
 		loader.load( 'fonts/helvetiker_regular.typeface.json', function ( font ) {
 		loader.load( 'fonts/helvetiker_regular.typeface.json', function ( font ) {
 
 
-			const geometry = new THREE.TextBufferGeometry( 'Hello three.js!', {
+			const geometry = new THREE.TextGeometry( 'Hello three.js!', {
 				font: font,
 				font: font,
 				size: 80,
 				size: 80,
 				height: 5,
 				height: 5,
@@ -157,7 +157,7 @@
 		</table>
 		</table>
 
 
 		<h2>Properties</h2>
 		<h2>Properties</h2>
-		<p>See the base [page:ExtrudeBufferGeometry] class for common properties.</p>
+		<p>See the base [page:ExtrudeGeometry] class for common properties.</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
@@ -165,7 +165,7 @@
 		</p>
 		</p>
 
 
 		<h2>Methods</h2>
 		<h2>Methods</h2>
-		<p>See the base [page:ExtrudeBufferGeometry] class for common methods.</p>
+		<p>See the base [page:ExtrudeGeometry] class for common methods.</p>
 
 
 		<h2>Source</h2>
 		<h2>Source</h2>
 
 

+ 2 - 2
docs/api/en/geometries/TorusBufferGeometry.html → docs/api/en/geometries/TorusGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">A class for generating torus geometries.</p>
 		<p class="desc">A class for generating torus geometries.</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#TorusBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#TorusGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -33,7 +33,7 @@
 
 
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
-		<code>const geometry = new THREE.TorusBufferGeometry( 10, 3, 16, 100 );
+		<code>const geometry = new THREE.TorusGeometry( 10, 3, 16, 100 );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const torus = new THREE.Mesh( geometry, material );
 		const torus = new THREE.Mesh( geometry, material );
 		scene.add( torus );
 		scene.add( torus );

+ 2 - 2
docs/api/en/geometries/TorusKnotBufferGeometry.html → docs/api/en/geometries/TorusKnotGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">Creates a torus knot, the particular shape of which is defined by a pair of coprime integers, p and q. If p and q are not coprime, the result will be a torus link.</p>
 		<p class="desc">Creates a torus knot, the particular shape of which is defined by a pair of coprime integers, p and q. If p and q are not coprime, the result will be a torus link.</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#TorusKnotBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#TorusKnotGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -33,7 +33,7 @@
 
 
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
-		<code>const geometry = new THREE.TorusKnotBufferGeometry( 10, 3, 100, 16 );
+		<code>const geometry = new THREE.TorusKnotGeometry( 10, 3, 100, 16 );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const torusKnot = new THREE.Mesh( geometry, material );
 		const torusKnot = new THREE.Mesh( geometry, material );
 		scene.add( torusKnot );
 		scene.add( torusKnot );

+ 2 - 2
docs/api/en/geometries/TubeBufferGeometry.html → docs/api/en/geometries/TubeGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">Creates a tube that extrudes along a 3d curve.</p>
 		<p class="desc">Creates a tube that extrudes along a 3d curve.</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#TubeBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#TubeGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -57,7 +57,7 @@
 		}
 		}
 
 
 		const path = new CustomSinCurve( 10 );
 		const path = new CustomSinCurve( 10 );
-		const geometry = new THREE.TubeBufferGeometry( path, 20, 2, 8, false );
+		const geometry = new THREE.TubeGeometry( path, 20, 2, 8, false );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const mesh = new THREE.Mesh( geometry, material );
 		const mesh = new THREE.Mesh( geometry, material );
 		scene.add( mesh );
 		scene.add( mesh );

+ 1 - 1
docs/api/en/geometries/WireframeGeometry.html

@@ -16,7 +16,7 @@
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>
-		const geometry = new THREE.SphereBufferGeometry( 100, 100, 100 );
+		const geometry = new THREE.SphereGeometry( 100, 100, 100 );
 
 
 		const wireframe = new THREE.WireframeGeometry( geometry );
 		const wireframe = new THREE.WireframeGeometry( geometry );
 
 

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

@@ -21,7 +21,7 @@
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>
-		const sphere = new THREE.SphereBufferGeometry();
+		const sphere = new THREE.SphereGeometry();
 		const object = new THREE.Mesh( sphere, new THREE.MeshBasicMaterial( 0xff0000 ) );
 		const object = new THREE.Mesh( sphere, new THREE.MeshBasicMaterial( 0xff0000 ) );
 		const box = new THREE.BoxHelper( object, 0xffff00 );
 		const box = new THREE.BoxHelper( object, 0xffff00 );
 		scene.add( box );
 		scene.add( box );

+ 2 - 2
docs/api/en/lights/shadows/DirectionalLightShadow.html

@@ -40,7 +40,7 @@
 		light.shadow.camera.far = 500; // default
 		light.shadow.camera.far = 500; // default
 
 
 		//Create a sphere that cast shadows (but does not receive them)
 		//Create a sphere that cast shadows (but does not receive them)
-		const sphereGeometry = new THREE.SphereBufferGeometry( 5, 32, 32 );
+		const sphereGeometry = new THREE.SphereGeometry( 5, 32, 32 );
 		const sphereMaterial = new THREE.MeshStandardMaterial( { color: 0xff0000 } );
 		const sphereMaterial = new THREE.MeshStandardMaterial( { color: 0xff0000 } );
 		const sphere = new THREE.Mesh( sphereGeometry, sphereMaterial );
 		const sphere = new THREE.Mesh( sphereGeometry, sphereMaterial );
 		sphere.castShadow = true; //default is false
 		sphere.castShadow = true; //default is false
@@ -48,7 +48,7 @@
 		scene.add( sphere );
 		scene.add( sphere );
 
 
 		//Create a plane that receives shadows (but does not cast them)
 		//Create a plane that receives shadows (but does not cast them)
-		const planeGeometry = new THREE.PlaneBufferGeometry( 20, 20, 32, 32 );
+		const planeGeometry = new THREE.PlaneGeometry( 20, 20, 32, 32 );
 		const planeMaterial = new THREE.MeshStandardMaterial( { color: 0x00ff00 } )
 		const planeMaterial = new THREE.MeshStandardMaterial( { color: 0x00ff00 } )
 		const plane = new THREE.Mesh( planeGeometry, planeMaterial );
 		const plane = new THREE.Mesh( planeGeometry, planeMaterial );
 		plane.receiveShadow = true;
 		plane.receiveShadow = true;

+ 2 - 2
docs/api/en/lights/shadows/PointLightShadow.html

@@ -35,7 +35,7 @@
 		light.shadow.camera.far = 500; // default
 		light.shadow.camera.far = 500; // default
 
 
 		//Create a sphere that cast shadows (but does not receive them)
 		//Create a sphere that cast shadows (but does not receive them)
-		const sphereGeometry = new THREE.SphereBufferGeometry( 5, 32, 32 );
+		const sphereGeometry = new THREE.SphereGeometry( 5, 32, 32 );
 		const sphereMaterial = new THREE.MeshStandardMaterial( { color: 0xff0000 } );
 		const sphereMaterial = new THREE.MeshStandardMaterial( { color: 0xff0000 } );
 		const sphere = new THREE.Mesh( sphereGeometry, sphereMaterial );
 		const sphere = new THREE.Mesh( sphereGeometry, sphereMaterial );
 		sphere.castShadow = true; //default is false
 		sphere.castShadow = true; //default is false
@@ -43,7 +43,7 @@
 		scene.add( sphere );
 		scene.add( sphere );
 
 
 		//Create a plane that receives shadows (but does not cast them)
 		//Create a plane that receives shadows (but does not cast them)
-		const planeGeometry = new THREE.PlaneBufferGeometry( 20, 20, 32, 32 );
+		const planeGeometry = new THREE.PlaneGeometry( 20, 20, 32, 32 );
 		const planeMaterial = new THREE.MeshStandardMaterial( { color: 0x00ff00 } )
 		const planeMaterial = new THREE.MeshStandardMaterial( { color: 0x00ff00 } )
 		const plane = new THREE.Mesh( planeGeometry, planeMaterial );
 		const plane = new THREE.Mesh( planeGeometry, planeMaterial );
 		plane.receiveShadow = true;
 		plane.receiveShadow = true;

+ 2 - 2
docs/api/en/lights/shadows/SpotLightShadow.html

@@ -35,7 +35,7 @@
 		light.shadow.focus = 1; // default
 		light.shadow.focus = 1; // default
 
 
 		//Create a sphere that cast shadows (but does not receive them)
 		//Create a sphere that cast shadows (but does not receive them)
-		const sphereGeometry = new THREE.SphereBufferGeometry( 5, 32, 32 );
+		const sphereGeometry = new THREE.SphereGeometry( 5, 32, 32 );
 		const sphereMaterial = new THREE.MeshStandardMaterial( { color: 0xff0000 } );
 		const sphereMaterial = new THREE.MeshStandardMaterial( { color: 0xff0000 } );
 		const sphere = new THREE.Mesh( sphereGeometry, sphereMaterial );
 		const sphere = new THREE.Mesh( sphereGeometry, sphereMaterial );
 		sphere.castShadow = true; //default is false
 		sphere.castShadow = true; //default is false
@@ -43,7 +43,7 @@
 		scene.add( sphere );
 		scene.add( sphere );
 
 
 		//Create a plane that receives shadows (but does not cast them)
 		//Create a plane that receives shadows (but does not cast them)
-		const planeGeometry = new THREE.PlaneBufferGeometry( 20, 20, 32, 32 );
+		const planeGeometry = new THREE.PlaneGeometry( 20, 20, 32, 32 );
 		const planeMaterial = new THREE.MeshStandardMaterial( { color: 0x00ff00 } )
 		const planeMaterial = new THREE.MeshStandardMaterial( { color: 0x00ff00 } )
 		const plane = new THREE.Mesh( planeGeometry, planeMaterial );
 		const plane = new THREE.Mesh( planeGeometry, planeMaterial );
 		plane.receiveShadow = true;
 		plane.receiveShadow = true;

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

@@ -18,7 +18,7 @@
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>
-		const geometry = new THREE.PlaneBufferGeometry( 2000, 2000 );
+		const geometry = new THREE.PlaneGeometry( 2000, 2000 );
 		geometry.rotateX( - Math.PI / 2 );
 		geometry.rotateX( - Math.PI / 2 );
 
 
 		const material = new THREE.ShadowMaterial();
 		const material = new THREE.ShadowMaterial();

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

@@ -19,7 +19,7 @@
 		const box = new THREE.Box3();
 		const box = new THREE.Box3();
 
 
 		const mesh = new THREE.Mesh(
 		const mesh = new THREE.Mesh(
-			new THREE.SphereBufferGeometry(),
+			new THREE.SphereGeometry(),
 			new THREE.MeshBasicMaterial()
 			new THREE.MeshBasicMaterial()
 		);
 		);
 
 

+ 1 - 1
docs/api/en/objects/Group.html

@@ -19,7 +19,7 @@
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>
-		const geometry = new THREE.BoxBufferGeometry( 1, 1, 1 );
+		const geometry = new THREE.BoxGeometry( 1, 1, 1 );
 		const material = new THREE.MeshBasicMaterial( {color: 0x00ff00} );
 		const material = new THREE.MeshBasicMaterial( {color: 0x00ff00} );
 
 
 		const cubeA = new THREE.Mesh( geometry, material );
 		const cubeA = new THREE.Mesh( geometry, material );

+ 1 - 1
docs/api/en/objects/LOD.html

@@ -27,7 +27,7 @@
 		//Create spheres with 3 levels of detail and create new LOD levels for them
 		//Create spheres with 3 levels of detail and create new LOD levels for them
 		for( let i = 0; i < 3; i++ ) {
 		for( let i = 0; i < 3; i++ ) {
 
 
-			const geometry = new THREE.IcosahedronBufferGeometry( 10, 3 - i )
+			const geometry = new THREE.IcosahedronGeometry( 10, 3 - i )
 
 
 			const mesh = new THREE.Mesh( geometry, material );
 			const mesh = new THREE.Mesh( geometry, material );
 
 

+ 1 - 1
docs/api/en/objects/Mesh.html

@@ -19,7 +19,7 @@
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>
-		const geometry = new THREE.BoxBufferGeometry( 1, 1, 1 );
+		const geometry = new THREE.BoxGeometry( 1, 1, 1 );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const mesh = new THREE.Mesh( geometry, material );
 		const mesh = new THREE.Mesh( geometry, material );
 		scene.add( mesh );
 		scene.add( mesh );

+ 1 - 1
docs/api/en/objects/SkinnedMesh.html

@@ -37,7 +37,7 @@
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>
-		const geometry = new THREE.CylinderBufferGeometry( 5, 5, 5, 5, 15, 5, 30 );
+		const geometry = new THREE.CylinderGeometry( 5, 5, 5, 5, 15, 5, 30 );
 
 
 		// create the skin indices and skin weights
 		// create the skin indices and skin weights
 
 

+ 1 - 1
docs/api/ko/audio/PositionalAudio.html

@@ -36,7 +36,7 @@
 		});
 		});
 
 
 		// create an object for the sound to play from
 		// create an object for the sound to play from
-		const sphere = new THREE.SphereBufferGeometry( 20, 32, 16 );
+		const sphere = new THREE.SphereGeometry( 20, 32, 16 );
 		const material = new THREE.MeshPhongMaterial( { color: 0xff2200 } );
 		const material = new THREE.MeshPhongMaterial( { color: 0xff2200 } );
 		const mesh = new THREE.Mesh( sphere, material );
 		const mesh = new THREE.Mesh( sphere, material );
 		scene.add( mesh );
 		scene.add( mesh );

+ 1 - 1
docs/api/zh/audio/PositionalAudio.html

@@ -36,7 +36,7 @@
 		});
 		});
 
 
 		// create an object for the sound to play from
 		// create an object for the sound to play from
-		const sphere = new THREE.SphereBufferGeometry( 20, 32, 16 );
+		const sphere = new THREE.SphereGeometry( 20, 32, 16 );
 		const material = new THREE.MeshPhongMaterial( { color: 0xff2200 } );
 		const material = new THREE.MeshPhongMaterial( { color: 0xff2200 } );
 		const mesh = new THREE.Mesh( sphere, material );
 		const mesh = new THREE.Mesh( sphere, material );
 		scene.add( mesh );
 		scene.add( mesh );

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

@@ -31,7 +31,7 @@
 
 
 		const extrudeSettings = { amount: 8, bevelEnabled: true, bevelSegments: 2, steps: 2, bevelSize: 1, bevelThickness: 1 };
 		const extrudeSettings = { amount: 8, bevelEnabled: true, bevelSegments: 2, steps: 2, bevelSize: 1, bevelThickness: 1 };
 
 
-		const geometry = new THREE.ExtrudeBufferGeometry( heartShape, extrudeSettings );
+		const geometry = new THREE.ExtrudeGeometry( heartShape, extrudeSettings );
 
 
 		const mesh = new THREE.Mesh( geometry, new THREE.MeshPhongMaterial() );
 		const mesh = new THREE.Mesh( geometry, new THREE.MeshPhongMaterial() );
 		</code>
 		</code>

+ 2 - 2
docs/api/zh/geometries/BoxBufferGeometry.html → docs/api/zh/geometries/BoxGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">[name]是四边形的原始几何类,它通常使用构造函数所提供的“width”、“height”、“depth”参数来创建立方体或者不规则四边形。</p>
 		<p class="desc">[name]是四边形的原始几何类,它通常使用构造函数所提供的“width”、“height”、“depth”参数来创建立方体或者不规则四边形。</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#BoxBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#BoxGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -33,7 +33,7 @@
 
 
 		<h2>代码示例</h2>
 		<h2>代码示例</h2>
 
 
-		<code>const geometry = new THREE.BoxBufferGeometry( 1, 1, 1 );
+		<code>const geometry = new THREE.BoxGeometry( 1, 1, 1 );
 		const material = new THREE.MeshBasicMaterial( {color: 0x00ff00} );
 		const material = new THREE.MeshBasicMaterial( {color: 0x00ff00} );
 		const cube = new THREE.Mesh( geometry, material );
 		const cube = new THREE.Mesh( geometry, material );
 		scene.add( cube );
 		scene.add( cube );

+ 2 - 2
docs/api/zh/geometries/CircleBufferGeometry.html → docs/api/zh/geometries/CircleGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">[name]是欧式几何的一个简单形状,它由围绕着一个中心点的三角分段的数量所构造,由给定的半径来延展。 同时它也可以用于创建规则多边形,其分段数量取决于该规则多边形的边数。</p>
 		<p class="desc">[name]是欧式几何的一个简单形状,它由围绕着一个中心点的三角分段的数量所构造,由给定的半径来延展。 同时它也可以用于创建规则多边形,其分段数量取决于该规则多边形的边数。</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#CircleBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#CircleGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -34,7 +34,7 @@
 		<h2>代码示例</h2>
 		<h2>代码示例</h2>
 
 
 		<code>
 		<code>
-		const geometry = new THREE.CircleBufferGeometry( 5, 32 );
+		const geometry = new THREE.CircleGeometry( 5, 32 );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const circle = new THREE.Mesh( geometry, material );
 		const circle = new THREE.Mesh( geometry, material );
 		scene.add( circle );
 		scene.add( circle );

+ 5 - 5
docs/api/zh/geometries/ConeBufferGeometry.html → docs/api/zh/geometries/ConeGeometry.html

@@ -7,13 +7,13 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	</head>
 	<body>
 	<body>
-		[page:CylinderBufferGeometry] &rarr;
+		[page:CylinderGeometry] &rarr;
 
 
 		<h1>圆锥缓冲几何体([name])</h1>
 		<h1>圆锥缓冲几何体([name])</h1>
 
 
 		<p class="desc">一个用于生成圆锥几何体的类。</p>
 		<p class="desc">一个用于生成圆锥几何体的类。</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#ConeBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#ConeGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -33,7 +33,7 @@
 
 
 		<h2>代码示例</h2>
 		<h2>代码示例</h2>
 
 
-		<code>const geometry = new THREE.ConeBufferGeometry( 5, 20, 32 );
+		<code>const geometry = new THREE.ConeGeometry( 5, 20, 32 );
 		const material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
 		const material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
 		const cone = new THREE.Mesh( geometry, material );
 		const cone = new THREE.Mesh( geometry, material );
 		scene.add( cone );
 		scene.add( cone );
@@ -53,7 +53,7 @@
 		</p>
 		</p>
 
 
 		<h2>属性</h2>
 		<h2>属性</h2>
-		<p>共有属性请参见其基类[page:CylinderBufferGeometry]。</p>
+		<p>共有属性请参见其基类[page:CylinderGeometry]。</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
@@ -61,7 +61,7 @@
 		</p>
 		</p>
 
 
 		<h2>方法(Methods)</h2>
 		<h2>方法(Methods)</h2>
-		<p>共有方法请参见其基类[page:CylinderBufferGeometry]。</p>
+		<p>共有方法请参见其基类[page:CylinderGeometry]。</p>
 
 
 		<h2>源代码</h2>
 		<h2>源代码</h2>
 
 

+ 2 - 2
docs/api/zh/geometries/CylinderBufferGeometry.html → docs/api/zh/geometries/CylinderGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">一个用于生成圆柱几何体的类。</p>
 		<p class="desc">一个用于生成圆柱几何体的类。</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#CylinderBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#CylinderGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -33,7 +33,7 @@
 
 
 		<h2>代码示例</h2>
 		<h2>代码示例</h2>
 
 
-		<code>const geometry = new THREE.CylinderBufferGeometry( 5, 5, 20, 32 );
+		<code>const geometry = new THREE.CylinderGeometry( 5, 5, 20, 32 );
 		const material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
 		const material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
 		const cylinder = new THREE.Mesh( geometry, material );
 		const cylinder = new THREE.Mesh( geometry, material );
 		scene.add( cylinder );
 		scene.add( cylinder );

+ 4 - 4
docs/api/zh/geometries/DodecahedronBufferGeometry.html → docs/api/zh/geometries/DodecahedronGeometry.html

@@ -7,13 +7,13 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	</head>
 	<body>
 	<body>
-		[page:PolyhedronBufferGeometry] &rarr;
+		[page:PolyhedronGeometry] &rarr;
 
 
 		<h1>十二面缓冲几何体([name])</h1>
 		<h1>十二面缓冲几何体([name])</h1>
 
 
 		<p class="desc">一个用于创建十二面几何体的类。</p>
 		<p class="desc">一个用于创建十二面几何体的类。</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#DodecahedronBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#DodecahedronGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -40,7 +40,7 @@
 		</p>
 		</p>
 
 
 		<h2>属性</h2>
 		<h2>属性</h2>
-		<p>共有属性请参见其基类[page:PolyhedronBufferGeometry]。</p>
+		<p>共有属性请参见其基类[page:PolyhedronGeometry]。</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
@@ -48,7 +48,7 @@
 		</p>
 		</p>
 
 
 		<h2>方法(Methods)</h2>
 		<h2>方法(Methods)</h2>
-		<p>共有方法请参见其基类[page:PolyhedronBufferGeometry]。</p>
+		<p>共有方法请参见其基类[page:PolyhedronGeometry]。</p>
 
 
 		<h2>源代码</h2>
 		<h2>源代码</h2>
 
 

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

@@ -15,7 +15,7 @@
 
 
 		<h2>代码示例</h2>
 		<h2>代码示例</h2>
 		<code>
 		<code>
-		const geometry = new THREE.BoxBufferGeometry( 100, 100, 100 );
+		const geometry = new THREE.BoxGeometry( 100, 100, 100 );
 		const edges = new THREE.EdgesGeometry( geometry );
 		const edges = new THREE.EdgesGeometry( geometry );
 		const line = new THREE.LineSegments( edges, new THREE.LineBasicMaterial( { color: 0xffffff } ) );
 		const line = new THREE.LineSegments( edges, new THREE.LineBasicMaterial( { color: 0xffffff } ) );
 		scene.add( line );
 		scene.add( line );

+ 2 - 2
docs/api/zh/geometries/ExtrudeBufferGeometry.html → docs/api/zh/geometries/ExtrudeGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">从一个形状路径中,挤压出一个BufferGeometry。</p>
 		<p class="desc">从一个形状路径中,挤压出一个BufferGeometry。</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#ExtrudeBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#ExtrudeGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -54,7 +54,7 @@
 			bevelSegments: 1
 			bevelSegments: 1
 		};
 		};
 
 
-		const geometry = new THREE.ExtrudeBufferGeometry( shape, extrudeSettings );
+		const geometry = new THREE.ExtrudeGeometry( shape, extrudeSettings );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const mesh = new THREE.Mesh( geometry, material ) ;
 		const mesh = new THREE.Mesh( geometry, material ) ;
 		scene.add( mesh );
 		scene.add( mesh );

+ 4 - 4
docs/api/zh/geometries/IcosahedronBufferGeometry.html → docs/api/zh/geometries/IcosahedronGeometry.html

@@ -7,12 +7,12 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	</head>
 	<body>
 	<body>
-		[page:PolyhedronBufferGeometry] &rarr;
+		[page:PolyhedronGeometry] &rarr;
 		<h1>二十面缓冲几何体([name])</h1>
 		<h1>二十面缓冲几何体([name])</h1>
 
 
 		<p class="desc">一个用于生成二十面体的类。</p>
 		<p class="desc">一个用于生成二十面体的类。</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#IcosahedronBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#IcosahedronGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -39,7 +39,7 @@
 		</p>
 		</p>
 
 
 		<h2>属性</h2>
 		<h2>属性</h2>
-		<p>共有属性请参见其基类[page:PolyhedronBufferGeometry]。</p>
+		<p>共有属性请参见其基类[page:PolyhedronGeometry]。</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
@@ -47,7 +47,7 @@
 		</p>
 		</p>
 
 
 		<h2>方法(Methods)</h2>
 		<h2>方法(Methods)</h2>
-		<p>共有方法请参见其基类[page:PolyhedronBufferGeometry]。</p>
+		<p>共有方法请参见其基类[page:PolyhedronGeometry]。</p>
 
 
 		<h2>源代码</h2>
 		<h2>源代码</h2>
 
 

+ 2 - 2
docs/api/zh/geometries/LatheBufferGeometry.html → docs/api/zh/geometries/LatheGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">创建具有轴对称性的网格,比如花瓶。车削绕着Y轴来进行旋转。</p>
 		<p class="desc">创建具有轴对称性的网格,比如花瓶。车削绕着Y轴来进行旋转。</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#LatheBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#LatheGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -38,7 +38,7 @@
 		for ( let i = 0; i < 10; i ++ ) {
 		for ( let i = 0; i < 10; i ++ ) {
 			points.push( new THREE.Vector2( Math.sin( i * 0.2 ) * 10 + 5, ( i - 5 ) * 2 ) );
 			points.push( new THREE.Vector2( Math.sin( i * 0.2 ) * 10 + 5, ( i - 5 ) * 2 ) );
 		}
 		}
-		const geometry = new THREE.LatheBufferGeometry( points );
+		const geometry = new THREE.LatheGeometry( points );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const lathe = new THREE.Mesh( geometry, material );
 		const lathe = new THREE.Mesh( geometry, material );
 		scene.add( lathe );
 		scene.add( lathe );

+ 4 - 4
docs/api/zh/geometries/OctahedronBufferGeometry.html → docs/api/zh/geometries/OctahedronGeometry.html

@@ -7,12 +7,12 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	</head>
 	<body>
 	<body>
-		[page:PolyhedronBufferGeometry] &rarr;
+		[page:PolyhedronGeometry] &rarr;
 		<h1>八面缓冲几何体([name])</h1>
 		<h1>八面缓冲几何体([name])</h1>
 
 
 		<p class="desc">一个用于创建八面体的类。</p>
 		<p class="desc">一个用于创建八面体的类。</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#OctahedronBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#OctahedronGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -39,7 +39,7 @@
 		</p>
 		</p>
 
 
 		<h2>属性</h2>
 		<h2>属性</h2>
-		<p>共有属性请参见其基类[page:PolyhedronBufferGeometry]。</p>
+		<p>共有属性请参见其基类[page:PolyhedronGeometry]。</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
@@ -48,7 +48,7 @@
 		</p>
 		</p>
 
 
 		<h2>方法(Methods)</h2>
 		<h2>方法(Methods)</h2>
-		<p>共有方法请参见其基类[page:PolyhedronBufferGeometry]。</p>
+		<p>共有方法请参见其基类[page:PolyhedronGeometry]。</p>
 
 
 		<h2>源代码</h2>
 		<h2>源代码</h2>
 
 

+ 2 - 2
docs/api/zh/geometries/ParametricBufferGeometry.html → docs/api/zh/geometries/ParametricGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">生成由参数表示其表面的几何体。</p>
 		<p class="desc">生成由参数表示其表面的几何体。</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#ParametricBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#ParametricGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -34,7 +34,7 @@
 		<h2>代码示例</h2>
 		<h2>代码示例</h2>
 
 
 		<code>
 		<code>
-		const geometry = new THREE.ParametricBufferGeometry( THREE.ParametricGeometries.klein, 25, 25 );
+		const geometry = new THREE.ParametricGeometry( THREE.ParametricGeometries.klein, 25, 25 );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const klein = new THREE.Mesh( geometry, material );
 		const klein = new THREE.Mesh( geometry, material );
 		scene.add( klein );
 		scene.add( klein );

+ 2 - 2
docs/api/zh/geometries/PlaneBufferGeometry.html → docs/api/zh/geometries/PlaneGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">一个用于生成平面几何体的类。</p>
 		<p class="desc">一个用于生成平面几何体的类。</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#PlaneBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#PlaneGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -33,7 +33,7 @@
 
 
 		<h2>代码示例</h2>
 		<h2>代码示例</h2>
 
 
-		<code>const geometry = new THREE.PlaneBufferGeometry( 5, 20, 32 );
+		<code>const geometry = new THREE.PlaneGeometry( 5, 20, 32 );
 		const material = new THREE.MeshBasicMaterial( {color: 0xffff00, side: THREE.DoubleSide} );
 		const material = new THREE.MeshBasicMaterial( {color: 0xffff00, side: THREE.DoubleSide} );
 		const plane = new THREE.Mesh( geometry, material );
 		const plane = new THREE.Mesh( geometry, material );
 		scene.add( plane );
 		scene.add( plane );

+ 2 - 2
docs/api/zh/geometries/PolyhedronBufferGeometry.html → docs/api/zh/geometries/PolyhedronGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">
 		<p class="desc">
 				多面体在三维空间中具有一些平面的立体图形。这个类将一个顶点数组投射到一个球面上,之后将它们细分为所需的细节级别。
 				多面体在三维空间中具有一些平面的立体图形。这个类将一个顶点数组投射到一个球面上,之后将它们细分为所需的细节级别。
-				这个类由[page:DodecahedronBufferGeometry]、[page:IcosahedronBufferGeometry]、[page:OctahedronBufferGeometry]和[page:TetrahedronBufferGeometry]
+				这个类由[page:DodecahedronGeometry]、[page:IcosahedronGeometry]、[page:OctahedronGeometry]和[page:TetrahedronGeometry]
 				所使用,以生成它们各自的几何结构。
 				所使用,以生成它们各自的几何结构。
 		</p>
 		</p>
 
 
@@ -33,7 +33,7 @@ const indicesOfFaces = [
     4,5,6,    6,7,4
     4,5,6,    6,7,4
 ];
 ];
 
 
-const geometry = new THREE.PolyhedronBufferGeometry( verticesOfCube, indicesOfFaces, 6, 2 );
+const geometry = new THREE.PolyhedronGeometry( verticesOfCube, indicesOfFaces, 6, 2 );
 </code>
 </code>
 
 
 		<h2>构造器</h2>
 		<h2>构造器</h2>

+ 2 - 2
docs/api/zh/geometries/RingBufferGeometry.html → docs/api/zh/geometries/RingGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">一个用于生成二维圆环几何体的类。</p>
 		<p class="desc">一个用于生成二维圆环几何体的类。</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#RingBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#RingGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -33,7 +33,7 @@
 
 
 		<h2>代码示例</h2>
 		<h2>代码示例</h2>
 
 
-		<code>const geometry = new THREE.RingBufferGeometry( 1, 5, 32 );
+		<code>const geometry = new THREE.RingGeometry( 1, 5, 32 );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00, side: THREE.DoubleSide } );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00, side: THREE.DoubleSide } );
 		const mesh = new THREE.Mesh( geometry, material );
 		const mesh = new THREE.Mesh( geometry, material );
 		scene.add( mesh );
 		scene.add( mesh );

+ 2 - 2
docs/api/zh/geometries/ShapeBufferGeometry.html → docs/api/zh/geometries/ShapeGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">从一个或多个路径形状中创建一个单面多边形几何体。</p>
 		<p class="desc">从一个或多个路径形状中创建一个单面多边形几何体。</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#ShapeBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#ShapeGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -48,7 +48,7 @@
 		heartShape.bezierCurveTo( x + 16, y + 7, x + 16, y, x + 10, y );
 		heartShape.bezierCurveTo( x + 16, y + 7, x + 16, y, x + 10, y );
 		heartShape.bezierCurveTo( x + 7, y, x + 5, y + 5, x + 5, y + 5 );
 		heartShape.bezierCurveTo( x + 7, y, x + 5, y + 5, x + 5, y + 5 );
 
 
-		const geometry = new THREE.ShapeBufferGeometry( heartShape );
+		const geometry = new THREE.ShapeGeometry( heartShape );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const mesh = new THREE.Mesh( geometry, material ) ;
 		const mesh = new THREE.Mesh( geometry, material ) ;
 		scene.add( mesh );
 		scene.add( mesh );

+ 2 - 2
docs/api/zh/geometries/SphereBufferGeometry.html → docs/api/zh/geometries/SphereGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">一个用于生成球体的类。</p>
 		<p class="desc">一个用于生成球体的类。</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#SphereBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#SphereGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -33,7 +33,7 @@
 
 
 		<h2>代码示例</h2>
 		<h2>代码示例</h2>
 
 
-		<code>const geometry = new THREE.SphereBufferGeometry( 5, 32, 32 );
+		<code>const geometry = new THREE.SphereGeometry( 5, 32, 32 );
 		const material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
 		const material = new THREE.MeshBasicMaterial( {color: 0xffff00} );
 		const sphere = new THREE.Mesh( geometry, material );
 		const sphere = new THREE.Mesh( geometry, material );
 		scene.add( sphere );
 		scene.add( sphere );

+ 4 - 4
docs/api/zh/geometries/TetrahedronBufferGeometry.html → docs/api/zh/geometries/TetrahedronGeometry.html

@@ -7,13 +7,13 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	</head>
 	<body>
 	<body>
-		[page:BufferGeometry] &rarr; [page:PolyhedronBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:PolyhedronGeometry] &rarr;
 
 
 		<h1>四面缓冲几何体([name])</h1>
 		<h1>四面缓冲几何体([name])</h1>
 
 
 		<p class="desc">一个用于生成四面几何体的类。</p>
 		<p class="desc">一个用于生成四面几何体的类。</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#TetrahedronBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#TetrahedronGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -40,7 +40,7 @@
 		</p>
 		</p>
 
 
 		<h2>属性</h2>
 		<h2>属性</h2>
-		<p>共有属性请参见其基类[page:PolyhedronBufferGeometry]。</p>
+		<p>共有属性请参见其基类[page:PolyhedronGeometry]。</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
@@ -48,7 +48,7 @@
 		</p>
 		</p>
 
 
 		<h2>方法(Methods)</h2>
 		<h2>方法(Methods)</h2>
-		<p>共有方法请参见其基类[page:PolyhedronBufferGeometry]。</p>
+		<p>共有方法请参见其基类[page:PolyhedronGeometry]。</p>
 
 
 		<h2>源代码</h2>
 		<h2>源代码</h2>
 
 

+ 6 - 6
docs/api/zh/geometries/TextBufferGeometry.html → docs/api/zh/geometries/TextGeometry.html

@@ -7,17 +7,17 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	</head>
 	<body>
 	<body>
-		[page:BufferGeometry] &rarr; [page:ExtrudeBufferGeometry] &rarr;
+		[page:BufferGeometry] &rarr; [page:ExtrudeGeometry] &rarr;
 
 
 		<h1>文本缓冲几何体([name])</h1>
 		<h1>文本缓冲几何体([name])</h1>
 
 
 		<p class="desc">
 		<p class="desc">
 				一个用于将文本生成为单一的几何体的类。
 				一个用于将文本生成为单一的几何体的类。
-				它是由一串给定的文本,以及由加载的[page:Font](字体)和该几何体[page:ExtrudeBufferGeometry]父类中的设置所组成的参数来构造的。
+				它是由一串给定的文本,以及由加载的[page:Font](字体)和该几何体[page:ExtrudeGeometry]父类中的设置所组成的参数来构造的。
 				请参阅[page:Font]、[page:FontLoader]和[page:Creating_Text]页面来查看更多详细信息。
 				请参阅[page:Font]、[page:FontLoader]和[page:Creating_Text]页面来查看更多详细信息。
 			</p>
 			</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#TextBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#TextGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -42,7 +42,7 @@
 
 
 		loader.load( 'fonts/helvetiker_regular.typeface.json', function ( font ) {
 		loader.load( 'fonts/helvetiker_regular.typeface.json', function ( font ) {
 
 
-			const geometry = new THREE.TextBufferGeometry( 'Hello three.js!', {
+			const geometry = new THREE.TextGeometry( 'Hello three.js!', {
 				font: font,
 				font: font,
 				size: 80,
 				size: 80,
 				height: 5,
 				height: 5,
@@ -155,7 +155,7 @@
 		</table>
 		</table>
 
 
 		<h2>属性</h2>
 		<h2>属性</h2>
-		<p>共有属性请参见其基类[page:ExtrudeBufferGeometry]。</p>
+		<p>共有属性请参见其基类[page:ExtrudeGeometry]。</p>
 
 
 		<h3>[property:Object parameters]</h3>
 		<h3>[property:Object parameters]</h3>
 		<p>
 		<p>
@@ -163,7 +163,7 @@
 		</p>
 		</p>
 
 
 		<h2>方法(Methods)</h2>
 		<h2>方法(Methods)</h2>
-		<p>共有方法请参见其基类[page:ExtrudeBufferGeometry]。</p>
+		<p>共有方法请参见其基类[page:ExtrudeGeometry]。</p>
 
 
 		<h2>源代码</h2>
 		<h2>源代码</h2>
 
 

+ 2 - 2
docs/api/zh/geometries/TorusBufferGeometry.html → docs/api/zh/geometries/TorusGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">一个用于生成圆环几何体的类。</p>
 		<p class="desc">一个用于生成圆环几何体的类。</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#TorusBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#TorusGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -33,7 +33,7 @@
 
 
 		<h2>代码示例</h2>
 		<h2>代码示例</h2>
 
 
-		<code>const geometry = new THREE.TorusBufferGeometry( 10, 3, 16, 100 );
+		<code>const geometry = new THREE.TorusGeometry( 10, 3, 16, 100 );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const torus = new THREE.Mesh( geometry, material );
 		const torus = new THREE.Mesh( geometry, material );
 		scene.add( torus );
 		scene.add( torus );

+ 2 - 2
docs/api/zh/geometries/TorusKnotBufferGeometry.html → docs/api/zh/geometries/TorusKnotGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">创建一个圆环扭结,其特殊形状由一对互质的整数,p和q所定义。如果p和q不互质,创建出来的几何体将是一个环面链接。</p>
 		<p class="desc">创建一个圆环扭结,其特殊形状由一对互质的整数,p和q所定义。如果p和q不互质,创建出来的几何体将是一个环面链接。</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#TorusKnotBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#TorusKnotGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -33,7 +33,7 @@
 
 
 		<h2>代码示例</h2>
 		<h2>代码示例</h2>
 
 
-		<code>const geometry = new THREE.TorusKnotBufferGeometry( 10, 3, 100, 16 );
+		<code>const geometry = new THREE.TorusKnotGeometry( 10, 3, 100, 16 );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const torusKnot = new THREE.Mesh( geometry, material );
 		const torusKnot = new THREE.Mesh( geometry, material );
 		scene.add( torusKnot );
 		scene.add( torusKnot );

+ 2 - 2
docs/api/zh/geometries/TubeBufferGeometry.html → docs/api/zh/geometries/TubeGeometry.html

@@ -13,7 +13,7 @@
 
 
 		<p class="desc">创建一个沿着三维曲线延伸的管道。</p>
 		<p class="desc">创建一个沿着三维曲线延伸的管道。</p>
 
 
-		<iframe id="scene" src="scenes/geometry-browser.html#TubeBufferGeometry"></iframe>
+		<iframe id="scene" src="scenes/geometry-browser.html#TubeGeometry"></iframe>
 
 
 		<script>
 		<script>
 
 
@@ -57,7 +57,7 @@
 		}
 		}
 
 
 		const path = new CustomSinCurve( 10 );
 		const path = new CustomSinCurve( 10 );
-		const geometry = new THREE.TubeBufferGeometry( path, 20, 2, 8, false );
+		const geometry = new THREE.TubeGeometry( path, 20, 2, 8, false );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const mesh = new THREE.Mesh( geometry, material );
 		const mesh = new THREE.Mesh( geometry, material );
 		scene.add( mesh );
 		scene.add( mesh );

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

@@ -16,7 +16,7 @@
 		<h2>代码示例</h2>
 		<h2>代码示例</h2>
 
 
 		<code>
 		<code>
-		const geometry = new THREE.SphereBufferGeometry( 100, 100, 100 );
+		const geometry = new THREE.SphereGeometry( 100, 100, 100 );
 
 
 		const wireframe = new THREE.WireframeGeometry( geometry );
 		const wireframe = new THREE.WireframeGeometry( geometry );
 
 

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

@@ -22,7 +22,7 @@
 		<h2>代码示例</h2>
 		<h2>代码示例</h2>
 
 
 		<code>
 		<code>
-		const sphere = new THREE.SphereBufferGeometry();
+		const sphere = new THREE.SphereGeometry();
 		const object = new THREE.Mesh( sphere, new THREE.MeshBasicMaterial( 0xff0000 ) );
 		const object = new THREE.Mesh( sphere, new THREE.MeshBasicMaterial( 0xff0000 ) );
 		const box = new THREE.BoxHelper( object, 0xffff00 );
 		const box = new THREE.BoxHelper( object, 0xffff00 );
 		scene.add( box );
 		scene.add( box );

+ 2 - 2
docs/api/zh/lights/shadows/DirectionalLightShadow.html

@@ -37,7 +37,7 @@
 		light.shadow.camera.far = 500; // default
 		light.shadow.camera.far = 500; // default
 
 
 		//Create a sphere that cast shadows (but does not receive them)
 		//Create a sphere that cast shadows (but does not receive them)
-		const sphereGeometry = new THREE.SphereBufferGeometry( 5, 32, 32 );
+		const sphereGeometry = new THREE.SphereGeometry( 5, 32, 32 );
 		const sphereMaterial = new THREE.MeshStandardMaterial( { color: 0xff0000 } );
 		const sphereMaterial = new THREE.MeshStandardMaterial( { color: 0xff0000 } );
 		const sphere = new THREE.Mesh( sphereGeometry, sphereMaterial );
 		const sphere = new THREE.Mesh( sphereGeometry, sphereMaterial );
 		sphere.castShadow = true; //default is false
 		sphere.castShadow = true; //default is false
@@ -45,7 +45,7 @@
 		scene.add( sphere );
 		scene.add( sphere );
 
 
 		//Create a plane that receives shadows (but does not cast them)
 		//Create a plane that receives shadows (but does not cast them)
-		const planeGeometry = new THREE.PlaneBufferGeometry( 20, 20, 32, 32 );
+		const planeGeometry = new THREE.PlaneGeometry( 20, 20, 32, 32 );
 		const planeMaterial = new THREE.MeshStandardMaterial( { color: 0x00ff00 } )
 		const planeMaterial = new THREE.MeshStandardMaterial( { color: 0x00ff00 } )
 		const plane = new THREE.Mesh( planeGeometry, planeMaterial );
 		const plane = new THREE.Mesh( planeGeometry, planeMaterial );
 		plane.receiveShadow = true;
 		plane.receiveShadow = true;

+ 2 - 2
docs/api/zh/lights/shadows/PointLightShadow.html

@@ -36,7 +36,7 @@
 		light.shadow.camera.far = 500 // default
 		light.shadow.camera.far = 500 // default
 
 
 		//Create a sphere that cast shadows (but does not receive them)
 		//Create a sphere that cast shadows (but does not receive them)
-		const sphereGeometry = new THREE.SphereBufferGeometry( 5, 32, 32 );
+		const sphereGeometry = new THREE.SphereGeometry( 5, 32, 32 );
 		const sphereMaterial = new THREE.MeshStandardMaterial( { color: 0xff0000 } );
 		const sphereMaterial = new THREE.MeshStandardMaterial( { color: 0xff0000 } );
 		const sphere = new THREE.Mesh( sphereGeometry, sphereMaterial );
 		const sphere = new THREE.Mesh( sphereGeometry, sphereMaterial );
 		sphere.castShadow = true; //default is false
 		sphere.castShadow = true; //default is false
@@ -44,7 +44,7 @@
 		scene.add( sphere );
 		scene.add( sphere );
 
 
 		//Create a plane that receives shadows (but does not cast them)
 		//Create a plane that receives shadows (but does not cast them)
-		const planeGeometry = new THREE.PlaneBufferGeometry( 20, 20, 32, 32 );
+		const planeGeometry = new THREE.PlaneGeometry( 20, 20, 32, 32 );
 		const planeMaterial = new THREE.MeshStandardMaterial( { color: 0x00ff00 } )
 		const planeMaterial = new THREE.MeshStandardMaterial( { color: 0x00ff00 } )
 		const plane = new THREE.Mesh( planeGeometry, planeMaterial );
 		const plane = new THREE.Mesh( planeGeometry, planeMaterial );
 		plane.receiveShadow = true;
 		plane.receiveShadow = true;

+ 2 - 2
docs/api/zh/lights/shadows/SpotLightShadow.html

@@ -36,7 +36,7 @@
 		light.shadow.focus = 1;            // default
 		light.shadow.focus = 1;            // default
 
 
 		//Create a sphere that cast shadows (but does not receive them)
 		//Create a sphere that cast shadows (but does not receive them)
-		const sphereGeometry = new THREE.SphereBufferGeometry( 5, 32, 32 );
+		const sphereGeometry = new THREE.SphereGeometry( 5, 32, 32 );
 		const sphereMaterial = new THREE.MeshStandardMaterial( { color: 0xff0000 } );
 		const sphereMaterial = new THREE.MeshStandardMaterial( { color: 0xff0000 } );
 		const sphere = new THREE.Mesh( sphereGeometry, sphereMaterial );
 		const sphere = new THREE.Mesh( sphereGeometry, sphereMaterial );
 		sphere.castShadow = true; //default is false
 		sphere.castShadow = true; //default is false
@@ -44,7 +44,7 @@
 		scene.add( sphere );
 		scene.add( sphere );
 
 
 		//Create a plane that receives shadows (but does not cast them)
 		//Create a plane that receives shadows (but does not cast them)
-		const planeGeometry = new THREE.PlaneBufferGeometry( 20, 20, 32, 32 );
+		const planeGeometry = new THREE.PlaneGeometry( 20, 20, 32, 32 );
 		const planeMaterial = new THREE.MeshStandardMaterial( { color: 0x00ff00 } )
 		const planeMaterial = new THREE.MeshStandardMaterial( { color: 0x00ff00 } )
 		const plane = new THREE.Mesh( planeGeometry, planeMaterial );
 		const plane = new THREE.Mesh( planeGeometry, planeMaterial );
 		plane.receiveShadow = true;
 		plane.receiveShadow = true;

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

@@ -18,7 +18,7 @@
 		<h2>代码示例</h2>
 		<h2>代码示例</h2>
 
 
 		<code>
 		<code>
-		const geometry = new THREE.PlaneBufferGeometry( 2000, 2000 );
+		const geometry = new THREE.PlaneGeometry( 2000, 2000 );
 		geometry.rotateX( - Math.PI / 2 );
 		geometry.rotateX( - Math.PI / 2 );
 
 
 		const material = new THREE.ShadowMaterial();
 		const material = new THREE.ShadowMaterial();

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

@@ -19,7 +19,7 @@
 		const box = new THREE.Box3();
 		const box = new THREE.Box3();
 
 
 		const mesh = new THREE.Mesh(
 		const mesh = new THREE.Mesh(
-			new THREE.SphereBufferGeometry(),
+			new THREE.SphereGeometry(),
 			new THREE.MeshBasicMaterial()
 			new THREE.MeshBasicMaterial()
 		);
 		);
 
 

+ 1 - 1
docs/api/zh/objects/Group.html

@@ -18,7 +18,7 @@
 		<h2>代码示例</h2>
 		<h2>代码示例</h2>
 
 
 		<code>
 		<code>
-		const geometry = new THREE.BoxBufferGeometry( 1, 1, 1 );
+		const geometry = new THREE.BoxGeometry( 1, 1, 1 );
 		const material = new THREE.MeshBasicMaterial( {color: 0x00ff00} );
 		const material = new THREE.MeshBasicMaterial( {color: 0x00ff00} );
 
 
 		const cubeA = new THREE.Mesh( geometry, material );
 		const cubeA = new THREE.Mesh( geometry, material );

+ 1 - 1
docs/api/zh/objects/LOD.html

@@ -25,7 +25,7 @@
 		//Create spheres with 3 levels of detail and create new LOD levels for them
 		//Create spheres with 3 levels of detail and create new LOD levels for them
 		for( let i = 0; i < 3; i++ ) {
 		for( let i = 0; i < 3; i++ ) {
 
 
-			const geometry = new THREE.IcosahedronBufferGeometry( 10, 3 - i )
+			const geometry = new THREE.IcosahedronGeometry( 10, 3 - i )
 
 
 			const mesh = new THREE.Mesh( geometry, material );
 			const mesh = new THREE.Mesh( geometry, material );
 
 

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

@@ -20,7 +20,7 @@
 		<h2>代码示例</h2>
 		<h2>代码示例</h2>
 
 
 		<code>
 		<code>
-		const geometry = new THREE.BoxBufferGeometry( 1, 1, 1 );
+		const geometry = new THREE.BoxGeometry( 1, 1, 1 );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const material = new THREE.MeshBasicMaterial( { color: 0xffff00 } );
 		const mesh = new THREE.Mesh( geometry, material );
 		const mesh = new THREE.Mesh( geometry, material );
 		scene.add( mesh );
 		scene.add( mesh );

+ 1 - 1
docs/api/zh/objects/SkinnedMesh.html

@@ -37,7 +37,7 @@
 		<h2>代码示例</h2>
 		<h2>代码示例</h2>
 
 
 		<code>
 		<code>
-		const geometry = new THREE.CylinderBufferGeometry( 5, 5, 5, 5, 15, 5, 30 );
+		const geometry = new THREE.CylinderGeometry( 5, 5, 5, 5, 15, 5, 30 );
 
 
 		// create the skin indices and skin weights
 		// create the skin indices and skin weights
 
 

+ 0 - 44
docs/examples/en/geometries/ConvexBufferGeometry.html

@@ -1,44 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../" />
-		<script src="page.js"></script>
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		[page:BufferGeometry] &rarr;
-
-		<h1>[name]</h1>
-
-		<p class="desc">[name] can be used to generate a convex hull for a given array of 3D points.
-			The average time complexity for this task is considered to be O(nlog(n)).</p>
-
-		<h2>Code Example</h2>
-
-		<code>const geometry = new ConvexBufferGeometry( points );
-		const material = new THREE.MeshBasicMaterial( {color: 0x00ff00} );
-		const mesh = new THREE.Mesh( geometry, material );
-		scene.add( mesh );
-		</code>
-
-		<h2>Examples</h2>
-
-		<p>[example:webgl_geometry_convex geometry / convex ]</p>
-
-		<h2>Constructor</h2>
-
-		<h3>[name]( [param:Array points] )</h3>
-		<p>
-		points — Array of [page:Vector3 Vector3s] that the resulting convex hull will contain.
-		</p>
-
-
-		<h2>Source</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/geometries/ConvexGeometry.js examples/jsm/geometries/ConvexGeometry.js]
-		</p>
-	</body>
-</html>

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

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

+ 1 - 1
docs/examples/en/helpers/VertexNormalsHelper.html

@@ -20,7 +20,7 @@
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 
 
 		<code>
 		<code>
-		const geometry = new THREE.BoxBufferGeometry( 10, 10, 10, 2, 2, 2 );
+		const geometry = new THREE.BoxGeometry( 10, 10, 10, 2, 2, 2 );
 		const material = new THREE.MeshBasicMaterial( { color: 0xff0000 } );
 		const material = new THREE.MeshBasicMaterial( { color: 0xff0000 } );
 		const box = new THREE.Mesh( geometry, material );
 		const box = new THREE.Mesh( geometry, material );
 
 

+ 1 - 1
docs/examples/en/helpers/VertexTangentsHelper.html

@@ -21,7 +21,7 @@
 
 
 		<h2>Code Example</h2>
 		<h2>Code Example</h2>
 		<code>
 		<code>
-		const geometry = new THREE.BoxBufferGeometry( 10, 10, 10, 2, 2, 2 );
+		const geometry = new THREE.BoxGeometry( 10, 10, 10, 2, 2, 2 );
 		const material = new THREE.MeshNormalMaterial();
 		const material = new THREE.MeshNormalMaterial();
 		const box = new THREE.Mesh( geometry, material );
 		const box = new THREE.Mesh( geometry, material );
 
 

+ 1 - 1
docs/examples/en/loaders/SVGLoader.html

@@ -46,7 +46,7 @@
 					for ( let j = 0; j < shapes.length; j ++ ) {
 					for ( let j = 0; j < shapes.length; j ++ ) {
 
 
 						const shape = shapes[ j ];
 						const shape = shapes[ j ];
-						const geometry = new THREE.ShapeBufferGeometry( shape );
+						const geometry = new THREE.ShapeGeometry( shape );
 						const mesh = new THREE.Mesh( geometry, material );
 						const mesh = new THREE.Mesh( geometry, material );
 						group.add( mesh );
 						group.add( mesh );
 
 

+ 0 - 44
docs/examples/zh/geometries/ConvexBufferGeometry.html

@@ -1,44 +0,0 @@
-<!DOCTYPE html>
-<html lang="zh">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../" />
-		<script src="page.js"></script>
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		[page:BufferGeometry] &rarr;
-
-		<h1>凸包缓冲几何体([name])</h1>
-
-		<p class="desc">[name] 可被用于为传入的一组点生成凸包。
-				该任务的平均时间复杂度被认为是O(nlog(n))。</p>
-
-		<h2>代码示例</h2>
-
-		<code>const geometry = new ConvexBufferGeometry( points );
-		const material = new THREE.MeshBasicMaterial( {color: 0x00ff00} );
-		const mesh = new THREE.Mesh( geometry, material );
-		scene.add( mesh );
-		</code>
-
-		<h2>例子</h2>
-
-		<p>[example:webgl_geometry_convex geometry / convex ]</p>
-
-		<h2>Constructor</h2>
-
-		<h3>[name]( [param:Array points] )</h3>
-		<p>
-		points — 所得凸包中将包含的一组[page:Vector3 Vector3]。
-		</p>
-
-
-		<h2>源代码</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/geometries/ConvexGeometry.js examples/jsm/geometries/ConvexGeometry.js]
-		</p>
-	</body>
-</html>

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

@@ -7,7 +7,7 @@
 		<link type="text/css" rel="stylesheet" href="page.css" />
 		<link type="text/css" rel="stylesheet" href="page.css" />
 	</head>
 	</head>
 	<body>
 	<body>
-		[page:Geometry] &rarr;
+		[page:BufferGeometry] &rarr;
 
 
 		<h1>凸包几何体([name])</h1>
 		<h1>凸包几何体([name])</h1>
 
 

+ 1 - 1
docs/examples/zh/helpers/VertexNormalsHelper.html

@@ -20,7 +20,7 @@
 		<h2>代码示例</h2>
 		<h2>代码示例</h2>
 
 
 		<code>
 		<code>
-		const geometry = new THREE.BoxBufferGeometry( 10, 10, 10, 2, 2, 2 );
+		const geometry = new THREE.BoxGeometry( 10, 10, 10, 2, 2, 2 );
 		const material = new THREE.MeshBasicMaterial( { color: 0xff0000 } );
 		const material = new THREE.MeshBasicMaterial( { color: 0xff0000 } );
 		const box = new THREE.Mesh( geometry, material );
 		const box = new THREE.Mesh( geometry, material );
 
 

+ 1 - 1
docs/examples/zh/helpers/VertexTangentsHelper.html

@@ -22,7 +22,7 @@
 		<h2>代码示例</h2>
 		<h2>代码示例</h2>
 
 
 		<code>
 		<code>
-		const geometry = new THREE.BoxBufferGeometry( 10, 10, 10, 2, 2, 2 );
+		const geometry = new THREE.BoxGeometry( 10, 10, 10, 2, 2, 2 );
 		const material = new THREE.MeshNormalMaterial();
 		const material = new THREE.MeshNormalMaterial();
 		const box = new THREE.Mesh( geometry, material );
 		const box = new THREE.Mesh( geometry, material );
 
 

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

@@ -46,7 +46,7 @@
 					for ( let j = 0; j < shapes.length; j ++ ) {
 					for ( let j = 0; j < shapes.length; j ++ ) {
 
 
 						const shape = shapes[ j ];
 						const shape = shapes[ j ];
-						const geometry = new THREE.ShapeBufferGeometry( shape );
+						const geometry = new THREE.ShapeGeometry( shape );
 						const mesh = new THREE.Mesh( geometry, material );
 						const mesh = new THREE.Mesh( geometry, material );
 						group.add( mesh );
 						group.add( mesh );
 
 

+ 40 - 42
docs/list.json

@@ -142,27 +142,27 @@
 			},
 			},
 
 
 			"Geometries": {
 			"Geometries": {
-				"BoxBufferGeometry": "api/en/geometries/BoxBufferGeometry",
-				"CircleBufferGeometry": "api/en/geometries/CircleBufferGeometry",
-				"ConeBufferGeometry": "api/en/geometries/ConeBufferGeometry",
-				"CylinderBufferGeometry": "api/en/geometries/CylinderBufferGeometry",
-				"DodecahedronBufferGeometry": "api/en/geometries/DodecahedronBufferGeometry",
+				"BoxGeometry": "api/en/geometries/BoxGeometry",
+				"CircleGeometry": "api/en/geometries/CircleGeometry",
+				"ConeGeometry": "api/en/geometries/ConeGeometry",
+				"CylinderGeometry": "api/en/geometries/CylinderGeometry",
+				"DodecahedronGeometry": "api/en/geometries/DodecahedronGeometry",
 				"EdgesGeometry": "api/en/geometries/EdgesGeometry",
 				"EdgesGeometry": "api/en/geometries/EdgesGeometry",
-				"ExtrudeBufferGeometry": "api/en/geometries/ExtrudeBufferGeometry",
-				"IcosahedronBufferGeometry": "api/en/geometries/IcosahedronBufferGeometry",
-				"LatheBufferGeometry": "api/en/geometries/LatheBufferGeometry",
-				"OctahedronBufferGeometry": "api/en/geometries/OctahedronBufferGeometry",
-				"ParametricBufferGeometry": "api/en/geometries/ParametricBufferGeometry",
-				"PlaneBufferGeometry": "api/en/geometries/PlaneBufferGeometry",
-				"PolyhedronBufferGeometry": "api/en/geometries/PolyhedronBufferGeometry",
-				"RingBufferGeometry": "api/en/geometries/RingBufferGeometry",
-				"ShapeBufferGeometry": "api/en/geometries/ShapeBufferGeometry",
-				"SphereBufferGeometry": "api/en/geometries/SphereBufferGeometry",
-				"TetrahedronBufferGeometry": "api/en/geometries/TetrahedronBufferGeometry",
-				"TextBufferGeometry": "api/en/geometries/TextBufferGeometry",
-				"TorusBufferGeometry": "api/en/geometries/TorusBufferGeometry",
-				"TorusKnotBufferGeometry": "api/en/geometries/TorusKnotBufferGeometry",
-				"TubeBufferGeometry": "api/en/geometries/TubeBufferGeometry",
+				"ExtrudeGeometry": "api/en/geometries/ExtrudeGeometry",
+				"IcosahedronGeometry": "api/en/geometries/IcosahedronGeometry",
+				"LatheGeometry": "api/en/geometries/LatheGeometry",
+				"OctahedronGeometry": "api/en/geometries/OctahedronGeometry",
+				"ParametricGeometry": "api/en/geometries/ParametricGeometry",
+				"PlaneGeometry": "api/en/geometries/PlaneGeometry",
+				"PolyhedronGeometry": "api/en/geometries/PolyhedronGeometry",
+				"RingGeometry": "api/en/geometries/RingGeometry",
+				"ShapeGeometry": "api/en/geometries/ShapeGeometry",
+				"SphereGeometry": "api/en/geometries/SphereGeometry",
+				"TetrahedronGeometry": "api/en/geometries/TetrahedronGeometry",
+				"TextGeometry": "api/en/geometries/TextGeometry",
+				"TorusGeometry": "api/en/geometries/TorusGeometry",
+				"TorusKnotGeometry": "api/en/geometries/TorusKnotGeometry",
+				"TubeGeometry": "api/en/geometries/TubeGeometry",
 				"WireframeGeometry": "api/en/geometries/WireframeGeometry"
 				"WireframeGeometry": "api/en/geometries/WireframeGeometry"
 			},
 			},
 
 
@@ -352,7 +352,6 @@
 			},
 			},
 
 
 			"Geometries": {
 			"Geometries": {
-				"ConvexBufferGeometry": "examples/en/geometries/ConvexBufferGeometry",
 				"ConvexGeometry": "examples/en/geometries/ConvexGeometry",
 				"ConvexGeometry": "examples/en/geometries/ConvexGeometry",
 				"DecalGeometry": "examples/en/geometries/DecalGeometry"
 				"DecalGeometry": "examples/en/geometries/DecalGeometry"
 			},
 			},
@@ -656,27 +655,27 @@
 			},
 			},
 
 
 			"几何体": {
 			"几何体": {
-				"BoxBufferGeometry": "api/zh/geometries/BoxBufferGeometry",
-				"CircleBufferGeometry": "api/zh/geometries/CircleBufferGeometry",
-				"ConeBufferGeometry": "api/zh/geometries/ConeBufferGeometry",
-				"CylinderBufferGeometry": "api/zh/geometries/CylinderBufferGeometry",
-				"DodecahedronBufferGeometry": "api/zh/geometries/DodecahedronBufferGeometry",
+				"BoxGeometry": "api/zh/geometries/BoxGeometry",
+				"CircleGeometry": "api/zh/geometries/CircleGeometry",
+				"ConeGeometry": "api/zh/geometries/ConeGeometry",
+				"CylinderGeometry": "api/zh/geometries/CylinderGeometry",
+				"DodecahedronGeometry": "api/zh/geometries/DodecahedronGeometry",
 				"EdgesGeometry": "api/zh/geometries/EdgesGeometry",
 				"EdgesGeometry": "api/zh/geometries/EdgesGeometry",
-				"ExtrudeBufferGeometry": "api/zh/geometries/ExtrudeBufferGeometry",
-				"IcosahedronBufferGeometry": "api/zh/geometries/IcosahedronBufferGeometry",
-				"LatheBufferGeometry": "api/zh/geometries/LatheBufferGeometry",
-				"OctahedronBufferGeometry": "api/zh/geometries/OctahedronBufferGeometry",
-				"ParametricBufferGeometry": "api/zh/geometries/ParametricBufferGeometry",
-				"PlaneBufferGeometry": "api/zh/geometries/PlaneBufferGeometry",
-				"PolyhedronBufferGeometry": "api/zh/geometries/PolyhedronBufferGeometry",
-				"RingBufferGeometry": "api/zh/geometries/RingBufferGeometry",
-				"ShapeBufferGeometry": "api/zh/geometries/ShapeBufferGeometry",
-				"SphereBufferGeometry": "api/zh/geometries/SphereBufferGeometry",
-				"TetrahedronBufferGeometry": "api/zh/geometries/TetrahedronBufferGeometry",
-				"TextBufferGeometry": "api/zh/geometries/TextBufferGeometry",
-				"TorusBufferGeometry": "api/zh/geometries/TorusBufferGeometry",
-				"TorusKnotBufferGeometry": "api/zh/geometries/TorusKnotBufferGeometry",
-				"TubeBufferGeometry": "api/zh/geometries/TubeBufferGeometry",
+				"ExtrudeGeometry": "api/zh/geometries/ExtrudeGeometry",
+				"IcosahedronGeometry": "api/zh/geometries/IcosahedronGeometry",
+				"LatheGeometry": "api/zh/geometries/LatheGeometry",
+				"OctahedronGeometry": "api/zh/geometries/OctahedronGeometry",
+				"ParametricGeometry": "api/zh/geometries/ParametricGeometry",
+				"PlaneGeometry": "api/zh/geometries/PlaneGeometry",
+				"PolyhedronGeometry": "api/zh/geometries/PolyhedronGeometry",
+				"RingGeometry": "api/zh/geometries/RingGeometry",
+				"ShapeGeometry": "api/zh/geometries/ShapeGeometry",
+				"SphereGeometry": "api/zh/geometries/SphereGeometry",
+				"TetrahedronGeometry": "api/zh/geometries/TetrahedronGeometry",
+				"TextGeometry": "api/zh/geometries/TextGeometry",
+				"TorusGeometry": "api/zh/geometries/TorusGeometry",
+				"TorusKnotGeometry": "api/zh/geometries/TorusKnotGeometry",
+				"TubeGeometry": "api/zh/geometries/TubeGeometry",
 				"WireframeGeometry": "api/zh/geometries/WireframeGeometry"
 				"WireframeGeometry": "api/zh/geometries/WireframeGeometry"
 			},
 			},
 
 
@@ -866,7 +865,6 @@
 			},
 			},
 
 
 			"几何体": {
 			"几何体": {
-				"ConvexBufferGeometry": "examples/zh/geometries/ConvexBufferGeometry",
 				"ConvexGeometry": "examples/zh/geometries/ConvexGeometry",
 				"ConvexGeometry": "examples/zh/geometries/ConvexGeometry",
 				"DecalGeometry": "examples/zh/geometries/DecalGeometry"
 				"DecalGeometry": "examples/zh/geometries/DecalGeometry"
 			},
 			},

+ 4 - 4
docs/manual/ar/introduction/Creating-a-scene.html

@@ -121,7 +121,7 @@
 		</p>
 		</p>
 
 
 		<code>
 		<code>
-		const geometry = new THREE.BoxBufferGeometry();
+		const geometry = new THREE.BoxGeometry();
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const cube = new THREE.Mesh( geometry, material );
 		const cube = new THREE.Mesh( geometry, material );
 		scene.add( cube );
 		scene.add( cube );
@@ -130,7 +130,7 @@
 		</code>
 		</code>
 
 
 		<p>
 		<p>
-			لكي نقوم بإنشاء مكعب، نحتاج مكون <strong>BoxBufferGeometry</strong>. هذا الأخير مسؤول عن حفض أماكن كل النقاط
+			لكي نقوم بإنشاء مكعب، نحتاج مكون <strong>BoxGeometry</strong>. هذا الأخير مسؤول عن حفض أماكن كل النقاط
 			(<strong>vertices</strong>) و تعبئة كل الأوجه
 			(<strong>vertices</strong>) و تعبئة كل الأوجه
 			(<strong>faces</strong>) المكونة للمكعب. سنقوم بالتعمق في هذا الموضوع مستقبلا.
 			(<strong>faces</strong>) المكونة للمكعب. سنقوم بالتعمق في هذا الموضوع مستقبلا.
 		</p>
 		</p>
@@ -218,7 +218,7 @@
 		</p>
 		</p>
 
 
 		<p>
 		<p>
-			الشفرة البرمجية الكاملة في الأسفل إلى جانب محرر مباشر [link:https://jsfiddle.net/zpcswh8m/ live example].
+			الشفرة البرمجية الكاملة في الأسفل إلى جانب محرر مباشر [link:https://jsfiddle.net/fxurzeb4/ live example].
 			أنت
 			أنت
 			مدعو للعب بالأوامر البرمجية لكي تصبح صورة كيفية عملها أوضح من قبل.
 			مدعو للعب بالأوامر البرمجية لكي تصبح صورة كيفية عملها أوضح من قبل.
 		</p>
 		</p>
@@ -241,7 +241,7 @@
 					renderer.setSize( window.innerWidth, window.innerHeight );
 					renderer.setSize( window.innerWidth, window.innerHeight );
 					document.body.appendChild( renderer.domElement );
 					document.body.appendChild( renderer.domElement );
 
 
-					const geometry = new THREE.BoxBufferGeometry();
+					const geometry = new THREE.BoxGeometry();
 					const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 					const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 					const cube = new THREE.Mesh( geometry, material );
 					const cube = new THREE.Mesh( geometry, material );
 					scene.add( cube );
 					scene.add( cube );

+ 4 - 4
docs/manual/en/introduction/Creating-a-scene.html

@@ -70,7 +70,7 @@
 		<p><em>"That's all good, but where's that cube you promised?"</em> Let's add it now.</p>
 		<p><em>"That's all good, but where's that cube you promised?"</em> Let's add it now.</p>
 
 
 		<code>
 		<code>
-		const geometry = new THREE.BoxBufferGeometry();
+		const geometry = new THREE.BoxGeometry();
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const cube = new THREE.Mesh( geometry, material );
 		const cube = new THREE.Mesh( geometry, material );
 		scene.add( cube );
 		scene.add( cube );
@@ -78,7 +78,7 @@
 		camera.position.z = 5;
 		camera.position.z = 5;
 		</code>
 		</code>
 
 
-		<p>To create a cube, we need a <strong>BoxBufferGeometry</strong>. This is an object that contains all the points (<strong>vertices</strong>) and fill (<strong>faces</strong>) of the cube. We'll explore this more in the future.</p>
+		<p>To create a cube, we need a <strong>BoxGeometry</strong>. This is an object that contains all the points (<strong>vertices</strong>) and fill (<strong>faces</strong>) of the cube. We'll explore this more in the future.</p>
 
 
 		<p>In addition to the geometry, we need a material to color it. Three.js comes with several materials, but we'll stick to the <strong>MeshBasicMaterial</strong> for now. All materials take an object of properties which will be applied to them. To keep things very simple, we only supply a color attribute of <strong>0x00ff00</strong>, which is green. This works the same way that colors work in CSS or Photoshop (<strong>hex colors</strong>).</p>
 		<p>In addition to the geometry, we need a material to color it. Three.js comes with several materials, but we'll stick to the <strong>MeshBasicMaterial</strong> for now. All materials take an object of properties which will be applied to them. To keep things very simple, we only supply a color attribute of <strong>0x00ff00</strong>, which is green. This works the same way that colors work in CSS or Photoshop (<strong>hex colors</strong>).</p>
 
 
@@ -116,7 +116,7 @@
 		<h2>The result</h2>
 		<h2>The result</h2>
 		<p>Congratulations! You have now completed your first three.js application. It's simple, you have to start somewhere.</p>
 		<p>Congratulations! You have now completed your first three.js application. It's simple, you have to start somewhere.</p>
 
 
-		<p>The full code is available below and as an editable [link:https://jsfiddle.net/zpcswh8m/ live example]. Play around with it to get a better understanding of how it works.</p>
+		<p>The full code is available below and as an editable [link:https://jsfiddle.net/fxurzeb4/ live example]. Play around with it to get a better understanding of how it works.</p>
 
 
 		<code>
 		<code>
 		&lt;!DOCTYPE html&gt;
 		&lt;!DOCTYPE html&gt;
@@ -137,7 +137,7 @@
 					renderer.setSize( window.innerWidth, window.innerHeight );
 					renderer.setSize( window.innerWidth, window.innerHeight );
 					document.body.appendChild( renderer.domElement );
 					document.body.appendChild( renderer.domElement );
 
 
-					const geometry = new THREE.BoxBufferGeometry();
+					const geometry = new THREE.BoxGeometry();
 					const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 					const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 					const cube = new THREE.Mesh( geometry, material );
 					const cube = new THREE.Mesh( geometry, material );
 					scene.add( cube );
 					scene.add( cube );

+ 4 - 4
docs/manual/ko/introduction/Creating-a-scene.html

@@ -71,7 +71,7 @@
 		<p><em>"그건 그렇고, 아까 말했던 큐브는 어디에 있죠?"</em> 바로 추가해 봅시다.</p>
 		<p><em>"그건 그렇고, 아까 말했던 큐브는 어디에 있죠?"</em> 바로 추가해 봅시다.</p>
 
 
 		<code>
 		<code>
-		const geometry = new THREE.BoxBufferGeometry();
+		const geometry = new THREE.BoxGeometry();
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const cube = new THREE.Mesh( geometry, material );
 		const cube = new THREE.Mesh( geometry, material );
 		scene.add( cube );
 		scene.add( cube );
@@ -79,7 +79,7 @@
 		camera.position.z = 5;
 		camera.position.z = 5;
 		</code>
 		</code>
 
 
-		<p>큐브를 만드려면, <strong>BoxBufferGeometry</strong>가 필요합니다. 여기에는 큐브에 필요한 모든 꼭짓점 (<strong>vertices</strong>) 와 면(<strong>faces</strong>)이 포함돼 있습니다. 여기에 대해서는 나중에 더 자세히 알아봅시다.</p>
+		<p>큐브를 만드려면, <strong>BoxGeometry</strong>가 필요합니다. 여기에는 큐브에 필요한 모든 꼭짓점 (<strong>vertices</strong>) 와 면(<strong>faces</strong>)이 포함돼 있습니다. 여기에 대해서는 나중에 더 자세히 알아봅시다.</p>
 
 
 		<p>geometry와 더불어, 무언가를 색칠해줄 요소가 필요합니다. Three.js에서는 여러 방법을 고려했지만, 현재로서는<strong>MeshBasicMaterial</strong>을 고수하고자 합니다. 이 속성이 적용된 오브젝트들은 모두 영향을 받을 것입니다. 가장 단순하게 알아볼 수 있도록, 여기에서는 녹색인 <strong>0x00ff00</strong>만을 속성으로 사용하겠습니다. CSS 나 Photoshop에서처럼 (<strong>hex colors</strong>)로 동일하게 작동합니다.</p>
 		<p>geometry와 더불어, 무언가를 색칠해줄 요소가 필요합니다. Three.js에서는 여러 방법을 고려했지만, 현재로서는<strong>MeshBasicMaterial</strong>을 고수하고자 합니다. 이 속성이 적용된 오브젝트들은 모두 영향을 받을 것입니다. 가장 단순하게 알아볼 수 있도록, 여기에서는 녹색인 <strong>0x00ff00</strong>만을 속성으로 사용하겠습니다. CSS 나 Photoshop에서처럼 (<strong>hex colors</strong>)로 동일하게 작동합니다.</p>
 
 
@@ -117,7 +117,7 @@
 		<h2>결과 화면</h2>
 		<h2>결과 화면</h2>
 		<p>축하합니다! 첫 three.js이 완성되었네요. 이제 본격적으로 시작해보면 됩니다.</p>
 		<p>축하합니다! 첫 three.js이 완성되었네요. 이제 본격적으로 시작해보면 됩니다.</p>
 
 
-		<p>전체 코드는 아래에 나와 있고 [link:https://jsfiddle.net/zpcswh8m/ live example]로도 확인해볼 수 있습니다. 잘 살펴보고 어떻게 구동되는지 확인해 보세요.</p>
+		<p>전체 코드는 아래에 나와 있고 [link:https://jsfiddle.net/fxurzeb4/ live example]로도 확인해볼 수 있습니다. 잘 살펴보고 어떻게 구동되는지 확인해 보세요.</p>
 
 
 		<code>
 		<code>
 		&lt;!DOCTYPE html&gt;
 		&lt;!DOCTYPE html&gt;
@@ -139,7 +139,7 @@
 					renderer.setSize( window.innerWidth, window.innerHeight );
 					renderer.setSize( window.innerWidth, window.innerHeight );
 					document.body.appendChild( renderer.domElement );
 					document.body.appendChild( renderer.domElement );
 
 
-					const geometry = new THREE.BoxBufferGeometry();
+					const geometry = new THREE.BoxGeometry();
 					const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 					const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 					const cube = new THREE.Mesh( geometry, material );
 					const cube = new THREE.Mesh( geometry, material );
 					scene.add( cube );
 					scene.add( cube );

+ 4 - 4
docs/manual/zh/introduction/Creating-a-scene.html

@@ -70,7 +70,7 @@
 		<p><em>“嗯,看起来很不错,那你说的那个立方体在哪儿?”</em>接下来,我们就来添加立方体。</p>
 		<p><em>“嗯,看起来很不错,那你说的那个立方体在哪儿?”</em>接下来,我们就来添加立方体。</p>
 
 
 		<code>
 		<code>
-		const geometry = new THREE.BoxBufferGeometry();
+		const geometry = new THREE.BoxGeometry();
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 		const cube = new THREE.Mesh( geometry, material );
 		const cube = new THREE.Mesh( geometry, material );
 		scene.add( cube );
 		scene.add( cube );
@@ -78,7 +78,7 @@
 		camera.position.z = 5;
 		camera.position.z = 5;
 		</code>
 		</code>
 
 
-		<p>要创建一个立方体,我们需要一个<strong>BoxBufferGeometry</strong>(立方体)对象. 这个对象包含了一个立方体中所有的顶点(<strong>vertices</strong>)和面(<strong>faces</strong>)。未来我们将在这方面进行更多的探索。</p>
+		<p>要创建一个立方体,我们需要一个<strong>BoxGeometry</strong>(立方体)对象. 这个对象包含了一个立方体中所有的顶点(<strong>vertices</strong>)和面(<strong>faces</strong>)。未来我们将在这方面进行更多的探索。</p>
 
 
 		<p>接下来,对于这个立方体,我们需要给它一个材质,来让它有颜色。Three.js自带了几种材质,在这里我们使用的是<strong>MeshBasicMaterial</strong>。所有的材质都存有应用于他们的属性的对象。在这里为了简单起见,我们只设置一个color属性,值为<strong>0x00ff00</strong>,也就是绿色。这里所做的事情,和在CSS或者Photoshop中使用十六进制(<strong>hex colors</strong>)颜色格式来设置颜色的方式一致。</p>
 		<p>接下来,对于这个立方体,我们需要给它一个材质,来让它有颜色。Three.js自带了几种材质,在这里我们使用的是<strong>MeshBasicMaterial</strong>。所有的材质都存有应用于他们的属性的对象。在这里为了简单起见,我们只设置一个color属性,值为<strong>0x00ff00</strong>,也就是绿色。这里所做的事情,和在CSS或者Photoshop中使用十六进制(<strong>hex colors</strong>)颜色格式来设置颜色的方式一致。</p>
 
 
@@ -117,7 +117,7 @@
 		<h2>结果</h2>
 		<h2>结果</h2>
 		<p>祝贺你!你现在已经成功完成了你的第一个Three.js应用程序。虽然它很简单,但现在你已经有了一个入门的起点。</p>
 		<p>祝贺你!你现在已经成功完成了你的第一个Three.js应用程序。虽然它很简单,但现在你已经有了一个入门的起点。</p>
 
 
-		<p>下面是完整的代码,可在[link:https://jsfiddle.net/zpcswh8m/ live example]运行、编辑;运行或者修改代码有助于你更好的理解它是如何工作的。</p>
+		<p>下面是完整的代码,可在[link:https://jsfiddle.net/fxurzeb4/ live example]运行、编辑;运行或者修改代码有助于你更好的理解它是如何工作的。</p>
 
 
 		<code>
 		<code>
 		&lt;html&gt;
 		&lt;html&gt;
@@ -137,7 +137,7 @@
 					renderer.setSize( window.innerWidth, window.innerHeight );
 					renderer.setSize( window.innerWidth, window.innerHeight );
 					document.body.appendChild( renderer.domElement );
 					document.body.appendChild( renderer.domElement );
 
 
-					const geometry = new THREE.BoxBufferGeometry();
+					const geometry = new THREE.BoxGeometry();
 					const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 					const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
 					const cube = new THREE.Mesh( geometry, material );
 					const cube = new THREE.Mesh( geometry, material );
 					scene.add( cube );
 					scene.add( cube );

+ 2 - 2
docs/scenes/bones-browser.html

@@ -29,7 +29,7 @@
 			import {
 			import {
 				Bone,
 				Bone,
 				Color,
 				Color,
-				CylinderBufferGeometry,
+				CylinderGeometry,
 				DoubleSide,
 				DoubleSide,
 				Float32BufferAttribute,
 				Float32BufferAttribute,
 				MeshPhongMaterial,
 				MeshPhongMaterial,
@@ -101,7 +101,7 @@
 
 
 			function createGeometry( sizing ) {
 			function createGeometry( sizing ) {
 
 
-				const geometry = new CylinderBufferGeometry(
+				const geometry = new CylinderGeometry(
 					5, // radiusTop
 					5, // radiusTop
 					5, // radiusBottom
 					5, // radiusBottom
 					sizing.height, // height
 					sizing.height, // height

+ 79 - 79
docs/scenes/geometry-browser.html

@@ -27,40 +27,40 @@
 
 
 		<script type="module">
 		<script type="module">
 			import {
 			import {
-				BoxBufferGeometry,
+				BoxGeometry,
 				BufferGeometry,
 				BufferGeometry,
-				CircleBufferGeometry,
+				CircleGeometry,
 				Color,
 				Color,
-				ConeBufferGeometry,
+				ConeGeometry,
 				Curve,
 				Curve,
-				CylinderBufferGeometry,
-				DodecahedronBufferGeometry,
+				CylinderGeometry,
+				DodecahedronGeometry,
 				DoubleSide,
 				DoubleSide,
-				ExtrudeBufferGeometry,
+				ExtrudeGeometry,
 				Float32BufferAttribute,
 				Float32BufferAttribute,
 				FontLoader,
 				FontLoader,
 				Group,
 				Group,
-				IcosahedronBufferGeometry,
-				LatheBufferGeometry,
+				IcosahedronGeometry,
+				LatheGeometry,
 				LineSegments,
 				LineSegments,
 				LineBasicMaterial,
 				LineBasicMaterial,
 				Mesh,
 				Mesh,
 				MeshPhongMaterial,
 				MeshPhongMaterial,
-				OctahedronBufferGeometry,
-				ParametricBufferGeometry,
+				OctahedronGeometry,
+				ParametricGeometry,
 				PerspectiveCamera,
 				PerspectiveCamera,
-				PlaneBufferGeometry,
+				PlaneGeometry,
 				PointLight,
 				PointLight,
-				RingBufferGeometry,
+				RingGeometry,
 				Scene,
 				Scene,
 				Shape,
 				Shape,
-				ShapeBufferGeometry,
-				SphereBufferGeometry,
-				TetrahedronBufferGeometry,
-				TextBufferGeometry,
-				TorusBufferGeometry,
-				TorusKnotBufferGeometry,
-				TubeBufferGeometry,
+				ShapeGeometry,
+				SphereGeometry,
+				TetrahedronGeometry,
+				TextGeometry,
+				TorusGeometry,
+				TorusKnotGeometry,
+				TubeGeometry,
 				Vector2,
 				Vector2,
 				Vector3,
 				Vector3,
 				WireframeGeometry,
 				WireframeGeometry,
@@ -123,7 +123,7 @@
 
 
 			const guis = {
 			const guis = {
 
 
-				BoxBufferGeometry: function ( mesh ) {
+				BoxGeometry: function ( mesh ) {
 
 
 					const data = {
 					const data = {
 						width: 15,
 						width: 15,
@@ -137,14 +137,14 @@
 					function generateGeometry() {
 					function generateGeometry() {
 
 
 						updateGroupGeometry( mesh,
 						updateGroupGeometry( mesh,
-							new BoxBufferGeometry(
+							new BoxGeometry(
 								data.width, data.height, data.depth, data.widthSegments, data.heightSegments, data.depthSegments
 								data.width, data.height, data.depth, data.widthSegments, data.heightSegments, data.depthSegments
 							)
 							)
 						);
 						);
 
 
 					}
 					}
 
 
-					const folder = gui.addFolder( 'THREE.BoxBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.BoxGeometry' );
 
 
 					folder.add( data, 'width', 1, 30 ).onChange( generateGeometry );
 					folder.add( data, 'width', 1, 30 ).onChange( generateGeometry );
 					folder.add( data, 'height', 1, 30 ).onChange( generateGeometry );
 					folder.add( data, 'height', 1, 30 ).onChange( generateGeometry );
@@ -157,7 +157,7 @@
 
 
 				},
 				},
 
 
-				CylinderBufferGeometry: function ( mesh ) {
+				CylinderGeometry: function ( mesh ) {
 
 
 					const data = {
 					const data = {
 						radiusTop: 5,
 						radiusTop: 5,
@@ -173,7 +173,7 @@
 					function generateGeometry() {
 					function generateGeometry() {
 
 
 						updateGroupGeometry( mesh,
 						updateGroupGeometry( mesh,
-							new CylinderBufferGeometry(
+							new CylinderGeometry(
 								data.radiusTop,
 								data.radiusTop,
 								data.radiusBottom,
 								data.radiusBottom,
 								data.height,
 								data.height,
@@ -187,7 +187,7 @@
 
 
 					}
 					}
 
 
-					const folder = gui.addFolder( 'THREE.CylinderBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.CylinderGeometry' );
 
 
 					folder.add( data, 'radiusTop', 0, 30 ).onChange( generateGeometry );
 					folder.add( data, 'radiusTop', 0, 30 ).onChange( generateGeometry );
 					folder.add( data, 'radiusBottom', 0, 30 ).onChange( generateGeometry );
 					folder.add( data, 'radiusBottom', 0, 30 ).onChange( generateGeometry );
@@ -203,7 +203,7 @@
 
 
 				},
 				},
 
 
-				ConeBufferGeometry: function ( mesh ) {
+				ConeGeometry: function ( mesh ) {
 
 
 					const data = {
 					const data = {
 						radius: 5,
 						radius: 5,
@@ -218,7 +218,7 @@
 					function generateGeometry() {
 					function generateGeometry() {
 
 
 						updateGroupGeometry( mesh,
 						updateGroupGeometry( mesh,
-							new ConeBufferGeometry(
+							new ConeGeometry(
 								data.radius,
 								data.radius,
 								data.height,
 								data.height,
 								data.radialSegments,
 								data.radialSegments,
@@ -231,7 +231,7 @@
 
 
 					}
 					}
 
 
-					const folder = gui.addFolder( 'THREE.ConeBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.ConeGeometry' );
 
 
 					folder.add( data, 'radius', 0, 30 ).onChange( generateGeometry );
 					folder.add( data, 'radius', 0, 30 ).onChange( generateGeometry );
 					folder.add( data, 'height', 1, 50 ).onChange( generateGeometry );
 					folder.add( data, 'height', 1, 50 ).onChange( generateGeometry );
@@ -246,7 +246,7 @@
 
 
 				},
 				},
 
 
-				CircleBufferGeometry: function ( mesh ) {
+				CircleGeometry: function ( mesh ) {
 
 
 					const data = {
 					const data = {
 						radius: 10,
 						radius: 10,
@@ -258,14 +258,14 @@
 					function generateGeometry() {
 					function generateGeometry() {
 
 
 						updateGroupGeometry( mesh,
 						updateGroupGeometry( mesh,
-							new CircleBufferGeometry(
+							new CircleGeometry(
 								data.radius, data.segments, data.thetaStart, data.thetaLength
 								data.radius, data.segments, data.thetaStart, data.thetaLength
 							)
 							)
 						);
 						);
 
 
 					}
 					}
 
 
-					const folder = gui.addFolder( 'THREE.CircleBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.CircleGeometry' );
 
 
 					folder.add( data, 'radius', 1, 20 ).onChange( generateGeometry );
 					folder.add( data, 'radius', 1, 20 ).onChange( generateGeometry );
 					folder.add( data, 'segments', 0, 128 ).step( 1 ).onChange( generateGeometry );
 					folder.add( data, 'segments', 0, 128 ).step( 1 ).onChange( generateGeometry );
@@ -276,7 +276,7 @@
 
 
 				},
 				},
 
 
-				DodecahedronBufferGeometry: function ( mesh ) {
+				DodecahedronGeometry: function ( mesh ) {
 
 
 					const data = {
 					const data = {
 						radius: 10,
 						radius: 10,
@@ -286,14 +286,14 @@
 					function generateGeometry() {
 					function generateGeometry() {
 
 
 						updateGroupGeometry( mesh,
 						updateGroupGeometry( mesh,
-							new DodecahedronBufferGeometry(
+							new DodecahedronGeometry(
 								data.radius, data.detail
 								data.radius, data.detail
 							)
 							)
 						);
 						);
 
 
 					}
 					}
 
 
-					const folder = gui.addFolder( 'THREE.DodecahedronBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.DodecahedronGeometry' );
 
 
 					folder.add( data, 'radius', 1, 20 ).onChange( generateGeometry );
 					folder.add( data, 'radius', 1, 20 ).onChange( generateGeometry );
 					folder.add( data, 'detail', 0, 5 ).step( 1 ).onChange( generateGeometry );
 					folder.add( data, 'detail', 0, 5 ).step( 1 ).onChange( generateGeometry );
@@ -302,7 +302,7 @@
 
 
 				},
 				},
 
 
-				IcosahedronBufferGeometry: function ( mesh ) {
+				IcosahedronGeometry: function ( mesh ) {
 
 
 					const data = {
 					const data = {
 						radius: 10,
 						radius: 10,
@@ -312,14 +312,14 @@
 					function generateGeometry() {
 					function generateGeometry() {
 
 
 						updateGroupGeometry( mesh,
 						updateGroupGeometry( mesh,
-							new IcosahedronBufferGeometry(
+							new IcosahedronGeometry(
 								data.radius, data.detail
 								data.radius, data.detail
 							)
 							)
 						);
 						);
 
 
 					}
 					}
 
 
-					const folder = gui.addFolder( 'THREE.IcosahedronBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.IcosahedronGeometry' );
 
 
 					folder.add( data, 'radius', 1, 20 ).onChange( generateGeometry );
 					folder.add( data, 'radius', 1, 20 ).onChange( generateGeometry );
 					folder.add( data, 'detail', 0, 5 ).step( 1 ).onChange( generateGeometry );
 					folder.add( data, 'detail', 0, 5 ).step( 1 ).onChange( generateGeometry );
@@ -328,7 +328,7 @@
 
 
 				},
 				},
 
 
-				LatheBufferGeometry: function ( mesh ) {
+				LatheGeometry: function ( mesh ) {
 
 
 					const points = [];
 					const points = [];
 
 
@@ -346,7 +346,7 @@
 
 
 					function generateGeometry() {
 					function generateGeometry() {
 
 
-						const geometry = new LatheBufferGeometry(
+						const geometry = new LatheGeometry(
 							points, data.segments, data.phiStart, data.phiLength
 							points, data.segments, data.phiStart, data.phiLength
 						);
 						);
 
 
@@ -354,7 +354,7 @@
 
 
 					}
 					}
 
 
-					const folder = gui.addFolder( 'THREE.LatheBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.LatheGeometry' );
 
 
 					folder.add( data, 'segments', 1, 30 ).step( 1 ).onChange( generateGeometry );
 					folder.add( data, 'segments', 1, 30 ).step( 1 ).onChange( generateGeometry );
 					folder.add( data, 'phiStart', 0, twoPi ).onChange( generateGeometry );
 					folder.add( data, 'phiStart', 0, twoPi ).onChange( generateGeometry );
@@ -364,7 +364,7 @@
 
 
 				},
 				},
 
 
-				OctahedronBufferGeometry: function ( mesh ) {
+				OctahedronGeometry: function ( mesh ) {
 
 
 					const data = {
 					const data = {
 						radius: 10,
 						radius: 10,
@@ -374,14 +374,14 @@
 					function generateGeometry() {
 					function generateGeometry() {
 
 
 						updateGroupGeometry( mesh,
 						updateGroupGeometry( mesh,
-							new OctahedronBufferGeometry(
+							new OctahedronGeometry(
 								data.radius, data.detail
 								data.radius, data.detail
 							)
 							)
 						);
 						);
 
 
 					}
 					}
 
 
-					const folder = gui.addFolder( 'THREE.OctahedronBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.OctahedronGeometry' );
 
 
 					folder.add( data, 'radius', 1, 20 ).onChange( generateGeometry );
 					folder.add( data, 'radius', 1, 20 ).onChange( generateGeometry );
 					folder.add( data, 'detail', 0, 5 ).step( 1 ).onChange( generateGeometry );
 					folder.add( data, 'detail', 0, 5 ).step( 1 ).onChange( generateGeometry );
@@ -390,7 +390,7 @@
 
 
 				},
 				},
 
 
-				PlaneBufferGeometry: function ( mesh ) {
+				PlaneGeometry: function ( mesh ) {
 
 
 					const data = {
 					const data = {
 						width: 10,
 						width: 10,
@@ -402,14 +402,14 @@
 					function generateGeometry() {
 					function generateGeometry() {
 
 
 						updateGroupGeometry( mesh,
 						updateGroupGeometry( mesh,
-							new PlaneBufferGeometry(
+							new PlaneGeometry(
 								data.width, data.height, data.widthSegments, data.heightSegments
 								data.width, data.height, data.widthSegments, data.heightSegments
 							)
 							)
 						);
 						);
 
 
 					}
 					}
 
 
-					const folder = gui.addFolder( 'THREE.PlaneBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.PlaneGeometry' );
 
 
 					folder.add( data, 'width', 1, 30 ).onChange( generateGeometry );
 					folder.add( data, 'width', 1, 30 ).onChange( generateGeometry );
 					folder.add( data, 'height', 1, 30 ).onChange( generateGeometry );
 					folder.add( data, 'height', 1, 30 ).onChange( generateGeometry );
@@ -420,7 +420,7 @@
 
 
 				},
 				},
 
 
-				RingBufferGeometry: function ( mesh ) {
+				RingGeometry: function ( mesh ) {
 
 
 					const data = {
 					const data = {
 						innerRadius: 5,
 						innerRadius: 5,
@@ -434,14 +434,14 @@
 					function generateGeometry() {
 					function generateGeometry() {
 
 
 						updateGroupGeometry( mesh,
 						updateGroupGeometry( mesh,
-							new RingBufferGeometry(
+							new RingGeometry(
 								data.innerRadius, data.outerRadius, data.thetaSegments, data.phiSegments, data.thetaStart, data.thetaLength
 								data.innerRadius, data.outerRadius, data.thetaSegments, data.phiSegments, data.thetaStart, data.thetaLength
 							)
 							)
 						);
 						);
 
 
 					}
 					}
 
 
-					const folder = gui.addFolder( 'THREE.RingBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.RingGeometry' );
 
 
 					folder.add( data, 'innerRadius', 1, 30 ).onChange( generateGeometry );
 					folder.add( data, 'innerRadius', 1, 30 ).onChange( generateGeometry );
 					folder.add( data, 'outerRadius', 1, 30 ).onChange( generateGeometry );
 					folder.add( data, 'outerRadius', 1, 30 ).onChange( generateGeometry );
@@ -454,7 +454,7 @@
 
 
 				},
 				},
 
 
-				SphereBufferGeometry: function ( mesh ) {
+				SphereGeometry: function ( mesh ) {
 
 
 					const data = {
 					const data = {
 						radius: 15,
 						radius: 15,
@@ -469,14 +469,14 @@
 					function generateGeometry() {
 					function generateGeometry() {
 
 
 						updateGroupGeometry( mesh,
 						updateGroupGeometry( mesh,
-							new SphereBufferGeometry(
+							new SphereGeometry(
 								data.radius, data.widthSegments, data.heightSegments, data.phiStart, data.phiLength, data.thetaStart, data.thetaLength
 								data.radius, data.widthSegments, data.heightSegments, data.phiStart, data.phiLength, data.thetaStart, data.thetaLength
 							)
 							)
 						);
 						);
 
 
 					}
 					}
 
 
-					const folder = gui.addFolder( 'THREE.SphereBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.SphereGeometry' );
 
 
 					folder.add( data, 'radius', 1, 30 ).onChange( generateGeometry );
 					folder.add( data, 'radius', 1, 30 ).onChange( generateGeometry );
 					folder.add( data, 'widthSegments', 3, 32 ).step( 1 ).onChange( generateGeometry );
 					folder.add( data, 'widthSegments', 3, 32 ).step( 1 ).onChange( generateGeometry );
@@ -490,7 +490,7 @@
 
 
 				},
 				},
 
 
-				TetrahedronBufferGeometry: function ( mesh ) {
+				TetrahedronGeometry: function ( mesh ) {
 
 
 					const data = {
 					const data = {
 						radius: 10,
 						radius: 10,
@@ -500,14 +500,14 @@
 					function generateGeometry() {
 					function generateGeometry() {
 
 
 						updateGroupGeometry( mesh,
 						updateGroupGeometry( mesh,
-							new TetrahedronBufferGeometry(
+							new TetrahedronGeometry(
 								data.radius, data.detail
 								data.radius, data.detail
 							)
 							)
 						);
 						);
 
 
 					}
 					}
 
 
-					const folder = gui.addFolder( 'THREE.TetrahedronBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.TetrahedronGeometry' );
 
 
 					folder.add( data, 'radius', 1, 20 ).onChange( generateGeometry );
 					folder.add( data, 'radius', 1, 20 ).onChange( generateGeometry );
 					folder.add( data, 'detail', 0, 5 ).step( 1 ).onChange( generateGeometry );
 					folder.add( data, 'detail', 0, 5 ).step( 1 ).onChange( generateGeometry );
@@ -516,10 +516,10 @@
 
 
 				},
 				},
 
 
-				TextBufferGeometry: function ( mesh ) {
+				TextGeometry: function ( mesh ) {
 
 
 					const data = {
 					const data = {
-						text: 'TextBufferGeometry',
+						text: 'TextGeometry',
 						size: 5,
 						size: 5,
 						height: 2,
 						height: 2,
 						curveSegments: 12,
 						curveSegments: 12,
@@ -548,7 +548,7 @@
 						const loader = new FontLoader();
 						const loader = new FontLoader();
 						loader.load( '../../examples/fonts/' + data.font + '_' + data.weight + '.typeface.json', function ( font ) {
 						loader.load( '../../examples/fonts/' + data.font + '_' + data.weight + '.typeface.json', function ( font ) {
 
 
-							const geometry = new TextBufferGeometry( data.text, {
+							const geometry = new TextGeometry( data.text, {
 								font: font,
 								font: font,
 								size: data.size,
 								size: data.size,
 								height: data.height,
 								height: data.height,
@@ -570,7 +570,7 @@
 					//Hide the wireframe
 					//Hide the wireframe
 					mesh.children[ 0 ].visible = false;
 					mesh.children[ 0 ].visible = false;
 
 
-					const folder = gui.addFolder( 'THREE.TextBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.TextGeometry' );
 
 
 					folder.add( data, 'text' ).onChange( generateGeometry );
 					folder.add( data, 'text' ).onChange( generateGeometry );
 					folder.add( data, 'size', 1, 30 ).onChange( generateGeometry );
 					folder.add( data, 'size', 1, 30 ).onChange( generateGeometry );
@@ -588,7 +588,7 @@
 
 
 				},
 				},
 
 
-				TorusBufferGeometry: function ( mesh ) {
+				TorusGeometry: function ( mesh ) {
 
 
 					const data = {
 					const data = {
 						radius: 10,
 						radius: 10,
@@ -601,14 +601,14 @@
 					function generateGeometry() {
 					function generateGeometry() {
 
 
 						updateGroupGeometry( mesh,
 						updateGroupGeometry( mesh,
-							new TorusBufferGeometry(
+							new TorusGeometry(
 								data.radius, data.tube, data.radialSegments, data.tubularSegments, data.arc
 								data.radius, data.tube, data.radialSegments, data.tubularSegments, data.arc
 							)
 							)
 						);
 						);
 
 
 					}
 					}
 
 
-					const folder = gui.addFolder( 'THREE.TorusBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.TorusGeometry' );
 
 
 					folder.add( data, 'radius', 1, 20 ).onChange( generateGeometry );
 					folder.add( data, 'radius', 1, 20 ).onChange( generateGeometry );
 					folder.add( data, 'tube', 0.1, 10 ).onChange( generateGeometry );
 					folder.add( data, 'tube', 0.1, 10 ).onChange( generateGeometry );
@@ -620,7 +620,7 @@
 
 
 				},
 				},
 
 
-				TorusKnotBufferGeometry: function ( mesh ) {
+				TorusKnotGeometry: function ( mesh ) {
 
 
 					const data = {
 					const data = {
 						radius: 10,
 						radius: 10,
@@ -634,7 +634,7 @@
 					function generateGeometry() {
 					function generateGeometry() {
 
 
 						updateGroupGeometry( mesh,
 						updateGroupGeometry( mesh,
-							new TorusKnotBufferGeometry(
+							new TorusKnotGeometry(
 								data.radius, data.tube, data.tubularSegments, data.radialSegments,
 								data.radius, data.tube, data.tubularSegments, data.radialSegments,
 								data.p, data.q
 								data.p, data.q
 							)
 							)
@@ -642,7 +642,7 @@
 
 
 					}
 					}
 
 
-					const folder = gui.addFolder( 'THREE.TorusKnotBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.TorusKnotGeometry' );
 
 
 					folder.add( data, 'radius', 1, 20 ).onChange( generateGeometry );
 					folder.add( data, 'radius', 1, 20 ).onChange( generateGeometry );
 					folder.add( data, 'tube', 0.1, 10 ).onChange( generateGeometry );
 					folder.add( data, 'tube', 0.1, 10 ).onChange( generateGeometry );
@@ -655,7 +655,7 @@
 
 
 				},
 				},
 
 
-				ParametricBufferGeometry: function ( mesh ) {
+				ParametricGeometry: function ( mesh ) {
 
 
 					const data = {
 					const data = {
 						slices: 25,
 						slices: 25,
@@ -665,12 +665,12 @@
 					function generateGeometry() {
 					function generateGeometry() {
 
 
 						updateGroupGeometry( mesh,
 						updateGroupGeometry( mesh,
-							new ParametricBufferGeometry( ParametricGeometries.klein, data.slices, data.stacks )
+							new ParametricGeometry( ParametricGeometries.klein, data.slices, data.stacks )
 						);
 						);
 
 
 					}
 					}
 
 
-					const folder = gui.addFolder( 'THREE.ParametricBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.ParametricGeometry' );
 
 
 					folder.add( data, 'slices', 1, 100 ).step( 1 ).onChange( generateGeometry );
 					folder.add( data, 'slices', 1, 100 ).step( 1 ).onChange( generateGeometry );
 					folder.add( data, 'stacks', 1, 100 ).step( 1 ).onChange( generateGeometry );
 					folder.add( data, 'stacks', 1, 100 ).step( 1 ).onChange( generateGeometry );
@@ -679,7 +679,7 @@
 
 
 				},
 				},
 
 
-				TubeBufferGeometry: function ( mesh ) {
+				TubeGeometry: function ( mesh ) {
 
 
 					const data = {
 					const data = {
 						segments: 20,
 						segments: 20,
@@ -692,12 +692,12 @@
 					function generateGeometry() {
 					function generateGeometry() {
 
 
 						updateGroupGeometry( mesh,
 						updateGroupGeometry( mesh,
-							new TubeBufferGeometry( path, data.segments, data.radius, data.radialSegments, false )
+							new TubeGeometry( path, data.segments, data.radius, data.radialSegments, false )
 						);
 						);
 
 
 					}
 					}
 
 
-					const folder = gui.addFolder( 'THREE.TubeBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.TubeGeometry' );
 
 
 					folder.add( data, 'segments', 1, 100 ).step( 1 ).onChange( generateGeometry );
 					folder.add( data, 'segments', 1, 100 ).step( 1 ).onChange( generateGeometry );
 					folder.add( data, 'radius', 1, 10 ).onChange( generateGeometry );
 					folder.add( data, 'radius', 1, 10 ).onChange( generateGeometry );
@@ -707,7 +707,7 @@
 
 
 				},
 				},
 
 
-				ShapeBufferGeometry: function ( mesh ) {
+				ShapeGeometry: function ( mesh ) {
 
 
 					const data = {
 					const data = {
 						segments: 12
 						segments: 12
@@ -715,21 +715,21 @@
 
 
 					function generateGeometry() {
 					function generateGeometry() {
 
 
-						const geometry = new ShapeBufferGeometry( heartShape, data.segments );
+						const geometry = new ShapeGeometry( heartShape, data.segments );
 						geometry.center();
 						geometry.center();
 
 
 						updateGroupGeometry( mesh, geometry );
 						updateGroupGeometry( mesh, geometry );
 
 
 					}
 					}
 
 
-					const folder = gui.addFolder( 'THREE.ShapeBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.ShapeGeometry' );
 					folder.add( data, 'segments', 1, 100 ).step( 1 ).onChange( generateGeometry );
 					folder.add( data, 'segments', 1, 100 ).step( 1 ).onChange( generateGeometry );
 
 
 					generateGeometry();
 					generateGeometry();
 
 
 				},
 				},
 
 
-				ExtrudeBufferGeometry: function ( mesh ) {
+				ExtrudeGeometry: function ( mesh ) {
 
 
 					const data = {
 					const data = {
 						steps: 2,
 						steps: 2,
@@ -752,14 +752,14 @@
 
 
 					function generateGeometry() {
 					function generateGeometry() {
 
 
-						const geometry = new ExtrudeBufferGeometry( shape, data );
+						const geometry = new ExtrudeGeometry( shape, data );
 						geometry.center();
 						geometry.center();
 
 
 						updateGroupGeometry( mesh, geometry );
 						updateGroupGeometry( mesh, geometry );
 
 
 					}
 					}
 
 
-					const folder = gui.addFolder( 'THREE.ExtrudeBufferGeometry' );
+					const folder = gui.addFolder( 'THREE.ExtrudeGeometry' );
 
 
 					folder.add( data, 'steps', 1, 10 ).step( 1 ).onChange( generateGeometry );
 					folder.add( data, 'steps', 1, 10 ).step( 1 ).onChange( generateGeometry );
 					folder.add( data, 'depth', 1, 20 ).onChange( generateGeometry );
 					folder.add( data, 'depth', 1, 20 ).onChange( generateGeometry );
@@ -776,7 +776,7 @@
 
 
 			function chooseFromHash( mesh ) {
 			function chooseFromHash( mesh ) {
 
 
-				const selectedGeometry = window.location.hash.substring( 1 ) || 'TorusBufferGeometry';
+				const selectedGeometry = window.location.hash.substring( 1 ) || 'TorusGeometry';
 
 
 				if ( guis[ selectedGeometry ] !== undefined ) {
 				if ( guis[ selectedGeometry ] !== undefined ) {
 
 
@@ -784,7 +784,7 @@
 
 
 				}
 				}
 
 
-				if ( selectedGeometry === 'TextBufferGeometry' ) {
+				if ( selectedGeometry === 'TextGeometry' ) {
 
 
 					return { fixed: true };
 					return { fixed: true };
 
 

+ 2 - 2
docs/scenes/material-browser.html

@@ -56,7 +56,7 @@
 				RGBFormat,
 				RGBFormat,
 				Scene,
 				Scene,
 				TextureLoader,
 				TextureLoader,
-				TorusKnotBufferGeometry,
+				TorusKnotGeometry,
 				WebGLRenderer
 				WebGLRenderer
 			} from "../../build/three.module.js";
 			} from "../../build/three.module.js";
 
 
@@ -764,7 +764,7 @@
 
 
 			guiScene( gui, scene, camera );
 			guiScene( gui, scene, camera );
 
 
-			let geometry = new TorusKnotBufferGeometry( 10, 3, 100, 16 );
+			let geometry = new TorusKnotGeometry( 10, 3, 100, 16 );
 			geometry = geometry.toNonIndexed();
 			geometry = geometry.toNonIndexed();
 
 
 			generateVertexColors( geometry );
 			generateVertexColors( geometry );

+ 5 - 3
examples/js/geometries/ConvexGeometry.js

@@ -1,4 +1,6 @@
-THREE.ConvexBufferGeometry = function ( points ) {
+// ConvexGeometry
+
+THREE.ConvexGeometry = function ( points ) {
 
 
 	THREE.BufferGeometry.call( this );
 	THREE.BufferGeometry.call( this );
 
 
@@ -46,5 +48,5 @@ THREE.ConvexBufferGeometry = function ( points ) {
 
 
 };
 };
 
 
-THREE.ConvexBufferGeometry.prototype = Object.create( THREE.BufferGeometry.prototype );
-THREE.ConvexBufferGeometry.prototype.constructor = THREE.ConvexBufferGeometry;
+THREE.ConvexGeometry.prototype = Object.create( THREE.BufferGeometry.prototype );
+THREE.ConvexGeometry.prototype.constructor = THREE.ConvexGeometry;

+ 3 - 3
examples/js/misc/ConvexObjectBreaker.js

@@ -16,7 +16,7 @@
  *  - Vertex normals must be planar (not smoothed)
  *  - Vertex normals must be planar (not smoothed)
  *
  *
  *  - The geometry must be convex (this is not checked in the library). You can create convex
  *  - The geometry must be convex (this is not checked in the library). You can create convex
- *  geometries with THREE.ConvexBufferGeometry. The BoxBufferGeometry, SphereBufferGeometry and other convex primitives
+ *  geometries with THREE.ConvexGeometry. The BoxBufferGeometry, SphereBufferGeometry and other convex primitives
  *  can also be used.
  *  can also be used.
  *
  *
  * Note: This lib adds member variables to object's userData member (see prepareBreakableObject function)
  * Note: This lib adds member variables to object's userData member (see prepareBreakableObject function)
@@ -418,7 +418,7 @@ THREE.ConvexObjectBreaker.prototype = {
 
 
 		if ( numPoints1 > 4 ) {
 		if ( numPoints1 > 4 ) {
 
 
-			object1 = new THREE.Mesh( new THREE.ConvexBufferGeometry( points1 ), object.material );
+			object1 = new THREE.Mesh( new THREE.ConvexGeometry( points1 ), object.material );
 			object1.position.copy( this.tempCM1 );
 			object1.position.copy( this.tempCM1 );
 			object1.quaternion.copy( object.quaternion );
 			object1.quaternion.copy( object.quaternion );
 
 
@@ -430,7 +430,7 @@ THREE.ConvexObjectBreaker.prototype = {
 
 
 		if ( numPoints2 > 4 ) {
 		if ( numPoints2 > 4 ) {
 
 
-			object2 = new THREE.Mesh( new THREE.ConvexBufferGeometry( points2 ), object.material );
+			object2 = new THREE.Mesh( new THREE.ConvexGeometry( points2 ), object.material );
 			object2.position.copy( this.tempCM2 );
 			object2.position.copy( this.tempCM2 );
 			object2.quaternion.copy( object.quaternion );
 			object2.quaternion.copy( object.quaternion );
 
 

+ 1 - 8
examples/jsm/geometries/ConvexGeometry.d.ts

@@ -1,16 +1,9 @@
 import {
 import {
 	BufferGeometry,
 	BufferGeometry,
-	Geometry,
 	Vector3
 	Vector3
 } from '../../../src/Three';
 } from '../../../src/Three';
 
 
-export class ConvexGeometry extends Geometry {
-
-	constructor( points: Vector3[] );
-
-}
-
-export class ConvexBufferGeometry extends BufferGeometry {
+export class ConvexGeometry extends BufferGeometry {
 
 
 	constructor( points: Vector3[] );
 	constructor( points: Vector3[] );
 
 

+ 6 - 4
examples/jsm/geometries/ConvexGeometry.js

@@ -4,7 +4,9 @@ import {
 } from '../../../build/three.module.js';
 } from '../../../build/three.module.js';
 import { ConvexHull } from '../math/ConvexHull.js';
 import { ConvexHull } from '../math/ConvexHull.js';
 
 
-var ConvexBufferGeometry = function ( points ) {
+// ConvexGeometry
+
+var ConvexGeometry = function ( points ) {
 
 
 	BufferGeometry.call( this );
 	BufferGeometry.call( this );
 
 
@@ -52,7 +54,7 @@ var ConvexBufferGeometry = function ( points ) {
 
 
 };
 };
 
 
-ConvexBufferGeometry.prototype = Object.create( BufferGeometry.prototype );
-ConvexBufferGeometry.prototype.constructor = ConvexBufferGeometry;
+ConvexGeometry.prototype = Object.create( BufferGeometry.prototype );
+ConvexGeometry.prototype.constructor = ConvexGeometry;
 
 
-export { ConvexBufferGeometry };
+export { ConvexGeometry };

+ 2 - 2
examples/jsm/loaders/KTX2Loader.js

@@ -524,8 +524,8 @@ class KTX2Container {
 
 
 		for ( var level = 0; level < this.header.levelCount; level ++ ) {
 		for ( var level = 0; level < this.header.levelCount; level ++ ) {
 
 
-			var levelWidth = Math.ceil( width / Math.pow( 2, level ) );
-			var levelHeight = Math.ceil( height / Math.pow( 2, level ) );
+			var levelWidth = Math.max( 1, Math.floor( width / Math.pow( 2, level ) ) );
+			var levelHeight = Math.max( 1, Math.floor( height / Math.pow( 2, level ) ) );
 
 
 			var numImagesInLevel = 1; // TODO(donmccurdy): Support cubemaps, arrays and 3D.
 			var numImagesInLevel = 1; // TODO(donmccurdy): Support cubemaps, arrays and 3D.
 			var imageOffsetInLevel = 0;
 			var imageOffsetInLevel = 0;

+ 4 - 4
examples/jsm/misc/ConvexObjectBreaker.js

@@ -4,7 +4,7 @@ import {
 	Plane,
 	Plane,
 	Vector3
 	Vector3
 } from '../../../build/three.module.js';
 } from '../../../build/three.module.js';
-import { ConvexBufferGeometry } from '../geometries/ConvexGeometry.js';
+import { ConvexGeometry } from '../geometries/ConvexGeometry.js';
 
 
 /**
 /**
  * @fileoverview This class can be used to subdivide a convex Geometry object into pieces.
  * @fileoverview This class can be used to subdivide a convex Geometry object into pieces.
@@ -24,7 +24,7 @@ import { ConvexBufferGeometry } from '../geometries/ConvexGeometry.js';
  *  - Vertex normals must be planar (not smoothed)
  *  - Vertex normals must be planar (not smoothed)
  *
  *
  *  - The geometry must be convex (this is not checked in the library). You can create convex
  *  - The geometry must be convex (this is not checked in the library). You can create convex
- *  geometries with ConvexBufferGeometry. The BoxBufferGeometry, SphereBufferGeometry and other convex primitives
+ *  geometries with ConvexGeometry. The BoxBufferGeometry, SphereBufferGeometry and other convex primitives
  *  can also be used.
  *  can also be used.
  *
  *
  * Note: This lib adds member variables to object's userData member (see prepareBreakableObject function)
  * Note: This lib adds member variables to object's userData member (see prepareBreakableObject function)
@@ -426,7 +426,7 @@ ConvexObjectBreaker.prototype = {
 
 
 		if ( numPoints1 > 4 ) {
 		if ( numPoints1 > 4 ) {
 
 
-			object1 = new Mesh( new ConvexBufferGeometry( points1 ), object.material );
+			object1 = new Mesh( new ConvexGeometry( points1 ), object.material );
 			object1.position.copy( this.tempCM1 );
 			object1.position.copy( this.tempCM1 );
 			object1.quaternion.copy( object.quaternion );
 			object1.quaternion.copy( object.quaternion );
 
 
@@ -438,7 +438,7 @@ ConvexObjectBreaker.prototype = {
 
 
 		if ( numPoints2 > 4 ) {
 		if ( numPoints2 > 4 ) {
 
 
-			object2 = new Mesh( new ConvexBufferGeometry( points2 ), object.material );
+			object2 = new Mesh( new ConvexGeometry( points2 ), object.material );
 			object2.position.copy( this.tempCM2 );
 			object2.position.copy( this.tempCM2 );
 			object2.quaternion.copy( object.quaternion );
 			object2.quaternion.copy( object.quaternion );
 
 

+ 2 - 2
examples/jsm/physics/AmmoPhysics.js

@@ -28,7 +28,7 @@ async function AmmoPhysics() {
 
 
 		// TODO change type to is*
 		// TODO change type to is*
 
 
-		if ( geometry.type === 'BoxBufferGeometry' ) {
+		if ( geometry.type === 'BoxGeometry' ) {
 
 
 			const sx = parameters.width !== undefined ? parameters.width / 2 : 0.5;
 			const sx = parameters.width !== undefined ? parameters.width / 2 : 0.5;
 			const sy = parameters.height !== undefined ? parameters.height / 2 : 0.5;
 			const sy = parameters.height !== undefined ? parameters.height / 2 : 0.5;
@@ -39,7 +39,7 @@ async function AmmoPhysics() {
 
 
 			return shape;
 			return shape;
 
 
-		} else if ( geometry.type === 'SphereBufferGeometry' || geometry.type === 'IcosahedronBufferGeometry' ) {
+		} else if ( geometry.type === 'SphereGeometry' || geometry.type === 'IcosahedronGeometry' ) {
 
 
 			const radius = parameters.radius !== undefined ? parameters.radius : 1;
 			const radius = parameters.radius !== undefined ? parameters.radius : 1;
 
 

+ 2 - 2
examples/physics_ammo_break.html

@@ -24,7 +24,7 @@
 
 
 		import { OrbitControls } from './jsm/controls/OrbitControls.js';
 		import { OrbitControls } from './jsm/controls/OrbitControls.js';
 		import { ConvexObjectBreaker } from './jsm/misc/ConvexObjectBreaker.js';
 		import { ConvexObjectBreaker } from './jsm/misc/ConvexObjectBreaker.js';
-		import { ConvexBufferGeometry } from './jsm/geometries/ConvexGeometry.js';
+		import { ConvexGeometry } from './jsm/geometries/ConvexGeometry.js';
 
 
 		// - Global variables -
 		// - Global variables -
 
 
@@ -236,7 +236,7 @@
 			mountainPoints.push( new THREE.Vector3( mountainHalfExtents.x, - mountainHalfExtents.y, - mountainHalfExtents.z ) );
 			mountainPoints.push( new THREE.Vector3( mountainHalfExtents.x, - mountainHalfExtents.y, - mountainHalfExtents.z ) );
 			mountainPoints.push( new THREE.Vector3( - mountainHalfExtents.x, - mountainHalfExtents.y, - mountainHalfExtents.z ) );
 			mountainPoints.push( new THREE.Vector3( - mountainHalfExtents.x, - mountainHalfExtents.y, - mountainHalfExtents.z ) );
 			mountainPoints.push( new THREE.Vector3( 0, mountainHalfExtents.y, 0 ) );
 			mountainPoints.push( new THREE.Vector3( 0, mountainHalfExtents.y, 0 ) );
-			const mountain = new THREE.Mesh( new ConvexBufferGeometry( mountainPoints ), createMaterial( 0xB03814 ) );
+			const mountain = new THREE.Mesh( new ConvexGeometry( mountainPoints ), createMaterial( 0xB03814 ) );
 			mountain.position.copy( pos );
 			mountain.position.copy( pos );
 			mountain.quaternion.copy( quat );
 			mountain.quaternion.copy( quat );
 			convexBreaker.prepareBreakableObject( mountain, mountainMass, new THREE.Vector3(), new THREE.Vector3(), true );
 			convexBreaker.prepareBreakableObject( mountain, mountainMass, new THREE.Vector3(), new THREE.Vector3(), true );

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