Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
LibGDX镜像/翻转舞台以用作拆分屏幕_Libgdx_Mirroring_Split Screen - Fatal编程技术网

LibGDX镜像/翻转舞台以用作拆分屏幕

LibGDX镜像/翻转舞台以用作拆分屏幕,libgdx,mirroring,split-screen,Libgdx,Mirroring,Split Screen,我想做的是: 我想使用两个阶段的分割屏幕游戏。通过不同的阶段,我可以分别控制输入和其他内容。一个舞台是镜像/翻转的,这样玩家可以坐在对方对面 问题是: 不幸的是,我对舞台/视口/摄影机的了解还不足以解决这个问题。我尝试了几件事,但没有得到令人满意的解决办法 有没有人能给我一些提示或例子来帮助我找到解决方案? 谢谢 (单击下面的图像链接以获取可视草稿) 我找到了一个解决方案: 镜像: 使用舞台视口cam的上方向向量(参见上面的注释) 屏幕分离: 使用 Gdx.gl.glViewport(0,0,G

我想做的是: 我想使用两个阶段的分割屏幕游戏。通过不同的阶段,我可以分别控制输入和其他内容。一个舞台是镜像/翻转的,这样玩家可以坐在对方对面

问题是: 不幸的是,我对舞台/视口/摄影机的了解还不足以解决这个问题。我尝试了几件事,但没有得到令人满意的解决办法

有没有人能给我一些提示或例子来帮助我找到解决方案? 谢谢

(单击下面的图像链接以获取可视草稿)

我找到了一个解决方案:

镜像: 使用舞台视口cam的上方向向量(参见上面的注释)

屏幕分离: 使用
Gdx.gl.glViewport(0,0,Gdx.graphics.getWidth(),半屏幕高度)(阶段1)和
Gdx.gl.glViewport(0,半屏幕高度,Gdx.graphics.getWidth(),半屏幕高度)(阶段2)要在调用draw()之前定义每个阶段的绘图区域,请确认没有阶段的镜像。你为什么不做两个阶段呢?创建一个半屏幕的类,当你需要两个玩家时,你会把他们放在一起吗?但是我绝对没有玩决斗屏幕多人游戏的经验。也许可以在IRC上询问?如果不使用scene2d的UI小部件,您可以这样做。必须为屏幕的每半部分编写视口代码。视口必须将GL视口裁剪到所需屏幕的一半。对于顶部,您还应将相机绕z轴旋转180度。或者,您可以将“顶”视口设置为标准的ExtendViewport,并将其绘制到帧缓冲区,然后将帧缓冲区的纹理绘制到屏幕顶部。然后你就可以使用UI了。谢谢你的提示。我通过修改视口摄影机的上方向向量来旋转上一级。不幸的是,我仍然无法正确分离两个阶段的屏幕(例如,通过使用阶段视口的边界)。它们彼此“重叠”绘制,而不是一个舞台绘制在屏幕的上半部分,另一个舞台绘制在屏幕的下半部分。