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

做么自己做一个网站房地产市场

做么自己做一个网站,房地产市场,开发菏泽网站建设,苏州网站建设 苏州网络推广专家1 定义 Unity中的一种特殊资源包格式#xff0c;用于存储和分发游戏资源。这些资源可以包括模型、纹理、音频文件、预制体、场景等。 AssetBundle允许开发者在游戏运行时动态加载和卸载资源#xff0c;从而实现灵活的资源管理。 2 使用场景 1、资源管理 有效管理游戏中的资…1 定义 Unity中的一种特殊资源包格式用于存储和分发游戏资源。这些资源可以包括模型、纹理、音频文件、预制体、场景等。 AssetBundle允许开发者在游戏运行时动态加载和卸载资源从而实现灵活的资源管理。 2 使用场景 1、资源管理 有效管理游戏中的资源按需下载需要的资源减少内存消耗提高游戏加载速度和响应时间。 2、游戏热更新 实现游戏热更新的重要手段。开发者可以在游戏发布后通过服务器更新AssetBundle从而更新或替换游戏中的资源而无需重新发布整个游戏。可以快速修复bug添加新内容或更新现有内容。 3、DLC下载内容 大型游戏通过DLC增加游戏内容。这些DLC通常包含新的关卡、角色、武器等。 3 使用 1、标记资源 在Unity编辑器中选择需要打包的资源设置AssetBundle标签 2、创建和构建AssetBundle 编写并运行一个Editor脚本来构建AssetBundle 3、加载AssetBundle 在游戏运行时通过脚本加载AssetBundle 4、使用资源 加载AssetBundle后通过脚本获取并使用资源 5、卸载AssetBundle 使用完AssetBundle后即使卸载释放内存 4 代码实现 编辑器脚本——构建AssetBundle BuildPipeline UnityEditor命名空间下的一个静态类提供了构建玩家Player、资源包如AssetBundles和管理构建过程的功能。 常用方法构建资源包 BuildPipeline.BuildAssetBundles: 参数: outputPath: 输出路径。 assetBundleOptions: 构建选项。 target: 目标平台。 builds: 要构建的 AssetBundle 列表可选。 public static AssetBundleManifest BuildAssetBundles(string outputPath, BuildAssetBundleOptions assetBundleOptions, BuildTarget target); public static AssetBundleManifest BuildAssetBundles(string outputPath, AssetBundleBuild[] builds, BuildAssetBundleOptions assetBundleOptions, BuildTarget target);AssetBundleBuild UnityEditor命名空间下的一个结构体用于描述如何打包AssetBundle的一个数据结构。定义了哪些资源文件应该被打包成AssetBundle及该AssetBundle的名称、 包含以下字段 ·  assetBundleName:string 类型。AssetBundle 的名称。 ·  assetBundleVariantstring 类型。AssetBundle 的变体名称可选。 ·  assetNamesstring[] 类型。包含在 AssetBundle 中的资源路径数组。 ·  addressableNamesstring[] 类型。资源在 AssetBundle 中的可寻址名称可选。 using UnityEditor;public class BuildAssetBundles {[MenuItem(Assets/Build AssetBundles)]static void BuildAllAssetBundles(){// 定义一个 AssetBundleBuild 对象AssetBundleBuild assetBundleBuild new AssetBundleBuild();// 设置 AssetBundle 的名称assetBundleBuild.assetBundleName examplebundle;// 设置包含在 AssetBundle 中的资源路径数组assetBundleBuild.assetNames new string[]{Assets/ExampleFolder/ExampleAsset1.prefab,Assets/ExampleFolder/ExampleAsset2.prefab};// 创建打包列表AssetBundleBuild[] buildMap new AssetBundleBuild[] { assetBundleBuild };// 指定输出路径string outputPath Assets/AssetBundles;// 构建 AssetBundlesBuildPipeline.BuildAssetBundles(outputPath, buildMap, BuildAssetBundleOptions.None, BuildTarget.StandaloneWindows);} } AssetDatabase Code static void Build(BuildTarget target){//创建AssetBundleBuild打包列表ListAssetBundleBuild assetBundleBuilds new ListAssetBundleBuild();Liststring bundleInfos new Liststring(); //文件信息列表//填充列表string[] files Directory.GetFiles(PathUtil.BuildResourcesPath, *, SearchOption.AllDirectories); //获取BuildResourcesPath目录下所有文件for (int i 0; i files.Length; i) //根据文件构建AssetBundleBuild对象{//跳过meta文件if (files[i].EndsWith(.meta))continue;//处理要打包的文件根据BundleResources中文件创建AssetBundleBuild对象AssetBundleBuild assetBundle new AssetBundleBuild(); //创建一个新的AssetBundleBuild对象string fileName PathUtil.GetStandardPath(files[i]); //获取标准化后的文件路径Debug.Log(files: fileName); //Logstring assetName PathUtil.GetUnityPath(fileName); //获取相对于Assets文件夹的路径assetBundle.assetNames new string[] { assetName }; //设置assetBundle的资源名称string bundleName fileName.Replace(PathUtil.BuildResourcesPath, ).ToLower();assetBundle.assetBundleName bundleName .ab; //设置assetBundle的名称//将AssetBundleBuild对象加入打包列表assetBundleBuilds.Add(assetBundle);//添加文件和依赖信息Liststring dependenceInfo GetDependence(assetName);string bundleInfo assetName | bundleName .ab;if (dependenceInfo.Count 0)bundleInfo bundleInfo | string.Join(|, dependenceInfo);bundleInfos.Add(bundleInfo);}//检查并初始化输出文件夹if (Directory.Exists(PathUtil.BundleOutPath))Directory.Delete(PathUtil.BundleOutPath, true);Directory.CreateDirectory(PathUtil.BundleOutPath);//构建AssetBundlesBuildPipeline.BuildAssetBundles(PathUtil.BundleOutPath, assetBundleBuilds.ToArray(), BuildAssetBundleOptions.None, target);File.WriteAllLines(PathUtil.BundleOutPath / AppConst.FileListName, bundleInfos);AssetDatabase.Refresh();} static Liststring GetDependence(string curFile){Liststring dependence new Liststring();string[] files AssetDatabase.GetDependencies(curFile);dependence files.Where(file !file.EndsWith(.cs) !file.Equals(curFile)).ToList();return dependence;} 运行时脚本——加载和使用AB包 AssetBundle 用于在运行时加载和管理预先打包的资源 常用方法 AssetBundle.LoadFromFile从本地文件系统中同步加载 public static AssetBundle LoadFromFile(string path); public static AssetBundle LoadFromFile(string path, uint crc); public static AssetBundle LoadFromFile(string path, uint crc, ulong offset); 参数: · path: AssetBundle 文件的路径。 · crc可选: 用于校验的 CRC 值。 · offset可选: 文件偏移量。 返回值: · 加载的 AssetBundle 实例。 AssetBundle.LoadFromFileaAsync从本地文件系统异步加载 public static AssetBundleCreateRequest LoadFromFileAsync(string path); public static AssetBundleCreateRequest LoadFromFileAsync(string path, uint crc); public static AssetBundleCreateRequest LoadFromFileAsync(string path, uint crc, ulong offset); 参数: · path: AssetBundle 文件的路径。 · crc可选: 用于校验的 CRC 值。 · offset可选: 文件偏移量。 返回值: · AssetBundleCreateRequest表示异步加载操作的请求。 AssetBundle.LoadAssetAsync从已加载的AssetBundle中异步加载指定类型的资源 public AssetBundleRequest LoadAssetAsyncT(string name) where T : UnityEngine.Object; public AssetBundleRequest LoadAssetAsync(string name, Type type); 参数: · name: 资源名称。 · type: 资源类型。 返回值: · AssetBundleRequest表示异步加载操作的请求。 AssetBundle.Unload卸载已经加载的AssetBundle public void Unload(bool unloadAllLoadedObjects); 参数 unloadAllLoadedObject是否卸载所有已加载的资源对象
http://www.dnsts.com.cn/news/106074.html

相关文章:

  • 邢台网站优化服务平台宁波做网站哪家公司好
  • 郑州建材公司网站建设wordpress彩色框
  • 装饰公司为什么做网站wordpress rss feed
  • 1688企业网站建设网站如何做网站名称
  • 西安企业网站制作价格引擎搜索下载
  • 如何做公司网站运营备案网站名称更改
  • 北京定制网站开发公司浩森宇特u钙网logo设计文字头像
  • 免费下载代码的网站免费做元宵节卡片的网站
  • 越秀网站建设设计公司网站模板侵权案例
  • 云南网站做的好的公司哪家好南通专业制作网站
  • 无忧网站建设报价班徽logo设计图片
  • 大型门户网站江苏纯手工seo
  • 用flash做的网站有哪些珠海百度seo
  • 建设公众号官方网站总结格式模板
  • 人力社保网站建设的意义中国信息网官网查询系统
  • 比价网站开发wordpress采集破解版
  • 网站建设作业多少钱对电子商务网站建设的感想
  • 网站怎样才能被百度收录学校网站asp源码
  • 正能量不良网站免费软件下载电商网站设计论文
  • 芗城区建设局网站seo关键词排名优化怎样收费
  • 东莞网站优化公司哪家好域名估价网站
  • wordpress游戏网站主题网络营销促销形式
  • 重庆网站制作哪家好删除wordpress标志
  • 网站建设的收获体会虾子酱 wordpress
  • 郑州企业自助建站建站系统哪个比较好
  • 在中国做外国网站怎么收钱响应式网站建站平台
  • 社区网站怎么建湖南土特产销售网网站建设制作
  • 章丘网站制作住房和城市建设厅网站
  • 什么网站做贸易好cms下载官方网站
  • 网站图标可以用ps 做吗wordpress 调用评论