Skip to content

Releases: TeodorVecerdi/UnityCommons

Release 2.1.5

13 Feb 09:10
8ed36df
Compare
Choose a tag to compare

Release 2.1.5

Full Changelog: 2.1.3...2.1.5

  • Changed package name from com.github.teodorvecerdi.unitycommons to dev.vecerdi.unitycommons
  • Added Clamped and Clamped01 extensions for Vector3s
  • Added a MonoSingleton variant which automatically creates an instance if one can't be found
  • Added Run.NextUpdate method
  • Removed Code directory
  • Fixed a few issues

Install as a submodule

Run the following on the command line in your unity project's folder:

git submodule add https://github.com/TeodorVecerdi/UnityCommons.git DESTINATION_PATH

Release 2.1.3

14 Jan 13:50
22bfb76
Compare
Choose a tag to compare

Release 2.1.3

Full Changelog: 2.0.1...2.1.3

  • Added generic ObjectPool<T> abstract class for object pooling
  • Fixed async update managers not showing up in Unity as components (Renamed classes from AsyncUpdateManager.(Sequential/Parallel) to (Sequential/Parallel)AsyncUpdateManager)
  • Cleaned up files, trimmed leading whitespace, converted tabs to spaces

Install as a submodule

Run the following on the command line in your unity project's folder:

git submodule add https://github.com/TeodorVecerdi/UnityCommons/ <DESTINATION_PATH>

Hotfix 2.0.1

29 Dec 18:06
7815e56
Compare
Choose a tag to compare

Hotfix 2.0.1

Full Changelog: 2.0.0...2.0.1

  • Removed usages of newer C# to make project compatible with Unity 2019.4 LTS

Install as a submodule

Run the following on the command line in your unity project's folder:

git submodule add https://github.com/TeodorVecerdi/UnityCommons/ <DESTINATION_PATH>

Release 2.0.0

29 Dec 17:59
8a908d5
Compare
Choose a tag to compare

Changelog

Full Changelog: 1.6.0...2.0.0

Removed

  • Removed Bar script
  • Removed NaughtyAttributes dependency
  • Removed instantiation fallback when a MonoSingleton doesn't exist

Added

  • Added IsInitialized boolean property to MonoSingleton
  • Added MinClamped and MaxClamped methods to MathExtensions
  • Added MapRange for integers
  • Added Rand.ColorHSV (identical to Unity's Random.ColorHSV)
  • Added two variants for a non-MonoBehaviour singleton (one requires a parameterless constructor, and one has a Create abstract method)
    • Singleton.New<T>
    • Singleton.Create<T>
  • Added update managers for having access to unity's update lifecycle outside of MonoBehaviours. Has 3 variants:
    • UpdateManager - regular update manager, has events for OnUpdate, OnLateUpdate, and OnFixedUpdate
    • AsyncUpdateManager.Sequential - asynchronous update manager, awaits every action one after the other
    • AsyncUpdateManager.Parallel - asynchronous update manager, starts every action at the same time and waits for all to finish

Changed

  • Optimized QuickSort methods to stop allocating a whole new list when calling

Install as a submodule

Run the following on the command line in your unity project's folder:

git submodule add https://github.com/TeodorVecerdi/UnityCommons/ <DESTINATION_PATH>

Release 1.6.0

31 Jul 13:07
d22d2b2
Compare
Choose a tag to compare

Changelog

  • Add EveryTicks method to Run utility
  • Add Logging extensions with context parameter
  • Add IReadOnlyList variant to Rand.ListItem
  • Change type constraint on MonoSingleton to enforce self-reference
  • Change Clamped extension to swap min and max when appropriate
  • Rename Grid to GridXY to avoid naming collision with built-in type
  • Rename GenericExtensions to ObjectExtensions
  • Remove deprecated UpdateUtility

Install using

Run the following on the command line in your unity project's folder:

openupm add com.github.teodorvecerdi.unitycommons

Hotfix 1.5.1

05 Apr 12:32
c47ee9c
Compare
Choose a tag to compare

Changelog

  • Fixed bug in MonoSingleton where it would call OnAwake on destroyed duplicates

Install using

Run the following on the command line in your unity project's folder:

openupm add com.github.teodorvecerdi.unitycommons

Version 1.5.0

21 Feb 17:28
fdaa06c
Compare
Choose a tag to compare

Changelog

  • Removed TextMeshPro dependency
  • Changed minimum required Unity version to 2019.4 LTS
  • Fixed incompatibilities with Unity 2019.4
  • Added RoundedTo math extensions (Round a value to the nearest multiple of a number)
  • Added Wrapped math extensions (Wrap a value between a range)
  • Added generic Debug.Log(/Warning/Error) extensions
  • Added Run utility with methods for running an action every frame, every x seconds, or once after x seconds
  • Made UpdateUtility obsolete

Install using

Run the following on the command line in your unity project's folder:

openupm add com.github.teodorvecerdi.unitycommons

Version 1.4.4

17 Feb 21:39
c0f542d
Compare
Choose a tag to compare

Changelog

  • Changed behaviour of removing functions in UpdateUtility to queue functions and remove them at the end of the update cycle. This allows functions to remove themselves from within themselves.

Install using

Run the following on the command line in your unity project's folder:

openupm add com.github.teodorvecerdi.unitycommons

Version 1.4.3

16 Feb 21:38
1fb0129
Compare
Choose a tag to compare

Changelog

1.4.2

  • Slight optimization in ListExtensions (ForEach)
  • Added (int, int) tuple range check
  • Removed float range checks (Between already exists)
  • Added more debug options and control in Grid classes
  • Removed useless float extensions (because of generic extensions that covered them)
  • Added int, decimal, and double versions of Clamped01
  • Removed some Map functions

1.4.3

  • Fixed bug in ForEach list extension
  • Another slight optimization in ListExtensions (RemoveDuplicates)

Install using

Run the following on the command line in your unity project's folder:

openupm add com.github.teodorvecerdi.unitycommons

Release 1.4.1

14 Feb 20:55
4853152
Compare
Choose a tag to compare

Changelog

  • Added useless boolean extensions (And, Or, AndNot, OrNot) and function versions + generic
  • Added 3D versions of MouseWorld and ScreenToWorld as the previous ones were basically 2D versions.
  • Added debug options to grid class (controls font size for text and debug line duration)

Install using

Run the following on the command line in your unity project's folder:

openupm add com.github.teodorvecerdi.unitycommons