Cargo Features

[dependencies]
bevy_gaussian_splatting = { version = "2.1.0", default-features = false, features = ["debug_gpu", "io_bincode2", "io_flexbuffers", "io_ply", "material_noise", "morph_particles", "noise", "f32", "f16", "precompute_covariance_3d", "packed", "planar", "buffer_storage", "buffer_texture", "query_raycast", "query_select", "query_sparse", "sort_radix", "sort_rayon", "sort_std", "tooling", "perftest", "headless", "viewer", "web", "webgl2", "webgpu", "bevy_mod_picking", "bevy_transform_gizmo"] }

TODO: resolve one-hot feature flags through runtime configuration

default = buffer_storage, f16, io_flexbuffers, io_ply, planar, query_select, sort_rayon, sort_std, tooling, viewer

These default features are set whenever bevy_gaussian_splatting is added without default-features = false somewhere in the dependency tree.

debug_gpu

Affects render::GpuGaussianCloud.debug_gpu

Required by the test_radix binary

io_bincode2 = bincode2, flate2

Affects gcloud::bincode2

io_flexbuffers default headless? web? = flexbuffers

Affects gcloud::flexbuffers

io_ply default headless? = ply-rs

Affects io::ply

Required by the ply_to_gcloud binary

material_noise = noise

Enables noise ^0.8.2

Affects material::noise

morph_particles

Affects morph::particle

noise material_noise?

Affects bevy_gaussian_splatting::noise

f32

Affects cloud::GaussianCloud, spherical_harmonics::SH_VEC4_PLANES, spherical_harmonics::SphericalHarmonicCoefficients, planar::PlanarBuffers, planar::prepare_cloud, planar::get_bind_group_layout, texture::TextureBuffers, texture::get_bind_group_layout, planar::get_bind_group

f16 default headless? web? = half

Affects cloud::GaussianCloud, gaussian::f16, spherical_harmonics::SH_VEC4_PLANES, spherical_harmonics::SphericalHarmonicCoefficients, planar::PlanarBuffers, planar::prepare_cloud, planar::get_bind_group_layout, texture::TextureBuffers, texture::get_bind_group_layout, planar::get_bind_group

precompute_covariance_3d web?

TODO: disable on main binary

Affects cloud::GaussianCloud.covariance_3d_opacity_packed128, cloud::GaussianCloud.covariance_3d

packed

Affects render::GpuGaussianCloud.packed, packed::get_bind_group

planar default headless? web?

Affects planar::get_bind_group, planar::get_bind_group

buffer_storage default headless?

Affects render::GpuGaussianCloud.planar

buffer_texture web?

Affects sort::SortedEntries.texture, sort::GpuSortedEntry.texture

query_raycast

Affects query::raycast

query_select default query_sparse?

Affects query::select

query_sparse = kd-tree, query_select

Affects query::sparse

sort_radix

Affects sort::radix

Required by the test_radix binary

sort_rayon default headless? = rayon

Affects sort::rayon

sort_std default headless? web?

Affects sort::std

tooling default = byte-unit

Required by the ply_to_gcloud binary

perftest
headless = buffer_storage, f16, io_flexbuffers, io_ply, planar, sort_rayon, sort_std
viewer default web? = bevy-inspector-egui, bevy_args, bevy_panorbit_camera, clap

Enables bevy_ui and multi-threaded of bevy

Required by the viewer binary

web = buffer_texture, f16, io_flexbuffers, planar, precompute_covariance_3d, sort_std, viewer, webgl2
webgl2 web?

Enables webgl2 of bevy

bevy:

Enable some limitations to be able to use WebGL2. Please refer to the WebGL2 and WebGPU section of the examples README for more information on how to run Wasm builds with WebGPU.

webgpu

Enables webgpu of bevy

bevy:

Enable support for WebGPU in Wasm. When enabled, this feature will override the webgl2 feature and you won't be able to run Wasm builds with WebGL2, only with WebGPU.

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

bevy_args viewer
bevy-inspector-egui viewer

Enables bevy-inspector-egui ^0.23

bevy_mod_picking implicit feature

Enables bevy_mod_picking ^0.17

bevy_mod_picking:

A modular picking plugin for Bevy

bevy_panorbit_camera viewer

Enables bevy_panorbit_camera ^0.14

bevy_transform_gizmo implicit feature

Enables bevy_transform_gizmo ^0.10

bevy_transform_gizmo:

A 3D transform gizmo for Bevy

bincode2 io_bincode2?
byte-unit tooling
clap viewer
flate2 io_bincode2?
flexbuffers io_flexbuffers
half f16
kd-tree query_sparse?

Enables kd-tree ^0.5

ply-rs io_ply
rayon sort_rayon