Installation
April 30, 2026 · View on GitHub
VidGenSim runs without Docker by using Blender 3.4's bundled CPython 3.10 as the interpreter — bpy (Blender-as-a-Python-module) ships in that interpreter, so headless rendering works without a separate Blender install.
One-shot setup
From the repo root:
bash setup_scripts/setup_kubric_no_docker.sh
This downloads Blender 3.4 into the parent directory of the repo (so it lives next to the source tree, not inside it) and pip-installs the runtime deps into Blender's Python:
kubric/requirements.txtandsrc/requirements.txtbpy==3.4.0wheel- pybullet, OpenEXR, loguru, scikit-image, matplotlib, opencv-python 4.10
When it finishes, it prints the absolute path of the Python interpreter to use. Save that path — every launch script takes it as --python_path:
PYTHON_PATH=../blender-3.4.0-linux-x64/3.4/python/bin/python3.10
Verifying the environment
"$PYTHON_PATH" - <<'PY'
import bpy, numpy, pybullet
print("bpy:", bpy.app.version_string)
print("numpy:", numpy.__version__)
print("pybullet ok")
PY
Smoke test (one video)
bash scripts/launch/ball_drop_v2_parallel.sh \
--python_path "$PYTHON_PATH" \
--num_workers 1 --num_videos 1 \
--output_dir ./output/smoke_test
GPU rendering
Set KUBRIC_USE_GPU=true and ensure NVIDIA drivers + CUDA are available. The launch scripts already export this. The Cycles kernel cache lives at ~/.cache/cycles/kernels — persist it between runs to avoid recompilation. See EFFICIENT_RENDERING.md for further tuning.
Texture / HDRI assets
The scenarios sample ground textures, wood/concrete materials, and HDRI lighting from a SIM_ASSETS_DIR tree (default ./sim_assets). See the asset bundle section of the top-level README for the download URL.