使用WebGL(受限于OpenGL ES 2 API),我成功渲染纹理,然后在屏幕上显示该纹理。因为它是一种纹理,所以它不是抗锯齿的。如果我渲染到RBO然后在屏幕上显示,我将能够利用AA。
我的渲染目标设置如下所示:
我的渲染更新循环如下所示:
使用桌面OpenGL,我会调用glBlitFramebuffer()
,而不是将屏幕对齐四边形。
如何使用抗锯齿渲染场景?我需要用RBO替换纹理吗?如果是这样,我使用什么调用来绑定RBO以绘制屏幕对齐的四边形?
答案 0 :(得分:4)
除非你执行回读并重新上传到纹理到blit,否则你不能将RBO的内容blit到WebGL中进行屏幕显示,这很慢。
WebGL不支持任何形式的FBO上的MSAA(既不作为RBO也不作为RTT)。
您可以通过多种方式实现自己的抗锯齿。