terravisor/README.md

2.4 KiB
Raw Blame History

TerraVisor

TerraVisor is a 3D visualization tool designed for rendering and exploring terrain data. It leverages OpenGL for high-performance rendering and provides users with interactive features to manipulate and visualize complex terrain models.

Features

  • Real-Time Rendering: Utilize the power of OpenGL for fast, real-time terrain visualization.
  • Interactive Tools: Rotate, zoom, and pan the terrain model for detailed exploration.
  • Custom Shaders: Supports custom GLSL shaders for advanced rendering effects.

Installation

Prerequisites

Before building TerraVisor, ensure that you have the following prerequisites installed on your system:

  • Git: Used for cloning the repository and managing source code.
  • CMake: Build system generator used to configure the project.
  • Ninja: Fast build system used to compile the project.
  • vcpkg: Package manager for acquiring C++ libraries.

Installation Steps

  1. Clone the Repository:

    First, clone the repository from GitLab

    git clone http://git.jackmchristensen.com/jack/terravisor.git
    cd terravisor
    
  2. Install vcpkg:

    If you havent installed vcpkg yet, follow these steps to set it up:

    git clone https://github.com/microsoft/vcpkg.git
    cd vcpkg
    ./bootstrap-vcpkg.sh   # Use .\bootstrap-vcpkg.bat on Windows
    

    Optionally, integrate vcpkg with your system:

    ./vcpkg integrate install
    
  3. Install Dependencies:
    Use vcpkg to install dependencies:

     ./vcpkg install glm glew glfw3 assimp
    
  4. Configure the Project:

    Navigate back to the project root directory and configure the project using CMake and Ninja. Be sure to specify the vcpkg toolchain file:

    cd ..
    cmake -B build -S . -G Ninja -DCMAKE_TOOLCHAIN_FILE=./vcpkg/scripts/buildsystems/vcpkg.cmake
    
  5. Build the Project:

    Build the project using Ninja:

    cmake --build build
    
  6. Run the Application:

    Once the build process is complete, you can run the TerraVisor application:

    ./build/TerraVisor
    

Acknowledgements

GLEW - OpenGL Extension Wrangler Library
GLFW - OpenGL Framework
GLM - OpenGL Mathematics
ASSIMP - Open Asset Import Library
Dear ImGui

Contact

For questions or support, please reach out to Jack Christensen at contact@jackmchristensen.com