Releases: gltf-rs/gltf
Releases · gltf-rs/gltf
1.0.0
[1.0.0] - 2022-01-29
Added
- Support for the
KHR_materials_specular
extension. - Support for the
KHR_materials_variants
extension. - Support for the
KHR_materials_volume
extension. ExactSizeIterator
implementation forJoints
iterator.
Changed
- The
mesh.primitives
property is now always serialized.
Fixed
- Incorrect implementation of
Normalize<u16>
andNormalize<f32>
foru16
.
Version 0.15.0
2020-01-18
Added
- Support for the
KHR_materials_unlit
extension, which adds anunlit
field
toMaterial
. ExactSizeIterator
implementations for accessor iterators.
Fixed
- Some lifetimes for accessing fields (e.g.
Node::children
) have been relaxed. Accessor::buffer_view
is now optional for the benefit of sparse accessors.
Removed
animation::Interpolation::CatmullRomSpline
Version 0.14.0
2019-10-06
Added
import_slice
function.Clone
andDebug
implementations forMaterial
.accessor::util::SparseIter
andaccessor::util::SparseIndicesIter
which
iterate over items and indices in sparse accessors respectively.
Changed
accessor::util::Iter
is now an enum; sparse accessors are now read correctly.- The original version of
accessor::util::Iter
has been renamed asItemIter
.
Version 0.13.0
2019-07-27
Added
- Support for the
KHR_lights_punctual
extension. gltf-roundtrip
example.
Changed
- Renamed
validate_minimally
asvalidate
. - Removed dependency on
cgmath
.
Fixed
- Incorrect version in README instructions.
- Compiler warnings.
Removed
- Trait function
Validate::validate_completely
and its implementations.
Version 0.12.0
2019-04-21
Added
- New image format variants
B8G8R8
andB8G8R8A8
. - New export example.
Changed
- The crate now builds with Rust 2018 edition.
Extras
are now exposed asRawValue
.Index
now implementsCopy
.- Meshes will no longer report a zero byte stride.
- Updated the following dependendies:
- approx
- base64
- cgmath
- image
- lazy_static
- proc_macro2
- quote
- syn
Fixed
- Removed an unused field in
Accessor
which was a cause of poor performance. - Borrow checker complaint regarding
Glb::from_reader
.
Version 0.11.3
2019-02-21
Added
- New function
gltf_json::Index::new
for export. - Support for the
KHR_materials_pbrSpecularGlossiness
extension. - Extra
Eq
andPartialEq
implementations.
Fixed
Accessor::min
is no longer serialized ifNone
.Extras::_allow_unknown_fields
is no longer serialized.bufferView.byteOffset
is now optional.- Node translation/rotation/scale values are now optional.
- Removed serialization of some default values.
extras::Void
is no longer serialized.
Version 0.11.2
2018-07-08
Fixed
- JSON chunk padding is now padded with spaces (0x20) rather than zeros.
None
is no longer serialized.Vec
is no longer serialized when empty.
Version 0.11.1
2018-06-10
Added
payload
field inGltf
in order to handle binary glTF directly.Error::Io
enum variant.Gltf::from_reader_without_validation
andGltf::from_slice_without_validation
.- All functionality from the
gltf-utils
crate, feature gated with the new
utils
feature. - Most functionality from the
gltf-importer
crate, feature gated with the
newimport
feature. enum Uri
to represent uniform resource locators.
Changed
fn Gltf::from_*
now imports binary glTF as well as standard glTF.fn Gltf::from_reader
now requiresreader
to implementstd::io::Seek
.Buffer::uri
now returnsNone
in the case of binary glTF payload instead
of the magic string"#bin"
.- The
POSITION
attribute is now required by all mesh primitives. - Several renames:
glb
→binary
.Error::Glb
→Error::Binary
.TrsProperty
→Property
.InterpolationAlgorithm
→Interpolation
.Target::path
→Target::property
.Primitive::position_bounds
→Primitive::bounding_box
.
- The
names
feature is now enabled by default, along withutils
and
import
. Rationale: Pareto principle.
Fixed
- Data structures in
gltf_json
now implementSerialize
.
Removed
fn Gltf::from_str
-- usefn Gltf::from_slice
instead.fn Gltf::from_value
-- no longer supported.fn gltf::is_binary
-- useslice.starts_with("glTF")
instead.struct Unvalidated
-- replaced withenum Validation
.crate gltf-importer
-- no longer supported.Node::matrix
-- usetransform().matrix()
instead.Node::rotation
-- usetransform().decomposed()
instead.- All hidden
as_json
functions -- no longer supported.
Version 0.10.1
2018-03-05
Fixed
gltf_utils::AccessorIter::new
is markedpub
again.
Version 0.10.0
2018-03-04
Added
ChannelIterators
.
Changed
- Rework of GLB parser and
AccessorIter
in order to reduceunsafe
code and
to allow loading of binary glTF data on non-little-endian machines. - More descriptive errors in the
gltf
andgltf_importer
crates. Gltf::skip_validation
is no longer markedunsafe
.