我在GPU上生成紋理並將其渲染到我自己的幀緩衝區對象。它工作正常,紋理渲染爲可傳遞給其他着色器的WebGLTexture。不過,我想訪問JavaScript中的WebGLTexture像素。有沒有辦法做到這一點?閱讀WebGLTexture中的像素(將WebGL渲染爲紋理)
目前我使用gl.ReadPixels在將紋理繪製到幀緩衝區後讀取像素。這很好,但如果我可以直接訪問WebGLTextureObject中的像素,會不會更好?
我想要完成的是:我有GLSL perlin噪聲着色器,可以在GPU上渲染高清高度圖和法線貼圖。我想將高度圖傳遞給CPU,以便我可以生成網格的頂點。我當然可以將頂點放置在頂點着色器中,但我需要在CPU中進行碰撞檢測。
我希望我的問題很清楚。歡迎任何反饋!
謝謝!
我認爲這是唯一的解決方案,因爲'glGetTexImage'不存在。但無論如何,我不認爲這是一個不好的解決方案。可能你應該考慮一下,如果有可能在GPU上進行碰撞檢測。 – 2013-02-24 23:34:21