|
@@ -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 );
|
|
|
|
|
|
} );
|
|
|
|