terravisor/README.md

2.8 KiB

TerraVisor

TerraVisor is a 3D visualization tool designed for rendering and exploring terrain data. It provides users with interactive features to manipulate and visualize complex terrain models from real height data.

Features

  • Real Height Data: Render height data from online services like NASA Earthdata, USGS National Map, or OpenTopography.
  • Real-Time Tessellation: Dynamically tessellate the height data based on terrain slopes and proximity to the camera.
  • Export Tessellated Terrain: Use the tessellated terrain in your own projects by exporting the tessellated mesh.

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.

  • Build System: Needed by CMake to build and configure the project. This can be Ninja, Make, or any other build system you prefer.

  • C++ Compiler: Required for compiling the project. You can use compilers like GCC on Windows or Linux, or MSVC on Windows.

  • vcpkg: Package manager for acquiring C++ libraries.

    • Windows Users: Ensure you have either the Visual Studio Build Tools or Visual Studio with the C++ desktop development installed on your machine.

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 Dependencies:

    Use vcpkg to install dependencies. From the vcpkg directory call:

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

    Navigate back to the project root directory and configure the project using CMake and your build system of choice. For this example, we'll use Ninja:

    cmake -B build -S . -G Ninja --preset release
    

    If necessary, specify VCPKG_ROOT before configuring the project:

    • On Linux:
      export VCPKG_ROOT=/path/to/vcpkg
      
    • On Windows:
      set VCPKG_ROOT=C:/path/to/vcpkg # If in powershell use $Env:VCPKG_ROOT = "C:/path/to/vcpkg"
      
  4. Build the Project:

    Build the project using Ninja:

    cmake --build build
    
  5. 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
FreeImage - Open Source Image Library
Dear ImGui - GUI framework

Contact

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