{"owner":"mob-sakai","repo":"UIEffect","hasSkills":true,"totalSkillsCount":8,"totalTokensCount":26664,"categories":["anthropic-skill","plugin-manifest"],"hasMcp":false,"mcpConfig":null,"found":["Packages/src/.releaserc.json","Packages/manifest.json","Packages/src/package.json","Packages/packages-lock.json","Packages/src/README.md","Packages/src/CHANGELOG.md","UIEffectURP/Packages/manifest.json","Packages/src/LICENSE.md"],"skills":{"Packages/src/.releaserc.json":"{\n  \"branches\": [\n    \"main\",\n    \"[0-9]+.x\",\n    {\n      \"name\": \"preview\",\n      \"prerelease\": true\n    }\n  ],\n  \"tagFormat\": \"${version}\",\n  \"plugins\": [\n    \"@semantic-release/commit-analyzer\",\n    \"@semantic-release/release-notes-generator\",\n    \"@semantic-release/changelog\",\n    [\n      \"@semantic-release/npm\",\n      {\n        \"npmPublish\": false\n      }\n    ],\n    \"@semantic-release/git\",\n    \"@semantic-release/github\"\n  ]\n}\n","Packages/manifest.json":"{\n  \"dependencies\": {\n    \"com.coffee.development\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/Development\",\n    \"com.coffee.minimal-resource\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/MinimalResource\",\n    \"com.coffee.nano-monitor\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/NanoMonitor\",\n    \"com.coffee.symbolic-linker\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/SymbolicLinker\",\n    \"com.unity.addressables\": \"1.22.3\",\n    \"com.unity.ide.rider\": \"3.0.38\",\n    \"com.unity.test-framework\": \"1.1.33\",\n    \"com.unity.textmeshpro\": \"3.0.9\",\n    \"com.unity.modules.animation\": \"1.0.0\"\n  }\n}\n","Packages/src/package.json":"{\n  \"name\": \"com.coffee.ui-effect\",\n  \"displayName\": \"UI Effect\",\n  \"description\": \"UIEffect is an open-source package that allows you to intuitively apply rich UI effects directly from the Inspector or via code.\\nCombine various filters, such as grayscale, blur, and dissolve, to decorate your UI with a unique visual style!\",\n  \"version\": \"5.11.7\",\n  \"unity\": \"2020.3\",\n  \"license\": \"MIT\",\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"git+https://github.com/mob-sakai/UIEffect.git\"\n  },\n  \"author\": {\n    \"name\": \"mob-sakai\",\n    \"email\": \"sakai861104@gmail.com\",\n    \"url\": \"https://github.com/mob-sakai\"\n  },\n  \"dependencies\": {\n    \"com.unity.ugui\": \"1.0.0\"\n  },\n  \"keywords\": [\n    \"ui\",\n    \"effect\"\n  ],\n  \"samples\": [\n    {\n      \"displayName\": \"Demo\",\n      \"description\": \"UI Effect Demo\",\n      \"path\": \"Samples~/Demo\"\n    },\n    {\n      \"displayName\": \"v4 Compatible Components\",\n      \"description\": \"v4 Compatible Components\",\n      \"path\": \"Samples~/v4 Compatible Components\"\n    },\n    {\n      \"displayName\": \"TextMeshPro Support\",\n      \"description\": \"TextMeshPro Support\",\n      \"path\": \"Samples~/TextMeshPro Support~\"\n    },\n    {\n      \"displayName\": \"TextMeshPro Support (Unity 6)\",\n      \"description\": \"TextMeshPro Support (Unity 6)\",\n      \"path\": \"Samples~/TextMeshPro Support (Unity 6)~\"\n    },\n    {\n      \"displayName\": \"ShaderGraph Support (Unity 6 BuiltIn)\",\n      \"description\": \"ShaderGraph Support (Unity 6 BuiltIn)\",\n      \"path\": \"Samples~/ShaderGraph Support (Unity 6 BuiltIn)~\"\n    },\n    {\n      \"displayName\": \"ShaderGraph Support (Unity 6 URP)\",\n      \"description\": \"ShaderGraph Support (Unity 6 URP)\",\n      \"path\": \"Samples~/ShaderGraph Support (Unity 6 URP)~\"\n    }\n  ]\n}\n","Packages/packages-lock.json":"{\n  \"dependencies\": {\n    \"com.coffee.development\": {\n      \"version\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/Development\",\n      \"depth\": 0,\n      \"source\": \"git\",\n      \"dependencies\": {},\n      \"hash\": \"4a182298bd6293c4e6e33dd40bb7a050847190d8\"\n    },\n    \"com.coffee.minimal-resource\": {\n      \"version\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/MinimalResource\",\n      \"depth\": 0,\n      \"source\": \"git\",\n      \"dependencies\": {},\n      \"hash\": \"4a182298bd6293c4e6e33dd40bb7a050847190d8\"\n    },\n    \"com.coffee.nano-monitor\": {\n      \"version\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/NanoMonitor\",\n      \"depth\": 0,\n      \"source\": \"git\",\n      \"dependencies\": {\n        \"com.unity.ugui\": \"1.0.0\"\n      },\n      \"hash\": \"4a182298bd6293c4e6e33dd40bb7a050847190d8\"\n    },\n    \"com.coffee.symbolic-linker\": {\n      \"version\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/SymbolicLinker\",\n      \"depth\": 0,\n      \"source\": \"git\",\n      \"dependencies\": {},\n      \"hash\": \"4a182298bd6293c4e6e33dd40bb7a050847190d8\"\n    },\n    \"com.coffee.ui-effect\": {\n      \"version\": \"file:src\",\n      \"depth\": 0,\n      \"source\": \"embedded\",\n      \"dependencies\": {\n        \"com.unity.ugui\": \"1.0.0\"\n      }\n    },\n    \"com.unity.addressables\": {\n      \"version\": \"1.22.3\",\n      \"depth\": 0,\n      \"source\": \"registry\",\n      \"dependencies\": {\n        \"com.unity.modules.assetbundle\": \"1.0.0\",\n        \"com.unity.modules.jsonserialize\": \"1.0.0\",\n        \"com.unity.modules.imageconversion\": \"1.0.0\",\n        \"com.unity.modules.unitywebrequest\": \"1.0.0\",\n        \"com.unity.scriptablebuildpipeline\": \"1.21.25\",\n        \"com.unity.modules.unitywebrequestassetbundle\": \"1.0.0\"\n      },\n      \"url\": \"https://packages.unity.com\"\n    },\n    \"com.unity.ext.nunit\": {\n      \"version\": \"1.0.6\",\n      \"depth\": 1,\n      \"source\": \"registry\",\n      \"dependencies\": {},\n      \"url\": \"https://packages.unity.com\"\n    },\n    \"com.unity.ide.rider\": {\n      \"version\": \"3.0.38\",\n      \"depth\": 0,\n      \"source\": \"registry\",\n      \"dependencies\": {\n        \"com.unity.ext.nunit\": \"1.0.6\"\n      },\n      \"url\": \"https://packages.unity.com\"\n    },\n    \"com.unity.scriptablebuildpipeline\": {\n      \"version\": \"1.21.25\",\n      \"depth\": 1,\n      \"source\": \"registry\",\n      \"dependencies\": {},\n      \"url\": \"https://packages.unity.com\"\n    },\n    \"com.unity.test-framework\": {\n      \"version\": \"1.1.33\",\n      \"depth\": 0,\n      \"source\": \"registry\",\n      \"dependencies\": {\n        \"com.unity.ext.nunit\": \"1.0.6\",\n        \"com.unity.modules.imgui\": \"1.0.0\",\n        \"com.unity.modules.jsonserialize\": \"1.0.0\"\n      },\n      \"url\": \"https://packages.unity.com\"\n    },\n    \"com.unity.textmeshpro\": {\n      \"version\": \"3.0.9\",\n      \"depth\": 0,\n      \"source\": \"registry\",\n      \"dependencies\": {\n        \"com.unity.ugui\": \"1.0.0\"\n      },\n      \"url\": \"https://packages.unity.com\"\n    },\n    \"com.unity.ugui\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {\n        \"com.unity.modules.ui\": \"1.0.0\",\n        \"com.unity.modules.imgui\": \"1.0.0\"\n      }\n    },\n    \"com.unity.modules.animation\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 0,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.assetbundle\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.imageconversion\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.imgui\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.jsonserialize\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.ui\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 2,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.unitywebrequest\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.unitywebrequestassetbundle\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {\n        \"com.unity.modules.assetbundle\": \"1.0.0\",\n        \"com.unity.modules.unitywebrequest\": \"1.0.0\"\n      }\n    }\n  }\n}\n","Packages/src/README.md":"# <img alt=\"logo\" height=\"26\" src=\"https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-logo.png\"/> UIEffect v5 <!-- omit in toc -->\n\n[![](https://img.shields.io/npm/v/com.coffee.ui-effect?label=openupm&registry_uri=https://package.openupm.com)](https://openupm.com/packages/com.coffee.ui-effect/)\n[![](https://img.shields.io/github/v/release/mob-sakai/UIEffect?include_prereleases)](https://github.com/mob-sakai/UIEffect/releases)\n[![](https://img.shields.io/github/release-date/mob-sakai/UIEffect.svg)](https://github.com/mob-sakai/UIEffect/releases)  \n![](https://img.shields.io/badge/Unity-2020.3+-57b9d3.svg?style=flat&logo=unity)\n![](https://img.shields.io/badge/Unity-6000.0+-57b9d3.svg?style=flat&logo=unity)  \n![](https://img.shields.io/badge/TextMeshPro_Support-57b9d3.svg?style=flat)\n![](https://img.shields.io/badge/ShaderGraph_Support-57b9d3.svg?style=flat)\n![](https://img.shields.io/badge/Timeline_Support-57b9d3.svg?style=flat)\n![](https://img.shields.io/badge/UPR%2FHDPR_Support-57b9d3.svg?style=flat)\n![](https://img.shields.io/badge/VR_Support-57b9d3.svg?style=flat)  \n[![](https://img.shields.io/github/license/mob-sakai/UIEffect.svg)](https://github.com/mob-sakai/UIEffect/blob/main/LICENSE.md)\n[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-orange.svg)](http://makeapullrequest.com)\n[![](https://img.shields.io/github/watchers/mob-sakai/UIEffect.svg?style=social&label=Watch)](https://github.com/mob-sakai/UIEffect/subscription)\n[![](https://img.shields.io/twitter/follow/mob_sakai.svg?label=Follow&style=social)](https://twitter.com/intent/follow?screen_name=mob_sakai)\n\n<< [📝 Description](#-description-) | [📌 Key Features](#-key-features) | [🎮 Demo](#-demo) | [⚙ Installation](#-installation) | [🔄 Upgrading from v4 to v5](#-upgrading-from-v4-to-v5) | [🚀 Usage](#-usage) | [🤝 Contributing](#-contributing) >>\n\n⚠️ This README is for v5. For v4, please visit [here](https://github.com/mob-sakai/UIEffect/blob/upm/README.md).\n\n## 📝 Description <!-- omit in toc -->\n\n**_\"Decorate your UI, simply and powerfully.\"_**\n\nUIEffect is a powerful, open-source Unity package that transforms your UI with stunning visual effects.  \nApply professional-grade filters like grayscale, blur, and dissolve directly from the Inspector—no coding required!\n\n✨ **Perfect for**: Game developers, UI designers, and anyone looking to enhance their Unity UI with minimal effort\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-demo-title.png)\n\n- [📌 Key Features](#-key-features)\n- [🎮 Demo](#-demo)\n- [⚙ Installation](#-installation)\n  - [Install via OpenUPM](#install-via-openupm)\n  - [Install via UPM (with Package Manager UI)](#install-via-upm-with-package-manager-ui)\n  - [Install via UPM (Manually)](#install-via-upm-manually)\n  - [Install as Embedded Package](#install-as-embedded-package)\n  - [Import Additional Resources](#import-additional-resources)\n- [🔄 Upgrading from v4 to v5](#-upgrading-from-v4-to-v5)\n- [🚀 Usage](#-usage)\n  - [Getting Started](#getting-started)\n  - [Component: UIEffect](#component-uieffect)\n    - [Tone Filter](#tone-filter)\n    - [Color Filter](#color-filter)\n    - [Sampling Filter](#sampling-filter)\n    - [Transition Filter](#transition-filter)\n    - [Target Mode](#target-mode)\n    - [Blend Type](#blend-type)\n    - [Shadow Mode](#shadow-mode)\n    - [Gradation Mode](#gradation-mode)\n    - [Edge Mode](#edge-mode)\n    - [Detail Filter](#detail-filter)\n    - [Flip](#flip)\n    - [Others](#others)\n  - [Component: UIEffectTweener](#component-uieffecttweener)\n  - [Component: UIEffectReplica](#component-uieffectreplica)\n  - [Usage with TextMeshPro](#usage-with-textmeshpro)\n  - [Usage with SoftMaskForUGUI](#usage-with-softmaskforugui)\n  - [Usage with ShaderGraph](#usage-with-shadergraph)\n  - [Usage with Timeline](#usage-with-timeline)\n  - [Usage with Custom Shader](#usage-with-custom-shader)\n  - [Runtime/Editor Preset for UIEffect](#runtimeeditor-preset-for-uieffect)\n  - [Usage with Code](#usage-with-code)\n  - [Project Settings](#project-settings)\n    - [Settings](#settings)\n    - [Editor](#editor)\n    - [Shader](#shader)\n  - [:warning: Limitations](#warning-limitations)\n- [🤝 Contributing](#-contributing)\n  - [Issues](#issues)\n  - [Pull Requests](#pull-requests)\n  - [Support](#support)\n- [License](#license)\n- [Author](#author)\n- [See Also](#see-also)\n\n<br><br>\n\n## 📌 Key Features\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-keyfeatures.png)\n\n- **UIEffect is out-of-the-box!**: Easily apply effects by adjusting parameters directly in the inspector.\n- **Rich effect combinations**: Decorate your UI with a variety of effects, such as grayscale, blur, and dissolve, by combining multiple filters and parameters.\n- **Efficient shader builds**: Only the shader variants in use are built, resulting in shorter build times.\n- **URP/HDRP/VR support**: Compatible with URP, HDRP, and VR environments.\n- **Runtime and editor presets**: Presets are available both at runtime and in the editor.\n- **TextMeshPro support**: Supports TextMeshPro, including `<font>` and `<sprite>` tags.\n- **UIEffectReplica Component**: Duplicate effects and apply them to multiple UI elements at once.\n- **UIEffectTweener Component**: A simple tweener component to play, stop, pause, and resume effects.\n- **AnimationClip support**: Allows control of effect animations using `AnimationClips`.\n- **v4 compatible components (optional)**: For easy upgrading with minimal changes, compatible v4 components are available optionally.\n- **SoftMaskForUGUI support (optional)**: Compatible with SoftMaskForUGUI for creating soft masks for UI elements. See for more details [here](#usage-with-softmaskforugui).\n- **ShaderGraph support (optional)**: Add `Canvas (UIEffect)` sub target (material) for UIEffect shaders. See for more details [here](#usage-with-shadergraph).\n- **Timeline support**: Control UIEffect using Timeline with `ControlTrack` and `UIEffect Tracks`. See for more details [here](#usage-with-timeline).\n\n<br><br>\n\n## 🎮 Demo\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1749461316801.png)\n<img src=\"https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-demo-pattern.gif\" width=\"582\"/>  \n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-demo-showcase.png)  \n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-demo-tmp.png)  \n\n[Try the WebGL Demo](https://mob-sakai.github.io/UIEffect/)\n\n<br><br>\n\n## ⚙ Installation\n\n_This package requires **Unity 2020.3 or later**._\n\n### Install via OpenUPM\n\n- This package is available on [OpenUPM](https://openupm.com/packages/com.coffee.ui-effect/) package registry.\n- This is the preferred method of installation, as you can easily receive updates as they're released.\n- If you have [openupm-cli](https://github.com/openupm/openupm-cli) installed, then run the following command in your project's directory:\n  ```\n  openupm add com.coffee.ui-effect\n  ```\n- To update the package, use Package Manager UI (`Window > Package Manager`) or run the following command with `@{version}`:\n  ```\n  openupm add com.coffee.ui-effect@5.9.0\n  ```\n\n### Install via UPM (with Package Manager UI)\n\n- Click `Window > Package Manager` to open Package Manager UI.\n- Click `+ > Add package from git URL...` and input the repository URL: `https://github.com/mob-sakai/UIEffect.git?path=Packages/src`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/upm-add-from-url.png)\n- To update the package, change suffix `#{version}` to the target version.\n    - e.g. `https://github.com/mob-sakai/UIEffect.git?path=Packages/src#5.9.0`\n\n### Install via UPM (Manually)\n\n- Open the `Packages/manifest.json` file in your project. Then add this package somewhere in the `dependencies` block:\n  ```json\n  {\n    \"dependencies\": {\n      \"com.coffee.ui-effect\": \"https://github.com/mob-sakai/UIEffect.git?path=Packages/src\",\n      ...\n    }\n  }\n  ```\n\n- To update the package, change suffix `#{version}` to the target version.\n    - e.g. `\"com.coffee.ui-effect\": \"https://github.com/mob-sakai/UIEffect.git?path=Packages/src#5.9.0\",`\n\n### Install as Embedded Package\n\n1. Download the `Source code (zip)` file from [Releases](https://github.com/mob-sakai/UIEffect/releases) and\n   extract it.\n2. Move the `<extracted_dir>/Packages/src` directory into your project's `Packages` directory.  \n   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/upm-add-as-embedded.png)\n    - You can rename the `src` directory if needed.\n    - If you intend to fix bugs or add features, installing it as an embedded package is recommended.\n    - To update the package, re-download it and replace the existing contents.\n\n### Import Additional Resources\n\nAdditional resources can be imported to extend functionality.\n\n- [🔄 Upgrading from v4 to v5](#-upgrading-from-v4-to-v5)\n- [Usage with TextMeshPro](#usage-with-textmeshpro)\n- [Usage with ShaderGraph](#usage-with-shadergraph)\n\n<br><br>\n\n## 🔄 Upgrading from v4 to v5\n\nIf upgrading from UIEffect v4 to v5, note the following breaking changes:\n\n1. If you are installing via git URL, add `?path=Packages/src`. The default branch is changed `upm` to `main`.\n   ```json\n   // v4\n   \"com.coffee.ui-effect\": \"https://github.com/mob-sakai/UIEffect.git\",\n   \"com.coffee.ui-effect\": \"https://github.com/mob-sakai/UIEffect.git#upm\",\n   \n   // v5\n   \"com.coffee.ui-effect\": \"https://github.com/mob-sakai/UIEffect.git?path=Packages/src\",\n   \"com.coffee.ui-effect\": \"https://github.com/mob-sakai/UIEffect.git?path=Packages/src#main\",\n   ```\n\n2. Import the `v4 Compatible Components` sample from the Package Manager window.  \n\n3. All v4 components are obsolete.  \n- v4 `UIEffect` component is now `UIEffectV4` component. Change the reference in the code.\n- The `effectArea` property in some components are not supported in v5.\n- `UIShadow`, `UIGradient` components are not supported in v5.\n- v4 components can be converted to v5 `UIEffect` component by selecting `Convert To UIEffect` from the context menu.  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-v4-convert.png)\n\n<br><br>\n\n## 🚀 Usage\n\n### Getting Started\n\n1. [Install the package](#-installation).\n\n2. Add a `UIEffect` component to a UI element (Image, RawImage, Text, TextMeshProUGUI, etc...) from the `Add Component` in the inspector or `Component > UI > UIEffect` menu.  \n   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-add-component.png)\n\n3. Set `Tone Filter` to `Grayscale` and `Tone Intensity` to `1.0`.  \n   <img src=\"https://github.com/mob-sakai/mob-sakai/releases/download/docs/1749029605043.png\" width=\"480\"/>\n\n4. Try other effect filters and parameters in the inspector.  \n   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744308178360.gif)\n\n5. From the top menu, you can load/append preset.  \n> [!TIP]\n>\n> `Load` overwrites all properties with the preset, while `Append` only overwrites enabled filters and modes with the preset.  \n> You can easily build effects by combining them with `Append`.\n\n   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744800851739.gif)\n\n5. Enjoy!\n\n<br><br>\n\n### Component: UIEffect\n\nThe `UIEffect` component applies visual effects to UI elements, allowing various effects to be achieved by combining multiple filters.\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-preset.png)\n\n> [!TIP]  \n> From the top menu, you can load and save the editor presets or clear settings.  \n> For details, refer to the [Runtime/Editor Preset for UIEffect](#runtimeeditor-preset-for-uieffect).\n\n<br>\n\n#### Tone Filter\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-tone.png)\n\n- **Tone Filter**: `None`, `Grayscale`, `Sepia`, `Nega`, `Retro`, `Posterize`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-tone.png)\n- **Tone Intensity**: 0.0 (no effect) - 1.0 (full effect).\n\n<br>\n\n#### Color Filter\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-color.png)\n\n- **Color Filter**: `None`, `Multiply`, `Additive`, `Subtractive`, `Replace`, `Multiply Luminance`, `Multiply Additive`, `Hsv Modifier`, `Contrast`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-color.png)\n- **Color Intensity**: 0.0 (no effect) - 1.0 (full effect).\n- **Color Glow**: Set the color to glow.\n\n<br>\n\n#### Sampling Filter\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-sampling.png)\n\n- **Sampling Filter**: `None`, `Blur Fast`, `Blur Medium`, `Blur Detail`, `Pixelation`, `Rgb Shift`, `Edge Luminescence`, `Edge Alpha`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-sampling.png)\n- **Sampling Intensity**: 0.0 (no effect) - 1.0 (full effect).\n- **Sampling Width**: The width of the sampling effect.\n\n<br>\n\n#### Transition Filter\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-transition.png)\n\n- **Transition Filter**: `None`, `Fade`, `Cutoff`, `Dissolve`, `Shiny`, `Mask`, `Melt`, `Burn`, `Blaze`, `Pattern`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1749466907712.gif)\n- **Transition Rate**: 0.0 (no effect) - 1.0 (full effect).\n- **Transition Tex**: The texture used for the transition filter.\n    - **Scale**, **Offset**, **Speed**, **Rotation**, **Keep Aspect Ratio**, **Reverse**: Additional properties for the texture.\n    - ⚠️ NOTE: `Rotation` is shared with `Transition Filter` and `Detail Filter`.\n    - ⚠️ NOTE: `Keep Aspect Ratio` is shared with `Transition Filter` and `Gradation Mode` and `Detail Filter`.\n- **Transition Width**: The width where the transition color is applied.\n- **Transition Pattern Range**: The range of the pattern.\n- **Transition Pattern Reverse**: Reverse the pattern.\n- **Transition Softness**: The softness of the boundary for the transition color.\n- **Transition Color Filter**: `None`, `Multiply`, `Additive`, `Subtractive`, `Replace`, `Multiply Luminance`, `Multiply Additive`, `Hsv Modifier`, `Contrast`\n    - **Transition Color**: The color of the transition.\n    - **Transition Color Glow**: Set the transition color to glow.\n- **Transition Auto Play Speed**: The speed of the transition animation (using shader side `_Time`). You can use this property to loop the `TransitionRate` without tweener or animation.\n    - ⚠️ NOTE: This uses scaled time (affected by `Time.timeScale`). If you need unscaled time (useful for pause-resistant effects), use the [UIEffectTweener](#component-uieffecttweener) component instead.\n\n> [!TIP]  \n> **Transition Tex** applies transitions using its alpha channel.  \n> If you use `Scale`, `Offset`, or `Speed`, set `Wrap Mode = Repeat` in the texture import settings.  \n> For details, refer to the textures included in the built-in presets.  \n> ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/17443051097852.png)\n\n<br>\n\n#### Target Mode\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-target.png)\n\n- **Target Mode**: `None`, `Hue`, `Luminance`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-target.png)\n  - Restricts the effect application area based on hue or luminance.\n- **Target Range**: The range of target hue or luminance.\n- **Target Softness**: The softness of the target boundary.\n\n<br>\n\n#### Blend Type\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-blend.png)\n\n- **Blend Type**: `Alpha Blend`, `Multiply`, `Additive`, `Soft Additive`, `Multiply Additive`, `Custom`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-blend.png)\n  - `Custom` blend type can be set using the `SrcBlend` and `DstBlend` properties. \n\n<br>\n\n#### Shadow Mode\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-shadow.png)\n\n- **Shadow Mode**: `None`, `Shadow`, `Shadow3`, `Outline`, `Outline8`, `Mirror`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-shadow.png)\n- **Shadow Distance**: Distance of the shadow or outline.\n- **Shadow Iteration**: Number of times the shadow or outline is applied.\n- **Shadow Color Filter**: `None`, `Multiply`, `Additive`, `Subtractive`, `Replace`, `Multiply Luminance`, `Multiply Additive`, `Hsv Modifier`, `Contrast`\n    - **Shadow Color**: The color of the shadow.\n    - **Shadow Color Glow**: Set the shadow color to glow.\n- **Shadow Fade**: Alpha value of the shadow or outline.\n- **Shadow Blur Intensity** (`SamplingFilter = Blur***` required): Intensity of the shadow or outline blur.\n- **Mirror Reflection** (`Mirror` only): Distance of the mirrored image.\n- **Mirror Offset** (`Mirror` only): Offset for the mirrored image.\n- **Mirror Scale** (`Mirror` only): Scale of the mirrored image.\n\n<br>\n\n#### Gradation Mode\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744305109784.png)\n\n- **Gradation Mode**: `None`, `Horizontal`, `HorizontalGradient`, `Vertical`, `VerticalGradient`, `Radial`, `RadialGradient`, `Diagonal`, `DiagonalToRightBottom`, `DiagonalToLeftBottom`, `Angle`, `AngleGradient`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1749461050342.png)\n- **Gradation Color Filter**: `None`, `Multiply`, `Additive`, `Subtractive`, `Replace`, `Multiply Luminance`, `Multiply Additive`\n- **Gradation Gradient**: The gradient of the gradation. HDR colors are supported.\n  - `Blend` and `Fixed` modes are available.\n- **Gradation Color 1**: The first color of the gradation.\n- **Gradation Color 2**: The second color of the gradation.\n- **Gradation Intensity**: 0.0 (no effect) - 1.0 (full effect).\n- **Gradation Offset**: The offset of the gradation range.\n- **Gradation Scale**: The scale of the gradation range.\n- **Gradation Rotation** (`Angle` or `AngleGradient` only): The rotation of the gradation range.\n- **Gradation Wrap Mode**: `Repaet`, `Clamp`, `Mirror`, `Mirror Once`\n- **Gradation Reverse**: Reverse the gradient.\n- **Keep Aspect Ratio**: \n  - ⚠️ NOTE: `Keep Aspect Ratio` is shared with `Transition Filter` and `Gradation Mode` and `Detail Filter`.\n\n<br>\n\n#### Edge Mode\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-edge.png)\n\n- **Edge Mode**: `None`, `Plain`, `Shiny`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-edge.png)\n- **Edge Width**: The width of the edge.\n- **Edge Color Filter**: `None`, `Multiply`, `Additive`, `Subtractive`, `Replace`, `Multiply Luminance`, `Multiply Additive`, `Hsv Modifier`, `Contrast`\n    - **Edge Color**: The color of the edge.\n    - **Edge Color Glow**: Set the shadow color to glow.\n- **Edge Shiny Width**: The width of the edge shiny.\n- **Edge Shiny Auto Play Speed**: The speed of the edge shiny (using shader side `_Time`).\n  - ⚠️ NOTE: This uses scaled time (affected by `Time.timeScale`). If you need unscaled time (useful for pause-resistant effects), use the [UIEffectTweener](#component-uieffecttweener) component instead.\n\n<br>\n\n#### Detail Filter\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744762332942.png)\n\n- **Detail Filter**: `None`, `Masking`, `Multiply`, `Additive`, `Subtractive`, `Replace`, `MuliplyAdditive`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744826180386.png)\n- **Detail Intensity**: 0.0 (no effect) - 1.0 (full effect).\n- **Detail Color**: The color of the detail.\n- **Detail Threshold** (`Masking` only): The minimum and maximum alpha values used for masking. The larger the gap\n    between these values, the stronger the softness effect.\n- **Detail Tex**: The texture used for the transition filter.\n  - **Scale**, **Offset**, **Speed**, **Rotation**, **Keep Aspect Ratio**: Additional properties for the texture.\n  - ⚠️ NOTE: `Rotation` is shared with `Transition Filter` and `Detail Filter`.\n  - ⚠️ NOTE: `Keep Aspect Ratio` is shared with `Transition Filter` and `Gradation Mode` and `Detail Filter`.\n\n<br>\n\n#### Flip\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744762521061.png)\n\n- **Flip**: Combine the following flags.\n    - `Nothing`\n    - `Horizontal`\n    - `Vertical`\n    - `Effect`: Flip with the effect.\n    - `Shadow`: Flip with the shadow.  \n    ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-flip.png)\n\n<br>\n\n#### Others\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744762623263.png)\n\n- **Sampling Scale**: The referencing scale during sampling.\n    - Larger values are suitable for high-resolution textures.\n- **Allow To Modify Mesh Shape**: If enabled, the mesh shape can be modified.\n- **Custom Root**: Use the custom transform for some effects.\n\n> [!TIP]  \n> `Transition Filter`, `Gradation Filter`, and `Detail Filter` usually refer to their own `RectTransform` when applying effects.  \n> For example, if the mesh shape exceeds the `RectTransform` boundaries, the effect may not be applied correctly.  \n> By specifying `Custom Root`, you can refer to the specified transform.\n> ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-custom-root.gif)\n\n<br><br>\n\n### Component: UIEffectTweener\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744304918490.png)\n\nThe `UIEffectTweener` component animates the effect, enabling easy control over effect animations without the need for an `AnimationClip`.\n\n- **Culling Mask**: `Tone`, `Color`, `Sampling`, `Transition`, `GradiationOffset`, `GradiationRotation`, `EdgeShiny`, `Event`\n- **OnChangeRate** (`Event` only): A event that is triggered when the tweening rate changes.\n- **Direction**: `Forward (0.0 -> 1.0)`, `Reverse (1.0 -> 0.0)`\n- **Curve**: The curve of the animation.\n- **Separate Reverse Curve**: If enabled, `Reverse Curve` will be used for the reverse direction.\n- **Reverse Curve**: The curve of the reverse animation.\n- **Delay**: The delay time before starting the animation.\n- **Duration**: The duration of the animation.\n- **Interval**: The interval time between the animation.\n- **Play On Enable**: `None`, `Forward`, `Reverse`, `Keep Direction`\n   - Play the animation automatically when the component is enabled.\n   - If `None` is selected, the animation will not play automatically. You can play it using the `Play`, `PlayForward` or `PlayReverse`  method.\n- **Reset Time On Enable**: Reset the tweening time when the component is enabled.\n- **Wrap Mode**:\n   - `Once`: delay -> duration(0-1) -> onComplete\n   - `Loop`: delay -> duration(0-1) -> interval -> ...\n   - `PingPongOnce`: delay -> duration(0-1) -> interval -> duration(1-0) -> onComplete\n   - `PingPongLoop`: delay -> duration(0-1) -> interval -> duration(1-0) -> interval -> ...\n- **Update Mode**: `Normal`, `UnscaledTime`, `Manual`\n- **On Complete**: A event that is triggered when the animation is completed.\n\nYou can preview the animation using the seek bar and play button.\n\n<br><br>\n\n### Component: UIEffectReplica\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744308511445.png)\n\nThe `UIEffectReplica` component applies visual effects to UI elements by replicating the settings of another `UIEffect` component. This allows the same effect to be applied across multiple UI elements simultaneously.\n\n- **Target**: The target `UIEffect` component to replicate.\n> [!TIP]\n> You can specify a preset as well as an instance as the target for `UIEffectReplica`.\n- **Use Target Transform**: Use the target's transform for some effects.  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-custom-root.gif)\n- **Custom Root**: Use the custom transform for some effects.\n- **Sampling Scale**: Override the sampling scale.\n- **Allow To Modify Mesh Shape**: If enabled, the mesh shape can be modified.\n\n<br><br>\n\n### Usage with TextMeshPro\n\nTo use UIEffect with TextMeshPro, you need to import additional resources.  \nWhen a shader included in the samples is requested, an import dialog will automatically appear.  \nClick the `Import` button.\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744304977486.png)\n\nAlternatively, you can manually import the resources by following these steps:\n\n1. First, you must import [TMP Essential Resources](https://docs.unity3d.com/Packages/com.unity.textmeshpro@3.0/manual/index.html#installation) before using.  \n   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744305000411.png)\n\n2. Open the `Package Manager` window and select the `UI Effect` package in the package list and click the `TextMeshPro Support > Import` button.  \n   ⚠️ If you are using `Unity 2023.2/6000.0+` or `TextMeshPro 3.2/4.0+`, click the `TextMeshPro Support (Unity 6) > Import` button instead.  \n\n3. The assets will be imported under `Assets/Samples/UI Effect/{version}`.\n\n4. Add the `UIEffect` component to a TextMeshProUGUI element and adjust the effect settings. The `<font>` and `<sprite>` tags are also supported.  \n   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744305022250.png)\n\n> [!TIP]\n> `TextMeshPro Support` may change with updates to the UIEffect package.  \n> If issues occur, try importing it again.\n\n> [!TIP]\n> If you have moved `TMPro_Properties.cginc` and `TMPro.cginc` from their default install path\n> (`Assets/TextMesh Pro/Shaders/...`), you will need to manually update the paths in the shaders under\n> `TextMeshPro Support` or `TextMeshPro Support (Unity 6)`.\n\n<br><br>\n\n### Usage with SoftMaskForUGUI\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744305036318.png)\n\n[SoftMaskForUGUI](https://github.com/mob-sakai/SoftMaskForUGUI) is a package that allows you to create soft masks for UI elements.\n\n`SoftMaskForUGUI (v3.3.0+)` supports `UIEffect (v5.7.0+)`.  \nWhen a shader included in the samples is requested, an import dialog will automatically appear.  \nClick the `Import` button.\n\n<br><br>\n\n### Usage with ShaderGraph\n\n⚠️ ShaderGraph support is available only in Unity 2023.2/6.0 or later.\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744307236288.png)\n\nTo use UIEffect with ShaderGraph, you need to import additional resources.\n\n1. Open the `Package Manager` window and select the `UI Effect` package in the package list and click the `ShaderGraph Support (Unity6, BuiltIn) > Import` button.  \n   ⚠️ If you are using Universal Render Pipeline (URP), click the `ShaderGraph Support (Unity6, URP) > Import` button.\n\n2. The assets will be imported under `Assets/Samples/UI Effect/{version}`.\n\n3. Change the sub target (Material) of the existing ShaderGraph file to `Canvas (UIEffect)`.  \n   Alternatively, create a new ShaderGraph from `Assets/Create/Shader Graph/BuiltIn/Canvas Shader Graph (UIEffect)`.\n\n> [!TIP]\n> Use `(UIEffect)` in the shader name or register as an optional shader in [ProjectSettings](#project-settings).\n\n<br><br>\n\n### Usage with Timeline\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1749028017092.png)\n\nTimeline is a powerful animation tool that can control UIEffect using `ControlTrack` and UIEffect tracks.\n\n- `Control Track`: One of the built-in tracks. When you assign a GameObject with `UIEffect`, `UIEffect` will be enabled during the clip duration.\n- `UIEffect Tracks`: Tracks for UIEffect. They control `float` or `Color` type properties.\n  - Supports blending, extrapolation, and tween.\n\n<br><br>\n\n### Usage with Custom Shader\n\nTo make your custom shader support UIEffect, it must satisfy the following requirements.\nRefer to the sections enclosed by `==== UIEFFECT START ===` and `==== UIEFFECT END ====` in the built-in `Hidden/UI/Default (UIEffect)` shader included in the package.\n\nhttps://github.com/mob-sakai/UIEffect/blob/main/Packages/src/Shaders/UIEffect.shader\n\n- Blend: `Blend [_SrcBlend] [_DstBlend]`\n- Shader variants: `#pragma shader_feature_local_fragment ***`\n- Vertex shader input structure: `float4 uvMask : TEXCOORD***;`\n- Vertex shader: `OUT.uvMask = v.uvMask;` and `OUT.worldPosition = v.vertex;`\n- Pixel shader input structure: `float4 uvMask : TEXCOORD***;` and `float4 worldPosition : TEXCOORD***;`\n- UIEffect micro pixel shader: a function that returns the color of the specified pixel and has the signature `half4 uieffect_frag(v2f IN, float2 uv)`.\n- Pixel shader input structure name definition: `#define UIEFFECT_FRAG_STRUCT v2f`\n- Include the UIEffect library: `#include \"Packages/com.coffee.ui-effect/Shaders/UIEffect.cginc\"`\n- Pixel shader: `half4 c = uieffect(IN.texcoord, IN.uvMask, IN.worldPosition, IN);`\n\n<br><br>\n\n### Runtime/Editor Preset for UIEffect\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-preset.png)\n\nYou can create and use presets for `UIEffect` components.\n\n- Click the `Load` button to apply an editor preset.\n- Click the `Append` button to load only non-default settings from the editor preset.\n- Click the `Save As New` button to save the current settings as an editor preset.\n- In the [Project Settings](#project-settings), you can register saved editor presets as runtime presets.\n- Runtime presets can be loaded using the `UIEffect.LoadPreset(presetName)` method.\n\n> [!TIP]\n> Editor presets are saved in the `UIEffectPresets` directory.\n> You can also create subdirectories to customize the preset menu.\n\n<br><br>\n\n### Usage with Code\n\nYou can control the effect settings and animations via code.\n\n```csharp\nvar effect = graphic.AddComponent<UIEffect>();\n\n// Apply a runtime preset\neffect.LoadPreset(\"Dissolve\");\n\n// Set the effect parameters\neffect.transitionWidth = 0.1f;\neffect.transitionColor = Color.red;\n\n// Add a tweener\nvar tweener = graphic.AddComponent<UIEffectTweener>();\ntweener.cullingMask = UICullingMask.Tone;\ntweener.wrapMode = UIWrapMode.PingPongLoop;\n\n// Warm up the shader variant collection.\nUIEffectProjectSettings.shaderVariantCollection.WarmUp();\n```\n\n<br><br>\n\n### Project Settings\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744799623192.png)\n\nYou can adjust the project-wide settings for UIEffect. (`Edit > Project Settings > UI > UIEffect`)\n\n#### Settings\n\n- **Runtime Presets**: A list of presets that can be loaded at runtime. Load them using `UIEffect.LoadPreset(presetName)` method.\n\n> [!IMPORTANT]  \n> - The legacy prefab-based preset system is deprecated as of v5.8.0.  \n> - If your project contains legacy presets, you can convert them to the new system.  \n>   - **Convert All Legacy Presets**: Creates new presets based on the legacy ones.  \n>     If the legacy presets are used as runtime presets, they will be replaced with the new ones.  \n>     You can load the new preset via the `UIEffect.LoadPreset` method.\n>   - **Delete All Legacy Presets**: Deletes all legacy presets. If any legacy presets are assigned to `UIEffectReplica.target`, those targets will also be removed.  \n>   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744792792701.png)\n\n#### Editor\n\n- **Use HDR Color Picker**: If enabled, the HDR color picker will be used in the inspector.\n\n#### Shader\n\n- **Optional Shaders (UIEffect)**: A list of shaders that will be prioritized when a ui-effect shader is\n  requested.\n    - If the shader is included in the list, that shader will be used.\n    - If it is not in the list, the following shaders will be used in order:\n        - If the shader name contains `(UIEffect)`, that shader will be used.\n        - If `Hidden/<shader_name> (UIEffect)` exists, that shader will be used.\n        - As a fallback, `UI/Default (UIEffect)` will be used.\n- **Registered Variants**: A list of shader variants available at runtime. Use \"-\" button to remove unused variants,\n  reducing build time and file size.\n    - By default, the used ui-effect shaders will be included in the build. You can remove them if you don't need.\n- **Unregistered Variants**: A list of shader variants that are not registered. Use \"+\" button to add variants.\n- **Error On Unregistered Variant**: If enabled, an error will be displayed when an unregistered shader variant is used.\n    - The shader variant will be automatically added to the `Unregistered Variants` list.\n\n> [!IMPORTANT]\n> - The setting file is usually saved in `Assets/ProjectSettings/UIEffectProjectSettings.asset`. Include this file in your version control system.\n> - The setting file is automatically added as a preloaded asset in `ProjectSettings/ProjectSettings.asset`.\n\n#### Advanced\n\n- **Pre Load Settings In Build**: When enabled, this settings asset will be added to `PlayerSettings.preloadedAssets` in build.\n - When disable, you should load this settings via `Resources`, `AssetBundles` or `Addressables` to use `UIEffect`.\n - You can overwrite the settings by re-enabling `UIEffectProjectSettings`. This allows you to hot update shader variants and presets.\n\n```csharp\nprivate static IEnumerator HotUpdateCoroutine()\n{\n    const string k_SettingsAddress = \"Assets/ProjectSettings/UIEffectProjectSettings.asset\";\n    yield return Addressables.LoadAssetAsync<UIEffectProjectSettings>(k_SettingsAddress);\n    while (UIEffectProjectSettings.shaderVariantCollection.WarmUpProgressively(5) == false) yield return null;\n}\n```\n\n<br><br>\n\n### :warning: Limitations\n\nHere are the limitations of UIEffect:\n\n- Shader variants used at runtime must be registered in the [Project Settings](#project-settings).\n- When using UIEffect with TextMeshProUGUI, `SamplingFilter.BlurMedium` and `SamplingFilter.BlurDetail` are not supported due to performance considerations.\n  - These will automatically fall back to `SamplingFilter.BlurFast`.\n- UIEffect supports default UI components (`Image`, `RawImage`, `Text`) and `TextMeshProUGUI`.\n  - If you want to use UIEffect with other components, create a issue or pull request.\n\n<br><br>\n\n## 🤝 Contributing\n\n### Issues\n\nIssues are incredibly valuable to this project:\n\n- Ideas provide a valuable source of contributions that others can make.\n- Problems help identify areas where this project needs improvement.\n- Questions indicate where contributors can enhance the user experience.\n\n### Pull Requests\n\nPull requests offer a fantastic way to contribute your ideas to this repository.  \nPlease refer to [CONTRIBUTING.md](https://github.com/mob-sakai/UIEffect/tree/main/CONTRIBUTING.md)\nand use [develop branch](https://github.com/mob-sakai/UIEffect/tree/develop) for development.\n\n### Support\n\nThis is an open-source project developed during my spare time.  \nIf you appreciate it, consider supporting me.  \nYour support allows me to dedicate more time to development. 😊\n\n[![](https://user-images.githubusercontent.com/12690315/66942881-03686280-f085-11e9-9586-fc0b6011029f.png)](https://github.com/users/mob-sakai/sponsorship)  \n[![](https://user-images.githubusercontent.com/12690315/50731629-3b18b480-11ad-11e9-8fad-4b13f27969c1.png)](https://www.patreon.com/join/2343451?)\n\n<br><br>\n\n## License\n\n* MIT\n\n## Author\n\n* ![](https://user-images.githubusercontent.com/12690315/96986908-434a0b80-155d-11eb-8275-85138ab90afa.png) [mob-sakai](https://github.com/mob-sakai) [![](https://img.shields.io/twitter/follow/mob_sakai.svg?label=Follow&style=social)](https://twitter.com/intent/follow?screen_name=mob_sakai) ![GitHub followers](https://img.shields.io/github/followers/mob-sakai?style=social)\n\n## See Also\n\n* GitHub page : https://github.com/mob-sakai/UIEffect\n* Releases : https://github.com/mob-sakai/UIEffect/releases\n* Issue tracker : https://github.com/mob-sakai/UIEffect/issues\n* Change log : https://github.com/mob-sakai/UIEffect/blob/main/Packages/src/CHANGELOG.md","Packages/src/CHANGELOG.md":"## [5.11.7](https://github.com/mob-sakai/UIEffect/compare/5.11.6...5.11.7) (2026-08-27)\n\n\n### Bug Fixes\n\n* ignore shader registry order changes ([014bba3](https://github.com/mob-sakai/UIEffect/commit/014bba3f5687ecfe41caa00d454f196baf7e3483)), closes [#407](https://github.com/mob-sakai/UIEffect/issues/407)\n\n## [5.11.6](https://github.com/mob-sakai/UIEffect/compare/5.11.5...5.11.6) (2026-08-17)\n\n\n### Bug Fixes\n\n* refresh material when changing shadow mode ([8bb782c](https://github.com/mob-sakai/UIEffect/commit/8bb782c90afb42d6569d8dfcfe022b007171f97e))\n\n## [5.11.5](https://github.com/mob-sakai/UIEffect/compare/5.11.4...5.11.5) (2026-07-23)\n\n\n### Bug Fixes\n\n* fix memory leak ([2dcb7f7](https://github.com/mob-sakai/UIEffect/commit/2dcb7f7e8678a2ffcf3832d0c5011aa1da6c3677)), closes [#405](https://github.com/mob-sakai/UIEffect/issues/405)\n\n## [5.11.4](https://github.com/mob-sakai/UIEffect/compare/5.11.3...5.11.4) (2026-07-22)\n\n\n### Bug Fixes\n\n* infinite asset import loop caused by unchanged ProjectSettings being marked dirty ([dbf8ae0](https://github.com/mob-sakai/UIEffect/commit/dbf8ae00f50470912d458fda853a34ef94d7d533)), closes [#404](https://github.com/mob-sakai/UIEffect/issues/404)\n\n## [5.11.3](https://github.com/mob-sakai/UIEffect/compare/5.11.2...5.11.3) (2026-07-04)\n\n\n### Bug Fixes\n\n* TextMeshPro support is not working ([9d98096](https://github.com/mob-sakai/UIEffect/commit/9d980961d6cf45e519ad96bf2e7260ed515f0f70)), closes [#402](https://github.com/mob-sakai/UIEffect/issues/402)\n\n## [5.11.2](https://github.com/mob-sakai/UIEffect/compare/5.11.1...5.11.2) (2026-07-02)\n\n\n### Bug Fixes\n\n* add null check ([161fc54](https://github.com/mob-sakai/UIEffect/commit/161fc546cad251ad798c2fd9e9472d687aa7f2c3))\n\n## [5.11.1](https://github.com/mob-sakai/UIEffect/compare/5.11.0...5.11.1) (2026-06-29)\n\n\n### Bug Fixes\n\n* support \"disable domain reload\" on Unity 6.6 or later ([a556c28](https://github.com/mob-sakai/UIEffect/commit/a556c282210303d9e7a7c284bb4b41ef3a35e3e1))\n\n# [5.11.0](https://github.com/mob-sakai/UIEffect/compare/5.10.9...5.11.0) (2026-06-25)\n\n\n### Bug Fixes\n\n* enable/disable Gameobject break effect with 'TrueShadow' ([730aa2b](https://github.com/mob-sakai/UIEffect/commit/730aa2bb4d872ddab63f2dad611a063cefa07064)), closes [#400](https://github.com/mob-sakai/UIEffect/issues/400)\n* select TMP submesh by mesh before material ([f538ef2](https://github.com/mob-sakai/UIEffect/commit/f538ef2cba3d4d76f6683bccee65d5a9694dad37))\n* some fix ([b6b538f](https://github.com/mob-sakai/UIEffect/commit/b6b538f64f0b06ddfb4ad2edd6b7db6dc1d067d8))\n* Support for skipping \"reload domain\" ([ec3fb13](https://github.com/mob-sakai/UIEffect/commit/ec3fb13c111638781bf852e2a4a4747fbfeb7d3a))\n\n\n### Features\n\n* add option to remove from preloadedAssets when build player ([e955715](https://github.com/mob-sakai/UIEffect/commit/e955715c99c474881e0b27ecc325061ce0d866a0)), closes [#393](https://github.com/mob-sakai/UIEffect/issues/393)\n* support XBOX One/Series ([72bb1c5](https://github.com/mob-sakai/UIEffect/commit/72bb1c51318829e7ced3b1436892a5969aedd9a3)), closes [#385](https://github.com/mob-sakai/UIEffect/issues/385) [#394](https://github.com/mob-sakai/UIEffect/issues/394)\n\n## [5.10.9](https://github.com/mob-sakai/UIEffect/compare/5.10.8...5.10.9) (2026-06-08)\n\n\n### Bug Fixes\n\n* ambiguous call to 'lerp' in shader ([cd68b36](https://github.com/mob-sakai/UIEffect/commit/cd68b364c48e979d6ef227e53a522f096e0df47a)), closes [#390](https://github.com/mob-sakai/UIEffect/issues/390)\n* Clarify that the `ShaderGraph support` is available only in Unity 2023.2/6.0 or later ([57031c3](https://github.com/mob-sakai/UIEffect/commit/57031c3e3c2d64ee76d3e568d378cd54a5e84af5)), closes [#391](https://github.com/mob-sakai/UIEffect/issues/391)\n* support Unity 6.5 or later ([2d6f7ed](https://github.com/mob-sakai/UIEffect/commit/2d6f7ed63dd83b3f90c2fa6d93a3c84afd6de866)), closes [#392](https://github.com/mob-sakai/UIEffect/issues/392) [#398](https://github.com/mob-sakai/UIEffect/issues/398)\n* UIEffect.detailColor is not working ([f3da972](https://github.com/mob-sakai/UIEffect/commit/f3da972c0cba526f7784207c2d8ab48b5dd692f3)), closes [#399](https://github.com/mob-sakai/UIEffect/issues/399)\n\n## [5.10.8](https://github.com/mob-sakai/UIEffect/compare/5.10.7...5.10.8) (2026-01-16)\n\n\n### Bug Fixes\n\n* Canvas not properly cached when objects are outside Canvas ([4a4e50e](https://github.com/mob-sakai/UIEffect/commit/4a4e50e01fb50925352c73b27901024494ae933c))\n\n## [5.10.7](https://github.com/mob-sakai/UIEffect/compare/5.10.6...5.10.7) (2025-12-18)\n\n\n### Bug Fixes\n\n* support Unity 6000.4 ([7fc0c73](https://github.com/mob-sakai/UIEffect/commit/7fc0c7364d8dc39e26eac3c3b79797b139f09817))\n\n## [5.10.6](https://github.com/mob-sakai/UIEffect/compare/5.10.5...5.10.6) (2025-12-18)\n\n\n### Bug Fixes\n\n* fixed an issue where shader variants were not registered automatically ([6b79864](https://github.com/mob-sakai/UIEffect/commit/6b79864a394d79e6ad13f64af1d521fab1f781a7)), closes [#383](https://github.com/mob-sakai/UIEffect/issues/383)\n\n## [5.10.5](https://github.com/mob-sakai/UIEffect/compare/5.10.4...5.10.5) (2025-11-20)\n\n\n### Bug Fixes\n\n* graphic disappears when changing filters from code ([8776057](https://github.com/mob-sakai/UIEffect/commit/87760570ec7f4e2ca395cfaa0d2ab5d28c9cf9f3)), closes [#382](https://github.com/mob-sakai/UIEffect/issues/382)\n\n## [5.10.4](https://github.com/mob-sakai/UIEffect/compare/5.10.3...5.10.4) (2025-10-27)\n\n\n### Bug Fixes\n\n* remove `sealed` from `UIEffect` and `UIEffectReplica` ([2fd87e9](https://github.com/mob-sakai/UIEffect/commit/2fd87e909af65bf88a9c39cd157dfb06a56b3af0)), closes [#379](https://github.com/mob-sakai/UIEffect/issues/379)\n\n## [5.10.3](https://github.com/mob-sakai/UIEffect/compare/5.10.2...5.10.3) (2025-10-22)\n\n\n### Bug Fixes\n\n* displays as black rectangle when opening editor ([4a8d341](https://github.com/mob-sakai/UIEffect/commit/4a8d341625f73d70c512f7e6f0b864be1adbf459)), closes [#376](https://github.com/mob-sakai/UIEffect/issues/376)\n\n## [5.10.2](https://github.com/mob-sakai/UIEffect/compare/5.10.1...5.10.2) (2025-10-16)\n\n\n### Bug Fixes\n\n* [improve performance] code optimization ([e6fb78a](https://github.com/mob-sakai/UIEffect/commit/e6fb78a0f67ed6f70be08259f674ab2f83364bd7))\n\n## [5.10.1](https://github.com/mob-sakai/UIEffect/compare/5.10.0...5.10.1) (2025-10-06)\n\n\n### Bug Fixes\n\n* [improve performance] `UpdateViewMatrix` is called even though (direct-)parent canvas is disabled ([533d7b8](https://github.com/mob-sakai/UIEffect/commit/533d7b8c0a33871b1849fbda862d4fa1899822f4)), closes [#373](https://github.com/mob-sakai/UIEffect/issues/373)\n\n# [5.10.0](https://github.com/mob-sakai/UIEffect/compare/5.9.7...5.10.0) (2025-09-26)\n\n\n### Bug Fixes\n\n* `TmpProxy` causes loss of modifications from other `IMeshModifiers` ([c4202b4](https://github.com/mob-sakai/UIEffect/commit/c4202b45d28fa84567a5671baaef8fa3e3df85dc)), closes [#371](https://github.com/mob-sakai/UIEffect/issues/371)\n* display may disappear when using TMP SubMesh (multi-language or sprites, etc.) ([b4adb32](https://github.com/mob-sakai/UIEffect/commit/b4adb325120eeed64af1d9cb2468a1e1e8e10812)), closes [#372](https://github.com/mob-sakai/UIEffect/issues/372)\n* TMP Text sprite submesh lost when changing fontMaterial ([59874dd](https://github.com/mob-sakai/UIEffect/commit/59874ddffe356f927dc8ff9b157c54043e149522)), closes [#368](https://github.com/mob-sakai/UIEffect/issues/368)\n\n\n### Features\n\n* [improve performance] merged apply_color function and reduced shader compilation size ([ce69258](https://github.com/mob-sakai/UIEffect/commit/ce692580a33c0c433fd7fadb64a3dcda0121b2ff))\n* [improve performance] various view matrices are only updated when necessary ([6c808aa](https://github.com/mob-sakai/UIEffect/commit/6c808aa3417450fd1ce0fc6fbfe0adffdff9a79a))\n\n## [5.9.7](https://github.com/mob-sakai/UIEffect/compare/5.9.6...5.9.7) (2025-09-01)\n\n\n### Bug Fixes\n\n* edges of `TransitionFilter.Shiny` appear sharp ([b077d97](https://github.com/mob-sakai/UIEffect/commit/b077d97ed706acbbdd3b20e765ec0552fa464f9b)), closes [#366](https://github.com/mob-sakai/UIEffect/issues/366)\n* error message sometimes after importing assets ([3207105](https://github.com/mob-sakai/UIEffect/commit/3207105a067801696de789d282c74a93b798ed57)), closes [#365](https://github.com/mob-sakai/UIEffect/issues/365)\n* flickering issue when scale Y changes when used `ShadowMode` with TextMeshPro ([4cca2fb](https://github.com/mob-sakai/UIEffect/commit/4cca2fb5ab34ea454ff8df3def5f1730a71a198c)), closes [#367](https://github.com/mob-sakai/UIEffect/issues/367)\n* skip monitoring TMP objects that can ignore Y-axis scaling ([d1adb33](https://github.com/mob-sakai/UIEffect/commit/d1adb33884971aa7d6c473fcd08cdf25e58cd261))\n\n## [5.9.6](https://github.com/mob-sakai/UIEffect/compare/5.9.5...5.9.6) (2025-07-17)\n\n\n### Bug Fixes\n\n* `ColorFilter` does not output intended color when vertex color is not white ([9dffdb0](https://github.com/mob-sakai/UIEffect/commit/9dffdb0ed88750a915fdd5e437b79ab766ce45c2)), closes [#363](https://github.com/mob-sakai/UIEffect/issues/363)\n* draw calls increase even when using `UIEffectReplica` ([83128eb](https://github.com/mob-sakai/UIEffect/commit/83128ebb09305e4c15a58968a94550179e96ffac)), closes [#364](https://github.com/mob-sakai/UIEffect/issues/364)\n\n## [5.9.5](https://github.com/mob-sakai/UIEffect/compare/5.9.4...5.9.5) (2025-06-26)\n\n\n### Bug Fixes\n\n* `GetGradientKeys` and `GetTransitionGradientKeys` cannot get GradientMode ([fd2d1b8](https://github.com/mob-sakai/UIEffect/commit/fd2d1b80592ac4ea62e15b6150be63964b113fa2)), closes [#358](https://github.com/mob-sakai/UIEffect/issues/358)\n\n## [5.9.4](https://github.com/mob-sakai/UIEffect/compare/5.9.3...5.9.4) (2025-06-25)\n\n\n### Bug Fixes\n\n* colors specified in UIEffect are output differently in linear color space ([0d7fb1e](https://github.com/mob-sakai/UIEffect/commit/0d7fb1eb63881b67f2658567750a83c92187df35)), closes [#359](https://github.com/mob-sakai/UIEffect/issues/359)\n\n## [5.9.3](https://github.com/mob-sakai/UIEffect/compare/5.9.2...5.9.3) (2025-06-23)\n\n\n### Bug Fixes\n\n* add `GetGradientKeys` and `GetTransitionGradientKeys` APIs ([a0c3e49](https://github.com/mob-sakai/UIEffect/commit/a0c3e4997af181ae16744c53ad3867e2106ccff3)), closes [#358](https://github.com/mob-sakai/UIEffect/issues/358)\n* support world canvas without UI events ([cadbb8d](https://github.com/mob-sakai/UIEffect/commit/cadbb8d68d17a2ec7e2d6e8e885d711e61fa53af)), closes [#356](https://github.com/mob-sakai/UIEffect/issues/356) [#357](https://github.com/mob-sakai/UIEffect/issues/357)\n\n## [5.9.2](https://github.com/mob-sakai/UIEffect/compare/5.9.1...5.9.2) (2025-06-12)\n\n\n### Bug Fixes\n\n* TextMeshPro 3.2.0-pre support ([804b48c](https://github.com/mob-sakai/UIEffect/commit/804b48c73ec648eaceb720cb79551fdbf3729fc9)), closes [#355](https://github.com/mob-sakai/UIEffect/issues/355)\n\n## [5.9.1](https://github.com/mob-sakai/UIEffect/compare/5.9.0...5.9.1) (2025-06-11)\n\n\n### Bug Fixes\n\n* prefabs will be deselected when editing them ([8addbad](https://github.com/mob-sakai/UIEffect/commit/8addbad4941340807d824e295280473d197d889f)), closes [#354](https://github.com/mob-sakai/UIEffect/issues/354)\n\n# [5.9.0](https://github.com/mob-sakai/UIEffect/compare/5.8.7...5.9.0) (2025-06-09)\n\n\n### Bug Fixes\n\n* `GradationMode.RadialFast` and `GradationMode.RadialDetail` are obsolete ([1a923dd](https://github.com/mob-sakai/UIEffect/commit/1a923dd72c263de5480d71bd17b697feca317ef1))\n* soft masking not working with `DetailFilter.Masking` ([ffdeaa7](https://github.com/mob-sakai/UIEffect/commit/ffdeaa7e2f1c2a9ccb7eb21d5674e2c19021aef9))\n\n\n### Features\n\n* `GradationGradient` supports HDR color ([50f6b3c](https://github.com/mob-sakai/UIEffect/commit/50f6b3c5d20b93a2245f6d54b6eb4bc13565c3b5))\n* add `Clear` method to reset properties via script ([264c453](https://github.com/mob-sakai/UIEffect/commit/264c453bb6ebad08ef950b0cec2f38e60a1710d8)), closes [#337](https://github.com/mob-sakai/UIEffect/issues/337)\n* add `GradationMode.RadialGradient` feature ([179ec89](https://github.com/mob-sakai/UIEffect/commit/179ec89a0215af9d8046e150d98fa06371155e93)), closes [#348](https://github.com/mob-sakai/UIEffect/issues/348)\n* add `GradationReverse` option for gradient ([c0fec32](https://github.com/mob-sakai/UIEffect/commit/c0fec32d502ec1f9d03172ed200f4d9233506eb9)), closes [#348](https://github.com/mob-sakai/UIEffect/issues/348)\n* add `GradationWrapMode` option ([f98929d](https://github.com/mob-sakai/UIEffect/commit/f98929d7e9656b4c02d5545b3893748c963d1118))\n* add `TransitionFilter.Blaze` feature ([ed4716d](https://github.com/mob-sakai/UIEffect/commit/ed4716d7ada102fe0053480941925e9f27b1c2c3))\n* add new built-in presets ([4f2c9f1](https://github.com/mob-sakai/UIEffect/commit/4f2c9f12b5e115bab1418a7a0b1187269a041fc4))\n* improve performance for TextMeshPro ([6af520e](https://github.com/mob-sakai/UIEffect/commit/6af520ed408f2e5eb4d84ec0df484338719ebc8e))\n* timeline package support ([742a5cd](https://github.com/mob-sakai/UIEffect/commit/742a5cd8dc47500de4b111a132d7a8b242844342)), closes [#347](https://github.com/mob-sakai/UIEffect/issues/347)\n* update shaders in samples ([4c6cd11](https://github.com/mob-sakai/UIEffect/commit/4c6cd11d86582f2351c40374180828ad1c8955c3))\n\n## [5.8.7](https://github.com/mob-sakai/UIEffect/compare/5.8.6...5.8.7) (2025-06-09)\n\n\n### Bug Fixes\n\n* `GradationGradient` and `TransitionGradient` in reprica will be not dirty (editor) ([58b197e](https://github.com/mob-sakai/UIEffect/commit/58b197e551aea8efca10e12da8df132853d4a24e))\n* changes not reflected in rendering when TextMeshPro is cleared ([f508eb3](https://github.com/mob-sakai/UIEffect/commit/f508eb32caf6757eb4c27b98ac29a1582dcd14b4)), closes [#351](https://github.com/mob-sakai/UIEffect/issues/351)\n* setting `gradationScale` to 0 throws `DivideByZeroException` ([ecd265e](https://github.com/mob-sakai/UIEffect/commit/ecd265e4828c7f81c96a76c16df147b6c4804429))\n\n## [5.8.6](https://github.com/mob-sakai/UIEffect/compare/5.8.5...5.8.6) (2025-05-22)\n\n\n### Bug Fixes\n\n* some methods may be called multiple times when domain reload on play is disabled (editor) ([3b52c3a](https://github.com/mob-sakai/UIEffect/commit/3b52c3a8fc67980d426b8e4e2ed2067c725ca262))\n\n## [5.8.5](https://github.com/mob-sakai/UIEffect/compare/5.8.4...5.8.5) (2025-05-22)\n\n\n### Bug Fixes\n\n* skip processing when graphic is invalid ([5cd48a4](https://github.com/mob-sakai/UIEffect/commit/5cd48a463309270ec3d6501bde2add9944bbaf02))\n* TextMeshPro strikethrough and underline not displaying ([68ebae2](https://github.com/mob-sakai/UIEffect/commit/68ebae28e02045cb45996bf5b77d7d93d2f0ca82)), closes [#344](https://github.com/mob-sakai/UIEffect/issues/344)\n* TMP SubMeshUI generates overhead every frame (since 5.6.0) ([791d867](https://github.com/mob-sakai/UIEffect/commit/791d8670761902466d81412d832cddf013cd28cd)), closes [#343](https://github.com/mob-sakai/UIEffect/issues/343) [#345](https://github.com/mob-sakai/UIEffect/issues/345)\n\n## [5.8.4](https://github.com/mob-sakai/UIEffect/compare/5.8.3...5.8.4) (2025-04-30)\n\n\n### Bug Fixes\n\n* NRE while canvas is disabled ([a3773e3](https://github.com/mob-sakai/UIEffect/commit/a3773e33028c60517fb4e6c534f6280194df8e64)), closes [#342](https://github.com/mob-sakai/UIEffect/issues/342)\n\n## [5.8.3](https://github.com/mob-sakai/UIEffect/compare/5.8.2...5.8.3) (2025-04-30)\n\n\n### Bug Fixes\n\n* the alpha of the gradation color and gradient was being ignored ([3807e4c](https://github.com/mob-sakai/UIEffect/commit/3807e4c69aefaef04b2245522e7c5085ccc65a36)), closes [#341](https://github.com/mob-sakai/UIEffect/issues/341)\n\n## [5.8.2](https://github.com/mob-sakai/UIEffect/compare/5.8.1...5.8.2) (2025-04-23)\n\n\n### Bug Fixes\n\n* `Flip` is ignored when loading a preset ([e1f3abf](https://github.com/mob-sakai/UIEffect/commit/e1f3abf7a65b62718b28e33ac2f7d700c3ae3f5a))\n* fix detail color ([90ab16c](https://github.com/mob-sakai/UIEffect/commit/90ab16c3fd46435ebf7c8e47ffb4ec521d2f61c9))\n* indicate in the inspector using tooltips and asterisks that `Rotation` and `Keep Aspect Ratio` are shared properties ([2cca822](https://github.com/mob-sakai/UIEffect/commit/2cca822413aa7580e1eb777c3295d1de928cd65f))\n\n## [5.8.1](https://github.com/mob-sakai/UIEffect/compare/5.8.0...5.8.1) (2025-04-17)\n\n\n### Bug Fixes\n\n* built-in presets cannot be used with `UIEffectReplica` ([1106f4b](https://github.com/mob-sakai/UIEffect/commit/1106f4bf4632e1372d44ced9a38e98209a6b55e8))\n* New presets ignore `DetailColor` property ([1143fbb](https://github.com/mob-sakai/UIEffect/commit/1143fbb84a1e08817de93f1349ee5cdad0972db5)), closes [#336](https://github.com/mob-sakai/UIEffect/issues/336)\n* prevent built-in preset assets from being editable ([0898d73](https://github.com/mob-sakai/UIEffect/commit/0898d730add42970fb74bf2ad8aca9809bf6dd39))\n\n# [5.8.0](https://github.com/mob-sakai/UIEffect/compare/5.7.0...5.8.0) (2025-04-17)\n\n\n### Bug Fixes\n\n* `ShadowMode.Mirror` does not flip the effect ([37daad0](https://github.com/mob-sakai/UIEffect/commit/37daad01c4f3f4c259650b1493aeae204e0bd247))\n* fix alpha clipping for ShaderGraph ([ae177a8](https://github.com/mob-sakai/UIEffect/commit/ae177a800cba1561b523292279d7986d4eff9f9c))\n* unable to add editor presets as runtime presets to project settings ([726bb10](https://github.com/mob-sakai/UIEffect/commit/726bb100a0ad327619634ea73ccdccc36276d0d0)), closes [#330](https://github.com/mob-sakai/UIEffect/issues/330)\n\n\n### Features\n\n* add `DetailColor` property ([30bf783](https://github.com/mob-sakai/UIEffect/commit/30bf783320398d68b90b09b0dcf93738b4683e00)), closes [#332](https://github.com/mob-sakai/UIEffect/issues/332)\n* ScriptableObject based preset system ([f8682f3](https://github.com/mob-sakai/UIEffect/commit/f8682f3c9889fb56ff3cd9010934f998e121553a)), closes [#333](https://github.com/mob-sakai/UIEffect/issues/333)\n\n# [5.7.0](https://github.com/mob-sakai/UIEffect/compare/5.6.4...5.7.0) (2025-04-11)\n\n\n### Bug Fixes\n\n* colors appeared darker when alpha was low ([21172f3](https://github.com/mob-sakai/UIEffect/commit/21172f37c21792906ac9e33827c771d388397653))\n* shrink shader variants for color filters ([7f60a56](https://github.com/mob-sakai/UIEffect/commit/7f60a56a9af6b4ecee223b466f1b2499af0194f4))\n\n\n### Features\n\n* `UIEffectReplica.flip` has been deprecated ([6af34e2](https://github.com/mob-sakai/UIEffect/commit/6af34e2994378fd33025b41fe08898b552aa08ab))\n* add `GradationIntensity` and `GradationColorFilter` properties ([a6781b9](https://github.com/mob-sakai/UIEffect/commit/a6781b92899c38f49eccfebf4173028955a5aced))\n* calculate the normalized position on the shader side ([01bbeed](https://github.com/mob-sakai/UIEffect/commit/01bbeedde7cf2d757d6d295475f0ad9acd24dce3)), closes [#323](https://github.com/mob-sakai/UIEffect/issues/323) [#324](https://github.com/mob-sakai/UIEffect/issues/324)\n* ShaderGraph support ([2dd2e26](https://github.com/mob-sakai/UIEffect/commit/2dd2e261666b611be3a1fd5ac112db34fd99038e)), closes [#326](https://github.com/mob-sakai/UIEffect/issues/326)\n\n## [5.6.4](https://github.com/mob-sakai/UIEffect/compare/5.6.3...5.6.4) (2025-04-10)\n\n\n### Bug Fixes\n\n* avoid potential allocations ([26da24d](https://github.com/mob-sakai/UIEffect/commit/26da24dbc4022dcd71e7a58e5f02a6922ba2ddff))\n* optional shaders do not support all shader combinations ([6014ab5](https://github.com/mob-sakai/UIEffect/commit/6014ab54d010872f8fee63fc961ac5ab2edd08e1))\n\n## [5.6.3](https://github.com/mob-sakai/UIEffect/compare/5.6.2...5.6.3) (2025-04-06)\n\n\n### Bug Fixes\n\n* fix a potential `ArgumentOutOfRangeException` that could occur when changing the FontAsset in TextMeshPro ([3b095bc](https://github.com/mob-sakai/UIEffect/commit/3b095bcebd8b1264c373b8b71c27d3c35f673f3b)), closes [#327](https://github.com/mob-sakai/UIEffect/issues/327)\n\n## [5.6.2](https://github.com/mob-sakai/UIEffect/compare/5.6.1...5.6.2) (2025-04-04)\n\n\n### Bug Fixes\n\n* fix a potential `ArgumentOutOfRangeException` that could occur when changing the FontAsset in TextMeshPro ([909281c](https://github.com/mob-sakai/UIEffect/commit/909281c66b702d8497e9f847c91b688716b9c6a7)), closes [#327](https://github.com/mob-sakai/UIEffect/issues/327)\n* Remove unnecessary vertex expansion ([974e3e8](https://github.com/mob-sakai/UIEffect/commit/974e3e8769d456c5cdd8eb1767a7cf57ab4d52fc))\n* undo now works correctly after clicking the 'Clear' button in the inspector ([75ed355](https://github.com/mob-sakai/UIEffect/commit/75ed355e27faf8962390eb6788e1887ffd1b5f89))\n\n## [5.6.1](https://github.com/mob-sakai/UIEffect/compare/5.6.0...5.6.1) (2025-03-28)\n\n\n### Bug Fixes\n\n* changes were not correctly marked as dirty when loading presets ([76be0fc](https://github.com/mob-sakai/UIEffect/commit/76be0fc860c27b89235b7fb9a766dcc38b3d9924))\n\n# [5.6.0](https://github.com/mob-sakai/UIEffect/compare/5.5.3...5.6.0) (2025-03-28)\n\n\n### Bug Fixes\n\n* fix edge detection ([9462170](https://github.com/mob-sakai/UIEffect/commit/946217069f10714798070481d8576f5470e243db))\n* fix project settings icon ([202601c](https://github.com/mob-sakai/UIEffect/commit/202601c96d6fb564ee5d6b8868b0ff0a8dba0ba1))\n* the strength of ColorGlow, TransitionColorGlow, and ShadowColorGlow now changes according to intensity ([aa4ec8d](https://github.com/mob-sakai/UIEffect/commit/aa4ec8d9c449bfe361aa277e25cbb389e0daa983)), closes [#316](https://github.com/mob-sakai/UIEffect/issues/316)\n* UIEffect with TextMeshPro SubMeshUI appears black in the editor when saving assets ([de91871](https://github.com/mob-sakai/UIEffect/commit/de918718d062979c8e9b4202b6b2ae389ae10bab))\n\n\n### Features\n\n* `TransitionAutoPlaySpeed`, `TransitionTexSpeed`, and `EdgeShinyAutoPlaySpeed` are previewed only when the object is selected in edit mode ([952a94f](https://github.com/mob-sakai/UIEffect/commit/952a94f50b3ae4279a48b03d019f341e46b2f5b7)), closes [#319](https://github.com/mob-sakai/UIEffect/issues/319)\n* add 'Flip' feature ([def49c3](https://github.com/mob-sakai/UIEffect/commit/def49c34f5b963c8b0cce6fb8cace3f7d93b5a1e))\n* add `Detail Filter` feature ([3e2c5c1](https://github.com/mob-sakai/UIEffect/commit/3e2c5c1613d9a2c08487d94c4eef28f066f2eb7b))\n* add `EdgeColorGlow` option ([53db1e6](https://github.com/mob-sakai/UIEffect/commit/53db1e62546384f04b9c526df2623c4598dd34bf))\n* add `onChangeRate` event for UIEffectTweener ([8ad57c8](https://github.com/mob-sakai/UIEffect/commit/8ad57c828ef4f1d7df6dd22c1edb7af3efa04d75)), closes [#321](https://github.com/mob-sakai/UIEffect/issues/321)\n* add `TransitionTexSpeed` option ([6b8dc5e](https://github.com/mob-sakai/UIEffect/commit/6b8dc5ec338590d909511eba3bb1b2e0ec6627f3))\n* add a tool that automatically fixes shaders when 'TextMeshPro Essential Resources' are located in a non-default path ([8388d59](https://github.com/mob-sakai/UIEffect/commit/8388d590457755cda0699835b37b5bf0673c4386))\n* add built-in presets ([3db94e0](https://github.com/mob-sakai/UIEffect/commit/3db94e00f83195ff90d26ee270c7984825fa22b7))\n* add shaders for TextMeshPro Overlay/SSD ([51cd6d8](https://github.com/mob-sakai/UIEffect/commit/51cd6d8525a12581c8afd4ab5d16e5968e15c8fe))\n* Allow specifying a preset as the target for `UIEffectReplica` ([cb0e8d2](https://github.com/mob-sakai/UIEffect/commit/cb0e8d283bb8f9085d4910051b5ae0b77368db76))\n* custom transform for transition and gradation ([045db9c](https://github.com/mob-sakai/UIEffect/commit/045db9c3b79234cd12bdfb4ea52898b7d86240af))\n* expose color subfields as float-type public properties ([396d06f](https://github.com/mob-sakai/UIEffect/commit/396d06f774e10adee84d06156a7fc8723d986bbd)), closes [#321](https://github.com/mob-sakai/UIEffect/issues/321)\n* load presets partially and append to existing instance ([6542543](https://github.com/mob-sakai/UIEffect/commit/654254342265fc239804e60a64d01b80076e5e8e))\n* separate reverse curve for UIEffectTweener ([2540b75](https://github.com/mob-sakai/UIEffect/commit/2540b75349af92f1359433e73ffa3b5400479b02)), closes [#312](https://github.com/mob-sakai/UIEffect/issues/312)\n* support `SoftMaskForUGUI ` package with `UIEffect` ([65457e2](https://github.com/mob-sakai/UIEffect/commit/65457e263644c36cd772ad1f42fb9fb3f84ab753)), closes [#270](https://github.com/mob-sakai/UIEffect/issues/270)\n* support UIFlip as v4 compatible component ([e965b9e](https://github.com/mob-sakai/UIEffect/commit/e965b9e9ab33dcfab067542abf2f19bc1d5243fc)), closes [#322](https://github.com/mob-sakai/UIEffect/issues/322)\n* update demo sample ([abc9a41](https://github.com/mob-sakai/UIEffect/commit/abc9a4184c4aeac85287a882d174f9cdc2c28c04)), closes [#318](https://github.com/mob-sakai/UIEffect/issues/318) [#320](https://github.com/mob-sakai/UIEffect/issues/320)\n\n## [5.5.3](https://github.com/mob-sakai/UIEffect/compare/5.5.2...5.5.3) (2025-03-06)\n\n\n### Bug Fixes\n\n* blur with 'Filled' Image type may cause error ([f0a7642](https://github.com/mob-sakai/UIEffect/commit/f0a76424e690355c101cc2e12183d1a7e77b16c3)), closes [#313](https://github.com/mob-sakai/UIEffect/issues/313)\n* IL2CPP build fails on older versions of Unity ([1af89af](https://github.com/mob-sakai/UIEffect/commit/1af89af2c58320f67b8d753767b3b4cf905f844d)), closes [#315](https://github.com/mob-sakai/UIEffect/issues/315)\n\n## [5.5.2](https://github.com/mob-sakai/UIEffect/compare/5.5.1...5.5.2) (2025-02-28)\n\n\n### Bug Fixes\n\n* `PlayOnEnable.Reverse` in UIEffectTweener does not work ([3f5a7dc](https://github.com/mob-sakai/UIEffect/commit/3f5a7dcd2d8248b9e47fb9d38c083f26b798e063)), closes [#310](https://github.com/mob-sakai/UIEffect/issues/310)\n* `TransitionFilter` and `GradationMode` do not work correctly when the initial scale is 0 ([bdbf293](https://github.com/mob-sakai/UIEffect/commit/bdbf293c1489c0b248078969b37ec66890620d44)), closes [#311](https://github.com/mob-sakai/UIEffect/issues/311)\n* component icons will no longer be displayed in the scene view (Unity 2021.2 or later) ([40ff828](https://github.com/mob-sakai/UIEffect/commit/40ff828ff0697dc8f6597cfcf094cc63532a19dd))\n* fix potential issues ([a748adf](https://github.com/mob-sakai/UIEffect/commit/a748adf1bde5e400fcc84ec902a1438867105f75))\n* reset time button does not work correctly in the inspector when `UIEffectTweener.direction=Reverse` in the editor ([8513970](https://github.com/mob-sakai/UIEffect/commit/8513970e6f71d393430a573bfb0207428998bee1)), closes [#310](https://github.com/mob-sakai/UIEffect/issues/310)\n\n## [5.5.1](https://github.com/mob-sakai/UIEffect/compare/5.5.0...5.5.1) (2025-02-14)\n\n\n### Bug Fixes\n\n* fix v4 compatible components ([6f6a8c9](https://github.com/mob-sakai/UIEffect/commit/6f6a8c95f878a290b1c4238cd0519f14febc04b6))\n* fully visible when the transition rate is set to 1 ([0a99bb7](https://github.com/mob-sakai/UIEffect/commit/0a99bb7765443a84070e19c9ea0096808442932e)), closes [#309](https://github.com/mob-sakai/UIEffect/issues/309)\n* UIEffect with TextMeshPro appears black in the editor when saving scene ([8cbcd76](https://github.com/mob-sakai/UIEffect/commit/8cbcd765ed9e11c38e3257191c2fc7dcd2c9916e))\n\n# [5.5.0](https://github.com/mob-sakai/UIEffect/compare/5.4.0...5.5.0) (2025-02-12)\n\n\n### Features\n\n* add `GradationMode.Diagonal` with 4 colors ([b72a1c0](https://github.com/mob-sakai/UIEffect/commit/b72a1c05c6d1d7b3c0aa11582d4a97da80d7fce9)), closes [#308](https://github.com/mob-sakai/UIEffect/issues/308)\n* add built-in presets ([8930b56](https://github.com/mob-sakai/UIEffect/commit/8930b563cb580463e2265483ccd3a42cb84e644b))\n\n# [5.4.0](https://github.com/mob-sakai/UIEffect/compare/5.3.4...5.4.0) (2025-02-10)\n\n\n### Bug Fixes\n\n* gradient color is not updated when calling the `SetGradientKeys` method ([a959fdd](https://github.com/mob-sakai/UIEffect/commit/a959fddd34a93dd0846369938b1cb6be514eee2d))\n\n\n### Features\n\n* tweener supports `EdgeMode.Shiny` ([32558d4](https://github.com/mob-sakai/UIEffect/commit/32558d4481de31ed9020c82861dc2a2d8ca7d53c)), closes [#307](https://github.com/mob-sakai/UIEffect/issues/307)\n\n## [5.3.4](https://github.com/mob-sakai/UIEffect/compare/5.3.3...5.3.4) (2025-02-10)\n\n\n### Bug Fixes\n\n* UIEffect v5.3.3 with TextMeshPro is not working in play mode in editor ([365c43e](https://github.com/mob-sakai/UIEffect/commit/365c43e21dcaaff349cf1362f9bd25b7deb163f7)), closes [#306](https://github.com/mob-sakai/UIEffect/issues/306)\n\n## [5.3.3](https://github.com/mob-sakai/UIEffect/compare/5.3.2...5.3.3) (2025-02-06)\n\n\n### Bug Fixes\n\n* when modifying TextMeshPro vertices, element disapear ([7529a7c](https://github.com/mob-sakai/UIEffect/commit/7529a7c4cd8db27a6d3312bce0a6ed6b13e40f35)), closes [#305](https://github.com/mob-sakai/UIEffect/issues/305)\n\n## [5.3.2](https://github.com/mob-sakai/UIEffect/compare/5.3.1...5.3.2) (2025-02-04)\n\n\n### Bug Fixes\n\n* some effects are not working correctly for TextMeshProUGUI in Unity 6 ([63de374](https://github.com/mob-sakai/UIEffect/commit/63de3742ecd7fcdcaa8dcca8dc104c7288291211))\n\n## [5.3.1](https://github.com/mob-sakai/UIEffect/compare/5.3.0...5.3.1) (2025-01-27)\n\n\n### Bug Fixes\n\n* shader keywords for UIEfect are not recognized in Unity 6 ([fd39abf](https://github.com/mob-sakai/UIEffect/commit/fd39abf5a71138919f8feee587576ba187075304)), closes [#301](https://github.com/mob-sakai/UIEffect/issues/301)\n\n# [5.3.0](https://github.com/mob-sakai/UIEffect/compare/5.2.4...5.3.0) (2025-01-26)\n\n\n### Features\n\n* `SamplingFilter.EdgeAlpha` and `SamplingFilter.EdgeLuminance` now support the `Sampling Width` property for edge width ([33b1177](https://github.com/mob-sakai/UIEffect/commit/33b1177815b935a887c5a8918748cbeafec32b6b))\n* add `EdgeMode` feature ([eadb477](https://github.com/mob-sakai/UIEffect/commit/eadb477bcd91f8909bfa7b8976241411363ee12c))\n* add `ResetOnEnable` option for `UIEffectTweener` ([e326bb7](https://github.com/mob-sakai/UIEffect/commit/e326bb77537b921df775646142105a490ae54851)), closes [#299](https://github.com/mob-sakai/UIEffect/issues/299)\n* add `TransitionAutoSpeed` property ([7a765c3](https://github.com/mob-sakai/UIEffect/commit/7a765c32d87f6dfbdb990d5b3a272dd80696b374))\n* add `TransitionFilter.Pattern` feature ([b57e98b](https://github.com/mob-sakai/UIEffect/commit/b57e98b64c61a7c7eb3ca97f3bd7e909956ee469))\n\n## [5.2.4](https://github.com/mob-sakai/UIEffect/compare/5.2.3...5.2.4) (2025-01-26)\n\n\n### Bug Fixes\n\n* properties may not update correctly when changed via code or animation ([5994f88](https://github.com/mob-sakai/UIEffect/commit/5994f8875ed2280e5c863c30f9c7900d4dce70ed)), closes [#300](https://github.com/mob-sakai/UIEffect/issues/300)\n\n## [5.2.3](https://github.com/mob-sakai/UIEffect/compare/5.2.2...5.2.3) (2025-01-23)\n\n\n### Bug Fixes\n\n* `SamplingFilter.None` now correctly respects the sampling scale setting ([bc1578b](https://github.com/mob-sakai/UIEffect/commit/bc1578b0ca91b830b976bf200d387d0ac6963ae6))\n* fix the shadow mode inspector in editor ([da53585](https://github.com/mob-sakai/UIEffect/commit/da535854ccbeeb98b2556423425d39058bd5f479))\n* UIEffect may not work correctly when using `FallbackAtlas` with TextMeshProUGUI ([d3779f9](https://github.com/mob-sakai/UIEffect/commit/d3779f9f57d0410fa4526527ebed30885bfbc2dd)), closes [#298](https://github.com/mob-sakai/UIEffect/issues/298)\n\n## [5.2.2](https://github.com/mob-sakai/UIEffect/compare/5.2.1...5.2.2) (2025-01-18)\n\n\n### Bug Fixes\n\n* in Unity 6, `Shadow Color` has no effect on TextMeshPro ([6e4d4ab](https://github.com/mob-sakai/UIEffect/commit/6e4d4ab03db786e4c28d0f2c57d9e58655c5d029)), closes [#297](https://github.com/mob-sakai/UIEffect/issues/297)\n\n## [5.2.1](https://github.com/mob-sakai/UIEffect/compare/5.2.0...5.2.1) (2025-01-14)\n\n\n### Bug Fixes\n\n* shadow color being transparent at maximum `Shadow Fade` ([1d849e5](https://github.com/mob-sakai/UIEffect/commit/1d849e54cb57218a67afc2f8ad36d345bfdd0f74)), closes [#296](https://github.com/mob-sakai/UIEffect/issues/296)\n* TextMeshPro is not displayed in prefab mode ([2b44837](https://github.com/mob-sakai/UIEffect/commit/2b44837bb9c93e1cc817a2c1cd112b244cd09391)), closes [#295](https://github.com/mob-sakai/UIEffect/issues/295)\n* TextMeshProUGUI disappears when the Y-axis scale is changed ([8159c09](https://github.com/mob-sakai/UIEffect/commit/8159c091e8a6805a7781046ae0f660a3be13862c)), closes [#295](https://github.com/mob-sakai/UIEffect/issues/295)\n\n# [5.2.0](https://github.com/mob-sakai/UIEffect/compare/5.1.0...5.2.0) (2025-01-07)\n\n\n### Bug Fixes\n\n* `Gradation` properties do not update when a preset is loaded ([edf6943](https://github.com/mob-sakai/UIEffect/commit/edf694313f101b66f760bca64593fb87037dcb3d)), closes [#291](https://github.com/mob-sakai/UIEffect/issues/291)\n* an error occurs when saving a preset ([894c561](https://github.com/mob-sakai/UIEffect/commit/894c5610d044f211067037b6c69f9860ac496ffc)), closes [#293](https://github.com/mob-sakai/UIEffect/issues/293)\n* fix gradation gradient edge (angle gradient) ([0ef6027](https://github.com/mob-sakai/UIEffect/commit/0ef60273714c7b68131f2f0d233b16335a5cd367))\n\n\n### Features\n\n* `Angle Gradient` gradation supports fixed mode gradient ([7cb8325](https://github.com/mob-sakai/UIEffect/commit/7cb8325e445350d2175865f736186f719e1cbe00))\n* `Angle Gradient` gradation supports RectTransform pivot ([2f63adf](https://github.com/mob-sakai/UIEffect/commit/2f63adfba057bec7f8183a5b34654cdf84163a34))\n* add `Use HDR Color Picker` option for project settings (editor) ([1be0cd4](https://github.com/mob-sakai/UIEffect/commit/1be0cd45db952d05e51d508c58f65a6541df9de0)), closes [#290](https://github.com/mob-sakai/UIEffect/issues/290)\n* the `Allow To Modify Mesh Shape` property should remain unchanged when loading a preset ([f7175c0](https://github.com/mob-sakai/UIEffect/commit/f7175c037371278eb7a0c7883cffccb5c31dba0a)), closes [#294](https://github.com/mob-sakai/UIEffect/issues/294)\n* the `Sampling Scale` property should remain unchanged when loading a preset ([238a17d](https://github.com/mob-sakai/UIEffect/commit/238a17d57ddf1f6b859ce830e80a1be6c3d739f1)), closes [#292](https://github.com/mob-sakai/UIEffect/issues/292)\n\n# [5.1.0](https://github.com/mob-sakai/UIEffect/compare/5.0.2...5.1.0) (2024-12-31)\n\n\n### Bug Fixes\n\n* changing the `shadowMirrorScale` property via code does not update the effect ([d9bf0e1](https://github.com/mob-sakai/UIEffect/commit/d9bf0e12fe918fc36120be3e1df2acbb00b1762b))\n* fix reverse direction mode for UIEffectTweener ([54825ee](https://github.com/mob-sakai/UIEffect/commit/54825eedc8070e74fc276e1e08ea0073cf265189)), closes [#281](https://github.com/mob-sakai/UIEffect/issues/281) [#282](https://github.com/mob-sakai/UIEffect/issues/282) [#283](https://github.com/mob-sakai/UIEffect/issues/283)\n\n\n### Features\n\n* add `Color Glow`, `Transition Color Glow` and `Shadow Color Glow` options ([e9522d3](https://github.com/mob-sakai/UIEffect/commit/e9522d3f0e3bc0c429ef32f240625e903ca790ee))\n* add `GradationMode.Angle` and `GradationMode.AngleGradient` ([08e9ba7](https://github.com/mob-sakai/UIEffect/commit/08e9ba73d78ba52502a6e795587441061377cd99))\n* add `OnComplete` event for UIEffectTweener ([aeb78ed](https://github.com/mob-sakai/UIEffect/commit/aeb78ed577d70c47aacd754ea2aa3916e6e49c1b)), closes [#289](https://github.com/mob-sakai/UIEffect/issues/289) [#188](https://github.com/mob-sakai/UIEffect/issues/188)\n* add `PlayOnEnable` option for UIEffectTweener ([1558736](https://github.com/mob-sakai/UIEffect/commit/155873669d77fc3281caaa0fc9f861e62aa489f2))\n* add `SamplingScale` option ([2b43bc4](https://github.com/mob-sakai/UIEffect/commit/2b43bc42d4a9e0a1c224139ccf91f7a6f76656fc)), closes [#269](https://github.com/mob-sakai/UIEffect/issues/269)\n* add `Shadow Color` and `Shadow Blur` options ([d0a3ca6](https://github.com/mob-sakai/UIEffect/commit/d0a3ca60904c0eebf63178a0fb899bb17ecefe75))\n* add a button to swap gradation colors (editor) ([20a6ca0](https://github.com/mob-sakai/UIEffect/commit/20a6ca0815aaa899934fde318beecc1dde5e1132))\n* add option to not automatically plays tweener effect ([88609f5](https://github.com/mob-sakai/UIEffect/commit/88609f5e368e38224a698270113b4f3190580a19))\n* automatically display a dialog to import TextMeshPro support ([f2df188](https://github.com/mob-sakai/UIEffect/commit/f2df1889d152ae68926067978c60b4810fdef3f1))\n* gradation feature ([bbe57df](https://github.com/mob-sakai/UIEffect/commit/bbe57df7a0a184793bd6d98a2b929055f69860b3)), closes [#277](https://github.com/mob-sakai/UIEffect/issues/277) [#66](https://github.com/mob-sakai/UIEffect/issues/66)\n* on-demand UIEffect shader support ([bdd8e08](https://github.com/mob-sakai/UIEffect/commit/bdd8e0857235c56b7013fe768a333c5575aaa0ef)), closes [#212](https://github.com/mob-sakai/UIEffect/issues/212) [#271](https://github.com/mob-sakai/UIEffect/issues/271)\n* support `TextMeshPro/Bitmap` and `TextMeshPro/Mobile/Bitmap` shaders. ([23ac398](https://github.com/mob-sakai/UIEffect/commit/23ac3985d2a2d9497b2d50b3755be671f3a07aa9)), closes [#284](https://github.com/mob-sakai/UIEffect/issues/284)\n* support non full-rect graphics for some effect ([a66baea](https://github.com/mob-sakai/UIEffect/commit/a66baea1e8d895c424ba3dc1fce64f969d79561e))\n* UIEffectTweener animation preview in edit mode ([e17b4a0](https://github.com/mob-sakai/UIEffect/commit/e17b4a0bfd262dc22ad2a13af5b0571b43a74abd)), closes [#279](https://github.com/mob-sakai/UIEffect/issues/279)\n\n## [5.0.2](https://github.com/mob-sakai/UIEffect/compare/5.0.1...5.0.2) (2024-12-24)\n\n\n### Bug Fixes\n\n* incorrect transparency when applying the shiny filter to TextMeshProUGUI ([f74279f](https://github.com/mob-sakai/UIEffect/commit/f74279fb8353226b494f00582ed5eb7fe87d147f)), closes [#287](https://github.com/mob-sakai/UIEffect/issues/287)\n* TextMeshProUGUI disappears when the Y-axis scale is changed ([9d98c5d](https://github.com/mob-sakai/UIEffect/commit/9d98c5d3e1c6ead8e3312a7e3a36fe89b38aed68)), closes [#286](https://github.com/mob-sakai/UIEffect/issues/286)\n\n## [5.0.1](https://github.com/mob-sakai/UIEffect/compare/5.0.0...5.0.1) (2024-12-14)\n\n\n### Bug Fixes\n\n* build AssetBundle error ([7374747](https://github.com/mob-sakai/UIEffect/commit/73747478a4e5754891ebd4fd2d54955e82a72eb3))\n* fix cutoff transition effect ([c893cb0](https://github.com/mob-sakai/UIEffect/commit/c893cb0ce2e90bf13456adbc7d2e0e0642cbac1d))\n* fix TextMeshPro shader (underlay and bevel) ([f39097a](https://github.com/mob-sakai/UIEffect/commit/f39097a73fc8560a50f848290ce4c5a235b68cac))\n* TextMeshPro objects appeared as black blocks when saving prefabs in prefab mode ([5889486](https://github.com/mob-sakai/UIEffect/commit/5889486f18afde6dec203bbe4aaca45760a9dce1)), closes [#285](https://github.com/mob-sakai/UIEffect/issues/285)\n\n# [5.0.0](https://github.com/mob-sakai/UIEffect/compare/4.0.0...5.0.0) (2024-11-11)\n\n\n### Features\n\n* add built-in UIEffect preset ([4adb58c](https://github.com/mob-sakai/UIEffect/commit/4adb58ca61d75897e67ef8674f9be9b9d6156b24))\n* add support for TextMeshPro, including `<font>` and `<sprite>` tags ([a4f85cb](https://github.com/mob-sakai/UIEffect/commit/a4f85cb0ee58a60e20572fcce0ebf204effce51e))\n* add UIEffectProjectSettings ([1306e19](https://github.com/mob-sakai/UIEffect/commit/1306e19cab9aeb9ec86a8047d59c2a9ad11bb128))\n* add UIEffectReplica component ([3bdc61c](https://github.com/mob-sakai/UIEffect/commit/3bdc61c2efe51e198650171e7a235276b82cb1f0))\n* add UIEffectTweener component ([e2c1605](https://github.com/mob-sakai/UIEffect/commit/e2c1605c1986c34f23c85dc9ec22f00f16bca21d))\n* add v4 compatible components ([d40a019](https://github.com/mob-sakai/UIEffect/commit/d40a0198c439b47c5b87f554df7eeb6ad5741fcd))\n* completely redesigned UIEffect architecture ([4e069a4](https://github.com/mob-sakai/UIEffect/commit/4e069a45d9817095f727f3bd18d793683fb052c2))\n\n\n### BREAKING CHANGES\n\n* All v4 components are obsolete. See README to upgrade.\n","UIEffectURP/Packages/manifest.json":"{\n  \"dependencies\": {\n    \"com.coffee.development\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/Development\",\n    \"com.coffee.minimal-resource\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/MinimalResource\",\n    \"com.coffee.nano-monitor\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/NanoMonitor\",\n    \"com.coffee.symbolic-linker\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/SymbolicLinker\",\n    \"com.coffee.ui-effect\": \"file:../../Packages/src\",\n    \"com.unity.addressables\": \"2.9.1\",\n    \"com.unity.ide.rider\": \"3.0.39\",\n    \"com.unity.render-pipelines.universal\": \"17.0.4\",\n    \"com.unity.test-framework\": \"1.6.0\",\n    \"com.unity.timeline\": \"1.8.10\",\n    \"com.unity.ugui\": \"2.0.0\",\n    \"com.unity.modules.animation\": \"1.0.0\"\n  }\n}\n","Packages/src/LICENSE.md":"Copyright 2017-2024 mob-sakai\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE."},"files":{"Packages/src/.releaserc.json":"{\n  \"branches\": [\n    \"main\",\n    \"[0-9]+.x\",\n    {\n      \"name\": \"preview\",\n      \"prerelease\": true\n    }\n  ],\n  \"tagFormat\": \"${version}\",\n  \"plugins\": [\n    \"@semantic-release/commit-analyzer\",\n    \"@semantic-release/release-notes-generator\",\n    \"@semantic-release/changelog\",\n    [\n      \"@semantic-release/npm\",\n      {\n        \"npmPublish\": false\n      }\n    ],\n    \"@semantic-release/git\",\n    \"@semantic-release/github\"\n  ]\n}\n","Packages/manifest.json":"{\n  \"dependencies\": {\n    \"com.coffee.development\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/Development\",\n    \"com.coffee.minimal-resource\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/MinimalResource\",\n    \"com.coffee.nano-monitor\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/NanoMonitor\",\n    \"com.coffee.symbolic-linker\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/SymbolicLinker\",\n    \"com.unity.addressables\": \"1.22.3\",\n    \"com.unity.ide.rider\": \"3.0.38\",\n    \"com.unity.test-framework\": \"1.1.33\",\n    \"com.unity.textmeshpro\": \"3.0.9\",\n    \"com.unity.modules.animation\": \"1.0.0\"\n  }\n}\n","Packages/src/package.json":"{\n  \"name\": \"com.coffee.ui-effect\",\n  \"displayName\": \"UI Effect\",\n  \"description\": \"UIEffect is an open-source package that allows you to intuitively apply rich UI effects directly from the Inspector or via code.\\nCombine various filters, such as grayscale, blur, and dissolve, to decorate your UI with a unique visual style!\",\n  \"version\": \"5.11.7\",\n  \"unity\": \"2020.3\",\n  \"license\": \"MIT\",\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"git+https://github.com/mob-sakai/UIEffect.git\"\n  },\n  \"author\": {\n    \"name\": \"mob-sakai\",\n    \"email\": \"sakai861104@gmail.com\",\n    \"url\": \"https://github.com/mob-sakai\"\n  },\n  \"dependencies\": {\n    \"com.unity.ugui\": \"1.0.0\"\n  },\n  \"keywords\": [\n    \"ui\",\n    \"effect\"\n  ],\n  \"samples\": [\n    {\n      \"displayName\": \"Demo\",\n      \"description\": \"UI Effect Demo\",\n      \"path\": \"Samples~/Demo\"\n    },\n    {\n      \"displayName\": \"v4 Compatible Components\",\n      \"description\": \"v4 Compatible Components\",\n      \"path\": \"Samples~/v4 Compatible Components\"\n    },\n    {\n      \"displayName\": \"TextMeshPro Support\",\n      \"description\": \"TextMeshPro Support\",\n      \"path\": \"Samples~/TextMeshPro Support~\"\n    },\n    {\n      \"displayName\": \"TextMeshPro Support (Unity 6)\",\n      \"description\": \"TextMeshPro Support (Unity 6)\",\n      \"path\": \"Samples~/TextMeshPro Support (Unity 6)~\"\n    },\n    {\n      \"displayName\": \"ShaderGraph Support (Unity 6 BuiltIn)\",\n      \"description\": \"ShaderGraph Support (Unity 6 BuiltIn)\",\n      \"path\": \"Samples~/ShaderGraph Support (Unity 6 BuiltIn)~\"\n    },\n    {\n      \"displayName\": \"ShaderGraph Support (Unity 6 URP)\",\n      \"description\": \"ShaderGraph Support (Unity 6 URP)\",\n      \"path\": \"Samples~/ShaderGraph Support (Unity 6 URP)~\"\n    }\n  ]\n}\n","Packages/packages-lock.json":"{\n  \"dependencies\": {\n    \"com.coffee.development\": {\n      \"version\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/Development\",\n      \"depth\": 0,\n      \"source\": \"git\",\n      \"dependencies\": {},\n      \"hash\": \"4a182298bd6293c4e6e33dd40bb7a050847190d8\"\n    },\n    \"com.coffee.minimal-resource\": {\n      \"version\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/MinimalResource\",\n      \"depth\": 0,\n      \"source\": \"git\",\n      \"dependencies\": {},\n      \"hash\": \"4a182298bd6293c4e6e33dd40bb7a050847190d8\"\n    },\n    \"com.coffee.nano-monitor\": {\n      \"version\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/NanoMonitor\",\n      \"depth\": 0,\n      \"source\": \"git\",\n      \"dependencies\": {\n        \"com.unity.ugui\": \"1.0.0\"\n      },\n      \"hash\": \"4a182298bd6293c4e6e33dd40bb7a050847190d8\"\n    },\n    \"com.coffee.symbolic-linker\": {\n      \"version\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/SymbolicLinker\",\n      \"depth\": 0,\n      \"source\": \"git\",\n      \"dependencies\": {},\n      \"hash\": \"4a182298bd6293c4e6e33dd40bb7a050847190d8\"\n    },\n    \"com.coffee.ui-effect\": {\n      \"version\": \"file:src\",\n      \"depth\": 0,\n      \"source\": \"embedded\",\n      \"dependencies\": {\n        \"com.unity.ugui\": \"1.0.0\"\n      }\n    },\n    \"com.unity.addressables\": {\n      \"version\": \"1.22.3\",\n      \"depth\": 0,\n      \"source\": \"registry\",\n      \"dependencies\": {\n        \"com.unity.modules.assetbundle\": \"1.0.0\",\n        \"com.unity.modules.jsonserialize\": \"1.0.0\",\n        \"com.unity.modules.imageconversion\": \"1.0.0\",\n        \"com.unity.modules.unitywebrequest\": \"1.0.0\",\n        \"com.unity.scriptablebuildpipeline\": \"1.21.25\",\n        \"com.unity.modules.unitywebrequestassetbundle\": \"1.0.0\"\n      },\n      \"url\": \"https://packages.unity.com\"\n    },\n    \"com.unity.ext.nunit\": {\n      \"version\": \"1.0.6\",\n      \"depth\": 1,\n      \"source\": \"registry\",\n      \"dependencies\": {},\n      \"url\": \"https://packages.unity.com\"\n    },\n    \"com.unity.ide.rider\": {\n      \"version\": \"3.0.38\",\n      \"depth\": 0,\n      \"source\": \"registry\",\n      \"dependencies\": {\n        \"com.unity.ext.nunit\": \"1.0.6\"\n      },\n      \"url\": \"https://packages.unity.com\"\n    },\n    \"com.unity.scriptablebuildpipeline\": {\n      \"version\": \"1.21.25\",\n      \"depth\": 1,\n      \"source\": \"registry\",\n      \"dependencies\": {},\n      \"url\": \"https://packages.unity.com\"\n    },\n    \"com.unity.test-framework\": {\n      \"version\": \"1.1.33\",\n      \"depth\": 0,\n      \"source\": \"registry\",\n      \"dependencies\": {\n        \"com.unity.ext.nunit\": \"1.0.6\",\n        \"com.unity.modules.imgui\": \"1.0.0\",\n        \"com.unity.modules.jsonserialize\": \"1.0.0\"\n      },\n      \"url\": \"https://packages.unity.com\"\n    },\n    \"com.unity.textmeshpro\": {\n      \"version\": \"3.0.9\",\n      \"depth\": 0,\n      \"source\": \"registry\",\n      \"dependencies\": {\n        \"com.unity.ugui\": \"1.0.0\"\n      },\n      \"url\": \"https://packages.unity.com\"\n    },\n    \"com.unity.ugui\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {\n        \"com.unity.modules.ui\": \"1.0.0\",\n        \"com.unity.modules.imgui\": \"1.0.0\"\n      }\n    },\n    \"com.unity.modules.animation\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 0,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.assetbundle\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.imageconversion\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.imgui\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.jsonserialize\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.ui\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 2,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.unitywebrequest\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.unitywebrequestassetbundle\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {\n        \"com.unity.modules.assetbundle\": \"1.0.0\",\n        \"com.unity.modules.unitywebrequest\": \"1.0.0\"\n      }\n    }\n  }\n}\n","Packages/src/README.md":"# <img alt=\"logo\" height=\"26\" src=\"https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-logo.png\"/> UIEffect v5 <!-- omit in toc -->\n\n[![](https://img.shields.io/npm/v/com.coffee.ui-effect?label=openupm&registry_uri=https://package.openupm.com)](https://openupm.com/packages/com.coffee.ui-effect/)\n[![](https://img.shields.io/github/v/release/mob-sakai/UIEffect?include_prereleases)](https://github.com/mob-sakai/UIEffect/releases)\n[![](https://img.shields.io/github/release-date/mob-sakai/UIEffect.svg)](https://github.com/mob-sakai/UIEffect/releases)  \n![](https://img.shields.io/badge/Unity-2020.3+-57b9d3.svg?style=flat&logo=unity)\n![](https://img.shields.io/badge/Unity-6000.0+-57b9d3.svg?style=flat&logo=unity)  \n![](https://img.shields.io/badge/TextMeshPro_Support-57b9d3.svg?style=flat)\n![](https://img.shields.io/badge/ShaderGraph_Support-57b9d3.svg?style=flat)\n![](https://img.shields.io/badge/Timeline_Support-57b9d3.svg?style=flat)\n![](https://img.shields.io/badge/UPR%2FHDPR_Support-57b9d3.svg?style=flat)\n![](https://img.shields.io/badge/VR_Support-57b9d3.svg?style=flat)  \n[![](https://img.shields.io/github/license/mob-sakai/UIEffect.svg)](https://github.com/mob-sakai/UIEffect/blob/main/LICENSE.md)\n[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-orange.svg)](http://makeapullrequest.com)\n[![](https://img.shields.io/github/watchers/mob-sakai/UIEffect.svg?style=social&label=Watch)](https://github.com/mob-sakai/UIEffect/subscription)\n[![](https://img.shields.io/twitter/follow/mob_sakai.svg?label=Follow&style=social)](https://twitter.com/intent/follow?screen_name=mob_sakai)\n\n<< [📝 Description](#-description-) | [📌 Key Features](#-key-features) | [🎮 Demo](#-demo) | [⚙ Installation](#-installation) | [🔄 Upgrading from v4 to v5](#-upgrading-from-v4-to-v5) | [🚀 Usage](#-usage) | [🤝 Contributing](#-contributing) >>\n\n⚠️ This README is for v5. For v4, please visit [here](https://github.com/mob-sakai/UIEffect/blob/upm/README.md).\n\n## 📝 Description <!-- omit in toc -->\n\n**_\"Decorate your UI, simply and powerfully.\"_**\n\nUIEffect is a powerful, open-source Unity package that transforms your UI with stunning visual effects.  \nApply professional-grade filters like grayscale, blur, and dissolve directly from the Inspector—no coding required!\n\n✨ **Perfect for**: Game developers, UI designers, and anyone looking to enhance their Unity UI with minimal effort\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-demo-title.png)\n\n- [📌 Key Features](#-key-features)\n- [🎮 Demo](#-demo)\n- [⚙ Installation](#-installation)\n  - [Install via OpenUPM](#install-via-openupm)\n  - [Install via UPM (with Package Manager UI)](#install-via-upm-with-package-manager-ui)\n  - [Install via UPM (Manually)](#install-via-upm-manually)\n  - [Install as Embedded Package](#install-as-embedded-package)\n  - [Import Additional Resources](#import-additional-resources)\n- [🔄 Upgrading from v4 to v5](#-upgrading-from-v4-to-v5)\n- [🚀 Usage](#-usage)\n  - [Getting Started](#getting-started)\n  - [Component: UIEffect](#component-uieffect)\n    - [Tone Filter](#tone-filter)\n    - [Color Filter](#color-filter)\n    - [Sampling Filter](#sampling-filter)\n    - [Transition Filter](#transition-filter)\n    - [Target Mode](#target-mode)\n    - [Blend Type](#blend-type)\n    - [Shadow Mode](#shadow-mode)\n    - [Gradation Mode](#gradation-mode)\n    - [Edge Mode](#edge-mode)\n    - [Detail Filter](#detail-filter)\n    - [Flip](#flip)\n    - [Others](#others)\n  - [Component: UIEffectTweener](#component-uieffecttweener)\n  - [Component: UIEffectReplica](#component-uieffectreplica)\n  - [Usage with TextMeshPro](#usage-with-textmeshpro)\n  - [Usage with SoftMaskForUGUI](#usage-with-softmaskforugui)\n  - [Usage with ShaderGraph](#usage-with-shadergraph)\n  - [Usage with Timeline](#usage-with-timeline)\n  - [Usage with Custom Shader](#usage-with-custom-shader)\n  - [Runtime/Editor Preset for UIEffect](#runtimeeditor-preset-for-uieffect)\n  - [Usage with Code](#usage-with-code)\n  - [Project Settings](#project-settings)\n    - [Settings](#settings)\n    - [Editor](#editor)\n    - [Shader](#shader)\n  - [:warning: Limitations](#warning-limitations)\n- [🤝 Contributing](#-contributing)\n  - [Issues](#issues)\n  - [Pull Requests](#pull-requests)\n  - [Support](#support)\n- [License](#license)\n- [Author](#author)\n- [See Also](#see-also)\n\n<br><br>\n\n## 📌 Key Features\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-keyfeatures.png)\n\n- **UIEffect is out-of-the-box!**: Easily apply effects by adjusting parameters directly in the inspector.\n- **Rich effect combinations**: Decorate your UI with a variety of effects, such as grayscale, blur, and dissolve, by combining multiple filters and parameters.\n- **Efficient shader builds**: Only the shader variants in use are built, resulting in shorter build times.\n- **URP/HDRP/VR support**: Compatible with URP, HDRP, and VR environments.\n- **Runtime and editor presets**: Presets are available both at runtime and in the editor.\n- **TextMeshPro support**: Supports TextMeshPro, including `<font>` and `<sprite>` tags.\n- **UIEffectReplica Component**: Duplicate effects and apply them to multiple UI elements at once.\n- **UIEffectTweener Component**: A simple tweener component to play, stop, pause, and resume effects.\n- **AnimationClip support**: Allows control of effect animations using `AnimationClips`.\n- **v4 compatible components (optional)**: For easy upgrading with minimal changes, compatible v4 components are available optionally.\n- **SoftMaskForUGUI support (optional)**: Compatible with SoftMaskForUGUI for creating soft masks for UI elements. See for more details [here](#usage-with-softmaskforugui).\n- **ShaderGraph support (optional)**: Add `Canvas (UIEffect)` sub target (material) for UIEffect shaders. See for more details [here](#usage-with-shadergraph).\n- **Timeline support**: Control UIEffect using Timeline with `ControlTrack` and `UIEffect Tracks`. See for more details [here](#usage-with-timeline).\n\n<br><br>\n\n## 🎮 Demo\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1749461316801.png)\n<img src=\"https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-demo-pattern.gif\" width=\"582\"/>  \n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-demo-showcase.png)  \n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-demo-tmp.png)  \n\n[Try the WebGL Demo](https://mob-sakai.github.io/UIEffect/)\n\n<br><br>\n\n## ⚙ Installation\n\n_This package requires **Unity 2020.3 or later**._\n\n### Install via OpenUPM\n\n- This package is available on [OpenUPM](https://openupm.com/packages/com.coffee.ui-effect/) package registry.\n- This is the preferred method of installation, as you can easily receive updates as they're released.\n- If you have [openupm-cli](https://github.com/openupm/openupm-cli) installed, then run the following command in your project's directory:\n  ```\n  openupm add com.coffee.ui-effect\n  ```\n- To update the package, use Package Manager UI (`Window > Package Manager`) or run the following command with `@{version}`:\n  ```\n  openupm add com.coffee.ui-effect@5.9.0\n  ```\n\n### Install via UPM (with Package Manager UI)\n\n- Click `Window > Package Manager` to open Package Manager UI.\n- Click `+ > Add package from git URL...` and input the repository URL: `https://github.com/mob-sakai/UIEffect.git?path=Packages/src`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/upm-add-from-url.png)\n- To update the package, change suffix `#{version}` to the target version.\n    - e.g. `https://github.com/mob-sakai/UIEffect.git?path=Packages/src#5.9.0`\n\n### Install via UPM (Manually)\n\n- Open the `Packages/manifest.json` file in your project. Then add this package somewhere in the `dependencies` block:\n  ```json\n  {\n    \"dependencies\": {\n      \"com.coffee.ui-effect\": \"https://github.com/mob-sakai/UIEffect.git?path=Packages/src\",\n      ...\n    }\n  }\n  ```\n\n- To update the package, change suffix `#{version}` to the target version.\n    - e.g. `\"com.coffee.ui-effect\": \"https://github.com/mob-sakai/UIEffect.git?path=Packages/src#5.9.0\",`\n\n### Install as Embedded Package\n\n1. Download the `Source code (zip)` file from [Releases](https://github.com/mob-sakai/UIEffect/releases) and\n   extract it.\n2. Move the `<extracted_dir>/Packages/src` directory into your project's `Packages` directory.  \n   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/upm-add-as-embedded.png)\n    - You can rename the `src` directory if needed.\n    - If you intend to fix bugs or add features, installing it as an embedded package is recommended.\n    - To update the package, re-download it and replace the existing contents.\n\n### Import Additional Resources\n\nAdditional resources can be imported to extend functionality.\n\n- [🔄 Upgrading from v4 to v5](#-upgrading-from-v4-to-v5)\n- [Usage with TextMeshPro](#usage-with-textmeshpro)\n- [Usage with ShaderGraph](#usage-with-shadergraph)\n\n<br><br>\n\n## 🔄 Upgrading from v4 to v5\n\nIf upgrading from UIEffect v4 to v5, note the following breaking changes:\n\n1. If you are installing via git URL, add `?path=Packages/src`. The default branch is changed `upm` to `main`.\n   ```json\n   // v4\n   \"com.coffee.ui-effect\": \"https://github.com/mob-sakai/UIEffect.git\",\n   \"com.coffee.ui-effect\": \"https://github.com/mob-sakai/UIEffect.git#upm\",\n   \n   // v5\n   \"com.coffee.ui-effect\": \"https://github.com/mob-sakai/UIEffect.git?path=Packages/src\",\n   \"com.coffee.ui-effect\": \"https://github.com/mob-sakai/UIEffect.git?path=Packages/src#main\",\n   ```\n\n2. Import the `v4 Compatible Components` sample from the Package Manager window.  \n\n3. All v4 components are obsolete.  \n- v4 `UIEffect` component is now `UIEffectV4` component. Change the reference in the code.\n- The `effectArea` property in some components are not supported in v5.\n- `UIShadow`, `UIGradient` components are not supported in v5.\n- v4 components can be converted to v5 `UIEffect` component by selecting `Convert To UIEffect` from the context menu.  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-v4-convert.png)\n\n<br><br>\n\n## 🚀 Usage\n\n### Getting Started\n\n1. [Install the package](#-installation).\n\n2. Add a `UIEffect` component to a UI element (Image, RawImage, Text, TextMeshProUGUI, etc...) from the `Add Component` in the inspector or `Component > UI > UIEffect` menu.  \n   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-add-component.png)\n\n3. Set `Tone Filter` to `Grayscale` and `Tone Intensity` to `1.0`.  \n   <img src=\"https://github.com/mob-sakai/mob-sakai/releases/download/docs/1749029605043.png\" width=\"480\"/>\n\n4. Try other effect filters and parameters in the inspector.  \n   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744308178360.gif)\n\n5. From the top menu, you can load/append preset.  \n> [!TIP]\n>\n> `Load` overwrites all properties with the preset, while `Append` only overwrites enabled filters and modes with the preset.  \n> You can easily build effects by combining them with `Append`.\n\n   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744800851739.gif)\n\n5. Enjoy!\n\n<br><br>\n\n### Component: UIEffect\n\nThe `UIEffect` component applies visual effects to UI elements, allowing various effects to be achieved by combining multiple filters.\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-preset.png)\n\n> [!TIP]  \n> From the top menu, you can load and save the editor presets or clear settings.  \n> For details, refer to the [Runtime/Editor Preset for UIEffect](#runtimeeditor-preset-for-uieffect).\n\n<br>\n\n#### Tone Filter\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-tone.png)\n\n- **Tone Filter**: `None`, `Grayscale`, `Sepia`, `Nega`, `Retro`, `Posterize`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-tone.png)\n- **Tone Intensity**: 0.0 (no effect) - 1.0 (full effect).\n\n<br>\n\n#### Color Filter\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-color.png)\n\n- **Color Filter**: `None`, `Multiply`, `Additive`, `Subtractive`, `Replace`, `Multiply Luminance`, `Multiply Additive`, `Hsv Modifier`, `Contrast`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-color.png)\n- **Color Intensity**: 0.0 (no effect) - 1.0 (full effect).\n- **Color Glow**: Set the color to glow.\n\n<br>\n\n#### Sampling Filter\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-sampling.png)\n\n- **Sampling Filter**: `None`, `Blur Fast`, `Blur Medium`, `Blur Detail`, `Pixelation`, `Rgb Shift`, `Edge Luminescence`, `Edge Alpha`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-sampling.png)\n- **Sampling Intensity**: 0.0 (no effect) - 1.0 (full effect).\n- **Sampling Width**: The width of the sampling effect.\n\n<br>\n\n#### Transition Filter\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-transition.png)\n\n- **Transition Filter**: `None`, `Fade`, `Cutoff`, `Dissolve`, `Shiny`, `Mask`, `Melt`, `Burn`, `Blaze`, `Pattern`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1749466907712.gif)\n- **Transition Rate**: 0.0 (no effect) - 1.0 (full effect).\n- **Transition Tex**: The texture used for the transition filter.\n    - **Scale**, **Offset**, **Speed**, **Rotation**, **Keep Aspect Ratio**, **Reverse**: Additional properties for the texture.\n    - ⚠️ NOTE: `Rotation` is shared with `Transition Filter` and `Detail Filter`.\n    - ⚠️ NOTE: `Keep Aspect Ratio` is shared with `Transition Filter` and `Gradation Mode` and `Detail Filter`.\n- **Transition Width**: The width where the transition color is applied.\n- **Transition Pattern Range**: The range of the pattern.\n- **Transition Pattern Reverse**: Reverse the pattern.\n- **Transition Softness**: The softness of the boundary for the transition color.\n- **Transition Color Filter**: `None`, `Multiply`, `Additive`, `Subtractive`, `Replace`, `Multiply Luminance`, `Multiply Additive`, `Hsv Modifier`, `Contrast`\n    - **Transition Color**: The color of the transition.\n    - **Transition Color Glow**: Set the transition color to glow.\n- **Transition Auto Play Speed**: The speed of the transition animation (using shader side `_Time`). You can use this property to loop the `TransitionRate` without tweener or animation.\n    - ⚠️ NOTE: This uses scaled time (affected by `Time.timeScale`). If you need unscaled time (useful for pause-resistant effects), use the [UIEffectTweener](#component-uieffecttweener) component instead.\n\n> [!TIP]  \n> **Transition Tex** applies transitions using its alpha channel.  \n> If you use `Scale`, `Offset`, or `Speed`, set `Wrap Mode = Repeat` in the texture import settings.  \n> For details, refer to the textures included in the built-in presets.  \n> ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/17443051097852.png)\n\n<br>\n\n#### Target Mode\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-target.png)\n\n- **Target Mode**: `None`, `Hue`, `Luminance`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-target.png)\n  - Restricts the effect application area based on hue or luminance.\n- **Target Range**: The range of target hue or luminance.\n- **Target Softness**: The softness of the target boundary.\n\n<br>\n\n#### Blend Type\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-blend.png)\n\n- **Blend Type**: `Alpha Blend`, `Multiply`, `Additive`, `Soft Additive`, `Multiply Additive`, `Custom`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-blend.png)\n  - `Custom` blend type can be set using the `SrcBlend` and `DstBlend` properties. \n\n<br>\n\n#### Shadow Mode\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-shadow.png)\n\n- **Shadow Mode**: `None`, `Shadow`, `Shadow3`, `Outline`, `Outline8`, `Mirror`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-shadow.png)\n- **Shadow Distance**: Distance of the shadow or outline.\n- **Shadow Iteration**: Number of times the shadow or outline is applied.\n- **Shadow Color Filter**: `None`, `Multiply`, `Additive`, `Subtractive`, `Replace`, `Multiply Luminance`, `Multiply Additive`, `Hsv Modifier`, `Contrast`\n    - **Shadow Color**: The color of the shadow.\n    - **Shadow Color Glow**: Set the shadow color to glow.\n- **Shadow Fade**: Alpha value of the shadow or outline.\n- **Shadow Blur Intensity** (`SamplingFilter = Blur***` required): Intensity of the shadow or outline blur.\n- **Mirror Reflection** (`Mirror` only): Distance of the mirrored image.\n- **Mirror Offset** (`Mirror` only): Offset for the mirrored image.\n- **Mirror Scale** (`Mirror` only): Scale of the mirrored image.\n\n<br>\n\n#### Gradation Mode\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744305109784.png)\n\n- **Gradation Mode**: `None`, `Horizontal`, `HorizontalGradient`, `Vertical`, `VerticalGradient`, `Radial`, `RadialGradient`, `Diagonal`, `DiagonalToRightBottom`, `DiagonalToLeftBottom`, `Angle`, `AngleGradient`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1749461050342.png)\n- **Gradation Color Filter**: `None`, `Multiply`, `Additive`, `Subtractive`, `Replace`, `Multiply Luminance`, `Multiply Additive`\n- **Gradation Gradient**: The gradient of the gradation. HDR colors are supported.\n  - `Blend` and `Fixed` modes are available.\n- **Gradation Color 1**: The first color of the gradation.\n- **Gradation Color 2**: The second color of the gradation.\n- **Gradation Intensity**: 0.0 (no effect) - 1.0 (full effect).\n- **Gradation Offset**: The offset of the gradation range.\n- **Gradation Scale**: The scale of the gradation range.\n- **Gradation Rotation** (`Angle` or `AngleGradient` only): The rotation of the gradation range.\n- **Gradation Wrap Mode**: `Repaet`, `Clamp`, `Mirror`, `Mirror Once`\n- **Gradation Reverse**: Reverse the gradient.\n- **Keep Aspect Ratio**: \n  - ⚠️ NOTE: `Keep Aspect Ratio` is shared with `Transition Filter` and `Gradation Mode` and `Detail Filter`.\n\n<br>\n\n#### Edge Mode\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-edge.png)\n\n- **Edge Mode**: `None`, `Plain`, `Shiny`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-edge.png)\n- **Edge Width**: The width of the edge.\n- **Edge Color Filter**: `None`, `Multiply`, `Additive`, `Subtractive`, `Replace`, `Multiply Luminance`, `Multiply Additive`, `Hsv Modifier`, `Contrast`\n    - **Edge Color**: The color of the edge.\n    - **Edge Color Glow**: Set the shadow color to glow.\n- **Edge Shiny Width**: The width of the edge shiny.\n- **Edge Shiny Auto Play Speed**: The speed of the edge shiny (using shader side `_Time`).\n  - ⚠️ NOTE: This uses scaled time (affected by `Time.timeScale`). If you need unscaled time (useful for pause-resistant effects), use the [UIEffectTweener](#component-uieffecttweener) component instead.\n\n<br>\n\n#### Detail Filter\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744762332942.png)\n\n- **Detail Filter**: `None`, `Masking`, `Multiply`, `Additive`, `Subtractive`, `Replace`, `MuliplyAdditive`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744826180386.png)\n- **Detail Intensity**: 0.0 (no effect) - 1.0 (full effect).\n- **Detail Color**: The color of the detail.\n- **Detail Threshold** (`Masking` only): The minimum and maximum alpha values used for masking. The larger the gap\n    between these values, the stronger the softness effect.\n- **Detail Tex**: The texture used for the transition filter.\n  - **Scale**, **Offset**, **Speed**, **Rotation**, **Keep Aspect Ratio**: Additional properties for the texture.\n  - ⚠️ NOTE: `Rotation` is shared with `Transition Filter` and `Detail Filter`.\n  - ⚠️ NOTE: `Keep Aspect Ratio` is shared with `Transition Filter` and `Gradation Mode` and `Detail Filter`.\n\n<br>\n\n#### Flip\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744762521061.png)\n\n- **Flip**: Combine the following flags.\n    - `Nothing`\n    - `Horizontal`\n    - `Vertical`\n    - `Effect`: Flip with the effect.\n    - `Shadow`: Flip with the shadow.  \n    ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-flip.png)\n\n<br>\n\n#### Others\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744762623263.png)\n\n- **Sampling Scale**: The referencing scale during sampling.\n    - Larger values are suitable for high-resolution textures.\n- **Allow To Modify Mesh Shape**: If enabled, the mesh shape can be modified.\n- **Custom Root**: Use the custom transform for some effects.\n\n> [!TIP]  \n> `Transition Filter`, `Gradation Filter`, and `Detail Filter` usually refer to their own `RectTransform` when applying effects.  \n> For example, if the mesh shape exceeds the `RectTransform` boundaries, the effect may not be applied correctly.  \n> By specifying `Custom Root`, you can refer to the specified transform.\n> ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-custom-root.gif)\n\n<br><br>\n\n### Component: UIEffectTweener\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744304918490.png)\n\nThe `UIEffectTweener` component animates the effect, enabling easy control over effect animations without the need for an `AnimationClip`.\n\n- **Culling Mask**: `Tone`, `Color`, `Sampling`, `Transition`, `GradiationOffset`, `GradiationRotation`, `EdgeShiny`, `Event`\n- **OnChangeRate** (`Event` only): A event that is triggered when the tweening rate changes.\n- **Direction**: `Forward (0.0 -> 1.0)`, `Reverse (1.0 -> 0.0)`\n- **Curve**: The curve of the animation.\n- **Separate Reverse Curve**: If enabled, `Reverse Curve` will be used for the reverse direction.\n- **Reverse Curve**: The curve of the reverse animation.\n- **Delay**: The delay time before starting the animation.\n- **Duration**: The duration of the animation.\n- **Interval**: The interval time between the animation.\n- **Play On Enable**: `None`, `Forward`, `Reverse`, `Keep Direction`\n   - Play the animation automatically when the component is enabled.\n   - If `None` is selected, the animation will not play automatically. You can play it using the `Play`, `PlayForward` or `PlayReverse`  method.\n- **Reset Time On Enable**: Reset the tweening time when the component is enabled.\n- **Wrap Mode**:\n   - `Once`: delay -> duration(0-1) -> onComplete\n   - `Loop`: delay -> duration(0-1) -> interval -> ...\n   - `PingPongOnce`: delay -> duration(0-1) -> interval -> duration(1-0) -> onComplete\n   - `PingPongLoop`: delay -> duration(0-1) -> interval -> duration(1-0) -> interval -> ...\n- **Update Mode**: `Normal`, `UnscaledTime`, `Manual`\n- **On Complete**: A event that is triggered when the animation is completed.\n\nYou can preview the animation using the seek bar and play button.\n\n<br><br>\n\n### Component: UIEffectReplica\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744308511445.png)\n\nThe `UIEffectReplica` component applies visual effects to UI elements by replicating the settings of another `UIEffect` component. This allows the same effect to be applied across multiple UI elements simultaneously.\n\n- **Target**: The target `UIEffect` component to replicate.\n> [!TIP]\n> You can specify a preset as well as an instance as the target for `UIEffectReplica`.\n- **Use Target Transform**: Use the target's transform for some effects.  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-custom-root.gif)\n- **Custom Root**: Use the custom transform for some effects.\n- **Sampling Scale**: Override the sampling scale.\n- **Allow To Modify Mesh Shape**: If enabled, the mesh shape can be modified.\n\n<br><br>\n\n### Usage with TextMeshPro\n\nTo use UIEffect with TextMeshPro, you need to import additional resources.  \nWhen a shader included in the samples is requested, an import dialog will automatically appear.  \nClick the `Import` button.\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744304977486.png)\n\nAlternatively, you can manually import the resources by following these steps:\n\n1. First, you must import [TMP Essential Resources](https://docs.unity3d.com/Packages/com.unity.textmeshpro@3.0/manual/index.html#installation) before using.  \n   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744305000411.png)\n\n2. Open the `Package Manager` window and select the `UI Effect` package in the package list and click the `TextMeshPro Support > Import` button.  \n   ⚠️ If you are using `Unity 2023.2/6000.0+` or `TextMeshPro 3.2/4.0+`, click the `TextMeshPro Support (Unity 6) > Import` button instead.  \n\n3. The assets will be imported under `Assets/Samples/UI Effect/{version}`.\n\n4. Add the `UIEffect` component to a TextMeshProUGUI element and adjust the effect settings. The `<font>` and `<sprite>` tags are also supported.  \n   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744305022250.png)\n\n> [!TIP]\n> `TextMeshPro Support` may change with updates to the UIEffect package.  \n> If issues occur, try importing it again.\n\n> [!TIP]\n> If you have moved `TMPro_Properties.cginc` and `TMPro.cginc` from their default install path\n> (`Assets/TextMesh Pro/Shaders/...`), you will need to manually update the paths in the shaders under\n> `TextMeshPro Support` or `TextMeshPro Support (Unity 6)`.\n\n<br><br>\n\n### Usage with SoftMaskForUGUI\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744305036318.png)\n\n[SoftMaskForUGUI](https://github.com/mob-sakai/SoftMaskForUGUI) is a package that allows you to create soft masks for UI elements.\n\n`SoftMaskForUGUI (v3.3.0+)` supports `UIEffect (v5.7.0+)`.  \nWhen a shader included in the samples is requested, an import dialog will automatically appear.  \nClick the `Import` button.\n\n<br><br>\n\n### Usage with ShaderGraph\n\n⚠️ ShaderGraph support is available only in Unity 2023.2/6.0 or later.\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744307236288.png)\n\nTo use UIEffect with ShaderGraph, you need to import additional resources.\n\n1. Open the `Package Manager` window and select the `UI Effect` package in the package list and click the `ShaderGraph Support (Unity6, BuiltIn) > Import` button.  \n   ⚠️ If you are using Universal Render Pipeline (URP), click the `ShaderGraph Support (Unity6, URP) > Import` button.\n\n2. The assets will be imported under `Assets/Samples/UI Effect/{version}`.\n\n3. Change the sub target (Material) of the existing ShaderGraph file to `Canvas (UIEffect)`.  \n   Alternatively, create a new ShaderGraph from `Assets/Create/Shader Graph/BuiltIn/Canvas Shader Graph (UIEffect)`.\n\n> [!TIP]\n> Use `(UIEffect)` in the shader name or register as an optional shader in [ProjectSettings](#project-settings).\n\n<br><br>\n\n### Usage with Timeline\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1749028017092.png)\n\nTimeline is a powerful animation tool that can control UIEffect using `ControlTrack` and UIEffect tracks.\n\n- `Control Track`: One of the built-in tracks. When you assign a GameObject with `UIEffect`, `UIEffect` will be enabled during the clip duration.\n- `UIEffect Tracks`: Tracks for UIEffect. They control `float` or `Color` type properties.\n  - Supports blending, extrapolation, and tween.\n\n<br><br>\n\n### Usage with Custom Shader\n\nTo make your custom shader support UIEffect, it must satisfy the following requirements.\nRefer to the sections enclosed by `==== UIEFFECT START ===` and `==== UIEFFECT END ====` in the built-in `Hidden/UI/Default (UIEffect)` shader included in the package.\n\nhttps://github.com/mob-sakai/UIEffect/blob/main/Packages/src/Shaders/UIEffect.shader\n\n- Blend: `Blend [_SrcBlend] [_DstBlend]`\n- Shader variants: `#pragma shader_feature_local_fragment ***`\n- Vertex shader input structure: `float4 uvMask : TEXCOORD***;`\n- Vertex shader: `OUT.uvMask = v.uvMask;` and `OUT.worldPosition = v.vertex;`\n- Pixel shader input structure: `float4 uvMask : TEXCOORD***;` and `float4 worldPosition : TEXCOORD***;`\n- UIEffect micro pixel shader: a function that returns the color of the specified pixel and has the signature `half4 uieffect_frag(v2f IN, float2 uv)`.\n- Pixel shader input structure name definition: `#define UIEFFECT_FRAG_STRUCT v2f`\n- Include the UIEffect library: `#include \"Packages/com.coffee.ui-effect/Shaders/UIEffect.cginc\"`\n- Pixel shader: `half4 c = uieffect(IN.texcoord, IN.uvMask, IN.worldPosition, IN);`\n\n<br><br>\n\n### Runtime/Editor Preset for UIEffect\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-preset.png)\n\nYou can create and use presets for `UIEffect` components.\n\n- Click the `Load` button to apply an editor preset.\n- Click the `Append` button to load only non-default settings from the editor preset.\n- Click the `Save As New` button to save the current settings as an editor preset.\n- In the [Project Settings](#project-settings), you can register saved editor presets as runtime presets.\n- Runtime presets can be loaded using the `UIEffect.LoadPreset(presetName)` method.\n\n> [!TIP]\n> Editor presets are saved in the `UIEffectPresets` directory.\n> You can also create subdirectories to customize the preset menu.\n\n<br><br>\n\n### Usage with Code\n\nYou can control the effect settings and animations via code.\n\n```csharp\nvar effect = graphic.AddComponent<UIEffect>();\n\n// Apply a runtime preset\neffect.LoadPreset(\"Dissolve\");\n\n// Set the effect parameters\neffect.transitionWidth = 0.1f;\neffect.transitionColor = Color.red;\n\n// Add a tweener\nvar tweener = graphic.AddComponent<UIEffectTweener>();\ntweener.cullingMask = UICullingMask.Tone;\ntweener.wrapMode = UIWrapMode.PingPongLoop;\n\n// Warm up the shader variant collection.\nUIEffectProjectSettings.shaderVariantCollection.WarmUp();\n```\n\n<br><br>\n\n### Project Settings\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744799623192.png)\n\nYou can adjust the project-wide settings for UIEffect. (`Edit > Project Settings > UI > UIEffect`)\n\n#### Settings\n\n- **Runtime Presets**: A list of presets that can be loaded at runtime. Load them using `UIEffect.LoadPreset(presetName)` method.\n\n> [!IMPORTANT]  \n> - The legacy prefab-based preset system is deprecated as of v5.8.0.  \n> - If your project contains legacy presets, you can convert them to the new system.  \n>   - **Convert All Legacy Presets**: Creates new presets based on the legacy ones.  \n>     If the legacy presets are used as runtime presets, they will be replaced with the new ones.  \n>     You can load the new preset via the `UIEffect.LoadPreset` method.\n>   - **Delete All Legacy Presets**: Deletes all legacy presets. If any legacy presets are assigned to `UIEffectReplica.target`, those targets will also be removed.  \n>   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744792792701.png)\n\n#### Editor\n\n- **Use HDR Color Picker**: If enabled, the HDR color picker will be used in the inspector.\n\n#### Shader\n\n- **Optional Shaders (UIEffect)**: A list of shaders that will be prioritized when a ui-effect shader is\n  requested.\n    - If the shader is included in the list, that shader will be used.\n    - If it is not in the list, the following shaders will be used in order:\n        - If the shader name contains `(UIEffect)`, that shader will be used.\n        - If `Hidden/<shader_name> (UIEffect)` exists, that shader will be used.\n        - As a fallback, `UI/Default (UIEffect)` will be used.\n- **Registered Variants**: A list of shader variants available at runtime. Use \"-\" button to remove unused variants,\n  reducing build time and file size.\n    - By default, the used ui-effect shaders will be included in the build. You can remove them if you don't need.\n- **Unregistered Variants**: A list of shader variants that are not registered. Use \"+\" button to add variants.\n- **Error On Unregistered Variant**: If enabled, an error will be displayed when an unregistered shader variant is used.\n    - The shader variant will be automatically added to the `Unregistered Variants` list.\n\n> [!IMPORTANT]\n> - The setting file is usually saved in `Assets/ProjectSettings/UIEffectProjectSettings.asset`. Include this file in your version control system.\n> - The setting file is automatically added as a preloaded asset in `ProjectSettings/ProjectSettings.asset`.\n\n#### Advanced\n\n- **Pre Load Settings In Build**: When enabled, this settings asset will be added to `PlayerSettings.preloadedAssets` in build.\n - When disable, you should load this settings via `Resources`, `AssetBundles` or `Addressables` to use `UIEffect`.\n - You can overwrite the settings by re-enabling `UIEffectProjectSettings`. This allows you to hot update shader variants and presets.\n\n```csharp\nprivate static IEnumerator HotUpdateCoroutine()\n{\n    const string k_SettingsAddress = \"Assets/ProjectSettings/UIEffectProjectSettings.asset\";\n    yield return Addressables.LoadAssetAsync<UIEffectProjectSettings>(k_SettingsAddress);\n    while (UIEffectProjectSettings.shaderVariantCollection.WarmUpProgressively(5) == false) yield return null;\n}\n```\n\n<br><br>\n\n### :warning: Limitations\n\nHere are the limitations of UIEffect:\n\n- Shader variants used at runtime must be registered in the [Project Settings](#project-settings).\n- When using UIEffect with TextMeshProUGUI, `SamplingFilter.BlurMedium` and `SamplingFilter.BlurDetail` are not supported due to performance considerations.\n  - These will automatically fall back to `SamplingFilter.BlurFast`.\n- UIEffect supports default UI components (`Image`, `RawImage`, `Text`) and `TextMeshProUGUI`.\n  - If you want to use UIEffect with other components, create a issue or pull request.\n\n<br><br>\n\n## 🤝 Contributing\n\n### Issues\n\nIssues are incredibly valuable to this project:\n\n- Ideas provide a valuable source of contributions that others can make.\n- Problems help identify areas where this project needs improvement.\n- Questions indicate where contributors can enhance the user experience.\n\n### Pull Requests\n\nPull requests offer a fantastic way to contribute your ideas to this repository.  \nPlease refer to [CONTRIBUTING.md](https://github.com/mob-sakai/UIEffect/tree/main/CONTRIBUTING.md)\nand use [develop branch](https://github.com/mob-sakai/UIEffect/tree/develop) for development.\n\n### Support\n\nThis is an open-source project developed during my spare time.  \nIf you appreciate it, consider supporting me.  \nYour support allows me to dedicate more time to development. 😊\n\n[![](https://user-images.githubusercontent.com/12690315/66942881-03686280-f085-11e9-9586-fc0b6011029f.png)](https://github.com/users/mob-sakai/sponsorship)  \n[![](https://user-images.githubusercontent.com/12690315/50731629-3b18b480-11ad-11e9-8fad-4b13f27969c1.png)](https://www.patreon.com/join/2343451?)\n\n<br><br>\n\n## License\n\n* MIT\n\n## Author\n\n* ![](https://user-images.githubusercontent.com/12690315/96986908-434a0b80-155d-11eb-8275-85138ab90afa.png) [mob-sakai](https://github.com/mob-sakai) [![](https://img.shields.io/twitter/follow/mob_sakai.svg?label=Follow&style=social)](https://twitter.com/intent/follow?screen_name=mob_sakai) ![GitHub followers](https://img.shields.io/github/followers/mob-sakai?style=social)\n\n## See Also\n\n* GitHub page : https://github.com/mob-sakai/UIEffect\n* Releases : https://github.com/mob-sakai/UIEffect/releases\n* Issue tracker : https://github.com/mob-sakai/UIEffect/issues\n* Change log : https://github.com/mob-sakai/UIEffect/blob/main/Packages/src/CHANGELOG.md","Packages/src/CHANGELOG.md":"## [5.11.7](https://github.com/mob-sakai/UIEffect/compare/5.11.6...5.11.7) (2026-08-27)\n\n\n### Bug Fixes\n\n* ignore shader registry order changes ([014bba3](https://github.com/mob-sakai/UIEffect/commit/014bba3f5687ecfe41caa00d454f196baf7e3483)), closes [#407](https://github.com/mob-sakai/UIEffect/issues/407)\n\n## [5.11.6](https://github.com/mob-sakai/UIEffect/compare/5.11.5...5.11.6) (2026-08-17)\n\n\n### Bug Fixes\n\n* refresh material when changing shadow mode ([8bb782c](https://github.com/mob-sakai/UIEffect/commit/8bb782c90afb42d6569d8dfcfe022b007171f97e))\n\n## [5.11.5](https://github.com/mob-sakai/UIEffect/compare/5.11.4...5.11.5) (2026-07-23)\n\n\n### Bug Fixes\n\n* fix memory leak ([2dcb7f7](https://github.com/mob-sakai/UIEffect/commit/2dcb7f7e8678a2ffcf3832d0c5011aa1da6c3677)), closes [#405](https://github.com/mob-sakai/UIEffect/issues/405)\n\n## [5.11.4](https://github.com/mob-sakai/UIEffect/compare/5.11.3...5.11.4) (2026-07-22)\n\n\n### Bug Fixes\n\n* infinite asset import loop caused by unchanged ProjectSettings being marked dirty ([dbf8ae0](https://github.com/mob-sakai/UIEffect/commit/dbf8ae00f50470912d458fda853a34ef94d7d533)), closes [#404](https://github.com/mob-sakai/UIEffect/issues/404)\n\n## [5.11.3](https://github.com/mob-sakai/UIEffect/compare/5.11.2...5.11.3) (2026-07-04)\n\n\n### Bug Fixes\n\n* TextMeshPro support is not working ([9d98096](https://github.com/mob-sakai/UIEffect/commit/9d980961d6cf45e519ad96bf2e7260ed515f0f70)), closes [#402](https://github.com/mob-sakai/UIEffect/issues/402)\n\n## [5.11.2](https://github.com/mob-sakai/UIEffect/compare/5.11.1...5.11.2) (2026-07-02)\n\n\n### Bug Fixes\n\n* add null check ([161fc54](https://github.com/mob-sakai/UIEffect/commit/161fc546cad251ad798c2fd9e9472d687aa7f2c3))\n\n## [5.11.1](https://github.com/mob-sakai/UIEffect/compare/5.11.0...5.11.1) (2026-06-29)\n\n\n### Bug Fixes\n\n* support \"disable domain reload\" on Unity 6.6 or later ([a556c28](https://github.com/mob-sakai/UIEffect/commit/a556c282210303d9e7a7c284bb4b41ef3a35e3e1))\n\n# [5.11.0](https://github.com/mob-sakai/UIEffect/compare/5.10.9...5.11.0) (2026-06-25)\n\n\n### Bug Fixes\n\n* enable/disable Gameobject break effect with 'TrueShadow' ([730aa2b](https://github.com/mob-sakai/UIEffect/commit/730aa2bb4d872ddab63f2dad611a063cefa07064)), closes [#400](https://github.com/mob-sakai/UIEffect/issues/400)\n* select TMP submesh by mesh before material ([f538ef2](https://github.com/mob-sakai/UIEffect/commit/f538ef2cba3d4d76f6683bccee65d5a9694dad37))\n* some fix ([b6b538f](https://github.com/mob-sakai/UIEffect/commit/b6b538f64f0b06ddfb4ad2edd6b7db6dc1d067d8))\n* Support for skipping \"reload domain\" ([ec3fb13](https://github.com/mob-sakai/UIEffect/commit/ec3fb13c111638781bf852e2a4a4747fbfeb7d3a))\n\n\n### Features\n\n* add option to remove from preloadedAssets when build player ([e955715](https://github.com/mob-sakai/UIEffect/commit/e955715c99c474881e0b27ecc325061ce0d866a0)), closes [#393](https://github.com/mob-sakai/UIEffect/issues/393)\n* support XBOX One/Series ([72bb1c5](https://github.com/mob-sakai/UIEffect/commit/72bb1c51318829e7ced3b1436892a5969aedd9a3)), closes [#385](https://github.com/mob-sakai/UIEffect/issues/385) [#394](https://github.com/mob-sakai/UIEffect/issues/394)\n\n## [5.10.9](https://github.com/mob-sakai/UIEffect/compare/5.10.8...5.10.9) (2026-06-08)\n\n\n### Bug Fixes\n\n* ambiguous call to 'lerp' in shader ([cd68b36](https://github.com/mob-sakai/UIEffect/commit/cd68b364c48e979d6ef227e53a522f096e0df47a)), closes [#390](https://github.com/mob-sakai/UIEffect/issues/390)\n* Clarify that the `ShaderGraph support` is available only in Unity 2023.2/6.0 or later ([57031c3](https://github.com/mob-sakai/UIEffect/commit/57031c3e3c2d64ee76d3e568d378cd54a5e84af5)), closes [#391](https://github.com/mob-sakai/UIEffect/issues/391)\n* support Unity 6.5 or later ([2d6f7ed](https://github.com/mob-sakai/UIEffect/commit/2d6f7ed63dd83b3f90c2fa6d93a3c84afd6de866)), closes [#392](https://github.com/mob-sakai/UIEffect/issues/392) [#398](https://github.com/mob-sakai/UIEffect/issues/398)\n* UIEffect.detailColor is not working ([f3da972](https://github.com/mob-sakai/UIEffect/commit/f3da972c0cba526f7784207c2d8ab48b5dd692f3)), closes [#399](https://github.com/mob-sakai/UIEffect/issues/399)\n\n## [5.10.8](https://github.com/mob-sakai/UIEffect/compare/5.10.7...5.10.8) (2026-01-16)\n\n\n### Bug Fixes\n\n* Canvas not properly cached when objects are outside Canvas ([4a4e50e](https://github.com/mob-sakai/UIEffect/commit/4a4e50e01fb50925352c73b27901024494ae933c))\n\n## [5.10.7](https://github.com/mob-sakai/UIEffect/compare/5.10.6...5.10.7) (2025-12-18)\n\n\n### Bug Fixes\n\n* support Unity 6000.4 ([7fc0c73](https://github.com/mob-sakai/UIEffect/commit/7fc0c7364d8dc39e26eac3c3b79797b139f09817))\n\n## [5.10.6](https://github.com/mob-sakai/UIEffect/compare/5.10.5...5.10.6) (2025-12-18)\n\n\n### Bug Fixes\n\n* fixed an issue where shader variants were not registered automatically ([6b79864](https://github.com/mob-sakai/UIEffect/commit/6b79864a394d79e6ad13f64af1d521fab1f781a7)), closes [#383](https://github.com/mob-sakai/UIEffect/issues/383)\n\n## [5.10.5](https://github.com/mob-sakai/UIEffect/compare/5.10.4...5.10.5) (2025-11-20)\n\n\n### Bug Fixes\n\n* graphic disappears when changing filters from code ([8776057](https://github.com/mob-sakai/UIEffect/commit/87760570ec7f4e2ca395cfaa0d2ab5d28c9cf9f3)), closes [#382](https://github.com/mob-sakai/UIEffect/issues/382)\n\n## [5.10.4](https://github.com/mob-sakai/UIEffect/compare/5.10.3...5.10.4) (2025-10-27)\n\n\n### Bug Fixes\n\n* remove `sealed` from `UIEffect` and `UIEffectReplica` ([2fd87e9](https://github.com/mob-sakai/UIEffect/commit/2fd87e909af65bf88a9c39cd157dfb06a56b3af0)), closes [#379](https://github.com/mob-sakai/UIEffect/issues/379)\n\n## [5.10.3](https://github.com/mob-sakai/UIEffect/compare/5.10.2...5.10.3) (2025-10-22)\n\n\n### Bug Fixes\n\n* displays as black rectangle when opening editor ([4a8d341](https://github.com/mob-sakai/UIEffect/commit/4a8d341625f73d70c512f7e6f0b864be1adbf459)), closes [#376](https://github.com/mob-sakai/UIEffect/issues/376)\n\n## [5.10.2](https://github.com/mob-sakai/UIEffect/compare/5.10.1...5.10.2) (2025-10-16)\n\n\n### Bug Fixes\n\n* [improve performance] code optimization ([e6fb78a](https://github.com/mob-sakai/UIEffect/commit/e6fb78a0f67ed6f70be08259f674ab2f83364bd7))\n\n## [5.10.1](https://github.com/mob-sakai/UIEffect/compare/5.10.0...5.10.1) (2025-10-06)\n\n\n### Bug Fixes\n\n* [improve performance] `UpdateViewMatrix` is called even though (direct-)parent canvas is disabled ([533d7b8](https://github.com/mob-sakai/UIEffect/commit/533d7b8c0a33871b1849fbda862d4fa1899822f4)), closes [#373](https://github.com/mob-sakai/UIEffect/issues/373)\n\n# [5.10.0](https://github.com/mob-sakai/UIEffect/compare/5.9.7...5.10.0) (2025-09-26)\n\n\n### Bug Fixes\n\n* `TmpProxy` causes loss of modifications from other `IMeshModifiers` ([c4202b4](https://github.com/mob-sakai/UIEffect/commit/c4202b45d28fa84567a5671baaef8fa3e3df85dc)), closes [#371](https://github.com/mob-sakai/UIEffect/issues/371)\n* display may disappear when using TMP SubMesh (multi-language or sprites, etc.) ([b4adb32](https://github.com/mob-sakai/UIEffect/commit/b4adb325120eeed64af1d9cb2468a1e1e8e10812)), closes [#372](https://github.com/mob-sakai/UIEffect/issues/372)\n* TMP Text sprite submesh lost when changing fontMaterial ([59874dd](https://github.com/mob-sakai/UIEffect/commit/59874ddffe356f927dc8ff9b157c54043e149522)), closes [#368](https://github.com/mob-sakai/UIEffect/issues/368)\n\n\n### Features\n\n* [improve performance] merged apply_color function and reduced shader compilation size ([ce69258](https://github.com/mob-sakai/UIEffect/commit/ce692580a33c0c433fd7fadb64a3dcda0121b2ff))\n* [improve performance] various view matrices are only updated when necessary ([6c808aa](https://github.com/mob-sakai/UIEffect/commit/6c808aa3417450fd1ce0fc6fbfe0adffdff9a79a))\n\n## [5.9.7](https://github.com/mob-sakai/UIEffect/compare/5.9.6...5.9.7) (2025-09-01)\n\n\n### Bug Fixes\n\n* edges of `TransitionFilter.Shiny` appear sharp ([b077d97](https://github.com/mob-sakai/UIEffect/commit/b077d97ed706acbbdd3b20e765ec0552fa464f9b)), closes [#366](https://github.com/mob-sakai/UIEffect/issues/366)\n* error message sometimes after importing assets ([3207105](https://github.com/mob-sakai/UIEffect/commit/3207105a067801696de789d282c74a93b798ed57)), closes [#365](https://github.com/mob-sakai/UIEffect/issues/365)\n* flickering issue when scale Y changes when used `ShadowMode` with TextMeshPro ([4cca2fb](https://github.com/mob-sakai/UIEffect/commit/4cca2fb5ab34ea454ff8df3def5f1730a71a198c)), closes [#367](https://github.com/mob-sakai/UIEffect/issues/367)\n* skip monitoring TMP objects that can ignore Y-axis scaling ([d1adb33](https://github.com/mob-sakai/UIEffect/commit/d1adb33884971aa7d6c473fcd08cdf25e58cd261))\n\n## [5.9.6](https://github.com/mob-sakai/UIEffect/compare/5.9.5...5.9.6) (2025-07-17)\n\n\n### Bug Fixes\n\n* `ColorFilter` does not output intended color when vertex color is not white ([9dffdb0](https://github.com/mob-sakai/UIEffect/commit/9dffdb0ed88750a915fdd5e437b79ab766ce45c2)), closes [#363](https://github.com/mob-sakai/UIEffect/issues/363)\n* draw calls increase even when using `UIEffectReplica` ([83128eb](https://github.com/mob-sakai/UIEffect/commit/83128ebb09305e4c15a58968a94550179e96ffac)), closes [#364](https://github.com/mob-sakai/UIEffect/issues/364)\n\n## [5.9.5](https://github.com/mob-sakai/UIEffect/compare/5.9.4...5.9.5) (2025-06-26)\n\n\n### Bug Fixes\n\n* `GetGradientKeys` and `GetTransitionGradientKeys` cannot get GradientMode ([fd2d1b8](https://github.com/mob-sakai/UIEffect/commit/fd2d1b80592ac4ea62e15b6150be63964b113fa2)), closes [#358](https://github.com/mob-sakai/UIEffect/issues/358)\n\n## [5.9.4](https://github.com/mob-sakai/UIEffect/compare/5.9.3...5.9.4) (2025-06-25)\n\n\n### Bug Fixes\n\n* colors specified in UIEffect are output differently in linear color space ([0d7fb1e](https://github.com/mob-sakai/UIEffect/commit/0d7fb1eb63881b67f2658567750a83c92187df35)), closes [#359](https://github.com/mob-sakai/UIEffect/issues/359)\n\n## [5.9.3](https://github.com/mob-sakai/UIEffect/compare/5.9.2...5.9.3) (2025-06-23)\n\n\n### Bug Fixes\n\n* add `GetGradientKeys` and `GetTransitionGradientKeys` APIs ([a0c3e49](https://github.com/mob-sakai/UIEffect/commit/a0c3e4997af181ae16744c53ad3867e2106ccff3)), closes [#358](https://github.com/mob-sakai/UIEffect/issues/358)\n* support world canvas without UI events ([cadbb8d](https://github.com/mob-sakai/UIEffect/commit/cadbb8d68d17a2ec7e2d6e8e885d711e61fa53af)), closes [#356](https://github.com/mob-sakai/UIEffect/issues/356) [#357](https://github.com/mob-sakai/UIEffect/issues/357)\n\n## [5.9.2](https://github.com/mob-sakai/UIEffect/compare/5.9.1...5.9.2) (2025-06-12)\n\n\n### Bug Fixes\n\n* TextMeshPro 3.2.0-pre support ([804b48c](https://github.com/mob-sakai/UIEffect/commit/804b48c73ec648eaceb720cb79551fdbf3729fc9)), closes [#355](https://github.com/mob-sakai/UIEffect/issues/355)\n\n## [5.9.1](https://github.com/mob-sakai/UIEffect/compare/5.9.0...5.9.1) (2025-06-11)\n\n\n### Bug Fixes\n\n* prefabs will be deselected when editing them ([8addbad](https://github.com/mob-sakai/UIEffect/commit/8addbad4941340807d824e295280473d197d889f)), closes [#354](https://github.com/mob-sakai/UIEffect/issues/354)\n\n# [5.9.0](https://github.com/mob-sakai/UIEffect/compare/5.8.7...5.9.0) (2025-06-09)\n\n\n### Bug Fixes\n\n* `GradationMode.RadialFast` and `GradationMode.RadialDetail` are obsolete ([1a923dd](https://github.com/mob-sakai/UIEffect/commit/1a923dd72c263de5480d71bd17b697feca317ef1))\n* soft masking not working with `DetailFilter.Masking` ([ffdeaa7](https://github.com/mob-sakai/UIEffect/commit/ffdeaa7e2f1c2a9ccb7eb21d5674e2c19021aef9))\n\n\n### Features\n\n* `GradationGradient` supports HDR color ([50f6b3c](https://github.com/mob-sakai/UIEffect/commit/50f6b3c5d20b93a2245f6d54b6eb4bc13565c3b5))\n* add `Clear` method to reset properties via script ([264c453](https://github.com/mob-sakai/UIEffect/commit/264c453bb6ebad08ef950b0cec2f38e60a1710d8)), closes [#337](https://github.com/mob-sakai/UIEffect/issues/337)\n* add `GradationMode.RadialGradient` feature ([179ec89](https://github.com/mob-sakai/UIEffect/commit/179ec89a0215af9d8046e150d98fa06371155e93)), closes [#348](https://github.com/mob-sakai/UIEffect/issues/348)\n* add `GradationReverse` option for gradient ([c0fec32](https://github.com/mob-sakai/UIEffect/commit/c0fec32d502ec1f9d03172ed200f4d9233506eb9)), closes [#348](https://github.com/mob-sakai/UIEffect/issues/348)\n* add `GradationWrapMode` option ([f98929d](https://github.com/mob-sakai/UIEffect/commit/f98929d7e9656b4c02d5545b3893748c963d1118))\n* add `TransitionFilter.Blaze` feature ([ed4716d](https://github.com/mob-sakai/UIEffect/commit/ed4716d7ada102fe0053480941925e9f27b1c2c3))\n* add new built-in presets ([4f2c9f1](https://github.com/mob-sakai/UIEffect/commit/4f2c9f12b5e115bab1418a7a0b1187269a041fc4))\n* improve performance for TextMeshPro ([6af520e](https://github.com/mob-sakai/UIEffect/commit/6af520ed408f2e5eb4d84ec0df484338719ebc8e))\n* timeline package support ([742a5cd](https://github.com/mob-sakai/UIEffect/commit/742a5cd8dc47500de4b111a132d7a8b242844342)), closes [#347](https://github.com/mob-sakai/UIEffect/issues/347)\n* update shaders in samples ([4c6cd11](https://github.com/mob-sakai/UIEffect/commit/4c6cd11d86582f2351c40374180828ad1c8955c3))\n\n## [5.8.7](https://github.com/mob-sakai/UIEffect/compare/5.8.6...5.8.7) (2025-06-09)\n\n\n### Bug Fixes\n\n* `GradationGradient` and `TransitionGradient` in reprica will be not dirty (editor) ([58b197e](https://github.com/mob-sakai/UIEffect/commit/58b197e551aea8efca10e12da8df132853d4a24e))\n* changes not reflected in rendering when TextMeshPro is cleared ([f508eb3](https://github.com/mob-sakai/UIEffect/commit/f508eb32caf6757eb4c27b98ac29a1582dcd14b4)), closes [#351](https://github.com/mob-sakai/UIEffect/issues/351)\n* setting `gradationScale` to 0 throws `DivideByZeroException` ([ecd265e](https://github.com/mob-sakai/UIEffect/commit/ecd265e4828c7f81c96a76c16df147b6c4804429))\n\n## [5.8.6](https://github.com/mob-sakai/UIEffect/compare/5.8.5...5.8.6) (2025-05-22)\n\n\n### Bug Fixes\n\n* some methods may be called multiple times when domain reload on play is disabled (editor) ([3b52c3a](https://github.com/mob-sakai/UIEffect/commit/3b52c3a8fc67980d426b8e4e2ed2067c725ca262))\n\n## [5.8.5](https://github.com/mob-sakai/UIEffect/compare/5.8.4...5.8.5) (2025-05-22)\n\n\n### Bug Fixes\n\n* skip processing when graphic is invalid ([5cd48a4](https://github.com/mob-sakai/UIEffect/commit/5cd48a463309270ec3d6501bde2add9944bbaf02))\n* TextMeshPro strikethrough and underline not displaying ([68ebae2](https://github.com/mob-sakai/UIEffect/commit/68ebae28e02045cb45996bf5b77d7d93d2f0ca82)), closes [#344](https://github.com/mob-sakai/UIEffect/issues/344)\n* TMP SubMeshUI generates overhead every frame (since 5.6.0) ([791d867](https://github.com/mob-sakai/UIEffect/commit/791d8670761902466d81412d832cddf013cd28cd)), closes [#343](https://github.com/mob-sakai/UIEffect/issues/343) [#345](https://github.com/mob-sakai/UIEffect/issues/345)\n\n## [5.8.4](https://github.com/mob-sakai/UIEffect/compare/5.8.3...5.8.4) (2025-04-30)\n\n\n### Bug Fixes\n\n* NRE while canvas is disabled ([a3773e3](https://github.com/mob-sakai/UIEffect/commit/a3773e33028c60517fb4e6c534f6280194df8e64)), closes [#342](https://github.com/mob-sakai/UIEffect/issues/342)\n\n## [5.8.3](https://github.com/mob-sakai/UIEffect/compare/5.8.2...5.8.3) (2025-04-30)\n\n\n### Bug Fixes\n\n* the alpha of the gradation color and gradient was being ignored ([3807e4c](https://github.com/mob-sakai/UIEffect/commit/3807e4c69aefaef04b2245522e7c5085ccc65a36)), closes [#341](https://github.com/mob-sakai/UIEffect/issues/341)\n\n## [5.8.2](https://github.com/mob-sakai/UIEffect/compare/5.8.1...5.8.2) (2025-04-23)\n\n\n### Bug Fixes\n\n* `Flip` is ignored when loading a preset ([e1f3abf](https://github.com/mob-sakai/UIEffect/commit/e1f3abf7a65b62718b28e33ac2f7d700c3ae3f5a))\n* fix detail color ([90ab16c](https://github.com/mob-sakai/UIEffect/commit/90ab16c3fd46435ebf7c8e47ffb4ec521d2f61c9))\n* indicate in the inspector using tooltips and asterisks that `Rotation` and `Keep Aspect Ratio` are shared properties ([2cca822](https://github.com/mob-sakai/UIEffect/commit/2cca822413aa7580e1eb777c3295d1de928cd65f))\n\n## [5.8.1](https://github.com/mob-sakai/UIEffect/compare/5.8.0...5.8.1) (2025-04-17)\n\n\n### Bug Fixes\n\n* built-in presets cannot be used with `UIEffectReplica` ([1106f4b](https://github.com/mob-sakai/UIEffect/commit/1106f4bf4632e1372d44ced9a38e98209a6b55e8))\n* New presets ignore `DetailColor` property ([1143fbb](https://github.com/mob-sakai/UIEffect/commit/1143fbb84a1e08817de93f1349ee5cdad0972db5)), closes [#336](https://github.com/mob-sakai/UIEffect/issues/336)\n* prevent built-in preset assets from being editable ([0898d73](https://github.com/mob-sakai/UIEffect/commit/0898d730add42970fb74bf2ad8aca9809bf6dd39))\n\n# [5.8.0](https://github.com/mob-sakai/UIEffect/compare/5.7.0...5.8.0) (2025-04-17)\n\n\n### Bug Fixes\n\n* `ShadowMode.Mirror` does not flip the effect ([37daad0](https://github.com/mob-sakai/UIEffect/commit/37daad01c4f3f4c259650b1493aeae204e0bd247))\n* fix alpha clipping for ShaderGraph ([ae177a8](https://github.com/mob-sakai/UIEffect/commit/ae177a800cba1561b523292279d7986d4eff9f9c))\n* unable to add editor presets as runtime presets to project settings ([726bb10](https://github.com/mob-sakai/UIEffect/commit/726bb100a0ad327619634ea73ccdccc36276d0d0)), closes [#330](https://github.com/mob-sakai/UIEffect/issues/330)\n\n\n### Features\n\n* add `DetailColor` property ([30bf783](https://github.com/mob-sakai/UIEffect/commit/30bf783320398d68b90b09b0dcf93738b4683e00)), closes [#332](https://github.com/mob-sakai/UIEffect/issues/332)\n* ScriptableObject based preset system ([f8682f3](https://github.com/mob-sakai/UIEffect/commit/f8682f3c9889fb56ff3cd9010934f998e121553a)), closes [#333](https://github.com/mob-sakai/UIEffect/issues/333)\n\n# [5.7.0](https://github.com/mob-sakai/UIEffect/compare/5.6.4...5.7.0) (2025-04-11)\n\n\n### Bug Fixes\n\n* colors appeared darker when alpha was low ([21172f3](https://github.com/mob-sakai/UIEffect/commit/21172f37c21792906ac9e33827c771d388397653))\n* shrink shader variants for color filters ([7f60a56](https://github.com/mob-sakai/UIEffect/commit/7f60a56a9af6b4ecee223b466f1b2499af0194f4))\n\n\n### Features\n\n* `UIEffectReplica.flip` has been deprecated ([6af34e2](https://github.com/mob-sakai/UIEffect/commit/6af34e2994378fd33025b41fe08898b552aa08ab))\n* add `GradationIntensity` and `GradationColorFilter` properties ([a6781b9](https://github.com/mob-sakai/UIEffect/commit/a6781b92899c38f49eccfebf4173028955a5aced))\n* calculate the normalized position on the shader side ([01bbeed](https://github.com/mob-sakai/UIEffect/commit/01bbeedde7cf2d757d6d295475f0ad9acd24dce3)), closes [#323](https://github.com/mob-sakai/UIEffect/issues/323) [#324](https://github.com/mob-sakai/UIEffect/issues/324)\n* ShaderGraph support ([2dd2e26](https://github.com/mob-sakai/UIEffect/commit/2dd2e261666b611be3a1fd5ac112db34fd99038e)), closes [#326](https://github.com/mob-sakai/UIEffect/issues/326)\n\n## [5.6.4](https://github.com/mob-sakai/UIEffect/compare/5.6.3...5.6.4) (2025-04-10)\n\n\n### Bug Fixes\n\n* avoid potential allocations ([26da24d](https://github.com/mob-sakai/UIEffect/commit/26da24dbc4022dcd71e7a58e5f02a6922ba2ddff))\n* optional shaders do not support all shader combinations ([6014ab5](https://github.com/mob-sakai/UIEffect/commit/6014ab54d010872f8fee63fc961ac5ab2edd08e1))\n\n## [5.6.3](https://github.com/mob-sakai/UIEffect/compare/5.6.2...5.6.3) (2025-04-06)\n\n\n### Bug Fixes\n\n* fix a potential `ArgumentOutOfRangeException` that could occur when changing the FontAsset in TextMeshPro ([3b095bc](https://github.com/mob-sakai/UIEffect/commit/3b095bcebd8b1264c373b8b71c27d3c35f673f3b)), closes [#327](https://github.com/mob-sakai/UIEffect/issues/327)\n\n## [5.6.2](https://github.com/mob-sakai/UIEffect/compare/5.6.1...5.6.2) (2025-04-04)\n\n\n### Bug Fixes\n\n* fix a potential `ArgumentOutOfRangeException` that could occur when changing the FontAsset in TextMeshPro ([909281c](https://github.com/mob-sakai/UIEffect/commit/909281c66b702d8497e9f847c91b688716b9c6a7)), closes [#327](https://github.com/mob-sakai/UIEffect/issues/327)\n* Remove unnecessary vertex expansion ([974e3e8](https://github.com/mob-sakai/UIEffect/commit/974e3e8769d456c5cdd8eb1767a7cf57ab4d52fc))\n* undo now works correctly after clicking the 'Clear' button in the inspector ([75ed355](https://github.com/mob-sakai/UIEffect/commit/75ed355e27faf8962390eb6788e1887ffd1b5f89))\n\n## [5.6.1](https://github.com/mob-sakai/UIEffect/compare/5.6.0...5.6.1) (2025-03-28)\n\n\n### Bug Fixes\n\n* changes were not correctly marked as dirty when loading presets ([76be0fc](https://github.com/mob-sakai/UIEffect/commit/76be0fc860c27b89235b7fb9a766dcc38b3d9924))\n\n# [5.6.0](https://github.com/mob-sakai/UIEffect/compare/5.5.3...5.6.0) (2025-03-28)\n\n\n### Bug Fixes\n\n* fix edge detection ([9462170](https://github.com/mob-sakai/UIEffect/commit/946217069f10714798070481d8576f5470e243db))\n* fix project settings icon ([202601c](https://github.com/mob-sakai/UIEffect/commit/202601c96d6fb564ee5d6b8868b0ff0a8dba0ba1))\n* the strength of ColorGlow, TransitionColorGlow, and ShadowColorGlow now changes according to intensity ([aa4ec8d](https://github.com/mob-sakai/UIEffect/commit/aa4ec8d9c449bfe361aa277e25cbb389e0daa983)), closes [#316](https://github.com/mob-sakai/UIEffect/issues/316)\n* UIEffect with TextMeshPro SubMeshUI appears black in the editor when saving assets ([de91871](https://github.com/mob-sakai/UIEffect/commit/de918718d062979c8e9b4202b6b2ae389ae10bab))\n\n\n### Features\n\n* `TransitionAutoPlaySpeed`, `TransitionTexSpeed`, and `EdgeShinyAutoPlaySpeed` are previewed only when the object is selected in edit mode ([952a94f](https://github.com/mob-sakai/UIEffect/commit/952a94f50b3ae4279a48b03d019f341e46b2f5b7)), closes [#319](https://github.com/mob-sakai/UIEffect/issues/319)\n* add 'Flip' feature ([def49c3](https://github.com/mob-sakai/UIEffect/commit/def49c34f5b963c8b0cce6fb8cace3f7d93b5a1e))\n* add `Detail Filter` feature ([3e2c5c1](https://github.com/mob-sakai/UIEffect/commit/3e2c5c1613d9a2c08487d94c4eef28f066f2eb7b))\n* add `EdgeColorGlow` option ([53db1e6](https://github.com/mob-sakai/UIEffect/commit/53db1e62546384f04b9c526df2623c4598dd34bf))\n* add `onChangeRate` event for UIEffectTweener ([8ad57c8](https://github.com/mob-sakai/UIEffect/commit/8ad57c828ef4f1d7df6dd22c1edb7af3efa04d75)), closes [#321](https://github.com/mob-sakai/UIEffect/issues/321)\n* add `TransitionTexSpeed` option ([6b8dc5e](https://github.com/mob-sakai/UIEffect/commit/6b8dc5ec338590d909511eba3bb1b2e0ec6627f3))\n* add a tool that automatically fixes shaders when 'TextMeshPro Essential Resources' are located in a non-default path ([8388d59](https://github.com/mob-sakai/UIEffect/commit/8388d590457755cda0699835b37b5bf0673c4386))\n* add built-in presets ([3db94e0](https://github.com/mob-sakai/UIEffect/commit/3db94e00f83195ff90d26ee270c7984825fa22b7))\n* add shaders for TextMeshPro Overlay/SSD ([51cd6d8](https://github.com/mob-sakai/UIEffect/commit/51cd6d8525a12581c8afd4ab5d16e5968e15c8fe))\n* Allow specifying a preset as the target for `UIEffectReplica` ([cb0e8d2](https://github.com/mob-sakai/UIEffect/commit/cb0e8d283bb8f9085d4910051b5ae0b77368db76))\n* custom transform for transition and gradation ([045db9c](https://github.com/mob-sakai/UIEffect/commit/045db9c3b79234cd12bdfb4ea52898b7d86240af))\n* expose color subfields as float-type public properties ([396d06f](https://github.com/mob-sakai/UIEffect/commit/396d06f774e10adee84d06156a7fc8723d986bbd)), closes [#321](https://github.com/mob-sakai/UIEffect/issues/321)\n* load presets partially and append to existing instance ([6542543](https://github.com/mob-sakai/UIEffect/commit/654254342265fc239804e60a64d01b80076e5e8e))\n* separate reverse curve for UIEffectTweener ([2540b75](https://github.com/mob-sakai/UIEffect/commit/2540b75349af92f1359433e73ffa3b5400479b02)), closes [#312](https://github.com/mob-sakai/UIEffect/issues/312)\n* support `SoftMaskForUGUI ` package with `UIEffect` ([65457e2](https://github.com/mob-sakai/UIEffect/commit/65457e263644c36cd772ad1f42fb9fb3f84ab753)), closes [#270](https://github.com/mob-sakai/UIEffect/issues/270)\n* support UIFlip as v4 compatible component ([e965b9e](https://github.com/mob-sakai/UIEffect/commit/e965b9e9ab33dcfab067542abf2f19bc1d5243fc)), closes [#322](https://github.com/mob-sakai/UIEffect/issues/322)\n* update demo sample ([abc9a41](https://github.com/mob-sakai/UIEffect/commit/abc9a4184c4aeac85287a882d174f9cdc2c28c04)), closes [#318](https://github.com/mob-sakai/UIEffect/issues/318) [#320](https://github.com/mob-sakai/UIEffect/issues/320)\n\n## [5.5.3](https://github.com/mob-sakai/UIEffect/compare/5.5.2...5.5.3) (2025-03-06)\n\n\n### Bug Fixes\n\n* blur with 'Filled' Image type may cause error ([f0a7642](https://github.com/mob-sakai/UIEffect/commit/f0a76424e690355c101cc2e12183d1a7e77b16c3)), closes [#313](https://github.com/mob-sakai/UIEffect/issues/313)\n* IL2CPP build fails on older versions of Unity ([1af89af](https://github.com/mob-sakai/UIEffect/commit/1af89af2c58320f67b8d753767b3b4cf905f844d)), closes [#315](https://github.com/mob-sakai/UIEffect/issues/315)\n\n## [5.5.2](https://github.com/mob-sakai/UIEffect/compare/5.5.1...5.5.2) (2025-02-28)\n\n\n### Bug Fixes\n\n* `PlayOnEnable.Reverse` in UIEffectTweener does not work ([3f5a7dc](https://github.com/mob-sakai/UIEffect/commit/3f5a7dcd2d8248b9e47fb9d38c083f26b798e063)), closes [#310](https://github.com/mob-sakai/UIEffect/issues/310)\n* `TransitionFilter` and `GradationMode` do not work correctly when the initial scale is 0 ([bdbf293](https://github.com/mob-sakai/UIEffect/commit/bdbf293c1489c0b248078969b37ec66890620d44)), closes [#311](https://github.com/mob-sakai/UIEffect/issues/311)\n* component icons will no longer be displayed in the scene view (Unity 2021.2 or later) ([40ff828](https://github.com/mob-sakai/UIEffect/commit/40ff828ff0697dc8f6597cfcf094cc63532a19dd))\n* fix potential issues ([a748adf](https://github.com/mob-sakai/UIEffect/commit/a748adf1bde5e400fcc84ec902a1438867105f75))\n* reset time button does not work correctly in the inspector when `UIEffectTweener.direction=Reverse` in the editor ([8513970](https://github.com/mob-sakai/UIEffect/commit/8513970e6f71d393430a573bfb0207428998bee1)), closes [#310](https://github.com/mob-sakai/UIEffect/issues/310)\n\n## [5.5.1](https://github.com/mob-sakai/UIEffect/compare/5.5.0...5.5.1) (2025-02-14)\n\n\n### Bug Fixes\n\n* fix v4 compatible components ([6f6a8c9](https://github.com/mob-sakai/UIEffect/commit/6f6a8c95f878a290b1c4238cd0519f14febc04b6))\n* fully visible when the transition rate is set to 1 ([0a99bb7](https://github.com/mob-sakai/UIEffect/commit/0a99bb7765443a84070e19c9ea0096808442932e)), closes [#309](https://github.com/mob-sakai/UIEffect/issues/309)\n* UIEffect with TextMeshPro appears black in the editor when saving scene ([8cbcd76](https://github.com/mob-sakai/UIEffect/commit/8cbcd765ed9e11c38e3257191c2fc7dcd2c9916e))\n\n# [5.5.0](https://github.com/mob-sakai/UIEffect/compare/5.4.0...5.5.0) (2025-02-12)\n\n\n### Features\n\n* add `GradationMode.Diagonal` with 4 colors ([b72a1c0](https://github.com/mob-sakai/UIEffect/commit/b72a1c05c6d1d7b3c0aa11582d4a97da80d7fce9)), closes [#308](https://github.com/mob-sakai/UIEffect/issues/308)\n* add built-in presets ([8930b56](https://github.com/mob-sakai/UIEffect/commit/8930b563cb580463e2265483ccd3a42cb84e644b))\n\n# [5.4.0](https://github.com/mob-sakai/UIEffect/compare/5.3.4...5.4.0) (2025-02-10)\n\n\n### Bug Fixes\n\n* gradient color is not updated when calling the `SetGradientKeys` method ([a959fdd](https://github.com/mob-sakai/UIEffect/commit/a959fddd34a93dd0846369938b1cb6be514eee2d))\n\n\n### Features\n\n* tweener supports `EdgeMode.Shiny` ([32558d4](https://github.com/mob-sakai/UIEffect/commit/32558d4481de31ed9020c82861dc2a2d8ca7d53c)), closes [#307](https://github.com/mob-sakai/UIEffect/issues/307)\n\n## [5.3.4](https://github.com/mob-sakai/UIEffect/compare/5.3.3...5.3.4) (2025-02-10)\n\n\n### Bug Fixes\n\n* UIEffect v5.3.3 with TextMeshPro is not working in play mode in editor ([365c43e](https://github.com/mob-sakai/UIEffect/commit/365c43e21dcaaff349cf1362f9bd25b7deb163f7)), closes [#306](https://github.com/mob-sakai/UIEffect/issues/306)\n\n## [5.3.3](https://github.com/mob-sakai/UIEffect/compare/5.3.2...5.3.3) (2025-02-06)\n\n\n### Bug Fixes\n\n* when modifying TextMeshPro vertices, element disapear ([7529a7c](https://github.com/mob-sakai/UIEffect/commit/7529a7c4cd8db27a6d3312bce0a6ed6b13e40f35)), closes [#305](https://github.com/mob-sakai/UIEffect/issues/305)\n\n## [5.3.2](https://github.com/mob-sakai/UIEffect/compare/5.3.1...5.3.2) (2025-02-04)\n\n\n### Bug Fixes\n\n* some effects are not working correctly for TextMeshProUGUI in Unity 6 ([63de374](https://github.com/mob-sakai/UIEffect/commit/63de3742ecd7fcdcaa8dcca8dc104c7288291211))\n\n## [5.3.1](https://github.com/mob-sakai/UIEffect/compare/5.3.0...5.3.1) (2025-01-27)\n\n\n### Bug Fixes\n\n* shader keywords for UIEfect are not recognized in Unity 6 ([fd39abf](https://github.com/mob-sakai/UIEffect/commit/fd39abf5a71138919f8feee587576ba187075304)), closes [#301](https://github.com/mob-sakai/UIEffect/issues/301)\n\n# [5.3.0](https://github.com/mob-sakai/UIEffect/compare/5.2.4...5.3.0) (2025-01-26)\n\n\n### Features\n\n* `SamplingFilter.EdgeAlpha` and `SamplingFilter.EdgeLuminance` now support the `Sampling Width` property for edge width ([33b1177](https://github.com/mob-sakai/UIEffect/commit/33b1177815b935a887c5a8918748cbeafec32b6b))\n* add `EdgeMode` feature ([eadb477](https://github.com/mob-sakai/UIEffect/commit/eadb477bcd91f8909bfa7b8976241411363ee12c))\n* add `ResetOnEnable` option for `UIEffectTweener` ([e326bb7](https://github.com/mob-sakai/UIEffect/commit/e326bb77537b921df775646142105a490ae54851)), closes [#299](https://github.com/mob-sakai/UIEffect/issues/299)\n* add `TransitionAutoSpeed` property ([7a765c3](https://github.com/mob-sakai/UIEffect/commit/7a765c32d87f6dfbdb990d5b3a272dd80696b374))\n* add `TransitionFilter.Pattern` feature ([b57e98b](https://github.com/mob-sakai/UIEffect/commit/b57e98b64c61a7c7eb3ca97f3bd7e909956ee469))\n\n## [5.2.4](https://github.com/mob-sakai/UIEffect/compare/5.2.3...5.2.4) (2025-01-26)\n\n\n### Bug Fixes\n\n* properties may not update correctly when changed via code or animation ([5994f88](https://github.com/mob-sakai/UIEffect/commit/5994f8875ed2280e5c863c30f9c7900d4dce70ed)), closes [#300](https://github.com/mob-sakai/UIEffect/issues/300)\n\n## [5.2.3](https://github.com/mob-sakai/UIEffect/compare/5.2.2...5.2.3) (2025-01-23)\n\n\n### Bug Fixes\n\n* `SamplingFilter.None` now correctly respects the sampling scale setting ([bc1578b](https://github.com/mob-sakai/UIEffect/commit/bc1578b0ca91b830b976bf200d387d0ac6963ae6))\n* fix the shadow mode inspector in editor ([da53585](https://github.com/mob-sakai/UIEffect/commit/da535854ccbeeb98b2556423425d39058bd5f479))\n* UIEffect may not work correctly when using `FallbackAtlas` with TextMeshProUGUI ([d3779f9](https://github.com/mob-sakai/UIEffect/commit/d3779f9f57d0410fa4526527ebed30885bfbc2dd)), closes [#298](https://github.com/mob-sakai/UIEffect/issues/298)\n\n## [5.2.2](https://github.com/mob-sakai/UIEffect/compare/5.2.1...5.2.2) (2025-01-18)\n\n\n### Bug Fixes\n\n* in Unity 6, `Shadow Color` has no effect on TextMeshPro ([6e4d4ab](https://github.com/mob-sakai/UIEffect/commit/6e4d4ab03db786e4c28d0f2c57d9e58655c5d029)), closes [#297](https://github.com/mob-sakai/UIEffect/issues/297)\n\n## [5.2.1](https://github.com/mob-sakai/UIEffect/compare/5.2.0...5.2.1) (2025-01-14)\n\n\n### Bug Fixes\n\n* shadow color being transparent at maximum `Shadow Fade` ([1d849e5](https://github.com/mob-sakai/UIEffect/commit/1d849e54cb57218a67afc2f8ad36d345bfdd0f74)), closes [#296](https://github.com/mob-sakai/UIEffect/issues/296)\n* TextMeshPro is not displayed in prefab mode ([2b44837](https://github.com/mob-sakai/UIEffect/commit/2b44837bb9c93e1cc817a2c1cd112b244cd09391)), closes [#295](https://github.com/mob-sakai/UIEffect/issues/295)\n* TextMeshProUGUI disappears when the Y-axis scale is changed ([8159c09](https://github.com/mob-sakai/UIEffect/commit/8159c091e8a6805a7781046ae0f660a3be13862c)), closes [#295](https://github.com/mob-sakai/UIEffect/issues/295)\n\n# [5.2.0](https://github.com/mob-sakai/UIEffect/compare/5.1.0...5.2.0) (2025-01-07)\n\n\n### Bug Fixes\n\n* `Gradation` properties do not update when a preset is loaded ([edf6943](https://github.com/mob-sakai/UIEffect/commit/edf694313f101b66f760bca64593fb87037dcb3d)), closes [#291](https://github.com/mob-sakai/UIEffect/issues/291)\n* an error occurs when saving a preset ([894c561](https://github.com/mob-sakai/UIEffect/commit/894c5610d044f211067037b6c69f9860ac496ffc)), closes [#293](https://github.com/mob-sakai/UIEffect/issues/293)\n* fix gradation gradient edge (angle gradient) ([0ef6027](https://github.com/mob-sakai/UIEffect/commit/0ef60273714c7b68131f2f0d233b16335a5cd367))\n\n\n### Features\n\n* `Angle Gradient` gradation supports fixed mode gradient ([7cb8325](https://github.com/mob-sakai/UIEffect/commit/7cb8325e445350d2175865f736186f719e1cbe00))\n* `Angle Gradient` gradation supports RectTransform pivot ([2f63adf](https://github.com/mob-sakai/UIEffect/commit/2f63adfba057bec7f8183a5b34654cdf84163a34))\n* add `Use HDR Color Picker` option for project settings (editor) ([1be0cd4](https://github.com/mob-sakai/UIEffect/commit/1be0cd45db952d05e51d508c58f65a6541df9de0)), closes [#290](https://github.com/mob-sakai/UIEffect/issues/290)\n* the `Allow To Modify Mesh Shape` property should remain unchanged when loading a preset ([f7175c0](https://github.com/mob-sakai/UIEffect/commit/f7175c037371278eb7a0c7883cffccb5c31dba0a)), closes [#294](https://github.com/mob-sakai/UIEffect/issues/294)\n* the `Sampling Scale` property should remain unchanged when loading a preset ([238a17d](https://github.com/mob-sakai/UIEffect/commit/238a17d57ddf1f6b859ce830e80a1be6c3d739f1)), closes [#292](https://github.com/mob-sakai/UIEffect/issues/292)\n\n# [5.1.0](https://github.com/mob-sakai/UIEffect/compare/5.0.2...5.1.0) (2024-12-31)\n\n\n### Bug Fixes\n\n* changing the `shadowMirrorScale` property via code does not update the effect ([d9bf0e1](https://github.com/mob-sakai/UIEffect/commit/d9bf0e12fe918fc36120be3e1df2acbb00b1762b))\n* fix reverse direction mode for UIEffectTweener ([54825ee](https://github.com/mob-sakai/UIEffect/commit/54825eedc8070e74fc276e1e08ea0073cf265189)), closes [#281](https://github.com/mob-sakai/UIEffect/issues/281) [#282](https://github.com/mob-sakai/UIEffect/issues/282) [#283](https://github.com/mob-sakai/UIEffect/issues/283)\n\n\n### Features\n\n* add `Color Glow`, `Transition Color Glow` and `Shadow Color Glow` options ([e9522d3](https://github.com/mob-sakai/UIEffect/commit/e9522d3f0e3bc0c429ef32f240625e903ca790ee))\n* add `GradationMode.Angle` and `GradationMode.AngleGradient` ([08e9ba7](https://github.com/mob-sakai/UIEffect/commit/08e9ba73d78ba52502a6e795587441061377cd99))\n* add `OnComplete` event for UIEffectTweener ([aeb78ed](https://github.com/mob-sakai/UIEffect/commit/aeb78ed577d70c47aacd754ea2aa3916e6e49c1b)), closes [#289](https://github.com/mob-sakai/UIEffect/issues/289) [#188](https://github.com/mob-sakai/UIEffect/issues/188)\n* add `PlayOnEnable` option for UIEffectTweener ([1558736](https://github.com/mob-sakai/UIEffect/commit/155873669d77fc3281caaa0fc9f861e62aa489f2))\n* add `SamplingScale` option ([2b43bc4](https://github.com/mob-sakai/UIEffect/commit/2b43bc42d4a9e0a1c224139ccf91f7a6f76656fc)), closes [#269](https://github.com/mob-sakai/UIEffect/issues/269)\n* add `Shadow Color` and `Shadow Blur` options ([d0a3ca6](https://github.com/mob-sakai/UIEffect/commit/d0a3ca60904c0eebf63178a0fb899bb17ecefe75))\n* add a button to swap gradation colors (editor) ([20a6ca0](https://github.com/mob-sakai/UIEffect/commit/20a6ca0815aaa899934fde318beecc1dde5e1132))\n* add option to not automatically plays tweener effect ([88609f5](https://github.com/mob-sakai/UIEffect/commit/88609f5e368e38224a698270113b4f3190580a19))\n* automatically display a dialog to import TextMeshPro support ([f2df188](https://github.com/mob-sakai/UIEffect/commit/f2df1889d152ae68926067978c60b4810fdef3f1))\n* gradation feature ([bbe57df](https://github.com/mob-sakai/UIEffect/commit/bbe57df7a0a184793bd6d98a2b929055f69860b3)), closes [#277](https://github.com/mob-sakai/UIEffect/issues/277) [#66](https://github.com/mob-sakai/UIEffect/issues/66)\n* on-demand UIEffect shader support ([bdd8e08](https://github.com/mob-sakai/UIEffect/commit/bdd8e0857235c56b7013fe768a333c5575aaa0ef)), closes [#212](https://github.com/mob-sakai/UIEffect/issues/212) [#271](https://github.com/mob-sakai/UIEffect/issues/271)\n* support `TextMeshPro/Bitmap` and `TextMeshPro/Mobile/Bitmap` shaders. ([23ac398](https://github.com/mob-sakai/UIEffect/commit/23ac3985d2a2d9497b2d50b3755be671f3a07aa9)), closes [#284](https://github.com/mob-sakai/UIEffect/issues/284)\n* support non full-rect graphics for some effect ([a66baea](https://github.com/mob-sakai/UIEffect/commit/a66baea1e8d895c424ba3dc1fce64f969d79561e))\n* UIEffectTweener animation preview in edit mode ([e17b4a0](https://github.com/mob-sakai/UIEffect/commit/e17b4a0bfd262dc22ad2a13af5b0571b43a74abd)), closes [#279](https://github.com/mob-sakai/UIEffect/issues/279)\n\n## [5.0.2](https://github.com/mob-sakai/UIEffect/compare/5.0.1...5.0.2) (2024-12-24)\n\n\n### Bug Fixes\n\n* incorrect transparency when applying the shiny filter to TextMeshProUGUI ([f74279f](https://github.com/mob-sakai/UIEffect/commit/f74279fb8353226b494f00582ed5eb7fe87d147f)), closes [#287](https://github.com/mob-sakai/UIEffect/issues/287)\n* TextMeshProUGUI disappears when the Y-axis scale is changed ([9d98c5d](https://github.com/mob-sakai/UIEffect/commit/9d98c5d3e1c6ead8e3312a7e3a36fe89b38aed68)), closes [#286](https://github.com/mob-sakai/UIEffect/issues/286)\n\n## [5.0.1](https://github.com/mob-sakai/UIEffect/compare/5.0.0...5.0.1) (2024-12-14)\n\n\n### Bug Fixes\n\n* build AssetBundle error ([7374747](https://github.com/mob-sakai/UIEffect/commit/73747478a4e5754891ebd4fd2d54955e82a72eb3))\n* fix cutoff transition effect ([c893cb0](https://github.com/mob-sakai/UIEffect/commit/c893cb0ce2e90bf13456adbc7d2e0e0642cbac1d))\n* fix TextMeshPro shader (underlay and bevel) ([f39097a](https://github.com/mob-sakai/UIEffect/commit/f39097a73fc8560a50f848290ce4c5a235b68cac))\n* TextMeshPro objects appeared as black blocks when saving prefabs in prefab mode ([5889486](https://github.com/mob-sakai/UIEffect/commit/5889486f18afde6dec203bbe4aaca45760a9dce1)), closes [#285](https://github.com/mob-sakai/UIEffect/issues/285)\n\n# [5.0.0](https://github.com/mob-sakai/UIEffect/compare/4.0.0...5.0.0) (2024-11-11)\n\n\n### Features\n\n* add built-in UIEffect preset ([4adb58c](https://github.com/mob-sakai/UIEffect/commit/4adb58ca61d75897e67ef8674f9be9b9d6156b24))\n* add support for TextMeshPro, including `<font>` and `<sprite>` tags ([a4f85cb](https://github.com/mob-sakai/UIEffect/commit/a4f85cb0ee58a60e20572fcce0ebf204effce51e))\n* add UIEffectProjectSettings ([1306e19](https://github.com/mob-sakai/UIEffect/commit/1306e19cab9aeb9ec86a8047d59c2a9ad11bb128))\n* add UIEffectReplica component ([3bdc61c](https://github.com/mob-sakai/UIEffect/commit/3bdc61c2efe51e198650171e7a235276b82cb1f0))\n* add UIEffectTweener component ([e2c1605](https://github.com/mob-sakai/UIEffect/commit/e2c1605c1986c34f23c85dc9ec22f00f16bca21d))\n* add v4 compatible components ([d40a019](https://github.com/mob-sakai/UIEffect/commit/d40a0198c439b47c5b87f554df7eeb6ad5741fcd))\n* completely redesigned UIEffect architecture ([4e069a4](https://github.com/mob-sakai/UIEffect/commit/4e069a45d9817095f727f3bd18d793683fb052c2))\n\n\n### BREAKING CHANGES\n\n* All v4 components are obsolete. See README to upgrade.\n","UIEffectURP/Packages/manifest.json":"{\n  \"dependencies\": {\n    \"com.coffee.development\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/Development\",\n    \"com.coffee.minimal-resource\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/MinimalResource\",\n    \"com.coffee.nano-monitor\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/NanoMonitor\",\n    \"com.coffee.symbolic-linker\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/SymbolicLinker\",\n    \"com.coffee.ui-effect\": \"file:../../Packages/src\",\n    \"com.unity.addressables\": \"2.9.1\",\n    \"com.unity.ide.rider\": \"3.0.39\",\n    \"com.unity.render-pipelines.universal\": \"17.0.4\",\n    \"com.unity.test-framework\": \"1.6.0\",\n    \"com.unity.timeline\": \"1.8.10\",\n    \"com.unity.ugui\": \"2.0.0\",\n    \"com.unity.modules.animation\": \"1.0.0\"\n  }\n}\n","Packages/src/LICENSE.md":"Copyright 2017-2024 mob-sakai\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE."},"items":[{"name":"manifest.json","path":"Packages/manifest.json","rawUrl":"https://raw.githubusercontent.com/mob-sakai/UIEffect/HEAD/Packages/manifest.json","title":"Packages Skill","category":"anthropic-skill","format":"json","content":"{\n  \"dependencies\": {\n    \"com.coffee.development\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/Development\",\n    \"com.coffee.minimal-resource\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/MinimalResource\",\n    \"com.coffee.nano-monitor\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/NanoMonitor\",\n    \"com.coffee.symbolic-linker\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/SymbolicLinker\",\n    \"com.unity.addressables\": \"1.22.3\",\n    \"com.unity.ide.rider\": \"3.0.38\",\n    \"com.unity.test-framework\": \"1.1.33\",\n    \"com.unity.textmeshpro\": \"3.0.9\",\n    \"com.unity.modules.animation\": \"1.0.0\"\n  }\n}\n","frontmatter":{"dependencies":{"com.coffee.development":"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/Development","com.coffee.minimal-resource":"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/MinimalResource","com.coffee.nano-monitor":"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/NanoMonitor","com.coffee.symbolic-linker":"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/SymbolicLinker","com.unity.addressables":"1.22.3","com.unity.ide.rider":"3.0.38","com.unity.test-framework":"1.1.33","com.unity.textmeshpro":"3.0.9","com.unity.modules.animation":"1.0.0"}},"isInternal":false,"tokens":210,"sizeBytes":677},{"name":"packages-lock.json","path":"Packages/packages-lock.json","rawUrl":"https://raw.githubusercontent.com/mob-sakai/UIEffect/HEAD/Packages/packages-lock.json","title":"Packages Skill","category":"anthropic-skill","format":"json","content":"{\n  \"dependencies\": {\n    \"com.coffee.development\": {\n      \"version\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/Development\",\n      \"depth\": 0,\n      \"source\": \"git\",\n      \"dependencies\": {},\n      \"hash\": \"4a182298bd6293c4e6e33dd40bb7a050847190d8\"\n    },\n    \"com.coffee.minimal-resource\": {\n      \"version\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/MinimalResource\",\n      \"depth\": 0,\n      \"source\": \"git\",\n      \"dependencies\": {},\n      \"hash\": \"4a182298bd6293c4e6e33dd40bb7a050847190d8\"\n    },\n    \"com.coffee.nano-monitor\": {\n      \"version\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/NanoMonitor\",\n      \"depth\": 0,\n      \"source\": \"git\",\n      \"dependencies\": {\n        \"com.unity.ugui\": \"1.0.0\"\n      },\n      \"hash\": \"4a182298bd6293c4e6e33dd40bb7a050847190d8\"\n    },\n    \"com.coffee.symbolic-linker\": {\n      \"version\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/SymbolicLinker\",\n      \"depth\": 0,\n      \"source\": \"git\",\n      \"dependencies\": {},\n      \"hash\": \"4a182298bd6293c4e6e33dd40bb7a050847190d8\"\n    },\n    \"com.coffee.ui-effect\": {\n      \"version\": \"file:src\",\n      \"depth\": 0,\n      \"source\": \"embedded\",\n      \"dependencies\": {\n        \"com.unity.ugui\": \"1.0.0\"\n      }\n    },\n    \"com.unity.addressables\": {\n      \"version\": \"1.22.3\",\n      \"depth\": 0,\n      \"source\": \"registry\",\n      \"dependencies\": {\n        \"com.unity.modules.assetbundle\": \"1.0.0\",\n        \"com.unity.modules.jsonserialize\": \"1.0.0\",\n        \"com.unity.modules.imageconversion\": \"1.0.0\",\n        \"com.unity.modules.unitywebrequest\": \"1.0.0\",\n        \"com.unity.scriptablebuildpipeline\": \"1.21.25\",\n        \"com.unity.modules.unitywebrequestassetbundle\": \"1.0.0\"\n      },\n      \"url\": \"https://packages.unity.com\"\n    },\n    \"com.unity.ext.nunit\": {\n      \"version\": \"1.0.6\",\n      \"depth\": 1,\n      \"source\": \"registry\",\n      \"dependencies\": {},\n      \"url\": \"https://packages.unity.com\"\n    },\n    \"com.unity.ide.rider\": {\n      \"version\": \"3.0.38\",\n      \"depth\": 0,\n      \"source\": \"registry\",\n      \"dependencies\": {\n        \"com.unity.ext.nunit\": \"1.0.6\"\n      },\n      \"url\": \"https://packages.unity.com\"\n    },\n    \"com.unity.scriptablebuildpipeline\": {\n      \"version\": \"1.21.25\",\n      \"depth\": 1,\n      \"source\": \"registry\",\n      \"dependencies\": {},\n      \"url\": \"https://packages.unity.com\"\n    },\n    \"com.unity.test-framework\": {\n      \"version\": \"1.1.33\",\n      \"depth\": 0,\n      \"source\": \"registry\",\n      \"dependencies\": {\n        \"com.unity.ext.nunit\": \"1.0.6\",\n        \"com.unity.modules.imgui\": \"1.0.0\",\n        \"com.unity.modules.jsonserialize\": \"1.0.0\"\n      },\n      \"url\": \"https://packages.unity.com\"\n    },\n    \"com.unity.textmeshpro\": {\n      \"version\": \"3.0.9\",\n      \"depth\": 0,\n      \"source\": \"registry\",\n      \"dependencies\": {\n        \"com.unity.ugui\": \"1.0.0\"\n      },\n      \"url\": \"https://packages.unity.com\"\n    },\n    \"com.unity.ugui\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {\n        \"com.unity.modules.ui\": \"1.0.0\",\n        \"com.unity.modules.imgui\": \"1.0.0\"\n      }\n    },\n    \"com.unity.modules.animation\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 0,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.assetbundle\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.imageconversion\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.imgui\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.jsonserialize\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.ui\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 2,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.unitywebrequest\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.unitywebrequestassetbundle\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {\n        \"com.unity.modules.assetbundle\": \"1.0.0\",\n        \"com.unity.modules.unitywebrequest\": \"1.0.0\"\n      }\n    }\n  }\n}\n","frontmatter":{"dependencies":{"com.coffee.development":{"version":"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/Development","depth":0,"source":"git","dependencies":{},"hash":"4a182298bd6293c4e6e33dd40bb7a050847190d8"},"com.coffee.minimal-resource":{"version":"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/MinimalResource","depth":0,"source":"git","dependencies":{},"hash":"4a182298bd6293c4e6e33dd40bb7a050847190d8"},"com.coffee.nano-monitor":{"version":"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/NanoMonitor","depth":0,"source":"git","dependencies":{"com.unity.ugui":"1.0.0"},"hash":"4a182298bd6293c4e6e33dd40bb7a050847190d8"},"com.coffee.symbolic-linker":{"version":"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/SymbolicLinker","depth":0,"source":"git","dependencies":{},"hash":"4a182298bd6293c4e6e33dd40bb7a050847190d8"},"com.coffee.ui-effect":{"version":"file:src","depth":0,"source":"embedded","dependencies":{"com.unity.ugui":"1.0.0"}},"com.unity.addressables":{"version":"1.22.3","depth":0,"source":"registry","dependencies":{"com.unity.modules.assetbundle":"1.0.0","com.unity.modules.jsonserialize":"1.0.0","com.unity.modules.imageconversion":"1.0.0","com.unity.modules.unitywebrequest":"1.0.0","com.unity.scriptablebuildpipeline":"1.21.25","com.unity.modules.unitywebrequestassetbundle":"1.0.0"},"url":"https://packages.unity.com"},"com.unity.ext.nunit":{"version":"1.0.6","depth":1,"source":"registry","dependencies":{},"url":"https://packages.unity.com"},"com.unity.ide.rider":{"version":"3.0.38","depth":0,"source":"registry","dependencies":{"com.unity.ext.nunit":"1.0.6"},"url":"https://packages.unity.com"},"com.unity.scriptablebuildpipeline":{"version":"1.21.25","depth":1,"source":"registry","dependencies":{},"url":"https://packages.unity.com"},"com.unity.test-framework":{"version":"1.1.33","depth":0,"source":"registry","dependencies":{"com.unity.ext.nunit":"1.0.6","com.unity.modules.imgui":"1.0.0","com.unity.modules.jsonserialize":"1.0.0"},"url":"https://packages.unity.com"},"com.unity.textmeshpro":{"version":"3.0.9","depth":0,"source":"registry","dependencies":{"com.unity.ugui":"1.0.0"},"url":"https://packages.unity.com"},"com.unity.ugui":{"version":"1.0.0","depth":1,"source":"builtin","dependencies":{"com.unity.modules.ui":"1.0.0","com.unity.modules.imgui":"1.0.0"}},"com.unity.modules.animation":{"version":"1.0.0","depth":0,"source":"builtin","dependencies":{}},"com.unity.modules.assetbundle":{"version":"1.0.0","depth":1,"source":"builtin","dependencies":{}},"com.unity.modules.imageconversion":{"version":"1.0.0","depth":1,"source":"builtin","dependencies":{}},"com.unity.modules.imgui":{"version":"1.0.0","depth":1,"source":"builtin","dependencies":{}},"com.unity.modules.jsonserialize":{"version":"1.0.0","depth":1,"source":"builtin","dependencies":{}},"com.unity.modules.ui":{"version":"1.0.0","depth":2,"source":"builtin","dependencies":{}},"com.unity.modules.unitywebrequest":{"version":"1.0.0","depth":1,"source":"builtin","dependencies":{}},"com.unity.modules.unitywebrequestassetbundle":{"version":"1.0.0","depth":1,"source":"builtin","dependencies":{"com.unity.modules.assetbundle":"1.0.0","com.unity.modules.unitywebrequest":"1.0.0"}}}},"isInternal":false,"tokens":1393,"sizeBytes":4418},{"name":".releaserc.json","path":"Packages/src/.releaserc.json","rawUrl":"https://raw.githubusercontent.com/mob-sakai/UIEffect/HEAD/Packages/src/.releaserc.json","title":"Src Skill","category":"anthropic-skill","format":"json","content":"{\n  \"branches\": [\n    \"main\",\n    \"[0-9]+.x\",\n    {\n      \"name\": \"preview\",\n      \"prerelease\": true\n    }\n  ],\n  \"tagFormat\": \"${version}\",\n  \"plugins\": [\n    \"@semantic-release/commit-analyzer\",\n    \"@semantic-release/release-notes-generator\",\n    \"@semantic-release/changelog\",\n    [\n      \"@semantic-release/npm\",\n      {\n        \"npmPublish\": false\n      }\n    ],\n    \"@semantic-release/git\",\n    \"@semantic-release/github\"\n  ]\n}\n","frontmatter":{"branches":["main","[0-9]+.x",{"name":"preview","prerelease":true}],"tagFormat":"${version}","plugins":["@semantic-release/commit-analyzer","@semantic-release/release-notes-generator","@semantic-release/changelog",["@semantic-release/npm",{"npmPublish":false}],"@semantic-release/git","@semantic-release/github"]},"isInternal":false,"tokens":113,"sizeBytes":436},{"name":"CHANGELOG.md","path":"Packages/src/CHANGELOG.md","rawUrl":"https://raw.githubusercontent.com/mob-sakai/UIEffect/HEAD/Packages/src/CHANGELOG.md","title":"Src Skill","category":"anthropic-skill","format":"markdown","content":"## [5.11.7](https://github.com/mob-sakai/UIEffect/compare/5.11.6...5.11.7) (2026-08-27)\n\n\n### Bug Fixes\n\n* ignore shader registry order changes ([014bba3](https://github.com/mob-sakai/UIEffect/commit/014bba3f5687ecfe41caa00d454f196baf7e3483)), closes [#407](https://github.com/mob-sakai/UIEffect/issues/407)\n\n## [5.11.6](https://github.com/mob-sakai/UIEffect/compare/5.11.5...5.11.6) (2026-08-17)\n\n\n### Bug Fixes\n\n* refresh material when changing shadow mode ([8bb782c](https://github.com/mob-sakai/UIEffect/commit/8bb782c90afb42d6569d8dfcfe022b007171f97e))\n\n## [5.11.5](https://github.com/mob-sakai/UIEffect/compare/5.11.4...5.11.5) (2026-07-23)\n\n\n### Bug Fixes\n\n* fix memory leak ([2dcb7f7](https://github.com/mob-sakai/UIEffect/commit/2dcb7f7e8678a2ffcf3832d0c5011aa1da6c3677)), closes [#405](https://github.com/mob-sakai/UIEffect/issues/405)\n\n## [5.11.4](https://github.com/mob-sakai/UIEffect/compare/5.11.3...5.11.4) (2026-07-22)\n\n\n### Bug Fixes\n\n* infinite asset import loop caused by unchanged ProjectSettings being marked dirty ([dbf8ae0](https://github.com/mob-sakai/UIEffect/commit/dbf8ae00f50470912d458fda853a34ef94d7d533)), closes [#404](https://github.com/mob-sakai/UIEffect/issues/404)\n\n## [5.11.3](https://github.com/mob-sakai/UIEffect/compare/5.11.2...5.11.3) (2026-07-04)\n\n\n### Bug Fixes\n\n* TextMeshPro support is not working ([9d98096](https://github.com/mob-sakai/UIEffect/commit/9d980961d6cf45e519ad96bf2e7260ed515f0f70)), closes [#402](https://github.com/mob-sakai/UIEffect/issues/402)\n\n## [5.11.2](https://github.com/mob-sakai/UIEffect/compare/5.11.1...5.11.2) (2026-07-02)\n\n\n### Bug Fixes\n\n* add null check ([161fc54](https://github.com/mob-sakai/UIEffect/commit/161fc546cad251ad798c2fd9e9472d687aa7f2c3))\n\n## [5.11.1](https://github.com/mob-sakai/UIEffect/compare/5.11.0...5.11.1) (2026-06-29)\n\n\n### Bug Fixes\n\n* support \"disable domain reload\" on Unity 6.6 or later ([a556c28](https://github.com/mob-sakai/UIEffect/commit/a556c282210303d9e7a7c284bb4b41ef3a35e3e1))\n\n# [5.11.0](https://github.com/mob-sakai/UIEffect/compare/5.10.9...5.11.0) (2026-06-25)\n\n\n### Bug Fixes\n\n* enable/disable Gameobject break effect with 'TrueShadow' ([730aa2b](https://github.com/mob-sakai/UIEffect/commit/730aa2bb4d872ddab63f2dad611a063cefa07064)), closes [#400](https://github.com/mob-sakai/UIEffect/issues/400)\n* select TMP submesh by mesh before material ([f538ef2](https://github.com/mob-sakai/UIEffect/commit/f538ef2cba3d4d76f6683bccee65d5a9694dad37))\n* some fix ([b6b538f](https://github.com/mob-sakai/UIEffect/commit/b6b538f64f0b06ddfb4ad2edd6b7db6dc1d067d8))\n* Support for skipping \"reload domain\" ([ec3fb13](https://github.com/mob-sakai/UIEffect/commit/ec3fb13c111638781bf852e2a4a4747fbfeb7d3a))\n\n\n### Features\n\n* add option to remove from preloadedAssets when build player ([e955715](https://github.com/mob-sakai/UIEffect/commit/e955715c99c474881e0b27ecc325061ce0d866a0)), closes [#393](https://github.com/mob-sakai/UIEffect/issues/393)\n* support XBOX One/Series ([72bb1c5](https://github.com/mob-sakai/UIEffect/commit/72bb1c51318829e7ced3b1436892a5969aedd9a3)), closes [#385](https://github.com/mob-sakai/UIEffect/issues/385) [#394](https://github.com/mob-sakai/UIEffect/issues/394)\n\n## [5.10.9](https://github.com/mob-sakai/UIEffect/compare/5.10.8...5.10.9) (2026-06-08)\n\n\n### Bug Fixes\n\n* ambiguous call to 'lerp' in shader ([cd68b36](https://github.com/mob-sakai/UIEffect/commit/cd68b364c48e979d6ef227e53a522f096e0df47a)), closes [#390](https://github.com/mob-sakai/UIEffect/issues/390)\n* Clarify that the `ShaderGraph support` is available only in Unity 2023.2/6.0 or later ([57031c3](https://github.com/mob-sakai/UIEffect/commit/57031c3e3c2d64ee76d3e568d378cd54a5e84af5)), closes [#391](https://github.com/mob-sakai/UIEffect/issues/391)\n* support Unity 6.5 or later ([2d6f7ed](https://github.com/mob-sakai/UIEffect/commit/2d6f7ed63dd83b3f90c2fa6d93a3c84afd6de866)), closes [#392](https://github.com/mob-sakai/UIEffect/issues/392) [#398](https://github.com/mob-sakai/UIEffect/issues/398)\n* UIEffect.detailColor is not working ([f3da972](https://github.com/mob-sakai/UIEffect/commit/f3da972c0cba526f7784207c2d8ab48b5dd692f3)), closes [#399](https://github.com/mob-sakai/UIEffect/issues/399)\n\n## [5.10.8](https://github.com/mob-sakai/UIEffect/compare/5.10.7...5.10.8) (2026-01-16)\n\n\n### Bug Fixes\n\n* Canvas not properly cached when objects are outside Canvas ([4a4e50e](https://github.com/mob-sakai/UIEffect/commit/4a4e50e01fb50925352c73b27901024494ae933c))\n\n## [5.10.7](https://github.com/mob-sakai/UIEffect/compare/5.10.6...5.10.7) (2025-12-18)\n\n\n### Bug Fixes\n\n* support Unity 6000.4 ([7fc0c73](https://github.com/mob-sakai/UIEffect/commit/7fc0c7364d8dc39e26eac3c3b79797b139f09817))\n\n## [5.10.6](https://github.com/mob-sakai/UIEffect/compare/5.10.5...5.10.6) (2025-12-18)\n\n\n### Bug Fixes\n\n* fixed an issue where shader variants were not registered automatically ([6b79864](https://github.com/mob-sakai/UIEffect/commit/6b79864a394d79e6ad13f64af1d521fab1f781a7)), closes [#383](https://github.com/mob-sakai/UIEffect/issues/383)\n\n## [5.10.5](https://github.com/mob-sakai/UIEffect/compare/5.10.4...5.10.5) (2025-11-20)\n\n\n### Bug Fixes\n\n* graphic disappears when changing filters from code ([8776057](https://github.com/mob-sakai/UIEffect/commit/87760570ec7f4e2ca395cfaa0d2ab5d28c9cf9f3)), closes [#382](https://github.com/mob-sakai/UIEffect/issues/382)\n\n## [5.10.4](https://github.com/mob-sakai/UIEffect/compare/5.10.3...5.10.4) (2025-10-27)\n\n\n### Bug Fixes\n\n* remove `sealed` from `UIEffect` and `UIEffectReplica` ([2fd87e9](https://github.com/mob-sakai/UIEffect/commit/2fd87e909af65bf88a9c39cd157dfb06a56b3af0)), closes [#379](https://github.com/mob-sakai/UIEffect/issues/379)\n\n## [5.10.3](https://github.com/mob-sakai/UIEffect/compare/5.10.2...5.10.3) (2025-10-22)\n\n\n### Bug Fixes\n\n* displays as black rectangle when opening editor ([4a8d341](https://github.com/mob-sakai/UIEffect/commit/4a8d341625f73d70c512f7e6f0b864be1adbf459)), closes [#376](https://github.com/mob-sakai/UIEffect/issues/376)\n\n## [5.10.2](https://github.com/mob-sakai/UIEffect/compare/5.10.1...5.10.2) (2025-10-16)\n\n\n### Bug Fixes\n\n* [improve performance] code optimization ([e6fb78a](https://github.com/mob-sakai/UIEffect/commit/e6fb78a0f67ed6f70be08259f674ab2f83364bd7))\n\n## [5.10.1](https://github.com/mob-sakai/UIEffect/compare/5.10.0...5.10.1) (2025-10-06)\n\n\n### Bug Fixes\n\n* [improve performance] `UpdateViewMatrix` is called even though (direct-)parent canvas is disabled ([533d7b8](https://github.com/mob-sakai/UIEffect/commit/533d7b8c0a33871b1849fbda862d4fa1899822f4)), closes [#373](https://github.com/mob-sakai/UIEffect/issues/373)\n\n# [5.10.0](https://github.com/mob-sakai/UIEffect/compare/5.9.7...5.10.0) (2025-09-26)\n\n\n### Bug Fixes\n\n* `TmpProxy` causes loss of modifications from other `IMeshModifiers` ([c4202b4](https://github.com/mob-sakai/UIEffect/commit/c4202b45d28fa84567a5671baaef8fa3e3df85dc)), closes [#371](https://github.com/mob-sakai/UIEffect/issues/371)\n* display may disappear when using TMP SubMesh (multi-language or sprites, etc.) ([b4adb32](https://github.com/mob-sakai/UIEffect/commit/b4adb325120eeed64af1d9cb2468a1e1e8e10812)), closes [#372](https://github.com/mob-sakai/UIEffect/issues/372)\n* TMP Text sprite submesh lost when changing fontMaterial ([59874dd](https://github.com/mob-sakai/UIEffect/commit/59874ddffe356f927dc8ff9b157c54043e149522)), closes [#368](https://github.com/mob-sakai/UIEffect/issues/368)\n\n\n### Features\n\n* [improve performance] merged apply_color function and reduced shader compilation size ([ce69258](https://github.com/mob-sakai/UIEffect/commit/ce692580a33c0c433fd7fadb64a3dcda0121b2ff))\n* [improve performance] various view matrices are only updated when necessary ([6c808aa](https://github.com/mob-sakai/UIEffect/commit/6c808aa3417450fd1ce0fc6fbfe0adffdff9a79a))\n\n## [5.9.7](https://github.com/mob-sakai/UIEffect/compare/5.9.6...5.9.7) (2025-09-01)\n\n\n### Bug Fixes\n\n* edges of `TransitionFilter.Shiny` appear sharp ([b077d97](https://github.com/mob-sakai/UIEffect/commit/b077d97ed706acbbdd3b20e765ec0552fa464f9b)), closes [#366](https://github.com/mob-sakai/UIEffect/issues/366)\n* error message sometimes after importing assets ([3207105](https://github.com/mob-sakai/UIEffect/commit/3207105a067801696de789d282c74a93b798ed57)), closes [#365](https://github.com/mob-sakai/UIEffect/issues/365)\n* flickering issue when scale Y changes when used `ShadowMode` with TextMeshPro ([4cca2fb](https://github.com/mob-sakai/UIEffect/commit/4cca2fb5ab34ea454ff8df3def5f1730a71a198c)), closes [#367](https://github.com/mob-sakai/UIEffect/issues/367)\n* skip monitoring TMP objects that can ignore Y-axis scaling ([d1adb33](https://github.com/mob-sakai/UIEffect/commit/d1adb33884971aa7d6c473fcd08cdf25e58cd261))\n\n## [5.9.6](https://github.com/mob-sakai/UIEffect/compare/5.9.5...5.9.6) (2025-07-17)\n\n\n### Bug Fixes\n\n* `ColorFilter` does not output intended color when vertex color is not white ([9dffdb0](https://github.com/mob-sakai/UIEffect/commit/9dffdb0ed88750a915fdd5e437b79ab766ce45c2)), closes [#363](https://github.com/mob-sakai/UIEffect/issues/363)\n* draw calls increase even when using `UIEffectReplica` ([83128eb](https://github.com/mob-sakai/UIEffect/commit/83128ebb09305e4c15a58968a94550179e96ffac)), closes [#364](https://github.com/mob-sakai/UIEffect/issues/364)\n\n## [5.9.5](https://github.com/mob-sakai/UIEffect/compare/5.9.4...5.9.5) (2025-06-26)\n\n\n### Bug Fixes\n\n* `GetGradientKeys` and `GetTransitionGradientKeys` cannot get GradientMode ([fd2d1b8](https://github.com/mob-sakai/UIEffect/commit/fd2d1b80592ac4ea62e15b6150be63964b113fa2)), closes [#358](https://github.com/mob-sakai/UIEffect/issues/358)\n\n## [5.9.4](https://github.com/mob-sakai/UIEffect/compare/5.9.3...5.9.4) (2025-06-25)\n\n\n### Bug Fixes\n\n* colors specified in UIEffect are output differently in linear color space ([0d7fb1e](https://github.com/mob-sakai/UIEffect/commit/0d7fb1eb63881b67f2658567750a83c92187df35)), closes [#359](https://github.com/mob-sakai/UIEffect/issues/359)\n\n## [5.9.3](https://github.com/mob-sakai/UIEffect/compare/5.9.2...5.9.3) (2025-06-23)\n\n\n### Bug Fixes\n\n* add `GetGradientKeys` and `GetTransitionGradientKeys` APIs ([a0c3e49](https://github.com/mob-sakai/UIEffect/commit/a0c3e4997af181ae16744c53ad3867e2106ccff3)), closes [#358](https://github.com/mob-sakai/UIEffect/issues/358)\n* support world canvas without UI events ([cadbb8d](https://github.com/mob-sakai/UIEffect/commit/cadbb8d68d17a2ec7e2d6e8e885d711e61fa53af)), closes [#356](https://github.com/mob-sakai/UIEffect/issues/356) [#357](https://github.com/mob-sakai/UIEffect/issues/357)\n\n## [5.9.2](https://github.com/mob-sakai/UIEffect/compare/5.9.1...5.9.2) (2025-06-12)\n\n\n### Bug Fixes\n\n* TextMeshPro 3.2.0-pre support ([804b48c](https://github.com/mob-sakai/UIEffect/commit/804b48c73ec648eaceb720cb79551fdbf3729fc9)), closes [#355](https://github.com/mob-sakai/UIEffect/issues/355)\n\n## [5.9.1](https://github.com/mob-sakai/UIEffect/compare/5.9.0...5.9.1) (2025-06-11)\n\n\n### Bug Fixes\n\n* prefabs will be deselected when editing them ([8addbad](https://github.com/mob-sakai/UIEffect/commit/8addbad4941340807d824e295280473d197d889f)), closes [#354](https://github.com/mob-sakai/UIEffect/issues/354)\n\n# [5.9.0](https://github.com/mob-sakai/UIEffect/compare/5.8.7...5.9.0) (2025-06-09)\n\n\n### Bug Fixes\n\n* `GradationMode.RadialFast` and `GradationMode.RadialDetail` are obsolete ([1a923dd](https://github.com/mob-sakai/UIEffect/commit/1a923dd72c263de5480d71bd17b697feca317ef1))\n* soft masking not working with `DetailFilter.Masking` ([ffdeaa7](https://github.com/mob-sakai/UIEffect/commit/ffdeaa7e2f1c2a9ccb7eb21d5674e2c19021aef9))\n\n\n### Features\n\n* `GradationGradient` supports HDR color ([50f6b3c](https://github.com/mob-sakai/UIEffect/commit/50f6b3c5d20b93a2245f6d54b6eb4bc13565c3b5))\n* add `Clear` method to reset properties via script ([264c453](https://github.com/mob-sakai/UIEffect/commit/264c453bb6ebad08ef950b0cec2f38e60a1710d8)), closes [#337](https://github.com/mob-sakai/UIEffect/issues/337)\n* add `GradationMode.RadialGradient` feature ([179ec89](https://github.com/mob-sakai/UIEffect/commit/179ec89a0215af9d8046e150d98fa06371155e93)), closes [#348](https://github.com/mob-sakai/UIEffect/issues/348)\n* add `GradationReverse` option for gradient ([c0fec32](https://github.com/mob-sakai/UIEffect/commit/c0fec32d502ec1f9d03172ed200f4d9233506eb9)), closes [#348](https://github.com/mob-sakai/UIEffect/issues/348)\n* add `GradationWrapMode` option ([f98929d](https://github.com/mob-sakai/UIEffect/commit/f98929d7e9656b4c02d5545b3893748c963d1118))\n* add `TransitionFilter.Blaze` feature ([ed4716d](https://github.com/mob-sakai/UIEffect/commit/ed4716d7ada102fe0053480941925e9f27b1c2c3))\n* add new built-in presets ([4f2c9f1](https://github.com/mob-sakai/UIEffect/commit/4f2c9f12b5e115bab1418a7a0b1187269a041fc4))\n* improve performance for TextMeshPro ([6af520e](https://github.com/mob-sakai/UIEffect/commit/6af520ed408f2e5eb4d84ec0df484338719ebc8e))\n* timeline package support ([742a5cd](https://github.com/mob-sakai/UIEffect/commit/742a5cd8dc47500de4b111a132d7a8b242844342)), closes [#347](https://github.com/mob-sakai/UIEffect/issues/347)\n* update shaders in samples ([4c6cd11](https://github.com/mob-sakai/UIEffect/commit/4c6cd11d86582f2351c40374180828ad1c8955c3))\n\n## [5.8.7](https://github.com/mob-sakai/UIEffect/compare/5.8.6...5.8.7) (2025-06-09)\n\n\n### Bug Fixes\n\n* `GradationGradient` and `TransitionGradient` in reprica will be not dirty (editor) ([58b197e](https://github.com/mob-sakai/UIEffect/commit/58b197e551aea8efca10e12da8df132853d4a24e))\n* changes not reflected in rendering when TextMeshPro is cleared ([f508eb3](https://github.com/mob-sakai/UIEffect/commit/f508eb32caf6757eb4c27b98ac29a1582dcd14b4)), closes [#351](https://github.com/mob-sakai/UIEffect/issues/351)\n* setting `gradationScale` to 0 throws `DivideByZeroException` ([ecd265e](https://github.com/mob-sakai/UIEffect/commit/ecd265e4828c7f81c96a76c16df147b6c4804429))\n\n## [5.8.6](https://github.com/mob-sakai/UIEffect/compare/5.8.5...5.8.6) (2025-05-22)\n\n\n### Bug Fixes\n\n* some methods may be called multiple times when domain reload on play is disabled (editor) ([3b52c3a](https://github.com/mob-sakai/UIEffect/commit/3b52c3a8fc67980d426b8e4e2ed2067c725ca262))\n\n## [5.8.5](https://github.com/mob-sakai/UIEffect/compare/5.8.4...5.8.5) (2025-05-22)\n\n\n### Bug Fixes\n\n* skip processing when graphic is invalid ([5cd48a4](https://github.com/mob-sakai/UIEffect/commit/5cd48a463309270ec3d6501bde2add9944bbaf02))\n* TextMeshPro strikethrough and underline not displaying ([68ebae2](https://github.com/mob-sakai/UIEffect/commit/68ebae28e02045cb45996bf5b77d7d93d2f0ca82)), closes [#344](https://github.com/mob-sakai/UIEffect/issues/344)\n* TMP SubMeshUI generates overhead every frame (since 5.6.0) ([791d867](https://github.com/mob-sakai/UIEffect/commit/791d8670761902466d81412d832cddf013cd28cd)), closes [#343](https://github.com/mob-sakai/UIEffect/issues/343) [#345](https://github.com/mob-sakai/UIEffect/issues/345)\n\n## [5.8.4](https://github.com/mob-sakai/UIEffect/compare/5.8.3...5.8.4) (2025-04-30)\n\n\n### Bug Fixes\n\n* NRE while canvas is disabled ([a3773e3](https://github.com/mob-sakai/UIEffect/commit/a3773e33028c60517fb4e6c534f6280194df8e64)), closes [#342](https://github.com/mob-sakai/UIEffect/issues/342)\n\n## [5.8.3](https://github.com/mob-sakai/UIEffect/compare/5.8.2...5.8.3) (2025-04-30)\n\n\n### Bug Fixes\n\n* the alpha of the gradation color and gradient was being ignored ([3807e4c](https://github.com/mob-sakai/UIEffect/commit/3807e4c69aefaef04b2245522e7c5085ccc65a36)), closes [#341](https://github.com/mob-sakai/UIEffect/issues/341)\n\n## [5.8.2](https://github.com/mob-sakai/UIEffect/compare/5.8.1...5.8.2) (2025-04-23)\n\n\n### Bug Fixes\n\n* `Flip` is ignored when loading a preset ([e1f3abf](https://github.com/mob-sakai/UIEffect/commit/e1f3abf7a65b62718b28e33ac2f7d700c3ae3f5a))\n* fix detail color ([90ab16c](https://github.com/mob-sakai/UIEffect/commit/90ab16c3fd46435ebf7c8e47ffb4ec521d2f61c9))\n* indicate in the inspector using tooltips and asterisks that `Rotation` and `Keep Aspect Ratio` are shared properties ([2cca822](https://github.com/mob-sakai/UIEffect/commit/2cca822413aa7580e1eb777c3295d1de928cd65f))\n\n## [5.8.1](https://github.com/mob-sakai/UIEffect/compare/5.8.0...5.8.1) (2025-04-17)\n\n\n### Bug Fixes\n\n* built-in presets cannot be used with `UIEffectReplica` ([1106f4b](https://github.com/mob-sakai/UIEffect/commit/1106f4bf4632e1372d44ced9a38e98209a6b55e8))\n* New presets ignore `DetailColor` property ([1143fbb](https://github.com/mob-sakai/UIEffect/commit/1143fbb84a1e08817de93f1349ee5cdad0972db5)), closes [#336](https://github.com/mob-sakai/UIEffect/issues/336)\n* prevent built-in preset assets from being editable ([0898d73](https://github.com/mob-sakai/UIEffect/commit/0898d730add42970fb74bf2ad8aca9809bf6dd39))\n\n# [5.8.0](https://github.com/mob-sakai/UIEffect/compare/5.7.0...5.8.0) (2025-04-17)\n\n\n### Bug Fixes\n\n* `ShadowMode.Mirror` does not flip the effect ([37daad0](https://github.com/mob-sakai/UIEffect/commit/37daad01c4f3f4c259650b1493aeae204e0bd247))\n* fix alpha clipping for ShaderGraph ([ae177a8](https://github.com/mob-sakai/UIEffect/commit/ae177a800cba1561b523292279d7986d4eff9f9c))\n* unable to add editor presets as runtime presets to project settings ([726bb10](https://github.com/mob-sakai/UIEffect/commit/726bb100a0ad327619634ea73ccdccc36276d0d0)), closes [#330](https://github.com/mob-sakai/UIEffect/issues/330)\n\n\n### Features\n\n* add `DetailColor` property ([30bf783](https://github.com/mob-sakai/UIEffect/commit/30bf783320398d68b90b09b0dcf93738b4683e00)), closes [#332](https://github.com/mob-sakai/UIEffect/issues/332)\n* ScriptableObject based preset system ([f8682f3](https://github.com/mob-sakai/UIEffect/commit/f8682f3c9889fb56ff3cd9010934f998e121553a)), closes [#333](https://github.com/mob-sakai/UIEffect/issues/333)\n\n# [5.7.0](https://github.com/mob-sakai/UIEffect/compare/5.6.4...5.7.0) (2025-04-11)\n\n\n### Bug Fixes\n\n* colors appeared darker when alpha was low ([21172f3](https://github.com/mob-sakai/UIEffect/commit/21172f37c21792906ac9e33827c771d388397653))\n* shrink shader variants for color filters ([7f60a56](https://github.com/mob-sakai/UIEffect/commit/7f60a56a9af6b4ecee223b466f1b2499af0194f4))\n\n\n### Features\n\n* `UIEffectReplica.flip` has been deprecated ([6af34e2](https://github.com/mob-sakai/UIEffect/commit/6af34e2994378fd33025b41fe08898b552aa08ab))\n* add `GradationIntensity` and `GradationColorFilter` properties ([a6781b9](https://github.com/mob-sakai/UIEffect/commit/a6781b92899c38f49eccfebf4173028955a5aced))\n* calculate the normalized position on the shader side ([01bbeed](https://github.com/mob-sakai/UIEffect/commit/01bbeedde7cf2d757d6d295475f0ad9acd24dce3)), closes [#323](https://github.com/mob-sakai/UIEffect/issues/323) [#324](https://github.com/mob-sakai/UIEffect/issues/324)\n* ShaderGraph support ([2dd2e26](https://github.com/mob-sakai/UIEffect/commit/2dd2e261666b611be3a1fd5ac112db34fd99038e)), closes [#326](https://github.com/mob-sakai/UIEffect/issues/326)\n\n## [5.6.4](https://github.com/mob-sakai/UIEffect/compare/5.6.3...5.6.4) (2025-04-10)\n\n\n### Bug Fixes\n\n* avoid potential allocations ([26da24d](https://github.com/mob-sakai/UIEffect/commit/26da24dbc4022dcd71e7a58e5f02a6922ba2ddff))\n* optional shaders do not support all shader combinations ([6014ab5](https://github.com/mob-sakai/UIEffect/commit/6014ab54d010872f8fee63fc961ac5ab2edd08e1))\n\n## [5.6.3](https://github.com/mob-sakai/UIEffect/compare/5.6.2...5.6.3) (2025-04-06)\n\n\n### Bug Fixes\n\n* fix a potential `ArgumentOutOfRangeException` that could occur when changing the FontAsset in TextMeshPro ([3b095bc](https://github.com/mob-sakai/UIEffect/commit/3b095bcebd8b1264c373b8b71c27d3c35f673f3b)), closes [#327](https://github.com/mob-sakai/UIEffect/issues/327)\n\n## [5.6.2](https://github.com/mob-sakai/UIEffect/compare/5.6.1...5.6.2) (2025-04-04)\n\n\n### Bug Fixes\n\n* fix a potential `ArgumentOutOfRangeException` that could occur when changing the FontAsset in TextMeshPro ([909281c](https://github.com/mob-sakai/UIEffect/commit/909281c66b702d8497e9f847c91b688716b9c6a7)), closes [#327](https://github.com/mob-sakai/UIEffect/issues/327)\n* Remove unnecessary vertex expansion ([974e3e8](https://github.com/mob-sakai/UIEffect/commit/974e3e8769d456c5cdd8eb1767a7cf57ab4d52fc))\n* undo now works correctly after clicking the 'Clear' button in the inspector ([75ed355](https://github.com/mob-sakai/UIEffect/commit/75ed355e27faf8962390eb6788e1887ffd1b5f89))\n\n## [5.6.1](https://github.com/mob-sakai/UIEffect/compare/5.6.0...5.6.1) (2025-03-28)\n\n\n### Bug Fixes\n\n* changes were not correctly marked as dirty when loading presets ([76be0fc](https://github.com/mob-sakai/UIEffect/commit/76be0fc860c27b89235b7fb9a766dcc38b3d9924))\n\n# [5.6.0](https://github.com/mob-sakai/UIEffect/compare/5.5.3...5.6.0) (2025-03-28)\n\n\n### Bug Fixes\n\n* fix edge detection ([9462170](https://github.com/mob-sakai/UIEffect/commit/946217069f10714798070481d8576f5470e243db))\n* fix project settings icon ([202601c](https://github.com/mob-sakai/UIEffect/commit/202601c96d6fb564ee5d6b8868b0ff0a8dba0ba1))\n* the strength of ColorGlow, TransitionColorGlow, and ShadowColorGlow now changes according to intensity ([aa4ec8d](https://github.com/mob-sakai/UIEffect/commit/aa4ec8d9c449bfe361aa277e25cbb389e0daa983)), closes [#316](https://github.com/mob-sakai/UIEffect/issues/316)\n* UIEffect with TextMeshPro SubMeshUI appears black in the editor when saving assets ([de91871](https://github.com/mob-sakai/UIEffect/commit/de918718d062979c8e9b4202b6b2ae389ae10bab))\n\n\n### Features\n\n* `TransitionAutoPlaySpeed`, `TransitionTexSpeed`, and `EdgeShinyAutoPlaySpeed` are previewed only when the object is selected in edit mode ([952a94f](https://github.com/mob-sakai/UIEffect/commit/952a94f50b3ae4279a48b03d019f341e46b2f5b7)), closes [#319](https://github.com/mob-sakai/UIEffect/issues/319)\n* add 'Flip' feature ([def49c3](https://github.com/mob-sakai/UIEffect/commit/def49c34f5b963c8b0cce6fb8cace3f7d93b5a1e))\n* add `Detail Filter` feature ([3e2c5c1](https://github.com/mob-sakai/UIEffect/commit/3e2c5c1613d9a2c08487d94c4eef28f066f2eb7b))\n* add `EdgeColorGlow` option ([53db1e6](https://github.com/mob-sakai/UIEffect/commit/53db1e62546384f04b9c526df2623c4598dd34bf))\n* add `onChangeRate` event for UIEffectTweener ([8ad57c8](https://github.com/mob-sakai/UIEffect/commit/8ad57c828ef4f1d7df6dd22c1edb7af3efa04d75)), closes [#321](https://github.com/mob-sakai/UIEffect/issues/321)\n* add `TransitionTexSpeed` option ([6b8dc5e](https://github.com/mob-sakai/UIEffect/commit/6b8dc5ec338590d909511eba3bb1b2e0ec6627f3))\n* add a tool that automatically fixes shaders when 'TextMeshPro Essential Resources' are located in a non-default path ([8388d59](https://github.com/mob-sakai/UIEffect/commit/8388d590457755cda0699835b37b5bf0673c4386))\n* add built-in presets ([3db94e0](https://github.com/mob-sakai/UIEffect/commit/3db94e00f83195ff90d26ee270c7984825fa22b7))\n* add shaders for TextMeshPro Overlay/SSD ([51cd6d8](https://github.com/mob-sakai/UIEffect/commit/51cd6d8525a12581c8afd4ab5d16e5968e15c8fe))\n* Allow specifying a preset as the target for `UIEffectReplica` ([cb0e8d2](https://github.com/mob-sakai/UIEffect/commit/cb0e8d283bb8f9085d4910051b5ae0b77368db76))\n* custom transform for transition and gradation ([045db9c](https://github.com/mob-sakai/UIEffect/commit/045db9c3b79234cd12bdfb4ea52898b7d86240af))\n* expose color subfields as float-type public properties ([396d06f](https://github.com/mob-sakai/UIEffect/commit/396d06f774e10adee84d06156a7fc8723d986bbd)), closes [#321](https://github.com/mob-sakai/UIEffect/issues/321)\n* load presets partially and append to existing instance ([6542543](https://github.com/mob-sakai/UIEffect/commit/654254342265fc239804e60a64d01b80076e5e8e))\n* separate reverse curve for UIEffectTweener ([2540b75](https://github.com/mob-sakai/UIEffect/commit/2540b75349af92f1359433e73ffa3b5400479b02)), closes [#312](https://github.com/mob-sakai/UIEffect/issues/312)\n* support `SoftMaskForUGUI ` package with `UIEffect` ([65457e2](https://github.com/mob-sakai/UIEffect/commit/65457e263644c36cd772ad1f42fb9fb3f84ab753)), closes [#270](https://github.com/mob-sakai/UIEffect/issues/270)\n* support UIFlip as v4 compatible component ([e965b9e](https://github.com/mob-sakai/UIEffect/commit/e965b9e9ab33dcfab067542abf2f19bc1d5243fc)), closes [#322](https://github.com/mob-sakai/UIEffect/issues/322)\n* update demo sample ([abc9a41](https://github.com/mob-sakai/UIEffect/commit/abc9a4184c4aeac85287a882d174f9cdc2c28c04)), closes [#318](https://github.com/mob-sakai/UIEffect/issues/318) [#320](https://github.com/mob-sakai/UIEffect/issues/320)\n\n## [5.5.3](https://github.com/mob-sakai/UIEffect/compare/5.5.2...5.5.3) (2025-03-06)\n\n\n### Bug Fixes\n\n* blur with 'Filled' Image type may cause error ([f0a7642](https://github.com/mob-sakai/UIEffect/commit/f0a76424e690355c101cc2e12183d1a7e77b16c3)), closes [#313](https://github.com/mob-sakai/UIEffect/issues/313)\n* IL2CPP build fails on older versions of Unity ([1af89af](https://github.com/mob-sakai/UIEffect/commit/1af89af2c58320f67b8d753767b3b4cf905f844d)), closes [#315](https://github.com/mob-sakai/UIEffect/issues/315)\n\n## [5.5.2](https://github.com/mob-sakai/UIEffect/compare/5.5.1...5.5.2) (2025-02-28)\n\n\n### Bug Fixes\n\n* `PlayOnEnable.Reverse` in UIEffectTweener does not work ([3f5a7dc](https://github.com/mob-sakai/UIEffect/commit/3f5a7dcd2d8248b9e47fb9d38c083f26b798e063)), closes [#310](https://github.com/mob-sakai/UIEffect/issues/310)\n* `TransitionFilter` and `GradationMode` do not work correctly when the initial scale is 0 ([bdbf293](https://github.com/mob-sakai/UIEffect/commit/bdbf293c1489c0b248078969b37ec66890620d44)), closes [#311](https://github.com/mob-sakai/UIEffect/issues/311)\n* component icons will no longer be displayed in the scene view (Unity 2021.2 or later) ([40ff828](https://github.com/mob-sakai/UIEffect/commit/40ff828ff0697dc8f6597cfcf094cc63532a19dd))\n* fix potential issues ([a748adf](https://github.com/mob-sakai/UIEffect/commit/a748adf1bde5e400fcc84ec902a1438867105f75))\n* reset time button does not work correctly in the inspector when `UIEffectTweener.direction=Reverse` in the editor ([8513970](https://github.com/mob-sakai/UIEffect/commit/8513970e6f71d393430a573bfb0207428998bee1)), closes [#310](https://github.com/mob-sakai/UIEffect/issues/310)\n\n## [5.5.1](https://github.com/mob-sakai/UIEffect/compare/5.5.0...5.5.1) (2025-02-14)\n\n\n### Bug Fixes\n\n* fix v4 compatible components ([6f6a8c9](https://github.com/mob-sakai/UIEffect/commit/6f6a8c95f878a290b1c4238cd0519f14febc04b6))\n* fully visible when the transition rate is set to 1 ([0a99bb7](https://github.com/mob-sakai/UIEffect/commit/0a99bb7765443a84070e19c9ea0096808442932e)), closes [#309](https://github.com/mob-sakai/UIEffect/issues/309)\n* UIEffect with TextMeshPro appears black in the editor when saving scene ([8cbcd76](https://github.com/mob-sakai/UIEffect/commit/8cbcd765ed9e11c38e3257191c2fc7dcd2c9916e))\n\n# [5.5.0](https://github.com/mob-sakai/UIEffect/compare/5.4.0...5.5.0) (2025-02-12)\n\n\n### Features\n\n* add `GradationMode.Diagonal` with 4 colors ([b72a1c0](https://github.com/mob-sakai/UIEffect/commit/b72a1c05c6d1d7b3c0aa11582d4a97da80d7fce9)), closes [#308](https://github.com/mob-sakai/UIEffect/issues/308)\n* add built-in presets ([8930b56](https://github.com/mob-sakai/UIEffect/commit/8930b563cb580463e2265483ccd3a42cb84e644b))\n\n# [5.4.0](https://github.com/mob-sakai/UIEffect/compare/5.3.4...5.4.0) (2025-02-10)\n\n\n### Bug Fixes\n\n* gradient color is not updated when calling the `SetGradientKeys` method ([a959fdd](https://github.com/mob-sakai/UIEffect/commit/a959fddd34a93dd0846369938b1cb6be514eee2d))\n\n\n### Features\n\n* tweener supports `EdgeMode.Shiny` ([32558d4](https://github.com/mob-sakai/UIEffect/commit/32558d4481de31ed9020c82861dc2a2d8ca7d53c)), closes [#307](https://github.com/mob-sakai/UIEffect/issues/307)\n\n## [5.3.4](https://github.com/mob-sakai/UIEffect/compare/5.3.3...5.3.4) (2025-02-10)\n\n\n### Bug Fixes\n\n* UIEffect v5.3.3 with TextMeshPro is not working in play mode in editor ([365c43e](https://github.com/mob-sakai/UIEffect/commit/365c43e21dcaaff349cf1362f9bd25b7deb163f7)), closes [#306](https://github.com/mob-sakai/UIEffect/issues/306)\n\n## [5.3.3](https://github.com/mob-sakai/UIEffect/compare/5.3.2...5.3.3) (2025-02-06)\n\n\n### Bug Fixes\n\n* when modifying TextMeshPro vertices, element disapear ([7529a7c](https://github.com/mob-sakai/UIEffect/commit/7529a7c4cd8db27a6d3312bce0a6ed6b13e40f35)), closes [#305](https://github.com/mob-sakai/UIEffect/issues/305)\n\n## [5.3.2](https://github.com/mob-sakai/UIEffect/compare/5.3.1...5.3.2) (2025-02-04)\n\n\n### Bug Fixes\n\n* some effects are not working correctly for TextMeshProUGUI in Unity 6 ([63de374](https://github.com/mob-sakai/UIEffect/commit/63de3742ecd7fcdcaa8dcca8dc104c7288291211))\n\n## [5.3.1](https://github.com/mob-sakai/UIEffect/compare/5.3.0...5.3.1) (2025-01-27)\n\n\n### Bug Fixes\n\n* shader keywords for UIEfect are not recognized in Unity 6 ([fd39abf](https://github.com/mob-sakai/UIEffect/commit/fd39abf5a71138919f8feee587576ba187075304)), closes [#301](https://github.com/mob-sakai/UIEffect/issues/301)\n\n# [5.3.0](https://github.com/mob-sakai/UIEffect/compare/5.2.4...5.3.0) (2025-01-26)\n\n\n### Features\n\n* `SamplingFilter.EdgeAlpha` and `SamplingFilter.EdgeLuminance` now support the `Sampling Width` property for edge width ([33b1177](https://github.com/mob-sakai/UIEffect/commit/33b1177815b935a887c5a8918748cbeafec32b6b))\n* add `EdgeMode` feature ([eadb477](https://github.com/mob-sakai/UIEffect/commit/eadb477bcd91f8909bfa7b8976241411363ee12c))\n* add `ResetOnEnable` option for `UIEffectTweener` ([e326bb7](https://github.com/mob-sakai/UIEffect/commit/e326bb77537b921df775646142105a490ae54851)), closes [#299](https://github.com/mob-sakai/UIEffect/issues/299)\n* add `TransitionAutoSpeed` property ([7a765c3](https://github.com/mob-sakai/UIEffect/commit/7a765c32d87f6dfbdb990d5b3a272dd80696b374))\n* add `TransitionFilter.Pattern` feature ([b57e98b](https://github.com/mob-sakai/UIEffect/commit/b57e98b64c61a7c7eb3ca97f3bd7e909956ee469))\n\n## [5.2.4](https://github.com/mob-sakai/UIEffect/compare/5.2.3...5.2.4) (2025-01-26)\n\n\n### Bug Fixes\n\n* properties may not update correctly when changed via code or animation ([5994f88](https://github.com/mob-sakai/UIEffect/commit/5994f8875ed2280e5c863c30f9c7900d4dce70ed)), closes [#300](https://github.com/mob-sakai/UIEffect/issues/300)\n\n## [5.2.3](https://github.com/mob-sakai/UIEffect/compare/5.2.2...5.2.3) (2025-01-23)\n\n\n### Bug Fixes\n\n* `SamplingFilter.None` now correctly respects the sampling scale setting ([bc1578b](https://github.com/mob-sakai/UIEffect/commit/bc1578b0ca91b830b976bf200d387d0ac6963ae6))\n* fix the shadow mode inspector in editor ([da53585](https://github.com/mob-sakai/UIEffect/commit/da535854ccbeeb98b2556423425d39058bd5f479))\n* UIEffect may not work correctly when using `FallbackAtlas` with TextMeshProUGUI ([d3779f9](https://github.com/mob-sakai/UIEffect/commit/d3779f9f57d0410fa4526527ebed30885bfbc2dd)), closes [#298](https://github.com/mob-sakai/UIEffect/issues/298)\n\n## [5.2.2](https://github.com/mob-sakai/UIEffect/compare/5.2.1...5.2.2) (2025-01-18)\n\n\n### Bug Fixes\n\n* in Unity 6, `Shadow Color` has no effect on TextMeshPro ([6e4d4ab](https://github.com/mob-sakai/UIEffect/commit/6e4d4ab03db786e4c28d0f2c57d9e58655c5d029)), closes [#297](https://github.com/mob-sakai/UIEffect/issues/297)\n\n## [5.2.1](https://github.com/mob-sakai/UIEffect/compare/5.2.0...5.2.1) (2025-01-14)\n\n\n### Bug Fixes\n\n* shadow color being transparent at maximum `Shadow Fade` ([1d849e5](https://github.com/mob-sakai/UIEffect/commit/1d849e54cb57218a67afc2f8ad36d345bfdd0f74)), closes [#296](https://github.com/mob-sakai/UIEffect/issues/296)\n* TextMeshPro is not displayed in prefab mode ([2b44837](https://github.com/mob-sakai/UIEffect/commit/2b44837bb9c93e1cc817a2c1cd112b244cd09391)), closes [#295](https://github.com/mob-sakai/UIEffect/issues/295)\n* TextMeshProUGUI disappears when the Y-axis scale is changed ([8159c09](https://github.com/mob-sakai/UIEffect/commit/8159c091e8a6805a7781046ae0f660a3be13862c)), closes [#295](https://github.com/mob-sakai/UIEffect/issues/295)\n\n# [5.2.0](https://github.com/mob-sakai/UIEffect/compare/5.1.0...5.2.0) (2025-01-07)\n\n\n### Bug Fixes\n\n* `Gradation` properties do not update when a preset is loaded ([edf6943](https://github.com/mob-sakai/UIEffect/commit/edf694313f101b66f760bca64593fb87037dcb3d)), closes [#291](https://github.com/mob-sakai/UIEffect/issues/291)\n* an error occurs when saving a preset ([894c561](https://github.com/mob-sakai/UIEffect/commit/894c5610d044f211067037b6c69f9860ac496ffc)), closes [#293](https://github.com/mob-sakai/UIEffect/issues/293)\n* fix gradation gradient edge (angle gradient) ([0ef6027](https://github.com/mob-sakai/UIEffect/commit/0ef60273714c7b68131f2f0d233b16335a5cd367))\n\n\n### Features\n\n* `Angle Gradient` gradation supports fixed mode gradient ([7cb8325](https://github.com/mob-sakai/UIEffect/commit/7cb8325e445350d2175865f736186f719e1cbe00))\n* `Angle Gradient` gradation supports RectTransform pivot ([2f63adf](https://github.com/mob-sakai/UIEffect/commit/2f63adfba057bec7f8183a5b34654cdf84163a34))\n* add `Use HDR Color Picker` option for project settings (editor) ([1be0cd4](https://github.com/mob-sakai/UIEffect/commit/1be0cd45db952d05e51d508c58f65a6541df9de0)), closes [#290](https://github.com/mob-sakai/UIEffect/issues/290)\n* the `Allow To Modify Mesh Shape` property should remain unchanged when loading a preset ([f7175c0](https://github.com/mob-sakai/UIEffect/commit/f7175c037371278eb7a0c7883cffccb5c31dba0a)), closes [#294](https://github.com/mob-sakai/UIEffect/issues/294)\n* the `Sampling Scale` property should remain unchanged when loading a preset ([238a17d](https://github.com/mob-sakai/UIEffect/commit/238a17d57ddf1f6b859ce830e80a1be6c3d739f1)), closes [#292](https://github.com/mob-sakai/UIEffect/issues/292)\n\n# [5.1.0](https://github.com/mob-sakai/UIEffect/compare/5.0.2...5.1.0) (2024-12-31)\n\n\n### Bug Fixes\n\n* changing the `shadowMirrorScale` property via code does not update the effect ([d9bf0e1](https://github.com/mob-sakai/UIEffect/commit/d9bf0e12fe918fc36120be3e1df2acbb00b1762b))\n* fix reverse direction mode for UIEffectTweener ([54825ee](https://github.com/mob-sakai/UIEffect/commit/54825eedc8070e74fc276e1e08ea0073cf265189)), closes [#281](https://github.com/mob-sakai/UIEffect/issues/281) [#282](https://github.com/mob-sakai/UIEffect/issues/282) [#283](https://github.com/mob-sakai/UIEffect/issues/283)\n\n\n### Features\n\n* add `Color Glow`, `Transition Color Glow` and `Shadow Color Glow` options ([e9522d3](https://github.com/mob-sakai/UIEffect/commit/e9522d3f0e3bc0c429ef32f240625e903ca790ee))\n* add `GradationMode.Angle` and `GradationMode.AngleGradient` ([08e9ba7](https://github.com/mob-sakai/UIEffect/commit/08e9ba73d78ba52502a6e795587441061377cd99))\n* add `OnComplete` event for UIEffectTweener ([aeb78ed](https://github.com/mob-sakai/UIEffect/commit/aeb78ed577d70c47aacd754ea2aa3916e6e49c1b)), closes [#289](https://github.com/mob-sakai/UIEffect/issues/289) [#188](https://github.com/mob-sakai/UIEffect/issues/188)\n* add `PlayOnEnable` option for UIEffectTweener ([1558736](https://github.com/mob-sakai/UIEffect/commit/155873669d77fc3281caaa0fc9f861e62aa489f2))\n* add `SamplingScale` option ([2b43bc4](https://github.com/mob-sakai/UIEffect/commit/2b43bc42d4a9e0a1c224139ccf91f7a6f76656fc)), closes [#269](https://github.com/mob-sakai/UIEffect/issues/269)\n* add `Shadow Color` and `Shadow Blur` options ([d0a3ca6](https://github.com/mob-sakai/UIEffect/commit/d0a3ca60904c0eebf63178a0fb899bb17ecefe75))\n* add a button to swap gradation colors (editor) ([20a6ca0](https://github.com/mob-sakai/UIEffect/commit/20a6ca0815aaa899934fde318beecc1dde5e1132))\n* add option to not automatically plays tweener effect ([88609f5](https://github.com/mob-sakai/UIEffect/commit/88609f5e368e38224a698270113b4f3190580a19))\n* automatically display a dialog to import TextMeshPro support ([f2df188](https://github.com/mob-sakai/UIEffect/commit/f2df1889d152ae68926067978c60b4810fdef3f1))\n* gradation feature ([bbe57df](https://github.com/mob-sakai/UIEffect/commit/bbe57df7a0a184793bd6d98a2b929055f69860b3)), closes [#277](https://github.com/mob-sakai/UIEffect/issues/277) [#66](https://github.com/mob-sakai/UIEffect/issues/66)\n* on-demand UIEffect shader support ([bdd8e08](https://github.com/mob-sakai/UIEffect/commit/bdd8e0857235c56b7013fe768a333c5575aaa0ef)), closes [#212](https://github.com/mob-sakai/UIEffect/issues/212) [#271](https://github.com/mob-sakai/UIEffect/issues/271)\n* support `TextMeshPro/Bitmap` and `TextMeshPro/Mobile/Bitmap` shaders. ([23ac398](https://github.com/mob-sakai/UIEffect/commit/23ac3985d2a2d9497b2d50b3755be671f3a07aa9)), closes [#284](https://github.com/mob-sakai/UIEffect/issues/284)\n* support non full-rect graphics for some effect ([a66baea](https://github.com/mob-sakai/UIEffect/commit/a66baea1e8d895c424ba3dc1fce64f969d79561e))\n* UIEffectTweener animation preview in edit mode ([e17b4a0](https://github.com/mob-sakai/UIEffect/commit/e17b4a0bfd262dc22ad2a13af5b0571b43a74abd)), closes [#279](https://github.com/mob-sakai/UIEffect/issues/279)\n\n## [5.0.2](https://github.com/mob-sakai/UIEffect/compare/5.0.1...5.0.2) (2024-12-24)\n\n\n### Bug Fixes\n\n* incorrect transparency when applying the shiny filter to TextMeshProUGUI ([f74279f](https://github.com/mob-sakai/UIEffect/commit/f74279fb8353226b494f00582ed5eb7fe87d147f)), closes [#287](https://github.com/mob-sakai/UIEffect/issues/287)\n* TextMeshProUGUI disappears when the Y-axis scale is changed ([9d98c5d](https://github.com/mob-sakai/UIEffect/commit/9d98c5d3e1c6ead8e3312a7e3a36fe89b38aed68)), closes [#286](https://github.com/mob-sakai/UIEffect/issues/286)\n\n## [5.0.1](https://github.com/mob-sakai/UIEffect/compare/5.0.0...5.0.1) (2024-12-14)\n\n\n### Bug Fixes\n\n* build AssetBundle error ([7374747](https://github.com/mob-sakai/UIEffect/commit/73747478a4e5754891ebd4fd2d54955e82a72eb3))\n* fix cutoff transition effect ([c893cb0](https://github.com/mob-sakai/UIEffect/commit/c893cb0ce2e90bf13456adbc7d2e0e0642cbac1d))\n* fix TextMeshPro shader (underlay and bevel) ([f39097a](https://github.com/mob-sakai/UIEffect/commit/f39097a73fc8560a50f848290ce4c5a235b68cac))\n* TextMeshPro objects appeared as black blocks when saving prefabs in prefab mode ([5889486](https://github.com/mob-sakai/UIEffect/commit/5889486f18afde6dec203bbe4aaca45760a9dce1)), closes [#285](https://github.com/mob-sakai/UIEffect/issues/285)\n\n# [5.0.0](https://github.com/mob-sakai/UIEffect/compare/4.0.0...5.0.0) (2024-11-11)\n\n\n### Features\n\n* add built-in UIEffect preset ([4adb58c](https://github.com/mob-sakai/UIEffect/commit/4adb58ca61d75897e67ef8674f9be9b9d6156b24))\n* add support for TextMeshPro, including `<font>` and `<sprite>` tags ([a4f85cb](https://github.com/mob-sakai/UIEffect/commit/a4f85cb0ee58a60e20572fcce0ebf204effce51e))\n* add UIEffectProjectSettings ([1306e19](https://github.com/mob-sakai/UIEffect/commit/1306e19cab9aeb9ec86a8047d59c2a9ad11bb128))\n* add UIEffectReplica component ([3bdc61c](https://github.com/mob-sakai/UIEffect/commit/3bdc61c2efe51e198650171e7a235276b82cb1f0))\n* add UIEffectTweener component ([e2c1605](https://github.com/mob-sakai/UIEffect/commit/e2c1605c1986c34f23c85dc9ec22f00f16bca21d))\n* add v4 compatible components ([d40a019](https://github.com/mob-sakai/UIEffect/commit/d40a0198c439b47c5b87f554df7eeb6ad5741fcd))\n* completely redesigned UIEffect architecture ([4e069a4](https://github.com/mob-sakai/UIEffect/commit/4e069a45d9817095f727f3bd18d793683fb052c2))\n\n\n### BREAKING CHANGES\n\n* All v4 components are obsolete. See README to upgrade.\n","isInternal":false,"tokens":14391,"sizeBytes":39634},{"name":"LICENSE.md","path":"Packages/src/LICENSE.md","rawUrl":"https://raw.githubusercontent.com/mob-sakai/UIEffect/HEAD/Packages/src/LICENSE.md","title":"Src Skill","category":"anthropic-skill","format":"markdown","content":"Copyright 2017-2024 mob-sakai\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.","isInternal":false,"tokens":204,"sizeBytes":1053},{"name":"package.json","path":"Packages/src/package.json","rawUrl":"https://raw.githubusercontent.com/mob-sakai/UIEffect/HEAD/Packages/src/package.json","title":"com.coffee.ui-effect","category":"anthropic-skill","format":"json","content":"{\n  \"name\": \"com.coffee.ui-effect\",\n  \"displayName\": \"UI Effect\",\n  \"description\": \"UIEffect is an open-source package that allows you to intuitively apply rich UI effects directly from the Inspector or via code.\\nCombine various filters, such as grayscale, blur, and dissolve, to decorate your UI with a unique visual style!\",\n  \"version\": \"5.11.7\",\n  \"unity\": \"2020.3\",\n  \"license\": \"MIT\",\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"git+https://github.com/mob-sakai/UIEffect.git\"\n  },\n  \"author\": {\n    \"name\": \"mob-sakai\",\n    \"email\": \"sakai861104@gmail.com\",\n    \"url\": \"https://github.com/mob-sakai\"\n  },\n  \"dependencies\": {\n    \"com.unity.ugui\": \"1.0.0\"\n  },\n  \"keywords\": [\n    \"ui\",\n    \"effect\"\n  ],\n  \"samples\": [\n    {\n      \"displayName\": \"Demo\",\n      \"description\": \"UI Effect Demo\",\n      \"path\": \"Samples~/Demo\"\n    },\n    {\n      \"displayName\": \"v4 Compatible Components\",\n      \"description\": \"v4 Compatible Components\",\n      \"path\": \"Samples~/v4 Compatible Components\"\n    },\n    {\n      \"displayName\": \"TextMeshPro Support\",\n      \"description\": \"TextMeshPro Support\",\n      \"path\": \"Samples~/TextMeshPro Support~\"\n    },\n    {\n      \"displayName\": \"TextMeshPro Support (Unity 6)\",\n      \"description\": \"TextMeshPro Support (Unity 6)\",\n      \"path\": \"Samples~/TextMeshPro Support (Unity 6)~\"\n    },\n    {\n      \"displayName\": \"ShaderGraph Support (Unity 6 BuiltIn)\",\n      \"description\": \"ShaderGraph Support (Unity 6 BuiltIn)\",\n      \"path\": \"Samples~/ShaderGraph Support (Unity 6 BuiltIn)~\"\n    },\n    {\n      \"displayName\": \"ShaderGraph Support (Unity 6 URP)\",\n      \"description\": \"ShaderGraph Support (Unity 6 URP)\",\n      \"path\": \"Samples~/ShaderGraph Support (Unity 6 URP)~\"\n    }\n  ]\n}\n","frontmatter":{"name":"com.coffee.ui-effect","displayName":"UI Effect","description":"UIEffect is an open-source package that allows you to intuitively apply rich UI effects directly from the Inspector or via code.\nCombine various filters, such as grayscale, blur, and dissolve, to decorate your UI with a unique visual style!","version":"5.11.7","unity":"2020.3","license":"MIT","repository":{"type":"git","url":"git+https://github.com/mob-sakai/UIEffect.git"},"author":{"name":"mob-sakai","email":"sakai861104@gmail.com","url":"https://github.com/mob-sakai"},"dependencies":{"com.unity.ugui":"1.0.0"},"keywords":["ui","effect"],"samples":[{"displayName":"Demo","description":"UI Effect Demo","path":"Samples~/Demo"},{"displayName":"v4 Compatible Components","description":"v4 Compatible Components","path":"Samples~/v4 Compatible Components"},{"displayName":"TextMeshPro Support","description":"TextMeshPro Support","path":"Samples~/TextMeshPro Support~"},{"displayName":"TextMeshPro Support (Unity 6)","description":"TextMeshPro Support (Unity 6)","path":"Samples~/TextMeshPro Support (Unity 6)~"},{"displayName":"ShaderGraph Support (Unity 6 BuiltIn)","description":"ShaderGraph Support (Unity 6 BuiltIn)","path":"Samples~/ShaderGraph Support (Unity 6 BuiltIn)~"},{"displayName":"ShaderGraph Support (Unity 6 URP)","description":"ShaderGraph Support (Unity 6 URP)","path":"Samples~/ShaderGraph Support (Unity 6 URP)~"}]},"isInternal":false,"tokens":479,"sizeBytes":1722},{"name":"manifest.json","path":"UIEffectURP/Packages/manifest.json","rawUrl":"https://raw.githubusercontent.com/mob-sakai/UIEffect/HEAD/UIEffectURP/Packages/manifest.json","title":"Packages Skill","category":"anthropic-skill","format":"json","content":"{\n  \"dependencies\": {\n    \"com.coffee.development\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/Development\",\n    \"com.coffee.minimal-resource\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/MinimalResource\",\n    \"com.coffee.nano-monitor\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/NanoMonitor\",\n    \"com.coffee.symbolic-linker\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/SymbolicLinker\",\n    \"com.coffee.ui-effect\": \"file:../../Packages/src\",\n    \"com.unity.addressables\": \"2.9.1\",\n    \"com.unity.ide.rider\": \"3.0.39\",\n    \"com.unity.render-pipelines.universal\": \"17.0.4\",\n    \"com.unity.test-framework\": \"1.6.0\",\n    \"com.unity.timeline\": \"1.8.10\",\n    \"com.unity.ugui\": \"2.0.0\",\n    \"com.unity.modules.animation\": \"1.0.0\"\n  }\n}\n","frontmatter":{"dependencies":{"com.coffee.development":"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/Development","com.coffee.minimal-resource":"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/MinimalResource","com.coffee.nano-monitor":"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/NanoMonitor","com.coffee.symbolic-linker":"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/SymbolicLinker","com.coffee.ui-effect":"file:../../Packages/src","com.unity.addressables":"2.9.1","com.unity.ide.rider":"3.0.39","com.unity.render-pipelines.universal":"17.0.4","com.unity.test-framework":"1.6.0","com.unity.timeline":"1.8.10","com.unity.ugui":"2.0.0","com.unity.modules.animation":"1.0.0"}},"isInternal":false,"tokens":257,"sizeBytes":813},{"name":"README.md","path":"Packages/src/README.md","rawUrl":"https://raw.githubusercontent.com/mob-sakai/UIEffect/HEAD/Packages/src/README.md","title":"src Documentation","category":"plugin-manifest","format":"markdown","content":"# <img alt=\"logo\" height=\"26\" src=\"https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-logo.png\"/> UIEffect v5 <!-- omit in toc -->\n\n[![](https://img.shields.io/npm/v/com.coffee.ui-effect?label=openupm&registry_uri=https://package.openupm.com)](https://openupm.com/packages/com.coffee.ui-effect/)\n[![](https://img.shields.io/github/v/release/mob-sakai/UIEffect?include_prereleases)](https://github.com/mob-sakai/UIEffect/releases)\n[![](https://img.shields.io/github/release-date/mob-sakai/UIEffect.svg)](https://github.com/mob-sakai/UIEffect/releases)  \n![](https://img.shields.io/badge/Unity-2020.3+-57b9d3.svg?style=flat&logo=unity)\n![](https://img.shields.io/badge/Unity-6000.0+-57b9d3.svg?style=flat&logo=unity)  \n![](https://img.shields.io/badge/TextMeshPro_Support-57b9d3.svg?style=flat)\n![](https://img.shields.io/badge/ShaderGraph_Support-57b9d3.svg?style=flat)\n![](https://img.shields.io/badge/Timeline_Support-57b9d3.svg?style=flat)\n![](https://img.shields.io/badge/UPR%2FHDPR_Support-57b9d3.svg?style=flat)\n![](https://img.shields.io/badge/VR_Support-57b9d3.svg?style=flat)  \n[![](https://img.shields.io/github/license/mob-sakai/UIEffect.svg)](https://github.com/mob-sakai/UIEffect/blob/main/LICENSE.md)\n[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-orange.svg)](http://makeapullrequest.com)\n[![](https://img.shields.io/github/watchers/mob-sakai/UIEffect.svg?style=social&label=Watch)](https://github.com/mob-sakai/UIEffect/subscription)\n[![](https://img.shields.io/twitter/follow/mob_sakai.svg?label=Follow&style=social)](https://twitter.com/intent/follow?screen_name=mob_sakai)\n\n<< [📝 Description](#-description-) | [📌 Key Features](#-key-features) | [🎮 Demo](#-demo) | [⚙ Installation](#-installation) | [🔄 Upgrading from v4 to v5](#-upgrading-from-v4-to-v5) | [🚀 Usage](#-usage) | [🤝 Contributing](#-contributing) >>\n\n⚠️ This README is for v5. For v4, please visit [here](https://github.com/mob-sakai/UIEffect/blob/upm/README.md).\n\n## 📝 Description <!-- omit in toc -->\n\n**_\"Decorate your UI, simply and powerfully.\"_**\n\nUIEffect is a powerful, open-source Unity package that transforms your UI with stunning visual effects.  \nApply professional-grade filters like grayscale, blur, and dissolve directly from the Inspector—no coding required!\n\n✨ **Perfect for**: Game developers, UI designers, and anyone looking to enhance their Unity UI with minimal effort\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-demo-title.png)\n\n- [📌 Key Features](#-key-features)\n- [🎮 Demo](#-demo)\n- [⚙ Installation](#-installation)\n  - [Install via OpenUPM](#install-via-openupm)\n  - [Install via UPM (with Package Manager UI)](#install-via-upm-with-package-manager-ui)\n  - [Install via UPM (Manually)](#install-via-upm-manually)\n  - [Install as Embedded Package](#install-as-embedded-package)\n  - [Import Additional Resources](#import-additional-resources)\n- [🔄 Upgrading from v4 to v5](#-upgrading-from-v4-to-v5)\n- [🚀 Usage](#-usage)\n  - [Getting Started](#getting-started)\n  - [Component: UIEffect](#component-uieffect)\n    - [Tone Filter](#tone-filter)\n    - [Color Filter](#color-filter)\n    - [Sampling Filter](#sampling-filter)\n    - [Transition Filter](#transition-filter)\n    - [Target Mode](#target-mode)\n    - [Blend Type](#blend-type)\n    - [Shadow Mode](#shadow-mode)\n    - [Gradation Mode](#gradation-mode)\n    - [Edge Mode](#edge-mode)\n    - [Detail Filter](#detail-filter)\n    - [Flip](#flip)\n    - [Others](#others)\n  - [Component: UIEffectTweener](#component-uieffecttweener)\n  - [Component: UIEffectReplica](#component-uieffectreplica)\n  - [Usage with TextMeshPro](#usage-with-textmeshpro)\n  - [Usage with SoftMaskForUGUI](#usage-with-softmaskforugui)\n  - [Usage with ShaderGraph](#usage-with-shadergraph)\n  - [Usage with Timeline](#usage-with-timeline)\n  - [Usage with Custom Shader](#usage-with-custom-shader)\n  - [Runtime/Editor Preset for UIEffect](#runtimeeditor-preset-for-uieffect)\n  - [Usage with Code](#usage-with-code)\n  - [Project Settings](#project-settings)\n    - [Settings](#settings)\n    - [Editor](#editor)\n    - [Shader](#shader)\n  - [:warning: Limitations](#warning-limitations)\n- [🤝 Contributing](#-contributing)\n  - [Issues](#issues)\n  - [Pull Requests](#pull-requests)\n  - [Support](#support)\n- [License](#license)\n- [Author](#author)\n- [See Also](#see-also)\n\n<br><br>\n\n## 📌 Key Features\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-keyfeatures.png)\n\n- **UIEffect is out-of-the-box!**: Easily apply effects by adjusting parameters directly in the inspector.\n- **Rich effect combinations**: Decorate your UI with a variety of effects, such as grayscale, blur, and dissolve, by combining multiple filters and parameters.\n- **Efficient shader builds**: Only the shader variants in use are built, resulting in shorter build times.\n- **URP/HDRP/VR support**: Compatible with URP, HDRP, and VR environments.\n- **Runtime and editor presets**: Presets are available both at runtime and in the editor.\n- **TextMeshPro support**: Supports TextMeshPro, including `<font>` and `<sprite>` tags.\n- **UIEffectReplica Component**: Duplicate effects and apply them to multiple UI elements at once.\n- **UIEffectTweener Component**: A simple tweener component to play, stop, pause, and resume effects.\n- **AnimationClip support**: Allows control of effect animations using `AnimationClips`.\n- **v4 compatible components (optional)**: For easy upgrading with minimal changes, compatible v4 components are available optionally.\n- **SoftMaskForUGUI support (optional)**: Compatible with SoftMaskForUGUI for creating soft masks for UI elements. See for more details [here](#usage-with-softmaskforugui).\n- **ShaderGraph support (optional)**: Add `Canvas (UIEffect)` sub target (material) for UIEffect shaders. See for more details [here](#usage-with-shadergraph).\n- **Timeline support**: Control UIEffect using Timeline with `ControlTrack` and `UIEffect Tracks`. See for more details [here](#usage-with-timeline).\n\n<br><br>\n\n## 🎮 Demo\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1749461316801.png)\n<img src=\"https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-demo-pattern.gif\" width=\"582\"/>  \n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-demo-showcase.png)  \n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-demo-tmp.png)  \n\n[Try the WebGL Demo](https://mob-sakai.github.io/UIEffect/)\n\n<br><br>\n\n## ⚙ Installation\n\n_This package requires **Unity 2020.3 or later**._\n\n### Install via OpenUPM\n\n- This package is available on [OpenUPM](https://openupm.com/packages/com.coffee.ui-effect/) package registry.\n- This is the preferred method of installation, as you can easily receive updates as they're released.\n- If you have [openupm-cli](https://github.com/openupm/openupm-cli) installed, then run the following command in your project's directory:\n  ```\n  openupm add com.coffee.ui-effect\n  ```\n- To update the package, use Package Manager UI (`Window > Package Manager`) or run the following command with `@{version}`:\n  ```\n  openupm add com.coffee.ui-effect@5.9.0\n  ```\n\n### Install via UPM (with Package Manager UI)\n\n- Click `Window > Package Manager` to open Package Manager UI.\n- Click `+ > Add package from git URL...` and input the repository URL: `https://github.com/mob-sakai/UIEffect.git?path=Packages/src`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/upm-add-from-url.png)\n- To update the package, change suffix `#{version}` to the target version.\n    - e.g. `https://github.com/mob-sakai/UIEffect.git?path=Packages/src#5.9.0`\n\n### Install via UPM (Manually)\n\n- Open the `Packages/manifest.json` file in your project. Then add this package somewhere in the `dependencies` block:\n  ```json\n  {\n    \"dependencies\": {\n      \"com.coffee.ui-effect\": \"https://github.com/mob-sakai/UIEffect.git?path=Packages/src\",\n      ...\n    }\n  }\n  ```\n\n- To update the package, change suffix `#{version}` to the target version.\n    - e.g. `\"com.coffee.ui-effect\": \"https://github.com/mob-sakai/UIEffect.git?path=Packages/src#5.9.0\",`\n\n### Install as Embedded Package\n\n1. Download the `Source code (zip)` file from [Releases](https://github.com/mob-sakai/UIEffect/releases) and\n   extract it.\n2. Move the `<extracted_dir>/Packages/src` directory into your project's `Packages` directory.  \n   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/upm-add-as-embedded.png)\n    - You can rename the `src` directory if needed.\n    - If you intend to fix bugs or add features, installing it as an embedded package is recommended.\n    - To update the package, re-download it and replace the existing contents.\n\n### Import Additional Resources\n\nAdditional resources can be imported to extend functionality.\n\n- [🔄 Upgrading from v4 to v5](#-upgrading-from-v4-to-v5)\n- [Usage with TextMeshPro](#usage-with-textmeshpro)\n- [Usage with ShaderGraph](#usage-with-shadergraph)\n\n<br><br>\n\n## 🔄 Upgrading from v4 to v5\n\nIf upgrading from UIEffect v4 to v5, note the following breaking changes:\n\n1. If you are installing via git URL, add `?path=Packages/src`. The default branch is changed `upm` to `main`.\n   ```json\n   // v4\n   \"com.coffee.ui-effect\": \"https://github.com/mob-sakai/UIEffect.git\",\n   \"com.coffee.ui-effect\": \"https://github.com/mob-sakai/UIEffect.git#upm\",\n   \n   // v5\n   \"com.coffee.ui-effect\": \"https://github.com/mob-sakai/UIEffect.git?path=Packages/src\",\n   \"com.coffee.ui-effect\": \"https://github.com/mob-sakai/UIEffect.git?path=Packages/src#main\",\n   ```\n\n2. Import the `v4 Compatible Components` sample from the Package Manager window.  \n\n3. All v4 components are obsolete.  \n- v4 `UIEffect` component is now `UIEffectV4` component. Change the reference in the code.\n- The `effectArea` property in some components are not supported in v5.\n- `UIShadow`, `UIGradient` components are not supported in v5.\n- v4 components can be converted to v5 `UIEffect` component by selecting `Convert To UIEffect` from the context menu.  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-v4-convert.png)\n\n<br><br>\n\n## 🚀 Usage\n\n### Getting Started\n\n1. [Install the package](#-installation).\n\n2. Add a `UIEffect` component to a UI element (Image, RawImage, Text, TextMeshProUGUI, etc...) from the `Add Component` in the inspector or `Component > UI > UIEffect` menu.  \n   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-add-component.png)\n\n3. Set `Tone Filter` to `Grayscale` and `Tone Intensity` to `1.0`.  \n   <img src=\"https://github.com/mob-sakai/mob-sakai/releases/download/docs/1749029605043.png\" width=\"480\"/>\n\n4. Try other effect filters and parameters in the inspector.  \n   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744308178360.gif)\n\n5. From the top menu, you can load/append preset.  \n> [!TIP]\n>\n> `Load` overwrites all properties with the preset, while `Append` only overwrites enabled filters and modes with the preset.  \n> You can easily build effects by combining them with `Append`.\n\n   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744800851739.gif)\n\n5. Enjoy!\n\n<br><br>\n\n### Component: UIEffect\n\nThe `UIEffect` component applies visual effects to UI elements, allowing various effects to be achieved by combining multiple filters.\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-preset.png)\n\n> [!TIP]  \n> From the top menu, you can load and save the editor presets or clear settings.  \n> For details, refer to the [Runtime/Editor Preset for UIEffect](#runtimeeditor-preset-for-uieffect).\n\n<br>\n\n#### Tone Filter\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-tone.png)\n\n- **Tone Filter**: `None`, `Grayscale`, `Sepia`, `Nega`, `Retro`, `Posterize`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-tone.png)\n- **Tone Intensity**: 0.0 (no effect) - 1.0 (full effect).\n\n<br>\n\n#### Color Filter\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-color.png)\n\n- **Color Filter**: `None`, `Multiply`, `Additive`, `Subtractive`, `Replace`, `Multiply Luminance`, `Multiply Additive`, `Hsv Modifier`, `Contrast`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-color.png)\n- **Color Intensity**: 0.0 (no effect) - 1.0 (full effect).\n- **Color Glow**: Set the color to glow.\n\n<br>\n\n#### Sampling Filter\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-sampling.png)\n\n- **Sampling Filter**: `None`, `Blur Fast`, `Blur Medium`, `Blur Detail`, `Pixelation`, `Rgb Shift`, `Edge Luminescence`, `Edge Alpha`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-sampling.png)\n- **Sampling Intensity**: 0.0 (no effect) - 1.0 (full effect).\n- **Sampling Width**: The width of the sampling effect.\n\n<br>\n\n#### Transition Filter\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-transition.png)\n\n- **Transition Filter**: `None`, `Fade`, `Cutoff`, `Dissolve`, `Shiny`, `Mask`, `Melt`, `Burn`, `Blaze`, `Pattern`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1749466907712.gif)\n- **Transition Rate**: 0.0 (no effect) - 1.0 (full effect).\n- **Transition Tex**: The texture used for the transition filter.\n    - **Scale**, **Offset**, **Speed**, **Rotation**, **Keep Aspect Ratio**, **Reverse**: Additional properties for the texture.\n    - ⚠️ NOTE: `Rotation` is shared with `Transition Filter` and `Detail Filter`.\n    - ⚠️ NOTE: `Keep Aspect Ratio` is shared with `Transition Filter` and `Gradation Mode` and `Detail Filter`.\n- **Transition Width**: The width where the transition color is applied.\n- **Transition Pattern Range**: The range of the pattern.\n- **Transition Pattern Reverse**: Reverse the pattern.\n- **Transition Softness**: The softness of the boundary for the transition color.\n- **Transition Color Filter**: `None`, `Multiply`, `Additive`, `Subtractive`, `Replace`, `Multiply Luminance`, `Multiply Additive`, `Hsv Modifier`, `Contrast`\n    - **Transition Color**: The color of the transition.\n    - **Transition Color Glow**: Set the transition color to glow.\n- **Transition Auto Play Speed**: The speed of the transition animation (using shader side `_Time`). You can use this property to loop the `TransitionRate` without tweener or animation.\n    - ⚠️ NOTE: This uses scaled time (affected by `Time.timeScale`). If you need unscaled time (useful for pause-resistant effects), use the [UIEffectTweener](#component-uieffecttweener) component instead.\n\n> [!TIP]  \n> **Transition Tex** applies transitions using its alpha channel.  \n> If you use `Scale`, `Offset`, or `Speed`, set `Wrap Mode = Repeat` in the texture import settings.  \n> For details, refer to the textures included in the built-in presets.  \n> ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/17443051097852.png)\n\n<br>\n\n#### Target Mode\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-target.png)\n\n- **Target Mode**: `None`, `Hue`, `Luminance`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-target.png)\n  - Restricts the effect application area based on hue or luminance.\n- **Target Range**: The range of target hue or luminance.\n- **Target Softness**: The softness of the target boundary.\n\n<br>\n\n#### Blend Type\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-blend.png)\n\n- **Blend Type**: `Alpha Blend`, `Multiply`, `Additive`, `Soft Additive`, `Multiply Additive`, `Custom`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-blend.png)\n  - `Custom` blend type can be set using the `SrcBlend` and `DstBlend` properties. \n\n<br>\n\n#### Shadow Mode\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-shadow.png)\n\n- **Shadow Mode**: `None`, `Shadow`, `Shadow3`, `Outline`, `Outline8`, `Mirror`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-shadow.png)\n- **Shadow Distance**: Distance of the shadow or outline.\n- **Shadow Iteration**: Number of times the shadow or outline is applied.\n- **Shadow Color Filter**: `None`, `Multiply`, `Additive`, `Subtractive`, `Replace`, `Multiply Luminance`, `Multiply Additive`, `Hsv Modifier`, `Contrast`\n    - **Shadow Color**: The color of the shadow.\n    - **Shadow Color Glow**: Set the shadow color to glow.\n- **Shadow Fade**: Alpha value of the shadow or outline.\n- **Shadow Blur Intensity** (`SamplingFilter = Blur***` required): Intensity of the shadow or outline blur.\n- **Mirror Reflection** (`Mirror` only): Distance of the mirrored image.\n- **Mirror Offset** (`Mirror` only): Offset for the mirrored image.\n- **Mirror Scale** (`Mirror` only): Scale of the mirrored image.\n\n<br>\n\n#### Gradation Mode\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744305109784.png)\n\n- **Gradation Mode**: `None`, `Horizontal`, `HorizontalGradient`, `Vertical`, `VerticalGradient`, `Radial`, `RadialGradient`, `Diagonal`, `DiagonalToRightBottom`, `DiagonalToLeftBottom`, `Angle`, `AngleGradient`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1749461050342.png)\n- **Gradation Color Filter**: `None`, `Multiply`, `Additive`, `Subtractive`, `Replace`, `Multiply Luminance`, `Multiply Additive`\n- **Gradation Gradient**: The gradient of the gradation. HDR colors are supported.\n  - `Blend` and `Fixed` modes are available.\n- **Gradation Color 1**: The first color of the gradation.\n- **Gradation Color 2**: The second color of the gradation.\n- **Gradation Intensity**: 0.0 (no effect) - 1.0 (full effect).\n- **Gradation Offset**: The offset of the gradation range.\n- **Gradation Scale**: The scale of the gradation range.\n- **Gradation Rotation** (`Angle` or `AngleGradient` only): The rotation of the gradation range.\n- **Gradation Wrap Mode**: `Repaet`, `Clamp`, `Mirror`, `Mirror Once`\n- **Gradation Reverse**: Reverse the gradient.\n- **Keep Aspect Ratio**: \n  - ⚠️ NOTE: `Keep Aspect Ratio` is shared with `Transition Filter` and `Gradation Mode` and `Detail Filter`.\n\n<br>\n\n#### Edge Mode\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-edge.png)\n\n- **Edge Mode**: `None`, `Plain`, `Shiny`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-edge.png)\n- **Edge Width**: The width of the edge.\n- **Edge Color Filter**: `None`, `Multiply`, `Additive`, `Subtractive`, `Replace`, `Multiply Luminance`, `Multiply Additive`, `Hsv Modifier`, `Contrast`\n    - **Edge Color**: The color of the edge.\n    - **Edge Color Glow**: Set the shadow color to glow.\n- **Edge Shiny Width**: The width of the edge shiny.\n- **Edge Shiny Auto Play Speed**: The speed of the edge shiny (using shader side `_Time`).\n  - ⚠️ NOTE: This uses scaled time (affected by `Time.timeScale`). If you need unscaled time (useful for pause-resistant effects), use the [UIEffectTweener](#component-uieffecttweener) component instead.\n\n<br>\n\n#### Detail Filter\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744762332942.png)\n\n- **Detail Filter**: `None`, `Masking`, `Multiply`, `Additive`, `Subtractive`, `Replace`, `MuliplyAdditive`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744826180386.png)\n- **Detail Intensity**: 0.0 (no effect) - 1.0 (full effect).\n- **Detail Color**: The color of the detail.\n- **Detail Threshold** (`Masking` only): The minimum and maximum alpha values used for masking. The larger the gap\n    between these values, the stronger the softness effect.\n- **Detail Tex**: The texture used for the transition filter.\n  - **Scale**, **Offset**, **Speed**, **Rotation**, **Keep Aspect Ratio**: Additional properties for the texture.\n  - ⚠️ NOTE: `Rotation` is shared with `Transition Filter` and `Detail Filter`.\n  - ⚠️ NOTE: `Keep Aspect Ratio` is shared with `Transition Filter` and `Gradation Mode` and `Detail Filter`.\n\n<br>\n\n#### Flip\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744762521061.png)\n\n- **Flip**: Combine the following flags.\n    - `Nothing`\n    - `Horizontal`\n    - `Vertical`\n    - `Effect`: Flip with the effect.\n    - `Shadow`: Flip with the shadow.  \n    ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-flip.png)\n\n<br>\n\n#### Others\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744762623263.png)\n\n- **Sampling Scale**: The referencing scale during sampling.\n    - Larger values are suitable for high-resolution textures.\n- **Allow To Modify Mesh Shape**: If enabled, the mesh shape can be modified.\n- **Custom Root**: Use the custom transform for some effects.\n\n> [!TIP]  \n> `Transition Filter`, `Gradation Filter`, and `Detail Filter` usually refer to their own `RectTransform` when applying effects.  \n> For example, if the mesh shape exceeds the `RectTransform` boundaries, the effect may not be applied correctly.  \n> By specifying `Custom Root`, you can refer to the specified transform.\n> ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-custom-root.gif)\n\n<br><br>\n\n### Component: UIEffectTweener\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744304918490.png)\n\nThe `UIEffectTweener` component animates the effect, enabling easy control over effect animations without the need for an `AnimationClip`.\n\n- **Culling Mask**: `Tone`, `Color`, `Sampling`, `Transition`, `GradiationOffset`, `GradiationRotation`, `EdgeShiny`, `Event`\n- **OnChangeRate** (`Event` only): A event that is triggered when the tweening rate changes.\n- **Direction**: `Forward (0.0 -> 1.0)`, `Reverse (1.0 -> 0.0)`\n- **Curve**: The curve of the animation.\n- **Separate Reverse Curve**: If enabled, `Reverse Curve` will be used for the reverse direction.\n- **Reverse Curve**: The curve of the reverse animation.\n- **Delay**: The delay time before starting the animation.\n- **Duration**: The duration of the animation.\n- **Interval**: The interval time between the animation.\n- **Play On Enable**: `None`, `Forward`, `Reverse`, `Keep Direction`\n   - Play the animation automatically when the component is enabled.\n   - If `None` is selected, the animation will not play automatically. You can play it using the `Play`, `PlayForward` or `PlayReverse`  method.\n- **Reset Time On Enable**: Reset the tweening time when the component is enabled.\n- **Wrap Mode**:\n   - `Once`: delay -> duration(0-1) -> onComplete\n   - `Loop`: delay -> duration(0-1) -> interval -> ...\n   - `PingPongOnce`: delay -> duration(0-1) -> interval -> duration(1-0) -> onComplete\n   - `PingPongLoop`: delay -> duration(0-1) -> interval -> duration(1-0) -> interval -> ...\n- **Update Mode**: `Normal`, `UnscaledTime`, `Manual`\n- **On Complete**: A event that is triggered when the animation is completed.\n\nYou can preview the animation using the seek bar and play button.\n\n<br><br>\n\n### Component: UIEffectReplica\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744308511445.png)\n\nThe `UIEffectReplica` component applies visual effects to UI elements by replicating the settings of another `UIEffect` component. This allows the same effect to be applied across multiple UI elements simultaneously.\n\n- **Target**: The target `UIEffect` component to replicate.\n> [!TIP]\n> You can specify a preset as well as an instance as the target for `UIEffectReplica`.\n- **Use Target Transform**: Use the target's transform for some effects.  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-custom-root.gif)\n- **Custom Root**: Use the custom transform for some effects.\n- **Sampling Scale**: Override the sampling scale.\n- **Allow To Modify Mesh Shape**: If enabled, the mesh shape can be modified.\n\n<br><br>\n\n### Usage with TextMeshPro\n\nTo use UIEffect with TextMeshPro, you need to import additional resources.  \nWhen a shader included in the samples is requested, an import dialog will automatically appear.  \nClick the `Import` button.\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744304977486.png)\n\nAlternatively, you can manually import the resources by following these steps:\n\n1. First, you must import [TMP Essential Resources](https://docs.unity3d.com/Packages/com.unity.textmeshpro@3.0/manual/index.html#installation) before using.  \n   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744305000411.png)\n\n2. Open the `Package Manager` window and select the `UI Effect` package in the package list and click the `TextMeshPro Support > Import` button.  \n   ⚠️ If you are using `Unity 2023.2/6000.0+` or `TextMeshPro 3.2/4.0+`, click the `TextMeshPro Support (Unity 6) > Import` button instead.  \n\n3. The assets will be imported under `Assets/Samples/UI Effect/{version}`.\n\n4. Add the `UIEffect` component to a TextMeshProUGUI element and adjust the effect settings. The `<font>` and `<sprite>` tags are also supported.  \n   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744305022250.png)\n\n> [!TIP]\n> `TextMeshPro Support` may change with updates to the UIEffect package.  \n> If issues occur, try importing it again.\n\n> [!TIP]\n> If you have moved `TMPro_Properties.cginc` and `TMPro.cginc` from their default install path\n> (`Assets/TextMesh Pro/Shaders/...`), you will need to manually update the paths in the shaders under\n> `TextMeshPro Support` or `TextMeshPro Support (Unity 6)`.\n\n<br><br>\n\n### Usage with SoftMaskForUGUI\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744305036318.png)\n\n[SoftMaskForUGUI](https://github.com/mob-sakai/SoftMaskForUGUI) is a package that allows you to create soft masks for UI elements.\n\n`SoftMaskForUGUI (v3.3.0+)` supports `UIEffect (v5.7.0+)`.  \nWhen a shader included in the samples is requested, an import dialog will automatically appear.  \nClick the `Import` button.\n\n<br><br>\n\n### Usage with ShaderGraph\n\n⚠️ ShaderGraph support is available only in Unity 2023.2/6.0 or later.\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744307236288.png)\n\nTo use UIEffect with ShaderGraph, you need to import additional resources.\n\n1. Open the `Package Manager` window and select the `UI Effect` package in the package list and click the `ShaderGraph Support (Unity6, BuiltIn) > Import` button.  \n   ⚠️ If you are using Universal Render Pipeline (URP), click the `ShaderGraph Support (Unity6, URP) > Import` button.\n\n2. The assets will be imported under `Assets/Samples/UI Effect/{version}`.\n\n3. Change the sub target (Material) of the existing ShaderGraph file to `Canvas (UIEffect)`.  \n   Alternatively, create a new ShaderGraph from `Assets/Create/Shader Graph/BuiltIn/Canvas Shader Graph (UIEffect)`.\n\n> [!TIP]\n> Use `(UIEffect)` in the shader name or register as an optional shader in [ProjectSettings](#project-settings).\n\n<br><br>\n\n### Usage with Timeline\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1749028017092.png)\n\nTimeline is a powerful animation tool that can control UIEffect using `ControlTrack` and UIEffect tracks.\n\n- `Control Track`: One of the built-in tracks. When you assign a GameObject with `UIEffect`, `UIEffect` will be enabled during the clip duration.\n- `UIEffect Tracks`: Tracks for UIEffect. They control `float` or `Color` type properties.\n  - Supports blending, extrapolation, and tween.\n\n<br><br>\n\n### Usage with Custom Shader\n\nTo make your custom shader support UIEffect, it must satisfy the following requirements.\nRefer to the sections enclosed by `==== UIEFFECT START ===` and `==== UIEFFECT END ====` in the built-in `Hidden/UI/Default (UIEffect)` shader included in the package.\n\nhttps://github.com/mob-sakai/UIEffect/blob/main/Packages/src/Shaders/UIEffect.shader\n\n- Blend: `Blend [_SrcBlend] [_DstBlend]`\n- Shader variants: `#pragma shader_feature_local_fragment ***`\n- Vertex shader input structure: `float4 uvMask : TEXCOORD***;`\n- Vertex shader: `OUT.uvMask = v.uvMask;` and `OUT.worldPosition = v.vertex;`\n- Pixel shader input structure: `float4 uvMask : TEXCOORD***;` and `float4 worldPosition : TEXCOORD***;`\n- UIEffect micro pixel shader: a function that returns the color of the specified pixel and has the signature `half4 uieffect_frag(v2f IN, float2 uv)`.\n- Pixel shader input structure name definition: `#define UIEFFECT_FRAG_STRUCT v2f`\n- Include the UIEffect library: `#include \"Packages/com.coffee.ui-effect/Shaders/UIEffect.cginc\"`\n- Pixel shader: `half4 c = uieffect(IN.texcoord, IN.uvMask, IN.worldPosition, IN);`\n\n<br><br>\n\n### Runtime/Editor Preset for UIEffect\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-preset.png)\n\nYou can create and use presets for `UIEffect` components.\n\n- Click the `Load` button to apply an editor preset.\n- Click the `Append` button to load only non-default settings from the editor preset.\n- Click the `Save As New` button to save the current settings as an editor preset.\n- In the [Project Settings](#project-settings), you can register saved editor presets as runtime presets.\n- Runtime presets can be loaded using the `UIEffect.LoadPreset(presetName)` method.\n\n> [!TIP]\n> Editor presets are saved in the `UIEffectPresets` directory.\n> You can also create subdirectories to customize the preset menu.\n\n<br><br>\n\n### Usage with Code\n\nYou can control the effect settings and animations via code.\n\n```csharp\nvar effect = graphic.AddComponent<UIEffect>();\n\n// Apply a runtime preset\neffect.LoadPreset(\"Dissolve\");\n\n// Set the effect parameters\neffect.transitionWidth = 0.1f;\neffect.transitionColor = Color.red;\n\n// Add a tweener\nvar tweener = graphic.AddComponent<UIEffectTweener>();\ntweener.cullingMask = UICullingMask.Tone;\ntweener.wrapMode = UIWrapMode.PingPongLoop;\n\n// Warm up the shader variant collection.\nUIEffectProjectSettings.shaderVariantCollection.WarmUp();\n```\n\n<br><br>\n\n### Project Settings\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744799623192.png)\n\nYou can adjust the project-wide settings for UIEffect. (`Edit > Project Settings > UI > UIEffect`)\n\n#### Settings\n\n- **Runtime Presets**: A list of presets that can be loaded at runtime. Load them using `UIEffect.LoadPreset(presetName)` method.\n\n> [!IMPORTANT]  \n> - The legacy prefab-based preset system is deprecated as of v5.8.0.  \n> - If your project contains legacy presets, you can convert them to the new system.  \n>   - **Convert All Legacy Presets**: Creates new presets based on the legacy ones.  \n>     If the legacy presets are used as runtime presets, they will be replaced with the new ones.  \n>     You can load the new preset via the `UIEffect.LoadPreset` method.\n>   - **Delete All Legacy Presets**: Deletes all legacy presets. If any legacy presets are assigned to `UIEffectReplica.target`, those targets will also be removed.  \n>   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744792792701.png)\n\n#### Editor\n\n- **Use HDR Color Picker**: If enabled, the HDR color picker will be used in the inspector.\n\n#### Shader\n\n- **Optional Shaders (UIEffect)**: A list of shaders that will be prioritized when a ui-effect shader is\n  requested.\n    - If the shader is included in the list, that shader will be used.\n    - If it is not in the list, the following shaders will be used in order:\n        - If the shader name contains `(UIEffect)`, that shader will be used.\n        - If `Hidden/<shader_name> (UIEffect)` exists, that shader will be used.\n        - As a fallback, `UI/Default (UIEffect)` will be used.\n- **Registered Variants**: A list of shader variants available at runtime. Use \"-\" button to remove unused variants,\n  reducing build time and file size.\n    - By default, the used ui-effect shaders will be included in the build. You can remove them if you don't need.\n- **Unregistered Variants**: A list of shader variants that are not registered. Use \"+\" button to add variants.\n- **Error On Unregistered Variant**: If enabled, an error will be displayed when an unregistered shader variant is used.\n    - The shader variant will be automatically added to the `Unregistered Variants` list.\n\n> [!IMPORTANT]\n> - The setting file is usually saved in `Assets/ProjectSettings/UIEffectProjectSettings.asset`. Include this file in your version control system.\n> - The setting file is automatically added as a preloaded asset in `ProjectSettings/ProjectSettings.asset`.\n\n#### Advanced\n\n- **Pre Load Settings In Build**: When enabled, this settings asset will be added to `PlayerSettings.preloadedAssets` in build.\n - When disable, you should load this settings via `Resources`, `AssetBundles` or `Addressables` to use `UIEffect`.\n - You can overwrite the settings by re-enabling `UIEffectProjectSettings`. This allows you to hot update shader variants and presets.\n\n```csharp\nprivate static IEnumerator HotUpdateCoroutine()\n{\n    const string k_SettingsAddress = \"Assets/ProjectSettings/UIEffectProjectSettings.asset\";\n    yield return Addressables.LoadAssetAsync<UIEffectProjectSettings>(k_SettingsAddress);\n    while (UIEffectProjectSettings.shaderVariantCollection.WarmUpProgressively(5) == false) yield return null;\n}\n```\n\n<br><br>\n\n### :warning: Limitations\n\nHere are the limitations of UIEffect:\n\n- Shader variants used at runtime must be registered in the [Project Settings](#project-settings).\n- When using UIEffect with TextMeshProUGUI, `SamplingFilter.BlurMedium` and `SamplingFilter.BlurDetail` are not supported due to performance considerations.\n  - These will automatically fall back to `SamplingFilter.BlurFast`.\n- UIEffect supports default UI components (`Image`, `RawImage`, `Text`) and `TextMeshProUGUI`.\n  - If you want to use UIEffect with other components, create a issue or pull request.\n\n<br><br>\n\n## 🤝 Contributing\n\n### Issues\n\nIssues are incredibly valuable to this project:\n\n- Ideas provide a valuable source of contributions that others can make.\n- Problems help identify areas where this project needs improvement.\n- Questions indicate where contributors can enhance the user experience.\n\n### Pull Requests\n\nPull requests offer a fantastic way to contribute your ideas to this repository.  \nPlease refer to [CONTRIBUTING.md](https://github.com/mob-sakai/UIEffect/tree/main/CONTRIBUTING.md)\nand use [develop branch](https://github.com/mob-sakai/UIEffect/tree/develop) for development.\n\n### Support\n\nThis is an open-source project developed during my spare time.  \nIf you appreciate it, consider supporting me.  \nYour support allows me to dedicate more time to development. 😊\n\n[![](https://user-images.githubusercontent.com/12690315/66942881-03686280-f085-11e9-9586-fc0b6011029f.png)](https://github.com/users/mob-sakai/sponsorship)  \n[![](https://user-images.githubusercontent.com/12690315/50731629-3b18b480-11ad-11e9-8fad-4b13f27969c1.png)](https://www.patreon.com/join/2343451?)\n\n<br><br>\n\n## License\n\n* MIT\n\n## Author\n\n* ![](https://user-images.githubusercontent.com/12690315/96986908-434a0b80-155d-11eb-8275-85138ab90afa.png) [mob-sakai](https://github.com/mob-sakai) [![](https://img.shields.io/twitter/follow/mob_sakai.svg?label=Follow&style=social)](https://twitter.com/intent/follow?screen_name=mob_sakai) ![GitHub followers](https://img.shields.io/github/followers/mob-sakai?style=social)\n\n## See Also\n\n* GitHub page : https://github.com/mob-sakai/UIEffect\n* Releases : https://github.com/mob-sakai/UIEffect/releases\n* Issue tracker : https://github.com/mob-sakai/UIEffect/issues\n* Change log : https://github.com/mob-sakai/UIEffect/blob/main/Packages/src/CHANGELOG.md","isInternal":false,"tokens":9617,"sizeBytes":35951}],"systemPromptSnippet":"<yakaai_skills repo=\"mob-sakai/UIEffect\">\n<!-- File: Packages/manifest.json (Tokens: ~210 | Category: anthropic-skill) -->\n{\n  \"dependencies\": {\n    \"com.coffee.development\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/Development\",\n    \"com.coffee.minimal-resource\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/MinimalResource\",\n    \"com.coffee.nano-monitor\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/NanoMonitor\",\n    \"com.coffee.symbolic-linker\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/SymbolicLinker\",\n    \"com.unity.addressables\": \"1.22.3\",\n    \"com.unity.ide.rider\": \"3.0.38\",\n    \"com.unity.test-framework\": \"1.1.33\",\n    \"com.unity.textmeshpro\": \"3.0.9\",\n    \"com.unity.modules.animation\": \"1.0.0\"\n  }\n}\n\n<!-- File: Packages/packages-lock.json (Tokens: ~1393 | Category: anthropic-skill) -->\n{\n  \"dependencies\": {\n    \"com.coffee.development\": {\n      \"version\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/Development\",\n      \"depth\": 0,\n      \"source\": \"git\",\n      \"dependencies\": {},\n      \"hash\": \"4a182298bd6293c4e6e33dd40bb7a050847190d8\"\n    },\n    \"com.coffee.minimal-resource\": {\n      \"version\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/MinimalResource\",\n      \"depth\": 0,\n      \"source\": \"git\",\n      \"dependencies\": {},\n      \"hash\": \"4a182298bd6293c4e6e33dd40bb7a050847190d8\"\n    },\n    \"com.coffee.nano-monitor\": {\n      \"version\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/NanoMonitor\",\n      \"depth\": 0,\n      \"source\": \"git\",\n      \"dependencies\": {\n        \"com.unity.ugui\": \"1.0.0\"\n      },\n      \"hash\": \"4a182298bd6293c4e6e33dd40bb7a050847190d8\"\n    },\n    \"com.coffee.symbolic-linker\": {\n      \"version\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/SymbolicLinker\",\n      \"depth\": 0,\n      \"source\": \"git\",\n      \"dependencies\": {},\n      \"hash\": \"4a182298bd6293c4e6e33dd40bb7a050847190d8\"\n    },\n    \"com.coffee.ui-effect\": {\n      \"version\": \"file:src\",\n      \"depth\": 0,\n      \"source\": \"embedded\",\n      \"dependencies\": {\n        \"com.unity.ugui\": \"1.0.0\"\n      }\n    },\n    \"com.unity.addressables\": {\n      \"version\": \"1.22.3\",\n      \"depth\": 0,\n      \"source\": \"registry\",\n      \"dependencies\": {\n        \"com.unity.modules.assetbundle\": \"1.0.0\",\n        \"com.unity.modules.jsonserialize\": \"1.0.0\",\n        \"com.unity.modules.imageconversion\": \"1.0.0\",\n        \"com.unity.modules.unitywebrequest\": \"1.0.0\",\n        \"com.unity.scriptablebuildpipeline\": \"1.21.25\",\n        \"com.unity.modules.unitywebrequestassetbundle\": \"1.0.0\"\n      },\n      \"url\": \"https://packages.unity.com\"\n    },\n    \"com.unity.ext.nunit\": {\n      \"version\": \"1.0.6\",\n      \"depth\": 1,\n      \"source\": \"registry\",\n      \"dependencies\": {},\n      \"url\": \"https://packages.unity.com\"\n    },\n    \"com.unity.ide.rider\": {\n      \"version\": \"3.0.38\",\n      \"depth\": 0,\n      \"source\": \"registry\",\n      \"dependencies\": {\n        \"com.unity.ext.nunit\": \"1.0.6\"\n      },\n      \"url\": \"https://packages.unity.com\"\n    },\n    \"com.unity.scriptablebuildpipeline\": {\n      \"version\": \"1.21.25\",\n      \"depth\": 1,\n      \"source\": \"registry\",\n      \"dependencies\": {},\n      \"url\": \"https://packages.unity.com\"\n    },\n    \"com.unity.test-framework\": {\n      \"version\": \"1.1.33\",\n      \"depth\": 0,\n      \"source\": \"registry\",\n      \"dependencies\": {\n        \"com.unity.ext.nunit\": \"1.0.6\",\n        \"com.unity.modules.imgui\": \"1.0.0\",\n        \"com.unity.modules.jsonserialize\": \"1.0.0\"\n      },\n      \"url\": \"https://packages.unity.com\"\n    },\n    \"com.unity.textmeshpro\": {\n      \"version\": \"3.0.9\",\n      \"depth\": 0,\n      \"source\": \"registry\",\n      \"dependencies\": {\n        \"com.unity.ugui\": \"1.0.0\"\n      },\n      \"url\": \"https://packages.unity.com\"\n    },\n    \"com.unity.ugui\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {\n        \"com.unity.modules.ui\": \"1.0.0\",\n        \"com.unity.modules.imgui\": \"1.0.0\"\n      }\n    },\n    \"com.unity.modules.animation\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 0,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.assetbundle\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.imageconversion\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.imgui\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.jsonserialize\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.ui\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 2,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.unitywebrequest\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {}\n    },\n    \"com.unity.modules.unitywebrequestassetbundle\": {\n      \"version\": \"1.0.0\",\n      \"depth\": 1,\n      \"source\": \"builtin\",\n      \"dependencies\": {\n        \"com.unity.modules.assetbundle\": \"1.0.0\",\n        \"com.unity.modules.unitywebrequest\": \"1.0.0\"\n      }\n    }\n  }\n}\n\n<!-- File: Packages/src/.releaserc.json (Tokens: ~113 | Category: anthropic-skill) -->\n{\n  \"branches\": [\n    \"main\",\n    \"[0-9]+.x\",\n    {\n      \"name\": \"preview\",\n      \"prerelease\": true\n    }\n  ],\n  \"tagFormat\": \"${version}\",\n  \"plugins\": [\n    \"@semantic-release/commit-analyzer\",\n    \"@semantic-release/release-notes-generator\",\n    \"@semantic-release/changelog\",\n    [\n      \"@semantic-release/npm\",\n      {\n        \"npmPublish\": false\n      }\n    ],\n    \"@semantic-release/git\",\n    \"@semantic-release/github\"\n  ]\n}\n\n<!-- File: Packages/src/CHANGELOG.md (Tokens: ~14391 | Category: anthropic-skill) -->\n## [5.11.7](https://github.com/mob-sakai/UIEffect/compare/5.11.6...5.11.7) (2026-08-27)\n\n\n### Bug Fixes\n\n* ignore shader registry order changes ([014bba3](https://github.com/mob-sakai/UIEffect/commit/014bba3f5687ecfe41caa00d454f196baf7e3483)), closes [#407](https://github.com/mob-sakai/UIEffect/issues/407)\n\n## [5.11.6](https://github.com/mob-sakai/UIEffect/compare/5.11.5...5.11.6) (2026-08-17)\n\n\n### Bug Fixes\n\n* refresh material when changing shadow mode ([8bb782c](https://github.com/mob-sakai/UIEffect/commit/8bb782c90afb42d6569d8dfcfe022b007171f97e))\n\n## [5.11.5](https://github.com/mob-sakai/UIEffect/compare/5.11.4...5.11.5) (2026-07-23)\n\n\n### Bug Fixes\n\n* fix memory leak ([2dcb7f7](https://github.com/mob-sakai/UIEffect/commit/2dcb7f7e8678a2ffcf3832d0c5011aa1da6c3677)), closes [#405](https://github.com/mob-sakai/UIEffect/issues/405)\n\n## [5.11.4](https://github.com/mob-sakai/UIEffect/compare/5.11.3...5.11.4) (2026-07-22)\n\n\n### Bug Fixes\n\n* infinite asset import loop caused by unchanged ProjectSettings being marked dirty ([dbf8ae0](https://github.com/mob-sakai/UIEffect/commit/dbf8ae00f50470912d458fda853a34ef94d7d533)), closes [#404](https://github.com/mob-sakai/UIEffect/issues/404)\n\n## [5.11.3](https://github.com/mob-sakai/UIEffect/compare/5.11.2...5.11.3) (2026-07-04)\n\n\n### Bug Fixes\n\n* TextMeshPro support is not working ([9d98096](https://github.com/mob-sakai/UIEffect/commit/9d980961d6cf45e519ad96bf2e7260ed515f0f70)), closes [#402](https://github.com/mob-sakai/UIEffect/issues/402)\n\n## [5.11.2](https://github.com/mob-sakai/UIEffect/compare/5.11.1...5.11.2) (2026-07-02)\n\n\n### Bug Fixes\n\n* add null check ([161fc54](https://github.com/mob-sakai/UIEffect/commit/161fc546cad251ad798c2fd9e9472d687aa7f2c3))\n\n## [5.11.1](https://github.com/mob-sakai/UIEffect/compare/5.11.0...5.11.1) (2026-06-29)\n\n\n### Bug Fixes\n\n* support \"disable domain reload\" on Unity 6.6 or later ([a556c28](https://github.com/mob-sakai/UIEffect/commit/a556c282210303d9e7a7c284bb4b41ef3a35e3e1))\n\n# [5.11.0](https://github.com/mob-sakai/UIEffect/compare/5.10.9...5.11.0) (2026-06-25)\n\n\n### Bug Fixes\n\n* enable/disable Gameobject break effect with 'TrueShadow' ([730aa2b](https://github.com/mob-sakai/UIEffect/commit/730aa2bb4d872ddab63f2dad611a063cefa07064)), closes [#400](https://github.com/mob-sakai/UIEffect/issues/400)\n* select TMP submesh by mesh before material ([f538ef2](https://github.com/mob-sakai/UIEffect/commit/f538ef2cba3d4d76f6683bccee65d5a9694dad37))\n* some fix ([b6b538f](https://github.com/mob-sakai/UIEffect/commit/b6b538f64f0b06ddfb4ad2edd6b7db6dc1d067d8))\n* Support for skipping \"reload domain\" ([ec3fb13](https://github.com/mob-sakai/UIEffect/commit/ec3fb13c111638781bf852e2a4a4747fbfeb7d3a))\n\n\n### Features\n\n* add option to remove from preloadedAssets when build player ([e955715](https://github.com/mob-sakai/UIEffect/commit/e955715c99c474881e0b27ecc325061ce0d866a0)), closes [#393](https://github.com/mob-sakai/UIEffect/issues/393)\n* support XBOX One/Series ([72bb1c5](https://github.com/mob-sakai/UIEffect/commit/72bb1c51318829e7ced3b1436892a5969aedd9a3)), closes [#385](https://github.com/mob-sakai/UIEffect/issues/385) [#394](https://github.com/mob-sakai/UIEffect/issues/394)\n\n## [5.10.9](https://github.com/mob-sakai/UIEffect/compare/5.10.8...5.10.9) (2026-06-08)\n\n\n### Bug Fixes\n\n* ambiguous call to 'lerp' in shader ([cd68b36](https://github.com/mob-sakai/UIEffect/commit/cd68b364c48e979d6ef227e53a522f096e0df47a)), closes [#390](https://github.com/mob-sakai/UIEffect/issues/390)\n* Clarify that the `ShaderGraph support` is available only in Unity 2023.2/6.0 or later ([57031c3](https://github.com/mob-sakai/UIEffect/commit/57031c3e3c2d64ee76d3e568d378cd54a5e84af5)), closes [#391](https://github.com/mob-sakai/UIEffect/issues/391)\n* support Unity 6.5 or later ([2d6f7ed](https://github.com/mob-sakai/UIEffect/commit/2d6f7ed63dd83b3f90c2fa6d93a3c84afd6de866)), closes [#392](https://github.com/mob-sakai/UIEffect/issues/392) [#398](https://github.com/mob-sakai/UIEffect/issues/398)\n* UIEffect.detailColor is not working ([f3da972](https://github.com/mob-sakai/UIEffect/commit/f3da972c0cba526f7784207c2d8ab48b5dd692f3)), closes [#399](https://github.com/mob-sakai/UIEffect/issues/399)\n\n## [5.10.8](https://github.com/mob-sakai/UIEffect/compare/5.10.7...5.10.8) (2026-01-16)\n\n\n### Bug Fixes\n\n* Canvas not properly cached when objects are outside Canvas ([4a4e50e](https://github.com/mob-sakai/UIEffect/commit/4a4e50e01fb50925352c73b27901024494ae933c))\n\n## [5.10.7](https://github.com/mob-sakai/UIEffect/compare/5.10.6...5.10.7) (2025-12-18)\n\n\n### Bug Fixes\n\n* support Unity 6000.4 ([7fc0c73](https://github.com/mob-sakai/UIEffect/commit/7fc0c7364d8dc39e26eac3c3b79797b139f09817))\n\n## [5.10.6](https://github.com/mob-sakai/UIEffect/compare/5.10.5...5.10.6) (2025-12-18)\n\n\n### Bug Fixes\n\n* fixed an issue where shader variants were not registered automatically ([6b79864](https://github.com/mob-sakai/UIEffect/commit/6b79864a394d79e6ad13f64af1d521fab1f781a7)), closes [#383](https://github.com/mob-sakai/UIEffect/issues/383)\n\n## [5.10.5](https://github.com/mob-sakai/UIEffect/compare/5.10.4...5.10.5) (2025-11-20)\n\n\n### Bug Fixes\n\n* graphic disappears when changing filters from code ([8776057](https://github.com/mob-sakai/UIEffect/commit/87760570ec7f4e2ca395cfaa0d2ab5d28c9cf9f3)), closes [#382](https://github.com/mob-sakai/UIEffect/issues/382)\n\n## [5.10.4](https://github.com/mob-sakai/UIEffect/compare/5.10.3...5.10.4) (2025-10-27)\n\n\n### Bug Fixes\n\n* remove `sealed` from `UIEffect` and `UIEffectReplica` ([2fd87e9](https://github.com/mob-sakai/UIEffect/commit/2fd87e909af65bf88a9c39cd157dfb06a56b3af0)), closes [#379](https://github.com/mob-sakai/UIEffect/issues/379)\n\n## [5.10.3](https://github.com/mob-sakai/UIEffect/compare/5.10.2...5.10.3) (2025-10-22)\n\n\n### Bug Fixes\n\n* displays as black rectangle when opening editor ([4a8d341](https://github.com/mob-sakai/UIEffect/commit/4a8d341625f73d70c512f7e6f0b864be1adbf459)), closes [#376](https://github.com/mob-sakai/UIEffect/issues/376)\n\n## [5.10.2](https://github.com/mob-sakai/UIEffect/compare/5.10.1...5.10.2) (2025-10-16)\n\n\n### Bug Fixes\n\n* [improve performance] code optimization ([e6fb78a](https://github.com/mob-sakai/UIEffect/commit/e6fb78a0f67ed6f70be08259f674ab2f83364bd7))\n\n## [5.10.1](https://github.com/mob-sakai/UIEffect/compare/5.10.0...5.10.1) (2025-10-06)\n\n\n### Bug Fixes\n\n* [improve performance] `UpdateViewMatrix` is called even though (direct-)parent canvas is disabled ([533d7b8](https://github.com/mob-sakai/UIEffect/commit/533d7b8c0a33871b1849fbda862d4fa1899822f4)), closes [#373](https://github.com/mob-sakai/UIEffect/issues/373)\n\n# [5.10.0](https://github.com/mob-sakai/UIEffect/compare/5.9.7...5.10.0) (2025-09-26)\n\n\n### Bug Fixes\n\n* `TmpProxy` causes loss of modifications from other `IMeshModifiers` ([c4202b4](https://github.com/mob-sakai/UIEffect/commit/c4202b45d28fa84567a5671baaef8fa3e3df85dc)), closes [#371](https://github.com/mob-sakai/UIEffect/issues/371)\n* display may disappear when using TMP SubMesh (multi-language or sprites, etc.) ([b4adb32](https://github.com/mob-sakai/UIEffect/commit/b4adb325120eeed64af1d9cb2468a1e1e8e10812)), closes [#372](https://github.com/mob-sakai/UIEffect/issues/372)\n* TMP Text sprite submesh lost when changing fontMaterial ([59874dd](https://github.com/mob-sakai/UIEffect/commit/59874ddffe356f927dc8ff9b157c54043e149522)), closes [#368](https://github.com/mob-sakai/UIEffect/issues/368)\n\n\n### Features\n\n* [improve performance] merged apply_color function and reduced shader compilation size ([ce69258](https://github.com/mob-sakai/UIEffect/commit/ce692580a33c0c433fd7fadb64a3dcda0121b2ff))\n* [improve performance] various view matrices are only updated when necessary ([6c808aa](https://github.com/mob-sakai/UIEffect/commit/6c808aa3417450fd1ce0fc6fbfe0adffdff9a79a))\n\n## [5.9.7](https://github.com/mob-sakai/UIEffect/compare/5.9.6...5.9.7) (2025-09-01)\n\n\n### Bug Fixes\n\n* edges of `TransitionFilter.Shiny` appear sharp ([b077d97](https://github.com/mob-sakai/UIEffect/commit/b077d97ed706acbbdd3b20e765ec0552fa464f9b)), closes [#366](https://github.com/mob-sakai/UIEffect/issues/366)\n* error message sometimes after importing assets ([3207105](https://github.com/mob-sakai/UIEffect/commit/3207105a067801696de789d282c74a93b798ed57)), closes [#365](https://github.com/mob-sakai/UIEffect/issues/365)\n* flickering issue when scale Y changes when used `ShadowMode` with TextMeshPro ([4cca2fb](https://github.com/mob-sakai/UIEffect/commit/4cca2fb5ab34ea454ff8df3def5f1730a71a198c)), closes [#367](https://github.com/mob-sakai/UIEffect/issues/367)\n* skip monitoring TMP objects that can ignore Y-axis scaling ([d1adb33](https://github.com/mob-sakai/UIEffect/commit/d1adb33884971aa7d6c473fcd08cdf25e58cd261))\n\n## [5.9.6](https://github.com/mob-sakai/UIEffect/compare/5.9.5...5.9.6) (2025-07-17)\n\n\n### Bug Fixes\n\n* `ColorFilter` does not output intended color when vertex color is not white ([9dffdb0](https://github.com/mob-sakai/UIEffect/commit/9dffdb0ed88750a915fdd5e437b79ab766ce45c2)), closes [#363](https://github.com/mob-sakai/UIEffect/issues/363)\n* draw calls increase even when using `UIEffectReplica` ([83128eb](https://github.com/mob-sakai/UIEffect/commit/83128ebb09305e4c15a58968a94550179e96ffac)), closes [#364](https://github.com/mob-sakai/UIEffect/issues/364)\n\n## [5.9.5](https://github.com/mob-sakai/UIEffect/compare/5.9.4...5.9.5) (2025-06-26)\n\n\n### Bug Fixes\n\n* `GetGradientKeys` and `GetTransitionGradientKeys` cannot get GradientMode ([fd2d1b8](https://github.com/mob-sakai/UIEffect/commit/fd2d1b80592ac4ea62e15b6150be63964b113fa2)), closes [#358](https://github.com/mob-sakai/UIEffect/issues/358)\n\n## [5.9.4](https://github.com/mob-sakai/UIEffect/compare/5.9.3...5.9.4) (2025-06-25)\n\n\n### Bug Fixes\n\n* colors specified in UIEffect are output differently in linear color space ([0d7fb1e](https://github.com/mob-sakai/UIEffect/commit/0d7fb1eb63881b67f2658567750a83c92187df35)), closes [#359](https://github.com/mob-sakai/UIEffect/issues/359)\n\n## [5.9.3](https://github.com/mob-sakai/UIEffect/compare/5.9.2...5.9.3) (2025-06-23)\n\n\n### Bug Fixes\n\n* add `GetGradientKeys` and `GetTransitionGradientKeys` APIs ([a0c3e49](https://github.com/mob-sakai/UIEffect/commit/a0c3e4997af181ae16744c53ad3867e2106ccff3)), closes [#358](https://github.com/mob-sakai/UIEffect/issues/358)\n* support world canvas without UI events ([cadbb8d](https://github.com/mob-sakai/UIEffect/commit/cadbb8d68d17a2ec7e2d6e8e885d711e61fa53af)), closes [#356](https://github.com/mob-sakai/UIEffect/issues/356) [#357](https://github.com/mob-sakai/UIEffect/issues/357)\n\n## [5.9.2](https://github.com/mob-sakai/UIEffect/compare/5.9.1...5.9.2) (2025-06-12)\n\n\n### Bug Fixes\n\n* TextMeshPro 3.2.0-pre support ([804b48c](https://github.com/mob-sakai/UIEffect/commit/804b48c73ec648eaceb720cb79551fdbf3729fc9)), closes [#355](https://github.com/mob-sakai/UIEffect/issues/355)\n\n## [5.9.1](https://github.com/mob-sakai/UIEffect/compare/5.9.0...5.9.1) (2025-06-11)\n\n\n### Bug Fixes\n\n* prefabs will be deselected when editing them ([8addbad](https://github.com/mob-sakai/UIEffect/commit/8addbad4941340807d824e295280473d197d889f)), closes [#354](https://github.com/mob-sakai/UIEffect/issues/354)\n\n# [5.9.0](https://github.com/mob-sakai/UIEffect/compare/5.8.7...5.9.0) (2025-06-09)\n\n\n### Bug Fixes\n\n* `GradationMode.RadialFast` and `GradationMode.RadialDetail` are obsolete ([1a923dd](https://github.com/mob-sakai/UIEffect/commit/1a923dd72c263de5480d71bd17b697feca317ef1))\n* soft masking not working with `DetailFilter.Masking` ([ffdeaa7](https://github.com/mob-sakai/UIEffect/commit/ffdeaa7e2f1c2a9ccb7eb21d5674e2c19021aef9))\n\n\n### Features\n\n* `GradationGradient` supports HDR color ([50f6b3c](https://github.com/mob-sakai/UIEffect/commit/50f6b3c5d20b93a2245f6d54b6eb4bc13565c3b5))\n* add `Clear` method to reset properties via script ([264c453](https://github.com/mob-sakai/UIEffect/commit/264c453bb6ebad08ef950b0cec2f38e60a1710d8)), closes [#337](https://github.com/mob-sakai/UIEffect/issues/337)\n* add `GradationMode.RadialGradient` feature ([179ec89](https://github.com/mob-sakai/UIEffect/commit/179ec89a0215af9d8046e150d98fa06371155e93)), closes [#348](https://github.com/mob-sakai/UIEffect/issues/348)\n* add `GradationReverse` option for gradient ([c0fec32](https://github.com/mob-sakai/UIEffect/commit/c0fec32d502ec1f9d03172ed200f4d9233506eb9)), closes [#348](https://github.com/mob-sakai/UIEffect/issues/348)\n* add `GradationWrapMode` option ([f98929d](https://github.com/mob-sakai/UIEffect/commit/f98929d7e9656b4c02d5545b3893748c963d1118))\n* add `TransitionFilter.Blaze` feature ([ed4716d](https://github.com/mob-sakai/UIEffect/commit/ed4716d7ada102fe0053480941925e9f27b1c2c3))\n* add new built-in presets ([4f2c9f1](https://github.com/mob-sakai/UIEffect/commit/4f2c9f12b5e115bab1418a7a0b1187269a041fc4))\n* improve performance for TextMeshPro ([6af520e](https://github.com/mob-sakai/UIEffect/commit/6af520ed408f2e5eb4d84ec0df484338719ebc8e))\n* timeline package support ([742a5cd](https://github.com/mob-sakai/UIEffect/commit/742a5cd8dc47500de4b111a132d7a8b242844342)), closes [#347](https://github.com/mob-sakai/UIEffect/issues/347)\n* update shaders in samples ([4c6cd11](https://github.com/mob-sakai/UIEffect/commit/4c6cd11d86582f2351c40374180828ad1c8955c3))\n\n## [5.8.7](https://github.com/mob-sakai/UIEffect/compare/5.8.6...5.8.7) (2025-06-09)\n\n\n### Bug Fixes\n\n* `GradationGradient` and `TransitionGradient` in reprica will be not dirty (editor) ([58b197e](https://github.com/mob-sakai/UIEffect/commit/58b197e551aea8efca10e12da8df132853d4a24e))\n* changes not reflected in rendering when TextMeshPro is cleared ([f508eb3](https://github.com/mob-sakai/UIEffect/commit/f508eb32caf6757eb4c27b98ac29a1582dcd14b4)), closes [#351](https://github.com/mob-sakai/UIEffect/issues/351)\n* setting `gradationScale` to 0 throws `DivideByZeroException` ([ecd265e](https://github.com/mob-sakai/UIEffect/commit/ecd265e4828c7f81c96a76c16df147b6c4804429))\n\n## [5.8.6](https://github.com/mob-sakai/UIEffect/compare/5.8.5...5.8.6) (2025-05-22)\n\n\n### Bug Fixes\n\n* some methods may be called multiple times when domain reload on play is disabled (editor) ([3b52c3a](https://github.com/mob-sakai/UIEffect/commit/3b52c3a8fc67980d426b8e4e2ed2067c725ca262))\n\n## [5.8.5](https://github.com/mob-sakai/UIEffect/compare/5.8.4...5.8.5) (2025-05-22)\n\n\n### Bug Fixes\n\n* skip processing when graphic is invalid ([5cd48a4](https://github.com/mob-sakai/UIEffect/commit/5cd48a463309270ec3d6501bde2add9944bbaf02))\n* TextMeshPro strikethrough and underline not displaying ([68ebae2](https://github.com/mob-sakai/UIEffect/commit/68ebae28e02045cb45996bf5b77d7d93d2f0ca82)), closes [#344](https://github.com/mob-sakai/UIEffect/issues/344)\n* TMP SubMeshUI generates overhead every frame (since 5.6.0) ([791d867](https://github.com/mob-sakai/UIEffect/commit/791d8670761902466d81412d832cddf013cd28cd)), closes [#343](https://github.com/mob-sakai/UIEffect/issues/343) [#345](https://github.com/mob-sakai/UIEffect/issues/345)\n\n## [5.8.4](https://github.com/mob-sakai/UIEffect/compare/5.8.3...5.8.4) (2025-04-30)\n\n\n### Bug Fixes\n\n* NRE while canvas is disabled ([a3773e3](https://github.com/mob-sakai/UIEffect/commit/a3773e33028c60517fb4e6c534f6280194df8e64)), closes [#342](https://github.com/mob-sakai/UIEffect/issues/342)\n\n## [5.8.3](https://github.com/mob-sakai/UIEffect/compare/5.8.2...5.8.3) (2025-04-30)\n\n\n### Bug Fixes\n\n* the alpha of the gradation color and gradient was being ignored ([3807e4c](https://github.com/mob-sakai/UIEffect/commit/3807e4c69aefaef04b2245522e7c5085ccc65a36)), closes [#341](https://github.com/mob-sakai/UIEffect/issues/341)\n\n## [5.8.2](https://github.com/mob-sakai/UIEffect/compare/5.8.1...5.8.2) (2025-04-23)\n\n\n### Bug Fixes\n\n* `Flip` is ignored when loading a preset ([e1f3abf](https://github.com/mob-sakai/UIEffect/commit/e1f3abf7a65b62718b28e33ac2f7d700c3ae3f5a))\n* fix detail color ([90ab16c](https://github.com/mob-sakai/UIEffect/commit/90ab16c3fd46435ebf7c8e47ffb4ec521d2f61c9))\n* indicate in the inspector using tooltips and asterisks that `Rotation` and `Keep Aspect Ratio` are shared properties ([2cca822](https://github.com/mob-sakai/UIEffect/commit/2cca822413aa7580e1eb777c3295d1de928cd65f))\n\n## [5.8.1](https://github.com/mob-sakai/UIEffect/compare/5.8.0...5.8.1) (2025-04-17)\n\n\n### Bug Fixes\n\n* built-in presets cannot be used with `UIEffectReplica` ([1106f4b](https://github.com/mob-sakai/UIEffect/commit/1106f4bf4632e1372d44ced9a38e98209a6b55e8))\n* New presets ignore `DetailColor` property ([1143fbb](https://github.com/mob-sakai/UIEffect/commit/1143fbb84a1e08817de93f1349ee5cdad0972db5)), closes [#336](https://github.com/mob-sakai/UIEffect/issues/336)\n* prevent built-in preset assets from being editable ([0898d73](https://github.com/mob-sakai/UIEffect/commit/0898d730add42970fb74bf2ad8aca9809bf6dd39))\n\n# [5.8.0](https://github.com/mob-sakai/UIEffect/compare/5.7.0...5.8.0) (2025-04-17)\n\n\n### Bug Fixes\n\n* `ShadowMode.Mirror` does not flip the effect ([37daad0](https://github.com/mob-sakai/UIEffect/commit/37daad01c4f3f4c259650b1493aeae204e0bd247))\n* fix alpha clipping for ShaderGraph ([ae177a8](https://github.com/mob-sakai/UIEffect/commit/ae177a800cba1561b523292279d7986d4eff9f9c))\n* unable to add editor presets as runtime presets to project settings ([726bb10](https://github.com/mob-sakai/UIEffect/commit/726bb100a0ad327619634ea73ccdccc36276d0d0)), closes [#330](https://github.com/mob-sakai/UIEffect/issues/330)\n\n\n### Features\n\n* add `DetailColor` property ([30bf783](https://github.com/mob-sakai/UIEffect/commit/30bf783320398d68b90b09b0dcf93738b4683e00)), closes [#332](https://github.com/mob-sakai/UIEffect/issues/332)\n* ScriptableObject based preset system ([f8682f3](https://github.com/mob-sakai/UIEffect/commit/f8682f3c9889fb56ff3cd9010934f998e121553a)), closes [#333](https://github.com/mob-sakai/UIEffect/issues/333)\n\n# [5.7.0](https://github.com/mob-sakai/UIEffect/compare/5.6.4...5.7.0) (2025-04-11)\n\n\n### Bug Fixes\n\n* colors appeared darker when alpha was low ([21172f3](https://github.com/mob-sakai/UIEffect/commit/21172f37c21792906ac9e33827c771d388397653))\n* shrink shader variants for color filters ([7f60a56](https://github.com/mob-sakai/UIEffect/commit/7f60a56a9af6b4ecee223b466f1b2499af0194f4))\n\n\n### Features\n\n* `UIEffectReplica.flip` has been deprecated ([6af34e2](https://github.com/mob-sakai/UIEffect/commit/6af34e2994378fd33025b41fe08898b552aa08ab))\n* add `GradationIntensity` and `GradationColorFilter` properties ([a6781b9](https://github.com/mob-sakai/UIEffect/commit/a6781b92899c38f49eccfebf4173028955a5aced))\n* calculate the normalized position on the shader side ([01bbeed](https://github.com/mob-sakai/UIEffect/commit/01bbeedde7cf2d757d6d295475f0ad9acd24dce3)), closes [#323](https://github.com/mob-sakai/UIEffect/issues/323) [#324](https://github.com/mob-sakai/UIEffect/issues/324)\n* ShaderGraph support ([2dd2e26](https://github.com/mob-sakai/UIEffect/commit/2dd2e261666b611be3a1fd5ac112db34fd99038e)), closes [#326](https://github.com/mob-sakai/UIEffect/issues/326)\n\n## [5.6.4](https://github.com/mob-sakai/UIEffect/compare/5.6.3...5.6.4) (2025-04-10)\n\n\n### Bug Fixes\n\n* avoid potential allocations ([26da24d](https://github.com/mob-sakai/UIEffect/commit/26da24dbc4022dcd71e7a58e5f02a6922ba2ddff))\n* optional shaders do not support all shader combinations ([6014ab5](https://github.com/mob-sakai/UIEffect/commit/6014ab54d010872f8fee63fc961ac5ab2edd08e1))\n\n## [5.6.3](https://github.com/mob-sakai/UIEffect/compare/5.6.2...5.6.3) (2025-04-06)\n\n\n### Bug Fixes\n\n* fix a potential `ArgumentOutOfRangeException` that could occur when changing the FontAsset in TextMeshPro ([3b095bc](https://github.com/mob-sakai/UIEffect/commit/3b095bcebd8b1264c373b8b71c27d3c35f673f3b)), closes [#327](https://github.com/mob-sakai/UIEffect/issues/327)\n\n## [5.6.2](https://github.com/mob-sakai/UIEffect/compare/5.6.1...5.6.2) (2025-04-04)\n\n\n### Bug Fixes\n\n* fix a potential `ArgumentOutOfRangeException` that could occur when changing the FontAsset in TextMeshPro ([909281c](https://github.com/mob-sakai/UIEffect/commit/909281c66b702d8497e9f847c91b688716b9c6a7)), closes [#327](https://github.com/mob-sakai/UIEffect/issues/327)\n* Remove unnecessary vertex expansion ([974e3e8](https://github.com/mob-sakai/UIEffect/commit/974e3e8769d456c5cdd8eb1767a7cf57ab4d52fc))\n* undo now works correctly after clicking the 'Clear' button in the inspector ([75ed355](https://github.com/mob-sakai/UIEffect/commit/75ed355e27faf8962390eb6788e1887ffd1b5f89))\n\n## [5.6.1](https://github.com/mob-sakai/UIEffect/compare/5.6.0...5.6.1) (2025-03-28)\n\n\n### Bug Fixes\n\n* changes were not correctly marked as dirty when loading presets ([76be0fc](https://github.com/mob-sakai/UIEffect/commit/76be0fc860c27b89235b7fb9a766dcc38b3d9924))\n\n# [5.6.0](https://github.com/mob-sakai/UIEffect/compare/5.5.3...5.6.0) (2025-03-28)\n\n\n### Bug Fixes\n\n* fix edge detection ([9462170](https://github.com/mob-sakai/UIEffect/commit/946217069f10714798070481d8576f5470e243db))\n* fix project settings icon ([202601c](https://github.com/mob-sakai/UIEffect/commit/202601c96d6fb564ee5d6b8868b0ff0a8dba0ba1))\n* the strength of ColorGlow, TransitionColorGlow, and ShadowColorGlow now changes according to intensity ([aa4ec8d](https://github.com/mob-sakai/UIEffect/commit/aa4ec8d9c449bfe361aa277e25cbb389e0daa983)), closes [#316](https://github.com/mob-sakai/UIEffect/issues/316)\n* UIEffect with TextMeshPro SubMeshUI appears black in the editor when saving assets ([de91871](https://github.com/mob-sakai/UIEffect/commit/de918718d062979c8e9b4202b6b2ae389ae10bab))\n\n\n### Features\n\n* `TransitionAutoPlaySpeed`, `TransitionTexSpeed`, and `EdgeShinyAutoPlaySpeed` are previewed only when the object is selected in edit mode ([952a94f](https://github.com/mob-sakai/UIEffect/commit/952a94f50b3ae4279a48b03d019f341e46b2f5b7)), closes [#319](https://github.com/mob-sakai/UIEffect/issues/319)\n* add 'Flip' feature ([def49c3](https://github.com/mob-sakai/UIEffect/commit/def49c34f5b963c8b0cce6fb8cace3f7d93b5a1e))\n* add `Detail Filter` feature ([3e2c5c1](https://github.com/mob-sakai/UIEffect/commit/3e2c5c1613d9a2c08487d94c4eef28f066f2eb7b))\n* add `EdgeColorGlow` option ([53db1e6](https://github.com/mob-sakai/UIEffect/commit/53db1e62546384f04b9c526df2623c4598dd34bf))\n* add `onChangeRate` event for UIEffectTweener ([8ad57c8](https://github.com/mob-sakai/UIEffect/commit/8ad57c828ef4f1d7df6dd22c1edb7af3efa04d75)), closes [#321](https://github.com/mob-sakai/UIEffect/issues/321)\n* add `TransitionTexSpeed` option ([6b8dc5e](https://github.com/mob-sakai/UIEffect/commit/6b8dc5ec338590d909511eba3bb1b2e0ec6627f3))\n* add a tool that automatically fixes shaders when 'TextMeshPro Essential Resources' are located in a non-default path ([8388d59](https://github.com/mob-sakai/UIEffect/commit/8388d590457755cda0699835b37b5bf0673c4386))\n* add built-in presets ([3db94e0](https://github.com/mob-sakai/UIEffect/commit/3db94e00f83195ff90d26ee270c7984825fa22b7))\n* add shaders for TextMeshPro Overlay/SSD ([51cd6d8](https://github.com/mob-sakai/UIEffect/commit/51cd6d8525a12581c8afd4ab5d16e5968e15c8fe))\n* Allow specifying a preset as the target for `UIEffectReplica` ([cb0e8d2](https://github.com/mob-sakai/UIEffect/commit/cb0e8d283bb8f9085d4910051b5ae0b77368db76))\n* custom transform for transition and gradation ([045db9c](https://github.com/mob-sakai/UIEffect/commit/045db9c3b79234cd12bdfb4ea52898b7d86240af))\n* expose color subfields as float-type public properties ([396d06f](https://github.com/mob-sakai/UIEffect/commit/396d06f774e10adee84d06156a7fc8723d986bbd)), closes [#321](https://github.com/mob-sakai/UIEffect/issues/321)\n* load presets partially and append to existing instance ([6542543](https://github.com/mob-sakai/UIEffect/commit/654254342265fc239804e60a64d01b80076e5e8e))\n* separate reverse curve for UIEffectTweener ([2540b75](https://github.com/mob-sakai/UIEffect/commit/2540b75349af92f1359433e73ffa3b5400479b02)), closes [#312](https://github.com/mob-sakai/UIEffect/issues/312)\n* support `SoftMaskForUGUI ` package with `UIEffect` ([65457e2](https://github.com/mob-sakai/UIEffect/commit/65457e263644c36cd772ad1f42fb9fb3f84ab753)), closes [#270](https://github.com/mob-sakai/UIEffect/issues/270)\n* support UIFlip as v4 compatible component ([e965b9e](https://github.com/mob-sakai/UIEffect/commit/e965b9e9ab33dcfab067542abf2f19bc1d5243fc)), closes [#322](https://github.com/mob-sakai/UIEffect/issues/322)\n* update demo sample ([abc9a41](https://github.com/mob-sakai/UIEffect/commit/abc9a4184c4aeac85287a882d174f9cdc2c28c04)), closes [#318](https://github.com/mob-sakai/UIEffect/issues/318) [#320](https://github.com/mob-sakai/UIEffect/issues/320)\n\n## [5.5.3](https://github.com/mob-sakai/UIEffect/compare/5.5.2...5.5.3) (2025-03-06)\n\n\n### Bug Fixes\n\n* blur with 'Filled' Image type may cause error ([f0a7642](https://github.com/mob-sakai/UIEffect/commit/f0a76424e690355c101cc2e12183d1a7e77b16c3)), closes [#313](https://github.com/mob-sakai/UIEffect/issues/313)\n* IL2CPP build fails on older versions of Unity ([1af89af](https://github.com/mob-sakai/UIEffect/commit/1af89af2c58320f67b8d753767b3b4cf905f844d)), closes [#315](https://github.com/mob-sakai/UIEffect/issues/315)\n\n## [5.5.2](https://github.com/mob-sakai/UIEffect/compare/5.5.1...5.5.2) (2025-02-28)\n\n\n### Bug Fixes\n\n* `PlayOnEnable.Reverse` in UIEffectTweener does not work ([3f5a7dc](https://github.com/mob-sakai/UIEffect/commit/3f5a7dcd2d8248b9e47fb9d38c083f26b798e063)), closes [#310](https://github.com/mob-sakai/UIEffect/issues/310)\n* `TransitionFilter` and `GradationMode` do not work correctly when the initial scale is 0 ([bdbf293](https://github.com/mob-sakai/UIEffect/commit/bdbf293c1489c0b248078969b37ec66890620d44)), closes [#311](https://github.com/mob-sakai/UIEffect/issues/311)\n* component icons will no longer be displayed in the scene view (Unity 2021.2 or later) ([40ff828](https://github.com/mob-sakai/UIEffect/commit/40ff828ff0697dc8f6597cfcf094cc63532a19dd))\n* fix potential issues ([a748adf](https://github.com/mob-sakai/UIEffect/commit/a748adf1bde5e400fcc84ec902a1438867105f75))\n* reset time button does not work correctly in the inspector when `UIEffectTweener.direction=Reverse` in the editor ([8513970](https://github.com/mob-sakai/UIEffect/commit/8513970e6f71d393430a573bfb0207428998bee1)), closes [#310](https://github.com/mob-sakai/UIEffect/issues/310)\n\n## [5.5.1](https://github.com/mob-sakai/UIEffect/compare/5.5.0...5.5.1) (2025-02-14)\n\n\n### Bug Fixes\n\n* fix v4 compatible components ([6f6a8c9](https://github.com/mob-sakai/UIEffect/commit/6f6a8c95f878a290b1c4238cd0519f14febc04b6))\n* fully visible when the transition rate is set to 1 ([0a99bb7](https://github.com/mob-sakai/UIEffect/commit/0a99bb7765443a84070e19c9ea0096808442932e)), closes [#309](https://github.com/mob-sakai/UIEffect/issues/309)\n* UIEffect with TextMeshPro appears black in the editor when saving scene ([8cbcd76](https://github.com/mob-sakai/UIEffect/commit/8cbcd765ed9e11c38e3257191c2fc7dcd2c9916e))\n\n# [5.5.0](https://github.com/mob-sakai/UIEffect/compare/5.4.0...5.5.0) (2025-02-12)\n\n\n### Features\n\n* add `GradationMode.Diagonal` with 4 colors ([b72a1c0](https://github.com/mob-sakai/UIEffect/commit/b72a1c05c6d1d7b3c0aa11582d4a97da80d7fce9)), closes [#308](https://github.com/mob-sakai/UIEffect/issues/308)\n* add built-in presets ([8930b56](https://github.com/mob-sakai/UIEffect/commit/8930b563cb580463e2265483ccd3a42cb84e644b))\n\n# [5.4.0](https://github.com/mob-sakai/UIEffect/compare/5.3.4...5.4.0) (2025-02-10)\n\n\n### Bug Fixes\n\n* gradient color is not updated when calling the `SetGradientKeys` method ([a959fdd](https://github.com/mob-sakai/UIEffect/commit/a959fddd34a93dd0846369938b1cb6be514eee2d))\n\n\n### Features\n\n* tweener supports `EdgeMode.Shiny` ([32558d4](https://github.com/mob-sakai/UIEffect/commit/32558d4481de31ed9020c82861dc2a2d8ca7d53c)), closes [#307](https://github.com/mob-sakai/UIEffect/issues/307)\n\n## [5.3.4](https://github.com/mob-sakai/UIEffect/compare/5.3.3...5.3.4) (2025-02-10)\n\n\n### Bug Fixes\n\n* UIEffect v5.3.3 with TextMeshPro is not working in play mode in editor ([365c43e](https://github.com/mob-sakai/UIEffect/commit/365c43e21dcaaff349cf1362f9bd25b7deb163f7)), closes [#306](https://github.com/mob-sakai/UIEffect/issues/306)\n\n## [5.3.3](https://github.com/mob-sakai/UIEffect/compare/5.3.2...5.3.3) (2025-02-06)\n\n\n### Bug Fixes\n\n* when modifying TextMeshPro vertices, element disapear ([7529a7c](https://github.com/mob-sakai/UIEffect/commit/7529a7c4cd8db27a6d3312bce0a6ed6b13e40f35)), closes [#305](https://github.com/mob-sakai/UIEffect/issues/305)\n\n## [5.3.2](https://github.com/mob-sakai/UIEffect/compare/5.3.1...5.3.2) (2025-02-04)\n\n\n### Bug Fixes\n\n* some effects are not working correctly for TextMeshProUGUI in Unity 6 ([63de374](https://github.com/mob-sakai/UIEffect/commit/63de3742ecd7fcdcaa8dcca8dc104c7288291211))\n\n## [5.3.1](https://github.com/mob-sakai/UIEffect/compare/5.3.0...5.3.1) (2025-01-27)\n\n\n### Bug Fixes\n\n* shader keywords for UIEfect are not recognized in Unity 6 ([fd39abf](https://github.com/mob-sakai/UIEffect/commit/fd39abf5a71138919f8feee587576ba187075304)), closes [#301](https://github.com/mob-sakai/UIEffect/issues/301)\n\n# [5.3.0](https://github.com/mob-sakai/UIEffect/compare/5.2.4...5.3.0) (2025-01-26)\n\n\n### Features\n\n* `SamplingFilter.EdgeAlpha` and `SamplingFilter.EdgeLuminance` now support the `Sampling Width` property for edge width ([33b1177](https://github.com/mob-sakai/UIEffect/commit/33b1177815b935a887c5a8918748cbeafec32b6b))\n* add `EdgeMode` feature ([eadb477](https://github.com/mob-sakai/UIEffect/commit/eadb477bcd91f8909bfa7b8976241411363ee12c))\n* add `ResetOnEnable` option for `UIEffectTweener` ([e326bb7](https://github.com/mob-sakai/UIEffect/commit/e326bb77537b921df775646142105a490ae54851)), closes [#299](https://github.com/mob-sakai/UIEffect/issues/299)\n* add `TransitionAutoSpeed` property ([7a765c3](https://github.com/mob-sakai/UIEffect/commit/7a765c32d87f6dfbdb990d5b3a272dd80696b374))\n* add `TransitionFilter.Pattern` feature ([b57e98b](https://github.com/mob-sakai/UIEffect/commit/b57e98b64c61a7c7eb3ca97f3bd7e909956ee469))\n\n## [5.2.4](https://github.com/mob-sakai/UIEffect/compare/5.2.3...5.2.4) (2025-01-26)\n\n\n### Bug Fixes\n\n* properties may not update correctly when changed via code or animation ([5994f88](https://github.com/mob-sakai/UIEffect/commit/5994f8875ed2280e5c863c30f9c7900d4dce70ed)), closes [#300](https://github.com/mob-sakai/UIEffect/issues/300)\n\n## [5.2.3](https://github.com/mob-sakai/UIEffect/compare/5.2.2...5.2.3) (2025-01-23)\n\n\n### Bug Fixes\n\n* `SamplingFilter.None` now correctly respects the sampling scale setting ([bc1578b](https://github.com/mob-sakai/UIEffect/commit/bc1578b0ca91b830b976bf200d387d0ac6963ae6))\n* fix the shadow mode inspector in editor ([da53585](https://github.com/mob-sakai/UIEffect/commit/da535854ccbeeb98b2556423425d39058bd5f479))\n* UIEffect may not work correctly when using `FallbackAtlas` with TextMeshProUGUI ([d3779f9](https://github.com/mob-sakai/UIEffect/commit/d3779f9f57d0410fa4526527ebed30885bfbc2dd)), closes [#298](https://github.com/mob-sakai/UIEffect/issues/298)\n\n## [5.2.2](https://github.com/mob-sakai/UIEffect/compare/5.2.1...5.2.2) (2025-01-18)\n\n\n### Bug Fixes\n\n* in Unity 6, `Shadow Color` has no effect on TextMeshPro ([6e4d4ab](https://github.com/mob-sakai/UIEffect/commit/6e4d4ab03db786e4c28d0f2c57d9e58655c5d029)), closes [#297](https://github.com/mob-sakai/UIEffect/issues/297)\n\n## [5.2.1](https://github.com/mob-sakai/UIEffect/compare/5.2.0...5.2.1) (2025-01-14)\n\n\n### Bug Fixes\n\n* shadow color being transparent at maximum `Shadow Fade` ([1d849e5](https://github.com/mob-sakai/UIEffect/commit/1d849e54cb57218a67afc2f8ad36d345bfdd0f74)), closes [#296](https://github.com/mob-sakai/UIEffect/issues/296)\n* TextMeshPro is not displayed in prefab mode ([2b44837](https://github.com/mob-sakai/UIEffect/commit/2b44837bb9c93e1cc817a2c1cd112b244cd09391)), closes [#295](https://github.com/mob-sakai/UIEffect/issues/295)\n* TextMeshProUGUI disappears when the Y-axis scale is changed ([8159c09](https://github.com/mob-sakai/UIEffect/commit/8159c091e8a6805a7781046ae0f660a3be13862c)), closes [#295](https://github.com/mob-sakai/UIEffect/issues/295)\n\n# [5.2.0](https://github.com/mob-sakai/UIEffect/compare/5.1.0...5.2.0) (2025-01-07)\n\n\n### Bug Fixes\n\n* `Gradation` properties do not update when a preset is loaded ([edf6943](https://github.com/mob-sakai/UIEffect/commit/edf694313f101b66f760bca64593fb87037dcb3d)), closes [#291](https://github.com/mob-sakai/UIEffect/issues/291)\n* an error occurs when saving a preset ([894c561](https://github.com/mob-sakai/UIEffect/commit/894c5610d044f211067037b6c69f9860ac496ffc)), closes [#293](https://github.com/mob-sakai/UIEffect/issues/293)\n* fix gradation gradient edge (angle gradient) ([0ef6027](https://github.com/mob-sakai/UIEffect/commit/0ef60273714c7b68131f2f0d233b16335a5cd367))\n\n\n### Features\n\n* `Angle Gradient` gradation supports fixed mode gradient ([7cb8325](https://github.com/mob-sakai/UIEffect/commit/7cb8325e445350d2175865f736186f719e1cbe00))\n* `Angle Gradient` gradation supports RectTransform pivot ([2f63adf](https://github.com/mob-sakai/UIEffect/commit/2f63adfba057bec7f8183a5b34654cdf84163a34))\n* add `Use HDR Color Picker` option for project settings (editor) ([1be0cd4](https://github.com/mob-sakai/UIEffect/commit/1be0cd45db952d05e51d508c58f65a6541df9de0)), closes [#290](https://github.com/mob-sakai/UIEffect/issues/290)\n* the `Allow To Modify Mesh Shape` property should remain unchanged when loading a preset ([f7175c0](https://github.com/mob-sakai/UIEffect/commit/f7175c037371278eb7a0c7883cffccb5c31dba0a)), closes [#294](https://github.com/mob-sakai/UIEffect/issues/294)\n* the `Sampling Scale` property should remain unchanged when loading a preset ([238a17d](https://github.com/mob-sakai/UIEffect/commit/238a17d57ddf1f6b859ce830e80a1be6c3d739f1)), closes [#292](https://github.com/mob-sakai/UIEffect/issues/292)\n\n# [5.1.0](https://github.com/mob-sakai/UIEffect/compare/5.0.2...5.1.0) (2024-12-31)\n\n\n### Bug Fixes\n\n* changing the `shadowMirrorScale` property via code does not update the effect ([d9bf0e1](https://github.com/mob-sakai/UIEffect/commit/d9bf0e12fe918fc36120be3e1df2acbb00b1762b))\n* fix reverse direction mode for UIEffectTweener ([54825ee](https://github.com/mob-sakai/UIEffect/commit/54825eedc8070e74fc276e1e08ea0073cf265189)), closes [#281](https://github.com/mob-sakai/UIEffect/issues/281) [#282](https://github.com/mob-sakai/UIEffect/issues/282) [#283](https://github.com/mob-sakai/UIEffect/issues/283)\n\n\n### Features\n\n* add `Color Glow`, `Transition Color Glow` and `Shadow Color Glow` options ([e9522d3](https://github.com/mob-sakai/UIEffect/commit/e9522d3f0e3bc0c429ef32f240625e903ca790ee))\n* add `GradationMode.Angle` and `GradationMode.AngleGradient` ([08e9ba7](https://github.com/mob-sakai/UIEffect/commit/08e9ba73d78ba52502a6e795587441061377cd99))\n* add `OnComplete` event for UIEffectTweener ([aeb78ed](https://github.com/mob-sakai/UIEffect/commit/aeb78ed577d70c47aacd754ea2aa3916e6e49c1b)), closes [#289](https://github.com/mob-sakai/UIEffect/issues/289) [#188](https://github.com/mob-sakai/UIEffect/issues/188)\n* add `PlayOnEnable` option for UIEffectTweener ([1558736](https://github.com/mob-sakai/UIEffect/commit/155873669d77fc3281caaa0fc9f861e62aa489f2))\n* add `SamplingScale` option ([2b43bc4](https://github.com/mob-sakai/UIEffect/commit/2b43bc42d4a9e0a1c224139ccf91f7a6f76656fc)), closes [#269](https://github.com/mob-sakai/UIEffect/issues/269)\n* add `Shadow Color` and `Shadow Blur` options ([d0a3ca6](https://github.com/mob-sakai/UIEffect/commit/d0a3ca60904c0eebf63178a0fb899bb17ecefe75))\n* add a button to swap gradation colors (editor) ([20a6ca0](https://github.com/mob-sakai/UIEffect/commit/20a6ca0815aaa899934fde318beecc1dde5e1132))\n* add option to not automatically plays tweener effect ([88609f5](https://github.com/mob-sakai/UIEffect/commit/88609f5e368e38224a698270113b4f3190580a19))\n* automatically display a dialog to import TextMeshPro support ([f2df188](https://github.com/mob-sakai/UIEffect/commit/f2df1889d152ae68926067978c60b4810fdef3f1))\n* gradation feature ([bbe57df](https://github.com/mob-sakai/UIEffect/commit/bbe57df7a0a184793bd6d98a2b929055f69860b3)), closes [#277](https://github.com/mob-sakai/UIEffect/issues/277) [#66](https://github.com/mob-sakai/UIEffect/issues/66)\n* on-demand UIEffect shader support ([bdd8e08](https://github.com/mob-sakai/UIEffect/commit/bdd8e0857235c56b7013fe768a333c5575aaa0ef)), closes [#212](https://github.com/mob-sakai/UIEffect/issues/212) [#271](https://github.com/mob-sakai/UIEffect/issues/271)\n* support `TextMeshPro/Bitmap` and `TextMeshPro/Mobile/Bitmap` shaders. ([23ac398](https://github.com/mob-sakai/UIEffect/commit/23ac3985d2a2d9497b2d50b3755be671f3a07aa9)), closes [#284](https://github.com/mob-sakai/UIEffect/issues/284)\n* support non full-rect graphics for some effect ([a66baea](https://github.com/mob-sakai/UIEffect/commit/a66baea1e8d895c424ba3dc1fce64f969d79561e))\n* UIEffectTweener animation preview in edit mode ([e17b4a0](https://github.com/mob-sakai/UIEffect/commit/e17b4a0bfd262dc22ad2a13af5b0571b43a74abd)), closes [#279](https://github.com/mob-sakai/UIEffect/issues/279)\n\n## [5.0.2](https://github.com/mob-sakai/UIEffect/compare/5.0.1...5.0.2) (2024-12-24)\n\n\n### Bug Fixes\n\n* incorrect transparency when applying the shiny filter to TextMeshProUGUI ([f74279f](https://github.com/mob-sakai/UIEffect/commit/f74279fb8353226b494f00582ed5eb7fe87d147f)), closes [#287](https://github.com/mob-sakai/UIEffect/issues/287)\n* TextMeshProUGUI disappears when the Y-axis scale is changed ([9d98c5d](https://github.com/mob-sakai/UIEffect/commit/9d98c5d3e1c6ead8e3312a7e3a36fe89b38aed68)), closes [#286](https://github.com/mob-sakai/UIEffect/issues/286)\n\n## [5.0.1](https://github.com/mob-sakai/UIEffect/compare/5.0.0...5.0.1) (2024-12-14)\n\n\n### Bug Fixes\n\n* build AssetBundle error ([7374747](https://github.com/mob-sakai/UIEffect/commit/73747478a4e5754891ebd4fd2d54955e82a72eb3))\n* fix cutoff transition effect ([c893cb0](https://github.com/mob-sakai/UIEffect/commit/c893cb0ce2e90bf13456adbc7d2e0e0642cbac1d))\n* fix TextMeshPro shader (underlay and bevel) ([f39097a](https://github.com/mob-sakai/UIEffect/commit/f39097a73fc8560a50f848290ce4c5a235b68cac))\n* TextMeshPro objects appeared as black blocks when saving prefabs in prefab mode ([5889486](https://github.com/mob-sakai/UIEffect/commit/5889486f18afde6dec203bbe4aaca45760a9dce1)), closes [#285](https://github.com/mob-sakai/UIEffect/issues/285)\n\n# [5.0.0](https://github.com/mob-sakai/UIEffect/compare/4.0.0...5.0.0) (2024-11-11)\n\n\n### Features\n\n* add built-in UIEffect preset ([4adb58c](https://github.com/mob-sakai/UIEffect/commit/4adb58ca61d75897e67ef8674f9be9b9d6156b24))\n* add support for TextMeshPro, including `<font>` and `<sprite>` tags ([a4f85cb](https://github.com/mob-sakai/UIEffect/commit/a4f85cb0ee58a60e20572fcce0ebf204effce51e))\n* add UIEffectProjectSettings ([1306e19](https://github.com/mob-sakai/UIEffect/commit/1306e19cab9aeb9ec86a8047d59c2a9ad11bb128))\n* add UIEffectReplica component ([3bdc61c](https://github.com/mob-sakai/UIEffect/commit/3bdc61c2efe51e198650171e7a235276b82cb1f0))\n* add UIEffectTweener component ([e2c1605](https://github.com/mob-sakai/UIEffect/commit/e2c1605c1986c34f23c85dc9ec22f00f16bca21d))\n* add v4 compatible components ([d40a019](https://github.com/mob-sakai/UIEffect/commit/d40a0198c439b47c5b87f554df7eeb6ad5741fcd))\n* completely redesigned UIEffect architecture ([4e069a4](https://github.com/mob-sakai/UIEffect/commit/4e069a45d9817095f727f3bd18d793683fb052c2))\n\n\n### BREAKING CHANGES\n\n* All v4 components are obsolete. See README to upgrade.\n\n<!-- File: Packages/src/LICENSE.md (Tokens: ~204 | Category: anthropic-skill) -->\nCopyright 2017-2024 mob-sakai\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n<!-- File: Packages/src/package.json (Tokens: ~479 | Category: anthropic-skill) -->\n{\n  \"name\": \"com.coffee.ui-effect\",\n  \"displayName\": \"UI Effect\",\n  \"description\": \"UIEffect is an open-source package that allows you to intuitively apply rich UI effects directly from the Inspector or via code.\\nCombine various filters, such as grayscale, blur, and dissolve, to decorate your UI with a unique visual style!\",\n  \"version\": \"5.11.7\",\n  \"unity\": \"2020.3\",\n  \"license\": \"MIT\",\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"git+https://github.com/mob-sakai/UIEffect.git\"\n  },\n  \"author\": {\n    \"name\": \"mob-sakai\",\n    \"email\": \"sakai861104@gmail.com\",\n    \"url\": \"https://github.com/mob-sakai\"\n  },\n  \"dependencies\": {\n    \"com.unity.ugui\": \"1.0.0\"\n  },\n  \"keywords\": [\n    \"ui\",\n    \"effect\"\n  ],\n  \"samples\": [\n    {\n      \"displayName\": \"Demo\",\n      \"description\": \"UI Effect Demo\",\n      \"path\": \"Samples~/Demo\"\n    },\n    {\n      \"displayName\": \"v4 Compatible Components\",\n      \"description\": \"v4 Compatible Components\",\n      \"path\": \"Samples~/v4 Compatible Components\"\n    },\n    {\n      \"displayName\": \"TextMeshPro Support\",\n      \"description\": \"TextMeshPro Support\",\n      \"path\": \"Samples~/TextMeshPro Support~\"\n    },\n    {\n      \"displayName\": \"TextMeshPro Support (Unity 6)\",\n      \"description\": \"TextMeshPro Support (Unity 6)\",\n      \"path\": \"Samples~/TextMeshPro Support (Unity 6)~\"\n    },\n    {\n      \"displayName\": \"ShaderGraph Support (Unity 6 BuiltIn)\",\n      \"description\": \"ShaderGraph Support (Unity 6 BuiltIn)\",\n      \"path\": \"Samples~/ShaderGraph Support (Unity 6 BuiltIn)~\"\n    },\n    {\n      \"displayName\": \"ShaderGraph Support (Unity 6 URP)\",\n      \"description\": \"ShaderGraph Support (Unity 6 URP)\",\n      \"path\": \"Samples~/ShaderGraph Support (Unity 6 URP)~\"\n    }\n  ]\n}\n\n<!-- File: UIEffectURP/Packages/manifest.json (Tokens: ~257 | Category: anthropic-skill) -->\n{\n  \"dependencies\": {\n    \"com.coffee.development\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/Development\",\n    \"com.coffee.minimal-resource\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/MinimalResource\",\n    \"com.coffee.nano-monitor\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/NanoMonitor\",\n    \"com.coffee.symbolic-linker\": \"https://github.com/mob-sakai/Coffee.Internal.git?path=Packages/SymbolicLinker\",\n    \"com.coffee.ui-effect\": \"file:../../Packages/src\",\n    \"com.unity.addressables\": \"2.9.1\",\n    \"com.unity.ide.rider\": \"3.0.39\",\n    \"com.unity.render-pipelines.universal\": \"17.0.4\",\n    \"com.unity.test-framework\": \"1.6.0\",\n    \"com.unity.timeline\": \"1.8.10\",\n    \"com.unity.ugui\": \"2.0.0\",\n    \"com.unity.modules.animation\": \"1.0.0\"\n  }\n}\n\n<!-- File: Packages/src/README.md (Tokens: ~9617 | Category: plugin-manifest) -->\n# <img alt=\"logo\" height=\"26\" src=\"https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-logo.png\"/> UIEffect v5 <!-- omit in toc -->\n\n[![](https://img.shields.io/npm/v/com.coffee.ui-effect?label=openupm&registry_uri=https://package.openupm.com)](https://openupm.com/packages/com.coffee.ui-effect/)\n[![](https://img.shields.io/github/v/release/mob-sakai/UIEffect?include_prereleases)](https://github.com/mob-sakai/UIEffect/releases)\n[![](https://img.shields.io/github/release-date/mob-sakai/UIEffect.svg)](https://github.com/mob-sakai/UIEffect/releases)  \n![](https://img.shields.io/badge/Unity-2020.3+-57b9d3.svg?style=flat&logo=unity)\n![](https://img.shields.io/badge/Unity-6000.0+-57b9d3.svg?style=flat&logo=unity)  \n![](https://img.shields.io/badge/TextMeshPro_Support-57b9d3.svg?style=flat)\n![](https://img.shields.io/badge/ShaderGraph_Support-57b9d3.svg?style=flat)\n![](https://img.shields.io/badge/Timeline_Support-57b9d3.svg?style=flat)\n![](https://img.shields.io/badge/UPR%2FHDPR_Support-57b9d3.svg?style=flat)\n![](https://img.shields.io/badge/VR_Support-57b9d3.svg?style=flat)  \n[![](https://img.shields.io/github/license/mob-sakai/UIEffect.svg)](https://github.com/mob-sakai/UIEffect/blob/main/LICENSE.md)\n[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-orange.svg)](http://makeapullrequest.com)\n[![](https://img.shields.io/github/watchers/mob-sakai/UIEffect.svg?style=social&label=Watch)](https://github.com/mob-sakai/UIEffect/subscription)\n[![](https://img.shields.io/twitter/follow/mob_sakai.svg?label=Follow&style=social)](https://twitter.com/intent/follow?screen_name=mob_sakai)\n\n<< [📝 Description](#-description-) | [📌 Key Features](#-key-features) | [🎮 Demo](#-demo) | [⚙ Installation](#-installation) | [🔄 Upgrading from v4 to v5](#-upgrading-from-v4-to-v5) | [🚀 Usage](#-usage) | [🤝 Contributing](#-contributing) >>\n\n⚠️ This README is for v5. For v4, please visit [here](https://github.com/mob-sakai/UIEffect/blob/upm/README.md).\n\n## 📝 Description <!-- omit in toc -->\n\n**_\"Decorate your UI, simply and powerfully.\"_**\n\nUIEffect is a powerful, open-source Unity package that transforms your UI with stunning visual effects.  \nApply professional-grade filters like grayscale, blur, and dissolve directly from the Inspector—no coding required!\n\n✨ **Perfect for**: Game developers, UI designers, and anyone looking to enhance their Unity UI with minimal effort\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-demo-title.png)\n\n- [📌 Key Features](#-key-features)\n- [🎮 Demo](#-demo)\n- [⚙ Installation](#-installation)\n  - [Install via OpenUPM](#install-via-openupm)\n  - [Install via UPM (with Package Manager UI)](#install-via-upm-with-package-manager-ui)\n  - [Install via UPM (Manually)](#install-via-upm-manually)\n  - [Install as Embedded Package](#install-as-embedded-package)\n  - [Import Additional Resources](#import-additional-resources)\n- [🔄 Upgrading from v4 to v5](#-upgrading-from-v4-to-v5)\n- [🚀 Usage](#-usage)\n  - [Getting Started](#getting-started)\n  - [Component: UIEffect](#component-uieffect)\n    - [Tone Filter](#tone-filter)\n    - [Color Filter](#color-filter)\n    - [Sampling Filter](#sampling-filter)\n    - [Transition Filter](#transition-filter)\n    - [Target Mode](#target-mode)\n    - [Blend Type](#blend-type)\n    - [Shadow Mode](#shadow-mode)\n    - [Gradation Mode](#gradation-mode)\n    - [Edge Mode](#edge-mode)\n    - [Detail Filter](#detail-filter)\n    - [Flip](#flip)\n    - [Others](#others)\n  - [Component: UIEffectTweener](#component-uieffecttweener)\n  - [Component: UIEffectReplica](#component-uieffectreplica)\n  - [Usage with TextMeshPro](#usage-with-textmeshpro)\n  - [Usage with SoftMaskForUGUI](#usage-with-softmaskforugui)\n  - [Usage with ShaderGraph](#usage-with-shadergraph)\n  - [Usage with Timeline](#usage-with-timeline)\n  - [Usage with Custom Shader](#usage-with-custom-shader)\n  - [Runtime/Editor Preset for UIEffect](#runtimeeditor-preset-for-uieffect)\n  - [Usage with Code](#usage-with-code)\n  - [Project Settings](#project-settings)\n    - [Settings](#settings)\n    - [Editor](#editor)\n    - [Shader](#shader)\n  - [:warning: Limitations](#warning-limitations)\n- [🤝 Contributing](#-contributing)\n  - [Issues](#issues)\n  - [Pull Requests](#pull-requests)\n  - [Support](#support)\n- [License](#license)\n- [Author](#author)\n- [See Also](#see-also)\n\n<br><br>\n\n## 📌 Key Features\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-keyfeatures.png)\n\n- **UIEffect is out-of-the-box!**: Easily apply effects by adjusting parameters directly in the inspector.\n- **Rich effect combinations**: Decorate your UI with a variety of effects, such as grayscale, blur, and dissolve, by combining multiple filters and parameters.\n- **Efficient shader builds**: Only the shader variants in use are built, resulting in shorter build times.\n- **URP/HDRP/VR support**: Compatible with URP, HDRP, and VR environments.\n- **Runtime and editor presets**: Presets are available both at runtime and in the editor.\n- **TextMeshPro support**: Supports TextMeshPro, including `<font>` and `<sprite>` tags.\n- **UIEffectReplica Component**: Duplicate effects and apply them to multiple UI elements at once.\n- **UIEffectTweener Component**: A simple tweener component to play, stop, pause, and resume effects.\n- **AnimationClip support**: Allows control of effect animations using `AnimationClips`.\n- **v4 compatible components (optional)**: For easy upgrading with minimal changes, compatible v4 components are available optionally.\n- **SoftMaskForUGUI support (optional)**: Compatible with SoftMaskForUGUI for creating soft masks for UI elements. See for more details [here](#usage-with-softmaskforugui).\n- **ShaderGraph support (optional)**: Add `Canvas (UIEffect)` sub target (material) for UIEffect shaders. See for more details [here](#usage-with-shadergraph).\n- **Timeline support**: Control UIEffect using Timeline with `ControlTrack` and `UIEffect Tracks`. See for more details [here](#usage-with-timeline).\n\n<br><br>\n\n## 🎮 Demo\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1749461316801.png)\n<img src=\"https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-demo-pattern.gif\" width=\"582\"/>  \n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-demo-showcase.png)  \n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-demo-tmp.png)  \n\n[Try the WebGL Demo](https://mob-sakai.github.io/UIEffect/)\n\n<br><br>\n\n## ⚙ Installation\n\n_This package requires **Unity 2020.3 or later**._\n\n### Install via OpenUPM\n\n- This package is available on [OpenUPM](https://openupm.com/packages/com.coffee.ui-effect/) package registry.\n- This is the preferred method of installation, as you can easily receive updates as they're released.\n- If you have [openupm-cli](https://github.com/openupm/openupm-cli) installed, then run the following command in your project's directory:\n  ```\n  openupm add com.coffee.ui-effect\n  ```\n- To update the package, use Package Manager UI (`Window > Package Manager`) or run the following command with `@{version}`:\n  ```\n  openupm add com.coffee.ui-effect@5.9.0\n  ```\n\n### Install via UPM (with Package Manager UI)\n\n- Click `Window > Package Manager` to open Package Manager UI.\n- Click `+ > Add package from git URL...` and input the repository URL: `https://github.com/mob-sakai/UIEffect.git?path=Packages/src`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/upm-add-from-url.png)\n- To update the package, change suffix `#{version}` to the target version.\n    - e.g. `https://github.com/mob-sakai/UIEffect.git?path=Packages/src#5.9.0`\n\n### Install via UPM (Manually)\n\n- Open the `Packages/manifest.json` file in your project. Then add this package somewhere in the `dependencies` block:\n  ```json\n  {\n    \"dependencies\": {\n      \"com.coffee.ui-effect\": \"https://github.com/mob-sakai/UIEffect.git?path=Packages/src\",\n      ...\n    }\n  }\n  ```\n\n- To update the package, change suffix `#{version}` to the target version.\n    - e.g. `\"com.coffee.ui-effect\": \"https://github.com/mob-sakai/UIEffect.git?path=Packages/src#5.9.0\",`\n\n### Install as Embedded Package\n\n1. Download the `Source code (zip)` file from [Releases](https://github.com/mob-sakai/UIEffect/releases) and\n   extract it.\n2. Move the `<extracted_dir>/Packages/src` directory into your project's `Packages` directory.  \n   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/upm-add-as-embedded.png)\n    - You can rename the `src` directory if needed.\n    - If you intend to fix bugs or add features, installing it as an embedded package is recommended.\n    - To update the package, re-download it and replace the existing contents.\n\n### Import Additional Resources\n\nAdditional resources can be imported to extend functionality.\n\n- [🔄 Upgrading from v4 to v5](#-upgrading-from-v4-to-v5)\n- [Usage with TextMeshPro](#usage-with-textmeshpro)\n- [Usage with ShaderGraph](#usage-with-shadergraph)\n\n<br><br>\n\n## 🔄 Upgrading from v4 to v5\n\nIf upgrading from UIEffect v4 to v5, note the following breaking changes:\n\n1. If you are installing via git URL, add `?path=Packages/src`. The default branch is changed `upm` to `main`.\n   ```json\n   // v4\n   \"com.coffee.ui-effect\": \"https://github.com/mob-sakai/UIEffect.git\",\n   \"com.coffee.ui-effect\": \"https://github.com/mob-sakai/UIEffect.git#upm\",\n   \n   // v5\n   \"com.coffee.ui-effect\": \"https://github.com/mob-sakai/UIEffect.git?path=Packages/src\",\n   \"com.coffee.ui-effect\": \"https://github.com/mob-sakai/UIEffect.git?path=Packages/src#main\",\n   ```\n\n2. Import the `v4 Compatible Components` sample from the Package Manager window.  \n\n3. All v4 components are obsolete.  \n- v4 `UIEffect` component is now `UIEffectV4` component. Change the reference in the code.\n- The `effectArea` property in some components are not supported in v5.\n- `UIShadow`, `UIGradient` components are not supported in v5.\n- v4 components can be converted to v5 `UIEffect` component by selecting `Convert To UIEffect` from the context menu.  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-v4-convert.png)\n\n<br><br>\n\n## 🚀 Usage\n\n### Getting Started\n\n1. [Install the package](#-installation).\n\n2. Add a `UIEffect` component to a UI element (Image, RawImage, Text, TextMeshProUGUI, etc...) from the `Add Component` in the inspector or `Component > UI > UIEffect` menu.  \n   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-add-component.png)\n\n3. Set `Tone Filter` to `Grayscale` and `Tone Intensity` to `1.0`.  \n   <img src=\"https://github.com/mob-sakai/mob-sakai/releases/download/docs/1749029605043.png\" width=\"480\"/>\n\n4. Try other effect filters and parameters in the inspector.  \n   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744308178360.gif)\n\n5. From the top menu, you can load/append preset.  \n> [!TIP]\n>\n> `Load` overwrites all properties with the preset, while `Append` only overwrites enabled filters and modes with the preset.  \n> You can easily build effects by combining them with `Append`.\n\n   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744800851739.gif)\n\n5. Enjoy!\n\n<br><br>\n\n### Component: UIEffect\n\nThe `UIEffect` component applies visual effects to UI elements, allowing various effects to be achieved by combining multiple filters.\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-preset.png)\n\n> [!TIP]  \n> From the top menu, you can load and save the editor presets or clear settings.  \n> For details, refer to the [Runtime/Editor Preset for UIEffect](#runtimeeditor-preset-for-uieffect).\n\n<br>\n\n#### Tone Filter\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-tone.png)\n\n- **Tone Filter**: `None`, `Grayscale`, `Sepia`, `Nega`, `Retro`, `Posterize`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-tone.png)\n- **Tone Intensity**: 0.0 (no effect) - 1.0 (full effect).\n\n<br>\n\n#### Color Filter\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-color.png)\n\n- **Color Filter**: `None`, `Multiply`, `Additive`, `Subtractive`, `Replace`, `Multiply Luminance`, `Multiply Additive`, `Hsv Modifier`, `Contrast`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-color.png)\n- **Color Intensity**: 0.0 (no effect) - 1.0 (full effect).\n- **Color Glow**: Set the color to glow.\n\n<br>\n\n#### Sampling Filter\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-sampling.png)\n\n- **Sampling Filter**: `None`, `Blur Fast`, `Blur Medium`, `Blur Detail`, `Pixelation`, `Rgb Shift`, `Edge Luminescence`, `Edge Alpha`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-sampling.png)\n- **Sampling Intensity**: 0.0 (no effect) - 1.0 (full effect).\n- **Sampling Width**: The width of the sampling effect.\n\n<br>\n\n#### Transition Filter\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-transition.png)\n\n- **Transition Filter**: `None`, `Fade`, `Cutoff`, `Dissolve`, `Shiny`, `Mask`, `Melt`, `Burn`, `Blaze`, `Pattern`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1749466907712.gif)\n- **Transition Rate**: 0.0 (no effect) - 1.0 (full effect).\n- **Transition Tex**: The texture used for the transition filter.\n    - **Scale**, **Offset**, **Speed**, **Rotation**, **Keep Aspect Ratio**, **Reverse**: Additional properties for the texture.\n    - ⚠️ NOTE: `Rotation` is shared with `Transition Filter` and `Detail Filter`.\n    - ⚠️ NOTE: `Keep Aspect Ratio` is shared with `Transition Filter` and `Gradation Mode` and `Detail Filter`.\n- **Transition Width**: The width where the transition color is applied.\n- **Transition Pattern Range**: The range of the pattern.\n- **Transition Pattern Reverse**: Reverse the pattern.\n- **Transition Softness**: The softness of the boundary for the transition color.\n- **Transition Color Filter**: `None`, `Multiply`, `Additive`, `Subtractive`, `Replace`, `Multiply Luminance`, `Multiply Additive`, `Hsv Modifier`, `Contrast`\n    - **Transition Color**: The color of the transition.\n    - **Transition Color Glow**: Set the transition color to glow.\n- **Transition Auto Play Speed**: The speed of the transition animation (using shader side `_Time`). You can use this property to loop the `TransitionRate` without tweener or animation.\n    - ⚠️ NOTE: This uses scaled time (affected by `Time.timeScale`). If you need unscaled time (useful for pause-resistant effects), use the [UIEffectTweener](#component-uieffecttweener) component instead.\n\n> [!TIP]  \n> **Transition Tex** applies transitions using its alpha channel.  \n> If you use `Scale`, `Offset`, or `Speed`, set `Wrap Mode = Repeat` in the texture import settings.  \n> For details, refer to the textures included in the built-in presets.  \n> ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/17443051097852.png)\n\n<br>\n\n#### Target Mode\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-target.png)\n\n- **Target Mode**: `None`, `Hue`, `Luminance`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-target.png)\n  - Restricts the effect application area based on hue or luminance.\n- **Target Range**: The range of target hue or luminance.\n- **Target Softness**: The softness of the target boundary.\n\n<br>\n\n#### Blend Type\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-blend.png)\n\n- **Blend Type**: `Alpha Blend`, `Multiply`, `Additive`, `Soft Additive`, `Multiply Additive`, `Custom`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-blend.png)\n  - `Custom` blend type can be set using the `SrcBlend` and `DstBlend` properties. \n\n<br>\n\n#### Shadow Mode\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-shadow.png)\n\n- **Shadow Mode**: `None`, `Shadow`, `Shadow3`, `Outline`, `Outline8`, `Mirror`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-shadow.png)\n- **Shadow Distance**: Distance of the shadow or outline.\n- **Shadow Iteration**: Number of times the shadow or outline is applied.\n- **Shadow Color Filter**: `None`, `Multiply`, `Additive`, `Subtractive`, `Replace`, `Multiply Luminance`, `Multiply Additive`, `Hsv Modifier`, `Contrast`\n    - **Shadow Color**: The color of the shadow.\n    - **Shadow Color Glow**: Set the shadow color to glow.\n- **Shadow Fade**: Alpha value of the shadow or outline.\n- **Shadow Blur Intensity** (`SamplingFilter = Blur***` required): Intensity of the shadow or outline blur.\n- **Mirror Reflection** (`Mirror` only): Distance of the mirrored image.\n- **Mirror Offset** (`Mirror` only): Offset for the mirrored image.\n- **Mirror Scale** (`Mirror` only): Scale of the mirrored image.\n\n<br>\n\n#### Gradation Mode\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744305109784.png)\n\n- **Gradation Mode**: `None`, `Horizontal`, `HorizontalGradient`, `Vertical`, `VerticalGradient`, `Radial`, `RadialGradient`, `Diagonal`, `DiagonalToRightBottom`, `DiagonalToLeftBottom`, `Angle`, `AngleGradient`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1749461050342.png)\n- **Gradation Color Filter**: `None`, `Multiply`, `Additive`, `Subtractive`, `Replace`, `Multiply Luminance`, `Multiply Additive`\n- **Gradation Gradient**: The gradient of the gradation. HDR colors are supported.\n  - `Blend` and `Fixed` modes are available.\n- **Gradation Color 1**: The first color of the gradation.\n- **Gradation Color 2**: The second color of the gradation.\n- **Gradation Intensity**: 0.0 (no effect) - 1.0 (full effect).\n- **Gradation Offset**: The offset of the gradation range.\n- **Gradation Scale**: The scale of the gradation range.\n- **Gradation Rotation** (`Angle` or `AngleGradient` only): The rotation of the gradation range.\n- **Gradation Wrap Mode**: `Repaet`, `Clamp`, `Mirror`, `Mirror Once`\n- **Gradation Reverse**: Reverse the gradient.\n- **Keep Aspect Ratio**: \n  - ⚠️ NOTE: `Keep Aspect Ratio` is shared with `Transition Filter` and `Gradation Mode` and `Detail Filter`.\n\n<br>\n\n#### Edge Mode\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-edge.png)\n\n- **Edge Mode**: `None`, `Plain`, `Shiny`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-edge.png)\n- **Edge Width**: The width of the edge.\n- **Edge Color Filter**: `None`, `Multiply`, `Additive`, `Subtractive`, `Replace`, `Multiply Luminance`, `Multiply Additive`, `Hsv Modifier`, `Contrast`\n    - **Edge Color**: The color of the edge.\n    - **Edge Color Glow**: Set the shadow color to glow.\n- **Edge Shiny Width**: The width of the edge shiny.\n- **Edge Shiny Auto Play Speed**: The speed of the edge shiny (using shader side `_Time`).\n  - ⚠️ NOTE: This uses scaled time (affected by `Time.timeScale`). If you need unscaled time (useful for pause-resistant effects), use the [UIEffectTweener](#component-uieffecttweener) component instead.\n\n<br>\n\n#### Detail Filter\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744762332942.png)\n\n- **Detail Filter**: `None`, `Masking`, `Multiply`, `Additive`, `Subtractive`, `Replace`, `MuliplyAdditive`  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744826180386.png)\n- **Detail Intensity**: 0.0 (no effect) - 1.0 (full effect).\n- **Detail Color**: The color of the detail.\n- **Detail Threshold** (`Masking` only): The minimum and maximum alpha values used for masking. The larger the gap\n    between these values, the stronger the softness effect.\n- **Detail Tex**: The texture used for the transition filter.\n  - **Scale**, **Offset**, **Speed**, **Rotation**, **Keep Aspect Ratio**: Additional properties for the texture.\n  - ⚠️ NOTE: `Rotation` is shared with `Transition Filter` and `Detail Filter`.\n  - ⚠️ NOTE: `Keep Aspect Ratio` is shared with `Transition Filter` and `Gradation Mode` and `Detail Filter`.\n\n<br>\n\n#### Flip\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744762521061.png)\n\n- **Flip**: Combine the following flags.\n    - `Nothing`\n    - `Horizontal`\n    - `Vertical`\n    - `Effect`: Flip with the effect.\n    - `Shadow`: Flip with the shadow.  \n    ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-flip.png)\n\n<br>\n\n#### Others\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744762623263.png)\n\n- **Sampling Scale**: The referencing scale during sampling.\n    - Larger values are suitable for high-resolution textures.\n- **Allow To Modify Mesh Shape**: If enabled, the mesh shape can be modified.\n- **Custom Root**: Use the custom transform for some effects.\n\n> [!TIP]  \n> `Transition Filter`, `Gradation Filter`, and `Detail Filter` usually refer to their own `RectTransform` when applying effects.  \n> For example, if the mesh shape exceeds the `RectTransform` boundaries, the effect may not be applied correctly.  \n> By specifying `Custom Root`, you can refer to the specified transform.\n> ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-custom-root.gif)\n\n<br><br>\n\n### Component: UIEffectTweener\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744304918490.png)\n\nThe `UIEffectTweener` component animates the effect, enabling easy control over effect animations without the need for an `AnimationClip`.\n\n- **Culling Mask**: `Tone`, `Color`, `Sampling`, `Transition`, `GradiationOffset`, `GradiationRotation`, `EdgeShiny`, `Event`\n- **OnChangeRate** (`Event` only): A event that is triggered when the tweening rate changes.\n- **Direction**: `Forward (0.0 -> 1.0)`, `Reverse (1.0 -> 0.0)`\n- **Curve**: The curve of the animation.\n- **Separate Reverse Curve**: If enabled, `Reverse Curve` will be used for the reverse direction.\n- **Reverse Curve**: The curve of the reverse animation.\n- **Delay**: The delay time before starting the animation.\n- **Duration**: The duration of the animation.\n- **Interval**: The interval time between the animation.\n- **Play On Enable**: `None`, `Forward`, `Reverse`, `Keep Direction`\n   - Play the animation automatically when the component is enabled.\n   - If `None` is selected, the animation will not play automatically. You can play it using the `Play`, `PlayForward` or `PlayReverse`  method.\n- **Reset Time On Enable**: Reset the tweening time when the component is enabled.\n- **Wrap Mode**:\n   - `Once`: delay -> duration(0-1) -> onComplete\n   - `Loop`: delay -> duration(0-1) -> interval -> ...\n   - `PingPongOnce`: delay -> duration(0-1) -> interval -> duration(1-0) -> onComplete\n   - `PingPongLoop`: delay -> duration(0-1) -> interval -> duration(1-0) -> interval -> ...\n- **Update Mode**: `Normal`, `UnscaledTime`, `Manual`\n- **On Complete**: A event that is triggered when the animation is completed.\n\nYou can preview the animation using the seek bar and play button.\n\n<br><br>\n\n### Component: UIEffectReplica\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744308511445.png)\n\nThe `UIEffectReplica` component applies visual effects to UI elements by replicating the settings of another `UIEffect` component. This allows the same effect to be applied across multiple UI elements simultaneously.\n\n- **Target**: The target `UIEffect` component to replicate.\n> [!TIP]\n> You can specify a preset as well as an instance as the target for `UIEffectReplica`.\n- **Use Target Transform**: Use the target's transform for some effects.  \n  ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-sample-custom-root.gif)\n- **Custom Root**: Use the custom transform for some effects.\n- **Sampling Scale**: Override the sampling scale.\n- **Allow To Modify Mesh Shape**: If enabled, the mesh shape can be modified.\n\n<br><br>\n\n### Usage with TextMeshPro\n\nTo use UIEffect with TextMeshPro, you need to import additional resources.  \nWhen a shader included in the samples is requested, an import dialog will automatically appear.  \nClick the `Import` button.\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744304977486.png)\n\nAlternatively, you can manually import the resources by following these steps:\n\n1. First, you must import [TMP Essential Resources](https://docs.unity3d.com/Packages/com.unity.textmeshpro@3.0/manual/index.html#installation) before using.  \n   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744305000411.png)\n\n2. Open the `Package Manager` window and select the `UI Effect` package in the package list and click the `TextMeshPro Support > Import` button.  \n   ⚠️ If you are using `Unity 2023.2/6000.0+` or `TextMeshPro 3.2/4.0+`, click the `TextMeshPro Support (Unity 6) > Import` button instead.  \n\n3. The assets will be imported under `Assets/Samples/UI Effect/{version}`.\n\n4. Add the `UIEffect` component to a TextMeshProUGUI element and adjust the effect settings. The `<font>` and `<sprite>` tags are also supported.  \n   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744305022250.png)\n\n> [!TIP]\n> `TextMeshPro Support` may change with updates to the UIEffect package.  \n> If issues occur, try importing it again.\n\n> [!TIP]\n> If you have moved `TMPro_Properties.cginc` and `TMPro.cginc` from their default install path\n> (`Assets/TextMesh Pro/Shaders/...`), you will need to manually update the paths in the shaders under\n> `TextMeshPro Support` or `TextMeshPro Support (Unity 6)`.\n\n<br><br>\n\n### Usage with SoftMaskForUGUI\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744305036318.png)\n\n[SoftMaskForUGUI](https://github.com/mob-sakai/SoftMaskForUGUI) is a package that allows you to create soft masks for UI elements.\n\n`SoftMaskForUGUI (v3.3.0+)` supports `UIEffect (v5.7.0+)`.  \nWhen a shader included in the samples is requested, an import dialog will automatically appear.  \nClick the `Import` button.\n\n<br><br>\n\n### Usage with ShaderGraph\n\n⚠️ ShaderGraph support is available only in Unity 2023.2/6.0 or later.\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744307236288.png)\n\nTo use UIEffect with ShaderGraph, you need to import additional resources.\n\n1. Open the `Package Manager` window and select the `UI Effect` package in the package list and click the `ShaderGraph Support (Unity6, BuiltIn) > Import` button.  \n   ⚠️ If you are using Universal Render Pipeline (URP), click the `ShaderGraph Support (Unity6, URP) > Import` button.\n\n2. The assets will be imported under `Assets/Samples/UI Effect/{version}`.\n\n3. Change the sub target (Material) of the existing ShaderGraph file to `Canvas (UIEffect)`.  \n   Alternatively, create a new ShaderGraph from `Assets/Create/Shader Graph/BuiltIn/Canvas Shader Graph (UIEffect)`.\n\n> [!TIP]\n> Use `(UIEffect)` in the shader name or register as an optional shader in [ProjectSettings](#project-settings).\n\n<br><br>\n\n### Usage with Timeline\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1749028017092.png)\n\nTimeline is a powerful animation tool that can control UIEffect using `ControlTrack` and UIEffect tracks.\n\n- `Control Track`: One of the built-in tracks. When you assign a GameObject with `UIEffect`, `UIEffect` will be enabled during the clip duration.\n- `UIEffect Tracks`: Tracks for UIEffect. They control `float` or `Color` type properties.\n  - Supports blending, extrapolation, and tween.\n\n<br><br>\n\n### Usage with Custom Shader\n\nTo make your custom shader support UIEffect, it must satisfy the following requirements.\nRefer to the sections enclosed by `==== UIEFFECT START ===` and `==== UIEFFECT END ====` in the built-in `Hidden/UI/Default (UIEffect)` shader included in the package.\n\nhttps://github.com/mob-sakai/UIEffect/blob/main/Packages/src/Shaders/UIEffect.shader\n\n- Blend: `Blend [_SrcBlend] [_DstBlend]`\n- Shader variants: `#pragma shader_feature_local_fragment ***`\n- Vertex shader input structure: `float4 uvMask : TEXCOORD***;`\n- Vertex shader: `OUT.uvMask = v.uvMask;` and `OUT.worldPosition = v.vertex;`\n- Pixel shader input structure: `float4 uvMask : TEXCOORD***;` and `float4 worldPosition : TEXCOORD***;`\n- UIEffect micro pixel shader: a function that returns the color of the specified pixel and has the signature `half4 uieffect_frag(v2f IN, float2 uv)`.\n- Pixel shader input structure name definition: `#define UIEFFECT_FRAG_STRUCT v2f`\n- Include the UIEffect library: `#include \"Packages/com.coffee.ui-effect/Shaders/UIEffect.cginc\"`\n- Pixel shader: `half4 c = uieffect(IN.texcoord, IN.uvMask, IN.worldPosition, IN);`\n\n<br><br>\n\n### Runtime/Editor Preset for UIEffect\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/uieffect5.7.0-inspector-preset.png)\n\nYou can create and use presets for `UIEffect` components.\n\n- Click the `Load` button to apply an editor preset.\n- Click the `Append` button to load only non-default settings from the editor preset.\n- Click the `Save As New` button to save the current settings as an editor preset.\n- In the [Project Settings](#project-settings), you can register saved editor presets as runtime presets.\n- Runtime presets can be loaded using the `UIEffect.LoadPreset(presetName)` method.\n\n> [!TIP]\n> Editor presets are saved in the `UIEffectPresets` directory.\n> You can also create subdirectories to customize the preset menu.\n\n<br><br>\n\n### Usage with Code\n\nYou can control the effect settings and animations via code.\n\n```csharp\nvar effect = graphic.AddComponent<UIEffect>();\n\n// Apply a runtime preset\neffect.LoadPreset(\"Dissolve\");\n\n// Set the effect parameters\neffect.transitionWidth = 0.1f;\neffect.transitionColor = Color.red;\n\n// Add a tweener\nvar tweener = graphic.AddComponent<UIEffectTweener>();\ntweener.cullingMask = UICullingMask.Tone;\ntweener.wrapMode = UIWrapMode.PingPongLoop;\n\n// Warm up the shader variant collection.\nUIEffectProjectSettings.shaderVariantCollection.WarmUp();\n```\n\n<br><br>\n\n### Project Settings\n\n![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744799623192.png)\n\nYou can adjust the project-wide settings for UIEffect. (`Edit > Project Settings > UI > UIEffect`)\n\n#### Settings\n\n- **Runtime Presets**: A list of presets that can be loaded at runtime. Load them using `UIEffect.LoadPreset(presetName)` method.\n\n> [!IMPORTANT]  \n> - The legacy prefab-based preset system is deprecated as of v5.8.0.  \n> - If your project contains legacy presets, you can convert them to the new system.  \n>   - **Convert All Legacy Presets**: Creates new presets based on the legacy ones.  \n>     If the legacy presets are used as runtime presets, they will be replaced with the new ones.  \n>     You can load the new preset via the `UIEffect.LoadPreset` method.\n>   - **Delete All Legacy Presets**: Deletes all legacy presets. If any legacy presets are assigned to `UIEffectReplica.target`, those targets will also be removed.  \n>   ![](https://github.com/mob-sakai/mob-sakai/releases/download/docs/1744792792701.png)\n\n#### Editor\n\n- **Use HDR Color Picker**: If enabled, the HDR color picker will be used in the inspector.\n\n#### Shader\n\n- **Optional Shaders (UIEffect)**: A list of shaders that will be prioritized when a ui-effect shader is\n  requested.\n    - If the shader is included in the list, that shader will be used.\n    - If it is not in the list, the following shaders will be used in order:\n        - If the shader name contains `(UIEffect)`, that shader will be used.\n        - If `Hidden/<shader_name> (UIEffect)` exists, that shader will be used.\n        - As a fallback, `UI/Default (UIEffect)` will be used.\n- **Registered Variants**: A list of shader variants available at runtime. Use \"-\" button to remove unused variants,\n  reducing build time and file size.\n    - By default, the used ui-effect shaders will be included in the build. You can remove them if you don't need.\n- **Unregistered Variants**: A list of shader variants that are not registered. Use \"+\" button to add variants.\n- **Error On Unregistered Variant**: If enabled, an error will be displayed when an unregistered shader variant is used.\n    - The shader variant will be automatically added to the `Unregistered Variants` list.\n\n> [!IMPORTANT]\n> - The setting file is usually saved in `Assets/ProjectSettings/UIEffectProjectSettings.asset`. Include this file in your version control system.\n> - The setting file is automatically added as a preloaded asset in `ProjectSettings/ProjectSettings.asset`.\n\n#### Advanced\n\n- **Pre Load Settings In Build**: When enabled, this settings asset will be added to `PlayerSettings.preloadedAssets` in build.\n - When disable, you should load this settings via `Resources`, `AssetBundles` or `Addressables` to use `UIEffect`.\n - You can overwrite the settings by re-enabling `UIEffectProjectSettings`. This allows you to hot update shader variants and presets.\n\n```csharp\nprivate static IEnumerator HotUpdateCoroutine()\n{\n    const string k_SettingsAddress = \"Assets/ProjectSettings/UIEffectProjectSettings.asset\";\n    yield return Addressables.LoadAssetAsync<UIEffectProjectSettings>(k_SettingsAddress);\n    while (UIEffectProjectSettings.shaderVariantCollection.WarmUpProgressively(5) == false) yield return null;\n}\n```\n\n<br><br>\n\n### :warning: Limitations\n\nHere are the limitations of UIEffect:\n\n- Shader variants used at runtime must be registered in the [Project Settings](#project-settings).\n- When using UIEffect with TextMeshProUGUI, `SamplingFilter.BlurMedium` and `SamplingFilter.BlurDetail` are not supported due to performance considerations.\n  - These will automatically fall back to `SamplingFilter.BlurFast`.\n- UIEffect supports default UI components (`Image`, `RawImage`, `Text`) and `TextMeshProUGUI`.\n  - If you want to use UIEffect with other components, create a issue or pull request.\n\n<br><br>\n\n## 🤝 Contributing\n\n### Issues\n\nIssues are incredibly valuable to this project:\n\n- Ideas provide a valuable source of contributions that others can make.\n- Problems help identify areas where this project needs improvement.\n- Questions indicate where contributors can enhance the user experience.\n\n### Pull Requests\n\nPull requests offer a fantastic way to contribute your ideas to this repository.  \nPlease refer to [CONTRIBUTING.md](https://github.com/mob-sakai/UIEffect/tree/main/CONTRIBUTING.md)\nand use [develop branch](https://github.com/mob-sakai/UIEffect/tree/develop) for development.\n\n### Support\n\nThis is an open-source project developed during my spare time.  \nIf you appreciate it, consider supporting me.  \nYour support allows me to dedicate more time to development. 😊\n\n[![](https://user-images.githubusercontent.com/12690315/66942881-03686280-f085-11e9-9586-fc0b6011029f.png)](https://github.com/users/mob-sakai/sponsorship)  \n[![](https://user-images.githubusercontent.com/12690315/50731629-3b18b480-11ad-11e9-8fad-4b13f27969c1.png)](https://www.patreon.com/join/2343451?)\n\n<br><br>\n\n## License\n\n* MIT\n\n## Author\n\n* ![](https://user-images.githubusercontent.com/12690315/96986908-434a0b80-155d-11eb-8275-85138ab90afa.png) [mob-sakai](https://github.com/mob-sakai) [![](https://img.shields.io/twitter/follow/mob_sakai.svg?label=Follow&style=social)](https://twitter.com/intent/follow?screen_name=mob_sakai) ![GitHub followers](https://img.shields.io/github/followers/mob-sakai?style=social)\n\n## See Also\n\n* GitHub page : https://github.com/mob-sakai/UIEffect\n* Releases : https://github.com/mob-sakai/UIEffect/releases\n* Issue tracker : https://github.com/mob-sakai/UIEffect/issues\n* Change log : https://github.com/mob-sakai/UIEffect/blob/main/Packages/src/CHANGELOG.md\n</yakaai_skills>"}