何时在 LibGDX 中使用 Screen、Stage 和 Group
When to use Screen, Stage, and Group in LibGDX
我有一个主菜单屏幕,它有 4 个选项,New Game
、Load Game
、Options
和 Exit
。
然后:
New Game
有更多选项,例如 difficulty
、# of players
+ Start
按钮。
Load Game
有多个存档可供选择,还有 Load
和 Delete
选项。
Options
有 Graphics level
和 Volume
单选/滑块 + Apply
、Discard
按钮。
最后,游戏屏幕将有一个可平移的游戏 window,以及屏幕侧面的叠加层 UI。
我的问题是,我不知道 class 用于那些 UI 部分。
从 this 回答我知道 Screen
是一个完整的 UI 页面,但似乎创建一个新的 Screen
然后 Stage
对于这些主菜单选项中的每一个似乎都是矫枉过正,但也许这就是要走的路。我不知道是否应该根据用户点击的内容使用 Group
和 show/hide。我还被告知使用 Table
来布置游戏画面。我对在网上找到的所有指南感到非常困惑。每个看起来都不同。
文档非常好,但它从未说明各个部分如何相互集成。
对于如何使用 LibGDX 中的那些 class 是否有任何共识?还是个人喜好?
Screen
是核心 libGdx 部分,表示许多 应用程序屏幕之一 ,例如 mainscreen
、settingsscreen
、gamescreen
等等。
- 主屏幕可能包含设置、播放、级别等按钮,可帮助您在其他屏幕上重定向。
- settingsscreen 可能包含重定向到上一个主屏幕的后退按钮和其他 ui 元素,如声音按钮、音乐按钮、语言选择按钮。
很难在具有不同请求uired 生命周期的一个ApplicationListener
上下文中维护不同的UI 屏幕。
所以有一个 Game
class 和 Screen
界面可以帮助在设备屏幕上一次显示一个活动屏幕。
我想你现在已经清楚了,为什么我们需要不同的屏幕。
现在我如何设计一个类似 MenuSceen 的屏幕,其中包含菜单按钮、游戏名称和充当主屏幕的类似元素。
您可以使用 scene2d,一个 2D 场景图,用于使用角色层次结构构建 uilding UIs。 Stage 和 Group 是 scene2d 的核心 classes。
Stage
class 有一个相机、SpriteBatch 和一个根组,负责绘制演员和分发输入事件。
Group
class是一个可能有童星的演员。
我有一个主菜单屏幕,它有 4 个选项,New Game
、Load Game
、Options
和 Exit
。
然后:
New Game
有更多选项,例如 difficulty
、# of players
+ Start
按钮。
Load Game
有多个存档可供选择,还有 Load
和 Delete
选项。
Options
有 Graphics level
和 Volume
单选/滑块 + Apply
、Discard
按钮。
最后,游戏屏幕将有一个可平移的游戏 window,以及屏幕侧面的叠加层 UI。
我的问题是,我不知道 class 用于那些 UI 部分。
从 this 回答我知道 Screen
是一个完整的 UI 页面,但似乎创建一个新的 Screen
然后 Stage
对于这些主菜单选项中的每一个似乎都是矫枉过正,但也许这就是要走的路。我不知道是否应该根据用户点击的内容使用 Group
和 show/hide。我还被告知使用 Table
来布置游戏画面。我对在网上找到的所有指南感到非常困惑。每个看起来都不同。
文档非常好,但它从未说明各个部分如何相互集成。
对于如何使用 LibGDX 中的那些 class 是否有任何共识?还是个人喜好?
Screen
是核心 libGdx 部分,表示许多 应用程序屏幕之一 ,例如 mainscreen
、settingsscreen
、gamescreen
等等。
- 主屏幕可能包含设置、播放、级别等按钮,可帮助您在其他屏幕上重定向。
- settingsscreen 可能包含重定向到上一个主屏幕的后退按钮和其他 ui 元素,如声音按钮、音乐按钮、语言选择按钮。
很难在具有不同请求uired 生命周期的一个ApplicationListener
上下文中维护不同的UI 屏幕。
所以有一个 Game
class 和 Screen
界面可以帮助在设备屏幕上一次显示一个活动屏幕。
我想你现在已经清楚了,为什么我们需要不同的屏幕。
现在我如何设计一个类似 MenuSceen 的屏幕,其中包含菜单按钮、游戏名称和充当主屏幕的类似元素。
您可以使用 scene2d,一个 2D 场景图,用于使用角色层次结构构建 uilding UIs。 Stage 和 Group 是 scene2d 的核心 classes。
Stage
class 有一个相机、SpriteBatch 和一个根组,负责绘制演员和分发输入事件。Group
class是一个可能有童星的演员。