Go to file
Jack Christensen 3f6f19aaf0 Update .gitlab-ci.yml file 2024-08-29 15:32:12 +00:00
dependencies/FreeImage Reorganized FreeImage libraries 2024-08-24 00:27:20 -04:00
hgt Update .gitignore to include /hgt directory for testing purposes 2024-08-19 10:19:55 -04:00
imgui Resize font and add JetBrainsMono 2024-08-28 21:07:15 -04:00
include Resize font and add JetBrainsMono 2024-08-28 21:07:15 -04:00
shaders Merge branches 2024-08-28 23:12:18 -04:00
source Merge branches 2024-08-28 23:12:18 -04:00
.gitignore Reorganized FreeImage libraries 2024-08-24 00:27:20 -04:00
.gitlab-ci.yml Update .gitlab-ci.yml file 2024-08-29 15:32:12 +00:00
CHANGELOG.md Updated to v0.0.4 2024-08-28 23:14:36 -04:00
CMakeLists.txt Updated to v0.0.4 2024-08-28 23:14:36 -04:00
CMakePresets.json Update CMakePresets.json 2024-08-23 22:51:01 +00:00
COPYING Update COPYING 2024-08-26 00:06:04 +00:00
README.md Update README.md 2024-08-26 00:06:48 +00:00
imgui.ini Merge branches 2024-08-28 23:12:18 -04:00

README.md

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