opengl 内存
- 作者: 缺氧2940
- 来源: 51数据库
- 2020-09-29
你可以去查 FBO 的资料.
先创建一张纹理Texture, 然后再创建一个FramebufferObject.(简称FBO),用FBO去绑定那个纹理, 然后绘制前. 绑定这个FBO. 这样opengl就知道你希望绘制在内存里(也就是那张纹理上),
然后开始绘制.
解绑FBO.
这时那张纹理上就是你要的绘制内容了.
只能靠写灰度 shader.
在shader里,处理rgb数值.
比如 :
vec4 color=texture2d (....);//取出纹理中的 rgba
float grey=dot(color, vec4 (0.3,0.5,0.2,0.0));
color=vec4(grey);//结果就是灰色啦
先创建一张纹理Texture, 然后再创建一个FramebufferObject.(简称FBO),用FBO去绑定那个纹理, 然后绘制前. 绑定这个FBO. 这样opengl就知道你希望绘制在内存里(也就是那张纹理上),
然后开始绘制.
解绑FBO.
这时那张纹理上就是你要的绘制内容了.
只能靠写灰度 shader.
在shader里,处理rgb数值.
比如 :
vec4 color=texture2d (....);//取出纹理中的 rgba
float grey=dot(color, vec4 (0.3,0.5,0.2,0.0));
color=vec4(grey);//结果就是灰色啦
推荐阅读
