Repolode
mob-sakai

mob-sakai/UIEffect

A Unity package for applying filters like grayscale, blur, dissolve and glow to UI elements from the Inspector or code.

Stars
7,718
Forks
955
Open issues
11
Last commit
2 days ago

What is it?

UIEffect is an open-source Unity package for decorating uGUI elements with shader-based visual effects. Each effect is configured on a UIEffect component in the Inspector, so no shader code is needed. Developers combine tone, color, sampling, transition, gradation, edge, and shadow filters to build custom looks such as grayscale, sepia, blur, pixelation, dissolve, melt, and burn.

The package supports the default Image, RawImage, and Text components as well as TextMeshProUGUI, including font and sprite tags. A UIEffectTweener component animates effect parameters without AnimationClips, and UIEffectReplica applies one effect's settings to several elements at once. Presets can be saved in the editor and loaded at runtime with LoadPreset. Timeline tracks and ShaderGraph integration are available as optional imports.

The package requires Unity 2020.3 or later and works with URP, HDRP, and VR setups. A WebGL demo is hosted on the project's documentation site.

Key features

  • 01Tone, color, sampling, and transition filters can be combined on any UI element.
  • 02Effects are adjusted directly in the Inspector without writing shader code.
  • 03UIEffectTweener animates effect parameters without AnimationClips.
  • 04UIEffectReplica applies the same effect settings to multiple elements.
  • 05Editor and runtime presets can be saved and loaded.
  • 06Supports TextMeshPro, Timeline, ShaderGraph, and SoftMaskForUGUI as optional integrations.

Use cases

  • Showing disabled or locked UI buttons by applying grayscale.
  • Adding dissolve or burn transitions to panels and icons in a Unity game.
  • Creating retro or pixelated looks for menus and HUD elements.
  • Animating UI effects in sync with Timeline cutscenes.

Quick start

  1. 1

    Install the package via OpenUPM (requires openupm-cli)

    openupm add com.coffee.ui-effect
  2. 2

    Add a UIEffect component to a UI element from the Inspector (Add Component or Component > UI > UIEffect)

  3. 3

    Set Tone Filter to Grayscale and Tone Intensity to 1.0 to see the effect

Things to know

  • Requires Unity 2020.3 or later.
  • Upgrading from v4 involves breaking changes; UIShadow and UIGradient are not supported in v5.

In collections

Topics

#unity#ugui#shader#ui-effects#game-development#textmeshpro#blur#burn#component#contrast

FAQ

What is UIEffect?
A Unity package for applying filters like grayscale, blur, dissolve and glow to UI elements from the Inspector or code. UIEffect is an open-source Unity package for decorating uGUI elements with shader-based visual effects. Each effect is configured on a UIEffect component in the Inspector, so no shader code is needed. Developers combine tone, color, sampling, transition, gradation, edge, and shadow filters to build custom looks such as grayscale, sepia, blur, pixelation, dissolve, melt, and burn.
Is UIEffect free to use? What license does it have?
UIEffect is open source under the MIT license. Check the license terms before using it in commercial products.
Is UIEffect still maintained?
Actively maintained. The last commit to UIEffect was on Nov 6, 2026.
What can I use UIEffect for?
Showing disabled or locked UI buttons by applying grayscale. Adding dissolve or burn transitions to panels and icons in a Unity game. Creating retro or pixelated looks for menus and HUD elements. Animating UI effects in sync with Timeline cutscenes.
How do I install UIEffect?
Install the package via OpenUPM (requires openupm-cli): openupm add com.coffee.ui-effect Add a UIEffect component to a UI element from the Inspector (Add Component or Component > UI > UIEffect) Set Tone Filter to Grayscale and Tone Intensity to 1.0 to see the effect
Where can I get UIEffect?
The source code and installation instructions are on GitHub: https://github.com/mob-sakai/UIEffect

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects