javascript - ImageUtils.loadTexture 与 Canvas 渲染器中的回调

标签 javascript canvas webgl three.js

我正在使用 three.js 修订版 53

在 Canvas Renderer(Win7 上的 IE)中加载纹理并为 onLoad 事件添加回调时,纹理未显示。当我删除回调函数时,纹理会按预期显示:

//添加回调不工作

var material = new THREE.MeshBasicMaterial({
            map: THREE.ImageUtils.loadTexture('text_build.png', {}, function()
            {
 //do something
            })
});
var plane = new THREE.Mesh(new THREE.PlaneGeometry(135, 135), material);
plane .overdraw = true;
scene.add(plane );

//无回调工作

var material = new THREE.MeshBasicMaterial({
             map: THREE.ImageUtils.loadTexture('text_build.png')
});
var plane = new THREE.Mesh(new THREE.PlaneGeometry(135, 135), material);
plane .overdraw = true;
scene.add(plane );

在 WebGL 渲染器(FF、WIn7 上的 Chrome)中运行相同的代码时,两个示例都工作正常。

也许有人可以指出我显然在这里犯的错误。

非常感谢。

最佳答案

试试这个:

var material = new THREE.MeshBasicMaterial({    
    map: THREE.ImageUtils.loadTexture( 'text_build.png', new THREE.UVMapping(), function() { ... } )
});

关于javascript - ImageUtils.loadTexture 与 Canvas 渲染器中的回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13980889/

相关文章:

javascript - UIWebview 如何在 iOS 中进行渲染?

javascript - 如何使用 webgl 处理和更新大型数组?

javascript - 在 webGL 中渲染圆环时出现问题

javascript - Loopback组件存储移动设备/ postman 上传的文件

asp.net - 使用 JavaScript 禁用 ASP.NET 验证器

javascript - 在 CycleJS 中使用输入字段值作为 HTTP 请求数据的一部分

javascript - Canvas 饼图 : Having ctx. FillText() 出现问题,因此我的标签无法正确显示

javascript - 识别圆弧上的事件

javascript - createPattern 方法实现

javascript - 为什么我在从图像加载数据时收到 texSubImage3D 错误