three-d-asset

crates.io Docs.rs Continuous integration MIT licensed

This is an attempt to do a general crate for loading, saving and editing 3D assets. The idea is that it should be possible to use it as a base for any type of visualization or advanced editing tools, a bit like the image crate, just for 3D assets. Contributions are very much appreciated!

The crate contain a set of common assets that are useful when doing graphics which can be loaded using the io module or constructed manually. When in memory, the assets can be for example be - visualised, for example using the three-d crate or in a CPU ray tracer - imported into a rust-based game engine - edited and saved again

Model

| Format | Deserialize | Serialize | Feature | | ------------ | -------------| ------------- | ------------- | | OBJ/MTL | :whitecheckmark: | :x: | obj | | GLTF/GLB | :whitecheckmark: | :x: | gltf |

Texture2D

| Format | Deserialize | Serialize | Feature | | ------------ | ------------- | ------------- | ------------- | | PNG | :whitecheckmark: | :whitecheckmark: | png | | JPEG | :whitecheckmark: | :whitecheckmark: | jpeg | | HDR | :whitecheckmark: | :x: | hdr | | GIF | :whitecheckmark: | :whitecheckmark: | gif | | TGA | :whitecheckmark: | :whitecheckmark: | tga | | TIFF | :whitecheckmark: | :whitecheckmark: | tiff | | BMP | :whitecheckmark: | :whitecheckmark: | bmp |

PointCloud

| Format | Deserialize | Serialize | Feature | | ------------ | ------------- | ------------- | ------------- | | PCD | :whitecheckmark: | :x: | pcd |

VoxelGrid

| Format | Deserialize | Serialize | Feature | | ------------ | ------------- | ------------- | ------------- | | VOL | :whitecheckmark: | :x: | vol |