Appearance
场景
Mirror Stage 2 的场景(Stages)与 Unity 自身的场景一致,但在此基础上做了进一步绑定。
什么是场景?
你可以将场景理解为游戏的关卡、地图以及剧情场景等等。
为避免编程时与 Unity 自身的 “Scene”(场景)冲突,MS2 中场景英文名为 “Stage”。
创建场景
创建场景时各项解释如下:
- ID,建议最好为 “英文、数字、半角下划线”
- 显示名称,即场景用于游戏内、存档或特定UI下展示的场景名,如无展示功能也可以随便写
- BGM,默认进入场景后播放的背景音乐名
- 玩家生成点,玩家进入场景后默认生成位置的 GameObject 名,一个场景可包含多个生成点,创建时可暂时不填写
- 默认边界类型,请选择 Confiner 2D
- 默认边界,默认约束 “游戏相机” 活动范围组件的 GameObject 名

场景创建好后,请先进入场景,然后在 “Build Profiles” 中增加场景。
如不将场景加入 Build Profiles,程序则无法动态加载场景。 场景也不会加入到游戏最终生成的正式游戏可运行程序内,并触发找不到场景的报错。

在 “Build Profiles” 中点选 “Open Scene List”,然后点选 “Add Open Scenes” 来增加场景。

编辑场景
场景默认结构建议为以下方式:
- Environment(环境),如前后景,装饰物等
- PhysicColliders(物理碰撞体),比如墙壁、地板等
- Objects(游戏物件),比如宝箱、传送点、生成点等
- 其他,如全局光照,游戏里的脚本等

创建玩家生成点
玩家生成点(Player Spawner)即受操控的玩家角色默认生成的位置, 不同位置、场景可配置对应不同的玩家形象,一个场景可以有多个生成点。
首先,通过快捷键 “Ctrl+Shift+N” 或是鼠标右键选择 “Create Empty” 或 “创建空物体” 来创建一个新的 GameObject。

在游戏对象上增加组件(Add Component),并输入 “Player Spawner” 来挂在玩家生成点脚本。

增加好后,点选 “Actor Definition” 并选取对应的玩家角色就可以了,这样可以在不同生成点,创建不同的玩家角色形象。
约束相机范围
游戏中相机会自动跟随着玩家角色移动,但当到了地图边界时,很有可能会出现移动到地图边界外造成穿帮问题。
首先,通过快捷键 “Ctrl+Shift+N” 或是鼠标右键选择 “Create Empty” 或 “创建空物体” 来创建一个新的 GameObject。

在游戏对象上增加组件(Add Component),并输入 “Box Collider 2D”、“Camera Confiner 2D” 来创建相机移动约束器。

通过设置 Box Collider 2D 的Offset、Size来调整相机的可移动区,记住点选 “Is Trigger” 来标注为触发器,而非空气墙。
最后将这个 GameObject 的名字回填到 “数据库 > 场景 > 对应的数据条目” 里的默认边界中。
制作空气墙
游戏中的角色移动是依托Unity 2D物理实现的,通过增加 “Box Collider 2D” 等各种2D碰撞体即可以制作空气墙,制作方法类似相机范围约束工具。
场景列表
场景列表窗口为一个快捷操作窗口,强烈建议使用该工具来调试游戏。
- 点选ID蓝字跳转对应场景
- 编辑可打开数据库编辑
- 点选 “☆” 为 “★”,则可设置为游戏默认的启动场景
- 点选复选框 “□” ,再点击 “运行场景” 可直接从对应场景启动游戏
- 点选运行游戏,会直接从默认场景开始游戏
