three.js_ "Failed to execute 'texImage2D' on 'WebGLRenderingContext': tainted canvases may not be loded."

这个报错是请求图片跨域了。

1.当我们使用thee.js的时候肯定会碰到利用各种请求去向服务器请求贴图。

2.假设我们获取的是图片在服务器上的路径然后我们用

 

加载贴图到这里都是没有问题当我们在贴图加载完成的时候去render(Scene, Camera);获取当它自己刷新的时候就会报错然后我们加载的贴图显示不出来然后浏览器报这个错误。

 

这个一般是安全问题,解决方法就是我们翻到three.js的源码到42843行把对应的loader.setCrossOrigin( this.crossOrigin ); 代码换成loader.setCrossOrigin( ‘Anonymous’ );这个就好了 

 

原文地址

posted @ 2018-12-25 14:53  幽谷兰花  阅读(6795)  评论(0)    收藏  举报