Javascript 如何从3d max studio导出对象以在THree.js中使用

Javascript 如何从3d max studio导出对象以在THree.js中使用,javascript,three.js,webgl,3dsmax,Javascript,Three.js,Webgl,3dsmax,加载在3d studio max中创建的对象时出现问题! 我像.obj一样导出它(它给了我两个文件,.obj和.mtl)。我用过objmtloadet()但不起作用,我用过MTLLOADER()和OBJLOADER()但都不起作用。我使用了其他对象,它们工作了,我想问题是当我在3d max中导出对象时 以下是我在webgl中用于加载对象的代码: var loader = new THREE.OBJLoader(); loader.addEventListener ('load', fun

加载在3d studio max中创建的对象时出现问题! 我像.obj一样导出它(它给了我两个文件,.obj和.mtl)。我用过objmtloadet()但不起作用,我用过MTLLOADER()和OBJLOADER()但都不起作用。我使用了其他对象,它们工作了,我想问题是当我在3d max中导出对象时

以下是我在webgl中用于加载对象的代码:

var loader = new THREE.OBJLoader();
    loader.addEventListener ('load', function(event)
    {
        objModel = event.content;
        objModel.traverse(function(child)
        {
            if (child instanceof THREE.Mesh)
            {
                child.material = new THREE.MeshBasicMaterial
                ({
                    color:0xffffff, wireframe: true
                });
            }
        }); 
        objModel.position.y -80;
        scene.add(objModel);
    });
    loader.load('asteroid.obj');
下一个代码:

 var loader = new THREE.OBJMTLLoader();
    loader.addEventListener ('load', function(event){
        objModel = event.content;
        objModel.position.x = 80;
        objModel.position.y = -80;
        objModel.position.z = 0;
        objModel.scale.y = 1;
        objModel.scale.x = 1;
        objModel.scale.z = 1;
        scene.add(objModel);
    });
    loader.load('asteroid.obj','asteroid.mtl');
当我使用其他对象时,这些代码工作得很好,但当我使用我的对象时,它不工作!!有人能告诉我如何从3d max studio导出一个对象以在THree.js中使用它吗

新编辑:
以下是该对象的下载链接:

是的问题在于导出文件由多边形组成,而当前的OBJMTLLoader实现需要三角形。作为一种解决方法,在导出时使用我确信3dsmax具有的三角剖分标志创建三角形

你能发布有问题的生成的obj和mtl文件吗?我更新了帖子,最后你可以看到下载对象的链接。。。。或者只需复制此处的链接: