位置: 编程技术 - 正文

Unity3D - 资源管理(unity资源包管理器)

编辑:rootadmin

推荐整理分享Unity3D - 资源管理(unity资源包管理器),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:unity资源库,unity资源文件,unity项目中的资源,unity项目中的资源,unity资源库,unity资源文件,unity资源库,unity资源库,内容如对您有帮助,希望把文章链接给更多的朋友!

一直没有总结过Unity的资源管理,都是随用随看文档。今天有人问,竟然没说上来,说起来也做了两款Unity游戏,惭愧。这里总结一下,加深自己对Unity资源管理的理解。主要参考了Unity官方文档之Resources和AssetBundle。

Unity有两种动态加载资源的方式,Resources.Load和AssetBundle。Resources.Load用于加载打进游戏包内Resources目录下的资源,AssetBundle用于加载包外自己打的资源包(使用BuildPipeline.BuildAssetBundle),常用于做动态更新。下面结合API具体说明:

加载:

Resources.Load:加载app包内Resources/目录的一个asset;

Resources.LoadAsync:Resources.Load的异步方法;

Resources.LoadAll:类&#;Resources.Load,但是用于加载某目录下所有asset;

Resources.LoadAssetAtPath:加载Asset/目录下的资源,只能用于编辑器模式,写打包工具时可能用到;

AssetBundle.CreateFromFile:从磁盘加载一个AssetBundle,这是加载AssetBundle最快的方式(我查到有人说这种方式只能用于pc,官方文档没提有这个限制,待检验);

AssetBundle.CreateFromMemory:从内存中创建一个AssetBundle,异步方法;

AssetBundle.CreateFromMemoryImmediate:AssetBundle.CreateFromMemory的同步方法;

AssetBundle.LoadAsset:从AssetBundle中加载一个asset;

AssetBundle.LoadAssetAsync:AssetBundle.LoadAsset的异步方法;

AssetBundle.LoadAllAssets:加载AssetBundle中所有指定类型的asset;

Unity3D - 资源管理(unity资源包管理器)

AssetBundle.LoadAllAssetsAsync:AssetBundle.LoadAllAssets的异步方法;

WWW.LoadFromCacheOrDownload:从缓存或网络上下载后加载AssetBundle,不需担心设备空间不足;

卸载:

Resources.UnloadAsset(Object assetToUnload):卸载指定的asset,只能用于从磁盘加载的;如果场景中有此asset的引用,Unity会自动重新加载它;

Resources.UnloadUnusedAssets:卸载所有未被引用的asset,可以在画面切换时调用,或定时调用释放全局未使用资源;

AssetBundle.Unload(false):卸载AssetBundle的压缩文件数据(文件内存映像);

AssetBundle.Unload(true):卸载AssetBundle文件内存映像,并且释放所有已加载的asset;如果asset在场景中被引用,会丢失;

Object.Destroy:销毁一个GameObject、组件或asset;并不是立即销毁,而是在Update循环之后,渲染之前;

Object.DontDestroyOnLoad:标明一个对象在切换场景时不被销毁;

GC.Collect:强制垃圾收集器立即回收内存,可以根据需要使用,比如切换画面调用或定时调用;

通过看Unity的这些API说明,可以清晰地了解Unity的动态资源管理了。下面这幅图描绘的更清晰:

U3D是大坑!!!!! 1.有些业务逻辑类不需要Awake()、OnEnable()、Start()、FixedUpdate()、Update()......这一套框架,就不一定需要继承于MonoBehaviour(任何一个类都继承于MonoBehaviour会造

Unity3D游戏开发之从"复活"和"暂停/恢复"谈游戏数据配置管理 随着游戏制作技术的不断发展,在经历了从2D到3D、从单机到网游、从PC游戏到移动游戏的种种演变后,玩家对于游戏质量的要求越来越高,游戏制作的

Unity3D游戏开发之编辑器扩展程序开发实例 各位朋友大家好,欢迎关注我的博客,我的博客地址是

标签: unity资源包管理器

本文链接地址:https://www.jiuchutong.com/biancheng/382529.html 转载请保留说明!

上一篇:unity3D(基于UGUI)网络游戏正在开发中 <一>"最近用UGUI做人物血条"(unity3ds)

下一篇:U3D是大坑!!!!!(u3d官方)

  • 公司注册资本认缴
  • 物业公司代收电费怎么开票
  • 未开票收入如何填写增值税申报表
  • 作废的发票要拿出来吗
  • 银行转账支付计入什么科目
  • 贷款受托支付可以给股东吗
  • 税控盘减免税额转出会计分录
  • 资产负债表中的货币资金怎么算
  • 未支付的货款属于什么会计科目
  • 支付退货款现金流怎么做
  • 贴息是谁支付
  • 不能抵扣的进项税怎么做账
  • 股东向公司借款需要交税吗
  • 开业好不好
  • 工会会费可以一年交两个单位吗
  • 代垫资金的代购是什么
  • 破产清算应付账款
  • 账面上挂的其他应付款怎么冲平?
  • 超市开具预付卡发票不征税发票上税吗
  • 通过拍卖取得的车牌号,过期了怎么办
  • windows家庭版最新版本
  • iphone7如何设置输入法
  • 升级win10到专业版
  • 水电费无发票如何做账
  • 抵押房产的保险能退吗
  • 货物运输业增值税专用发票可以抵扣吗
  • 可以关闭系统的快捷键
  • PHP:pg_lo_read()的用法_PostgreSQL函数
  • 附有退回条件的销售商
  • 收到政府的补助交所得税么
  • php echo js
  • php生成csv文件
  • 小规模纳税人每月申报什么税
  • php访问数据库的方式
  • 销售费用可以开专票吗
  • diskgenius命令
  • 盘盈的存货账务怎么处理
  • 应收帐款质保金
  • 先付款后开票怎么做账务处理
  • 成本收入核算表
  • ubuntu 14.04 安装分区教程
  • 不发工资可以先报警吗
  • 买一赠一税务局答复
  • 计提加计抵减额在财务报表里哪里体现
  • 航天金税服务费怎么交
  • 小规模纳税人都报什么税
  • 还有什么服务啊
  • 社保月费基数
  • 母公司设立子公司协议
  • 出纳提取现金有金额限制吗
  • 税务入账的加油费怎么算
  • 年终奖企业应该计入哪个会计年度
  • 小规模纳税人如何缴纳企业所得税
  • 暂领款是什么意思
  • 研发费用核查要点
  • 企业搬迁补偿款免税的法律依据是什么
  • 收付实现制和权责发生制区别
  • freebsd使用手册
  • vmware虚拟机怎么改用户名
  • 如何安装vmware10
  • 电脑如何进入bios选择u盘启动
  • 苹果mac怎么查看运行数据
  • linux ultrasphinx Anonymous modules have no name to be referenced by
  • win7无法启动print spooler服务,错误5
  • SwiftBTN.exe - SwiftBTN是什么进程 有啥作用
  • win10系统admin和oobe
  • Win10 Mobile 10586.306提前上手视频评测
  • window10光驱不能用了
  • lua教程书籍
  • bat 批处理文件
  • javascript入门基础
  • JavaScript instanceof 的使用方法示例介绍
  • 获取nodejs命令行信息
  • js跨域的几种方法
  • inputchange
  • androidstudio性能检测工具
  • 税务局副科长工资
  • 专利转让个人所得税转换为经营所得
  • 没有代理记账资格的公司能代理记账吗
  • 五证合一后工商变更完还要税务变更吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设