Skip to main content

Unity Extensions

Digital

Over the years of working with Unity, I have built various extension methods, utilities, and libraries that I find make my life a lot easier when writing code and working with the Unity editor. After writing versions of these libraries multiple times at multiple jobs, I decided to take matters into my own hands, re-writing each of these libraries from scratch and open-sourcing them so that I could use them freely on as many projects as I’d like in future. (Oh, and I suppose other people might find them helpful, as well!)

jonagill/Autofill

A Unity utility for automatically assigning serialized component references on prefabs.

C#
1
0

Autofill is a simple Unity extension that can automatically assign serialized component references for you at edit time. If a reference is successfully autofilled, it will be hidden in the Inspector, allowing you to safely ignore it like the implementation detail it is. This provides all the ease of use of calling GetComponent with none of the runtime costs!

jonagill/Promises

C# implementation of the Promise async programming pattern for use in Unity projects.

C#
2
0

This library provides a C# implementation of the promise pattern for use in Unity projects. Promises provide an easy to use and chainable alternative to traditional asynchronous function callbacks.

jonagill/AsyncRoutines

An efficient and feature-rich replacement for Unity coroutines.

C#
4
1

This library provides a full C#-based replacement for Unity’s built-in coroutines. It provides a number of vital features that Unity’s coroutines do not, including a pattern for replacing Unity’s expensive Update() calls with more efficient and fully customizable C# callbacks.

jonagill/ObjectPools

C#
0
0

This library is still a work-in-progress, although it mostly just needs some documentation writing for it. It provides support for pooling Unity GameObjects to optimize the use of objects that would otherwise be frequently instantiated and destroyed at runtime.