Skip to content

Releases: gltf-rs/gltf

1.0.0

09 Feb 09:27
f2ac783
Compare
Choose a tag to compare

[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 for Joints iterator.

Changed

  • The mesh.primitives property is now always serialized.

Fixed

  • Incorrect implementation of Normalize<u16> and Normalize<f32> for u16.

Version 0.15.0

18 Jan 11:15
0a2777d
Compare
Choose a tag to compare

2020-01-18

Added

  • Support for the KHR_materials_unlit extension, which adds an unlit field
    to Material.
  • 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

06 Oct 09:36
7e1fbd4
Compare
Choose a tag to compare

2019-10-06

Added

  • import_slice function.
  • Clone and Debug implementations for Material.
  • accessor::util::SparseIter and accessor::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 as ItemIter.

Version 0.13.0

27 Jul 21:59
d3cb010
Compare
Choose a tag to compare

2019-07-27

Added

  • Support for the KHR_lights_punctual extension.
  • gltf-roundtrip example.

Changed

  • Renamed validate_minimally as validate.
  • 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

27 Jul 20:59
Compare
Choose a tag to compare

2019-04-21

Added

  • New image format variants B8G8R8 and B8G8R8A8.
  • New export example.

Changed

  • The crate now builds with Rust 2018 edition.
  • Extras are now exposed as RawValue.
  • Index now implements Copy.
  • 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

27 Jul 20:59
5d9ac9e
Compare
Choose a tag to compare

2019-02-21

Added

  • New function gltf_json::Index::new for export.
  • Support for the KHR_materials_pbrSpecularGlossiness extension.
  • Extra Eq and PartialEq implementations.

Fixed

  • Accessor::min is no longer serialized if None.
  • 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

27 Jul 20:59
Compare
Choose a tag to compare

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

27 Jul 20:58
810753a
Compare
Choose a tag to compare

2018-06-10

Added

  • payload field in Gltf in order to handle binary glTF directly.
  • Error::Io enum variant.
  • Gltf::from_reader_without_validation and Gltf::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
    new import 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 requires reader to implement std::io::Seek.
  • Buffer::uri now returns None 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:
    • glbbinary.
    • Error::GlbError::Binary.
    • TrsPropertyProperty.
    • InterpolationAlgorithmInterpolation.
    • Target::pathTarget::property.
    • Primitive::position_boundsPrimitive::bounding_box.
  • The names feature is now enabled by default, along with utils and
    import. Rationale: Pareto principle.

Fixed

  • Data structures in gltf_json now implement Serialize.

Removed

  • fn Gltf::from_str -- use fn Gltf::from_slice instead.
  • fn Gltf::from_value -- no longer supported.
  • fn gltf::is_binary -- use slice.starts_with("glTF") instead.
  • struct Unvalidated -- replaced with enum Validation.
  • crate gltf-importer -- no longer supported.
  • Node::matrix -- use transform().matrix() instead.
  • Node::rotation -- use transform().decomposed() instead.
  • All hidden as_json functions -- no longer supported.

Version 0.10.1

27 Jul 20:57
Compare
Choose a tag to compare

2018-03-05

Fixed

  • gltf_utils::AccessorIter::new is marked pub again.

Version 0.10.0

27 Jul 20:57
16949b0
Compare
Choose a tag to compare

2018-03-04

Added

  • ChannelIterators.

Changed

  • Rework of GLB parser and AccessorIter in order to reduce unsafe code and
    to allow loading of binary glTF data on non-little-endian machines.
  • More descriptive errors in the gltf and gltf_importer crates.
  • Gltf::skip_validation is no longer marked unsafe.