-1
我的位置和正常的,比方說兩個紋理的物體,如何變換three.js所的紋理的WebGL
var tx1 = gpuCompute.getCurrentRenderTarget(positionVariable).texture;
var tx2 = gpuCompute.getCurrentRenderTarget(normalVariable).texture;
其通過GPUComputationRenderer
從three.js
計算(參考例gpgpu/protoplanet
(1))
我想將其轉換爲WebGLBuffer
對象進行渲染,如:
gl.bindBuffer(gl.ARRAY_BUFFER, tx1);
gl.vertexAttribPointer(shaderProgram.vertexPositionAttribute, 3, gl.FLOAT, false, 0, 0);
gl.bindBuffer(gl.ARRAY_BUFFER, tx2);
gl.vertexAttribPointer(shaderProgram.vertexNormalAttribute, 3, gl.FLOAT, false, 0, 0);
但直接分配也不行。
我想問是否有辦法做到這一點。這兩個對象格式的快照如下所示(tx1來自三個js,tx3來自WebGL)。謝謝。
(1)https://threejs.org/examples/#webgl_gpgpu_protoplanet
非常感謝。那麼是否有辦法將由three.js生成的紋理對象轉換爲由WebGL通過'gl.createTexture();'生成的WebGLTexture格式?對不起,我不熟悉JavaScript。再次感謝。 – zzj
我不知道如何從'THREE.Texture'獲得'WebGLTexture'。我會問一個單獨的問題,如「如何從一個THREE.Texture獲得WebGLTexture?」 – gman