Close URP stage planning authority
This commit is contained in:
@@ -97,6 +97,9 @@ Unity 兼容的公开命名、对象所有权和扩展点。
|
||||
built-in forward pipeline policy,而不是作为 URP-declared work 的 backend executor。
|
||||
- 目标所有权模型是:URP 决定渲染什么、何时渲染、哪些 renderer lists/passes/features 激活,以及
|
||||
哪些 stages 存在;native 只执行这些声明,不夹带 built-in pipeline policy。
|
||||
- `CameraFramePlanBuilder` 现在只负责从 request 构造 `CameraFramePlan` 并委托所选
|
||||
`RenderPipelineAsset::ConfigureCameraFramePlan`。它不再在 asset hook 之后追加通用 legacy
|
||||
fullscreen stage heuristic;默认 native fullscreen/final-output 行为应留在 native asset policy 内部。
|
||||
- Hidden fallback 很危险。如果 managed URP stage 声明支持但无法 record,失败必须可见。不要静默用
|
||||
default built-in path 画同一个 stage,然后称之为 URP。
|
||||
- Camera-frame graph dispatch 必须询问所选 pipeline 是否允许 legacy stage fallback。Managed
|
||||
@@ -246,6 +249,9 @@ package。
|
||||
- URP stage planning 以 `ScriptableRenderer` 的 active pass queue 为最终事实源。`ConfigureCameraFramePlan`
|
||||
仍是兼容和高级策略 hook,但它不能单独声明 shadow、depth、post 或 final-output stage;没有被 pass queue
|
||||
覆盖到的 side/fullscreen stage 必须在最终 plan 中清掉。
|
||||
- Native `CameraFramePlanBuilder` 不得在 renderer/pass-queue-derived manifest 应用之后再补
|
||||
fullscreen stage 请求;URP path 中 post/final stage 的存在性必须完全来自 `ScriptableRenderer`
|
||||
active pass queue。
|
||||
- `ConfigurePassQueueCameraFramePlanInstance` 必须在 planning 阶段为当前 renderer 和 `framePlanId`
|
||||
生成一次 per-camera `RendererFramePlan`,冻结 active pass queue 中每个 pass 的当帧状态,并用同一份 plan
|
||||
派生 stage manifest。`SupportsStageRenderGraph`
|
||||
@@ -400,6 +406,9 @@ Scene data 每个 camera frame 提取一次,然后由 pipeline 调整。
|
||||
- URP stage planning 已收口到 renderer active pass queue 派生的 per-`framePlanId` `RendererFramePlan` 和
|
||||
stage manifest。Stage support 和 stage recording 现在消费 planning 阶段保存的同一份冻结 plan,
|
||||
关闭了 feature planning hook、support probe、recording 和各 stage 分别重建 pass queue 的重复事实源。
|
||||
- `CameraFramePlanBuilder` 已移除对 fullscreen stages 的通用尾部自动补齐;selected
|
||||
`RenderPipelineAsset` 现在是 native plan policy 的唯一入口,managed URP path 不再保留第二个
|
||||
fullscreen stage planner。
|
||||
- `ScriptableRenderPass.CreateFramePlanSnapshot` 已接入 `RendererFramePlan` 生成路径。多 camera planning 会冻结
|
||||
每个 camera 当时的 pass 状态,后续 camera 对复用 pass 实例的 `Configure` 不应污染已生成的 frame plan。
|
||||
- URP runtime-state invalidation 已覆盖 asset-level shadow/final-color settings 和 renderer-data-level
|
||||
|
||||
Reference in New Issue
Block a user