201808111240->打场景文件到ab包


        ///


        /// 打包场景
        /// 
        /// 打包场景需要注意指定场景名字和打出ab的地址
        /// 
        /// 常规操作指定平台和输出流,输出流是为了移动平台能够读取到场景名称
        /// 
        /// 默认skybox并没有打进ab包,加载出来之后丢失了材质
        /// 
        /// 在unity中尽量使用拖拽添加引用,这样依赖关系比较明确,出问题自己也好分析
        ///

        [UnityEditor.MenuItem("Version AssetsBundle Build/scenes single build assetsbundle")]
        public static void SceneAssetsBundle()
        {
       string[] path = new string[] { Application.dataPath + @"/00.Tools/7.AssetsBundle/002.VersionAB/Scenes/VersionABDemo.unity" };

            //打包场景需要指定场景和地址
            BuildPipeline.BuildPlayer(path, Application.dataPath + "/StreamingAssets/scenes.ab", BuildTarget.Android, BuildOptions.BuildAdditionalStreamedScenes);
            AssetDatabase.Refresh();
        }

打包资源与打包资源是两个不同的概念

最简单是打资源使用BuildPipeline.BuildAssetBundle

打场景的话则是使用BuildPipeline.BuildPlayer

打包场景需要注意的是

指定好打出的包的路径以及ab包的名字

打包要指定stream

用流的方式去打包场景

不然容易导致移动平台上读取不到场景

注意场景里的引用关系

你可能感兴趣的:(unity,c#)