A 4-billion-parameter model turns one image into a PBR asset
TRELLIS.2 takes a reference image and produces a 3D mesh with texture information. Its O-Voxel representation is designed to preserve open surfaces, non-manifold geometry, and enclosed internal structures instead of forcing every object into a closed surface. The output can carry base color, roughness, metallic, and opacity data. That makes the project interesting for clothing, foliage, props, and other assets where topology or material channels matter as much as a pleasing turntable render.
The main example loads the 4B checkpoint, moves the pipeline to CUDA, generates a mesh, renders an MP4 preview, and exports a GLB. The export path includes decimation, remeshing, UV work, and a 4096-pixel texture setting. Transparency is less automatic than the output format suggests: the README says the alpha channel is preserved but disabled in the exported material, so an artist must connect it in the destination 3D application. This is a production step, not cosmetic fine print.
Linux and a 24 GB NVIDIA GPU are the supported floor
Microsoft says the code has been tested only on Linux with NVIDIA A100 and H100 GPUs. The stated memory minimum is 24 GB, and the setup assumes a CUDA Toolkit for compiling native packages. Conda is recommended, Python 3.8 or newer is required, and the default environment pairs PyTorch 2.6.0 with CUDA 12.4. Owners of smaller cards or another accelerator family should stop here unless they are prepared to maintain their own port.
The installation command enables six substantial pieces: FlashAttention, nvdiffrast, nvdiffrec, CuMesh, O-Voxel, and FlexGEMM. GPUs that cannot use FlashAttention need a manually installed xFormers backend and an environment variable. Multiple CUDA installations also require an explicit CUDA_HOME. The README does disclose these conditions, but the single shell command is only the front door to a tightly matched native stack. Open pull requests for Windows, Blackwell, and Apple Silicon show demand beyond that supported lane, not merged support.
What happened when we ran it
Our sandbox installed commit 75fbf01 in 361 seconds. The measured project was the o-voxel subdirectory: installation added 33 packages and used 36 MB on disk, then its build completed in 11 seconds. Pip-audit reported 0 known vulnerabilities in the installed Python packages. Those are useful signs for that compiled component, although they do not tell us whether the full 4B generation pipeline will work on a particular CUDA workstation.
There was no test script or target, so our harness skipped tests. The checkout contained 2,201 files, about 361,656 lines of source, and occupied 38.9 MB before the measured install. We found one CI workflow, no Dockerfile, and no tests directory. Our unprivileged Debian container had 3 CPUs and 8 GB of RAM, with no GPU or secrets, so we did not generate an asset or assess image fidelity. Any claim about output speed or quality would require a separate GPU run.
Training code is present, but the data job is large
The repository includes training entry points for the shape and texture autoencoders plus three flow stages. Data must first be converted into O-Voxel form, with separate locations for source assets, mesh or PBR dumps, voxel data, latent data, renders, and asset statistics. The examples reference Objaverse-XL and distributed options such as node rank, GPU count, checkpoint resumption, retry behavior, and profiling. This is enough structure for a research group to begin an experiment, yet it is far beyond fine-tuning a small image model on a folder of examples.
One open issue asks how long the flow models were trained because the supplied configurations use a maximum of 1,000,000 steps and the reporter could not reproduce released quality after about 100,000. That report does not prove the configurations are wrong. It does show that the README's training commands do not answer every reproducibility question. Budget for dataset preparation, checkpoint management, and an evaluation method before committing expensive GPU time.
Generated geometry still belongs in an inspection queue
Issue 140 reports duplicate inner mesh walls in many generated assets and describes a Blender cleanup script with occasional side effects. Another issue presents third-party geometry results across 101 TRELLIS.2 assets, but those numbers come from the reporter's benchmark rather than our lab, so they should be reproduced on the asset class you care about. The safer buying decision is simple: route every generated mesh through visual and structural checks before rigging, printing, simulation, or a game build.
The absence of a test target matters here because mesh defects can survive a successful import and still create trouble later. Validate manifold expectations, hidden shells, face counts, UVs, material channels, and transparency in the destination application. TRELLIS.2 deliberately supports geometry that is not watertight, which can be useful for garments and leaves but unsuitable for fabrication. A generic pass or fail geometry rule would misunderstand the model; checks need to match the asset's intended use.
July code activity is healthier than the release page
GitHub recorded the last push on July 10, 2026. The repository had 10,865 stars and 147 combined open issues and pull requests when fetched, with discussion and pull-request updates continuing into August. GitHub's latest-release endpoint returned no tagged release. That combination describes active interest around a research repository, not a conventional versioned product with upgrade notes. Pin the commit, checkpoint, CUDA stack, and native dependencies together.
TRELLIS.2 earns a trial when O-Voxel geometry or full PBR output addresses a specific weakness in an existing 3D pipeline. Our 361-second install and successful 11-second component build lower the cost of inspecting the code, while the missing tests and unexercised GPU path keep it out of unattended production. Treat the generated GLB as source material for an artist or validation service, not as a finished asset ready to ship.

