Skip to content

josephbk117/AstralRaytracer

Repository files navigation

Astral Raytracer

Astral Raytracer

Astral Raytracer is a C++ ray tracing renderer that provides a simple implementation for understanding basic ray tracing principles.

C++ Version    GCC Version    Clang Version    MSVC Version

CMake on Multiple Platforms

Video Preview

AstralRaytracer.Main.mp4

Project Structure

The project is organized into the following directories:

  • AstralRaytracerLib: Contains the core ray tracing library.
  • AstralRaytracerApp: Houses the main application that utilizes the ray tracing library.
  • AstralRaytracerTests: Includes tests for ensuring the correctness of the ray tracing implementation.
  • external: Holds third-party dependencies used in the project.

Third-Party Libraries

The project utilizes the following third-party libraries:

  • glm: A mathematics library for graphics programming, providing vector and matrix operations.
  • mimalloc: A memory allocator designed for performance and memory isolation.
  • efsw: A cross-platform file system monitoring library used for monitoring changes in the project.
  • tinygltf: A header-only C++11 glTF 2.0 loader.
  • glfw: A multi-platform library for creating windows with OpenGL contexts and managing input.
  • spdlog: A fast C++ logging library.
  • glBinding: A library for accessing OpenGL bindings in a type-safe manner.
  • yamlcpp: A YAML parser and emitter in C++.
  • stduuid: A library for creating, parsing, and manipulating UUIDs.
  • nativefiledialog-extended: A small C library with that portably invokes native file dialogs.
  • esfw: A C++ cross-platform file system watcher and notifier.
  • CLI11: A command line parser for C++11 and beyond.

Building the Project

To build the Astral Raytracer project, follow these steps:

Prerequisites

  • C++ compiler (e.g., g++)
  • CMake

Build Steps

  1. Clone the repository:

    git clone https://github.com/josephbk117/AstralRaytracer.git
    cd AstralRaytracer
  2. Build the project using CMake:

    mkdir build
    cd build
    cmake ..
    make
  3. Run the executable:

    ./AstralRaytracer

Visual Studio CMake Project

Astral Raytracer is designed to be easily opened as a CMake project in Visual Studio, providing a seamless development experience. Follow these steps:

  1. Open Visual Studio.
  2. Select "Open a local folder" and navigate to the cloned Astral Raytracer repository.
  3. Visual Studio will detect the CMakeLists.txt and configure the project.

Now you can build and run the project directly from Visual Studio. It also easily allows WSL2 integration and can run the application on an installed distro of Linux.

Contributing

Contributions are welcome! If you encounter any issues or have improvements, please open an issue or submit a pull request.

License

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

About

A semi-decent cross platform ray tracer

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors