Soso.UI

An easy to use and performant Unity UI animation, palette, and utility library

Soso.UI currently consists of three modules:

Soso.UI.Animation

Soso.UI.Animation is a code-first animation utility

✨ Features

  • Background animations
  • Animation chaining
  • Async animations
  • Easing functions for all kinds of animations

🔨 Usage

Use it as an extension for your transforms:

transform.AnimateLocalScale(Vector3.one, 0.25f, EASING.EaseOutBounce);

Or chained together:

transform.AnimateLocalScale(Vector3.one, 0.25f, EASING.EaseOutBounce)
    .Then(transform.AnimateRotation(Vector3.zero, 1f, EASING.Lerp));

You can also await it:

await transform.AnimateLocalScale(Vector3.one, 0.25f, EASING.EaseOutBounce).GetAwaiter();

Soso.UI.Palette

Soso.UI.Palette is a one-click palette changer for your entire project. Simply define a set of palettes, click on one to make it active, and it will set all colors for images, buttons, and more across your project.

✨ Features

  • Palette settings that allow instant switching
  • RawImage support
  • Image support
  • Button support (with states!)
  • Renderer support
  • TMP text support
  • More coming soon!

🔨 Usage

  • Create a SosoColorPalette to be used in your project.
  • Add a relevant palette component alongside your main component (e.g your Button).
  • Define the color index.
  • Profit!

Soso.UI.Core

Soso.UI.Core contains the UI engine used to power the other modules.