Skip to content

Releases: bdunderscore/ndmf

1.6.2

04 Dec 01:34
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 1.6.1...1.6.2

1.6.1

29 Nov 00:40
Compare
Choose a tag to compare

This release does not confirm to semver. Due to unexpected compatibility issues with IExtensionContext.Owner, this
release removes this API. Although this is technically a semver violation, it's better than the accidental violation in
1.6.0.

Note: In 1.7.0 NDMF will add sentinel default methods to all interfaces to ensure that downstream packages are not
using outdated versions of C# to build. The NDMF project will not consider this to be a breaking change after 1.7.0.
Please update your projects to build with modern C# before then.

Fixed

  • [#482] Additional performance improvements

Removed

  • [#483] Removed IExtensionContext.Owner due to compatibility issues.

Full Changelog: 1.6.0...1.6.1

1.6.0

28 Nov 23:45
Compare
Choose a tag to compare

Added

  • [#479] Added IAssetSaver and SerializationScope APIs.
    • NDMF plugins are encouraged to use IAssetSaver.SaveAsset instead of directly accessing AssetContainer. This will
      split saved assets across multiple files, to avoid performance degradation as the number of assets in a container
      grows.
  • [#480] Added IExtensionContext.Owner API. Setting this property will allow errors to be correctly attributed to the
    plugin that contains an extension context.
  • [#472] [#474] Added the DependsOnContext attribute, for declaring dependencies between extension contexts.
  • [#473] Added BuildContext.SetEnableUVDistributionRecalculation to allow opting out from the automatic call to
    Mesh.RecalculateUVDistributionMetrics on generated meshes.
  • [#478] Added ProfilerScope API
  • [#481] Added NDMFPreview.GetOriginalObjectForProxy

Fixed

  • [#479] Unpacking generated asset containers can break inter-asset references

Full Changelog: 1.5.7...1.6.0

1.5.7

17 Nov 23:42
Compare
Choose a tag to compare

What's Changed

  • [#468] Performance improvements
  • [#471] Improve compatibility with VRChat's streaming mipmaps feature
    • NDMF will now call Mesh.RecalculateUVDistributionMetrics on all generated meshes on upload. An API to opt-out will be provided at the next major version release.

Full Changelog: 1.5.6...1.5.7

1.5.6

20 Oct 03:08
Compare
Choose a tag to compare

[1.5.6] - [2024-10-19]

Fixed

  • [#461] Selection outlines in scene view do not work reliably when preview system is active
  • [#459] "Proxy object was destroyed improperly! Resetting pipeline..." error appears frequently
  • [#460] Preview system fails to recover when the primary proxy is destroyed
  • [#462] NDMF console fails to appear when an ExtensionContext throws an exception

Full Changelog: 1.5.5...1.5.6

1.5.5

16 Oct 02:18
b6b55fe
Compare
Choose a tag to compare

[1.5.5] - [2024-10-15]

Fixed

  • [#454] Scene view selection outlines flicker in some cases
  • [#450] Improved performance when a large number of object change events are generated (e.g. when exiting animation
    mode)
  • [#441] Fixed an issue where the preview object pickable status could get out of sync with the original
  • [#444] Fixed an issue where the preview system broke drag-and-drop of materials onto the scene view
  • [#444] Fixed an issue where the preview system broke drag-to-select in the scene view

Changed

  • [#451] Changed preview system to apply to more cameras. Specifically, we now handle all cameras with no render
    texture set, to ensure that Game Mode behaves as expected.

New Contributors

Full Changelog: 1.5.4...1.5.5

1.5.4

06 Oct 00:54
Compare
Choose a tag to compare

What's Changed

Added

  • [#439] Added a menu option to disable NDMF processing on build (Tools -> NDM Framework -> Apply on Build).
    • This setting will survive domain reloads but not editor restarts.

Fixed

  • [#438] Fixed an issue where exceptions would be thrown when scenes are unloaded

Full Changelog: 1.5.3...1.5.4

1.5.3

04 Oct 03:18
Compare
Choose a tag to compare

What's Changed

  • [#435] Fixed an issue where File -> Save As could break due to the internal preview scene becoming selected

Full Changelog: 1.5.2...1.5.3

1.5.2

03 Oct 02:51
Compare
Choose a tag to compare

Fixed

  • [#434] Pass Harmony ID to Harmony.UnpatchAll() to avoid double-unpatching methods
  • [#433] Remove stray debug print

Full Changelog: 1.5.1...1.5.2

1.5.0

29 Sep 22:11
eb33229
Compare
Choose a tag to compare

[1.5.0] - [2024-09-29]

Removed

  • Unity 2019 is no longer supported.

Added

  • [#244] Added a framework that can be used to override the rendering of an object without modifying the object itself
  • [#297] Added UI for turning preview on/off at a plugin or pass level
  • [#244] Added a framework for observing scene object changes and reacting to them.
  • [#244] Added SelfDestructComponent (useful for hidden preview-only components)
  • [#312] Added a default value field to ProvidedParameter
  • [#312] Added support for invalidating ComputeContext to ParameterInfo
  • [#360] Added AsyncProfiler to help profile code running in Tasks
  • [#365] Added debug tool to profile long editor frames
  • [#407] Added ProvidedParameter.ExpandTypeOnConflict to resolve parameter type mismatch automatically (contributed by @nekobako)
  • [#410] Added NDMFSyncContext API
  • [#424] Added tracing system for the preview/invalidation system

Fixed

  • [#260] [ChilloutVR] Fix: Build fails due to CVRAvatar preventing recreation of Animator (contributed by @hai-vr)
  • [#261] [ChilloutVR] feat: don't build the avatar when ChilloutVR shows the upload UI (contributed by @hai-vr)
  • [#280] Console warnings issued whenever .unity (scene) files are saved
  • [#341] Font rendering breaks on scene change
  • [#385] Fix: parameter introspection used default value from child, not parent (contributed by @nekobako)
  • [#386] Workaround VRCSDK bug caused by non-ASCII project paths.
  • [#399] Fix: Parameter introspection did not skip EditorOnly objects
  • [#416] Fixed issues where assets would not properly be tracked due to C# object recreation edge cases
    (removed ObjectIdentityComparer)

Changed

  • [#266] NDMF language defaults to being based on the system language (contributed by @suzuryg)
  • [#408] Unserialized assets will now be serialized after the Transforming phase completes (before e.g. VRCFury runs)