当前位置: 首页 > news >正文

武汉响应式网站建设网站建设

武汉响应式网站建设,网站建设,婚恋注册,温州 网站加密前: 加密后,直接无法加载ab,所以无法正常看到ab内容。 using UnityEngine; using UnityEditor; using System.IO; public static class AssetBundleDemoTest {[MenuItem("Tools/打包!")]public static void Build(){//注意:St…

加密前:

加密后,直接无法加载ab,所以无法正常看到ab内容。

using UnityEngine;
using UnityEditor;
using System.IO;
public static class AssetBundleDemoTest
{[MenuItem("Tools/打包!")]public static void Build(){//注意:StreamingAssets文件夹需手动创建//参数:打包路径(Assets/StreamingAssets文件夹)、打包方式、打包平台(运行平台)BuildPipeline.BuildAssetBundles(Application.streamingAssetsPath, BuildAssetBundleOptions.ChunkBasedCompression,EditorUserBuildSettings.activeBuildTarget);//刷新编辑器AssetDatabase.Refresh();}[MenuItem("Tools/加密AB")]public static void EncryptAB(){string[] filePaths = Directory.GetFiles(Application.dataPath + "/StreamingAssets");foreach (string filePath in filePaths){byte[] bytes = File.ReadAllBytes(filePath);byte[] newBytes = new byte[bytes.Length + 8];for (int i = 0; i < bytes.Length; i++){newBytes[8 + i] = bytes[i];}File.WriteAllBytes(filePath, newBytes);}}
}

测试代码如下,加载名为"prefab_ab"的AB包,并加载名为"Cube"的资源,是一个预制体。

关于资源加载详情:【Unity】资源加载方式大全_streamingassets manifest-CSDN博客

利用public static AssetBundle LoadFromFile(string path, uint crc, ulong offset);API从磁盘加载AB包,其中crc填0,代表没有任何CRC校验,offset填加密所使用的偏移量8(你可以改,但一定和加密时偏移量一样。) 

using System.Collections.Generic;
using UnityEngine;public class AssetBundleTest : MonoBehaviour
{Dictionary<string, GameObject> resourcesDict = new Dictionary<string, GameObject>();void Start(){GameObject goPrefab = LoadResourceByResourceNameFromAb("prefab_ab", "Cube");if (goPrefab != null){GameObject go = GameObject.Instantiate(goPrefab);}}private GameObject LoadResourceByResourceNameFromAb(string abName, string resourceName){if (!resourcesDict.ContainsKey(abName + "|" + resourceName)){//加载ab包 本地加载方式 一个名为apple的ab包文件AssetBundle assetBundle = AssetBundle.LoadFromFile(Application.streamingAssetsPath + "/" + abName, 0, 8);if (assetBundle != null){//加载源资源时先加载依赖资源//1.加载位于StreamingAssets目录下的StreamingAssets包AssetBundle streamingAssetsBundle = AssetBundle.LoadFromFile(Application.streamingAssetsPath + "/StreamingAssets", 0, 8);if (streamingAssetsBundle == null){Debug.Log("streamingAssetsBundle is not exist!");return null;}//加载StreamingAssets包下的AssetBundleManifest文件(可打开StreamingAssets.manifest文件看第三行的名字就是它)AssetBundleManifest assetBundleManifest = streamingAssetsBundle.LoadAsset<AssetBundleManifest>("AssetBundleManifest");//获取abName包的全部依赖名称!即StreamingAssets.manifest文件的指定Info为abName的Dependencies的数组内容string[] deps = assetBundleManifest.GetAllDependencies(abName);//加载abName包的全部依赖资源for (int i = 0; i < deps.Length; i++){//Debug.Log("依赖资源名称" + deps[i]);//因为依赖名称是一个相对路径,例如:StreamingAssets下的pp文件夹的m2资源是写为 pp/m2,所以加载是没问题AssetBundle.LoadFromFile(Application.streamingAssetsPath + "/" + deps[i], 0, 8);}//加载源资源GameObject go = assetBundle.LoadAsset<GameObject>(resourceName);if (go != null){resourcesDict.Add(abName + "|" + resourceName, go);return go;}else{Debug.LogWarning("abNmae:" + abName + ",resourceName:" + resourceName + " is not exist!");return null;}}else{Debug.LogWarning("abNmae:" + abName + " is not exist!");return null;}}else{GameObject go = null;resourcesDict.TryGetValue(abName + "|" + resourceName, out go);return go;}}
}
http://www.hkea.cn/news/353637/

相关文章:

  • 大学网站建设管理办法推广技巧
  • 长春做网站公司seo关键词排名优化软件怎么选
  • 网站开发未按合同约定工期完工seo关键词排名怎么提升
  • 创可贴app海报制作网站百度seo优化方法
  • 龙岗品牌网站建设2024年新闻摘抄
  • 南阳住房和城乡建设厅网站招聘网站排名
  • 如何做网站活动封面建站的公司
  • 温州网站建设培训营销推广方案包括哪些内容
  • 厦门 建网站商业软文案例
  • wordpress读者墙站长之家seo工具包
  • 网站建设哪家好灵活苏州久远网络北京搜索引擎关键词优化
  • 网站优化怎么做 有什么技巧东莞seo建站
  • 什么网站可以做游戏机疫情最新数据消息
  • 企业网站开发报价单巩义网络推广
  • 网站开发技术交流群免费域名申请网站
  • 手机网站一键分享怎么知道自己的域名
  • 做网站 做好把我踢开北京网站搭建哪家好
  • 网站如何做引流刷外链网站
  • wordpress 站点地址关注公众号一单一结兼职
  • 合肥网站建设第一品牌个人seo外包
  • 省心的免费建站服务热线四川seo关键词工具
  • 网站总是跳转dede58seo对网络推广的作用是
  • seo排名怎么提高seo排名优化软件有用
  • 江门论坛建站模板黑帽seo联系方式
  • 政府网站信息内容建设专项检查搜索引擎排名优化seo课后题
  • 个人做的好的淘宝客网站软文营销推广
  • 城乡建设委员会网站河北seo推广公司
  • 某网站栏目策划2022十大热点事件及评析
  • 德清网站建设中心优化大师官方免费下载
  • 生日网页制作免费网站制作代做网页设计平台