Unity多个场景叠加或大场景处理方法小结

发表于2017-11-14
评论0 5.9k浏览

对于Unity中对象,多个场景或大的场景多人分割处理,有不能同时修改一下场景来提交。

这怎么办呢?下面就给大家介绍下多个场景叠加或大场景处理方法。


方法一,建立Prefab

把某个对象或需要多场景下使用的对象建立一个prefab对象,这样就可以在多场景下使用。


方法二,有高人自有办法

就是自己写了个场景管理和场景加载的XML和json啊,牛逼啊!!

网址:http://www.gopedu.com/article/1424  ,快捷:Unity3d项目合作 场景的合并和还原

我觉得这个已经很厉害了!


方法三,

unity有个打包的功能还是蛮强大的。你可以分割玩地图,各个干各自的事情,然后在统一放到一个场景中啊!

怎么放呢?

首先,需要把场景都加入到build setting中,如下图:

然后呢,需要代码:

这个超级简单:名字为AddNewScene.cs

using UnityEngine;  
using System.Collections;  
public class AddNewScene : MonoBehaviour   
{  
    public string LevelName;  
    // Use this for initialization  
    void Start ()   
    {  
        if (LevelName.Length > 0)  
        {  
            Application.LoadLevelAdditive(LevelName);  
            Debug.Log("level  add successfully!");  
        }  
        else  
        {  
            Debug.Log("level  is not added!");  
        }  
    }  
}  

然后把代码挂到相机或其他对象上即可。

比如我就把它挂在相机上了:


运行试试:看到那个圆柱子了没有,就是了。



最后,国外哥们一方法

不一定能打开网页:http://luminesca.blogspot.com/2013/05/sublevels.html

意思是当你觉得Prefab不能满足你的需要的时候,你可以把你的场景对象按类型分开。

关键在于一张图:



简单说明下:就是把场景中公共的资源或对象放在一个关卡中,把属于某一个独一无二的对象放在某一个关卡中!!

就这样,也就是个分类。然后在使用上面的 Application.LoadLevelAdditive 。

这个就是做了个类型细分。

如社区发表内容存在侵权行为,您可以点击这里查看侵权投诉指引

0个评论