Skip to content

zixingjiang/gsconvert

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gsconvert

gsconvert is a lightweight command-line tool for converting between 3D Gaussian Splats (3DGS) PLY and NVIDIA NuRec USDZ formats.

Why?

Starting with version 5.0, NVIDIA Isaac Sim natively supports 3DGS rendering. However, it does not accept the standard PLY format produced by most 3DGS tools. Instead, it requires NVIDIA’s own NuRec USDZ format, which has the following structure:

example.usdz
├── defaults.usda    # Entry point, reference gauss.usda
├── gauss.usda       # Volume prim with NuRec attributes
└── example.nurec    # Compressed binary data 

To create 3DGS models in NuRec USDZ format, users typically turn to NVIDIA's 3DGRUT, which offers features such as:

  • Training 3DGS models from scratch and exporting them directly to NuRec USDZ.
  • Converting existing PLY files created with other 3DGS tools into the NuRec USDZ format (see this guide).

However, 3DGRUT comes with heavy dependencies including CUDA and PyTorch (and therefore an NVDIA GPU), making it overkill for users who only need simple format conversion.

This is where gsconvert steps in. It provides a lightweight alternative for converting between 3DGS PLY and NuRec USDZ formats. It runs on any standard machine, without requiring CUDA or NVIDIA GPUs.

Dependencies

  • Python>=3.10
  • numpy>=1.21
  • msgpack>=1.0

Installation

First, clone the repository:

git clone https://github.com/zixingjiang/gsconvert.git
cd gsconvert

It's recommended to install the command-line tool into an isolated environemnt using uv. uv will automatically manage all dependencies and you don't need to install them manually.

uv tool install -e .

Alternatively, you can use pipx to install the tool:

pipx install -e .

Uninstall

To uninstall the tool, use:

uv tool uninstall gsconvert

or

pipx uninstall gsconvert

and remove the cloned repository from your disk.

Usage

After installation, you can use the gsconvert command in your terminal.

To convert a PLY file to NuRec USDZ format, simply run:

# Convert example.ply -> example.usdz
gsconvert example.ply

This will produce example.usdz in the same directory.

You can also specify a custom output file using the -o option:

# Convert example.ply -> output.usdz
gsconvert example.ply -o output.usdz

Conversion works the same way in reverse. The tool automatically infers the desired output format from the input file extension. No extra flags are required.

# Convert example.usdz -> example.ply
gsconvert example.usdz

# Convert example.usdz -> output.ply
gsconvert example.usdz -o output.ply

For full usage instructions and available options, run:

gsconvert -h

License

MIT License. See LICENSE for details.

About

A command-line tool for converting between 3DGS PLY and NVIDIA NuRec USDZ formats

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages