2
0
Эх сурвалжийг харах

Merge pull request #14866 from WestLangley/dev-matcap_example

Matcap example: replaced model
Mr.doob 6 жил өмнө
parent
commit
cc06e7cbc2

+ 13 - 31
examples/webgl_materials_matcap.html

@@ -77,17 +77,19 @@
 				scene = new THREE.Scene();
 
 				// camera
-				camera = new THREE.PerspectiveCamera( 40, window.innerWidth / window.innerHeight, 1, 1000 );
-				camera.position.set( - 10, 0, 23 );
+				camera = new THREE.PerspectiveCamera( 40, window.innerWidth / window.innerHeight, 1, 100 );
+				camera.position.set( 0, 0, 12 );
 
 				// controls
 				var controls = new THREE.OrbitControls( camera, renderer.domElement );
 				controls.addEventListener( 'change', render );
-				controls.minDistance = 10;
-				controls.maxDistance = 50;
-				controls.enablePan = false;
+				controls.enableZoom = false;
 
-				var loader = new THREE.TextureLoader();
+				// manager
+				var manager = new THREE.LoadingManager( render );
+
+				// matcap
+				var loader = new THREE.TextureLoader( manager );
 
 				var matcap = loader.load( 'textures/matcaps/matcap-porcelain-white.jpg', function( texture ) {
 
@@ -98,37 +100,17 @@
 				} );
 
 				// model
-				new THREE.GLTFLoader().load( 'models/gltf/Nefertiti/Nefertiti.glb', function ( gltf ) {
-
-					gltf.scene.traverse( function ( child ) {
-
-						if ( child.isMesh ) {
-
-							child.material = new THREE.MeshMatcapMaterial( {
-
-								matcap: matcap
-
-							} );
-
-							//
-
-							child.material.side = THREE.DoubleSide;
-
-							child.scale.multiplyScalar( 0.5 );
-
-							// recenter
-
-							new THREE.Box3().setFromObject( child ).getCenter( child.position ).multiplyScalar( - 1 );
+				new THREE.GLTFLoader( manager ).load( 'models/gltf/LeePerrySmith/LeePerrySmith.glb', function ( gltf ) {
 
-							mesh = child;
+					mesh = gltf.scene.children[ 0 ];
 
-							scene.add( mesh );
+					mesh.material = new THREE.MeshMatcapMaterial( {
 
-						}
+						matcap: matcap
 
 					} );
 
-					render();
+					scene.add( mesh );
 
 				} );