3D Gaussian Splatting based simulator with DDS and CARLA integration.
- Python 3.10+
- CUDA 12.4
- uv
- (Docker builds) Docker with BuildKit and NVIDIA Container Toolkit
# Core only (headless)
uv sync
# With GUI viewer
uv sync --extra gui
# With DDS support
uv sync --extra dds
# With CARLA support (includes DDS)
uv sync --extra carla
# All optional dependencies
uv sync --extra allCARLA extra requires system libraries for lanelet2. On Ubuntu 22.04:
sudo apt-get install -y \ libboost-dev libboost-serialization-dev libboost-filesystem-dev \ libboost-program-options-dev libboost-python-dev libboost-system-dev \ libeigen3-dev libpugixml-dev libgeographic-dev librange-v3-dev python3-dev
The Dockerfile uses a multi-stage build with the dds extra to keep the image minimal.
# Build
docker buildx build \
-f docker/Dockerfile \
-t splatsim .
# Run (requires NVIDIA Container Toolkit)
docker run --rm -it --gpus all splatsimTo customize CUDA or Ubuntu versions:
docker buildx build \
-f docker/Dockerfile \
--build-arg CUDA_VERSION=12.4.1 \
--build-arg UBUNTU_VERSION=22.04 \
-t splatsim .# Launch the viewer
splatsim-viewer
# Run a scenario
spawn-scenariouv sync --dev
pre-commit install