Video:
The top, bottom, front and back walls are all reflective
traceDepth = 10
GPU:
NVIDIA GeForce GTX 560M
Link to repository:
https://github.com/aparajithsairam/Project1-Raytracer
Functions Implemented:
Features Implemented:
The top, bottom, front and back walls are all reflective
traceDepth = 10
GPU:
NVIDIA GeForce GTX 560M
Link to repository:
https://github.com/aparajithsairam/Project1-Raytracer
Functions Implemented:
- cudaRaytraceCore() handles kernel launches and memory management;
- raycastFromCameraKernel() is a function handling camera raycasting;
- raytraceRay() is the core raytracing CUDA kernel;
- boxIntersectionTest(), which takes in a box and a ray and performs an intersection test;
- getRandomPointOnSphere(), which takes in a sphere and returns a random point on the surface of the sphere with an even probability distribution;
- getRandomDirectionInSphere(), which generates a random direction in a sphere with a uniform probability;
Features Implemented:
- Raycasting from a camera into a scene through a pixel grid
- Phong lighting for one point light source
- Diffuse lambertian surfaces
- Raytraced shadows
- Cube intersection testing
- Sphere surface point sampling
- Reflection
- Interactive camera