Skip to content

A simple basic illumination ray tracer written in C/CUDA. Spheres, cylinders, cones, planes and triangles implemented. Checkered texture and all colors defined with adjustable specular values. Still working on making mirrors work on the GPU.

Notifications You must be signed in to change notification settings

YoelRidgway/CudaAcceleratedRayTracer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CUDA Accelerated Ray Tracer

Overview

The CUDA Accelerated Ray Tracer is a high-performance graphics rendering engine that leverages CUDA to accelerate the ray tracing process. This project features a variety of primitive shapes including spheres, cylinders, cones, planes, and triangles, making it highly versatile for scene composition.

Features

  • Basic Illumination Model: Simple yet powerful lighting with adjustable specular values.
  • Shape Variety: Spheres, cylinders, cones, planes, and triangles are all supported.
  • Texture Support: Checkerboard texturing available for all shapes.
  • Color Customization: Full RGB spectrum support for object and scene coloring.
  • In Progress: Mirror reflection support for enhanced realism.

Tech Stack

  • C/C++
  • CUDA

Installation and Usage

  1. Clone the repository:
    git clone https://github.com/yourusername/CudaAcceleratedRayTracer.git
    
  2. Navigate to the project directory:
    cd CudaAcceleratedRayTracer
    
  3. Compile the project:
    make
    
  4. Run the executable:
    ./raytracer
    

Sample Output Gallery

Image 1 Image 2

Future Plans

  • Implement mirror reflection support on the GPU by converting recursive function into a loop.
  • Add more texture options and material types.

Contributions

Feel free to fork this project, open a pull request, or submit issues to contribute!

License

This project is licensed under the MIT License - see the LICENSE.md file for details.

About

A simple basic illumination ray tracer written in C/CUDA. Spheres, cylinders, cones, planes and triangles implemented. Checkered texture and all colors defined with adjustable specular values. Still working on making mirrors work on the GPU.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published