Skip to content

feat: Support ThorVG v1.0#10

Open
BenjaminHalko wants to merge 3 commits intomainfrom
feat/support-thorvg-1.0
Open

feat: Support ThorVG v1.0#10
BenjaminHalko wants to merge 3 commits intomainfrom
feat/support-thorvg-1.0

Conversation

@BenjaminHalko
Copy link
Collaborator

Updates the build tools to support ThorVG v1.0 and above

TvgLib.cs: Clean up formatting, remove unused Unity/System using directives, simplify enum references, and update the native canvas API call from tvg_canvas_push to tvg_canvas_add (adjusted DllImport and call site). Miscellaneous comment/whitespace tidy.

scripts/build-thorvg.py: Make build outputs more robust by setting the working directory, updating the example tag, and changing UNITY_PLUGINS path resolution. Add find_built_library() to auto-discover real (non-symlink) ThorVG artifacts and use it across desktop, iOS, Android and WASM flows instead of hardcoded src paths; improve error messages and copying logic. Also normalize THORVG_DIR construction.
Add using directives for System and UnityEngine to package/Runtime/Sys/TvgLib.cs. These imports enable use of core .NET types and Unity APIs in the file (previously only Runtime.InteropServices was imported).
Copilot AI review requested due to automatic review settings March 6, 2026 20:38
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the Unity ThorVG integration to work with ThorVG v1.0+ by adjusting the native build script outputs and aligning the C# P/Invoke surface with the updated ThorVG C API.

Changes:

  • Update build script paths to be deterministic and auto-detect/copy the built library artifacts across desktop/iOS/Android/WebGL builds.
  • Switch C# interop from tvg_canvas_push to tvg_canvas_add and clean up related enum usage/formatting.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
scripts/build-thorvg.py Ensures builds run from a consistent working directory and copies platform artifacts by auto-discovery (instead of hardcoded filenames/paths).
package/Runtime/Sys/TvgLib.cs Updates the native canvas API binding to tvg_canvas_add (ThorVG v1.0+) and normalizes internal enum references/formatting.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@hermet hermet added infrastructure Dev infrastructure refactoring Code refactoring / Exceptional handles labels Mar 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

infrastructure Dev infrastructure refactoring Code refactoring / Exceptional handles

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants