平移帧缓冲区



我在屏幕上绘制了一个平铺贴图,并在FBO中绘制了每个平铺灯光(灰度)。所有的都是四边形。

我将视图存储在Rect中。为了移动,我更改de Rect,然后我这样做。。。

glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(getViewRect().left, 
getViewRect().left + getViewRect().width,
getViewRect().top + getViewRect().height, 
getViewRect().top, 
-1, 
1);
glMatrixMode(GL_MODELVIEW);

我只画Rect里面的瓷砖。

问题出在联邦调查局。我必须绘制相同的瓷砖(瓷砖的灯光),这些瓷砖是可见的。

我想知道是否有更好的方法,用瓷砖的偏移量在fbo上绘制相同的瓷砖,在不完全可见的情况下在边界上绘制一个较小的四边形,并更改texcord,因为当我在fbo外部绘制时,它会在相反的一侧绘制。

我使用FBO,因为我将着色器应用于灯光。

如果我不移动视图,效果很好,但如果我移动,我不知道如何利用FBO。

您应该能够使用glScissor来限制FBO中的所有绘图。每次绑定glBindBuffer(…)后执行此操作。

希望这能有所帮助!

相关内容

  • 没有找到相关文章

最新更新