55 lines
1.3 KiB
Markdown
55 lines
1.3 KiB
Markdown
|
|
---
|
|||
|
|
title: 光线追踪与PSO
|
|||
|
|
date: 2026-05-03 00:00:00
|
|||
|
|
excerpt: RT 反射小幅修改和 PSO 部分编译标记
|
|||
|
|
tags:
|
|||
|
|
- ARC
|
|||
|
|
- Rendering
|
|||
|
|
- RayTracing
|
|||
|
|
rating: ⭐
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# 光线追踪与 PSO
|
|||
|
|
|
|||
|
|
返回 [[Rendering]]
|
|||
|
|
|
|||
|
|
## 概述
|
|||
|
|
|
|||
|
|
ARC 引擎在光线追踪和 PSO(Pipeline State Object)方面的修改较少,主要是格式修复和编译优化标记。
|
|||
|
|
|
|||
|
|
## Ray Tracing
|
|||
|
|
|
|||
|
|
### RayTracingDeferredReflections.usf
|
|||
|
|
|
|||
|
|
仅缩进格式修复(去掉一级缩进),无功能性变更。
|
|||
|
|
|
|||
|
|
## PSO 改进
|
|||
|
|
|
|||
|
|
### 部分编译标记
|
|||
|
|
|
|||
|
|
在 RHI 层新增 `bPartial` 标记用于 Ray Tracing Pipeline 的异步编译:
|
|||
|
|
|
|||
|
|
```cpp
|
|||
|
|
// RHI module
|
|||
|
|
struct FRayTracingPipelineStateInitializer
|
|||
|
|
{
|
|||
|
|
bool bPartial; // 允许部分编译(不等待所有 Shader 就绪)
|
|||
|
|
FRayTracingPipelineState* BasePipeline; // 基础 PSO,用于派生
|
|||
|
|
};
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### SetGraphicsPipelineState 扩展
|
|||
|
|
|
|||
|
|
新增 `bApplyAdditionalState` 参数,控制是否在设置管线状态时应用额外的平台特化状态。
|
|||
|
|
|
|||
|
|
## 关联文档
|
|||
|
|
|
|||
|
|
- [[D3D12RHI]] — D3D12 层面的 PSO 异步创建改进
|
|||
|
|
|
|||
|
|
## 修改文件列表
|
|||
|
|
|
|||
|
|
| 文件 | 修改类型 |
|
|||
|
|
|------|---------|
|
|||
|
|
| `Shaders/Private/RayTracing/RayTracingDeferredReflections.usf` | 格式修复 |
|
|||
|
|
| `Source/Runtime/RHI/` | `bPartial`、`bApplyAdditionalState` |
|