Unity5 AssetBundle

设置assetBundleName

AssetImporter importer = AssetImporter.GetAtPath(p);
importer.assetBundleName = x;
importer.assetBundleVariant = y;

 

AssetBundleManifest

  • GetAllAssetBundles
  • GetAssetBundleHash
  • GetAllDependencies
  • GetDirectDependencies

 

 BuildPipeline

  • BuildAssetBundles
  • BuildPlayer
  • GetCRCForAssetBundle
  • GetHashForAssetBundle

 

https://docs.unity3d.com/Manual/BuildingAssetBundles.html

AssetBundle names are always lower-case. If you use upper-case characters in the name, they are converted to lower-case.

In addition to these, another two files are created: another AssetBundle and another manifest file. They are created for each folder that AssetBundles are created in, so if you always create AssetBundles in the same place, you only get two extra files. 

 

https://unity3d.com/cn/learn/tutorials/topics/scripting/assetbundles-and-assetbundle-manager?playlist=17117

Each AssetBundle has some technical overhead. AssetBundles are files that wrap Assets. This wrapper adds to the overall size of the AssetBundle. Even though this is not a significant increase in size, it is measureable. AssetBundles also require a certain amount of management to organize, create, upload and maintain. The more AssetBundles being used increases overhead for a project, both technical and managerial.

When organizing AssetBundles, a balance must be struck between too many small AssetBundles that need to be tracked and generate overhead, and too few AssetBundles that are large and contain unnecessary or redundant data. The exact balance will depend heavily upon the needs of the project.

 

Asset dependencies are never lost. However, this can also cause the duplication of Assets.

This (asset bundle variant) is particularly useful when working with projects that need to select one Asset from a wide variety of different possible choices based on criteria like resolution, language, localization, or user preference.

posted on 2017-01-02 10:39  AnswerWinner  阅读(438)  评论(0编辑  收藏  举报

导航