新書推薦:
《
女性史:古代卷(真正意义上的女性大历史)
》
售價:NT$
560.0
《
你当我好骗吗?
》
售價:NT$
550.0
《
跨代伴侣治疗
》
售價:NT$
440.0
《
精华类化妆品配方与制备手册
》
售價:NT$
990.0
《
经纬度丛书:出祁山:诸葛亮北伐得与失
》
售價:NT$
440.0
《
心理治疗中的真意:心理治疗师的心灵之旅
》
售價:NT$
440.0
《
心理咨询与治疗技术经典入门(第3版)
》
售價:NT$
650.0
《
无冕之王:齐桓公与齐国崛起
》
售價:NT$
290.0
|
內容簡介: |
《腾讯游戏开发精粹Ⅲ》是腾讯游戏研发团队不断积累沉淀的技术结晶,是继 2019年推出《腾讯游戏开发精粹I》和《《腾讯游戏开发精粹II》后的诚意续作。本书收录了 21 个在上线项目中得到验证的技术方案,深入介绍了腾讯公司在游戏开发领域的新研究成果和新技术进展,涉及人工智能、计算机图形、动画和物理、客户端架构和技术、服务端架构和技术及管线和工具等多个方向。本书适合游戏从业者、游戏相关专业师生及对游戏幕后技术原理感兴趣的普通玩家。
|
關於作者: |
腾讯游戏学堂是腾讯游戏设立的致力于打造游戏知识分享和行业交流的平台,通过游戏行业专业人才培养、高校产学研合作、行业交流及开发者生态建设等,推动游戏行业良性发展,以能力生长,助游戏创作。
|
目錄:
|
第1章 适用于MOBA游戏的帧同步移动预表现方案1 1.1 网络游戏的客户端预表现技术1 1.2 帧同步及客户端预表现原理2 1.2.1 帧同步的原理与流程2 1.2.2 逻辑与表现分离3 1.2.3 客户端预表现基本流程5 1.3 帧同步下的移动预表现实现方案6 1.3.1 预测移动的基本表现要素8 1.3.2 移动预表现与技能衔接处理8 1.3.3 预测位置的修正10 1.3.4 墙体和动态阻挡14 1.4 移动手感指标与实验15 1.5 总结17 第2章 基于网格的视野技术方案18 2.1 实现及原理19 2.1.1 离线处理21 2.1.2 运行时处理25 2.1.3 渲染迷雾28 2.2 性能优化29 2.2.1 内存优化30 2.2.2 计算性能优化32 2.3 总结33 第3章 移动端App集成UE的实践34 3.1 移动端App集成UE简介34 3.1.1 价值、意义和对手机QQ相关技术的影响34 3.1.2 线上数据和成果展示35 3.2 UE的SDK化之旅35 3.2.1 启动器改造—集成移动端App的关键起点36 3.2.2 针对移动端App特点的引擎生命周期改造41 3.3 针对移动端App需求的引擎极致轻量化44 3.3.1 包体优化:二进制代码文件44 3.3.2 包体优化:资源文件46 3.3.3 内存优化52 3.4 应用功能的展示58 3.4.1 QQ秀58 3.4.2 游戏59 3.4.3 聊天表情录制60 3.5 总结60 第4章 UE的Dedicated Server优化实践61 4.1 DS管理优化61 4.1.1 游戏服务架构62 4.1.2 SeedDS模式优化方案64 4.1.3 MultiWorld模式69 4.2 Tick优化74 4.2.1 引擎层Tick优化74 4.2.2 逻辑层Tick优化78 4.2.3 Tick优化小结79 4.3 网络层优化79 4.3.1 网络同步简介80 4.3.2 DirtySystem的构建80 4.3.3 网络相关性优化83 4.4 业务层优化87 4.4.1 动画优化87 4.4.2 OverlapEvents实现分析和性能优化90 4.5 总结92 第5章 深入剖析高性能游戏数据库TcaplusDB的存储引擎93 5.1 数据库存储引擎概述93 5.2 LSH存储引擎的整体架构94 5.2.1 LSH存储引擎的设计思想94 5.2.2 LSH存储引擎架构设计95 5.2.3 存储引擎的读写删流程97 5.3 LSH存储引擎的实时自适应设计99 5.3.1 LSH存储引擎的rehash100 5.3.2 LSH存储引擎进行数据整理102 5.4 引擎线程模型及动态负载均衡105 5.4.1 TcaplusDB的线程模型105 5.4.2 动态负载均衡算法105 5.5 总结和展望107 第6章 面向游戏的服务网格:Tbuspp2108 6.1 微服务架构模型简介108 6.2 游戏后台对服务网格的能力需求分析109 6.2.1 游戏与Web服务后台运行模式的差异110 6.2.2 为什么需要Tbuspp2110 6.3 Tbuspp2设计113 6.3.1 系统架构113 6.3.2 领域建模114 6.4 Tbuspp2核心实现机制118 6.4.1 信令、数据独立信道,支持高效可靠信息交换118 6.4.2 两级队列模型,提供功能扩展弹性120 6.4.3 按需路由同步,从容支持大规模集群122 6.4.4 Stateful Group治理,全面支持游戏后台需求123 6.5 总结128 第7章 混合语言程序的混合调用栈火焰图129 7.1 混合语言程序129 7.2 混合调用栈火焰图130 7.2.1 性能热点与火焰图130 7.2.2 原生调用栈获取问题131 7.2.3 脚本调用栈获取问题132 7.2.4 混合调用栈获取问题134 7.2.5 混合调用栈火焰图监控服务135 7.3 目标进程的调试控制137 7.4 快速获取跨进程原生调用栈140 7.4.1 优化Linux平台的原生调用栈获取140 7.4.2 优化Windows平台的原生调用栈获取144 7.4.3 addr2func的查询优化146 7.4.4 Linux平台中UE的堆栈获取148 7.5 安全获取跨进程脚本调用栈150 7.5.1 获取执行环境指针151 7.5.2 模拟调用栈回溯154 7.6 合并脚本调用栈与原生调用栈157 7.7 优化混合调用栈统计数据编码158 7.8 混合调用栈火焰图获取总结162 第8章 出海游戏的LQA工业化163 8.1 LQA工业化背景简介163 8.2 LQA工业化的过程及方法166 8.2.1 LQA工业化的提取阶段168 8.2.2 LQA工业化的翻译阶段170 8.2.3 LQA工业化的合入阶段171 8.2.4 LQA工业化的测试阶段175 8.2.5 LQA工业化的大版本合并阶段179 8.3 总结182 第9章 在TPS类游戏中应用可微渲染进行资源转换与优化183 9.1 在TPS类游戏中应用可微渲染简介183 9.2 背景知识184 9.2.1 什么是可微渲染184 9.2.2 可微渲染的光栅化实现185 9.2.3 可微渲染在游戏和虚拟现实行业中的应用187 9.2.4 TPS类游戏的特点187 9.3 基于可微渲染进行资源转换与优化的一般框架189 9.4 可微渲染器的实现190 9.4.1 可微渲染器基本功能的实现190 9.4.2 游戏方面的修改与扩展194 9.5 材质拟合相关处理196 9.5.1 观察视角相关内容的处理196 9.5.2 材质的处理198 9.5.3 材质转换之后的效果200 9.6 网格的处理202 9.7 总结与展望204 第10章 DirectX Shader Compiler适配UE4移动平台205 10.1 着色器与变体205 10.1.1 移动平台性能评估标准205 10.1.2 DirectX Shader Compiler207 10.2 适配UE208 10.2.1 OpenGL & Vulkan RHI适配208 10.2.2 Metal RHI适配211 第11章 大规模复杂场景下光照烘焙面临的挑战及解决方案219 11.1 光照烘焙的背景与现有解决方案219 11.2 光照烘焙中大规模光源的管理方案221 11.2.1 单个光源的选取222 11.2.2 单个光源的采样227 11.2.3 基于多重重要性采样的样本融合228 11.2.4 方案的收益229 11.3 烘焙中复杂光路下的采样优化230 11.3.1 一种基于GPU实现的空间方向树的自适应路径引导算法230 11.3.2 基于时空蓄水池的路径重采样算法237 11.4 烘焙中的降噪器优化241 11.4.1 基于双边滤波的自研光照贴图降噪器241 11.4.2 结合双边滤波的Optix降噪器优化246 第12章 光照烘焙中基于GPU实现的接缝修复方案247 12.1 光照烘焙及接缝问题简介247 12.2 相关背景知识248 12.2.1 关键术语248 12.2.2 光线追踪249 12.2.3 联合双边滤波249 12.2.4 SVGF250 12.3 工业界现有光照烘焙接缝修复方案251 12.4 实现细节252 12.4.1 Seam Finder Pass252 12.4.2 Seam Filter Pass255 12.5 接缝修复效果对比257 12.6 总结259 第13章 VRS在移动端的集成与实践260 13.1 VRS概述260 13.2 VRS介绍260 13.2.1 VRS的概念261 13.2.2 VRS的原理261 13.2.3 VRS的作用262 13.3 着色率控制方式263 13.3.1 Per-Draw263 13.3.2 Per-Triangle263 13.3.3 Per-Region264 13.4 VRS中Per-Draw的集成265 13.4.1 UE4中的VRS材质266 13.4.2 VRS中的基元组件270 13.4.3 VRS中的渲染硬件接口273 13.5 VRS中Per-Draw的实践276 13.5.1 将VRS用于具有低频细节材质的物体276 13.5.2 将VRS用于快速移动的物体277 13.5.3 将VRS用于近处的物体279 13.6 总结与展望281 第14章 基于帧预测的移动端高帧率性能优化技术282 14.1 解决思路283 14.2 生成预测帧的方法285 14.2.1 使用深度在屏幕空间还原场景网格287 14.2.2 顶点的重投影及走样的修复289 14.2.3 帧预测的实现292 14.3 适配帧预测的管线298 14.3.1 以“渲染帧-预测帧”为一对的渲染管线298 14.3.2 直接在渲染线程插补中间帧的渲染管线300 14.4 适配帧预测管线的负载均衡方案301 14.4.1 管线的渲染负载均衡302 14.4.2 成对渲染管线中Game线程游戏逻辑的跳帧更新及 负载均衡方案304 14.5 优化效果与总结313 第15章 基于UE4的开放世界地形渲染315 15.1 开放世界地形渲染简介315 15.2 方案背景316 15.3 方案设计思路316 15.4 地形着色方式318 15.4.1 Weightmap着色318 15.4.2 MaterialID着色319 15.4.3 Hybrid MaterialID着色319 15.4.4 MaterialID编辑工具320 15.5 地形渲染管线321 15.5.1 UE4中的Landscape渲染流程322 15.5.2 GPU Driven Terrain渲染流程323 15.5.3 CPU端技术细节324 15.5.4 GPU端技术细节326 15.6 效果收益与性能分析332 15.6.1 测试场景332 15.6.2 Metal平台性能数据333 15.6.3 OpenGL ES平台性能数据333 15.7 总结335 第16章 游戏中的极端天气渲染336 16.1 游戏中的天气336 16.2 认识风暴云337 16.3 中央气旋分析与建模338 16.3.1 风暴位置与大小339 16.3.2 风暴眼的形态340 16.3.3 风暴流动与旋转345 16.3.4 风暴眼的垂直结构349 16.3.5 风暴色彩与氛围351 16.4 流体模拟352 16.4.1 流体在数学上的表达353 16.4.2 密度场扩散过程354 16.4.3 体积云的流体模拟356 16.5 体积散射与风暴云光照358 16.5.1 光照方程358 16.5.2 相函数360 16.5.3 风暴云光照362 16.6 闪电与内部光照365 16.6.1 闪电光照拟合365 16.6.2 闪电形态366 16.7 环境交互367 16.7.1 投影368 16.7.2 自定义缓冲368 第17章 移动端贴图压缩优化371 17.1 ZTC纹理压缩371 17.2 移动端常见压
|
|