2017-02-18 112 views
1

我用scene2d做了一个游戏。现在我想添加一个HUD到我的游戏中。为此,我想将小部件放在桌子上,然后在舞台上添加表格作为演员。我现在的问题是:我应该创建一个持有表格的第二阶段,还是应该在现有阶段添加表格。如果我已经有舞台,添加HUD的正确方法是什么?libgdx:scene2d为hud添加第二个阶段?

+1

绝对是第二个阶段。很可能你会想要使用不同类型的Viewpory来做UI的东西。 – Tenfour04

+0

@ Tenfour04你是什么意思不同的视口。我使用适合ViewPort的游戏。不同的视口是指不同的尺寸还是不同类型的视口? –

+1

不同的类型和/或尺寸。在我看来,对于99%的案例,游戏应该使用ExtendViewport。这消除了黑条和拉伸。在大多数情况下,UI应该使用具有三线过滤UI元素的ExtendViewport或具有多种资产规模(在运行时选取的大小)的ScreenViewport。第一种方式更容易,第二种方式导致UI模糊。 – Tenfour04

回答

0

如果您的游戏世界比您的屏幕尺寸大,那么您可以在屏幕上创建第二个阶段,就像侧面滚动游戏一样。

请记住,由于他自己的SpriteBatch,舞台是沉重的物体,所以如果可以创建单个舞台,这是更好的选择。

否则,你可以使用这个构造

public Stage (Viewport viewport, Batch batch) 

的创建阶段,可以通过屏幕HUD和第一阶段spritebatch作为参数具有视口大小。

+0

如果将SpriteBatch传递给它的构造函数,舞台并不重。 – Tenfour04

+0

@ Tenfour04是的,你是对的。当我们使用默认的构造函数时,SpriteBatch只是让舞台变得沉重的东西。 – Aryan