Skip to content

Releases: atteneder/glTFast

glTFast 6.8.0

09 Sep 08:04
Compare
Choose a tag to compare

Added

  • (Import) Setting to create textures readable. This allows users to access resulting textures from their scripts.
  • (Export) Non-readable meshes can be exported as well now.
  • (Export) Added support for exporting meshes with vertex compression enabled (effectively converting 16-bit float positions/normals/tangents/texture coordinates to 32-bit floats).
  • (Export) Buffer view targets are set properly now.
  • (Import) Support for mesh primitive modes TRIANGLE_STRIP and TRIANGLE_FAN (thanks @Hexer611 for #22)

Fixed

  • (Export) Writing to files on the web via IndexedDB now works (fixes #625)
  • (Export) test results are validated again.
  • (Export) Removed expendable JSON content when exporting unlit materials without color or texture applied.
  • Primitve mode LINE_LOOP works as expected (thanks @Hexer611 for #22).
  • (Test) Fail export test if glTF JSON contains unexpected or misses expected properties.
  • Increased resilience against invalid animation data.
  • Broken link in CONTRIBUTING.md (thanks @Hexer611 for #22).
  • Loading glTFs with unknown texture extensions (e.g. WebP, EXT_texture_webp) now works (fixes #705).

glTFast 6.7.1

21 Aug 10:23
Compare
Choose a tag to compare

Fixed

  • (Export) Cases of corrupt glTFs when not all vertex attributes of a mesh were exported.
  • Alpha blending via baseColorTexture's alpha value is now in correct color space, less opaque and as a result consistent with other glTF viewers (affected URP and built-in render pipeline projects in linear color space; fixes #700).

glTFast 6.7.0

28 Jun 22:37
Compare
Choose a tag to compare

Added

  • (Import) Support for materials variants extension.
  • Serialization support for material extensions IOR, Sheen and Specular.
  • (Import) Ability to load a glTF from a generic Stream (GltfImport.LoadStream; thanks @sandr01d for #10).

Changed

  • (Import) Prefabs imported from glTF assets (at design-time) don't have the glTF logo icon assigned to them anymore. This makes it more consistent with other file types (like FBX; fixes #557).

Deprecated

  • MetaMaterialExport. Always use MaterialExport.GetDefaultMaterialExport to get the correct material export.

Fixed

  • (Export) glTFast shader based materials and textures are exported correctly when using the default render pipeline.
  • Added missing entries to the API documentation.
  • (Export) Base colors are now in correct, linear color space.
  • Alpha mode blend now works as expected in HDRP 11 and newer as well (fixes #699).
  • (Export) Fixed mesh min/max when using Draco compression.

glTFast 6.6.0

25 Jun 12:46
Compare
Choose a tag to compare

Added

  • Serialization/de-serialization (only) support for the KHR_materials_variants extension.

Fixed

  • Compatible with Entities 1.2.0.
  • Black materials when using low standard shader quality with the built-in render pipeline (thanks @Kushulain for #595).
  • (UI) Quantity of report items is not shown in importer inspector anymore. Report items cannot be removed anymore (thanks @krisrok for #630).

glTFast 6.5.0

27 May 10:22
Compare
Choose a tag to compare

Added

  • (Export) Support for exporting glTFast shader based materials. This reduces data loss on import-export round trips considerably.
  • (Export) Support for setting a custom scene origin via transform matrix.
  • Dependency on Unity Collections package.
  • Added Apple Privacy Manifest documentation.
  • Export sample code.
  • XML documentation comments.
  • float4x4.Decompose overload that outputs rotation as type quaternion.

Changed

  • Faster buffer conversion jobs due to batching via IJobParallelForBatch.
  • (Export) Material exporter implementation is chosen based on used shader by default.
  • (Export) Vertex attributes are discarded if they are not used/referenced.
  • (Export) Root level nodes' positions are based on their GameObject's world positions (and not their local position anymore).

Fixed

  • (Export) Discrepancy in color due to export of unused vertex colors.
  • Incorrect copyright text in some SPDX headers.

Deprecated

  • float4x4.Decompose overload that outputs rotation as type float4 (quaternion values).

Removed

  • Soft dependency on deprecated Unity Jobs package.
  • Legacy code for Unity versions older than the minimum required 2020 LTS.

glTFast 6.4.0

22 Apr 15:06
Compare
Choose a tag to compare

Added

  • Tests for all GltfImport.Load overloads.
  • Tests for all import Burst jobs.
  • ICodeLogger.Log for dynamic LogType usage.

Changed

  • Emission sub graph uses shader define SHADEROPTIONS_PRE_EXPOSITION for HDRP usage detection (replacing a custom function node that checked for UNITY_HEADER_HD_INCLUDED).
  • BaseColor sub graph uses built-in shader define UNITY_COLORSPACE_GAMMA for project color space detection (replacing a custom function node).

Fixed

  • Shader sub graphs BaseColor and Emission are now compatible with PolySpatial visionOS.
  • On Apple visionOS, textures are always created readable, so that PolySpatial visionOS is able to convert them.
  • Draco compressed tangents import tangents correctly now.
  • Removed invalid attempt to calculate normals or tangents on point or line meshes.
  • Consistent log message when a glTF extension cannot be supported due to a missing Unity package depenency (e.g. KTX for Unity).
    • All missing extensions are logged (not just the first one).
    • There's now a single message per missing package.
    • Depending on whether that extension is required the message's type is warning or error.
    • Added explicit message when meshoptimizer decompression for Unity is missing.

glTFast 6.3.0

22 Apr 15:03
Compare
Choose a tag to compare

Added

  • Runtime import tests.
  • Runtime export tests.
  • (Export) Added development-time checks for valid JSON string literals.
  • Added Apple Privacy Manifest file to /Plugins directory.

Changed

  • Refactored test scripts folder layout.
  • (Export) Normal maps are exported in PNG format by default.
  • (Export) HDRP area lights are still exported as spot-lights, but their intensity is taken from Light.intensity (still incorrect, but more consistent).
  • Switched from asset-path-based to GUID-based shader loading (in the Editor 2021 and newer) in order to allow for a flexible folder layout without risking breaks/regressions should the layout change in the future.
  • Avoid expensive UnityEngine.Object null check when accessing cached default shaders.

Fixed

  • Exception when required glTF shader is not included.
  • Compiler errors when safe mode (GLTFAST_SAFE scripting define) is enabled.
  • Compiler error with High Definition Render Pipeline version 17 (2023.3)
  • Removed usage of obsolete APIs in High Definition Render Pipeline version 17 (2023.3)
  • (Export) Area light's range value is exported accurately (as shown in the inspector).
  • Various occasions of NullReferenceException when no logger is used/provided.
  • Proper error handling when trying to load unsupported sparse texture coordinates.
  • Ensure that special chars in string values don't lead to invalid JSON.
  • Using invariant culture ToLower/ToUpper variants on all non-language-specific data.
  • Added missing GetHashCode implementation (removes compiler warning).
  • Compiler errors and warnings on newer HDRP versions (16.x/17.x)
  • URP clearcoat shader loading at runtime.
  • HDRP stack-lit shader loading at runtime.

glTFast 6.2.0

29 Jan 15:51
Compare
Choose a tag to compare

Added

  • Deprecated soft-dependency packages are detected and a warning with upgrade instructions is shown in the console.

Changed

Fixed

  • Compiler error when Newtonsoft JSON package was not installed.
  • All Draco vertex attributes are assigned by identifier instead of type. As a result, tangents are now decoded properly instead of recalculated.
  • Compilation error when scripting define GLTFAST_BUILTIN_SHADER_GRAPH is set.
  • GltfImport.IsTextureYFlipped returns correct result for non-KTX textures.

glTFast 6.1.0

29 Jan 15:48
Compare
Choose a tag to compare

Added

  • (Documentation) Explanation and user case for the add-on API
  • GltfImport.IsTextureYFlipped to support non-default texture orientations

Changed

  • Documentation improvements
  • Auto-formatted all markdown, USS, UXML and shader code
  • CI maintenance

Fixed

  • Updated references to KTX for Unity

glTFast 6.0.1

19 Oct 11:21
Compare
Choose a tag to compare

Fixed

  • Compilation error when Animation module is disabled and Newtonsoft JSON package installed.