Releases: bdunderscore/ndmf
1.6.2
What's Changed
- perf: avoid loading assets unnecessarily from ChangeNotifier by @bdunderscore in #487
- feat: Add Simplified Chinese support by @flower-elf in #486
New Contributors
- @flower-elf made their first contribution in #486
Full Changelog: 1.6.1...1.6.2
1.6.1
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
Added
- [#479] Added
IAssetSaver
andSerializationScope
APIs.- NDMF plugins are encouraged to use
IAssetSaver.SaveAsset
instead of directly accessingAssetContainer
. This will
split saved assets across multiple files, to avoid performance degradation as the number of assets in a container
grows.
- NDMF plugins are encouraged to use
- [#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
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.
- NDMF will now call
Full Changelog: 1.5.6...1.5.7
1.5.6
[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
[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
- @Rerigferl made their first contribution in #441
Full Changelog: 1.5.4...1.5.5
1.5.4
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
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
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
[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)