OptiX资料学习笔记1——简介
OptiX引擎的现状
目前有三种开源的API支持NVIDIA的光线追踪功能,分别为:
- DirectX Raytracing (DXR) DX的光线追踪API
- Vulkan (VK_NV_ray_tracing extension) Vulkan的光线追踪拓展API
- NVIDIA OptiX 最后的便是NVIDIA的OptiX引擎的API
NVIDIA OptiX支持NVIDIA的CUDA技术,来实现光线追踪功能。
OptiX引擎7.0.0
- NVIDIA OptiX 7 API在抽象级别和功能方面类似于DXR。但是,NVIDIA OptiX 7增加了对运动模糊和多级变换的支持,这些功能都是以生产级渲染/高质量的渲染为目标的光线追踪应用所需要的。
- NVIDIA OptiX 7包含用于构建加速结构和编译执行光线跟踪操作的程序网络的功能。它采用了与DXR,Vulkan和最新版本的NVIDIA OptiX相同的编程模型,包括射线相交,Any Hit和Closest Hit等。现在几乎所有的光线追踪框架都脱离了传统的fragment shader、vertex shader这种与GPU的交互模式。
- NVIDIA OptiX 7 API以NVIDIA的CUDA为核心,API的设计的原则为
无状态
(我的理解是在使用optix的api时,需要将需要到的各种数据及各种一并传递到引擎中去,不知道这样理解对不对,如果不对还请大家提出),多线程
(CUDA就是用来多线程并行计算加速