Skip to content

fenghuayumo/DIVSHOT

Repository files navigation

DIVSHOT

Introduction

A lightweight radiance field renderer and training platform client that supports flexible editing tools for editing and cropping trained Gaussian splats for export, as well as rendering them to images or videos.

It originated from a 2023 paper gaussian-splatting. Initially, it was created for learning purposes to implement this paper in C++, aiming to build a real-time visualization training tool similar to instantngp. After the emergence of SuperSplat, I was inspired to expand its functionality. After 2 years of spare time development, it has now become a comprehensive and practical tool.

Screenshots

DIVSHOT DIVSHOT DIVSHOT

User Guide

Video Examples

Note: Please ensure you update to the latest graphics card driver, otherwise there may be some issues.

Explanation: The current program consists of 2 parts: the training part and the rendering/editing part. These two parts are relatively independent and decoupled. Currently, the open-source code includes the rendering and editing part, which is written using Vulkan and C++, meaning it can be compiled and run on multiple platforms. The training part is implemented using libtorch C++ and CUDA, which requires running on NVIDIA graphics cards. Although CUDA can be run on AMD graphics cards through the AMD HIP technology framework, this requires additional development time and will be completed in the future.

Operating systems:

  • Windows
  • Mac (Will be in future)
  • Linux (Will be in future)

Note: Currently refactoring a new framework to support multi-platform training, planned to be named RadField Studio. It will become a professional scanning tool for CG workflows. Stay tuned!

Project structure

Directory Details
/diverse the core rendering lib including render lib an other useful function
/application/editor the editor exe, main program
/application/diverseshot-cli gsplat training console exe
/external external lib

Building and running

git clone https://github.com/fenghuayumo/DIVSHOT.git
git submodule update --init --recursive

Build

Windows

you should install compile build tools and package firstly

  1. VS2022
  2. Cuda SDK
  3. Vulkan SDK
  4. CMake

Then, Running Scripts/GenerateVS.bat to generate a visual studio project, you can select divshot as startup project. You must select "Release" or "Production" option to compile, as several libraries do not currently have debug version builds provided. Selecting the Debug option will result in compilation errors.

Credits

About

3d gaussian splat client training platform

Resources

License

Stars

Watchers

Forks

Packages

No packages published