【问题标题】:OBJLoader/ThreeJS :Uncaught TypeError: undefined is not a functionOBJLoader/ThreeJS :Uncaught TypeError: undefined is not a function
【发布时间】:2013-03-21 00:57:45
【问题描述】:

当我尝试加载自定义 obj 文件时,我收到 Three.OBJLoader Uncaught TypeError: undefined is not a function。 我检查了THREE.OBJLoader not working (TypeError),并尝试改组所有插入的 OBJLoader.js,但仍然没有任何效果。

<body>
    <script type="text/javascript" src="OBJLoader.js"></script>

    <script src="https://raw.github.com/mrdoob/three.js/master/build/three.js"></script>
    <!-- // <script src="https://raw.github.com/mrdoob/three.js/master/build/three.min.js"></script> -->

    <script>

    function init(){
        var scene = new THREE.Scene();
        var camera = new THREE.PerspectiveCamera(75, window.innerWidth/window.innerHeight, 0.1, 1000);

        var renderer = new THREE.WebGLRenderer();
        renderer.setSize(window.innerWidth, window.innerHeight);
        document.body.appendChild(renderer.domElement);


        var loader = new THREE.OBJLoader();
            loader.addEventListener( 'load', function ( event ) {

                var object = event.content;

                object.traverse( function ( child ) {

                    if ( child instanceof THREE.Mesh ) {

                        child.material.map = texture;

                    }

                } );

                object.position.y = - 80;
                scene.add( object );

            });
        loader.load('gargoyle/gargoyle.obj');

非常感谢任何帮助

【问题讨论】:

    标签: three.js webgl


    【解决方案1】:

    你的脚本标签需要在,objloader.js包含应该在主three.js文件之后,还要仔细检查OBJLoader.js的路径

    【讨论】:

    • 很奇怪...我删除了事件侦听器并只使用了 loader.load('.../gargoyle.obj', function(object){ scene.add(object)} 并且它有效....无论如何谢谢:)
    • 做了同样的修复,不过好像应该有别的办法~
    猜你喜欢
    • 1970-01-01
    • 2014-08-15
    • 2015-01-14
    • 2014-07-06
    • 2014-09-01
    • 2015-11-04
    • 2013-03-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多