书籍详情
《Unity游戏程序优化设计实战 [Unity Game Optimization]》[60M]百度网盘|亲测有效|pdf下载
  • Unity游戏程序优化设计实战 [Unity Game Optimization]

  • 出版社:清华大学出版社
  • 作者:[美] 克里斯·迪金森 著,李庆良 译
  • 出版时间:2020-11-01
  • 热度:5019
  • 上架时间:2025-01-04 08:18:29
  • 价格:0.0
书籍下载
书籍预览
免责声明

本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正

内容介绍

内容简介

  《Unity游戏程序优化设计实战》详细阐述了与UIuty优化开发相关的基本解决方案,主要包括检测性能问题、脚本编写策略、批处理、艺术资产、物理引擎、动态图形、内存管理、预制件池内容。
  此外,《Unity游戏程序优化设计实战》还提供了相应的示例、代码,以帮助读者进一步理解相关方案的实现过程。
  《Unity游戏程序优化设计实战》适合作为高等院校计算机及相关专业的教材和教学参考书,也可作为相关开发人员的自学教材和参考手册。

作者简介

  克里斯·迪金森(Chris Dickinson),在英国长大,对科学、数学和电子游戏充满热情。他于2005年从利兹大学获得电子学物理学硕士学位,然后立即前往加利福尼亚在硅谷中心从事科学研究。由于发现该职业道路不合适,他开始在软件行业工作。
  在过去的十年中,他一直从事软件开发工作,成为一名高级软件开发人员。Chris主要从事软件自动化和内部测试工具开发,但是他对视频游戏的热情从未完全消失。2010年,他通过完成第二个学位(游戏和模拟编程的学士学位),探索了游戏开发和3D图形的秘密。他撰写了有关游戏物理学的教学图书(Learning Game Physics with Bullet Physics and Open GL,由Packt Publishing出版)。他目前仍在从事软件开发工作,在业余时间,则喜欢使用Unity3D等工具创建独立的游戏项目。

内页插图

目录

第1章 检测性能问题
1.1 关于UnityProfiler
1.1.1 启动Profiler
1.1.2 Profiler窗口
1.2 性能分析的最佳方法
1.2.1 验证场景中是否存在目标脚本
1.2.2 验证脚本在场景中出现的次数
1.2.3 尽量减少对正在进行的代码的更改
1.2.4 最小化内部干扰
1.2.5 最小化外部干扰
1.3 代码段的目标性能分析
1.3.1 关于Profiler的脚本控制
1.3.2 自定义CPU性能分析
1.4 保存和加载Profiler数据
1.4.1 保存Profiler数据
1.4.2 加载Profiler数据
1.5 关于性能优化和分析的最终思路
1.5.1 了解Profiler
1.5.2 减少噪声
1.5.3 聚焦问题
1.6 小结

第2章 脚本编写策略
2.1 缓存组件引用
2.2 使用最快的方法获取组件
2.3 删除空的回调声明
2.4 在运行时避免使用Find()和SendMessage()方法
2.4.1 静态类
2.4.2 单例组件
2.4.3 分配对现有对象的引用
2.4.4 全局消息系统
2.5 禁用未使用的脚本和对象
2.5.1 按可见性禁用对象
2.5.2 按距离禁用对象
2.6 考虑使用距离平方值
2.7 避免从GameObject中检索字符串属性
2.8 更新和协程问题
2.9 考虑缓存Transform值的更改
2.10 更快的GameObject空引用检查
2.11 小结

第3章 批处理的好处
3.1 绘制调用
3.2 材质和着色器
3.3 动态批处理
3.3.1 顶点属性
3.3.2 均匀缩放
3.3.3 动态批处理小结
3.4 静态批处理
3.4.1 静态标志
3.4.2 内存需求
3.4.3 材质引用
3.4.4 静态批处理注意事项
3.4.5 静态批处理小结
3.5 小结
……

第4章 快速启动艺术资产
第5章 更快的物理引擎
第6章 动态图形
第7章 精通内存管理
第8章 提示和技巧

前言/序言

  用户体验是任何游戏的关键组成部分。用户体验不仅包括游戏剧情和游戏玩法,还包括图形运行的流畅程度,与多人服务器连接的可靠性,对用户输入的响应程度,以及最终应用文件的大小(因为现在普遍流行应用商店和云下载,超大的安装文件包可能让玩家望而却步)。便宜好用的AAA工业级游戏开发工具(例如Unity)的发布,大大降低了游戏开发行业的进入门槛。当然,玩家期望开发者提供的最终产品的功能和质量每天都在提高。不难想象,今后游戏的每一个方面都可以而且将会受到玩家和评论家的严格审查。
  游戏性能优化的目标与用户体验息息相关。优化效果不佳的游戏可能会导致帧速率降低、死机、崩溃、输入滞后、加载时间长、运行时行为不稳定、物理引擎故障甚至电池功耗过高(在游戏进入移动设备时代之后,这一点尤其重要)。上述问题中的任何一项都有可能变成游戏开发人员最糟糕的噩梦,因为尽管总体来说我们已经做得足够好,但评论往往会集中在我们做得不好的一件事情上。
  所谓“性能优化”就是充分利用可用资源,这些资源包括CPU资源(例如CPU周期和主内存空间)、图形处理单元(GPU)资源(例如显存VRAM和内存带宽)等。但是,性能优化还意味着确保没有单个资源在不适当的时间造成瓶颈,并且优先处理优先级最高的任务。即使是很小的、间歇性的卡顿,也很容易使玩家退出体验,打破沉浸感,并限制了我们创造预期体验的潜力。
  决定何时退后一步并停止提高性能也很重要。在时间和资源无限的世界中,总会有另一种方法可以使游戏变得更好、更快或更易于维护。开发人员能够拥有无限的时间和资源吗?不能。所以我们要懂得在一定的程度适可而止,在开发过程中既要确保产品达到可接受的质量水平,又不能无限度地追求进一步的改变和提升,事实上,有些改变几乎不会带来任何明显的好处。