在 Unity 6 URP 中,你已经会在 RecordRenderGraph 里声明纹理、添加 Pass,再用 SetRenderFunc 填入绘制逻辑。接下来真正值得理解的是:框架如何利用这些声明,判断哪些工作要执行、临时纹理能活多久,以及两次 GPU 访问之间需要什么同步?
本文从这套熟悉的接口出发,先手工编译一帧,再写出一个最小实现。前半篇不要求读懂编译器数据结构;后半篇才讨论资源覆盖和底层同步。Unity 接口以 Unity 6.0/Core RP 17.0 为边界,通用实现是独立教学模型,不代表 Unity 的内部源码。

