简介
本项目是一个基于 Optix 7.3 的 GPU 光线追踪渲染框架,在保障了一定的可拓展性的同时,利用 NVIDIA 光线追踪技术提高了渲染的效率。
本页面仅为 v0.2 版本的介绍,旧版本介绍见此页面
渲染样例
更新日志
架构更新
- 修复了部分内存和显存的管理问题
- 使用智能指针代替裸指针
- 更改了
derived instances
储存的位置,现在由各个类管理它们各自的instances
和derived classes
- 使用
Spectrum
类替代float4
储存 radiance ,在之后可以使用更广的光谱渲染结果 - 增加了 instancing 机制,您现在可以复用同一模型,描述文件的语法也因此发生了改变
- 配合 instancing 机制更改了渲染流程,现在
Hit Program
由单独的Integrator
类管理,原来的Mesh
则抽象出从一个HitData
生成SurfaceData
的接口,转移到Direct Callable
中
内容更新
- 修复了数个渲染问题
- 将部分材质的常数参数接口改为贴图接口
- 增加了玻璃材质,使用非导体的菲涅尔函数计算反射与折射
附录
新的场景结构与渲染流程
注:其中的 MatrixMotionTransform 暂时还没有实现,目前可以通过指定 instance 的 transform 来实现不同 instance 的分离