提交 e1a2ad2e 编写于 作者: D Daniel Hritzkiv

Use updated OBJ Loader in OBJ_MTL example

This requires loading the MTL first with an instance of `MTLLoader`, and passing the resulting `materialCreator` to an instance of `OBJLoader`
上级 3056f990
...@@ -34,7 +34,7 @@ ...@@ -34,7 +34,7 @@
<script src="js/loaders/DDSLoader.js"></script> <script src="js/loaders/DDSLoader.js"></script>
<script src="js/loaders/MTLLoader.js"></script> <script src="js/loaders/MTLLoader.js"></script>
<script src="js/loaders/OBJMTLLoader.js"></script> <script src="js/loaders/OBJLoader.js"></script>
<script src="js/Detector.js"></script> <script src="js/Detector.js"></script>
<script src="js/libs/stats.min.js"></script> <script src="js/libs/stats.min.js"></script>
...@@ -83,19 +83,31 @@ ...@@ -83,19 +83,31 @@
} }
}; };
var onError = function ( xhr ) { var onError = function ( xhr ) { };
};
THREE.Loader.Handlers.add( /\.dds$/i, new THREE.DDSLoader() ); THREE.Loader.Handlers.add( /\.dds$/i, new THREE.DDSLoader() );
var loader = new THREE.OBJMTLLoader(); var objLoader = new THREE.OBJLoader();
loader.load( 'obj/male02/male02.obj', 'obj/male02/male02_dds.mtl', function ( object ) { var mtlLoader = new THREE.MTLLoader(objLoader.manager);
object.position.y = - 80; var mtlUrl = 'obj/male02/male02_dds.mtl';
scene.add( object ); var objUrl = 'obj/male02/male02.obj';
}, onProgress, onError ); mtlLoader.setBaseUrl( objUrl.substr( 0, objUrl.lastIndexOf( "/" ) + 1 ) );
mtlLoader.load( mtlUrl, function( materials ) {
materials.preload();
objLoader.setMaterials( materials );
objLoader.load( objUrl, function ( object ) {
object.position.y = - 80;
scene.add( object );
}, onProgress, onError );
});
// //
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册