unity4.6 Ugui中文教程之UGUI实现Demo分析
场景内容显示与摄像头运用
在场景中,除了显示 UI 元素,还需要展示具体内容。对于复杂的场景,通常需要借助多个摄像头来分别拍摄不同内容,并将其显示到场景中。在本示例场景里,我们使用一个摄像头拍摄地球自转效果。实现地球自转功能,可通过以下函数达成。
UGUI 布局与交互机制
显示模式
本 UGUI 采用了 ScreenSpace – Overlay 方式。
容器与组件
在 UI 布局中,存在四个 Panel 容器。用户通过单击按钮能够实现这几个容器的显示与隐藏切换。在 Canvas 上有一个 GraphicRaycaster 组件,这是因为该场景使用了 EventSystem 事件系统来处理用户交互。此外,还有一个 Reference Resolution 组件,其作用是进行屏幕适配,确保 UI 在不同分辨率的屏幕上都能正常显示。
交互控件与绑定
这四个容器中包含了众多按钮,这些按钮属于交互控件。对于交互的响应,我们采用事件/属性绑定的方式。大部分绑定操作是在对象 MainMenu 下的脚本中完成的,这些脚本主要用于面板之间的转换。另外,还有一些脚本用于实现本面板内内容的切换。整个菜单系统的交互逻辑基本就是如此。
选关与关卡管理
关卡设置
主要涉及 LevelSelectPanel 面板。我们在 BuildSetting 中对关卡数量进行了设置。设置完成后运行程序,理想情况下会出现 8 个选关按钮。
脚本功能
LevelSelect.cs脚本:该脚本的主要功能是实现LevelPage的转换,以及生成LevelButton。Constants.cs脚本:此脚本用于本地化存储相关数据。