Java libgdx中的帧缓冲区大小
我想在我的小libgdx游戏中使用Java libgdx中的帧缓冲区大小,java,camera,libgdx,framebuffer,Java,Camera,Libgdx,Framebuffer,我想在我的小libgdx游戏中使用Framebuffers 游戏使用了scene2d,我修改了Stages摄像头,使其使用50宽31高的视口。然后我将SpriteBatch的投影矩阵设置为camera.combined。这样做,我有一个分辨率独立的游戏,我可以使用我自己的“世界单位”,而不是使用像素 但是现在,如果我创建一个帧缓冲区,我必须给它一个大小。我必须给它摄像机视口的大小还是屏幕的大小(以像素为单位) 并且,当我把事情提交给代码> FrameBuffer 时,我能在 WorkStudio
Framebuffer
s
游戏使用了scene2d
,我修改了Stage
s摄像头,使其使用50宽31高的视口。然后我将SpriteBatch
的投影矩阵设置为camera.combined
。这样做,我有一个分辨率独立的游戏,我可以使用我自己的“世界单位”,而不是使用像素
但是现在,如果我创建一个帧缓冲区
,我必须给它一个大小。我必须给它摄像机视口的大小还是屏幕的大小(以像素为单位)
并且,当我把事情提交给代码> FrameBuffer <代码>时,我能在<代码> WorkStudio中渲染它们,意思是在<代码> p(25,16)中的渲染几乎在游戏窗口的中间?
谢谢应该抛光的是框架的
高度和宽度。因此,如果你不做一些疯狂的事情,它应该是视口的高度和宽度。(例如,与舞台上相同)
请注意不要忘记将FBO的setSize
添加到场景2D的resize方法中。所以我使用与正常渲染相同的值?谢谢,所以我使用(Pseudocode)framebuffer=新的帧缓冲区(pixmapFormat,camera.viewPort.width,camera.viewPort.height,hasDepth)代码>?然后我可以再次使用相同的spritebatch,还是必须使用另一个spritebatch进行frambuffer渲染?是的。但正如我所说,请看shadertutorial中的示例。你需要知道的一切都在那里。在调整大小时:fbo=新帧缓冲区(Format.rgba888,width,height,false)代码>可能不会一直使用new,但这是一个示例..我已经看过该教程,我想做完全相同的事情(lightmap不带box2d灯光),但他们也使用着色器,我想在没有着色器的情况下做。谢谢