首先,感谢您为这个奇妙的工作,我有与three.js工作很多乐趣。WebGLRenderingContext错误加载纹理贴图
我试图找到有关复发性问题,.WebGLRenderingContext答案:GL错误:GL_INVALID_OPERATION:glDrawElements:试图访问超出范围的顶点的属性2
我做的WebGL中的一个网站,我花了几周了解所有关于three.js,但我无法解决这个问题。 每次我尝试将画布加载到地图,凹凸贴图和specmap中时,我都会在Chrome和Firefox上收到此消息(最新版本)。 我的所有网格都是从obj文件加载的,我重写了OBJMTLLoader.js以便能够从obj文件等加载更多参数。这里用于加载图像的代码为 。
THREE.MTLLoader.loadTexture =函数(URL,映射,的onLoad,的onError){
var isCompressed = url.toLowerCase().endsWith(".dds");
var texture = null;
if (isCompressed) {
texture = THREE.ImageUtils.loadCompressedTexture(url, mapping, onLoad, onError);
} else {
var image = new Image();
texture = new THREE.Texture(image, mapping);
var loader = new THREE.ImageLoader();
loader.addEventListener('load', function (event) {
texture.image = THREE.MTLLoader.ensurePowerOfTwo_(event.content);
texture.needsUpdate = true;
if (onLoad)
onLoad(texture);
});
loader.addEventListener('error', function (event) {
if (onError) onError(event.message);
});
loader.crossOrigin = this.crossOrigin;
loader.load(url, image);
}
return texture;
}; 我很确定它是从这个,因为当我禁用此功能,没有更多的警告。
这是因为在加载数据时网格物体具有空图像的纹理? 图像的尺寸是否有限制?
现在一切工作都是罚款,但我觉得奇怪的是在控制台中有这些消息。
谢谢
也许如果你能提供更多的代码(的jsfiddle?)我们可以模拟这个警告,看到的是怎么回事......? –