three.js - 纹理没有加载

时间:2017-02-01 21:25:06

标签: javascript three.js

CONTEXT

我尝试使用here重新创建显示jsfiddle的示例。我使用此代码加载纹理数组:

        var r = "https://github.com/timoxley/threejs/tree/master/examples/textures/cube/Park3Med/";
        var urls = [
            r + "px.jpg", r + "nx.jpg",
            r + "py.jpg", r + "ny.jpg",
            r + "pz.jpg", r + "nz.jpg"
        ];

我只是想重新创建纹理,而不是层。有没有理由为什么在我设置它的时候这不会起作用?

2 个答案:

答案 0 :(得分:3)

接受的答案在陈述错误时是正确的,但错过了一个简单的解决方案。您可以使用Three.js加载交叉原始图像数据。你只需要正确设置它。以下是修复程序的示例:https://jsfiddle.net/1dy343xy/

代码更改:

    var loader = new THREE.CubeTextureLoader();

    loader.setCrossOrigin( 'anonymous' );

    var textureCube = loader.load( urls );

另请注意,您指的是错误的网址。你需要使用git raw urls来做你正在做的事情,虽然我不知道它是否符合git ToS。

答案 1 :(得分:1)

这与安全有关。您可以在apache或节点服务器上提供项目服务。你不会再遇到这个问题了。