Jack Christensen 3f6f19aaf0 | ||
---|---|---|
dependencies/FreeImage | ||
hgt | ||
imgui | ||
include | ||
shaders | ||
source | ||
.gitignore | ||
.gitlab-ci.yml | ||
CHANGELOG.md | ||
CMakeLists.txt | ||
CMakePresets.json | ||
COPYING | ||
README.md | ||
imgui.ini |
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
-
Clone the Repository:
First, clone the repository from GitLab
git clone http://git.jackmchristensen.com/jack/terravisor.git cd terravisor
-
Install Dependencies:
Use
vcpkg
to install dependencies. From the vcpkg directory call:./vcpkg install glm glew glfw3 assimp freeimage
-
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"
- On Linux:
-
Build the Project:
Build the project using Ninja:
cmake --build build
-
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