小编Dud*_*Dud的帖子

使用 WebGL 渲染全屏四边形

我有一个用于渲染场景的帧缓冲区,现在我想将其渲染为“全屏”四边形。我如何设置我的相机以及我应该在我的顶点着色器中放入什么以便将帧缓冲区的纹理渲染到整个屏幕。

我试过像这样创建一个全屏四边形

var gl = this.gl;
var quad_vertex_buffer = gl.createBuffer();
var quad_vertex_buffer_data = new Float32Array([ 
    -1.0, -1.0, 0.0,
     1.0, -1.0, 0.0,
    -1.0,  1.0, 0.0,
    -1.0,  1.0, 0.0,
     1.0, -1.0, 0.0,
     1.0,  1.0, 0.0]);
gl.bufferData(quad_vertex_buffer, quad_vertex_buffer_data, gl.STATIC_DRAW);
gl.bindBuffer(gl.ARRAY_BUFFER, quad_vertex_buffer);
gl.vertexAttribPointer(this.shaderProgram.vertexPositionAttribute, 3, gl.FLOAT, false, 0, 0);
//gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, null);
gl.drawArrays(gl.TRIANGLES,0, 6);
Run Code Online (Sandbox Code Playgroud)

但它仍然使一切变黑。我可以遵循任何想法或示例/教程?

framebuffer webgl

3
推荐指数
2
解决办法
4852
查看次数

标签 统计

framebuffer ×1

webgl ×1