Expand description
§3D Gaussian Splatting Library
…written in Rust using wgpu.
§Overview
This is the backbone of wgpu-3dgs-viewer and wgpu-3dgs-editor.
This library provides helper functions and abstractions for working with 3D Gaussian Splatting, including:
- Loading and parsing PLY files containing 3D Gaussian data.
- Configuring Gaussian structures for loading into GPU buffers.
- Utilities for creating and managing GPU resources related to 3D Gaussian Splatting.
- Compute pipeline abstractions for processing 3D Gaussian data on the GPU.
§Examples
See the examples directory for usage examples.
Re-exports§
Modules§
Structs§
- Compute
Bundle - A bundle of
wgpu::ComputePipeline, itswgpu::BindGroupLayoutand optionallywgpu::BindGroup. - Compute
Bundle Builder - A builder for
ComputeBundle. - Gaussian
- The Gaussian.
- Gaussian
Cov3d Half Config - The half precision covariance 3D configuration of Gaussian.
- Gaussian
Cov3d RotScale Config - The unconverted rotation and scale covariance 3D configuration of Gaussian.
- Gaussian
Cov3d Single Config - The single precision covariance 3D configuration of Gaussian.
- Gaussian
MaxStd Dev - The Gaussian’s maximum standard deviation.
- Gaussian
PodWith ShHalf Cov3d Half Configs - Gaussian
PodWith ShHalf Cov3d RotScale Configs - Gaussian
PodWith ShHalf Cov3d Single Configs - Gaussian
PodWith ShNone Cov3d Half Configs - Gaussian
PodWith ShNone Cov3d RotScale Configs - Gaussian
PodWith ShNone Cov3d Single Configs - Gaussian
PodWith ShNorm8 Cov3d Half Configs - Gaussian
PodWith ShNorm8 Cov3d RotScale Configs - Gaussian
PodWith ShNorm8 Cov3d Single Configs - Gaussian
PodWith ShSingle Cov3d Half Configs - Gaussian
PodWith ShSingle Cov3d RotScale Configs - Gaussian
PodWith ShSingle Cov3d Single Configs - Gaussian
ShDegree - The Gaussian spherical harmonics degrees.
- Gaussian
ShHalf Config - The half precision SH configuration of Gaussian.
- Gaussian
ShNone Config - The none SH configuration of Gaussian.
- Gaussian
ShNorm8 Config - The 8 bit signed normalized SH configuration of Gaussian.
- Gaussian
ShSingle Config - The single precision SH configuration of Gaussian.
- Gaussian
ToSpz Options - Extra options for
Gaussian::to_spz. - Gaussian
Transform Buffer - The Gaussian transform buffer.
- Gaussian
Transform Pod - The POD representation of a Gaussian transformation.
- Gaussians
Buffer - The Gaussians storage buffer.
- Model
Transform Buffer - The model transformation buffer.
- Model
Transform Pod - The POD representation of a model transformation.
- PlyGaussian
Pod - The POD representation of Gaussian in PLY format.
- PlyGaussians
- A collection of Gaussians in PLY format.
- SpzGaussian
- A single SPZ Gaussian.
- SpzGaussian
Ref - Reference to a SPZ Gaussian.
- SpzGaussian
ShDegree - The SPZ Gaussian spherical harmonics degrees.
- SpzGaussians
- A collection of Gaussians in SPZ format.
- SpzGaussians
From Gaussian Slice Options - Options for
SpzGaussians::from_gaussians_with_options. - SpzGaussians
Header - Header of SPZ Gaussians file.
- SpzGaussians
Header Pod - Header of SPZ Gaussians file.
Enums§
- Compute
Bundle Build Error - The error type for
ComputeBundleBuilder::buildfunction. - Compute
Bundle Create Error - The error type for
ComputeBundlecreation. - Download
Buffer Error - The error type for downloading buffer.
- Fixed
Size Buffer Wrapper Error - The error type for
FixedSizeBufferWrapper. - Gaussian
Display Mode - The Gaussian display modes.
- Gaussians
- A unified Gaussian representation.
- Gaussians
Buffer TryFrom Buffer Error - The error type for
GaussiansBuffer’sTryFromimplementation forwgpu::Buffer. - Gaussians
Buffer Update Error - The error type for
GaussiansBufferupdate functions. - Gaussians
Buffer Update Range Error - The error type for
GaussiansBufferupdate range functions. - Gaussians
Iter - Iterator for
Gaussians. - Gaussians
Source - A discriminant representation of
Gaussians. - PlyGaussian
Iter - PLY Gaussian
Resultiterator. - PlyHeader
- Header of PLY file.
- SpzGaussian
Position - A single SPZ Gaussian position field.
- SpzGaussian
Position Iter - Iterator over SPZ Gaussian position references.
- SpzGaussian
Position Ref - Reference to SPZ Gaussian position field.
- SpzGaussian
Rotation - A single SPZ Gaussian rotation field.
- SpzGaussian
Rotation Iter - Iterator over SPZ Gaussian rotation references.
- SpzGaussian
Rotation Ref - Reference to SPZ Gaussian rotation field.
- SpzGaussian
Sh - A single SPZ Gaussian SH coefficients field.
- SpzGaussian
ShIter - Iterator over SPZ Gaussian SH coefficients references.
- SpzGaussian
ShRef - Reference to SPZ Gaussian SH coefficients field.
- SpzGaussians
Collect Error - The error type for collecting SPZ Gaussians.
- SpzGaussians
From Iter Error - The error type for
SpzGaussians::from_iter. - SpzGaussians
Positions - Representation of SPZ Gaussians position s.
- SpzGaussians
Rotations - Representation of SPZ Gaussians rotation s.
- SpzGaussians
Shs - Representation of SPZ Gaussians SH coefficients s.
Traits§
- Buffer
Wrapper - A trait to to enable any wrapper to act like a
wgpu::Buffer. - Fixed
Size Buffer Wrapper - A
BufferWrapperwith a fixed size that can be validated from awgpu::Buffer. - Gaussian
Cov3d Config - The covariance 3D configuration of Gaussian.
- Gaussian
Pod - The Gaussian POD trait.
- Gaussian
ShConfig - The spherical harmonics configuration of Gaussian.
- Iter
Gaussian - A trait of representing an iterable collection of
Gaussian. - Iterator
Gaussian Ext - Trait to extend
IteratorofGaussianto collect intoGaussians. - Read
Iter Gaussian - A trait of representing a
IterGaussianthat can be read from a buffer. - Write
Iter Gaussian - A trait of representing a
IterGaussianthat can be written to a buffer.