فهرست منبع

Docs: Clean up. (#25473)

Michael Herzog 2 سال پیش
والد
کامیت
55ac904a69
59فایلهای تغییر یافته به همراه402 افزوده شده و 2404 حذف شده
  1. 1 1
      docs/examples/en/loaders/MMDLoader.html
  2. 11 0
      docs/examples/ko/controls/DragControls.html
  3. 11 0
      docs/examples/ko/controls/FirstPersonControls.html
  4. 11 0
      docs/examples/ko/controls/FlyControls.html
  5. 11 0
      docs/examples/ko/controls/OrbitControls.html
  6. 11 0
      docs/examples/ko/controls/PointerLockControls.html
  7. 11 0
      docs/examples/ko/controls/TrackballControls.html
  8. 11 0
      docs/examples/ko/controls/TransformControls.html
  9. 0 172
      docs/examples/zh/animations/CCDIKSolver.html
  10. 0 172
      docs/examples/zh/animations/MMDAnimationHelper.html
  11. 0 114
      docs/examples/zh/animations/MMDPhysics.html
  12. 11 0
      docs/examples/zh/controls/DragControls.html
  13. 11 0
      docs/examples/zh/controls/FirstPersonControls.html
  14. 11 0
      docs/examples/zh/controls/FlyControls.html
  15. 11 0
      docs/examples/zh/controls/OrbitControls.html
  16. 11 0
      docs/examples/zh/controls/PointerLockControls.html
  17. 11 0
      docs/examples/zh/controls/TrackballControls.html
  18. 11 0
      docs/examples/zh/controls/TransformControls.html
  19. 0 82
      docs/examples/zh/exporters/ColladaExporter.html
  20. 0 144
      docs/examples/zh/exporters/GLTFExporter.html
  21. 0 65
      docs/examples/zh/exporters/PLYExporter.html
  22. 11 0
      docs/examples/zh/geometries/ConvexGeometry.html
  23. 11 0
      docs/examples/zh/geometries/DecalGeometry.html
  24. 8 13
      docs/examples/zh/geometries/ParametricGeometry.html
  25. 8 13
      docs/examples/zh/geometries/TextGeometry.html
  26. 11 0
      docs/examples/zh/helpers/LightProbeHelper.html
  27. 11 0
      docs/examples/zh/helpers/PositionalAudioHelper.html
  28. 11 0
      docs/examples/zh/helpers/RectAreaLightHelper.html
  29. 11 0
      docs/examples/zh/helpers/VertexNormalsHelper.html
  30. 0 82
      docs/examples/zh/helpers/VertexTangentsHelper.html
  31. 11 0
      docs/examples/zh/lights/LightProbeGenerator.html
  32. 0 149
      docs/examples/zh/loaders/DRACOLoader.html
  33. 11 0
      docs/examples/zh/loaders/FontLoader.html
  34. 12 0
      docs/examples/zh/loaders/GLTFLoader.html
  35. 12 1
      docs/examples/zh/loaders/MMDLoader.html
  36. 11 0
      docs/examples/zh/loaders/MTLLoader.html
  37. 11 0
      docs/examples/zh/loaders/OBJLoader.html
  38. 11 0
      docs/examples/zh/loaders/PCDLoader.html
  39. 0 99
      docs/examples/zh/loaders/PDBLoader.html
  40. 0 107
      docs/examples/zh/loaders/PRWMLoader.html
  41. 0 123
      docs/examples/zh/loaders/SVGLoader.html
  42. 0 92
      docs/examples/zh/loaders/TGALoader.html
  43. 0 127
      docs/examples/zh/math/Lut.html
  44. 0 84
      docs/examples/zh/math/MeshSurfaceSampler.html
  45. 0 174
      docs/examples/zh/math/OBB.html
  46. 0 218
      docs/examples/zh/math/convexhull/ConvexHull.html
  47. 0 97
      docs/examples/zh/math/convexhull/Face.html
  48. 0 83
      docs/examples/zh/math/convexhull/HalfEdge.html
  49. 0 103
      docs/examples/zh/math/convexhull/VertexList.html
  50. 0 55
      docs/examples/zh/math/convexhull/VertexNode.html
  51. 9 0
      docs/examples/zh/objects/Lensflare.html
  52. 11 0
      docs/examples/zh/postprocessing/EffectComposer.html
  53. 11 0
      docs/examples/zh/renderers/CSS2DRenderer.html
  54. 11 0
      docs/examples/zh/renderers/CSS3DRenderer.html
  55. 11 0
      docs/examples/zh/renderers/SVGRenderer.html
  56. 10 0
      docs/examples/zh/utils/BufferGeometryUtils.html
  57. 10 0
      docs/examples/zh/utils/SceneUtils.html
  58. 11 0
      docs/examples/zh/utils/SkeletonUtils.html
  59. 2 34
      docs/list.json

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

@@ -15,7 +15,7 @@
 		[name] creates Three.js Objects from MMD resources as PMD, PMX, VMD, and VPD files.
 		See [page:MMDAnimationHelper] for MMD animation handling as IK, Grant, and Physics.<br /><br />
 
-		If you want raw content of MMD resources, use .loadPMD/PMX/VMD/VPD methods.
+		If you want raw content of MMD resources, use .loadPMD/PMX/VMD/VPD methods.</p>
 
 		<h2>Import</h2>
 

+ 11 - 0
docs/examples/ko/controls/DragControls.html

@@ -15,6 +15,17 @@
 		해당 클래스는 드래그 앤 드롭 상호작용에 대해 사용 됩니다.
 		</p>
 
+		<h2>수입</h2>
+
+		<p>
+			[name] 는 애드온이며 명시적으로 가져와야 합니다.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { DragControls } from 'three/addons/controls/DragControls.js';
+		</code>
+
 		<h2>코드 예시</h2>
 
 		<code>

+ 11 - 0
docs/examples/ko/controls/FirstPersonControls.html

@@ -14,6 +14,17 @@
 			해당 클래스는 [page:FlyControls] 의 대안적인 구현 방법입니다.
 		</p>
 
+		<h2>수입</h2>
+
+		<p>
+			[name] 는 애드온이며 명시적으로 가져와야 합니다.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { FirstPersonControls } from 'three/addons/controls/FirstPersonControls.js';
+		</code>
+
 		<h2>예시</h2>
 
 		<p>[example:webgl_geometry_terrain webgl / geometry / terrain ]</p>

+ 11 - 0
docs/examples/ko/controls/FlyControls.html

@@ -15,6 +15,17 @@
 	
 		</p>
 
+		<h2>수입</h2>
+
+		<p>
+			[name] 는 애드온이며 명시적으로 가져와야 합니다.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { FlyControls } from 'three/addons/controls/FlyControls.js';
+		</code>
+
 		<h2>예시</h2>
 
 		<p>[example:misc_controls_fly misc / controls / fly ]</p>

+ 11 - 0
docs/examples/ko/controls/OrbitControls.html

@@ -16,6 +16,17 @@
 
 		</p>
 
+		<h2>수입</h2>
+
+		<p>
+			[name] 는 애드온이며 명시적으로 가져와야 합니다.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { OrbitControls } from 'three/addons/controls/OrbitControls.js';
+		</code>
+
 		<h2>코드 예시</h2>
 
 		<code>

+ 11 - 0
docs/examples/ko/controls/PointerLockControls.html

@@ -15,6 +15,17 @@
 		해당 클래스의 구현은 [link:https://developer.mozilla.org/en-US/docs/Web/API/Pointer_Lock_API Pointer Lock API] 를 기반으로 합니다. [name] 은 1 인칭 3D 게임을 위한 완벽한 선택입니다.
 		</p>
 
+		<h2>수입</h2>
+
+		<p>
+			[name] 는 애드온이며 명시적으로 가져와야 합니다.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { PointerLockControls } from 'three/addons/controls/PointerLockControls.js';
+		</code>
+
 		<h2>Code Example</h2>
 
 		<code>

+ 11 - 0
docs/examples/ko/controls/TrackballControls.html

@@ -18,6 +18,17 @@
 			</p>
 		</p>
 
+		<h2>수입</h2>
+
+		<p>
+			[name] 는 애드온이며 명시적으로 가져와야 합니다.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { TrackballControls } from 'three/addons/controls/TrackballControls.js';
+		</code>
+
 		<h2>예시</h2>
 
 		<p>[example:misc_controls_trackball misc / controls / trackball ]</p>

+ 11 - 0
docs/examples/ko/controls/TransformControls.html

@@ -19,6 +19,17 @@
 
 		</p>
 
+		<h2>수입</h2>
+
+		<p>
+			[name] 는 애드온이며 명시적으로 가져와야 합니다.
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { TransformControls } from 'three/addons/controls/TransformControls.js';
+		</code>
+
 		<h2>예시</h2>
 
 		<p>[example:misc_controls_transform misc / controls / transform ]</p>

+ 0 - 172
docs/examples/zh/animations/CCDIKSolver.html

@@ -1,172 +0,0 @@
-<!DOCTYPE html>
-<html lang="zh">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../" />
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>[name]</h1>
-
-		<p class="desc"> A solver for IK with <a href="https://sites.google.com/site/auraliusproject/ccd-algorithm"><em>CCD Algorithm</em></a>. <br /><br />
-		[name] solves Inverse Kinematics Problem with CCD Algorithm.
-		[name] is designed to work with [page:SkinnedMesh] but also can be used with [page:MMDLoader] or [page:GLTFLoader] skeleton.
-		</p>
-
-		<iframe id="scene" src="scenes/ccdiksolver-browser.html"></iframe>
-
-		<h2>代码示例</h2>
-
-		<code>
-		let ikSolver;
-
-		//
-		// Bones hierarchy:
-		//
-		//   root
-		//     ├── bone0
-		//     │    └── bone1
-		//     │          └── bone2
-		//     │                └── bone3
-		//     └── target
-		//
-		// Positioned as follow on the cylinder:
-		//
-		//        o      <- target      (y =  20)
-		//        
-		//   +----o----+ <- bone3       (y =  12)
-		//   |         |
-		//   |    o    | <- bone2       (y =   4)
-		//   |         |
-		//   |    o    | <- bone1       (y =  -4)
-		//   |         |
-		//   +----oo---+ <- root, bone0 (y = -12)
-		//
-
-		let bones = []
-
-		// "root"
-		let rootBone = new Bone();
-		rootBone.position.y = -12;
-		bones.push( rootBone );
-
-		// "bone0"
-		let prevBone = new Bone();
-		prevBone.position.y = 0;
-		rootBone.add( prevBone );
-		bones.push( prevBone );
-
-		// "bone1", "bone2", "bone3"
-		for ( let i = 1; i <= 3; i ++ ) {
-			const bone = new Bone();
-			bone.position.y = 8;
-			bones.push( bone );
-			
-			prevBone.add( bone );
-			prevBone = bone;
-		}
-
-		// "target"
-		const targetBone = new Bone();
-		targetBone.position.y = 24 + 8
-		rootBone.add( targetBone );
-		bones.push( targetBone );
-
-		//
-		// skinned mesh
-		//
-
-		const mesh = new SkinnedMesh( geometry,	material );
-		const skeleton = new Skeleton( bones );
-
-		mesh.add( bones[ 0 ] ); // "root" bone
-		mesh.bind( skeleton );
-
-		//
-		// ikSolver
-		//
-
-		const iks = [
-			{
-				target: 5, // "target"
-				effector: 4, // "bone3"
-				links: [ { index: 3 }, { index: 2 }, { index: 1 } ] // "bone2", "bone1", "bone0"
-			}
-		];
-		ikSolver = new CCDIKSolver( mesh, iks );
-
-		function render() {
-			ikSolver?.update();
-			renderer.render( scene, camera );
-		}
-		</code>
-
-		<h2>例子</h2>
-
-		<p>
-			[example:webgl_loader_mmd]<br />
-			[example:webgl_loader_mmd_pose]<br />
-			[example:webgl_loader_mmd_audio]
-		</p>
-
-		<h2>Constructor</h2>
-
-		<h3>[name]( [param:SkinnedMesh mesh], [param:Array iks] )</h3>
-		<p>
-		[page:SkinnedMesh mesh] — [page:SkinnedMesh] for which [name] solves IK problem.<br />
-		[page:Array iks] — An array of [page:Object] specifying IK parameter. target, effector, and link-index are index integers in .skeleton.bones.
-		The bones relation should be "links[ n ], links[ n - 1 ], ..., links[ 0 ], effector" in order from parent to child.<br />
-		<ul>
-			<li>[page:Integer target] — Target bone.</li>
-			<li>[page:Integer effector] — Effector bone.</li>
-			<li>[page:Array links] — An array of [page:Object] specifying link bones.
-			<ul>
-				<li>[page:Integer index] — Link bone.</li>
-				<li>[page:Vector3 limitation] — (optional) Rotation axis. Default is undefined.</li>
-				<li>[page:Vector3 rotationMin] — (optional) Rotation minimum limit. Default is undefined.</li>
-				<li>[page:Vector3 rotationMax] — (optional) Rotation maximum limit. Default is undefined.</li>
-				<li>[page:Boolean enabled] — (optional) Default is true.</li>
-			</ul>
-			</li>
-			<li>[page:Integer iteration] — (optional) Iteration number of calculation. Smaller is faster but less precise. Default is 1.</li>
-			<li>[page:Number minAngle] — (optional) Minimum rotation angle in a step. Default is undefined.</li>
-			<li>[page:Number maxAngle] — (optional) Maximum rotation angle in a step. Default is undefined.</li>
-		</ul>
-		</p>
-		<p>
-		Creates a new [name].
-		</p>
-
-		<h2>Properties</h2>
-
-		<h3>[property:Array iks]</h3>
-		<p>An array of IK parameter passed to the constructor.</p>
-
-		<h3>[property:SkinnedMesh mesh]</h3>
-		<p>[page:SkinnedMesh] passed to the constructor.</p>
-
-		<h2>Methods</h2>
-
-		<h3>[method:CCDIKHelper createHelper]()</h3>
-		<p>
-		Return [page:CCDIKHelper]. You can visualize IK bones by adding the helper to scene.
-		</p>
-
-		<h3>[method:this update]()</h3>
-		<p>
-		Update IK bones quaternion by solving CCD algorithm.
-		</p>
-
-		<h3>[method:this updateOne]( [param:Object ikParam] )</h3>
-		<p>
-		Update an IK bone quaternion by solving CCD algorithm.
-		</p>
-
-		<h2>Source</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/animation/CCDIKSolver.js examples/jsm/animation/CCDIKSolver.js]
-		</p>
-	</body>
-</html>

+ 0 - 172
docs/examples/zh/animations/MMDAnimationHelper.html

@@ -1,172 +0,0 @@
-<!DOCTYPE html>
-<html lang="zh">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../" />
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>[name]</h1>
-
-		<p class="desc"> A animation helper for <a href="https://sites.google.com/view/evpvp/"><em>MMD</em></a> resources. <br /><br />
-		[name] handles animation of MMD assets loaded by [page:MMDLoader] with MMD special features as IK, Grant, and Physics.
-		It uses [page:CCDIKSolver] and [page:MMDPhysics] inside.
-		</p>
-
-		<h2>代码示例</h2>
-
-		<code>
-		// Instantiate a helper
-		const helper = new MMDAnimationHelper();
-
-		// Load MMD resources and add to helper
-		new MMDLoader().loadWithAnimation(
-			'models/mmd/miku.pmd',
-			'models/mmd/dance.vmd',
-			function ( mmd ) {
-
-				helper.add( mmd.mesh, {
-					animation: mmd.animation,
-					physics: true
-				} );
-
-				scene.add( mmd.mesh );
-
-				new THREE.AudioLoader().load(
-					'audios/mmd/song.mp3',
-					function ( buffer ) {
-
-						const listener = new THREE.AudioListener();
-						const audio = new THREE.Audio( listener ).setBuffer( buffer );
-
-						listener.position.z = 1;
-
-						scene.add( audio );
-						scene.add( listener );
-
-					}
-
-				);
-
-			}
-		);
-
-		function render() {
-
-			helper.update( clock.getDelta() );
-			renderer.render( scene, camera );
-
-		}
-		</code>
-
-		<h2>例子</h2>
-
-		<p>
-			[example:webgl_loader_mmd]<br />
-			[example:webgl_loader_mmd_pose]<br />
-			[example:webgl_loader_mmd_audio]
-		</p>
-
-		<h2>Constructor</h2>
-
-		<h3>[name]( [param:Object params] )</h3>
-		<p>
-		[page:Object params] — (optional)<br />
-		<ul>
-			<li> [page:Boolean sync] - Whether animation durations of added objects are synched. Default is true.</li>
-			<li> [page:Number afterglow] - Default is 0.0.</li>
-			<li> [page:Boolean resetPhysicsOnLoop] - Default is true.</li>
-			<li> [page:Boolean pmxAnimation] - If it is set to true, the helper follows the complex and costly PMX animation system.
-			Try this option only if your PMX model animation doesn't work well. Default is false.</li>
-		</ul>
-		</p>
-		<p>
-		Creates a new [name].
-		</p>
-
-		<h2>Properties</h2>
-
-		<h3>[property:Audio audio]</h3>
-		<p>An [page:Audio] added to helper.</p>
-
-		<h3>[property:Camera camera]</h3>
-		<p>An [page:Camera] added to helper.</p>
-
-		<h3>[property:Array meshes]</h3>
-		<p>An array of [page:SkinnedMesh] added to helper.</p>
-
-		<h3>[property:WeakMap objects]</h3>
-		<p>A [page:WeakMap] which holds animation stuffs used in helper for objects added to helper. For example, you can access [page:AnimationMixer] for an added [page:SkinnedMesh] with "helper.objects.get( mesh ).mixer"</p>
-
-		<h3>[property:Function onBeforePhysics]</h3>
-		<p>An optional callback that is executed immediately before the physicis calculation for an [page:SkinnedMesh]. This function is called with the [page:SkinnedMesh].</p>
-
-		<h2>Methods</h2>
-
-		<h3>[method:MMDAnimationHelper add]( [param:Object3D object], [param:Object params] )</h3>
-		<p>
-		[page:Object3D object] — [page:SkinnedMesh], [page:Camera], or [page:Audio]<br />
-		[page:Object params] — (optional)<br />
-		<ul>
-			<li>[page:AnimationClip animation] - an [page:AnimationClip] or an array of [page:AnimationClip] set to object. Only for [page:SkinnedMesh] and [page:Camera]. Default is undefined.</li>
-			<li>[page:Boolean physics] - Only for [page:SkinnedMesh]. A flag whether turn on physics. Default is true.</li>
-			<li>[page:Integer warmup] - Only for [page:SkinnedMesh] and physics is true. Physics parameter. Default is 60.</li>
-			<li>[page:Number unitStep] - Only for [page:SkinnedMesh] and physics is true. Physics parameter. Default is 1 / 65.</li>
-			<li>[page:Integer maxStepNum] - Only for [page:SkinnedMesh] and physics is true. Physics parameter. Default is 3.</li>
-			<li>[page:Vector3 gravity] - Only for [page:SkinnedMesh] and physics is true. Physics parameter. Default is ( 0, - 9.8 * 10, 0 ).</li>
-			<li>[page:Number delayTime] - Only for [page:Audio]. Default is 0.0.</li>
-		</ul>
-		</p>
-		<p>
-		Add an [page:SkinnedMesh], [page:Camera], or [page:Audio] to helper and setup animation. The anmation durations of added objects are synched.
-		If camera/audio has already been added, it'll be replaced with a new one.
-		</p>
-
-		<h3>[method:MMDAnimationHelper enable]( [param:String key], [param:Boolean enabled] )</h3>
-		<p>
-		[page:String key] — Allowed strings are 'animation', 'ik', 'grant', 'physics', and 'cameraAnimation'.<br />
-		[page:Boolean enabled] — true is enable, false is disable<br />
-		</p>
-		<p>
-		Enable/Disable an animation feature
-		</p>
-
-		<h3>[method:MMDAnimationHelper pose]( [param:SkinnedMesh mesh], [param:Object vpd], [param:Object params] )</h3>
-		<p>
-		[page:SkinnedMesh mesh] — [page:SkinnedMesh] which changes the posing. It doesn't need to be added to helper.<br />
-		[page:Object vpd] — VPD content obtained by [page:MMDLoader].loadVPD<br />
-		[page:Object params] — (optional)<br />
-		<ul>
-			<li>[page:Boolean resetPose] - Default is true.</li>
-			<li>[page:Boolean ik] - Default is true.</li>
-			<li>[page:Boolean grant] - Default is true.</li>
-		</ul>
-		</p>
-		<p>
-		Changes the posing of [page:SkinnedMesh] as VPD content specifies.
-		</p>
-
-		<h3>[method:MMDAnimationHelper remove]( [param:Object3D object] )</h3>
-		<p>
-		[page:Object3D object] — [page:SkinnedMesh], [page:Camera], or [page:Audio]<br />
-		</p>
-		<p>
-		Remove an [page:SkinnedMesh], [page:Camera], or [page:Audio] from helper.
-		</p>
-
-		<h3>[method:MMDAnimationHelper update]( [param:Nummber delta] )</h3>
-		<p>
-		[page:Number delta] — number in second<br />
-		</p>
-		<p>
-		Advance mixer time and update the animations of objects added to helper
-		</p>
-
-		<h2>Source</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/animation/MMDAnimationHelper.js examples/jsm/animation/MMDAnimationHelper.js]
-		</p>
-	</body>
-</html>

+ 0 - 114
docs/examples/zh/animations/MMDPhysics.html

@@ -1,114 +0,0 @@
-<!DOCTYPE html>
-<html lang="zh">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../" />
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>[name]</h1>
-
-		<p class="desc"> A Physics handler for <a href="https://sites.google.com/view/evpvp/"><em>MMD</em></a> resources. <br /><br />
-		[name] calculates Physics for model loaded by [page:MMDLoader] with [link:https://github.com/kripken/ammo.js/ ammo.js] (Bullet-based JavaScript Physics engine).
-		</p>
-
-		<h2>代码示例</h2>
-
-		<code>
-		const physics;
-
-		// Load MMD resources and instantiate MMDPhysics
-		new MMDLoader().load(
-			'models/mmd/miku.pmd',
-			function ( mesh ) {
-
-				physics = new MMDPhysics( mesh )
-				scene.add( mesh );
-
-			}
-		);
-
-		function render() {
-
-			const delta = clock.getDelta();
-			animate( delta );  // update bones
-			if ( physics !== undefined ) physics.update( delta );
-			renderer.render( scene, camera );
-
-		}
-		</code>
-
-		<h2>例子</h2>
-
-		<p>
-			[example:webgl_loader_mmd]<br />
-			[example:webgl_loader_mmd_audio]
-		</p>
-
-		<h2>Constructor</h2>
-
-		<h3>[name]( [param:SkinnedMesh mesh], [param:Array rigidBodyParams], [param:Array constraintParams], [param:Object params] )</h3>
-		<p>
-		[page:SkinnedMesh mesh] — [page:SkinnedMesh] for which [name] calculates Physics.<br />
-		[page:Array rigidBodyParams] — An array of [page:Object] specifying Rigid Body parameters.<br />
-		[page:Array constraintParams] — (optional) An array of [page:Object] specifying Constraint parameters.<br />
-		[page:Object params] — (optional)<br />
-		<ul>
-			<li>[page:Number unitStep] - Default is 1 / 65.</li>
-			<li>[page:Integer maxStepNum] - Default is 3.</li>
-			<li>[page:Vector3 gravity] - Default is ( 0, - 9.8 * 10, 0 )</li>
-		</ul>
-		</p>
-		<p>
-		Creates a new [name].
-		</p>
-
-		<h2>Properties</h2>
-
-		<h3>[property:Array mesh]</h3>
-		<p>[page:SkinnedMesh] passed to the constructor.</p>
-
-		<h2>Methods</h2>
-
-		<h3>[method:MMDPhysicsHelper createHelper]()</h3>
-		<p>
-		Return [page:MMDPhysicsHelper]. You can visualize Rigid bodies by adding the helper to scene.
-		</p>
-
-		<h3>[method:this reset]()</h3>
-		<p>
-		Resets Rigid bodies transform to current bone's.
-		</p>
-
-		<h3>[method:this setGravity]( [param:Vector3 gravity] )</h3>
-		<p>
-		[page:Vector3 gravity] — Direction and volume of gravity.
-		</p>
-		<p>
-		Set gravity.
-		</p>
-
-		<h3>[method:this update]( [param:Number delta] )</h3>
-		<p>
-		[page:Number delta] — Time in second.
-		</p>
-		<p>
-		Advance Physics calculation and updates bones.
-		</p>
-
-		<h3>[method:this warmup]( [param:Integer cycles] )</h3>
-		<p>
-		[page:Number delta] — Time in second.
-		</p>
-		<p>
-		Warm up Rigid bodies. Calculates cycles steps.
-		</p>
-
-		<h2>Source</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/animation/MMDPhysics.js examples/jsm/animation/MMDPhysics.js]
-		</p>
-	</body>
-</html>

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

@@ -15,6 +15,17 @@
 		该类被用于提供一个拖放交互。
 		</p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { DragControls } from 'three/addons/controls/DragControls.js';
+		</code>
+
 		<h2>代码示例</h2>
 
 		<code>

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

@@ -14,6 +14,17 @@
 			该类是 [page:FlyControls] 的另一个实现。
 		</p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { FirstPersonControls } from 'three/addons/controls/FirstPersonControls.js';
+		</code>
+
 		<h2>例子</h2>
 
 		<p>[example:webgl_geometry_terrain webgl / geometry / terrain ]</p>

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

@@ -15,6 +15,17 @@
 			你可以在3D空间中任意变换摄像机,并且无任何限制(例如,专注于一个特定的目标)。
 		</p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { FlyControls } from 'three/addons/controls/FlyControls.js';
+		</code>
+
 		<h2>例子</h2>
 
 		<p>[example:misc_controls_fly misc / controls / fly ]</p>

+ 11 - 0
docs/examples/zh/controls/OrbitControls.html

@@ -17,6 +17,17 @@
 
 		</p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { OrbitControls } from 'three/addons/controls/OrbitControls.js';
+		</code>
+
 		<h2>代码示例</h2>
 
 		<code>

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

@@ -16,6 +16,17 @@
 		对于第一人称3D游戏来说, [name] 是一个非常完美的选择。
 		</p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { PointerLockControls } from 'three/addons/controls/PointerLockControls.js';
+		</code>
+
 		<h2>代码示例</h2>
 
 		<code>

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

@@ -18,6 +18,17 @@
 			</p>
 		</p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { TrackballControls } from 'three/addons/controls/TrackballControls.js';
+		</code>
+
 		<h2>例子</h2>
 
 		<p>[example:misc_controls_trackball misc / controls / trackball ]</p>

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

@@ -18,6 +18,17 @@
 			[name] 期望其所附加的3D对象是场景图的一部分。
 		</p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { TransformControls } from 'three/addons/controls/TransformControls.js';
+		</code>
+
 		<h2>例子</h2>
 
 		<p>[example:misc_controls_transform misc / controls / transform ]</p>

+ 0 - 82
docs/examples/zh/exporters/ColladaExporter.html

@@ -1,82 +0,0 @@
-<!DOCTYPE html>
-<html lang="zh">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../" />
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>[name]</h1>
-
-		<p class="desc">
-		An exporter for *Collada*.
-		<br /><br />
-		[link:https://www.khronos.org/collada/ Collada] is a
-		file format for robust representation of scenes, materials, animations, and other 3D content in an xml format.
-		This exporter only supports exporting geometry, materials, textures, and scene hierarchy.
-		</p>
-
-		<h2>代码示例</h2>
-
-		<code>
-		// Instantiate an exporter
-		const exporter = new ColladaExporter();
-
-		// Parse the input and generate the collada ( .dae ) output
-		const data = exporter.parse( scene, null, options );
-		downloadFile( data );
-		</code>
-
-		<h2>Constructor</h2>
-
-		<h3>[name]()</h3>
-		<p>
-		</p>
-		<p>
-		Creates a new [name].
-		</p>
-
-		<h2>Methods</h2>
-
-		<h3>[method:Object parse]( [param:Object3D input], [param:Function onCompleted], [param:Object options] )</h3>
-		<p>
-		[page:Object input] — Object3D to be exported<br />
-		[page:Function onCompleted] — Will be called when the export completes. Optional. The same data is immediately returned from the function.<br />
-		[page:Options options] — Export options<br />
-		<ul>
-			<li>version - string. Which version of Collada to export. The options are "1.4.1" or "1.5.0". Defaults to "1.4.1".</li>
-			<li>author - string. The name to include in the author field. Author field is excluded by default.</li>
-			<li>textureDirectory - string. The directory relative to the Collada file to save the textures to.</li>
-		</ul>
-		</p>
-		<p>
-		Generates an object with Collada file and texture data. This object is returned from the function and passed into the "onCompleted" callback.
-		<code>
-		{
-			// Collada file content
-			data: "",
-
-			// List of referenced textures
-			textures: [{
-
-				// File directory, name, and extension of the texture data
-				directory: "",
-				name: "",
-				ext: "",
-
-				// The texture data and original texture object
-				data: [],
-				original: &ltTHREE.Texture&gt
-			}, ...]
-		}
-		</code>
-		</p>
-
-		<h2>Source</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/exporters/ColladaExporter.js examples/jsm/exporters/ColladaExporter.js]
-		</p>
-	</body>
-</html>

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

@@ -1,144 +0,0 @@
-<!DOCTYPE html>
-<html lang="zh">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../" />
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>[name]</h1>
-
-		<p class="desc">
-		An exporter for `glTF` 2.0.
-		<br /><br />
-		[link:https://www.khronos.org/gltf glTF] (GL Transmission Format) is an
-		[link:https://github.com/KhronosGroup/glTF/tree/master/specification/2.0 open format specification]
-		for efficient delivery and loading of 3D content. Assets may be provided either in JSON (.gltf)
-		or binary (.glb) format. External files store textures (.jpg, .png) and additional binary
-		data (.bin). A glTF asset may deliver one or more scenes, including meshes, materials,
-		textures, skins, skeletons, morph targets, animations, lights, and/or cameras.
-		</p>
-
-		<h2>Extensions</h2>
-
-		<p>
-			GLTFExporter supports the following
-			[link:https://github.com/KhronosGroup/glTF/tree/master/extensions/ glTF 2.0 extensions]:
-		</p>
-
-		<ul>
-			<li>KHR_lights_punctual</li>
-			<li>KHR_materials_clearcoat</li>
-			<li>KHR_materials_emissive_strength</li>
-			<li>KHR_materials_ior</li>
-			<li>KHR_materials_iridescence</li>		
-			<li>KHR_materials_specular</li>
-			<li>KHR_materials_sheen</li>
-			<li>KHR_materials_transmission</li>
-			<li>KHR_materials_unlit</li>
-			<li>KHR_materials_volume</li>
-			<li>KHR_mesh_quantization</li>
-			<li>KHR_texture_transform</li>
-		</ul>
-		<p>
-			The following glTF 2.0 extension is supported by an external user plugin
-		</p>
-
-		<ul>
-			<li>[link:https://github.com/takahirox/three-gltf-extensions KHR_materials_variants]</li>
-		</ul>
-
-		<h2>代码示例</h2>
-
-		<code>
-		// Instantiate a exporter
-		const exporter = new GLTFExporter();
-
-		// Parse the input and generate the glTF output
-		exporter.parse(
-			scene,
-			// called when the gltf has been generated
-			function ( gltf ) {
-
-				console.log( gltf );
-				downloadJSON( gltf );
-
-			},
-			// called when there is an error in the generation
-			function ( error ) {
-
-				console.log( 'An error happened' );
-
-			},
-			options
-		);
-		</code>
-
-		<h2>例子</h2>
-
-		<p>
-			[example:misc_exporter_gltf]
-		</p>
-
-		<h2>构造函数</h2>
-
-		<h3>[name]()</h3>
-		<p>
-		</p>
-		<p>
-		Creates a new [name].
-		</p>
-
-		<h2>方法</h2>
-
-		<h3>[method:undefined parse]( [param:Object3D input], [param:Function onCompleted], [param:Function onError], [param:Object options] )</h3>
-
-		<p>
-		[page:Object input] — Scenes or objects to export. Valid options:<br />
-		<ul>
-			<li>
-				Export scenes
-				<code>
-				exporter.parse( scene1, ... )
-		exporter.parse( [ scene1, scene2 ], ... )
-				</code>
-			</li>
-			<li>
-				Export objects (It will create a new Scene to hold all the objects)
-				<code>
-				exporter.parse( object1, ... )
-		exporter.parse( [ object1, object2 ], ... )
-				</code>
-			</li>
-			<li>
-				Mix scenes and objects (It will export the scenes as usual but it will create a new scene to hold all the single objects).
-				<code>
-				exporter.parse( [ scene1, object1, object2, scene2 ], ... )
-				</code>
-			</li>
-		</ul>
-
-		[page:Function onCompleted] — Will be called when the export completes. The argument will be the generated glTF JSON or binary ArrayBuffer.<br />
-		[page:Function onError] — Will be called if there are any errors during the gltf generation.<br />
-		[page:Options options] — Export options<br />
-		<ul>
-			<li>trs - bool. Export position, rotation and scale instead of matrix per node. Default is false</li>
-			<li>onlyVisible - bool. Export only visible objects. Default is true.</li>
-			<li>binary - bool. Export in binary (.glb) format, returning an ArrayBuffer. Default is false.</li>
-			<li>maxTextureSize - int. Restricts the image maximum size (both width and height) to the given value. Default is Infinity.</li>
-			<li>animations - Array<[page:AnimationClip AnimationClip]>. List of animations to be included in the export.</li>
-			<li>includeCustomExtensions - bool. Export custom glTF extensions defined on an object's <em>userData.gltfExtensions</em> property. Default is false.</li>
-		</ul>
-		</p>
-		<p>
-		Generates a .gltf (JSON) or .glb (binary) output from the input (Scenes or Objects)
-		</p>
-
-		<h2>Source</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/exporters/GLTFExporter.js examples/jsm/exporters/GLTFExporter.js]
-		</p>
-	</body>
-</html>

+ 0 - 65
docs/examples/zh/exporters/PLYExporter.html

@@ -1,65 +0,0 @@
-<!DOCTYPE html>
-<html lang="zh">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../" />
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>[name]</h1>
-
-		<p class="desc">
-		An exporter for *PLY*.
-		<br /><br />
-		[link:https://en.wikipedia.org/wiki/PLY_(file_format) PLY] (Polygon or Stanford Triangle Format) is a
-		file format for efficient delivery and loading of simple, static 3D content in a dense format.
-		Both binary and ascii formats are supported. PLY can store vertex positions, colors, normals and
-		uv coordinates. No textures or texture references are saved.
-		</p>
-
-		<h2>代码示例</h2>
-
-		<code>
-		// Instantiate an exporter
-		const exporter = new PLYExporter();
-
-		// Parse the input and generate the ply output
-		const data = exporter.parse( scene, options );
-		downloadFile( data );
-		</code>
-
-		<h2>Constructor</h2>
-
-		<h3>[name]()</h3>
-		<p>
-		</p>
-		<p>
-		Creates a new [name].
-		</p>
-
-		<h2>Methods</h2>
-
-		<h3>[method:Object parse]( [param:Object3D input], [param:Function onDone], [param:Object options] )</h3>
-		<p>
-		[page:Object input] — Object3D<br />
-		[page:Function onCompleted] — Will be called when the export completes. The argument will be the generated ply ascii or binary ArrayBuffer.<br />
-		[page:Options options] — Export options<br />
-		<ul>
-			<li>excludeAttributes - array. Which properties to explicitly exclude from the exported PLY file. Valid values are 'color', 'normal', 'uv', and 'index'. If triangle indices are excluded, then a point cloud is exported. Default is an empty array.</li>
-			<li>binary - bool. Export in binary format, returning an ArrayBuffer. Default is false.</li>
-		</ul>
-		</p>
-		<p>
-		Generates ply file data as string or ArrayBuffer (ascii or binary) output from the input object. The data that is returned is the same
-		that is passed into the "onCompleted" function.
-		If the object is composed of multiple children and geometry, they are merged into a single mesh in the file.
-		</p>
-
-		<h2>Source</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/exporters/PLYExporter.js examples/jsm/exporters/PLYExporter.js]
-		</p>
-	</body>
-</html>

+ 11 - 0
docs/examples/zh/geometries/ConvexGeometry.html

@@ -14,6 +14,17 @@
 		<p class="desc">[name] 可被用于为传入的一组点生成凸包。
 			该任务的平均时间复杂度被认为是O(nlog(n))。</p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { ConvexGeometry } from 'three/addons/geometries/ConvexGeometry.js';
+		</code>
+
 		<h2>代码示例</h2>
 
 		<code>const geometry = new ConvexGeometry( points );

+ 11 - 0
docs/examples/zh/geometries/DecalGeometry.html

@@ -13,6 +13,17 @@
 
 		<p class="desc">[name] 可被用于创建贴花网格物体,以达到不同的目的,例如:为模型增加独特的细节、进行动态的视觉环境改变或覆盖接缝。</p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { DecalGeometry } from 'three/addons/geometries/DecalGeometry.js';
+		</code>
+
 		<h2>代码示例</h2>
 
 		<code>

+ 8 - 13
docs/examples/zh/geometries/ParametricGeometry.html

@@ -13,21 +13,16 @@
 
 		<p class="desc">生成由参数表示其表面的几何体。</p>
 
-		<script>
+		<h2>进口</h2>
 
-		// iOS iframe auto-resize workaround
-
-		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
-
-			const scene = document.getElementById( 'scene' );
-
-			scene.style.width = getComputedStyle( scene ).width;
-			scene.style.height = getComputedStyle( scene ).height;
-			scene.setAttribute( 'scrolling', 'no' );
-
-		}
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
 
-		</script>
+		<code>
+			import { ParametricGeometry } from 'three/addons/geometries/ParametricGeometry.js';
+		</code>
 
 		<h2>代码示例</h2>
 

+ 8 - 13
docs/examples/zh/geometries/TextGeometry.html

@@ -17,21 +17,16 @@
 				请参阅[page:FontLoader]页面来查看更多详细信息。
 			</p>
 
-		<script>
+		<h2>进口</h2>
 
-		// iOS iframe auto-resize workaround
-
-		if ( /(iPad|iPhone|iPod)/g.test( navigator.userAgent ) ) {
-
-			const scene = document.getElementById( 'scene' );
-
-			scene.style.width = getComputedStyle( scene ).width;
-			scene.style.height = getComputedStyle( scene ).height;
-			scene.setAttribute( 'scrolling', 'no' );
-
-		}
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
 
-		</script>
+		<code>
+			import { TextGeometry } from 'three/addons/geometries/TextGeometry.js';
+		</code>
 
 		<h2>代码示例</h2>
 

+ 11 - 0
docs/examples/zh/helpers/LightProbeHelper.html

@@ -15,6 +15,17 @@
 			在场景中渲染一个球来可视化光照探针。
 		<p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { LightProbeHelper } from 'three/addons/helpers/LightProbeHelper.js';
+		</code>
+
 		<h2>代码示例</h2>
 
 		<code>

+ 11 - 0
docs/examples/zh/helpers/PositionalAudioHelper.html

@@ -13,6 +13,17 @@
 
 		<p class="desc">这一辅助对象显示[page:PositionalAudio]的方向锥。</p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { PositionalAudioHelper } from 'three/addons/helpers/PositionalAudioHelper.js';
+		</code>
+
 		<h2>代码示例</h2>
 		<code>
 		const positionalAudio = new THREE.PositionalAudio( listener );

+ 11 - 0
docs/examples/zh/helpers/RectAreaLightHelper.html

@@ -15,6 +15,17 @@
 			创建一个表示 [page:RectAreaLight] 的辅助对象.
 		</p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { RectAreaLightHelper } from 'three/addons/helpers/RectAreaLightHelper.js';
+		</code>
+
 		<h2>代码示例</h2>
 
 		<code>

+ 11 - 0
docs/examples/zh/helpers/VertexNormalsHelper.html

@@ -17,6 +17,17 @@
 			使用了 [page:BufferGeometry.computeVertexNormals computeVertexNormals] 方法计算了顶点法线.<br /><br />
 		</p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { VertexNormalsHelper } from 'three/addons/helpers/VertexNormalsHelper.js';
+		</code>
+
 		<h2>代码示例</h2>
 
 		<code>

+ 0 - 82
docs/examples/zh/helpers/VertexTangentsHelper.html

@@ -1,82 +0,0 @@
-<!DOCTYPE html>
-<html lang="zh">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../" />
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		[page:Object3D] &rarr; [page:Line] &rarr; [page:LineSegments] &rarr;
-
-		<h1>[name]</h1>
-
-		<p class="desc">
-			Renders arrows to visualize an object's vertex tangent vectors.
-			Requires that tangents have been specified in a [page:BufferAttribute custom attribute] or
-			have been calculated using [page:BufferGeometry.computeTangents computeTangents].<br /><br />
-
-			This helper supports [page:BufferGeometry] only.
-		</p>
-
-		<h2>代码示例</h2>
-
-		<code>
-		const geometry = new THREE.BoxGeometry( 10, 10, 10, 2, 2, 2 );
-		const material = new THREE.MeshNormalMaterial();
-		const box = new THREE.Mesh( geometry, material );
-
-		const helper = new VertexTangentsHelper( box, 1, 0x00ffff, 1 );
-
-		scene.add( box );
-		scene.add( helper );
-		</code>
-
-		<h2>例子</h2>
-		<p>
-			[example:webgl_helpers WebGL / helpers]
-		</p>
-
-		<h2>Constructor</h2>
-
-
-		<h3>[name]( [param:Object3D object], [param:Number size], [param:Hex color], [param:Number linewidth] )</h3>
-		<p>
-			[page:Object3D object] -- object for which to render vertex tangents.<br />
-			[page:Number size] -- (optional) length of the arrows. Default is *1*.<br />
-			[page:Hex color] -- hex color of the arrows. Default is 0x00ffff.<br />
-			[page:Number linewidth] -- (optional) width of the arrow lines. Default is *1*. (Setting lineWidth is currently not supported.)
-		</p>
-
-
-		<h2>Properties</h2>
-		<p>See the base [page:LineSegments] class for common properties.</p>
-
-		<h3>[property:Object matrixAutoUpdate]</h3>
-		<p>
-			See [page:Object3D.matrixAutoUpdate]. Set to *false* here as the helper is using the
-			objects's [page:Object3D.matrixWorld matrixWorld].
-		</p>
-
-		<h3>[property:Object3D object]</h3>
-		<p>The object for which the vertex tangents are being visualized.</p>
-
-		<h3>[property:Number size]</h3>
-		<p>Length of the arrows. Default is *1*.</p>
-
-
-		<h2>Methods</h2>
-		<p>See the base [page:LineSegments] class for common methods.</p>
-
-
-		<h3>[method:undefined update]()</h3>
-		<p>Updates the vertex tangents preview based on the object's world transform.</p>
-
-
-		<h2>Source</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/helpers/VertexTangentsHelper.js examples/jsm/helpers/VertexTangentsHelper.js]
-		</p>
-	</body>
-</html>

+ 11 - 0
docs/examples/zh/lights/LightProbeGenerator.html

@@ -14,6 +14,17 @@
 			用于创建 [page:LightProbe] 实例的工具类。
 		</p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { LightProbeGenerator } from 'three/addons/lights/LightProbeGenerator.js';
+		</code>
+
 		<h2>例子</h2>
 
 		<p>

+ 0 - 149
docs/examples/zh/loaders/DRACOLoader.html

@@ -1,149 +0,0 @@
-<!DOCTYPE html>
-<html lang="zh">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../" />
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		[page:Loader] &rarr;
-		<h1>[name]</h1>
-
-		<p class="desc">
-			A loader for geometry compressed with the Draco library. <br /><br />
-			[link:https://google.github.io/draco/ Draco] is an open source library for compressing and
-			decompressing 3D meshes and point clouds. Compressed geometry can be significantly smaller,
-			at the cost of additional decoding time on the client device.
-		</p>
-
-		<p>
-			Standalone Draco files have a <em>.drc</em> extension, and contain vertex positions,
-			normals, colors, and other attributes. Draco files <em>do not</em> contain materials,
-			textures, animation, or node hierarchies – to use these features, embed Draco geometry
-			inside of a glTF file. A normal glTF file can be converted to a Draco-compressed glTF file
-			using [link:https://github.com/AnalyticalGraphicsInc/gltf-pipeline glTF-Pipeline]. When
-			using Draco with glTF, an instance of DRACOLoader will be used internally by [page:GLTFLoader].
-		</p>
-
-		<h2>代码示例</h2>
-
-		<code>
-		// Instantiate a loader
-		const loader = new DRACOLoader();
-
-		// Specify path to a folder containing WASM/JS decoding libraries.
-		loader.setDecoderPath( '/examples/jsm/libs/draco/' );
-
-		// Optional: Pre-fetch Draco WASM/JS module.
-		loader.preload();
-
-		// Load a Draco geometry
-		loader.load(
-			// resource URL
-			'model.drc',
-			// called when the resource is loaded
-			function ( geometry ) {
-
-				const material = new THREE.MeshStandardMaterial( { color: 0x606060 } );
-				const mesh = new THREE.Mesh( geometry, material );
-				scene.add( mesh );
-
-			},
-			// called as loading progresses
-			function ( xhr ) {
-
-				console.log( ( xhr.loaded / xhr.total * 100 ) + '% loaded' );
-
-			},
-			// called when loading has errors
-			function ( error ) {
-
-				console.log( 'An error happened' );
-
-			}
-		);
-		</code>
-
-		<h2>例子</h2>
-
-		<p>
-			[example:webgl_loader_draco]
-		</p>
-
-		<h2>Browser compatibility</h2>
-
-		<p>DRACOLoader will automatically use either the JS or the WASM decoding library, based on browser capabilities.</p>
-
-		<br>
-		<hr>
-
-		<h2>Constructor</h2>
-
-		<h3>[name]( [param:LoadingManager manager] )</h3>
-		<p>
-		[page:LoadingManager manager] — The [page:LoadingManager loadingManager] for the loader to use. Default is [page:LoadingManager THREE.DefaultLoadingManager].
-		</p>
-		<p>
-		Creates a new [name].
-		</p>
-
-		<h2>Properties</h2>
-		<p>See the base [page:Loader] class for common properties.</p>
-
-		<h2>Methods</h2>
-		<p>See the base [page:Loader] class for common methods.</p>
-
-		<h3>[method:undefined load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
-		<p>
-		[page:String url] — A string containing the path/URL of the <em>.drc</em> file.<br />
-		[page:Function onLoad] — A function to be called after the loading is successfully completed.<br />
-		[page:Function onProgress] — (optional) A function to be called while the loading is in progress. The argument will be the XMLHttpRequest instance, that contains .[page:Integer total] and .[page:Integer loaded] bytes.<br />
-		[page:Function onError] — (optional) A function to be called if an error occurs during loading. The function receives error as an argument.<br />
-		</p>
-		<p>
-		Begin loading from url and call the <em>onLoad</em> function with the decompressed geometry.
-		</p>
-
-		<h3>[method:this setDecoderPath]( [param:String value] )</h3>
-		<p>
-		[page:String value] — Path to folder containing the JS and WASM decoder libraries.
-		</p>
-
-		<h3>[method:this setDecoderConfig]( [param:Object config] )</h3>
-		<p>
-			[page:String config.type] - (Optional) <em>"js"</em> or <em>"wasm"</em>.<br />
-		</p>
-		<p>
-		Provides configuration for the decoder libraries. Configuration cannot be changed
-		after decoding begins.
-		</p>
-
-		<h3>[method:this setWorkerLimit]( [param:Number workerLimit] )</h3>
-		<p>
-			[page:Number workerLimit] - Maximum number of workers to be allocated. Default is 4.<br />
-		</p>
-		<p>
-		Sets the maximum number of [link:https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Using_web_workers Web Workers]
-		to be used during decoding. A lower limit may be preferable if workers are also for other tasks
-		in the application.
-		</p>
-
-		<h3>[method:this preload]()</h3>
-		<p>
-		Requests the decoder libraries, if not already loaded.
-		</p>
-
-		<h3>[method:this dispose]()</h3>
-		<p>
-		Disposes of the decoder resources and deallocates memory. The decoder
-		[link:https://github.com/google/draco/issues/349 cannot be reloaded afterward].
-		</p>
-
-		<h2>Source</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/loaders/DRACOLoader.js examples/jsm/loaders/DRACOLoader.js]
-		</p>
-	</body>
-</html>

+ 11 - 0
docs/examples/zh/loaders/FontLoader.html

@@ -18,6 +18,17 @@
 		你可以使用[link:https://gero3.github.io/facetype.js/ facetype.js]来在线转换字体。
 		</p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { FontLoader } from 'three/addons/loaders/FontLoader.js';
+		</code>
+
 		<h2>代码示例</h2>
 
 		<code>

+ 12 - 0
docs/examples/zh/loaders/GLTFLoader.html

@@ -24,6 +24,18 @@
 			and they require special handling during the disposal process. More information in the [link:https://threejs.org/docs/#manual/en/introduction/How-to-dispose-of-objects How to dispose of objects] guide.
 		</p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js';
+		</code>
+
+
 		<h2>扩展</h2>
 
 		<p>

+ 12 - 1
docs/examples/zh/loaders/MMDLoader.html

@@ -15,7 +15,18 @@
 		[name]从MMD资源(例如PMD、PMX、VMD和VPD文件)中创建Three.js物体(对象)。
 		请参阅[page:MMDAnimationHelper]来了解MMD动画的处理,例如IK、Grant和Physics。<br /><br />
 
-		如果你想要MMD资源的原始内容,请使用.loadPMD/PMX/VMD/VPD方法。
+		如果你想要MMD资源的原始内容,请使用.loadPMD/PMX/VMD/VPD方法。</p>
+
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { MMDLoader } from 'three/addons/loaders/MMDLoader.js';
+		</code>
 
 		<h2>代码示例</h2>
 

+ 11 - 0
docs/examples/zh/loaders/MTLLoader.html

@@ -16,6 +16,17 @@
 		用于描述一个或多个 .OBJ 文件中物体表面着色(材质)属性。
 		</p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { MTLLoader } from 'three/addons/loaders/MTLLoader.js';
+		</code>
+
 		<h2>构造函数</h2>
 
 		<h3>[name]( [param:LoadingManager loadingManager] )</h3>

+ 11 - 0
docs/examples/zh/loaders/OBJLoader.html

@@ -17,6 +17,17 @@
 		将使每个多边形定义为顶点列表的面以及纹理顶点。
 		</p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { OBJLoader } from 'three/addons/loaders/OBJLoader.js';
+		</code>
+
 		<h2>代码示例</h2>
 
 		<code>

+ 11 - 0
docs/examples/zh/loaders/PCDLoader.html

@@ -22,6 +22,17 @@
 			</ul>
 		</p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { PCDLoader } from 'three/addons/loaders/PCDLoader.js';
+		</code>
+
 		<h2>代码示例</h2>
 
 		<code>

+ 0 - 99
docs/examples/zh/loaders/PDBLoader.html

@@ -1,99 +0,0 @@
-<!DOCTYPE html>
-<html lang="zh">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../" />
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		[page:Loader] &rarr;
-
-		<h1>[name]</h1>
-
-		<p class="desc">A loader for loading a <em>.pdb</em> resource.<br>
-		The [link:http://en.wikipedia.org/wiki/Protein_Data_Bank_(file_format) Protein Data Bank] file format is a textual file describing the three-dimensional structures of molecules.
-		</p>
-
-		<h2>代码示例</h2>
-
-		<code>
-		// instantiate a loader
-		const loader = new PDBLoader();
-
-		// load a PDB resource
-		loader.load(
-			// resource URL
-			'models/pdb/caffeine.pdb',
-			// called when the resource is loaded
-			function ( pdb ) {
-
-				const geometryAtoms = pdb.geometryAtoms;
-				const geometryBonds = pdb.geometryBonds;
-				const json = pdb.json;
-
-				console.log( 'This molecule has ' + json.atoms.length + ' atoms' );
-
-			},
-			// called when loading is in progresses
-			function ( xhr ) {
-
-				console.log( ( xhr.loaded / xhr.total * 100 ) + '% loaded' );
-
-			},
-			// called when loading has errors
-			function ( error ) {
-
-				console.log( 'An error happened' );
-
-			}
-		);
-		</code>
-
-		<h2>例子</h2>
-		<p>
-			[example:webgl_loader_pdb]
-		</p>
-
-		<h2>Constructor</h2>
-
-		<h3>[name]( [param:LoadingManager manager] )</h3>
-		<p>
-		[page:LoadingManager manager] — The [page:LoadingManager loadingManager] for the loader to use. Default is [page:LoadingManager THREE.DefaultLoadingManager].
-		</p>
-		<p>
-		Creates a new [name].
-		</p>
-
-		<h2>Properties</h2>
-		<p>See the base [page:Loader] class for common properties.</p>
-
-		<h2>Methods</h2>
-		<p>See the base [page:Loader] class for common methods.</p>
-
-		<h3>[method:undefined load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
-		<p>
-		[page:String url] — A string containing the path/URL of the <em>.pdb</em> file.<br />
-		[page:Function onLoad] — (optional) A function to be called after loading is successfully completed. The function receives the object having the following properties. [page:BufferGeometry geometryAtoms], [page:BufferGeometry geometryBonds] and the [page:Object JSON] structure.<br />
-		[page:Function onProgress] — (optional) A function to be called while the loading is in progress. The argument will be the XMLHttpRequest instance, which contains [page:Integer total] and [page:Integer loaded] bytes.<br />
-		[page:Function onError] — (optional) A function to be called if an error occurs during loading. The function receives the error as an argument.<br />
-		</p>
-		<p>
-		Begin loading from url and call onLoad with the parsed response content.
-		</p>
-
-		<h3>[method:Object parse]( [param:String text] )</h3>
-		<p>
-		[page:String text] — The textual <em>pdb</em> structure to parse.
-		</p>
-		<p>
-		Parse a <em>pdb</em> text and return a <em>JSON</em> structure.<br />
-		</p>
-
-		<h2>Source</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/loaders/PDBLoader.js examples/jsm/loaders/PDBLoader.js]
-		</p>
-	</body>
-</html>

+ 0 - 107
docs/examples/zh/loaders/PRWMLoader.html

@@ -1,107 +0,0 @@
-<!DOCTYPE html>
-<html lang="zh">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../" />
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		[page:Loader] &rarr;
-
-		<h1>[name]</h1>
-
-		<p class="desc">A loader for loading a <em>.prwm</em> resource.<br />
-		Packed Raw WebGL Model is an open-source binary file format for nD geometries specifically designed for
-		JavaScript and WebGL with a strong focus on fast parsing (from 1ms to 0.1ms in Chrome 59
-		on a MBP Late 2013). The parsing of PRWM file is especially fast when the endianness of the file is
-		the same as the endianness of the client platform. More information
-		on this [link:https://github.com/kchapelier/PRWM here].
-		</p>
-
-		<h2>代码示例</h2>
-
-		<code>
-		// instantiate a loader
-		const loader = new PRWMLoader();
-
-		// load a resource
-		loader.load(
-			// resource URL
-			'models/nefertiti.le.prwm',
-			// called when resource is loaded
-			function ( bufferGeometry ) {
-
-				const object = new THREE.Mesh( bufferGeometry, new THREE.MeshNormalMaterial() );
-				scene.add( object );
-
-			},
-			// called when loading is in progresses
-			function ( xhr ) {
-
-				console.log( ( xhr.loaded / xhr.total * 100 ) + '% loaded' );
-
-			},
-			// called when loading has errors
-			function ( error ) {
-
-				console.log( 'An error happened' );
-
-			}
-		);
-		</code>
-
-		<h2>例子</h2>
-		<p>
-			[example:webgl_loader_prwm]
-		</p>
-
-		<h2>Constructor</h2>
-
-		<h3>[name]( [param:LoadingManager manager] )</h3>
-		<p>
-		[page:LoadingManager manager] — The [page:LoadingManager loadingManager] for the loader to use. Default is [page:LoadingManager THREE.DefaultLoadingManager].
-		</p>
-		<p>
-		Creates a new [name].
-		</p>
-
-		<h2>Properties</h2>
-		<p>See the base [page:Loader] class for common properties.</p>
-
-		<h2>Methods</h2>
-		<p>See the base [page:Loader] class for common methods.</p>
-
-		<h3>[method:undefined load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
-		<p>
-		[page:String url] — A string containing the path/URL of the <em>.prwm</em> file. Any <em>*</em> character in the URL will be automatically replaced by <em>le</em> or <em>be</em> depending on the platform endianness.<br />
-		[page:Function onLoad] — (optional) A function to be called after the loading is successfully completed. The function receives the loaded [page:BufferGeometry] as an argument.<br />
-		[page:Function onProgress] — (optional) A function to be called while the loading is in progress. The function receives a XMLHttpRequest instance, which contains [page:Integer total] and [page:Integer loaded] bytes.<br />
-		[page:Function onError] — (optional) A function to be called if an error occurs during loading. The function receives error as an argument.<br />
-		</p>
-		<p>
-		Begin loading from url and call onLoad with the parsed response content.
-		</p>
-
-		<h3>[method:BufferGeometry parse]( [param:ArrayBuffer arrayBuffer] )</h3>
-		<p>
-		[page:ArrayBuffer arrayBuffer] — ArrayBuffer containing the <em>prwm</em> data.
-		</p>
-		<p>
-		Parse a <em>prwm</em> file passed as an ArrayBuffer and directly return an instance of [page:BufferGeometry].
-		</p>
-
-		<h3>PRWMLoader.isBigEndianPlatform( )</h3>
-
-		<p>
-		Return true if the endianness of the platform is Big Endian, false otherwise.
-		</p>
-
-		<h2>Source</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/loaders/PRWMLoader.js examples/jsm/loaders/PRWMLoader.js]
-		</p>
-
-	</body>
-</html>

+ 0 - 123
docs/examples/zh/loaders/SVGLoader.html

@@ -1,123 +0,0 @@
-<!DOCTYPE html>
-<html lang="zh">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../" />
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		[page:Loader] &rarr;
-
-		<h1>[name]</h1>
-
-		<p class="desc">A loader for loading a <em>.svg</em> resource.<br >
-		[link:https://en.wikipedia.org/wiki/Scalable_Vector_Graphics Scalable Vector Graphics] is an XML-based vector image format for two-dimensional graphics with support for interactivity and animation.
-		</p>
-
-		<h2>代码示例</h2>
-
-		<code>
-		// instantiate a loader
-		const loader = new SVGLoader();
-
-		// load a SVG resource
-		loader.load(
-			// resource URL
-			'data/svgSample.svg',
-			// called when the resource is loaded
-			function ( data ) {
-
-				const paths = data.paths;
-				const group = new THREE.Group();
-
-				for ( let i = 0; i < paths.length; i ++ ) {
-
-					const path = paths[ i ];
-
-					const material = new THREE.MeshBasicMaterial( {
-						color: path.color,
-						side: THREE.DoubleSide,
-						depthWrite: false
-					} );
-
-					const shapes = SVGLoader.createShapes( path );
-
-					for ( let j = 0; j < shapes.length; j ++ ) {
-
-						const shape = shapes[ j ];
-						const geometry = new THREE.ShapeGeometry( shape );
-						const mesh = new THREE.Mesh( geometry, material );
-						group.add( mesh );
-
-					}
-
-				}
-
-				scene.add( group );
-
-			},
-			// called when loading is in progresses
-			function ( xhr ) {
-
-				console.log( ( xhr.loaded / xhr.total * 100 ) + '% loaded' );
-
-			},
-			// called when loading has errors
-			function ( error ) {
-
-				console.log( 'An error happened' );
-
-			}
-		);
-		</code>
-
-		<h2>例子</h2>
-		<p>
-			[example:webgl_loader_svg]
-		</p>
-
-		<h2>Constructor</h2>
-
-		<h3>[name]( [param:LoadingManager manager] )</h3>
-		<p>
-		[page:LoadingManager manager] — The [page:LoadingManager loadingManager] for the loader to use. Default is [page:LoadingManager THREE.DefaultLoadingManager].
-		</p>
-		<p>
-		Creates a new [name].
-		</p>
-
-		<h2>Properties</h2>
-		<p>See the base [page:Loader] class for common properties.</p>
-
-		<h2>Methods</h2>
-		<p>See the base [page:Loader] class for common methods.</p>
-
-		<h3>[method:undefined load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
-		<p>
-		[page:String url] — A string containing the path/URL of the <em>.svg</em> file.<br />
-		[page:Function onLoad] — (optional) A function to be called after loading is successfully completed. The function receives an array of [page:ShapePath] as an argument.<br />
-		[page:Function onProgress] — (optional) A function to be called while the loading is in progress. The argument will be the XMLHttpRequest instance, which contains [page:Integer total] and [page:Integer loaded] bytes.<br />
-		[page:Function onError] — (optional) A function to be called if an error occurs during loading. The function receives the error as an argument.<br />
-		</p>
-		<p>
-		Begin loading from url and call onLoad with the response content.
-		</p>
-
-		<h2>Static Methods</h2>
-
-		<h3>[method:Array createShapes]( [param:ShapePath shape] )</h3>
-		<p>
-		[page:ShapePath shape] — A ShapePath from the array of [page:ShapePath], given as argument in the onLoad function for the load function of [page:SVGLoader].<br />
-		</p>
-		<p>
-		Returns one or more [page:Shape] objects created from the [param:ShapePath shape] provided as an argument in this function.
-		</p>
-
-		<h2>Source</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/loaders/SVGLoader.js examples/jsm/loaders/SVGLoader.js]
-		</p>
-	</body>
-</html>

+ 0 - 92
docs/examples/zh/loaders/TGALoader.html

@@ -1,92 +0,0 @@
-<!DOCTYPE html>
-<html lang="zh">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../" />
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		[page:Loader] &rarr;
-
-		<h1>[name]</h1>
-
-		<p class="desc">A loader for loading a <em>.tga</em> resource. <br />
-		[link:https://en.wikipedia.org/wiki/Truevision_TGA TGA] is a raster graphics, image file format.
-		</p>
-
-		<h2>代码示例</h2>
-
-		<code>
-		// instantiate a loader
-		const loader = new TGALoader();
-
-		// load a resource
-		const texture = loader.load(
-			// resource URL
-			'textures/crate_grey8.tga'
-			// called when loading is completed
-			function ( texture ) {
-
-				console.log( 'Texture is loaded' );
-
-			},
-			// called when the loading is in progresses
-			function ( xhr ) {
-
-				console.log( ( xhr.loaded / xhr.total * 100 ) + '% loaded' );
-
-			},
-			// called when the loading fails
-			function ( error ) {
-
-				console.log( 'An error happened' );
-
-			}
-		);
-
-		const material = new THREE.MeshPhongMaterial( {
-			color: 0xffffff,
-			map: texture
-		} );
-		</code>
-
-		<h2>例子</h2>
-		<p>
-			[example:webgl_loader_texture_tga]
-		</p>
-
-		<h2>Constructor</h2>
-
-		<h3>[name]( [param:LoadingManager manager] )</h3>
-		<p>
-		[page:LoadingManager manager] — The [page:LoadingManager loadingManager] for the loader to use. Default is [page:LoadingManager THREE.DefaultLoadingManager].
-		</p>
-		<p>
-		Creates a new [name].
-		</p>
-
-		<h2>Properties</h2>
-		<p>See the base [page:Loader] class for common properties.</p>
-
-		<h2>Methods</h2>
-		<p>See the base [page:Loader] class for common methods.</p>
-
-		<h3>[method:DataTexture load]( [param:String url], [param:Function onLoad], [param:Function onProgress], [param:Function onError] )</h3>
-		<p>
-		[page:String url] — A string containing the path/URL of the <em>.tga</em> file. <br />
-		[page:Function onLoad] — (optional) A function to be called after loading is successfully completed. The function receives loaded [page:DataTexture] as an argument.<br />
-		[page:Function onProgress] — (optional) A function to be called while the loading is in progress. The argument will be the XMLHttpRequest instance, which contains .[page:Integer total] and .[page:Integer loaded] bytes.<br />
-		[page:Function onError] — (optional) A function to be called if an error occurs during loading. The function receives the error as an argument.<br />
-		</p>
-		<p>
-		Begin loading from url and pass the loaded [page:DataTexture texture] to onLoad. The [page:DataTexture texture] is also directly returned for immediate use (but may not be fully loaded).
-		</p>
-
-		<h2>Source</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/loaders/TGALoader.js examples/jsm/loaders/TGALoader.js]
-		</p>
-	</body>
-</html>

+ 0 - 127
docs/examples/zh/math/Lut.html

@@ -1,127 +0,0 @@
-<!DOCTYPE html>
-<html lang="zh">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../" />
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>查找表([name])</h1>
-
-		<p class="desc">
-		表示颜色表的查找表,用于从一个数据值的范围中确定颜色值。
-		</p>
-
-
-		<h2>代码示例</h2>
-		<code>
-		const lut = new Lut( 'rainbow', 512 );
-		const color = lut.getColor( 0.5 );
-		</code>
-
-		<h2>构造函数</h2>
-
-
-		<h3>[name]( [param:String colormap], [param:Number count] )</h3>
-		<p>
-		colormap - Sets a colormap from predefined colormaps. Available colormaps are: *rainbow*, *cooltowarm*, *blackbody*, *grayscale*. Default is *rainbow*.<br />
-		count - Sets the number of colors used to represent the data array. Default is *32*.
-		</p>
-
-		<h2>属性</h2>
-
-		<h3>[property:Array lut]</h3>
-		<p>
-		The lookup table for the selected color map represented as an array of [page:Color]s.
-		</p>
-
-		<h3>[property:Array map]</h3>
-		<p>
-		The currently selected color map. Default is the *rainbow* color map.
-		</p>
-
-		<h3>[property:Number minV]</h3>
-		<p>
-		The minimum value to be represented with the lookup table. Default is *0*.
-		</p>
-
-		<h3>[property:Number maxV]</h3>
-		<p>
-		The maximum value to be represented with the lookup table. Default is *1*.
-		</p>
-
-		<h3>[property:Number n]</h3>
-		<p>
-		The number of colors of the current selected color map. Default is *32*.
-		</p>
-
-		<h2>方法</h2>
-
-		<h3>[method:this copy]( [param:Lut lut] ) [param:Lut this]</h3>
-		<p>
-		color — Lut to copy.
-		</p>
-		<p>
-		Copies the given lut.
-		</p>
-
-		<h3>[method:this addColorMap]( [param:String name], [param:Array arrayOfColors] )</h3>
-		<p>
-		name — The name of the color map.<br />
-		arrayOfColors — An array of color values. Each value is an array holding a threshold and the actual color value as a hexadecimal number.
-		</p>
-		<p>
-		Adds a color map to this [name] instance.
-		</p>
-
-		<h3>[method:HTMLCanvasElement createCanvas]()</h3>
-		<p>
-		Creates a canvas in order to visualize the lookup table as a texture.
-		</p>
-
-		<h3>[method:Color getColor]( [param:Number alpha] )</h3>
-		<p>
-		value -- the data value to be displayed as a color.
-		</p>
-		<p>
-		Returns an instance of [page:Color] for the given data value.
-		</p>
-
-		<h3>[method:this setColorMap]( [param:String colormap], [param:Number count] )</h3>
-		<p>
-		colormap — The name of the color map.<br />
-		count — The number of colors. Default is *32*.
-		</p>
-		<p>
-		Configure the lookup table for the given color map and number of colors.
-		</p>
-
-		<h3>[method:this setMin]( [param:Number minV] )</h3>
-		<p>
-		minV — The minimum value to be represented with the lookup table
-		</p>
-		<p>
-		Sets this Lut with the minimum value to be represented.
-		</p>
-
-		<h3>[method:this setMax]( [param:Number maxV] )</h3>
-		<p>
-		maxV — The maximum value to be represented with the lookup table.
-		</p>
-		<p>
-		Sets this Lut with the maximum value to be represented.
-		</p>
-
-		<h3>[method:HTMLCanvasElement updateCanvas]( [param:HTMLCanvasElement canvas] )</h3>
-		<p>
-		Updates the canvas with the [name]'s data.
-		</p>
-
-		<h2>源码</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/math/Lut.js examples/jsm/math/Lut.js]
-		</p>
-	</body>
-</html>

+ 0 - 84
docs/examples/zh/math/MeshSurfaceSampler.html

@@ -1,84 +0,0 @@
-<!DOCTYPE html>
-<html lang="zh">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../" />
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>[name]</h1>
-
-		<p class="desc">Utility class for sampling weighted random points on the surface of a mesh.</p>
-
-		<p>Weighted sampling is useful for effects like heavier foliage growth in certain areas of terrain, or concentrated particle emissions from specific parts of a mesh. Vertex weights may be written programmatically, or painted by hand as vertex colors in 3D tools like Blender.</p>
-
-		<h2>代码示例</h2>
-
-		<code>
-		// Create a sampler for a Mesh surface.
-		const sampler = new MeshSurfaceSampler( surfaceMesh )
-			.setWeightAttribute( 'color' )
-			.build();
-
-		const sampleMesh = new THREE.InstancedMesh( sampleGeometry, sampleMaterial, 100 );
-
-		const _position = new THREE.Vector3();
-		const _matrix = new THREE.Matrix4();
-
-		// Sample randomly from the surface, creating an instance of the sample
-		// geometry at each sample point.
-		for ( let i = 0; i < 100; i ++ ) {
-
-			sampler.sample( _position );
-
-			_matrix.makeTranslation( _position.x, _position.y, _position.z );
-
-			mesh.setMatrixAt( i, _matrix );
-
-		}
-
-		mesh.instanceMatrix.needsUpdate = true;
-
-		scene.add( mesh );
-		</code>
-
-		<h2>例子</h2>
-		<p>
-			[example:webgl_instancing_scatter]
-		</p>
-
-		<h2>Constructor</h2>
-
-		<h3>[name]( [param:Mesh mesh] )</h3>
-		<p>
-		[page:Mesh mesh] — Surface mesh from which to sample.
-		</p>
-		<p>
-		Creates a new [name]. If the input geometry is indexed, a non-indexed copy is made. After construction, the sampler is not able to return samples until [page:MeshSurfaceSampler.build build] is called.
-		</p>
-
-		<h2>Methods</h2>
-
-		<h3>[method:this setWeightAttribute]( [param:String name] )</h3>
-		<p>
-		Specifies a vertex attribute to be used as a weight when sampling from the surface. Faces with higher weights are more likely to be sampled, and those with weights of zero will not be sampled at all. For vector attributes, only <i>.x</i> is used in sampling.
-		</p>
-		<p>If no weight attribute is selected, sampling is randomly distributed by area.</p>
-
-		<h3>[method:this build]()</h3>
-		<p>
-		Processes the input geometry and prepares to return samples. Any configuration of the geometry or sampler must occur before this method is called. Time complexity is <i>O(n)</i> for a surface with <i>n</i> faces.
-		</p>
-
-		<h3>[method:this sample]( [param:Vector3 targetPosition], [param:Vector3 targetNormal], [param:Color targetColor] )</h3>
-		<p>
-		Selects a random point on the surface of the input geometry, returning the position and optionally the normal vector and color at that point. Time complexity is <i>O(log n)</i> for a surface with <i>n</i> faces.</i></p>
-
-		<h2>Source</h2>
-
-		<p>
-		[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/math/MeshSurfaceSampler.js examples/jsm/math/MeshSurfaceSampler.js]
-		</p>
-	</body>
-</html>

+ 0 - 174
docs/examples/zh/math/OBB.html

@@ -1,174 +0,0 @@
-<!DOCTYPE html>
-<html lang="zh">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../" />
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>[name]</h1>
-
-		<p class="desc">
-			Represents an oriented bounding box (OBB) in 3D space.
-		</p>
-
-		<h2>Examples</h2>
-		<p>
-			[example:webgl_math_obb]
-		</p>
-
-		<h2>Constructor</h2>
-
-		<h3>[name]( [param:Vector3 center], [param:Vector3 halfSize], [param:Matrix3 rotation] )</h3>
-		<p>
-			[page:Vector3 center] — The center of the [name]. (optional)<br />
-			[page:Vector3 halfSize] — Positive halfwidth extents of the [name] along each axis. (optional)<br />
-			[page:Matrix3 rotation] — The rotation of the [name]. (optional)
-		</p>
-		<p>
-			Creates a new [name].
-		</p>
-
-		<h2>Properties</h2>
-
-		<h3>[property:Vector3 center]</h3>
-		<p>
-			The center of the [name]. Default is *( 0, 0, 0 )*.
-		</p>
-
-		<h3>[property:Vector3 halfSize]</h3>
-		<p>
-			Positive halfwidth extents of the [name] along each axis. Default is *( 0, 0, 0 )*.
-		</p>
-
-		<h3>[property:Matrix3 rotation]</h3>
-		<p>
-			The rotation of the [name]. Default is the identity matrix.
-		</p>
-
-		<h2>Methods</h2>
-
-		<h3>[method:this applyMatrix4]( [param:Matrix4 matrix] )</h3>
-		<p>
-			[page:Matrix4 matrix] — A 4x4 transformation matrix.
-		</p>
-		<p>
-			Applies the given transformation matrix to this [name]. This method can be used to transform the
-			bounding volume with the world matrix of a 3D object in order to keep both entities in sync.
-		</p>
-
-		<h3>[method:Vector3 clampPoint]( [param:Vector3 point], [param:Vector3 clampedPoint] )</h3>
-		<p>
-			[page:Vector3 point] — The point that should be clamped within the bounds of this [name].<br />
-			[page:Matrix3 clampedPoint] — The result will be copied into this vector.
-		</p>
-		<p>
-			Clamps the given point within the bounds of this [name].
-		</p>
-
-		<h3>[method:OBB clone]()</h3>
-		<p>
-			Creates a cloned [name] for this instance.
-		</p>
-
-		<h3>[method:Boolean containsPoint]( [param:Vector3 point] )</h3>
-		<p>
-			[page:Vector3 point] — The point to test.
-		</p>
-		<p>
-			Whether the given point lies within this [name] or not.
-		</p>
-
-		<h3>[method:this copy]( [param:OBB obb] )</h3>
-		<p>
-			[page:OBB obb] — The [name] to copy.
-		</p>
-		<p>
-			Copies the properties of the given [name] to this [name].
-		</p>
-
-		<h3>[method:Boolean equals]( [param:OBB obb] )</h3>
-		<p>
-			[page:OBB obb] — The [name] to test.
-		</p>
-		<p>
-			Whether the given [name] is equal to this [name] or not.
-		</p>
-
-		<h3>[method:this fromBox3]( [param:Box3 box3] )</h3>
-		<p>
-			[page:Box3 box3] — An AABB.
-		</p>
-		<p>
-			Defines an [name] based on the given AABB.
-		</p>
-
-		<h3>[method:Vector3 getSize]( [param:Vector3 size] )</h3>
-		<p>
-			[page:Vector3 size] — The result will be copied into this vector.
-		</p>
-		<p>
-			Returns the size of this [name] into the given vector.
-		</p>
-
-		<h3>[method:Boolean intersectsBox3]( [param:Box3 box3] )</h3>
-		<p>
-			[page:Box3 box3] — The AABB to test.
-		</p>
-		<p>
-			Whether the given AABB intersects this [name] or not.
-		</p>
-
-		<h3>[method:Boolean intersectsSphere]( [param:Sphere sphere] )</h3>
-		<p>
-			[page:Sphere sphere] — The bounding sphere to test.
-		</p>
-		<p>
-			Whether the given bounding sphere intersects this [name] or not.
-		</p>
-
-		<h3>[method:Boolean intersectsOBB]( [param:OBB obb], [param:Number epsilon] )</h3>
-		<p>
-			[page:OBB obb] — The OBB to test.<br />
-			[page:Number epsilon] — An optional numeric value to counteract arithmetic errors. Default is *Number.EPSILON*.
-		</p>
-		<p>
-			Whether the given [name] intersects this [name] or not.
-		</p>
-
-		<h3>[method:Boolean intersectsRay]( [param:Ray ray] )</h3>
-		<p>
-			[page:Ray ray] — The ray to test.
-		</p>
-		<p>
-			Whether the given ray intersects this [name] or not.
-		</p>
-
-		<h3>[method:Vector3 intersectRay]( [param:Ray ray], [param:Vector3 intersectionPoint] )</h3>
-		<p>
-			[page:Ray ray] — The ray to test.<br />
-			[page:Vector3 intersectionPoint] — The result will be copied into this vector.
-		</p>
-		<p>
-			Performs a Ray/OBB intersection test and stores the intersection point to the given 3D vector.
-			If no intersection is detected, *null* is returned.
-		</p>
-
-		<h3>[method:this set]( [param:Vector3 center], [param:Vector3 halfSize], [param:Matrix3 rotation] )</h3>
-		<p>
-			[page:Vector3 center] — The center of the [name].<br />
-			[page:Vector3 halfSize] — Positive halfwidth extents of the [name] along each axis.<br />
-			[page:Matrix3 rotation] — The rotation of the [name].
-		</p>
-		<p>
-			Defines the [name] for the given values.
-		</p>
-
-		<h2>Source</h2>
-
-		<p>
-		[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/math/OBB.js examples/jsm/math/OBB.js]
-		</p>
-	</body>
-</html>

+ 0 - 218
docs/examples/zh/math/convexhull/ConvexHull.html

@@ -1,218 +0,0 @@
-<!DOCTYPE html>
-<html lang="zh">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../../" />
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>[name]</h1>
-
-		<p class="desc">
-			A convex hull class. Implements the Quickhull algorithm by: Dirk Gregorius. March 2014, Game Developers Conference: [link:http://media.steampowered.com/apps/valve/2014/DirkGregorius_ImplementingQuickHull.pdf Implementing QuickHull].
-		</p>
-
-
-		<h2>Constructor</h2>
-
-
-		<h3>[name]()</h3>
-		<p>
-			Creates a new instance of [name].
-		</p>
-
-		<h2>Properties</h2>
-
-		<h3>[property:VertexList assigned]</h3>
-		<p>
-			This [page:VertexList vertex list] holds all vertices that are assigned to a face. Default is an empty vertex list.
-		</p>
-
-		<h3>[property:Array faces]</h3>
-		<p>
-			The generated faces of the convex hull. Default is an empty array.
-		</p>
-
-		<h3>[property:Array newFaces]</h3>
-		<p>
-			This array holds the faces that are generated within a single iteration. Default is an empty array.
-		</p>
-
-		<h3>[property:Float tolerance]</h3>
-		<p>
-			The epsilon value that is used for internal comparative operations. The calculation of this value depends on the size of the geometry. Default is -1.
-		</p>
-
-		<h3>[property:VertexList unassigned]</h3>
-		<p>
-			This [page:VertexList vertex list] holds all vertices that are not assigned to a face. Default is an empty vertex list.
-		</p>
-
-		<h3>[property:Array vertices]</h3>
-		<p>
-			The internal representation of the given geometry data (an array of [page:VertexNode vertices]).
-		</p>
-
-		<h2>Methods</h2>
-
-		<h3>[method:HalfEdge addAdjoiningFace]( [param:VertexNode eyeVertex], [param:HalfEdge horizonEdge] )</h3>
-		<p>
-			[page:VertexNode eyeVertex] - The vertex that is added to the hull.<br />
-			[page:HalfEdge horizonEdge] - A single edge of the horizon.<br /><br />
-
-			Creates a face with the vertices 'eyeVertex.point', 'horizonEdge.tail' and 'horizonEdge.head' in CCW order.
-			All the half edges are created in CCW order thus the face is always pointing outside the hull
-		</p>
-
-		<h3>[method:this addNewFaces]( [param:VertexNode eyeVertex], [param:HalfEdge horizonEdge] )</h3>
-		<p>
-			[page:VertexNode eyeVertex] - The vertex that is added to the hull.<br />
-			[page:HalfEdge horizon] - An array of half-edges that form the horizon.<br /><br />
-
-			Adds 'horizon.length' faces to the hull, each face will be linked with the horizon opposite face and the face on the left/right.
-		</p>
-
-		<h3>[method:this addVertexToFace]( [param:VertexNode vertex], [param:Face face]	)</h3>
-		<p>
-			[page:VertexNodeNode vertex] - The vertex to add.<br />
-			[page:Face face] - The target face.<br /><br />
-
-			Adds a vertex to the 'assigned' list of vertices and assigns it to the given face.
-		</p>
-
-		<h3>[method:this addVertexToHull]( [param:VertexNode eyeVertex] )</h3>
-		<p>
-			[page:VertexNode eyeVertex] - The vertex that is added to the hull.<br /><br />
-
-			Adds a vertex to the hull with the following algorithm
-			<ul>
-				<li>Compute the 'horizon' which is a chain of half edges. For an edge to belong to this group it must be the edge connecting a face that can see 'eyeVertex' and a face which cannot see 'eyeVertex'.</li>
-				<li>All the faces that can see 'eyeVertex' have its visible vertices removed from the assigned vertex list.</li>
-				<li>A new set of faces is created with each edge of the 'horizon' and 'eyeVertex'. Each face is connected with the opposite horizon face and the face on the left/right.</li>
-				<li>The vertices removed from all the visible faces are assigned to the new faces if possible.</li>
-			</ul>
-		</p>
-
-		<h3>[method:this cleanup]()</h3>
-
-		<p>Cleans up internal properties after computing the convex hull.</p>
-
-		<h3>[method:this compute]()</h3>
-
-		<p>Starts the execution of the quick hull algorithm.</p>
-
-		<h3>[method:Object computeExtremes]()</h3>
-
-		<p>Computes the extremes values (min/max vectors) which will be used to compute the inital hull.</p>
-
-		<h3>[method:this computeHorizon]( [param:Vector3 eyePoint], [param:HalfEdge crossEdge], [param:Face face], [param:Array horizon]	)</h3>
-		<p>
-			[page:Vector3 eyePoint] - The 3D-coordinates of a point.<br />
-			[page:HalfEdge crossEdge] - The edge used to jump to the current face.<br />
-			[page:Face face] - The current face being tested.<br />
-			[page:Array horizon] - The edges that form part of the horizon in CCW order.<br /><br />
-
-			Computes a chain of half edges in CCW order called the 'horizon'. For an edge to be part of the horizon it must join a face that can see 'eyePoint' and a face that cannot see 'eyePoint'.
-		</p>
-
-		<h3>[method:this computeInitialHull]()</h3>
-
-		<p>Computes the initial simplex assigning to its faces all the points that are candidates to form part of the hull.</p>
-
-		<h3>[method:this containsPoint]( [param:Vector3 point] )</h3>
-		<p>
-			[page:Vector3 point] - A point in 3D space.<br /><br />
-
-			Returns *true* if the given point is inside this convex hull.
-		</p>
-
-		<h3>[method:this deleteFaceVertices]( [param:Face face], [param:Face absorbingFace]	)</h3>
-		<p>
-			[page:Face face] - The given face.<br />
-			[page:Face absorbingFace] - An optional face that tries to absorb the vertices of the first face.<br /><br />
-
-			Removes all the visible vertices that 'face' is able to see.
-			<ul>
-				<li>If 'absorbingFace' doesn't exist, then all the removed vertices will be added to the 'unassigned' vertex list.</li>
-				<li>If 'absorbingFace' exists, then this method will assign all the vertices of 'face' that can see 'absorbingFace'.</li>
-				<li>If a vertex cannot see 'absorbingFace', it's added to the 'unassigned' vertex list.</li>
-			</ul>
-		</p>
-
-		<h3>[method:Vector3 intersectRay]( [param:Ray ray], [param:Vector3 target] )</h3>
-		<p>
-			[page:Ray ray] - The given ray.<br />
-			[page:Vector3 target] - The target vector representing the intersection point.<br /><br />
-
-			Performs a ray intersection test with this convext hull. If no intersection is found, *null* is returned.
-		</p>
-
-		<h3>[method:Boolean intersectsRay]( [param:Ray ray] )</h3>
-		<p>
-			[page:Ray ray] - The given ray.<br /><br />
-
-			Returns *true* if the given ray intersects with this convex hull.
-		</p>
-
-		<h3>[method:this makeEmpty]()</h3>
-
-		<p>Makes this convex hull empty.</p>
-
-		<h3>[method:VertexNode nextVertexToAdd]()</h3>
-
-		<p>Finds the next vertex to create faces with the current hull.
-			<ul>
-				<li>Let the initial face be the first face existing in the 'assigned' vertex list.</li>
-				<li>If a face doesn't exist then return since there're no vertices left.</li>
-				<li>Otherwise for each vertex that face sees find the one furthest away from it.</li>
-			</ul>
-		</p>
-
-		<h3>[method:this reindexFaces]()</h3>
-
-		<p>Removes inactive (e.g. deleted) faces from the internal face list.</p>
-
-		<h3>[method:VertexNode removeAllVerticesFromFace]( [param:Face face]	)</h3>
-		<p>
-			[page:Face face] - The given face.<br /><br />
-
-			Removes all the visible vertices that a given face is able to see which are stored in the 'assigned' vertex list.
-		</p>
-
-		<h3>[method:this removeVertexFromFace]( [param:VertexNode vertex], [param:Face face]	)</h3>
-		<p>
-			[page:VertexNode vertex] - The vertex to remove.<br />
-			[page:Face face] - The target face.<br /><br />
-
-			Removes a vertex from the 'assigned' list of vertices and from the given face. It also makes sure that the link from 'face' to the first vertex it sees in 'assigned' is linked correctly after the removal.
-		</p>
-
-		<h3>[method:this resolveUnassignedPoints]( [param:Array newFaces]	)</h3>
-		<p>
-			[page:Face newFaces] - An array of new faces.<br /><br />
-
-			Reassigns as many vertices as possible from the unassigned list to the new faces.
-		</p>
-
-		<h3>[method:this setFromObject]( [param:Object3D object] )</h3>
-		<p>
-			[page:Object3D object] - [page:Object3D] to compute the convex hull of.<br /><br />
-
-			Computes the convex hull of an [page:Object3D] (including its children),accounting for the world transforms of both the object and its childrens.
-		</p>
-
-		<h3>[method:this setFromPoints]( [param:Array points] )</h3>
-		<p>
-			[page:Array points] - Array of [page:Vector3 Vector3s] that the resulting convex hull will contain.<br /><br />
-
-			Computes to convex hull for the given array of points.
-		</p>
-
-		<h2>Source</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/math/ConvexHull.js examples/jsm/math/ConvexHull.js]
-		</p>
-	</body>
-</html>

+ 0 - 97
docs/examples/zh/math/convexhull/Face.html

@@ -1,97 +0,0 @@
-<!DOCTYPE html>
-<html lang="zh">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../../" />
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>[name]</h1>
-
-		<p class="desc">
-			Represents a section bounded by a specific amount of half-edges. The current implmentation assumes that a face always consist of three edges.
-		</p>
-
-
-		<h2>Constructor</h2>
-
-
-		<h3>[name]()</h3>
-		<p>
-			Creates a new instance of [name].
-		</p>
-
-		<h2>Properties</h2>
-
-		<h3>[property:Vector3 normal]</h3>
-		<p>
-			The normal vector of the face. Default is a [page:Vector3] at (0, 0, 0).
-		</p>
-
-		<h3>[property:Vector3 midpoint]</h3>
-		<p>
-			The midpoint or centroid of the face. Default is a [page:Vector3] at (0, 0, 0).
-		</p>
-
-		<h3>[property:Float area]</h3>
-		<p>
-			The area of the face. Default is 0.
-		</p>
-
-		<h3>[property:Float constant]</h3>
-		<p>
-			Signed distance from face to the origin. Default is 0.
-		</p>
-
-		<h3>[property:VertexNode outside]</h3>
-		<p>
-			Reference to a vertex in a vertex list this face can see. Default is null.
-		</p>
-
-		<h3>[property:Integer mark]</h3>
-		<p>
-			Marks if a face is visible or deleted. Default is 'Visible'.
-		</p>
-
-		<h3>[property:HalfEdge edge]</h3>
-		<p>
-			Reference to the base edge of a face. To retrieve all edges, you can use the 'next' reference of the current edge. Default is null.
-		</p>
-
-		<h2>Methods</h2>
-
-		<h3>[method:Face create]( [param:VertexNode a], [param:VertexNode b], [param:VertexNode c] )</h3>
-		<p>
-			[page:VertexNode a] - First vertex of the face.<br />
-			[page:VertexNode b] - Second vertex of the face.<br />
-			[page:VertexNode c] - Third vertex of the face.<br /><br />
-
-			Creates a face.
-		</p>
-
-		<h3>[method:HalfEdge getEdge]( [param:Integer i] )</h3>
-		<p>
-			[page:Integer i] - The index of the edge.<br /><br />
-
-			Returns an edge by the given index.
-		</p>
-
-		<h3>[method:this compute] ()</h3>
-
-		<p>Computes all properties of the face.</p>
-
-		<h3>[method:Float distanceToPoint]( [param:Vector3 point] )</h3>
-		<p>
-			[page:Vector3 point] - Any point in 3D space.<br /><br />
-
-			Returns the signed distance from a given point to the plane representation of this face.
-		</p>
-
-		<h2>Source</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/math/ConvexHull.js examples/jsm/math/ConvexHull.js]
-		</p>
-	</body>
-</html>

+ 0 - 83
docs/examples/zh/math/convexhull/HalfEdge.html

@@ -1,83 +0,0 @@
-<!DOCTYPE html>
-<html lang="zh">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../../" />
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>[name]</h1>
-
-		<p class="desc">
-			The basis for a half-edge data structure, also known as doubly connected edge list (DCEL).<br />
-		</p>
-
-
-		<h2>Constructor</h2>
-
-
-		<h3>[name]( [param:VertexNode vertex], [param:Face face] )</h3>
-		<p>
-		[page:VertexNode vertex] - [page:VertexNode] A reference to its destination vertex.<br />
-		[page:Face face] - [page:Face] A reference to its face.<br /><br />
-
-		Creates a new instance of [name].
-		</p>
-		<h2>Properties</h2>
-
-		<h3>[property:VertexNode vertex]</h3>
-		<p>
-			Reference to the destination vertex. The origin vertex can be obtained by querying the destination of its twin, or of the previous half-edge. Default is undefined.
-		</p>
-
-		<h3>[property:HalfEdge prev]</h3>
-		<p>
-			Reference to the previous half-edge of the same face. Default is null.
-		</p>
-
-		<h3>[property:HalfEdge next]</h3>
-		<p>
-			Reference to the next half-edge of the same face. Default is null.
-		</p>
-
-		<h3>[property:HalfEdge twin]</h3>
-		<p>
-			Reference to the twin half-edge to reach the opposite face. Default is null.
-		</p>
-
-		<h3>[property:Face face]</h3>
-		<p>
-			 Each half-edge bounds a single face and thus has a reference to that face. Default is undefined.
-		</p>
-
-		<h2>Methods</h2>
-
-		<h3>[method:VertexNode head]()</h3>
-		<p>Returns the destination vertex.</p>
-
-		<h3>[method:VertexNode tail]()</h3>
-		<p>Returns the origin vertex.</p>
-
-		<h3>[method:Float length]()</h3>
-		<p>Returns the [link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean length]
-		(straight-line length) of the edge.</p>
-
-		<h3>[method:Float lengthSquared]()</h3>
-		<p>Returns the square of the [link:https://en.wikipedia.org/wiki/Euclidean_distance Euclidean length]
-		(straight-line length) of the edge.</p>
-
-		<h3>[method:this setTwin]( [param:HalfEdge edge] )</h3>
-		<p>
-			[page:HalfEdge edge] - Any half-edge.<br /><br />
-
-			Sets the twin edge of this half-edge. It also ensures that the twin reference of the given half-edge is correctly set.
-		</p>
-
-		<h2>Source</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/math/ConvexHull.js examples/jsm/math/ConvexHull.js]
-		</p>
-	</body>
-</html>

+ 0 - 103
docs/examples/zh/math/convexhull/VertexList.html

@@ -1,103 +0,0 @@
-<!DOCTYPE html>
-<html lang="zh">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../../" />
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>[name]</h1>
-
-		<p class="desc">
-			A doubly linked list of vertices.
-		</p>
-
-
-		<h2>Constructor</h2>
-
-
-		<h3>[name]()</h3>
-		<p>
-			Creates a new instance of [name].
-		</p>
-
-		<h2>Properties</h2>
-
-		<h3>[property:VertexNode head]</h3>
-		<p>
-			Reference to the first vertex of the linked list. Default is null.
-		</p>
-
-		<h3>[property:VertexNode tail]</h3>
-		<p>
-			Reference to the last vertex of the linked list. Default is null.
-		</p>
-
-		<h2>Methods</h2>
-
-		<h3>[method:VertexNode first]()</h3>
-		<p>Returns the head reference.</p>
-
-		<h3>[method:VertexNode last]()</h3>
-		<p>Returns the tail reference.</p>
-
-		<h3>[method:this clear]()</h3>
-		<p>Clears the linked list.</p>
-
-		<h3>[method:this insertBefore]( [param:Vertex target], [param:Vertex vertex] )</h3>
-		<p>
-			[page:Vertex target] - The target vertex. It's assumed that this vertex belongs to the linked list.<br />
-			[page:Vertex vertex] - The vertex to insert.<br /><br />
-
-			Inserts a vertex <strong>before</strong> a target vertex.
-		</p>
-
-		<h3>[method:this insertAfter]( [param:Vertex target], [param:Vertex vertex] )</h3>
-		<p>
-			[page:Vertex target] - The target vertex. It's assumed that this vertex belongs to the linked list.<br />
-			[page:Vertex vertex] - The vertex to insert.<br /><br />
-
-			Inserts a vertex <strong>after</strong> a target vertex.
-		</p>
-
-		<h3>[method:this append]( [param:Vertex vertex] )</h3>
-		<p>
-			[page:Vertex vertex] - The vertex to append.<br /><br />
-
-			Appends a vertex to the end of the linked list.
-		</p>
-
-		<h3>[method:this appendChain]( [param:Vertex vertex] )</h3>
-		<p>
-			[page:Vertex vertex] - The head vertex of a chain of vertices.<br /><br />
-
-			Appends a chain of vertices where the given vertex is the head.
-		</p>
-
-		<h3>[method:this remove]( [param:Vertex vertex] )</h3>
-		<p>
-			[page:Vertex vertex] - The vertex to remove.<br /><br />
-
-			Removes a vertex from the linked list.
-		</p>
-
-		<h3>[method:this removeSubList]( [param:Vertex a], [param:Vertex b] )</h3>
-		<p>
-			[page:Vertex a] - The head of the sublist.<br />
-			[page:Vertex b] - The tail of the sublist.<br /><br />
-
-			Removes a sublist of vertices from the linked list.
-		</p>
-
-		<h3>[method:Boolean isEmpty]()</h3>
-
-		<p>Returns true if the linked list is empty.</p>
-
-		<h2>Source</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/math/ConvexHull.js examples/jsm/math/ConvexHull.js]
-		<p>
-	</body>
-</html>

+ 0 - 55
docs/examples/zh/math/convexhull/VertexNode.html

@@ -1,55 +0,0 @@
-<!DOCTYPE html>
-<html lang="zh">
-	<head>
-		<meta charset="utf-8" />
-		<base href="../../../../" />
-		<script src="page.js"></script>
-		<link type="text/css" rel="stylesheet" href="page.css" />
-	</head>
-	<body>
-		<h1>[name]</h1>
-
-		<p class="desc">
-			A vertex as a double linked list node.
-		</p>
-
-
-		<h2>Constructor</h2>
-
-
-		<h3>[name]( [param:Vector3 point] )</h3>
-		<p>
-		[page:Vector3 point] - [page:Vector3] A point (x, y, z) in 3D space.<br /><br />
-
-		Creates a new instance of [name].
-		</p>
-
-		<h2>Properties</h2>
-
-		<h3>[property:Vector3 point]</h3>
-		<p>
-			A point (x, y, z) in 3D space. Default is undefined.
-		</p>
-
-		<h3>[property:VertexNode prev]</h3>
-		<p>
-			Reference to the previous vertex in the double linked list. Default is null.
-		</p>
-
-		<h3>[property:VertexNode next]</h3>
-		<p>
-			Reference to the next vertex in the double linked list. Default is null.
-		</p>
-
-		<h3>[property:Face face]</h3>
-		<p>
-			Reference to the face that is able to see this vertex. Default is undefined.
-		</p>
-
-		<h2>Source</h2>
-
-		<p>
-			[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/math/ConvexHull.js examples/jsm/math/ConvexHull.js]
-		<p>
-	</body>
-</html>

+ 9 - 0
docs/examples/zh/objects/Lensflare.html

@@ -15,6 +15,15 @@
 			创建一个模拟追踪着灯光的镜头光晕。 [name] can only be used when setting the *alpha* context parameter of [page:WebGLRenderer] to *true*.
 		</p>
 
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { Lensflare } from 'three/addons/objects/Lensflare.js';
+		</code>
+
 		<h2>代码示例</h2>
 
 		<code>

+ 11 - 0
docs/examples/zh/postprocessing/EffectComposer.html

@@ -15,6 +15,17 @@
 			后期处理过程根据它们添加/插入的顺序来执行,最后一个过程会被自动渲染到屏幕上。
 		</p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { EffectComposer } from 'three/addons/postprocessing/EffectComposer.js';
+		</code>
+
 		<h2>例子</h2>
 
 		<p>

+ 11 - 0
docs/examples/zh/renderers/CSS2DRenderer.html

@@ -14,6 +14,17 @@
 			`[name]` only supports 100% browser and display zoom.
 		</p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { CSS2DRenderer } from 'three/addons/renderers/CSS2DRenderer.js';
+		</code>
+
 		<h2>例子</h2>
 
 		<p>

+ 11 - 0
docs/examples/zh/renderers/CSS3DRenderer.html

@@ -24,6 +24,17 @@
 			因此,[name]仅仅关注普通的DOM元素,这些元素被包含到了特殊的对象中(*CSS3DObject*或者*CSS3DSprite*),然后被加入到场景图中。
 		</p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { CSS3DRenderer } from 'three/addons/renderers/CSS3DRenderer.js';
+		</code>
+
 		<h2>例子</h2>
 
 		<p>

+ 11 - 0
docs/examples/zh/renderers/SVGRenderer.html

@@ -33,6 +33,17 @@
 			</ul>
 		</div>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { SVGRenderer } from 'three/addons/renderers/SVGRenderer.js';
+		</code>
+
 		<h2>例子</h2>
 
 		<p>

+ 10 - 0
docs/examples/zh/utils/BufferGeometryUtils.html

@@ -13,6 +13,16 @@
 		一个包含 [page:BufferGeometry BufferGeometry] 实例的实用方法的类。
 		</p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { BufferGeometryUtils } from 'three/addons/utils/BufferGeometryUtils.js';
+		</code>
 
 		<h2>方法</h2>
 

+ 10 - 0
docs/examples/zh/utils/SceneUtils.html

@@ -11,6 +11,16 @@
 
 		<p class="desc">一个用于操控场景的实用类。</p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { SceneUtils } from 'three/addons/utils/SceneUtils.js';
+		</code>
 
 		<h2>方法</h2>
 

+ 11 - 0
docs/examples/zh/utils/SkeletonUtils.html

@@ -11,6 +11,17 @@
 
 		<p class="desc">用于操控 [page:Skeleton]、 [page:SkinnedMesh]、和 [page:Bone] 的实用方法。</p>
 
+		<h2>进口</h2>
+
+		<p>
+			[name] 是一个附加组件,必须显式导入。
+			See [link:#manual/introduction/Installation Installation / Addons].
+		</p>
+
+		<code>
+			import { SkeletonUtils } from 'three/addons/utils/SkeletonUtils.js';
+		</code>
+
 		<h2>方法</h2>
 
 		<h3>[method:Object3D clone]( [param:Object3D object] )</h3>

+ 2 - 34
docs/list.json

@@ -833,12 +833,6 @@
 
 		"Addons": {
 
-			"动画": {
-				"CCDIKSolver": "examples/zh/animations/CCDIKSolver",
-				"MMDAnimationHelper": "examples/zh/animations/MMDAnimationHelper",
-				"MMDPhysics": "examples/zh/animations/MMDPhysics"
-			},
-
 			"控制": {
 				"DragControls": "examples/zh/controls/DragControls",
 				"FirstPersonControls": "examples/zh/controls/FirstPersonControls",
@@ -860,8 +854,7 @@
 				"LightProbeHelper": "examples/zh/helpers/LightProbeHelper",
 				"PositionalAudioHelper": "examples/zh/helpers/PositionalAudioHelper",
 				"RectAreaLightHelper": "examples/zh/helpers/RectAreaLightHelper",
-				"VertexNormalsHelper": "examples/zh/helpers/VertexNormalsHelper",
-				"VertexTangentsHelper": "examples/zh/helpers/VertexTangentsHelper"
+				"VertexNormalsHelper": "examples/zh/helpers/VertexNormalsHelper"
 			},
 
 			"灯光": {
@@ -869,17 +862,12 @@
 			},
 
 			"加载器": {
-				"DRACOLoader": "examples/zh/loaders/DRACOLoader",
 				"FontLoader": "examples/zh/loaders/FontLoader",
 				"GLTFLoader": "examples/zh/loaders/GLTFLoader",
 				"MMDLoader": "examples/zh/loaders/MMDLoader",
 				"MTLLoader": "examples/zh/loaders/MTLLoader",
 				"OBJLoader": "examples/zh/loaders/OBJLoader",
-				"PCDLoader": "examples/zh/loaders/PCDLoader",
-				"PDBLoader": "examples/zh/loaders/PDBLoader",
-				"PRWMLoader": "examples/zh/loaders/PRWMLoader",
-				"SVGLoader": "examples/zh/loaders/SVGLoader",
-				"TGALoader": "examples/zh/loaders/TGALoader"
+				"PCDLoader": "examples/zh/loaders/PCDLoader"
 			},
 
 			"物体": {
@@ -890,26 +878,6 @@
 				"EffectComposer": "examples/zh/postprocessing/EffectComposer"
 			},
 
-			"导出器": {
-				"ColladaExporter": "examples/zh/exporters/ColladaExporter",
-				"GLTFExporter": "examples/zh/exporters/GLTFExporter",
-				"PLYExporter": "examples/zh/exporters/PLYExporter"
-			},
-
-			"数学库": {
-				"LookupTable": "examples/zh/math/Lut",
-				"MeshSurfaceSampler": "examples/zh/math/MeshSurfaceSampler",
-				"OBB": "examples/en/math/OBB"
-			},
-
-			"QuickHull": {
-				"Face": "examples/zh/math/convexhull/Face",
-				"HalfEdge": "examples/zh/math/convexhull/HalfEdge",
-				"ConvexHull": "examples/zh/math/convexhull/ConvexHull",
-				"VertexNode": "examples/zh/math/convexhull/VertexNode",
-				"VertexList": "examples/zh/math/convexhull/VertexList"
-			},
-
 			"渲染器": {
 				"CSS2DRenderer": "examples/zh/renderers/CSS2DRenderer",
 				"CSS3DRenderer": "examples/zh/renderers/CSS3DRenderer",