#3d #gamedev #asset #loading

three-d-asset

Load/save functionality for 3d applications

7 unstable releases (3 breaking)

Uses new Rust 2021

0.4.0 Nov 2, 2022
0.3.0 Jul 7, 2022
0.2.2 Jun 29, 2022
0.1.1 Jun 30, 2022
0.1.0 May 29, 2022

#315 in Game dev

Download history 1484/week @ 2022-08-13 2039/week @ 2022-08-20 389/week @ 2022-08-27 305/week @ 2022-09-03 422/week @ 2022-09-10 325/week @ 2022-09-17 297/week @ 2022-09-24 564/week @ 2022-10-01 498/week @ 2022-10-08 395/week @ 2022-10-15 430/week @ 2022-10-22 598/week @ 2022-10-29 599/week @ 2022-11-05 349/week @ 2022-11-12 319/week @ 2022-11-19 313/week @ 2022-11-26

1,705 downloads per month
Used in 4 crates (2 directly)

MIT license

150KB
3K SLoC

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 obj 
GLTF/GLB gltf 

Texture2D

Format Deserialize Serialize Feature
PNG png
JPEG  jpeg
HDR hdr
GIF gif
TGA tga
TIFF tiff
BMP bmp

PointCloud

Format Deserialize Serialize Feature
PCD pcd

VoxelGrid

Format Deserialize Serialize Feature
VOL vol

Dependencies

~1–12MB
~217K SLoC