 SRP Batcher GPU Instancing Dynamic Batch)
一个 Renderer 同时满足多种批处理条件时URP 最终按以下顺序决定怎么画。SRP Batcher Static Batching GPU Instancing Dynamic BatchingStatic BatchEditor同时带Mesh Filter和Mesh Renderer组件的gameObject提前勾选好Static选项。内存会变大需要评估其影响。Runtime Static Batch有些情况下无法做到提前勾选renderer obj的Static选项。比如动态拼接的场景一旦勾选Static模型合并之后将无法修改其Position/Rotation值。那么就需要用到StaticBatchingUtilityApi在运行时进行处理了。SRP BatcherURP管线自动进行的。在Static Batch剩下的 Draw Call 之间进行合并提交操作减少 Shader / Material 状态切换和 CPU 提交成本。GPU Instancing重复对象不适合用Static Batch比如树草等。Static Batch将每棵树每颗草都会复制一份而GPU Instancing相同的树或者草模型只需提交一份数据不需额外复制模型。所以场景中Static对象和Instancing对象需要规划不同的Root来区分存放。另外Instancing需要在Shader层面进行支持。PSDynamic BatchDynamic Batch合批条件比较苛刻。在支持URP的管线下可以不予讨论。