NVIDIAGameWorks / NVIDIAGameWorks/kaolin
Ray Generation
@orperel is already working on this.
Since Feb 27, 2025.
- Dominant language
- Python
- Stars
- 5.2k
- Forks
- 629
- Avg merge
- 53m
- Merged PRs (30d)
- 2
Description
Right now, no function exists inside Kaolin for ray generation, which is an essential part to support raytracing. Ray generation is a function which takes in camera parameters (where camera means both physically realizeable ones as well as non-physical ones like cubemaps) as input and generates a tensor of ray origins and ray directions. Simple projections like perspective projection are easy to implement (example: https://github.com/nv-tlabs/nglod/blob/6cb8d10cc4b44f709f855dc98fa8e6e58ba7c1fd/sdf-net/lib/geoutils.py#L180), but we want something that also supports things like fisheye lenses as well as jittering for MSAA.
Our current plan is to implement the shaders provided in Ray Tracing Gems II: https://www.realtimerendering.com/raytracinggems/rtg2/index.html but in CUDA, which supports most features we need. The license for the code snippet within the book is public domain (confirmed with the authors), however we should leave acknowledgements in the comments and documentation regardless.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.