threestudio is a unified framework for 3D content creation from text prompts, single images, and few-shot images, by lifting 2D text-to-image generation models.
👆 Results obtained from methods implemented by threestudio 👆
| ProlificDreamer | DreamFusion | Magic3D | SJC | Latent-NeRF | Fantasia3D | TextMesh |
| Zero-1-to-3 | Magic123 | HiFA |
| InstructNeRF2NeRF | Control4D |
Did not find what you want? Checkout threestudio-extension or submit a feature request here!
| Animate-124 | 4D-fy | GeoDream | DreamCraft3D | Dreamwaltz | 3DFuse | Progressive3D | GaussianDreamer | Gaussian Splatting | MVDream | Mesh-Fitting |
News
- 12/03/2024: Thank Matthew Kwak and Inès Hyeonsu Kim for implementation of 3DFuse! Follow the instructions on its website to give it a try.
- 08/03/2024: Thank Xinhua Cheng for implementation of GaussianDreamer! Follow the instructions on its website to give it a try.
- 01/03/2024: Thank Xinhua Cheng for implementation of Progressive3D! Follow the instructions on its website to give it a try.
- 09/01/2024: Thank Zehuan Huang for implementation of 3D human avatar generation Dreamwaltz! Follow the instructions on its website to give it a try.
- 06/01/2024: Thank Baorui Ma for implementation of GeoGream extensions! Follow the instructions on its website to give it a try.
- 05/01/2024: Implemented HiFA. Follow the instructions here to try all three variants.
- 23/12/2023: Thank Yuyang Zhao for implementation of image-to-4D generation extensions Animate-124! Follow the instructions on the extensions website to give it a try.
- 18/12/2023: Implementation of 4D-fy for 4D generation and DreamCraft3D for high-quality image-to-3D generation as the custom extensions! Follow the instructions on the extensions website to give it a try.
- 13/12/2023: Implementation supporting Stable Zero123 for 3D generation from a single image! Follow the instructions here to give it a try.
- 30/11/2023: Implementation of MVDream, Gaussian Splatting as the custom extensions. You can also use neural representation to fit a mesh by Mesh-Fitting.
- 30/11/2023: Implementation of custom extension system and you can add your extensions in this project.
- 25/06/2023: Implementation of Magic123! Follow the instructions here to give it a try.
- 06/07/2023: Join our Discord server for lively discussions!
- 03/07/2023: Try text-to-3D online in HuggingFace Spaces or using our self-hosted service (GPU support from Tencent). To host the web interface locally, see here.
- 20/06/2023: Implementations of Instruct-NeRF2NeRF and Control4D for high-fidelity 3D editing! Follow the instructions for Control4D and Instruct-NeRF2NeRF to give it a try.
- 14/06/2023: Implementation of TextMesh! Follow the instructions here to give it a try.
- 14/06/2023: Implementation of prompt debiasing and Perp-Neg! Follow the instructions here to give it a try.
- 29/05/2023: An experimental implementation of using Zero-1-to-3 for 3D generation from a single image! Follow the instructions here to give it a try.
- 26/05/2023: Implementation of ProlificDreamer! Follow the instructions here to give it a try.
- 14/05/2023: You can experiment with the SDS loss on 2D images using our 2dplayground.
- 13/05/2023: You can now try threestudio on Google Colab!
- 11/05/2023: We now support exporting textured meshes! See here for instructions.
Installation
See installation.md for additional information, including installation via Docker.
The following steps have been tested on Ubuntu20.04.
- You must have an NVIDIA graphics card with at least 6GB VRAM and have CUDA installed.
- Install
Python >= 3.8
. - (Optional, Recommended) Create a virtual environment:
python3 -m virtualenv venv
. venv/bin/activate
# Newer pip versions, e.g. pip-23.x, can be much faster than old versions, e.g. pip-20.x.
# For instance, it caches the wheels of git packages to avoid unnecessarily rebuilding them later.
python3 -m pip install --upgrade pip
- Install
PyTorch >= 1.12
. We have tested ontorch1.12.1+cu113
andtorch2.0.0+cu118
, but other versions should also work fine.
# torch1.12.1+cu113
pip install torch==1.12.1+cu113 torchvision==0.13.1+cu113 --extra-index-url https://download.pytorch.org/whl/cu113
# or torch2.0.0+cu118
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu118
- (Optional, Recommended) Install ninja to speed up the compilation of CUDA extensions:
pip install ninja
- Install dependencies:
pip install -r requirements.txt
-
(Optional)
tiny-cuda-nn
installation might require downgrading pip to 23.0.1 -
(Optional, Recommended) The best-performing models in