首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >THREE.js不将材质加载到对象上

THREE.js不将材质加载到对象上
EN

Stack Overflow用户
提问于 2016-09-16 02:18:38
回答 1查看 805关注 0票数 1

获取以前在ios应用程序中使用的mtl+obj文件,将3d pcb芯片加载到场景中。

使用three.js (r80)加载时,对象会加载并且几何体看起来是正确的,但没有纹理、颜色或图像加载到对象上。我做错了什么吗?

MTL file

OBJ File

mtl文件中引用的所有图像都位于与mtl+obj文件相同的目录中,我看到这些图像被请求并正确地提供给浏览器。

在XCode中,对象看起来是正确的:

在Blender中加载,它具有正确的颜色,但没有将图像投影到对象上:

通过three.js加载,它只是一个黑色物体:

我正在使用的JS代码:

代码语言:javascript
复制
    var camera, scene, renderer;
    scene = new THREE.Scene();
    camera = new THREE.PerspectiveCamera( 75, window.innerWidth / window.innerHeight, 0.1, 1000 );
    init();

    function init() {
        var mtlLoader = new THREE.MTLLoader();
        mtlLoader.load( "Thunderboard.mtl", function( materials ) {
            materials.preload();
            var objLoader = new THREE.OBJLoader();
            objLoader.setMaterials( materials );
            objLoader.load("Thunderboard.obj", function ( object ) {
                scene.add(object);
            });
        });

        camera.position.z = 3;
        renderer = new THREE.WebGLRenderer({ alpha: true });
        renderer.setSize( window.innerWidth, window.innerHeight );
        document.body.appendChild( renderer.domElement );
        renderer.render( scene, camera );
    }
EN

Stack Overflow用户

回答已采纳

发布于 2016-09-16 02:27:43

你有没有试过在场景中添加一些灯光?

票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39517836

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档