2024-08-10 19:37:45 -04:00
# 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
2024-08-12 18:29:35 -04:00
Before building TerraVisor, ensure that you have the following prerequisites installed on your system:
2024-08-10 19:37:45 -04:00
2024-08-12 18:29:35 -04:00
- **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.
2024-08-10 19:37:45 -04:00
2024-08-12 18:29:35 -04:00
### Installation Steps
2024-08-10 19:37:45 -04:00
2024-08-12 18:29:35 -04:00
1. **Clone the Repository** :
First, clone the repository from GitLab
```bash
git clone http://git.jackmchristensen.com/jack/terravisor.git
cd terravisor
```
2. **Install vcpkg** :
If you haven’ t installed `vcpkg` yet, follow these steps to set it up:
```bash
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:
```bash
./vcpkg integrate install
```
3. **Install Dependencies** : \
Use `vcpkg` to install dependencies:
```bash
./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:
2024-08-10 19:37:45 -04:00
```bash
2024-08-12 18:29:35 -04:00
cd ..
cmake -B build -S . -G Ninja -DCMAKE_TOOLCHAIN_FILE=./vcpkg/scripts/buildsystems/vcpkg.cmake
2024-08-10 19:37:45 -04:00
```
2024-08-12 18:29:35 -04:00
5. **Build the Project** :
Build the project using Ninja:
2024-08-10 19:37:45 -04:00
```bash
2024-08-12 18:29:35 -04:00
cmake --build build
2024-08-10 19:37:45 -04:00
```
2024-08-12 18:29:35 -04:00
6. **Run the Application** :
2024-08-10 19:37:45 -04:00
2024-08-12 18:29:35 -04:00
Once the build process is complete, you can run the TerraVisor application:
```bash
./build/TerraVisor
2024-08-10 19:37:45 -04:00
```
2024-08-10 19:40:03 -04:00
## Acknowledgements
2024-08-10 19:37:45 -04:00
2024-08-12 18:29:35 -04:00
GLEW - OpenGL Extension Wrangler Library \
GLFW - OpenGL Framework \
GLM - OpenGL Mathematics \
ASSIMP - Open Asset Import Library \
2024-08-12 18:04:25 -04:00
Dear ImGui
2024-08-10 19:37:45 -04:00
2024-08-10 19:40:03 -04:00
## Contact
For questions or support, please reach out to Jack Christensen at < contact @ jackmchristensen . com >