目录
前言
第一章 渲染性能的核心概念:为什么需要“合批”
1.1 Draw Call 与 SetPass Call
1.2 渲染状态的切换代价
1.3 带宽与填充率
第二章 传统合批:静态合批与动态合批
2.1 静态合批 (Static Batching)
2.2 动态合批 (Dynamic Batching)
第三章 GPU Instancing:让 GPU 自己“复制”
3.1 原理剖析
3.2 支持的平台与 Shader 要求
3.3 使用场景与限制
3.4 与动态合批的对比及优先级
第四章 SRP 与 SRP Batcher:底层管线革新带来的合批利器
4.1 什么是 SRP(Scriptable Render Pipeline)
4.2 SRP Batcher 的诞生与革命性突破
4.3 兼容条件与调优
第五章 遮挡剔除:不画看不见的东西
5.1 为什么需要遮挡剔除
5.2 Unity 的遮挡剔除系统(Umbra)
5.3 烘焙与运行时设置
5.4 优化技巧与移动端注意事项
第六章 综合对比与实战规划
6.1 技术对比一览
6.2 在 URP/HDRP 下的最佳实践
6.3 常见误区警示
6.4 调试与分析工具
结语
前言
在游戏与实时渲染领域,性能优化始终是开发者必须直面的核心课题。随着项目规模扩大和画面复杂度提升,“流畅运行”不再只是一句口号,而是需要从底层渲染管线就开始精细规划的工程难题。当我们谈论渲染优化时,Draw Call、SetPass Call、带宽、填充率等术语总会反复出现。而在 Unity 生态中,SRP(Scriptable Render Pipeline)、SRP Batcher、GPU Instancing、传统合批以及遮挡剔除构成了现代渲染优化的五大基石。它们不是彼此孤立的秘技,而是一套相互配合、各有侧重的工具箱。
本篇文章将从原理出发,深入剖析这几种技术的底层机制、适用场景和调优方法,力求用权威、专业且满是干货的方式,帮助读者建立起完整的渲染优化知识体系。无论你是在使用内置渲染管线还是 URP/HDRP,都能从本文中找到可以直接落地的优化思路。