ThirdParty¶
Overview¶
The ThirdParty folder contains external libraries, plugins, and third-party dependencies used by Snap Studio Pro.
These assets are developed and maintained by external authors and are included to provide functionality that would be impractical or unnecessary to reimplement internally.
Purpose¶
Third-party assets are isolated from Snap Studio Pro's core architecture to:
- Clearly distinguish external code from Snap-owned code.
- Simplify upgrades and dependency management.
- Reduce the risk of accidental modification.
- Make license attribution and auditing easier.
- Improve project navigation and maintainability.
Current Contents¶
uGIF¶
Used to support GIF generation and export workflows within Snap Studio Pro.
This library is maintained separately from Snap Studio Pro and should be treated as an external dependency.
Applied modifications¶
Per the modification policy below, the following deviations from upstream are recorded here.
- Meta GUIDs regenerated. The seven assets inside
uGIF-master/Assets/(theuGIFandScriptsfolders and the five scripts) shipped with the GUIDs from the public uGIF repository. Those GUIDs are identical in every copy of that repository, so any project holding uGIF already — whether the user cloned it themselves or another asset vendored it the same way — collides with ours on import. Unity matches.unitypackageentries by GUID before path and overwrites the existing asset in place, which would replace the user's copy with ours and leave our ownThirdParty/uGIF-masterfolder with an asmdef and no source, breaking every editor assembly that references it. The GUIDs are now Snap-specific. No uGIF source was changed.
Guidelines¶
Appropriate Content¶
Assets placed here should generally be:
- External libraries
- Open-source dependencies
- Third-party plugins
- Vendor-provided integrations
- Runtime or editor dependencies maintained outside the Snap Studio Pro codebase
Avoid¶
Do not place Snap Studio Pro systems, utilities, editor tooling, or runtime features in this folder.
Code developed as part of Snap Studio Pro should remain within the normal Snap architecture.
Modification Policy¶
Where possible, third-party assets should remain unmodified.
If changes are required:
- Document the reason clearly.
- Prefer wrapper or adapter layers where practical.
- Keep modifications isolated and easy to identify.
- Consider future upgrade paths before altering vendor code.
Notes¶
The ThirdParty folder exists to make dependency ownership explicit.
If a file or system originates outside the Snap Studio Pro codebase, it should generally live here rather than being mixed into Snap's core folders.