Unity3D加载场景有很多种方式,做一些小的DEMO的时候往往是直接使用Application.LoadLevel或者Application.LoadLevelAsync函数加载场景,具体可查看(http://www.xuanyusong.com/archives/1427),但是这种办法不适合在真正的Unity3D开发中,因为前一种需要把所有的场景都打包,这在某些情况下是不现实的,比如开发页游,我们不可能把所有的场景都打包让用户下载,我们需要一个场景一个场景的加载,这时候我们可以使用WWW先通过HTTP加载场景到本地缓存,然后再使用Application.LoadLevel或者Application.LoadLevelAsync函数加载场景,使用这种加载方式,不仅不需要BuildSettings->AddCurrent处理加载场景,进度条的显示也更加容易,但是使用这种方式,需要先把场景打包成unity3d(查看详情)或者assetbundle(查看详情)文件。
先把测试场景搭建好,如图:
然后添加一个C#脚本,取名UseWww.cs,全部代码如下:
复制代码