https://github.com/panxkun/liteviz
liteviz: Lightweight Visualizer for Real-Time 3D Application
https://github.com/panxkun/liteviz
3d-reconstruction 3d-viewer 3d-vision 3d-visualization cpp opengl robotics slam structure-from-motion visualization
Last synced: 1 day ago
JSON representation
liteviz: Lightweight Visualizer for Real-Time 3D Application
- Host: GitHub
- URL: https://github.com/panxkun/liteviz
- Owner: panxkun
- License: mit
- Created: 2025-12-16T04:05:01.000Z (7 months ago)
- Default Branch: master
- Last Pushed: 2026-01-11T03:53:02.000Z (6 months ago)
- Last Synced: 2026-01-11T11:08:17.663Z (6 months ago)
- Topics: 3d-reconstruction, 3d-viewer, 3d-vision, 3d-visualization, cpp, opengl, robotics, slam, structure-from-motion, visualization
- Language: C++
- Homepage:
- Size: 1.54 MB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# liteviz: A Lightweight Visualizer for Real-Time 3D Application
**liteviz** is a lightweight 3D real-time visualization application designed for common 3D vision-related tasks, such as SLAM and 3D real-time reconstruction. It supports visualization of common 3D elements and is both lightweight and extensible, allowing integration into your application with just a few files. Custom shader support provides greater extensibility compared to [Pangolin](https://github.com/stevenlovegrove/Pangolin) and [Open3D](https://github.com/isl-org/Open3D). Compatible with C++ projects and easily wrapped for Python applications.
## Build Instructions
### Prerequisites
C++17 or later
CMake 3.14+
### Build & Running
```bash
# build the examples/cube
git clone https://github.com/panxkun/liteviz.git
cd liteviz
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DBUILD_EXAMPLES=ON && make
./examples/cube/cube-test
```
Then you will see a cube with mouse interaction.
## How to Use in Your Project
Follow the use in `examples/cube/main.cpp` for a quick start. You only need to include the `liteviz` folder in your project. Then
```cpp
#include
using namespace liteviz;
class YourConfig : public LiteVizConfig {
// Your code here
};
class YourRenderer : public LiteVizRenderer {
// Your code here
};
class YourVizApp : public LiteVizApp {
// Your code here
// register your renderers here
bool initResources() override {
std::shared_ptr config = std::make_shared();
std::shared_ptr renderer = std::make_shared(config.get());
this->_registeredRenderers.push_back(renderer);
return true;
}
};
```
Then your can use `YourVizApp` to start your visualization application.
### Related Projects
You can find more usage examples in the following projects:
* [openxrlab/xrslam](https://github.com/openxrlab/xrslam)