当我尝试在webgl上进行拾取时,我使用帧缓冲区并读取像素颜色来执行此操作。当函数gl.readpixels运行时,它抛出(SECURITY_ERR:Dom Exception 18)。
http://imageshack.us/f/94/readpxielerror.jpg/
我不知道如何解决这个问题。
请帮助我!!!
答案 0 :(得分:2)
在您提供页面的同一主机中托管图像,当您使用跨域资源进行渲染时,webgl将画布标记为污染。有同样的问题而且解决了它。
编辑:
为了扩展一点,当前的WebGL实现将此作为一种机制,不允许恶意页面利用驱动程序来控制用户工作站。请记住,您为readPixels调用传递了一个数组,这可能会被用于缓冲区溢出攻击,从而将WebGL视为潜在的安全风险。
第二次编辑:
目前正在进行中,以便在canvas和webgl中支持更好的跨源图像,您可以查看它here