微软发布实时光线追踪技术“DirectX Raytracing(DXR)”!
SEED – Project PICA PICA – 使用 DXR(DirectX Raytracing)的实时光线追踪实验
什么是 DirectX Raytracing?(Google翻译)
在最高级别的 DirectX Raytracing(DXR)中,DirectX 12 API 引入了 4 个新概念。
- 加速结构是由 GPU 以最适合遍历的格式表示完整 3D 环境的对象。该结构以两级层次结构表示,既支持 GPU 进行优化的光线遍历,也支持应用程序对动态对象进行高效修改。
- 新的命令列表方法 DispatchRays 是向场景中追踪光线的起点。这就是游戏实际向 GPU 提交 DXR 工作负载的方式。
- 一组新的 HLSL 着色器类型,包括 ray generation、closest hit、any hit 和 miss shader。这些定义了 DXR 工作负载在计算上实际执行的内容。调用 DispatchRays 时,将执行 ray generation shader。ray generation shader 使用 HLSL 的新 TraceRay 内置函数,让光线追踪到场景中。根据光线在场景中的进入位置,多个 hit 或 miss shader 中的一个可能会在交点处被调用。这样,游戏就可以为每个对象分配自己的一组着色器和纹理,使其成为独特的材质。
- 光线追踪 pipeline state,与今天图形中的 pipeline state object 类似,它封装了与光线追踪工作负载相关的光线追踪着色器和其他状态。
将 PIX 更新到最新版本后,支持光线追踪。
NVidia 已以 NVIDIA RTX 的形式宣布支持。游戏工具 NVIDIA Gameworks 已更新为支持 Direct X 12 Raytracing。
NVIDIA RTX 实时光线追踪技术演示来自 Remedy Entertainment
很期待今后的发展呢~
另外,Unreal Engine 也会支持这个 DXR 和 NVIDIA RTX 哦!后续消息请关注 GDC2018 21 日的会议。
Unreal Engine 4 Supports Microsoft’s DirectX Raytracing and NVIDIA RTX
详情请从下方链接查看
相关链接
Announcing Microsoft DirectX Raytracing! – DirectX Developer Blog