资源管理

Q1:我在UWA上提交了资源检测,资源打的是依赖包,报告显示Default—Particle这个资源存在大量冗余,这个是正常的吗?

Default—Particle 这个是粒子系统的默认资源。如果使用的是默认的粒子系统,没有对Material进行修改,且每个粒子系统都是打一个AssetBundle文件的话,那么该冗余问题是正常的。对此,我们建议开发团队把下图中默认的Material换成自己的资源,不使用Built-in资源,这样通过依赖关系打包,就不会出现该资源冗余的问题了。


资源管理

Q2:从点击应用到出现游戏画面,这个时间长短是不是和Resource目录大小有关系?

从点击应用到首次出现应用画面,其加载时间主要与两方面相关:

  1. Resources文件夹中的资源数量。在游戏启动时,Unity引擎会为Resources文件夹下的资源建立一个查找树来存放与其对应的索引,便于后续资源的加载。一般来说,Resouces文件夹下资源数量越多,其构建时间越长,应用的启动也就越慢;

  2. 首场景的资源加载和相关代码的初始化工作。如果首场景的资源量较多,其脚本初始化的任务较重,则应用的启动时间也会越慢。


性能优化

Q3:Unity 的 TimeManager Time默认是0.02。我们有个NetConnectionManager脚本使用了FixedUpdate,这个脚本是用来解析网络协议的,我尝试修改Time的值为0.01 ,感觉游戏似乎提高了运行的效率,具体表现在减少了一些卡顿问题的延迟,提高了调用的频率,但是发热和耗电问题似乎会变得严重。关于TimeManager设置,你们有什么建议吗?

将TimeManager中的Time从0.02降低到0.01,其本质是将FixedUpdate的调用频率从默认的50次/秒提升为100次/秒。这一操作确实很可能带来画面表现的流畅感,但同样增加了一倍的网络IO,其本身会占用更大的性能开销,从而造成设备发热。一般来说,除对于网络同步非常高的游戏外,TimeManager中Time按照默认的0.02设置即可。


内存管理

Q4:有没有办法可以减少游戏中Mono内存占用的大小?我现在读完游戏表以后就占用了60MB,我看其他游戏读完配置表也才10MB左右,这个是怎么做到的呀?

如果刚进入游戏后,Mono堆内存就达到了60MB,那么你的游戏项目极有可能在一开始加载了一个非常大的配置表。对此,我们建议出现该问题的研发团队对配置文件的初始加载进行详细检测,查看是否可以精简配置文件信息。如果不行,则尝试将配置文件拆散,按需加载,从而降低Mono内存上升过快问题发生的概率。


资源管理

Q5:我用的是NGUI,本来已经打包图集了,输出时候是不是就不用理会那些原始2D Sprite图 ?粒子贴图需要Packing Tag吗?

在NGUI中使用Atlas后,原纹理是不需要进行打包或进行其他特殊处理的,因为理论上这些资源在运行时已不再需要。粒子系统所使用的纹理并不是Sprite类型的,因此不需要设置Packing Tag。


资源管理

Q6:请教个问题,我用Unity 5 里提供的Sprite Packer把A.png,B.png打进一张图集,在运行时我怎么方便地加载这两张图呢?使用场景:某个Image控件根据不同的条件显示A,或者显示B。

目前通常是在脚本序列化信息中保留这两个Sprite的引用,在切换时直接通过对Image.sprite进行赋值来切换。

今天的分享就到这里。

原文出处:侑虎科技
本文作者:admin
转载请与作者联系,同时请务必标明文章原始出处和原文链接及本声明。

技术分享连载(二十七)相关推荐

  1. WCF技术剖析之二十七: 如何将一个服务发布成WSDL[基于HTTP-GET的实现](提供模拟程序)...

    WCF技术剖析之二十七: 如何将一个服务发布成WSDL[基于HTTP-GET的实现](提供模拟程序) 原文:WCF技术剖析之二十七: 如何将一个服务发布成WSDL[基于HTTP-GET的实现](提供模 ...

  2. UWA 技术分享连载 转载

    技术分享连载1 Q1:Texture占用内存总是双倍,这个是我们自己的问题,还是Unity引擎的机制? Q2:我现在发现两个因素直接影响Overhead,一个是Shader的复杂度,一个是空Updat ...

  3. 技术分享连载(八十七)

    加载 Q1:我们每次大批量地合入美术资源时,经常会出现构建出来的版本出现材质引用丢失.Animator Controller引用错误.贴图引用错误等资源引用错误的问题,美术资源在本地是正确的,其他人机 ...

  4. 技术分享连载(八十八)

    原文链接:https://blog.uwa4d.com/archives/2152.html 我们将从日常技术交流中精选若干个开发相关的问题,建议阅读时间15分钟,认真读完必有收获.如果您有任何独到的 ...

  5. 技术分享连载(八十四)

    原文链接:https://blog.uwa4d.com/archives/TechSharing_84.html 我们将从日常技术交流中精选若干个开发相关的问题,建议阅读时间15分钟,认真读完必有收获 ...

  6. 技术分享连载(十八)

    图形渲染 Q1:我看到Unity 5.3.5版本中恢复了对粒子系统的合批功能,但是我尝试下来并没有达到这个效果.是粒子系统合批有什么要求吗,实例化会不会对粒子系统的合批造成影响呢? 经过我们验证,Un ...

  7. SDNLAB技术分享(二):从Toaster示例初探ODL MD-SAL架构

    为什么80%的码农都做不了架构师?>>>    本文系OpenDayLight SDNLAB研究群(群号:194240432)分享整理而成,分享者魏静波通过对ODL wiki上的to ...

  8. 《Sibelius 脚本程序设计》连载(二十七) - 3.1 自定义数据

    <Sibelius 脚本程序设计>连载(Flash 格式) 转载于:https://www.cnblogs.com/Sibelius/archive/2010/12/24/1916341. ...

  9. 技术分享连载(六十九)

    资源管理 Q1: 在打包的时候,有一部分资源是没有设置AssetBundleName的,打包的时候会和依赖它们的资源打到同一个AssetBundle包里(Unity自动完成).在资源加载的时候,无法主 ...

最新文章

  1. springMVC4(9)属性编辑器剖析入参类型转换原理
  2. 【大数据-Hadoop】Presto
  3. 2019-11-10 秩和奇异的一些概念
  4. 华为鸿蒙harmonyos-面向全场,华为正式官宣鸿蒙手机版相约6月2日,EMUI官博更名为HarmonyOS...
  5. java.lang.UnsupportedClassVersionError : Unsupported major.minor version 52.0
  6. django -- url 的 命名空间
  7. java基于SSM的宠物医院信息管理系统
  8. 修改服务器cimc地址,【交换机在江湖】实战案例十三 HUAWEI S系列交换机802.1x特性对接H厂商IMC服务器配置指导...
  9. 突发!ARM中国区执行董事长兼CEO被免职
  10. java毕业生设计二手物品交易系统计算机源码+系统+mysql+调试部署+lw
  11. 将Excel表中数据导入数据库(看了就会)
  12. 解决web系统session劫持
  13. 徐波 博士 计算机,徐波医生(博士 广州市第一人民医院主任医师)简介
  14. C/C++实现百度API GET请求
  15. python少儿编程008:海龟绘图画出奥运五连环!
  16. 华为手机设置信息服务器地址,华为手机如何设置云服务器地址
  17. iOS UILabel 使用姿势大全(标红关键字)
  18. 51Nod - 1298(点到线段的距离)
  19. 【正点原子STM32连载】第五十一章 视频播放器实验 摘自【正点原子】MiniPro STM32H750 开发指南_V1.1
  20. 什么是DDX,DDY,DDZ?

热门文章

  1. react留言功能准备一
  2. angular-数据绑定的最佳实践
  3. VS2010链接SQLsever2008数据库时出现[DBNETLIB][ConnectionOpen (Connect()).]SQL Server 不存在或拒
  4. 剑指offer51 构建乘积数组(图解)
  5. 排序算法之选择排序(简单选择排序、堆排序)
  6. java 程序打包成jar_Java程序打包成jar包
  7. linux文件内上下移动,Linux中有多个查看文件的命令,如果希望在查看文件内容过程中用光标可以上下移动来查看文件内容,则符合要求的那一个命令是( )。...
  8. git tag什么时候使用_git使用教程9pycharm 使用 tag 打标签
  9. 当贝显示服务器生病,智能电视一直显示“缓冲中”是什么问题?当贝市场为你解答...
  10. 【王俊杰de人工智能实战课】第8次作业