<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="" 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="" 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="" 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="" 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="" 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="" 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="" 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="" 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="" 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