unity3d格式的导出与加载

<pre name="code" class="css">#<pre name="code" class="html"><div id="article_content" class="article_content">

<p>1.导出。unity3d格式资源:</p>
<p>     <a href="http://game.ceeger.com/Script/BuildPipeline/BuildPipeline.BuildAssetBundle.html">http://game.ceeger.com/Script/BuildPipeline/BuildPipeline.BuildAssetBundle.html</a></p>
<p>    这里我稍微改了一点点~~~代码如下:</p>
<p></p>
<div class="dp-highlighter bg_java"><div class="bar"><div class="tools"><b>[java]</b> <a href="#" class="ViewSource" title="view plain" οnclick="dp.sh.Toolbar.Command('ViewSource',this);return false;">view plain</a><span data-mod="popu_168"> <a href="#" class="CopyToClipboard" title="copy" οnclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;">copy</a><div style="position: absolute; left: 890px; top: 759px; width: 29px; height: 14px; z-index: 99;"><embed id="ZeroClipboardMovie_1" src="http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf" loop="false" menu="false" quality="best" bgcolor="#ffffff" width="29" height="14" name="ZeroClipboardMovie_1" align="middle" allowscriptaccess="always" allowfullscreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" flashvars="id=1&width=29&height=14" wmode="transparent"></div></span><span data-mod="popu_169"> <a href="#" class="PrintSource" title="print" οnclick="dp.sh.Toolbar.Command('PrintSource',this);return false;">print</a></span><a href="#" class="About" title="?" οnclick="dp.sh.Toolbar.Command('About',this);return false;">?</a></div></div><ol start="1" class="dp-j"><li class="alt"><span><span>using UnityEngine;  </span></span></li><li class=""><span>using UnityEditor;  </span></li><li class="alt"><span>using System.IO;  </span></li><li class=""><span><span class="keyword">public</span><span> </span><span class="keyword">class</span><span> BuildAssetBundlesFromDirectory {  </span></span></li><li class="alt"><span>  </span></li><li class=""><span>    [<span class="annotation">@MenuItem</span><span>(</span><span class="string">"Asset/Build AssetBundles From Directory of Files"</span><span>)]  </span></span></li><li class="alt"><span>  </span></li><li class=""><span>    <span class="keyword">static</span><span> </span><span class="keyword">void</span><span> ExportAssetBundles () {  </span></span></li><li class="alt"><span>  </span></li><li class=""><span>        <span class="comment">// Get the selected directory</span><span>  </span></span></li><li class="alt"><span>  </span></li><li class=""><span>        <span class="comment">//获取选择的目录</span><span>  </span></span></li><li class="alt"><span>  </span></li><li class=""><span>        string path = AssetDatabase.GetAssetPath(Selection.activeObject);  </span></li><li class="alt"><span>  </span></li><li class=""><span>        Debug.Log(<span class="string">"Selected Folder: "</span><span> + path);  </span></span></li><li class="alt"><span>  </span></li><li class=""><span>        <span class="keyword">if</span><span> (path.Length != </span><span class="number">0</span><span>) {  </span></span></li><li class="alt"><span>  </span></li><li class=""><span>            path = path.Replace(<span class="string">"Assets/"</span><span>, </span><span class="string">""</span><span>);  </span></span></li><li class="alt"><span>  </span></li><li class=""><span>            string [] fileEntries = Directory.GetFiles(Application.dataPath+<span class="string">"/"</span><span>+path);  </span></span></li><li class="alt"><span>  </span></li><li class=""><span>            foreach(string fileName in fileEntries) {  </span></li><li class="alt"><span>  </span></li><li class=""><span>                string filePath = fileName.Replace(<span class="string">"\\","</span><span>/");  </span></span></li><li class="alt"><span>  </span></li><li class=""><span>                <span class="keyword">int</span><span> index = filePath.LastIndexOf(</span><span class="string">"/"</span><span>);  </span></span></li><li class="alt"><span>  </span></li><li class=""><span>                filePath = filePath.Substring(index+<span class="number">1</span><span>);  </span></span></li><li class="alt"><span>  </span></li><li class=""><span>                Debug.Log(<span class="string">"filePath:"</span><span>+filePath);  </span></span></li><li class="alt"><span>  </span></li><li class=""><span>                string localPath = <span class="string">"Assets/"</span><span> + path+</span><span class="string">"/"</span><span>;  </span></span></li><li class="alt"><span>  </span></li><li class=""><span>                <span class="keyword">if</span><span> (index > </span><span class="number">0</span><span>)  </span></span></li><li class="alt"><span>  </span></li><li class=""><span>                localPath += filePath;  </span></li><li class="alt"><span>  </span></li><li class=""><span>                Object t = AssetDatabase.LoadMainAssetAtPath(localPath);  </span></li><li class="alt"><span>  </span></li><li class=""><span>                <span class="keyword">if</span><span> (t != </span><span class="keyword">null</span><span>) {  </span></span></li><li class="alt"><span>  </span></li><li class=""><span>                    Debug.Log(t.name);  </span></li><li class="alt"><span>  </span></li><li class=""><span>                    string bundlePath = <span class="string">"Assets/"</span><span> + path + </span><span class="string">"/"</span><span> + t.name + </span><span class="string">".unity3d"</span><span>;  </span></span></li><li class="alt"><span>  </span></li><li class=""><span>                    Debug.Log(<span class="string">"Building bundle at: "</span><span> + bundlePath);  </span></span></li><li class="alt"><span>  </span></li><li class=""><span>                    <span class="comment">// Build the resource file from the active selection.</span><span>  </span></span></li><li class="alt"><span>  </span></li><li class=""><span>                    <span class="comment">//从激活的选择编译资源文件</span><span>  </span></span></li><li class="alt"><span>  </span></li><li class=""><span>                    BuildPipeline.BuildAssetBundle  </span></li><li class="alt"><span>  </span></li><li class=""><span>                    (t, <span class="keyword">null</span><span>, bundlePath, BuildAssetBundleOptions.CompleteAssets);  </span></span></li><li class="alt"><span>  </span></li><li class=""><span>                }  </span></li><li class="alt"><span>  </span></li><li class=""><span>  </span></li><li class="alt"><span>   </span></li><li class=""><span>            }  </span></li><li class="alt"><span>  </span></li><li class=""><span>        }  </span></li><li class="alt"><span>  </span></li><li class=""><span>    }  </span></li><li class="alt"><span>  </span></li><li class=""><span>}  </span></li></ol></div><pre name="code" class="java" style="display: none;">using UnityEngine;
using UnityEditor;
using System.IO;
public class BuildAssetBundlesFromDirectory {

	[@MenuItem("Asset/Build AssetBundles From Directory of Files")]

	static void ExportAssetBundles () {

		// Get the selected directory

		//获取选择的目录

		string path = AssetDatabase.GetAssetPath(Selection.activeObject);

		Debug.Log("Selected Folder: " + path);

		if (path.Length != 0) {

			path = path.Replace("Assets/", "");

			string [] fileEntries = Directory.GetFiles(Application.dataPath+"/"+path);

			foreach(string fileName in fileEntries) {

				string filePath = fileName.Replace("\\","/");

				int index = filePath.LastIndexOf("/");

				filePath = filePath.Substring(index+1);

				Debug.Log("filePath:"+filePath);

				string localPath = "Assets/" + path+"/";

				if (index > 0)

				localPath += filePath;

				Object t = AssetDatabase.LoadMainAssetAtPath(localPath);

				if (t != null) {

					Debug.Log(t.name);

					string bundlePath = "Assets/" + path + "/" + t.name + ".unity3d";

					Debug.Log("Building bundle at: " + bundlePath);

					// Build the resource file from the active selection.

					//从激活的选择编译资源文件

					BuildPipeline.BuildAssetBundle

					(t, null, bundlePath, BuildAssetBundleOptions.CompleteAssets);

				}


 
			}

		}

	}

}</pre><br>
<p>  注意:string filePath = fileName.Replace("\\","/");  把“\”转化成“/”。“Assets/path/.prefab”和“path\.prefab”</p>
<p>把以上代码的脚本放到一个文件夹里面,选中该文件夹,再点击菜单栏上的按钮"Asset/Build AssetBundles From Directory of Files",就成功转成unity3d格式了</p>
<p></p>
<p><br>
</p>
<p>2.加载.unity3d:</p>
<p></p>
<div class="dp-highlighter bg_java"><div class="bar"><div class="tools"><b>[java]</b> <a href="#" class="ViewSource" title="view plain" οnclick="dp.sh.Toolbar.Command('ViewSource',this);return false;">view plain</a><span data-mod="popu_168"> <a href="#" class="CopyToClipboard" title="copy" οnclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;">copy</a><div style="position: absolute; left: 890px; top: 2260px; width: 29px; height: 14px; z-index: 99;"><embed id="ZeroClipboardMovie_2" src="http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf" loop="false" menu="false" quality="best" bgcolor="#ffffff" width="29" height="14" name="ZeroClipboardMovie_2" align="middle" allowscriptaccess="always" allowfullscreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" flashvars="id=2&width=29&height=14" wmode="transparent"></div></span><span data-mod="popu_169"> <a href="#" class="PrintSource" title="print" οnclick="dp.sh.Toolbar.Command('PrintSource',this);return false;">print</a></span><a href="#" class="About" title="?" οnclick="dp.sh.Toolbar.Command('About',this);return false;">?</a></div></div><ol start="1" class="dp-j"><li class="alt"><span><span>function Start () {  </span></span></li><li class=""><span>  </span></li><li class="alt"><span>    var www = <span class="keyword">new</span><span> WWW (</span><span class="string">"file:///"</span><span>+Application.dataPath+</span><span class="string">"/resourse/Cube.unity3d"</span><span>);  </span></span></li><li class=""><span>  </span></li><li class="alt"><span>    yield www;  </span></li><li class=""><span>  </span></li><li class="alt"><span>    Instantiate(www.assetBundle.mainAsset);  </span></li><li class=""><span>  </span></li><li class="alt"><span>}  </span></li></ol></div><pre name="code" class="java" style="display: none;">function Start () {

	var www = new WWW ("file:///"+Application.dataPath+"/resourse/Cube.unity3d");

	yield www;

	Instantiate(www.assetBundle.mainAsset);

}</pre>注:Application.dataPath获取改程序的资源路径。<br>
<p><br>
</p>
<p><br>
</p>
<div class="dp-highlighter bg_java"><div class="bar"><div class="tools"><b>[java]</b> <a href="#" class="ViewSource" title="view plain" οnclick="dp.sh.Toolbar.Command('ViewSource',this);return false;">view plain</a><span data-mod="popu_168"> <a href="#" class="CopyToClipboard" title="copy" οnclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;">copy</a><div style="position: absolute; left: 890px; top: 2593px; width: 29px; height: 14px; z-index: 99;"><embed id="ZeroClipboardMovie_3" src="http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf" loop="false" menu="false" quality="best" bgcolor="#ffffff" width="29" height="14" name="ZeroClipboardMovie_3" align="middle" allowscriptaccess="always" allowfullscreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" flashvars="id=3&width=29&height=14" wmode="transparent"></div></span><span data-mod="popu_169"> <a href="#" class="PrintSource" title="print" οnclick="dp.sh.Toolbar.Command('PrintSource',this);return false;">print</a></span><a href="#" class="About" title="?" οnclick="dp.sh.Toolbar.Command('About',this);return false;">?</a></div></div><ol start="1" class="dp-j"><li class="alt"><span><span>function Start ()  </span></span></li><li class=""><span>  </span></li><li class="alt"><span>{   </span></li><li class=""><span>  </span></li><li class="alt"><span>    var www = WWW.LoadFromCacheOrDownload(<span class="string">"http://210.30.12.33:8080/YangChun/file/Cube.unity3d"</span><span>,</span><span class="number">5</span><span>);     </span></span></li><li class=""><span>  </span></li><li class="alt"><span>    yield www;  </span></li><li class=""><span>  </span></li><li class="alt"><span>    <span class="keyword">if</span><span> (www.error != </span><span class="keyword">null</span><span>)  </span></span></li><li class=""><span>  </span></li><li class="alt"><span>    {  </span></li><li class=""><span>  </span></li><li class="alt"><span>        Debug.Log (www.error);  </span></li><li class=""><span>  </span></li><li class="alt"><span>        <span class="keyword">return</span><span>;  </span></span></li><li class=""><span>  </span></li><li class="alt"><span>    }  </span></li><li class=""><span>  </span></li><li class="alt"><span>   Instantiate(www.assetBundle.mainAsset);  </span></li><li class=""><span>  </span></li><li class="alt"><span>}  </span></li></ol></div><pre name="code" class="java" style="display: none;">function Start ()

{ 

    var www = WWW.LoadFromCacheOrDownload("http://210.30.12.33:8080/YangChun/file/Cube.unity3d",5);   

    yield www;

    if (www.error != null)

    {

        Debug.Log (www.error);

        return;

    }

   Instantiate(www.assetBundle.mainAsset);

}
</pre><br>
      我试了一下用Resources类的方法还不能加载unity3d格式的文件。不过如果是本地加载的话直接加载prefab就可以了,用不着用unity3d格式了。貌似<div class="dp-highlighter bg_java"><div class="bar"><div class="tools"><b>[java]</b> <a href="#" class="ViewSource" title="view plain" οnclick="dp.sh.Toolbar.Command('ViewSource',this);return false;">view plain</a><span data-mod="popu_168"> <a href="#" class="CopyToClipboard" title="copy" οnclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;">copy</a><div style="position: absolute; left: 890px; top: 3131px; width: 29px; height: 14px; z-index: 99;"><embed id="ZeroClipboardMovie_4" src="http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf" loop="false" menu="false" quality="best" bgcolor="#ffffff" width="29" height="14" name="ZeroClipboardMovie_4" align="middle" allowscriptaccess="always" allowfullscreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" flashvars="id=4&width=29&height=14" wmode="transparent"></div></span><span data-mod="popu_169"> <a href="#" class="PrintSource" title="print" οnclick="dp.sh.Toolbar.Command('PrintSource',this);return false;">print</a></span><a href="#" class="About" title="?" οnclick="dp.sh.Toolbar.Command('About',this);return false;">?</a></div></div><ol start="1" class="dp-j"><li class="alt"><span><span>LoadFromCacheOrDownload方法只能加载.unity3d格式文件,我用Tomcat服务器小测了一下,可以达到缓存的效果。  </span></span></li></ol></div><pre name="code" class="java" style="display: none; background-color: rgb(255, 255, 255);">LoadFromCacheOrDownload方法只能加载.unity3d格式文件,我用Tomcat服务器小测了一下,可以达到缓存的效果。</pre>
<p><br>
</p>
<p><br>
</p>
<p></p>
<p style="margin-top:5px; margin-right:auto; margin-bottom:5px; margin-left:auto; color:rgb(48,48,48); font-family:Verdana,Helvetica,Arial; line-height:18px; text-align:left">
3.加载场景的话:</p>
<p style="margin-top:5px; margin-right:auto; margin-bottom:5px; margin-left:auto; color:rgb(48,48,48); font-family:Verdana,Helvetica,Arial; line-height:18px; text-align:left">
先把场景转化成unity3d格式的。</p>
<p style="margin-top:5px; margin-right:auto; margin-bottom:5px; margin-left:auto; color:rgb(48,48,48); font-family:Verdana,Helvetica,Arial; line-height:18px; text-align:left">
注:以下代码的脚本必须放在Editor文件夹下(如果没有改文件,新建一个就行),BuildTarget注意哈,转化成不同的平台~~~BuildTarget.Andrdoid</p>
<p style="margin-top:5px; margin-right:auto; margin-bottom:5px; margin-left:auto; color:rgb(48,48,48); font-family:Verdana,Helvetica,Arial; line-height:18px; text-align:left">
</p>
<div class="dp-highlighter bg_java"><div class="bar"><div class="tools"><b>[java]</b> <a href="#" class="ViewSource" title="view plain" οnclick="dp.sh.Toolbar.Command('ViewSource',this);return false;">view plain</a><span data-mod="popu_168"> <a href="#" class="CopyToClipboard" title="copy" οnclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;">copy</a><div style="position: absolute; left: 890px; top: 3394px; width: 29px; height: 14px; z-index: 99;"><embed id="ZeroClipboardMovie_5" src="http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf" loop="false" menu="false" quality="best" bgcolor="#ffffff" width="29" height="14" name="ZeroClipboardMovie_5" align="middle" allowscriptaccess="always" allowfullscreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" flashvars="id=5&width=29&height=14" wmode="transparent"></div></span><span data-mod="popu_169"> <a href="#" class="PrintSource" title="print" οnclick="dp.sh.Toolbar.Command('PrintSource',this);return false;">print</a></span><a href="#" class="About" title="?" οnclick="dp.sh.Toolbar.Command('About',this);return false;">?</a></div></div><ol start="1" class="dp-j"><li class="alt"><span><span><pre name=</span><span class="string">"code"</span><span> </span><span class="keyword">class</span><span>=</span><span class="string">"java"</span><span>></span><span class="annotation">@MenuItem</span><span> (</span><span class="string">"Build/BuildWebplayerStreamed"</span><span>)  </span></span></li><li class=""><span>  </span></li><li class="alt"><span><span class="keyword">static</span><span> function MyBuild(){  </span></span></li><li class=""><span>  </span></li><li class="alt"><span>    var levels : String[] = [<span class="string">"Assets/yaya.unity"</span><span>];  </span></span></li><li class=""><span>  </span></li><li class="alt"><span>    BuildPipeline.BuildStreamedSceneAssetBundle( levels, <span class="string">"yaya.unity3d"</span><span>, BuildTarget.WebPlayer);</span><span class="comment">//BuildTarget.Andrdoid</span><span>  </span></span></li><li class=""><span>  </span></li><li class="alt"><span>}  </span></li><li class=""><span></pre>或者  </span></li><li class="alt"><span><pre></pre>  </span></li><li class=""><span><pre name=<span class="string">"code"</span><span> </span><span class="keyword">class</span><span>=</span><span class="string">"java"</span><span> style=</span><span class="string">"background-color: rgb(255, 255, 255); "</span><span>><pre name=</span><span class="string">"code"</span><span> </span><span class="keyword">class</span><span>=</span><span class="string">"java"</span><span>></span><span class="annotation">@MenuItem</span><span> (</span><span class="string">"Build/BuildWebplayerStreamed"</span><span>)  </span></span></li><li class="alt"><span>  </span></li><li class=""><span><span class="keyword">static</span><span> function MyBuild(){  </span></span></li><li class="alt"><span>  </span></li><li class=""><span>    BuildPipeline.BuildPlayer([<span class="string">"Assets/main.unity"</span><span>],</span><span class="string">"VR.unity3d"</span><span>,BuildTarget.WebPlayer, BuildOptions.BuildAdditionalStreamedScenes);   </span></span></li><li class="alt"><span>  </span></li><li class=""><span>}</pre><br>  </span></li><li class="alt"><span><br>  </span></li><li class=""><span><br>  </span></li><li class="alt"><span><pre></pre>  </span></li><li class=""><span><pre style=<span class="string">"margin-top:0px; margin-bottom:0px; background-color:rgb(238,238,238); font-family:Verdana,Geneva,sans-serif,宋体; padding-top:0px; padding-right:0px; padding-bottom:0px; padding-left:0px; white-space:pre-wrap; word-wrap:break-word; color:rgb(53,47,40); line-height:20px"</span><span>><pre name=</span><span class="string">"code"</span><span> </span><span class="keyword">class</span><span>=</span><span class="string">"java"</span><span>>function Start () {  </span></span></li><li class="alt"><span>    <span class="comment">// Download compressed scene. If version 5 of the file named "Streamed-Level1.unity3d" was previously downloaded and cached.</span><span>  </span></span></li><li class=""><span>    <span class="comment">// Then Unity will completely skip the download and load the decompressed scene directly from disk.</span><span>  </span></span></li><li class="alt"><span>    <span class="comment">//下载压缩的场景。如果名为Streamed-Level1.unity3d的文件版本为5,预先下载并缓存。</span><span>  </span></span></li><li class=""><span>    <span class="comment">//然后Unity将完全跳过下载并直接从磁盘加载解压的场景。</span><span>  </span></span></li><li class="alt"><span>    var download = WWW.LoadFromCacheOrDownload (<span class="string">"http://210.30.12.16:8080/chunge/yaya.unity3d"</span><span>, </span><span class="number">5</span><span>);  </span></span></li><li class=""><span>    yield download;  </span></li><li class="alt"><span>  </span></li><li class=""><span>    <span class="comment">// Handle error</span><span>  </span></span></li><li class="alt"><span>    <span class="keyword">if</span><span> (download.error != </span><span class="keyword">null</span><span>)  </span></span></li><li class=""><span>    {  </span></li><li class="alt"><span>        Debug.LogError(download.error);  </span></li><li class=""><span>        <span class="keyword">return</span><span>;  </span></span></li><li class="alt"><span>    }  </span></li><li class=""><span>  </span></li><li class="alt"><span>    <span class="comment">// In order to make the scene available from LoadLevel, we have to load the asset bundle.</span><span>  </span></span></li><li class=""><span>    <span class="comment">// The AssetBundle class also lets you force unload all assets and file storage once it is no longer needed.</span><span>  </span></span></li><li class="alt"><span>    <span class="comment">//为了使场景LoadLevel可用,必须加载资源包</span><span>  </span></span></li><li class=""><span>    <span class="comment">//AssetBundle类,还可以强制卸载所有的资源和文件存储,一旦不再需要。</span><span>  </span></span></li><li class="alt"><span>    var bundle = download.assetBundle;  </span></li><li class=""><span>  </span></li><li class="alt"><span>    <span class="comment">// Load the level we have just downloaded</span><span>  </span></span></li><li class=""><span>    <span class="comment">//加载刚才下载的关卡</span><span>  </span></span></li><li class="alt"><span>    Application.LoadLevel (<span class="string">"yaya"</span><span>);</span><span class="comment">//这里面的“yaya”是指“Assets/yaya.unity”而不是指“yaya.unity3d”</span><span>  </span></span></li><li class=""><span>}</pre><br><br></pre>  </span></li><li class="alt"><span><br>  </span></li><li class=""><span><br>  </span></li><li class="alt"><span><br>  </span></li><li class=""><span>    </span></li><li class="alt"><span><p></p>  </span></li><li class=""><span><pre></pre>  </span></li><li class="alt"><span><pre></pre>  </span></li><li class=""><span><pre></pre>  </span></li><li class="alt"><span>     </span></li><li class=""><span></pre>  </span></li></ol></div><pre name="code" class="java" style="display: none; background-color: rgb(255, 255, 255);"><div class="dp-highlighter bg_java"><div class="bar"><div class="tools"><b>[java]</b> <a href="#" class="ViewSource" title="view plain" οnclick="dp.sh.Toolbar.Command('ViewSource',this);return false;">view plain</a><span data-mod="popu_168"> <a href="#" class="CopyToClipboard" title="copy" οnclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;">copy</a><div style="position: absolute; left: 0px; top: 0px; width: 0px; height: 0px; z-index: 99;"><embed id="ZeroClipboardMovie_6" src="http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf" loop="false" menu="false" quality="best" bgcolor="#ffffff" width="0" height="0" name="ZeroClipboardMovie_6" align="middle" allowscriptaccess="always" allowfullscreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" flashvars="id=6&width=0&height=0" wmode="transparent"></div></span><span data-mod="popu_169"> <a href="#" class="PrintSource" title="print" οnclick="dp.sh.Toolbar.Command('PrintSource',this);return false;">print</a></span><a href="#" class="About" title="?" οnclick="dp.sh.Toolbar.Command('About',this);return false;">?</a></div></div><ol start="1" class="dp-j"><li class="alt"><span><span class="annotation">@MenuItem</span><span> (</span><span class="string">"Build/BuildWebplayerStreamed"</span><span>)  </span></span></li><li class=""><span>  </span></li><li class="alt"><span><span class="keyword">static</span><span> function MyBuild(){  </span></span></li><li class=""><span>  </span></li><li class="alt"><span>    var levels : String[] = [<span class="string">"Assets/yaya.unity"</span><span>];  </span></span></li><li class=""><span>  </span></li><li class="alt"><span>    BuildPipeline.BuildStreamedSceneAssetBundle( levels, <span class="string">"yaya.unity3d"</span><span>, BuildTarget.WebPlayer);</span><span class="comment">//BuildTarget.Andrdoid</span><span>  </span></span></li><li class=""><span>  </span></li><li class="alt"><span>}  </span></li></ol></div><pre name="code" class="java" style="display: none;">@MenuItem ("Build/BuildWebplayerStreamed")

static function MyBuild(){

	var levels : String[] = ["Assets/yaya.unity"];

	BuildPipeline.BuildStreamedSceneAssetBundle( levels, "yaya.unity3d", BuildTarget.WebPlayer);//BuildTarget.Andrdoid

}
</pre>或者
<pre></pre>
<div class="dp-highlighter bg_java"><div class="bar"><div class="tools"><b>[java]</b> <a href="#" class="ViewSource" title="view plain" οnclick="dp.sh.Toolbar.Command('ViewSource',this);return false;">view plain</a><span data-mod="popu_168"> <a href="#" class="CopyToClipboard" title="copy" οnclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;">copy</a><div style="position: absolute; left: 0px; top: 0px; width: 0px; height: 0px; z-index: 99;"><embed id="ZeroClipboardMovie_7" src="http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf" loop="false" menu="false" quality="best" bgcolor="#ffffff" width="0" height="0" name="ZeroClipboardMovie_7" align="middle" allowscriptaccess="always" allowfullscreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" flashvars="id=7&width=0&height=0" wmode="transparent"></div></span><span data-mod="popu_169"> <a href="#" class="PrintSource" title="print" οnclick="dp.sh.Toolbar.Command('PrintSource',this);return false;">print</a></span><a href="#" class="About" title="?" οnclick="dp.sh.Toolbar.Command('About',this);return false;">?</a></div></div><ol start="1" class="dp-j"><li class="alt"><span><span><pre name=</span><span class="string">"code"</span><span> </span><span class="keyword">class</span><span>=</span><span class="string">"java"</span><span>></span><span class="annotation">@MenuItem</span><span> (</span><span class="string">"Build/BuildWebplayerStreamed"</span><span>)  </span></span></li><li class=""><span>  </span></li><li class="alt"><span><span class="keyword">static</span><span> function MyBuild(){  </span></span></li><li class=""><span>  </span></li><li class="alt"><span>    BuildPipeline.BuildPlayer([<span class="string">"Assets/main.unity"</span><span>],</span><span class="string">"VR.unity3d"</span><span>,BuildTarget.WebPlayer, BuildOptions.BuildAdditionalStreamedScenes);   </span></span></li><li class=""><span>  </span></li><li class="alt"><span>}</pre><br>  </span></li><li class=""><span><br>  </span></li><li class="alt"><span><br>  </span></li><li class=""><span><pre></pre>  </span></li><li class="alt"><span><pre style=<span class="string">"margin-top:0px; margin-bottom:0px; background-color:rgb(238,238,238); font-family:Verdana,Geneva,sans-serif,宋体; padding-top:0px; padding-right:0px; padding-bottom:0px; padding-left:0px; white-space:pre-wrap; word-wrap:break-word; color:rgb(53,47,40); line-height:20px"</span><span>><pre name=</span><span class="string">"code"</span><span> </span><span class="keyword">class</span><span>=</span><span class="string">"java"</span><span>>function Start () {  </span></span></li><li class=""><span>    <span class="comment">// Download compressed scene. If version 5 of the file named "Streamed-Level1.unity3d" was previously downloaded and cached.</span><span>  </span></span></li><li class="alt"><span>    <span class="comment">// Then Unity will completely skip the download and load the decompressed scene directly from disk.</span><span>  </span></span></li><li class=""><span>    <span class="comment">//下载压缩的场景。如果名为Streamed-Level1.unity3d的文件版本为5,预先下载并缓存。</span><span>  </span></span></li><li class="alt"><span>    <span class="comment">//然后Unity将完全跳过下载并直接从磁盘加载解压的场景。</span><span>  </span></span></li><li class=""><span>    var download = WWW.LoadFromCacheOrDownload (<span class="string">"http://210.30.12.16:8080/chunge/yaya.unity3d"</span><span>, </span><span class="number">5</span><span>);  </span></span></li><li class="alt"><span>    yield download;  </span></li><li class=""><span>  </span></li><li class="alt"><span>    <span class="comment">// Handle error</span><span>  </span></span></li><li class=""><span>    <span class="keyword">if</span><span> (download.error != </span><span class="keyword">null</span><span>)  </span></span></li><li class="alt"><span>    {  </span></li><li class=""><span>        Debug.LogError(download.error);  </span></li><li class="alt"><span>        <span class="keyword">return</span><span>;  </span></span></li><li class=""><span>    }  </span></li><li class="alt"><span>  </span></li><li class=""><span>    <span class="comment">// In order to make the scene available from LoadLevel, we have to load the asset bundle.</span><span>  </span></span></li><li class="alt"><span>    <span class="comment">// The AssetBundle class also lets you force unload all assets and file storage once it is no longer needed.</span><span>  </span></span></li><li class=""><span>    <span class="comment">//为了使场景LoadLevel可用,必须加载资源包</span><span>  </span></span></li><li class="alt"><span>    <span class="comment">//AssetBundle类,还可以强制卸载所有的资源和文件存储,一旦不再需要。</span><span>  </span></span></li><li class=""><span>    var bundle = download.assetBundle;  </span></li><li class="alt"><span>  </span></li><li class=""><span>    <span class="comment">// Load the level we have just downloaded</span><span>  </span></span></li><li class="alt"><span>    <span class="comment">//加载刚才下载的关卡</span><span>  </span></span></li><li class=""><span>    Application.LoadLevel (<span class="string">"yaya"</span><span>);</span><span class="comment">//这里面的“yaya”是指“Assets/yaya.unity”而不是指“yaya.unity3d”</span><span>  </span></span></li><li class="alt"><span>}</pre><br><br></pre>  </span></li><li class=""><span><br>  </span></li><li class="alt"><span><br>  </span></li><li class=""><span><br>  </span></li><li class="alt"><span>    </span></li><li class=""><span><p></p>  </span></li><li class="alt"><span><pre></pre>  </span></li><li class=""><span><pre></pre>  </span></li><li class="alt"><span><pre></pre>  </span></li><li class=""><span>     </span></li></ol></div><pre name="code" class="java" style="display: none; background-color: rgb(255, 255, 255);"><div class="dp-highlighter bg_java"><div class="bar"><div class="tools"><b>[java]</b> <a href="#" class="ViewSource" title="view plain" οnclick="dp.sh.Toolbar.Command('ViewSource',this);return false;">view plain</a><span data-mod="popu_168"> <a href="#" class="CopyToClipboard" title="copy" οnclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;">copy</a><div style="position: absolute; left: 0px; top: 0px; width: 0px; height: 0px; z-index: 99;"><embed id="ZeroClipboardMovie_8" src="http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf" loop="false" menu="false" quality="best" bgcolor="#ffffff" width="0" height="0" name="ZeroClipboardMovie_8" align="middle" allowscriptaccess="always" allowfullscreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" flashvars="id=8&width=0&height=0" wmode="transparent"></div></span><span data-mod="popu_169"> <a href="#" class="PrintSource" title="print" οnclick="dp.sh.Toolbar.Command('PrintSource',this);return false;">print</a></span><a href="#" class="About" title="?" οnclick="dp.sh.Toolbar.Command('About',this);return false;">?</a></div></div><ol start="1" class="dp-j"><li class="alt"><span><span class="annotation">@MenuItem</span><span> (</span><span class="string">"Build/BuildWebplayerStreamed"</span><span>)  </span></span></li><li class=""><span>  </span></li><li class="alt"><span><span class="keyword">static</span><span> function MyBuild(){  </span></span></li><li class=""><span>  </span></li><li class="alt"><span>    BuildPipeline.BuildPlayer([<span class="string">"Assets/main.unity"</span><span>],</span><span class="string">"VR.unity3d"</span><span>,BuildTarget.WebPlayer, BuildOptions.BuildAdditionalStreamedScenes);   </span></span></li><li class=""><span>  </span></li><li class="alt"><span>}  </span></li></ol></div><pre name="code" class="java" style="display: none;">@MenuItem ("Build/BuildWebplayerStreamed")

static function MyBuild(){

	BuildPipeline.BuildPlayer(["Assets/main.unity"],"VR.unity3d",BuildTarget.WebPlayer, BuildOptions.BuildAdditionalStreamedScenes); 

}</pre><br>
<br>
<br>
<pre></pre>
<pre style="margin-top:0px; margin-bottom:0px; background-color:rgb(238,238,238); font-family:Verdana,Geneva,sans-serif,宋体; padding-top:0px; padding-right:0px; padding-bottom:0px; padding-left:0px; white-space:pre-wrap; word-wrap:break-word; color:rgb(53,47,40); line-height:20px"><div class="dp-highlighter bg_java"><div class="bar"><div class="tools"><b>[java]</b> <a href="#" class="ViewSource" title="view plain" οnclick="dp.sh.Toolbar.Command('ViewSource',this);return false;">view plain</a><span data-mod="popu_168"> <a href="#" class="CopyToClipboard" title="copy" οnclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;">copy</a><div style="position: absolute; left: 0px; top: 0px; width: 0px; height: 0px; z-index: 99;"><embed id="ZeroClipboardMovie_9" src="http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf" loop="false" menu="false" quality="best" bgcolor="#ffffff" width="0" height="0" name="ZeroClipboardMovie_9" align="middle" allowscriptaccess="always" allowfullscreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" flashvars="id=9&width=0&height=0" wmode="transparent"></div></span><span data-mod="popu_169"> <a href="#" class="PrintSource" title="print" οnclick="dp.sh.Toolbar.Command('PrintSource',this);return false;">print</a></span><a href="#" class="About" title="?" οnclick="dp.sh.Toolbar.Command('About',this);return false;">?</a></div></div><ol start="1" class="dp-j"><li class="alt"><span><span>function Start () {  </span></span></li><li class=""><span>    <span class="comment">// Download compressed scene. If version 5 of the file named "Streamed-Level1.unity3d" was previously downloaded and cached.</span><span>  </span></span></li><li class="alt"><span>    <span class="comment">// Then Unity will completely skip the download and load the decompressed scene directly from disk.</span><span>  </span></span></li><li class=""><span>    <span class="comment">//下载压缩的场景。如果名为Streamed-Level1.unity3d的文件版本为5,预先下载并缓存。</span><span>  </span></span></li><li class="alt"><span>    <span class="comment">//然后Unity将完全跳过下载并直接从磁盘加载解压的场景。</span><span>  </span></span></li><li class=""><span>    var download = WWW.LoadFromCacheOrDownload (<span class="string">"http://210.30.12.16:8080/chunge/yaya.unity3d"</span><span>, </span><span class="number">5</span><span>);  </span></span></li><li class="alt"><span>    yield download;  </span></li><li class=""><span>  </span></li><li class="alt"><span>    <span class="comment">// Handle error</span><span>  </span></span></li><li class=""><span>    <span class="keyword">if</span><span> (download.error != </span><span class="keyword">null</span><span>)  </span></span></li><li class="alt"><span>    {  </span></li><li class=""><span>        Debug.LogError(download.error);  </span></li><li class="alt"><span>        <span class="keyword">return</span><span>;  </span></span></li><li class=""><span>    }  </span></li><li class="alt"><span>  </span></li><li class=""><span>    <span class="comment">// In order to make the scene available from LoadLevel, we have to load the asset bundle.</span><span>  </span></span></li><li class="alt"><span>    <span class="comment">// The AssetBundle class also lets you force unload all assets and file storage once it is no longer needed.</span><span>  </span></span></li><li class=""><span>    <span class="comment">//为了使场景LoadLevel可用,必须加载资源包</span><span>  </span></span></li><li class="alt"><span>    <span class="comment">//AssetBundle类,还可以强制卸载所有的资源和文件存储,一旦不再需要。</span><span>  </span></span></li><li class=""><span>    var bundle = download.assetBundle;  </span></li><li class="alt"><span>  </span></li><li class=""><span>    <span class="comment">// Load the level we have just downloaded</span><span>  </span></span></li><li class="alt"><span>    <span class="comment">//加载刚才下载的关卡</span><span>  </span></span></li><li class=""><span>    Application.LoadLevel (<span class="string">"yaya"</span><span>);</span><span class="comment">//这里面的“yaya”是指“Assets/yaya.unity”而不是指“yaya.unity3d”</span><span>  </span></span></li><li class="alt"><span>}  </span></li></ol></div><pre name="code" class="java" style="display: none;">function Start () {
	// Download compressed scene. If version 5 of the file named "Streamed-Level1.unity3d" was previously downloaded and cached.
	// Then Unity will completely skip the download and load the decompressed scene directly from disk.
	//下载压缩的场景。如果名为Streamed-Level1.unity3d的文件版本为5,预先下载并缓存。
	//然后Unity将完全跳过下载并直接从磁盘加载解压的场景。
	var download = WWW.LoadFromCacheOrDownload ("http://210.30.12.16:8080/chunge/yaya.unity3d", 5);
	yield download;

	// Handle error
	if (download.error != null)
	{
		Debug.LogError(download.error);
		return;
	}

	// In order to make the scene available from LoadLevel, we have to load the asset bundle.
	// The AssetBundle class also lets you force unload all assets and file storage once it is no longer needed.
	//为了使场景LoadLevel可用,必须加载资源包
	//AssetBundle类,还可以强制卸载所有的资源和文件存储,一旦不再需要。
	var bundle = download.assetBundle;

	// Load the level we have just downloaded
	//加载刚才下载的关卡
	Application.LoadLevel ("yaya");//这里面的“yaya”是指“Assets/yaya.unity”而不是指“yaya.unity3d”
}</pre><br><br></pre>
<br>
<br>
<br>
  
<p></p>
<pre></pre>
<pre></pre>
<pre></pre>
   
</pre></pre></div>

article_content
 



                
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值