使用Collider碰撞体检测(OnCollisionEnter事件函数挺好的)
判断碰撞体名称,得知具体要切换到哪个场景
用 SceneManager.LoadSceneAsync(场景名称, LoadSceneMode.Additive);异步附加式加载新的场景
下面是一个例子:
void OnCollisionEnter(Collision collision)
{
switch(collision.name)
{
case "Gate"://碰到对象 大门
{
SceneManager.LoadSceneAsync("Outdoor", LoadSceneMode.Additive);
//加载场景:户外
break;
` }
case "RoomDoor"://碰到对象 房门
{
SceneManager.LoadSceneAsync("Room", LoadSceneMode.Additive);
//加载场景:房间
break;
` }
//这里靠你的能量可以继续写下去啦
}
}
//注:上述使用异步附加式场景加载,可以保证到达下一个场景,加载下一个场景的同时,上一个场景的物体都还在
//如果有需要,你可以用SceneManager.LoadSceneAsync(场景名称);异步覆盖式加载
//同步加载你可以自己搜,但真没什么意思