Skip to content

Releases: sr4dev/Unity-SpriteAssist

v1.4.3

25 Jun 10:22

Choose a tag to compare

Unity-SpriteAssist v1.4.3

Bug Fixes

  • Parallel Import: Under Parallel Import, Unity Default mode sprites read the triangulation library from a stale ScriptableSingleton value in import worker processes, so the SpriteRenderer geometry did not match the inspector preview and Mesh Prefab. The triangulation library is now read in a worker-safe way during import, keeping SpriteRenderer, preview, and Mesh Prefab consistent.
  • Importer outline pivot: Sprite Editor custom outline vertices were offset for sprites with a non-center pivot (e.g. bottom pivot). The pivot offset is now applied when converting outline coordinates.

Changes

  • Unity Default modes now always apply SpriteAssist triangulation from the importer outline. The Apply To Unity Default toggle introduced in v1.4.2 has been removed.

Full Changelog: v1.4.2...v1.4.3

v1.4.2

24 Jun 14:50

Choose a tag to compare

Unity-SpriteAssist v1.4.2

New Features

Apply Triangulation Library to Unity Default Modes

  • Added Apply To Unity Default in Project Settings > SpriteAssist > Library
  • Unity Default modes now use SpriteAssist-generated outlines and the selected triangulation library by default
  • Disable Apply To Unity Default if you want Unity Default modes to keep Unity's native sprite geometry
  • Default Transparent and Default Opaque creators now override source sprite geometry when the option is enabled, keeping SpriteRenderer and Mesh Prefab output consistent
  • Existing sprites need a manual reimport (or Reimport All) after changing this option

Documentation

  • Updated README triangulation library notes to document the Unity Default mode behavior

Full Changelog: v1.4.1...v1.4.2

v1.4.1

24 Jun 08:59

Choose a tag to compare

Unity-SpriteAssist v1.4.1

Bug Fixes

Fix NullReferenceException during legacy settings migration

  • Fixed a NullReferenceException thrown on editor load when migrating the legacy Assets/Editor/SpriteAssistSettings.asset (introduced in v1.3.0)
  • Calling AssetDatabase.DeleteAsset directly inside [InitializeOnLoadMethod] triggered Unity's internal RenderPipelineGlobalSettingsAssetProcessor.OnWillDeleteAsset before SettingsWindow.GetCurrentProvider() was initialized, causing the exception
  • The deletion is now deferred via EditorApplication.delayCall so it runs after editor initialization
  • Deletion is wrapped in a try-catch and retried on the next domain reload if it fails, preserving idempotent migration

Full Changelog: v1.4.0...v1.4.1

v1.4.0

24 Jun 07:36
43ca0cd

Choose a tag to compare

Unity-SpriteAssist v1.4.0

New Features

iShape Triangulation Improvements

  • Added Edge Smoothing to the PathSanitizer pipeline for iShape triangulation, producing smoother mesh outlines
  • Improved edge case handling in TriangulatorIShape to prevent degenerate triangulation on complex sprite shapes
  • Added Log Fallback Warning option in Project Settings — logs a warning when the triangulation library falls back to an alternative method

Parallel Import Support (#65)

  • Moved external mesh prefab update logic from OnPostprocessTexture to OnPostprocessAllAssets to correctly support Unity's parallel asset import pipeline
  • Added Parallel Import toggle in Project Settings (SpriteAssistSettings)

Bug Fixes

Fix "No vertex found" error for Dummy Sprites

  • Fixed an error that occurred when processing Dummy Sprites (e.g. cloud(Dummy Sprite)) which have no geometry, causing SpriteUtil to throw a "No vertex found!" exception

Internal Refactoring

These changes do not affect runtime behavior but significantly improve code maintainability.

  • Extracted mesh prefab lifecycle logic from SpriteProcessor into a dedicated MeshPrefabService
  • Split SpritePostProcessor into separate responsibilities: mesh update and asset rename
  • Introduced SingleMeshCreatorBase to consolidate duplicated mesh update code paths
  • Separated sprite geometry operations from mesh prefab update responsibilities
  • Deduplicated SpriteImportData constructors via constructor chaining
  • Added an asset import worker process guard helper in PrefabUtil

Documentation

  • Added iShapeTriangulation library overview and usage details to README

Other Changes

  • Project Unity editor version updated from 2022.3.69f1 to 2022.3.62f3

Full Changelog: v1.3.0...v1.4.0

v1.3.0

23 Jun 06:26

Choose a tag to compare

Unity-SpriteAssist v1.3.0

New Features

New Triangulation Library (#16)

  • Added iShapeTriangulation as an alternative to the existing LibTessDotNet
  • Default library selectable via Project Settings (Default Triangulation Library)
  • New input path preprocessing pipeline: PathSanitizer, SelfIntersectionFinder, ShapeGrouper, TriangulationGeometry
  • Refactored to a strategy pattern via ITriangulator interface (TriangulatorLibTessDotNet, TriangulatorIShape)

Vertex Welding Option (#38)

  • Added Weld Vertices option to improve normal mesh quality by merging adjacent vertices

New Resize Tools (#75)

  • Resize functionality reorganized under Assets/SpriteAssist/Resize/
  • To Multiple of 4: Scale Textures / Expand or Crop Textures
  • To Power of Two: Scale Textures / Expand or Crop Textures

Bug Fixes

Fixed ScriptableSingleton already exists error (#73)

  • Moved settings asset from Assets/ to ProjectSettings/ to prevent duplicate instance import
  • On editor load, automatically migrates legacy Assets/Editor/SpriteAssistSettings.asset to ProjectSettings/ and removes the old asset

Other Changes

  • Minimum Unity version bumped from 2021.3 to 2022.2
  • Added com.unity.collections 2.2.0 dependency (required by iShapeTriangulation)
  • Updated project Unity version from 2022.3.55f1 to 2022.3.69f1

Full Changelog: v1.2.1...v1.3.0

v1.2.1

18 Mar 02:03

Choose a tag to compare

What's Changed

  • Fix/null path issue in assetpostprocessor by @sr4dev in #74

Full Changelog: v1.2.0...v1.2.1

v1.2.0

31 Jan 14:15

Choose a tag to compare

What's Changed

  • Change Settings path from PreferencesFolder to ProjectFolder by @konistehrad in #67
  • Support conditional include / exclude based on globs by @konistehrad in #68

New Contributors

Full Changelog: v1.1.2...v1.2.0

v1.1.2

05 Sep 08:19

Choose a tag to compare

What's Changed

Full Changelog: v1.1.1...v1.1.2

v1.1.1

05 Sep 04:59

Choose a tag to compare

What's Changed

  • Reselect when Outline changed. by @sr4dev in #63

Full Changelog: v1.1.0...v1.1.1

v1.1.0

04 Sep 07:00

Choose a tag to compare