我在屏幕上绘制瓷砖地图,并在 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);
我只在矩形内绘制瓷砖。
问题是FBO。我必须绘制相同的瓷砖(瓷砖的灯),这是可见的。
我想知道是否有更好的方法,使用瓷砖的偏移量将相同的瓷砖绘制到 fbo,在不完全可见时在边界上绘制一个较小的四边形,并更改 texcoord,因为当我在 FBO 之外绘制时, 它画在对面。
我使用 FBO,因为我将着色器应用于灯光。
如果我不移动视图,它会完美运行,但如果我移动,我不知道如何在 FBO 上绘图。