- N +

assetbundle手機(jī)查看,assetstudio手機(jī)版

大家好,今天來為大家解答assetbundle手機(jī)查看這個問題的一些問題點(diǎn),包括assetstudio手機(jī)版也一樣很多人還不知道,因此呢,今天就來為大家分析分析,現(xiàn)在讓我們一起來看看吧!如果解決了您的問題,還望您關(guān)注下本站哦,謝謝~

unity3d對美術(shù)資源的加密方式有哪些

c#代碼用混淆,深入可以試著修改mono加載dll方式,官方有開源monogit。

樓上有說assetbundle加密,這里加一個資源文件名稱也可以用md5hash一下。

如用其他腳本加密參考腳本語言本身lua可以用luajit,

原神手機(jī)版數(shù)據(jù)包在文件里叫什么

原神手機(jī)版數(shù)據(jù)包在文件里叫"PackedAssetBundle"。因?yàn)樵谟螒蜻\(yùn)行時,原神會將各種資源文件打包成一個數(shù)據(jù)包,這個數(shù)據(jù)包的名稱就是"PackedAssetBundle"。通過查看游戲文件中的資源文件夾,可以找到這個數(shù)據(jù)包。需要注意的是,這個數(shù)據(jù)包的大小較大,達(dá)到了數(shù)百兆甚至幾個G,需要耐心等待下載和安裝。

apk變aab對鴻蒙影響

因?yàn)锳pk格式一直只能支持100M的大小提交,而AppBundle支持150M的大小提交,并且超過150M的部分可以通過PlayAssetDelivery或PlayFeatureDelivery去交付,結(jié)合Feature-on-Feature插件支持可以更好實(shí)現(xiàn)動態(tài)化的依賴管理。

其實(shí)早在2018的時候Android就有AppBundle的打包模式,所以把這次APK變成AAB的行為和鴻蒙相關(guān)聯(lián),其實(shí)就是為了蹭熱度,吸引下流量。

更何況華為應(yīng)用商店的提交本身就支持AAB的格式,你說有什么影響?

unity assets bundle extractor 1.7 32bit怎么打開

創(chuàng)建AssetBundle1.創(chuàng)建一個空的Prefab,命名Cube,然后創(chuàng)建一個Cube,將其拉到剛創(chuàng)建好的Prefab2.新建一個腳本ExportAssetBundles.cs(代碼來自官方文檔),保存在Asset/Editor目錄下[csharp]viewplaincopyprint?//在Unity編輯器中添加菜單[MenuItem("Assets/BuildAssetBundleFromSelection")]staticvoidExportResourceRGB2(){//打開保存面板,獲得用戶選擇的路徑stringpath=EditorUtility.SaveFilePanel("SaveResource","","NewResource","assetbundle");if(path.Length!=0){//選擇的要保存的對象Object[]selection=Selection.GetFiltered(typeof(Object),SelectionMode.DeepAssets);//打包BuildPipeline.BuildAssetBundle(Selection.activeObject,selection,path,BuildAssetBundleOptions.CollectDependencies|BuildAssetBundleOptions.CompleteAssets,BuildTarget.StandaloneWindows);}}這時我們將看到Asset下面出現(xiàn)BuildAssetBundleFromSelection和BuildScene3.選中預(yù)設(shè)Cube,運(yùn)行BuildAssetBundleFromSelection。這時會彈出一個保存框,將其命名為cube.unity3d(這里為了測試方便,放在c盤。實(shí)際項(xiàng)目中,我們是需要將他們放在web服務(wù)器,供所有客戶端下載更新)4.新建一個場景scene1.unity,上面放置幾個模型,然后保存5.選中該場景,在之前的ExportAssetBundles.cs腳本中添加打包場景的函數(shù),運(yùn)行Assets->BuildScene,保存為scene1.unity3d(這里為了測試方便,也放在c盤)[csharp]viewplaincopyprint?[MenuItem("Assets/SaveScene")]staticvoidExportScene(){//打開保存面板,獲得用戶選擇的路徑stringpath=EditorUtility.SaveFilePanel("SaveResource","","NewResource","unity3d");if(path.Length!=0){//選擇的要保存的對象Object[]selection=Selection.GetFiltered(typeof(Object),SelectionMode.DeepAssets);string[]scenes={"Assets/scene1.unity"};//打包BuildPipeline.BuildPlayer(scenes,path,BuildTarget.StandaloneWindows,BuildOptions.BuildAdditionalStreamedScenes);}}注意事項(xiàng)a.AssetBundle的保存后綴名可以是assetbundle或者unity3db.BuildAssetBundle要根據(jù)不同的平臺單獨(dú)打包,BuildTarget參數(shù)指定平臺,如果不指定,默認(rèn)的webplayer加載AssetBundle我們通過一個簡單的代碼來演示如何加載assetbundle,包括加載普通asset和場景。[csharp]viewplaincopyprint?usingSystem;usingUnityEngine;usingSystem.Collections;publicclassLoad:MonoBehaviour{privatestringBundleURL="file:///C:/cube.assetbundle";privatestringSceneURL="file:///C:/scene1.unity3d";voidStart(){//BundleURL="file//"+Application.dataPath+"/cube.assetbundle";Debug.Log(BundleURL);StartCoroutine(DownloadAssetAndScene());}IEnumeratorDownloadAssetAndScene(){//下載assetbundle,加載Cubeusing(WWWasset=newWWW(BundleURL)){yieldreturnasset;AssetBundlebundle=asset.assetBundle;Instantiate(bundle.Load("Cube"));bundle.Unload(false);yieldreturnnewWaitForSeconds(5);}//下載場景,加載場景using(WWWscene=newWWW(SceneURL)){yieldreturnscene;AssetBundlebundle=scene.assetBundle;Application.LoadLevel("scene1");}}}注意事項(xiàng)a.LoadFromCacheOrDownload可以指定版本,如果本地版本是新的,將不會從服務(wù)器讀取b.如果是多個資源打包在一起,我們要通過bundle.Load(),加載特定的資源c.掛載在模型上的腳本也可以一起打包,但是保證腳本在原目錄也要存在,否則加載出來無法運(yùn)行。關(guān)于如何更新腳本,我將放在以后的章節(jié)中闡述。AssetBundle依賴關(guān)系如果一個公共對象被多個對象依賴,我們打包的時候,可以有兩種選取。一種是比較省事的,就是將這個公共對象打包到每個對象中。這樣會有很多弊端:內(nèi)存被浪費(fèi)了;加入公共對象改變了,每個依賴對象都得重新打包。AssetBundle提供了依賴關(guān)系打包。我們通過一個簡單的例子來學(xué)習(xí)[csharp]viewplaincopyprint?//啟用交叉引用,用于所有跟隨的資源包文件,直到我們調(diào)用PopAssetDependenciesBuildPipeline.PushAssetDependencies();varoptions=BuildAssetBundleOptions.CollectDependencies|BuildAssetBundleOptions.CompleteAssets;//所有后續(xù)資源將共享這一資源包中的內(nèi)容,由你來確保共享的資源包是否在其他資源載入之前載入BuildPipeline.BuildAssetBundle(AssetDatabase.LoadMainAssetAtPath("assets/artwork/lerpzuv.tif"),null,"Shared.unity3d",options);//這個文件將共享這些資源,但是后續(xù)的資源包將無法繼續(xù)共享它BuildPipeline.PushAssetDependencies();BuildPipeline.BuildAssetBundle(AssetDatabase.LoadMainAssetAtPath("Assets/Artwork/Lerpz.fbx"),null,"Lerpz.unity3d",options);BuildPipeline.PopAssetDependencies();這個文件將共享這些資源,但是后續(xù)的資源包將無法繼續(xù)共享它BuildPipeline.PushAssetDependencies();BuildPipeline.BuildAssetBundle(AssetDatabase.LoadMainAssetAtPath("Assets/Artwork/explosiveguitex.prefab"),null,"explosive.unity3d",options);BuildPipeline.PopAssetDependencies();BuildPipeline.PopAssetDependencies();我們在程序加載的時候必須保證先加載公共對象。否則,只能是在各個對象加載成功后,再通過程序手動添加進(jìn)來,比較繁瑣。在實(shí)際項(xiàng)目中,由于是團(tuán)隊(duì)開發(fā),對象間的依賴關(guān)系通常會比較凌亂,最好在開發(fā)周期就定好相關(guān)的規(guī)范約束,方便管理。

關(guān)于assetbundle手機(jī)查看和assetstudio手機(jī)版的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。

返回列表
上一篇:
下一篇: