Skip to content

Releases: Norbyte/lslib

Release v1.20.3

22 Sep 17:42

Choose a tag to compare

Make sure you have .NET 8.0 installed: https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/runtime-desktop-8.0.3-windows-x64-installer

Changes since v1.20.2:

  • GR2: Add morph target support
  • GR2: Normals/UVs are no longer exported for occluders and mesh proxies
  • GR2: Meshes with a single bone binding are now exported as rigid instead of skinned
  • GR2: Fixed 16-bit position data not being serialized correctly
  • GR2: Performance improvement when batch converting GR2 files
  • VT: Fixed loading of DDS textures with DX10 extended headers

Release v1.20.2

05 Sep 16:01

Choose a tag to compare

Make sure you have .NET 8.0 installed: https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/runtime-desktop-8.0.3-windows-x64-installer

Collada deprecation notice

Collada support is being deprecated in Blender (see https://devtalk.blender.org/t/moving-collada-i-o-to-legacy-status/34621 ).
LSLib v1.20 adds support for glTF 2.0, a more modern format which will replace Collada as the primary means to import/export Blender model and animation data.

You need to update to the latest version of the BG3 exporter plugin (https://github.com/Norbyte/dos2de_collada_exporter) to use this functionality.

Changes since v1.20.1:

  • Added support for exporting bone scale (mostly used for attachments)
  • Added animation mirroring support
  • Optimize storage format for GR2 animation data
  • Removed unnecessary skeleton/model data from animation GR2 exports
  • Update to a newer LZ4 library

Release v1.20.1 Beta

16 Aug 19:46

Choose a tag to compare

Release v1.20.1 Beta Pre-release
Pre-release

NOTE: This is a beta version; for the latest stable release, see v1.19.5 below.

Make sure you have .NET 8.0 installed: https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/runtime-desktop-8.0.3-windows-x64-installer

Collada deprecation notice

Collada support is being deprecated in Blender (see https://devtalk.blender.org/t/moving-collada-i-o-to-legacy-status/34621 ).
LSLib v1.20 adds support for glTF 2.0, a more modern format which will replace Collada as the primary means to import/export Blender model and animation data.

You need to update to the latest version of the BG3 exporter plugin (https://github.com/Norbyte/dos2de_collada_exporter) to use this functionality.

Changes since Beta 3:

  • Added support for Osiris v1.15 format (Patch 8 hotfix 33 savegames)
  • Replaced skeleton x-flipping with skeleton mirroring to match what the game does with skeletons
  • Rigid meshes parented to a non-dummy skeleton are now converted into skinned meshes; this reverts a GR2 optimization where meshes with only a single bone binding become rigid on export (a notable example is ears on head models)
  • Fixed bug where bones with no associated vertex weights would not be added to the armature on import
  • Fixed bug where exporting animations to glTF would throw an error

Release v1.20.0 Beta 3

06 May 21:49

Choose a tag to compare

Pre-release

NOTE: This is a beta version; for the latest stable release, see v1.19.5 below.

Make sure you have .NET 8.0 installed: https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/runtime-desktop-8.0.3-windows-x64-installer

Collada deprecation notice

Collada support is being deprecated in Blender (see https://devtalk.blender.org/t/moving-collada-i-o-to-legacy-status/34621 ).
LSLib v1.20 adds support for glTF 2.0, a more modern format which will replace Collada as the primary means to import/export Blender model and animation data.

You need to update to the latest version of the BG3 exporter plugin (https://github.com/Norbyte/dos2de_collada_exporter) to use this functionality.

Changes since Beta 2:

  • Added support for Osiris v1.14 format (Patch 8 savegames)
  • Setting top-level model names is now supported to glTF; this is required to be able to submeshes in resource LSF files
  • Added support for meshes that are attached to the skeleton but are not deformed (eg. horns)
  • OBBs (bounding boxes) are now automatically calculated for skinned bones
  • Fixed bug where the rigid flag was erroneously set on imported meshes
  • Fixed bug where skeleton LOD type was not set correctly
  • Fixed bug where bone weights would move to a different bone after glTF export
  • Fixed erroneous "GLTF files containing multiple skeletons are not supported" message when multiple meshes were bound to the same skeleton
  • Fixed bug where meshes were bound to every bone in the skeleton, not just the ones with vertex influences

Release v1.20.0 Beta 2

06 Apr 12:36

Choose a tag to compare

Pre-release

NOTE: This is a beta version; for the latest stable release, see v1.19.5 below.

Make sure you have .NET 8.0 installed: https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/runtime-desktop-8.0.3-windows-x64-installer

Collada deprecation notice

Collada support is being deprecated in Blender (see https://devtalk.blender.org/t/moving-collada-i-o-to-legacy-status/34621 ).
LSLib v1.20 adds support for glTF 2.0, a more modern format which will replace Collada as the primary means to import/export Blender model and animation data.

You need to update to the latest version of the BG3 exporter plugin (https://github.com/Norbyte/dos2de_collada_exporter) to use this functionality.

Changes:

  • Added support for importing/exporting models, skeletons and animations from glTF 2.0
  • Improved detection of dummy skeletons in non-skinned meshes (a fake skeleton will no longer be exported for GR2 files with multiple meshes inside)
  • Fixed bug where the sum of all bone influences could exceed 1.0 after exporting
  • Fixed bug where exporting a GR2 with non-standard characters in mesh names would crash Blender
  • Fixed bug where exporting a GR2 with duplicate mesh names would crash Blender
  • Fixed GR2 loader not working for unseekable streams
  • Fixed commandline exporter returning status code 0 when incorrect parameters were passed
  • Fixed erroneous "Cannot create directory without absolute path" error on Linux
  • Deprecated exporter options ExportNormals, ExportTangents, ExportUVs, ExportColors, RecalculateNormals, RecalculateTangents, RecalculateIWT, DeduplicateUVs; these were either never used, or partially defunct
  • Updated stats functor definitions with newly discovered parameter names

Release v1.19.5

26 Mar 22:19

Choose a tag to compare

Make sure you have .NET 8.0 installed: https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/runtime-desktop-8.0.3-windows-x64-installer

Changes:

  • Fix issues when loading savegames from ZStd streams
  • Fix incorrect package metadata being written when creating a V15 package
  • Fix LSF serialization not working for LSFv7 without metadata

Release v1.19.4

11 Mar 18:14

Choose a tag to compare

Changes:

  • Add PhysX .bin import/export tool
  • Fix .wem/.bnk files being packed incorrectly in .pak files
  • Add Zstd compression
  • Various code simplifications
  • Fix LSF adjacency data not being encoded properly

Release v1.19.3

18 Jan 19:56

Choose a tag to compare

Release v1.19.3 Pre-release
Pre-release

NOTE: This is a beta version; for the latest stable release, see v1.18.7 below.

Changes:

  • Fix resource leak after a failed package read
  • Fix package padding logic for v7/v9 packages
  • Fix package path canonicalization
  • Fix savegame debug dump not working from compressed streams
  • Fix NRE when a pak could not be fully loaded
  • GR2: Fix QTangent normal reflections being encoded incorrectly
  • VT: Fix stitching logic for partial tiles
  • Validator: Add support for disabling reference validation
  • Validator: Add TreasureTable.txt to parsed stats files
  • Validator: General diagnostic message improvement pass
  • Validator: Fix incorrect stat enumerations path
  • Validator: Fix incorrect line numbers in diagnostic messages

v1.19.2

01 Jan 14:18

Choose a tag to compare

v1.19.2 Pre-release
Pre-release

NOTE: This is a beta version; for the latest stable release, see v1.18.7 below.

Changes:

  • Fixed stream truncation on zero-length inputs when using ZLibStream
  • VT: Added tile deduplication optimization
  • VT: Fixed bug where GTP pages may overflow to next page during build
  • VT: Fixed incorrect page count in pagefile metadata
  • VT: Fixed tile set being grown asymmetrically
  • VT: Fixed incorrect mip count calculation
  • Added various optimizations to package build process
  • Added support for reading BG3-style LSX vectors/matrices

Release v1.19.0

10 Dec 18:21

Choose a tag to compare

Release v1.19.0 Pre-release
Pre-release

NOTE: This is a beta version; for the latest stable release, see v1.18.7 below.

Changes:

  • Added virtual texture generation; for usage instructions see: https://github.com/Norbyte/bg3se/blob/main/Docs/VirtualTextures.md
  • Added stats validator tool
  • Fixed game crash when loading exported GR2 animations (thanks @nicoco007)
  • Fixed inaccurate vertex weights when converting from Collada to GR2 (thanks @nicoco007)
  • Prevent resave of LSX files with old game versions
  • Allow usage of both type ids and names when parsing new LSX Files