Unity多個場景疊加或大場景處理方法小結


本文章由cartzhang編寫。轉載請注明出處。 全部權利保留。

 
文章鏈接: http://blog.csdn.net/cartzhang/article/details/47614153
作者:cartzhang


本想寫個總結,奈何剛剛接觸。


對於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 。

這個就是做了個類型細分。


------------------

若有問題,請隨時聯系!


很感謝!







免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM