關於 Threejs 貼圖跨域問題解決辦法


 

three.js 貼圖時一直報"DOMException: Failed to execute 'texImage2D' on 'WebGLRenderingContext': Tainted canvases may not be loaded.",   

 

這是因為canvas在畫圖時會圖片存在跨域,但是在three.js中並沒有進行處理,所以是可以通過修改three.js源碼,設置 image.crossOrigin=''; 處理canvas的跨域問題 具體步驟如下:

1. 找到 threejs  源碼  threejs.module.js 文件 打開

 

2. CTRL +  F  查找到  ImageLoader.prototype

 

3. 到 ImageLoader.prototype  類的 return 之前(向下滑)

    在紅框處 加上一句  image.crossOrigin=''; 保存, 就解決了跨域問題

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM