Appearance
unison.scene — 场景管理
场景加载和切换系统,支持生命周期回调。
使用方式
python
from unison import scene函数列表
scene.load_scene(name)
加载场景(导入对应模块并调用 on_scene)。
python
scene.load_scene("main_menu")
scene.load_scene("level_01")| 参数 | 类型 | 说明 |
|---|---|---|
name | str | 场景名称(对应 script 目录下的模块) |
| 返回 | bool | 是否加载成功 |
scene.switch_scene(name)
切换场景。当前场景调用 on_scene_leave,目标场景调用 on_scene。
python
scene.switch_scene("level_02")| 参数 | 类型 | 说明 |
|---|---|---|
name | str | 目标场景名称 |
| 返回 | bool | 是否切换成功 |
scene.get_current_scene()
获取当前场景名称。
python
current = scene.get_current_scene()| 返回 | str | 当前场景名称 |
scene.get_scene_path()
获取场景搜索路径。
scene.is_initialized()
检查场景系统是否已初始化。返回 bool。
场景生命周期
每个场景模块需要实现以下函数(由引擎自动调用):
python
# 场景被加载时调用
def on_scene():
log.info("MyScene", "场景加载")
# 创建游戏对象、初始化逻辑
# 场景被切换离开时调用
def on_scene_leave():
log.info("MyScene", "场景离开")
# 清理资源