Perfect Foundation


KEY FEATURES ... - Event bus — in-memory, thread-safe publish/subscribe. ... ADVANTAGES - Clean and lightweight. - Stable and reliable. - Well documented.


by Perfect Core


Price History +

Perfect Foundation is a clean and lightweight set of building blocks for Unity projects, and the shared base of the Perfect Core packages. No setup and no hard-coded paths: import it and use what you need.


KEY FEATURES

- Type Selector — [TypeSelector] turns any [SerializeReference] field into a searchable dropdown of every concrete type derived from the field's type. [TypeSelectorName] sets a custom label.

- Data assets — DataAsset is a ScriptableObject with a stable, human-readable ID in "folder:name" form, generated automatically and rebuildable with one click. Save IDs instead of values: saves stay small and keep working when configs change.

- [Optional] Newtonsoft.Json integration — JsonDataSerializer and a DataAsset converter, compiled only when com.unity.nuget.newtonsoft-json is installed.

- Database<T> and ConfigService — look up data assets by ID, with duplicate-ID reporting and type checks.

- Event bus — in-memory, thread-safe publish/subscribe. Subscribing, unsubscribing and nested publishing are safe during dispatch, and one failing handler does not stop the others.

- Timer — countdown component with pause/resume, Update or FixedUpdate ticking, callbacks and events.

- Comment — editor-only note you can attach to any GameObject.

- TransformData / RectTransformData — serializable snapshots of transform state.

- Abstractions — IAnimation, IShowHideAnimations, IBackNavigationService, IInstantiator and IDataSerializer keep your code independent of tweening libraries, DI containers and save formats.


ADVANTAGES

- Clean and lightweight.

- Stable and reliable.

- Well documented.