├── Assets ├── ShinyEffectForUGUI │ ├── README.md │ ├── CHANGELOG.md │ ├── LICENSE.txt │ ├── Demo │ │ ├── blue.png │ │ ├── red.png │ │ ├── green.png │ │ ├── yellow.png │ │ ├── Light_Frame.png │ │ ├── Unity-chan.png │ │ ├── Shiny.controller.meta │ │ ├── Demo - ShinyEffectForUGUI.unity.meta │ │ ├── Demo_ShinyEffectForUGUI_inspector.controller.meta │ │ ├── Demo_ShinyEffectForUGUI.cs.meta │ │ ├── Demo_ShinyEffectForUGUI.cs │ │ ├── Unity-chan.png.meta │ │ ├── Light_Frame.png.meta │ │ ├── red.png.meta │ │ ├── blue.png.meta │ │ ├── green.png.meta │ │ ├── yellow.png.meta │ │ ├── Shiny.controller │ │ └── Demo_ShinyEffectForUGUI_inspector.controller │ ├── README.md.meta │ ├── CHANGELOG.md.meta │ ├── LICENSE.txt.meta │ ├── UI-Effect-Shiny.mat.meta │ ├── Demo.meta │ ├── UI-Effect-Shiny.shader.meta │ ├── ShinyEffectForUGUI.cs.meta │ ├── UI-Effect-Shiny.shader │ ├── UI-Effect-Shiny.mat │ └── ShinyEffectForUGUI.cs ├── Demo - UIEffect.unity.meta └── ShinyEffectForUGUI.meta ├── ProjectSettings ├── ProjectVersion.txt ├── ClusterInputManager.asset ├── NetworkManager.asset ├── TimeManager.asset ├── EditorBuildSettings.asset ├── AudioManager.asset ├── EditorSettings.asset ├── TagManager.asset ├── DynamicsManager.asset ├── UnityConnectSettings.asset ├── NavMeshAreas.asset ├── Physics2DSettings.asset ├── GraphicsSettings.asset ├── QualitySettings.asset ├── InputManager.asset └── ProjectSettings.asset ├── .github_changelog_generator ├── package.json ├── .gitignore ├── .github └── FUNDING.yml ├── LICENSE.txt ├── CHANGELOG.md ├── release.sh └── README.md /Assets/ShinyEffectForUGUI/README.md: -------------------------------------------------------------------------------- 1 | ../../README.md -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | ../../CHANGELOG.md -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/LICENSE.txt: -------------------------------------------------------------------------------- 1 | ./../../LICENSE.txt -------------------------------------------------------------------------------- /ProjectSettings/ProjectVersion.txt: -------------------------------------------------------------------------------- 1 | m_EditorVersion: 5.5.0p4 2 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/Demo/blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mob-sakai/ShinyEffectForUGUI/HEAD/Assets/ShinyEffectForUGUI/Demo/blue.png -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/Demo/red.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mob-sakai/ShinyEffectForUGUI/HEAD/Assets/ShinyEffectForUGUI/Demo/red.png -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/Demo/green.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mob-sakai/ShinyEffectForUGUI/HEAD/Assets/ShinyEffectForUGUI/Demo/green.png -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/Demo/yellow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mob-sakai/ShinyEffectForUGUI/HEAD/Assets/ShinyEffectForUGUI/Demo/yellow.png -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/Demo/Light_Frame.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mob-sakai/ShinyEffectForUGUI/HEAD/Assets/ShinyEffectForUGUI/Demo/Light_Frame.png -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/Demo/Unity-chan.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mob-sakai/ShinyEffectForUGUI/HEAD/Assets/ShinyEffectForUGUI/Demo/Unity-chan.png -------------------------------------------------------------------------------- /ProjectSettings/ClusterInputManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!236 &1 4 | ClusterInputManager: 5 | m_ObjectHideFlags: 0 6 | m_Inputs: [] 7 | -------------------------------------------------------------------------------- /ProjectSettings/NetworkManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!149 &1 4 | NetworkManager: 5 | m_ObjectHideFlags: 0 6 | m_DebugLevel: 0 7 | m_Sendrate: 15 8 | m_AssetToPrefab: {} 9 | -------------------------------------------------------------------------------- /Assets/Demo - UIEffect.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 564f4d201debc41cd8f41e5b6541ac2c 3 | timeCreated: 1527135330 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ddc08462bf3e14c82929e462ff7823e7 3 | timeCreated: 1502939317 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/CHANGELOG.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1fe75f65a37454bf5aa2dab183b4305a 3 | timeCreated: 1522651812 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/LICENSE.txt.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5c8ea34522dd786479be28b1347542b7 3 | timeCreated: 1515125149 4 | licenseType: Free 5 | TextScriptImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/Demo/Shiny.controller.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e129a7bccac914fc0b15dab3c2395cd3 3 | timeCreated: 1488199687 4 | licenseType: Pro 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/UI-Effect-Shiny.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2d37c4afca8784ce9ab899810e29aa9c 3 | timeCreated: 1522919125 4 | licenseType: Pro 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 96837540e9d9b4d199c332f11ef9047a 3 | folderAsset: yes 4 | timeCreated: 1487124681 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/Demo.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ffab53058751f4155925f66ab787ed95 3 | folderAsset: yes 4 | timeCreated: 1488188301 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/Demo/Demo - ShinyEffectForUGUI.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 67e572a00c48842ae88b291d09d41b72 3 | timeCreated: 1488188288 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /.github_changelog_generator: -------------------------------------------------------------------------------- 1 | user=mob-sakai 2 | project=ShinyEffectForUGUI 3 | issues-wo-labels=false 4 | pr-wo-labels=false 5 | exclude_labels=duplicate,question,invalid,wontfix,Duplicate,Question,Invalid,Wontfix,Meta: Exclude From Changelog,unreleased 6 | unreleased=false 7 | -------------------------------------------------------------------------------- /ProjectSettings/TimeManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!5 &1 4 | TimeManager: 5 | m_ObjectHideFlags: 0 6 | Fixed Timestep: 0.02 7 | Maximum Allowed Timestep: 0.33333334 8 | m_TimeScale: 1 9 | Maximum Particle Timestep: 0.03 10 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/Demo/Demo_ShinyEffectForUGUI_inspector.controller.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b97f0400535604d71be7eaaebd2fa4da 3 | timeCreated: 1488199687 4 | licenseType: Pro 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ShinyEffectForUGUI", 3 | "version": "0.4.0", 4 | "repository": { 5 | "type": "git", 6 | "url": "git+https://github.com/mob-sakai/ShinyEffectForUGUI.git" 7 | }, 8 | "src": "Assets/ShinyEffectForUGUI", 9 | "license": "MIT" 10 | } 11 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/UI-Effect-Shiny.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 73cd3247d1e984561a84a1269a5942a3 3 | timeCreated: 1482973535 4 | licenseType: Pro 5 | ShaderImporter: 6 | defaultTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ProjectSettings/EditorBuildSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1045 &1 4 | EditorBuildSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Scenes: 8 | - enabled: 1 9 | path: Assets/ShinyEffectForUGUI/Demo/Demo - ShinyEffectForUGUI.unity 10 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/ShinyEffectForUGUI.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 62e4947d070cf41eb87bc6a9968c32a5 3 | timeCreated: 1485321967 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/Demo/Demo_ShinyEffectForUGUI.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fd492cae74f924733a26c1e4418bf502 3 | timeCreated: 1523274479 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/Demo/Demo_ShinyEffectForUGUI.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using UnityEngine.UI; 5 | 6 | namespace Coffee.UIExtensions 7 | { 8 | public class Demo_ShinyEffectForUGUI : MonoBehaviour 9 | { 10 | [SerializeField] RectMask2D mask; 11 | 12 | void Start() 13 | { 14 | mask.enabled = true; 15 | } 16 | } 17 | } -------------------------------------------------------------------------------- /ProjectSettings/AudioManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!11 &1 4 | AudioManager: 5 | m_ObjectHideFlags: 0 6 | m_Volume: 1 7 | Rolloff Scale: 1 8 | Doppler Factor: 1 9 | Default Speaker Mode: 2 10 | m_SampleRate: 0 11 | m_DSPBufferSize: 0 12 | m_VirtualVoiceCount: 512 13 | m_RealVoiceCount: 32 14 | m_SpatializerPlugin: 15 | m_DisableAudio: 0 16 | m_VirtualizeEffects: 1 17 | -------------------------------------------------------------------------------- /ProjectSettings/EditorSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!159 &1 4 | EditorSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 3 7 | m_ExternalVersionControlSupport: Visible Meta Files 8 | m_SerializationMode: 2 9 | m_DefaultBehaviorMode: 0 10 | m_SpritePackerMode: 2 11 | m_SpritePackerPaddingPower: 1 12 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd 13 | m_ProjectGenerationRootNamespace: 14 | m_UserGeneratedProjectSuffix: 15 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | [Ll]ibrary/ 2 | [Tt]emp/ 3 | [Oo]bj/ 4 | [Bb]uild/ 5 | /[Bb]uilds/ 6 | /Assets/AssetStoreTools* 7 | 8 | # Autogenerated VS/MD solution and project files 9 | ExportedObj/ 10 | *.csproj 11 | *.unityproj 12 | *.sln 13 | *.suo 14 | *.tmp 15 | *.user 16 | *.userprefs 17 | *.pidb 18 | *.booproj 19 | *.svd 20 | 21 | 22 | # Unity3D generated meta files 23 | *.pidb.meta 24 | 25 | # Unity3D Generated File On Crash Reports 26 | sysinfo.txt 27 | 28 | # Mac 29 | *.DS_Store 30 | 31 | # Builds 32 | *.apk 33 | 34 | 35 | # Packages 36 | *.unitypackage -------------------------------------------------------------------------------- /ProjectSettings/TagManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!78 &1 4 | TagManager: 5 | serializedVersion: 2 6 | tags: [] 7 | layers: 8 | - Default 9 | - TransparentFX 10 | - Ignore Raycast 11 | - 12 | - Water 13 | - UI 14 | - 15 | - 16 | - 17 | - 18 | - 19 | - 20 | - 21 | - 22 | - 23 | - 24 | - 25 | - 26 | - 27 | - 28 | - 29 | - 30 | - 31 | - 32 | - 33 | - 34 | - 35 | - 36 | - 37 | - 38 | - 39 | - 40 | m_SortingLayers: 41 | - name: Default 42 | uniqueID: 0 43 | locked: 0 44 | -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: # [mob-sakai] 4 | patreon: mob_sakai 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with a single custom sponsorship URL 13 | -------------------------------------------------------------------------------- /ProjectSettings/DynamicsManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!55 &1 4 | PhysicsManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 3 7 | m_Gravity: {x: 0, y: -9.81, z: 0} 8 | m_DefaultMaterial: {fileID: 0} 9 | m_BounceThreshold: 2 10 | m_SleepThreshold: 0.005 11 | m_DefaultContactOffset: 0.01 12 | m_DefaultSolverIterations: 6 13 | m_DefaultSolverVelocityIterations: 1 14 | m_QueriesHitBackfaces: 0 15 | m_QueriesHitTriggers: 1 16 | m_EnableAdaptiveForce: 0 17 | m_EnablePCM: 1 18 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 19 | -------------------------------------------------------------------------------- /ProjectSettings/UnityConnectSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!310 &1 4 | UnityConnectSettings: 5 | m_ObjectHideFlags: 0 6 | m_Enabled: 0 7 | m_TestMode: 0 8 | m_TestEventUrl: 9 | m_TestConfigUrl: 10 | CrashReportingSettings: 11 | m_EventUrl: https://perf-events.cloud.unity3d.com/api/events/crashes 12 | m_Enabled: 0 13 | m_CaptureEditorExceptions: 1 14 | UnityPurchasingSettings: 15 | m_Enabled: 0 16 | m_TestMode: 0 17 | UnityAnalyticsSettings: 18 | m_Enabled: 0 19 | m_InitializeOnStartup: 1 20 | m_TestMode: 0 21 | m_TestEventUrl: 22 | m_TestConfigUrl: 23 | UnityAdsSettings: 24 | m_Enabled: 0 25 | m_InitializeOnStartup: 1 26 | m_TestMode: 0 27 | m_EnabledPlatforms: 4294967295 28 | m_IosGameId: 29 | m_AndroidGameId: 30 | -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright 2018 mob-sakai 2 | 3 | Permission 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: 4 | 5 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 6 | 7 | THE 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. -------------------------------------------------------------------------------- /ProjectSettings/NavMeshAreas.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!126 &1 4 | NavMeshProjectSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | areas: 8 | - name: Walkable 9 | cost: 1 10 | - name: Not Walkable 11 | cost: 1 12 | - name: Jump 13 | cost: 2 14 | - name: 15 | cost: 1 16 | - name: 17 | cost: 1 18 | - name: 19 | cost: 1 20 | - name: 21 | cost: 1 22 | - name: 23 | cost: 1 24 | - name: 25 | cost: 1 26 | - name: 27 | cost: 1 28 | - name: 29 | cost: 1 30 | - name: 31 | cost: 1 32 | - name: 33 | cost: 1 34 | - name: 35 | cost: 1 36 | - name: 37 | cost: 1 38 | - name: 39 | cost: 1 40 | - name: 41 | cost: 1 42 | - name: 43 | cost: 1 44 | - name: 45 | cost: 1 46 | - name: 47 | cost: 1 48 | - name: 49 | cost: 1 50 | - name: 51 | cost: 1 52 | - name: 53 | cost: 1 54 | - name: 55 | cost: 1 56 | - name: 57 | cost: 1 58 | - name: 59 | cost: 1 60 | - name: 61 | cost: 1 62 | - name: 63 | cost: 1 64 | - name: 65 | cost: 1 66 | - name: 67 | cost: 1 68 | - name: 69 | cost: 1 70 | - name: 71 | cost: 1 72 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/Demo/Unity-chan.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 925f66fdcc9764b579413b7408c718f2 3 | timeCreated: 1488188399 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 0 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 0 33 | aniso: 16 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 1 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | textureType: 8 50 | buildTargetSettings: [] 51 | spriteSheet: 52 | sprites: [] 53 | outline: [] 54 | spritePackingTag: 55 | userData: 56 | assetBundleName: 57 | assetBundleVariant: 58 | -------------------------------------------------------------------------------- /ProjectSettings/Physics2DSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!19 &1 4 | Physics2DSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Gravity: {x: 0, y: -9.81} 8 | m_DefaultMaterial: {fileID: 0} 9 | m_VelocityIterations: 8 10 | m_PositionIterations: 3 11 | m_VelocityThreshold: 1 12 | m_MaxLinearCorrection: 0.2 13 | m_MaxAngularCorrection: 8 14 | m_MaxTranslationSpeed: 100 15 | m_MaxRotationSpeed: 360 16 | m_MinPenetrationForPenalty: 0.01 17 | m_BaumgarteScale: 0.2 18 | m_BaumgarteTimeOfImpactScale: 0.75 19 | m_TimeToSleep: 0.5 20 | m_LinearSleepTolerance: 0.01 21 | m_AngularSleepTolerance: 2 22 | m_QueriesHitTriggers: 1 23 | m_QueriesStartInColliders: 1 24 | m_ChangeStopsCallbacks: 0 25 | m_AlwaysShowColliders: 0 26 | m_ShowColliderSleep: 1 27 | m_ShowColliderContacts: 0 28 | m_ShowColliderAABB: 0 29 | m_ContactArrowScale: 0.2 30 | m_ColliderAwakeColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.7529412} 31 | m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432} 32 | m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745} 33 | m_ColliderAABBColor: {r: 1, g: 1, b: 0, a: 0.2509804} 34 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 35 | -------------------------------------------------------------------------------- /ProjectSettings/GraphicsSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!30 &1 4 | GraphicsSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 9 7 | m_Deferred: 8 | m_Mode: 1 9 | m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0} 10 | m_DeferredReflections: 11 | m_Mode: 1 12 | m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0} 13 | m_ScreenSpaceShadows: 14 | m_Mode: 1 15 | m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0} 16 | m_LegacyDeferred: 17 | m_Mode: 1 18 | m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0} 19 | m_DepthNormals: 20 | m_Mode: 1 21 | m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0} 22 | m_MotionVectors: 23 | m_Mode: 1 24 | m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0} 25 | m_LightHalo: 26 | m_Mode: 1 27 | m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0} 28 | m_LensFlare: 29 | m_Mode: 1 30 | m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0} 31 | m_AlwaysIncludedShaders: 32 | - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0} 33 | - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0} 34 | - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0} 35 | - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0} 36 | - {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0} 37 | - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0} 38 | - {fileID: 10782, guid: 0000000000000000f000000000000000, type: 0} 39 | m_PreloadedShaders: [] 40 | m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, 41 | type: 0} 42 | m_TierSettings_Tier1: 43 | renderingPath: 1 44 | useCascadedShadowMaps: 1 45 | m_TierSettings_Tier2: 46 | renderingPath: 1 47 | useCascadedShadowMaps: 1 48 | m_TierSettings_Tier3: 49 | renderingPath: 1 50 | useCascadedShadowMaps: 1 51 | m_DefaultRenderingPath: 1 52 | m_DefaultMobileRenderingPath: 1 53 | m_TierSettings: [] 54 | m_LightmapStripping: 0 55 | m_FogStripping: 0 56 | m_LightmapKeepPlain: 1 57 | m_LightmapKeepDirCombined: 1 58 | m_LightmapKeepDirSeparate: 1 59 | m_LightmapKeepDynamicPlain: 1 60 | m_LightmapKeepDynamicDirCombined: 1 61 | m_LightmapKeepDynamicDirSeparate: 1 62 | m_FogKeepLinear: 1 63 | m_FogKeepExp: 1 64 | m_FogKeepExp2: 1 65 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/Demo/Light_Frame.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 077b84be6d052c34d933c79ef500be13 3 | timeCreated: 1472624687 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 4 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | sRGBTexture: 1 12 | linearTexture: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 6 25 | cubemapConvolution: 0 26 | seamlessCubemap: 0 27 | textureFormat: -1 28 | maxTextureSize: 2048 29 | textureSettings: 30 | filterMode: -1 31 | aniso: -1 32 | mipBias: -1 33 | wrapMode: 1 34 | nPOTScale: 0 35 | lightmap: 0 36 | compressionQuality: 50 37 | spriteMode: 1 38 | spriteExtrude: 1 39 | spriteMeshType: 1 40 | alignment: 0 41 | spritePivot: {x: 0.5, y: 0.5} 42 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 43 | spritePixelsToUnits: 100 44 | alphaUsage: 1 45 | alphaIsTransparency: 1 46 | spriteTessellationDetail: -1 47 | textureType: 8 48 | textureShape: 1 49 | maxTextureSizeSet: 0 50 | compressionQualitySet: 0 51 | textureFormatSet: 0 52 | platformSettings: 53 | - buildTarget: DefaultTexturePlatform 54 | maxTextureSize: 2048 55 | textureFormat: -1 56 | textureCompression: 1 57 | compressionQuality: 50 58 | crunchedCompression: 0 59 | allowsAlphaSplitting: 0 60 | overridden: 0 61 | - buildTarget: Standalone 62 | maxTextureSize: 2048 63 | textureFormat: -1 64 | textureCompression: 1 65 | compressionQuality: 50 66 | crunchedCompression: 0 67 | allowsAlphaSplitting: 0 68 | overridden: 0 69 | - buildTarget: iPhone 70 | maxTextureSize: 2048 71 | textureFormat: -1 72 | textureCompression: 1 73 | compressionQuality: 50 74 | crunchedCompression: 0 75 | allowsAlphaSplitting: 0 76 | overridden: 0 77 | - buildTarget: Android 78 | maxTextureSize: 2048 79 | textureFormat: -1 80 | textureCompression: 1 81 | compressionQuality: 50 82 | crunchedCompression: 0 83 | allowsAlphaSplitting: 0 84 | overridden: 0 85 | - buildTarget: WebGL 86 | maxTextureSize: 2048 87 | textureFormat: -1 88 | textureCompression: 1 89 | compressionQuality: 50 90 | crunchedCompression: 0 91 | allowsAlphaSplitting: 0 92 | overridden: 0 93 | spriteSheet: 94 | serializedVersion: 2 95 | sprites: [] 96 | outline: [] 97 | spritePackingTag: 98 | userData: 99 | assetBundleName: 100 | assetBundleVariant: 101 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/Demo/red.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6789beb7377034038b701aa05106933d 3 | timeCreated: 1523277470 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 4 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | sRGBTexture: 1 12 | linearTexture: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 6 25 | cubemapConvolution: 0 26 | seamlessCubemap: 0 27 | textureFormat: 1 28 | maxTextureSize: 2048 29 | textureSettings: 30 | filterMode: -1 31 | aniso: -1 32 | mipBias: -1 33 | wrapMode: 1 34 | nPOTScale: 0 35 | lightmap: 0 36 | compressionQuality: 50 37 | spriteMode: 1 38 | spriteExtrude: 1 39 | spriteMeshType: 1 40 | alignment: 0 41 | spritePivot: {x: 0.5, y: 0.5} 42 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 43 | spritePixelsToUnits: 100 44 | alphaUsage: 1 45 | alphaIsTransparency: 1 46 | spriteTessellationDetail: -1 47 | textureType: 8 48 | textureShape: 1 49 | maxTextureSizeSet: 0 50 | compressionQualitySet: 0 51 | textureFormatSet: 0 52 | platformSettings: 53 | - buildTarget: DefaultTexturePlatform 54 | maxTextureSize: 2048 55 | textureFormat: -1 56 | textureCompression: 1 57 | compressionQuality: 50 58 | crunchedCompression: 0 59 | allowsAlphaSplitting: 0 60 | overridden: 0 61 | - buildTarget: Standalone 62 | maxTextureSize: 2048 63 | textureFormat: -1 64 | textureCompression: 1 65 | compressionQuality: 50 66 | crunchedCompression: 0 67 | allowsAlphaSplitting: 0 68 | overridden: 0 69 | - buildTarget: iPhone 70 | maxTextureSize: 2048 71 | textureFormat: -1 72 | textureCompression: 1 73 | compressionQuality: 50 74 | crunchedCompression: 0 75 | allowsAlphaSplitting: 0 76 | overridden: 0 77 | - buildTarget: Android 78 | maxTextureSize: 2048 79 | textureFormat: -1 80 | textureCompression: 1 81 | compressionQuality: 50 82 | crunchedCompression: 0 83 | allowsAlphaSplitting: 0 84 | overridden: 0 85 | - buildTarget: WebGL 86 | maxTextureSize: 2048 87 | textureFormat: -1 88 | textureCompression: 1 89 | compressionQuality: 50 90 | crunchedCompression: 0 91 | allowsAlphaSplitting: 0 92 | overridden: 0 93 | spriteSheet: 94 | serializedVersion: 2 95 | sprites: [] 96 | outline: [] 97 | spritePackingTag: Demo_ShinyEffectForUGUI 98 | userData: 99 | assetBundleName: 100 | assetBundleVariant: 101 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/Demo/blue.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e3026fd11e810463185dd5ba01e6d309 3 | timeCreated: 1527137553 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 4 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | sRGBTexture: 1 12 | linearTexture: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 6 25 | cubemapConvolution: 0 26 | seamlessCubemap: 0 27 | textureFormat: 1 28 | maxTextureSize: 2048 29 | textureSettings: 30 | filterMode: -1 31 | aniso: -1 32 | mipBias: -1 33 | wrapMode: 1 34 | nPOTScale: 0 35 | lightmap: 0 36 | compressionQuality: 50 37 | spriteMode: 1 38 | spriteExtrude: 1 39 | spriteMeshType: 1 40 | alignment: 0 41 | spritePivot: {x: 0.5, y: 0.5} 42 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 43 | spritePixelsToUnits: 100 44 | alphaUsage: 1 45 | alphaIsTransparency: 1 46 | spriteTessellationDetail: -1 47 | textureType: 8 48 | textureShape: 1 49 | maxTextureSizeSet: 0 50 | compressionQualitySet: 0 51 | textureFormatSet: 0 52 | platformSettings: 53 | - buildTarget: DefaultTexturePlatform 54 | maxTextureSize: 2048 55 | textureFormat: -1 56 | textureCompression: 1 57 | compressionQuality: 50 58 | crunchedCompression: 0 59 | allowsAlphaSplitting: 0 60 | overridden: 0 61 | - buildTarget: Standalone 62 | maxTextureSize: 2048 63 | textureFormat: -1 64 | textureCompression: 1 65 | compressionQuality: 50 66 | crunchedCompression: 0 67 | allowsAlphaSplitting: 0 68 | overridden: 0 69 | - buildTarget: iPhone 70 | maxTextureSize: 2048 71 | textureFormat: -1 72 | textureCompression: 1 73 | compressionQuality: 50 74 | crunchedCompression: 0 75 | allowsAlphaSplitting: 0 76 | overridden: 0 77 | - buildTarget: Android 78 | maxTextureSize: 2048 79 | textureFormat: -1 80 | textureCompression: 1 81 | compressionQuality: 50 82 | crunchedCompression: 0 83 | allowsAlphaSplitting: 0 84 | overridden: 0 85 | - buildTarget: WebGL 86 | maxTextureSize: 2048 87 | textureFormat: -1 88 | textureCompression: 1 89 | compressionQuality: 50 90 | crunchedCompression: 0 91 | allowsAlphaSplitting: 0 92 | overridden: 0 93 | spriteSheet: 94 | serializedVersion: 2 95 | sprites: [] 96 | outline: [] 97 | spritePackingTag: Demo_ShinyEffectForUGUI 98 | userData: 99 | assetBundleName: 100 | assetBundleVariant: 101 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/Demo/green.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ef88fe74e45f74a93b40c304ec3627bf 3 | timeCreated: 1527137554 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 4 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | sRGBTexture: 1 12 | linearTexture: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 6 25 | cubemapConvolution: 0 26 | seamlessCubemap: 0 27 | textureFormat: 1 28 | maxTextureSize: 2048 29 | textureSettings: 30 | filterMode: -1 31 | aniso: -1 32 | mipBias: -1 33 | wrapMode: 1 34 | nPOTScale: 0 35 | lightmap: 0 36 | compressionQuality: 50 37 | spriteMode: 1 38 | spriteExtrude: 1 39 | spriteMeshType: 1 40 | alignment: 0 41 | spritePivot: {x: 0.5, y: 0.5} 42 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 43 | spritePixelsToUnits: 100 44 | alphaUsage: 1 45 | alphaIsTransparency: 1 46 | spriteTessellationDetail: -1 47 | textureType: 8 48 | textureShape: 1 49 | maxTextureSizeSet: 0 50 | compressionQualitySet: 0 51 | textureFormatSet: 0 52 | platformSettings: 53 | - buildTarget: DefaultTexturePlatform 54 | maxTextureSize: 2048 55 | textureFormat: -1 56 | textureCompression: 1 57 | compressionQuality: 50 58 | crunchedCompression: 0 59 | allowsAlphaSplitting: 0 60 | overridden: 0 61 | - buildTarget: Standalone 62 | maxTextureSize: 2048 63 | textureFormat: -1 64 | textureCompression: 1 65 | compressionQuality: 50 66 | crunchedCompression: 0 67 | allowsAlphaSplitting: 0 68 | overridden: 0 69 | - buildTarget: iPhone 70 | maxTextureSize: 2048 71 | textureFormat: -1 72 | textureCompression: 1 73 | compressionQuality: 50 74 | crunchedCompression: 0 75 | allowsAlphaSplitting: 0 76 | overridden: 0 77 | - buildTarget: Android 78 | maxTextureSize: 2048 79 | textureFormat: -1 80 | textureCompression: 1 81 | compressionQuality: 50 82 | crunchedCompression: 0 83 | allowsAlphaSplitting: 0 84 | overridden: 0 85 | - buildTarget: WebGL 86 | maxTextureSize: 2048 87 | textureFormat: -1 88 | textureCompression: 1 89 | compressionQuality: 50 90 | crunchedCompression: 0 91 | allowsAlphaSplitting: 0 92 | overridden: 0 93 | spriteSheet: 94 | serializedVersion: 2 95 | sprites: [] 96 | outline: [] 97 | spritePackingTag: Demo_ShinyEffectForUGUI 98 | userData: 99 | assetBundleName: 100 | assetBundleVariant: 101 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/Demo/yellow.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 34301f3d739254e7e88e197523961894 3 | timeCreated: 1527137553 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 4 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | sRGBTexture: 1 12 | linearTexture: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 6 25 | cubemapConvolution: 0 26 | seamlessCubemap: 0 27 | textureFormat: 1 28 | maxTextureSize: 2048 29 | textureSettings: 30 | filterMode: -1 31 | aniso: -1 32 | mipBias: -1 33 | wrapMode: 1 34 | nPOTScale: 0 35 | lightmap: 0 36 | compressionQuality: 50 37 | spriteMode: 1 38 | spriteExtrude: 1 39 | spriteMeshType: 1 40 | alignment: 0 41 | spritePivot: {x: 0.5, y: 0.5} 42 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 43 | spritePixelsToUnits: 100 44 | alphaUsage: 1 45 | alphaIsTransparency: 1 46 | spriteTessellationDetail: -1 47 | textureType: 8 48 | textureShape: 1 49 | maxTextureSizeSet: 0 50 | compressionQualitySet: 0 51 | textureFormatSet: 0 52 | platformSettings: 53 | - buildTarget: DefaultTexturePlatform 54 | maxTextureSize: 2048 55 | textureFormat: -1 56 | textureCompression: 1 57 | compressionQuality: 50 58 | crunchedCompression: 0 59 | allowsAlphaSplitting: 0 60 | overridden: 0 61 | - buildTarget: Standalone 62 | maxTextureSize: 2048 63 | textureFormat: -1 64 | textureCompression: 1 65 | compressionQuality: 50 66 | crunchedCompression: 0 67 | allowsAlphaSplitting: 0 68 | overridden: 0 69 | - buildTarget: iPhone 70 | maxTextureSize: 2048 71 | textureFormat: -1 72 | textureCompression: 1 73 | compressionQuality: 50 74 | crunchedCompression: 0 75 | allowsAlphaSplitting: 0 76 | overridden: 0 77 | - buildTarget: Android 78 | maxTextureSize: 2048 79 | textureFormat: -1 80 | textureCompression: 1 81 | compressionQuality: 50 82 | crunchedCompression: 0 83 | allowsAlphaSplitting: 0 84 | overridden: 0 85 | - buildTarget: WebGL 86 | maxTextureSize: 2048 87 | textureFormat: -1 88 | textureCompression: 1 89 | compressionQuality: 50 90 | crunchedCompression: 0 91 | allowsAlphaSplitting: 0 92 | overridden: 0 93 | spriteSheet: 94 | serializedVersion: 2 95 | sprites: [] 96 | outline: [] 97 | spritePackingTag: Demo_ShinyEffectForUGUI 98 | userData: 99 | assetBundleName: 100 | assetBundleVariant: 101 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | ## [v0.4.0](https://github.com/mob-sakai/ShinyEffectForUGUI/tree/v0.4.0) (2018-05-24) 4 | 5 | [Full Changelog](https://github.com/mob-sakai/ShinyEffectForUGUI/compare/v0.3.1...v0.4.0) 6 | 7 | Visual quality of the effect has been improved greatly! 8 | Of course, the effect does not use other images such as normal map :) 9 | ![image](https://user-images.githubusercontent.com/12690315/40473559-7416b086-5f77-11e8-97e4-d0de6137ea28.gif) 10 | 11 | **Implemented enhancements:** 12 | 13 | - Play effect from script [\#19](https://github.com/mob-sakai/ShinyEffectForUGUI/issues/19) 14 | - Improve Visual quality [\#16](https://github.com/mob-sakai/ShinyEffectForUGUI/issues/16) 15 | - Add softness parameter [\#14](https://github.com/mob-sakai/ShinyEffectForUGUI/issues/14) 16 | - Improve precision of location parameter [\#12](https://github.com/mob-sakai/ShinyEffectForUGUI/issues/12) 17 | 18 | **Fixed bugs:** 19 | 20 | - Width of the effect should be ranged \[0-1\], not \[0-2\] [\#15](https://github.com/mob-sakai/ShinyEffectForUGUI/issues/15) 21 | - `graphic.color.a` decrease the brightness of shiny effect [\#13](https://github.com/mob-sakai/ShinyEffectForUGUI/issues/13) 22 | 23 | **Closed issues:** 24 | 25 | - Use 'brightness' instead of 'alpha' [\#17](https://github.com/mob-sakai/ShinyEffectForUGUI/issues/17) 26 | 27 | ## [v0.3.1](https://github.com/mob-sakai/ShinyEffectForUGUI/tree/v0.3.1) (2018-05-23) 28 | 29 | [Full Changelog](https://github.com/mob-sakai/ShinyEffectForUGUI/compare/v0.3.0...v0.3.1) 30 | 31 | **Implemented enhancements:** 32 | 33 | - Update readme & demo [\#10](https://github.com/mob-sakai/ShinyEffectForUGUI/issues/10) 34 | 35 | **Fixed bugs:** 36 | 37 | - Compile error has ocurred in build [\#11](https://github.com/mob-sakai/ShinyEffectForUGUI/issues/11) 38 | 39 | ## [v0.3.0](https://github.com/mob-sakai/ShinyEffectForUGUI/tree/v0.3.0) (2018-04-09) 40 | 41 | [Full Changelog](https://github.com/mob-sakai/ShinyEffectForUGUI/compare/v0.2.0...v0.3.0) 42 | 43 | **Fixed bugs:** 44 | 45 | - Bug: Material is not set automatically [\#7](https://github.com/mob-sakai/ShinyEffectForUGUI/issues/7) 46 | 47 | ## [v0.2.0](https://github.com/mob-sakai/ShinyEffectForUGUI/tree/v0.2.0) (2018-04-09) 48 | 49 | [Full Changelog](https://github.com/mob-sakai/ShinyEffectForUGUI/compare/v0.1.0...v0.2.0) 50 | 51 | **Fixed bugs:** 52 | 53 | - Bug: Clipping is disabled. [\#5](https://github.com/mob-sakai/ShinyEffectForUGUI/issues/5) 54 | 55 | ## [v0.1.0](https://github.com/mob-sakai/ShinyEffectForUGUI/tree/v0.1.0) (2018-04-09) 56 | 57 | [Full Changelog](https://github.com/mob-sakai/ShinyEffectForUGUI/compare/3aa9ebbad004f7a812c93133f90336b06ffd034f...v0.1.0) 58 | 59 | **Implemented enhancements:** 60 | 61 | - Doc: Add Development note [\#3](https://github.com/mob-sakai/ShinyEffectForUGUI/issues/3) 62 | - Demo: Add demo [\#2](https://github.com/mob-sakai/ShinyEffectForUGUI/issues/2) 63 | - Feature: Shiny effect without mask [\#1](https://github.com/mob-sakai/ShinyEffectForUGUI/issues/1) 64 | 65 | 66 | 67 | \* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/skywinder/Github-Changelog-Generator)* -------------------------------------------------------------------------------- /release.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash -e 2 | 3 | # NOTE: Set an environment variable `CHANGELOG_GITHUB_TOKEN` by running the following command at the prompt, or by adding it to your shell profile (e.g., ~/.bash_profile or ~/.zshrc): 4 | # export CHANGELOG_GITHUB_TOKEN="«your-40-digit-github-token»" 5 | 6 | # Release the project with the following steps: 7 | # 1. Update the release version in package.json. 8 | # 2. Update "CHANGELOG.md" using "github_changelog_generator-1.15.0.pre.rc". 9 | # 3. Commit package.json and CHANGELOG.md. 10 | # 4. Merge into master branch. 11 | # 5. Export unitypackage. 12 | # 6. Release using "gh-release-3.2.0". (Upload unitypackage) 13 | 14 | 15 | # input release version 16 | echo -e "\n>> Start Github Release:" 17 | PACKAGE_NAME=`node -pe 'require("./package.json").name'` 18 | echo -e ">> Package name: ${PACKAGE_NAME}" 19 | CURRENT_VERSION=`grep -o -e "\"version\".*$" package.json | sed -e "s/\"version\": \"\(.*\)\".*$/\1/"` 20 | read -p "[? release version (for current: ${CURRENT_VERSION}): " RELEASE_VERSION 21 | [ -z "$RELEASE_VERSION" ] && exit 22 | 23 | 24 | # update version in package.json 25 | echo -e "\n>> Update version... package.json" 26 | git checkout -B release develop 27 | sed -i -e "s/\"version\": \(.*\)/\"version\": \"${RELEASE_VERSION}\",/g" package.json 28 | 29 | 30 | # check unity editor 31 | UNITY_VER=`sed -e "s/m_EditorVersion: \(.*\)/\1/g" ProjectSettings/ProjectVersion.txt` 32 | UNITY_EDITOR="/Applications/Unity/Hub/Editor/${UNITY_VER}/Unity.app/Contents/MacOS/Unity" 33 | echo -e "\n>> Check unity editor... ${UNITY_VER} (${UNITY_EDITOR})" 34 | "$UNITY_EDITOR" -quit -batchmode -projectPath "`pwd`" 35 | echo -e ">> OK" 36 | 37 | # generate change log 38 | CHANGELOG_GENERATOR_ARG=`grep -o -e ".*git\"$" package.json | sed -e "s/^.*\/\([^\/]*\)\/\([^\/]*\).git.*$/--user \1 --project \2/"` 39 | echo -e "\n>> Generate change log... ${CHANGELOG_GENERATOR_ARG}" 40 | TAG=v$RELEASE_VERSION 41 | git tag $TAG 42 | git push --tags 43 | github_changelog_generator ${CHANGELOG_GENERATOR_ARG} 44 | git tag -d $TAG 45 | git push --delete origin $TAG 46 | 47 | git diff -- CHANGELOG.md 48 | read -p "[? is the change log correct? (y/N):" yn 49 | case "$yn" in [yY]*) ;; *) exit ;; esac 50 | 51 | 52 | # commit release files 53 | echo -e "\n>> Commit release files..." 54 | git add CHANGELOG.md -f 55 | git add package.json -f 56 | git commit -m "update change log" 57 | 58 | 59 | # merge and push 60 | echo -e "\n>> Merge and push..." 61 | git checkout master 62 | git merge --no-ff release -m "release $TAG" 63 | git branch -D release 64 | git push origin master 65 | git checkout develop 66 | git merge --ff master 67 | git push origin develop 68 | 69 | 70 | # export unitypackage 71 | PACKAGE_SRC=`node -pe 'require("./package.json").src'` 72 | echo -e "\n>> Export unitypackage... ${PACKAGE_SRC}" 73 | "$UNITY_EDITOR" -quit -batchmode -projectPath "`pwd`" -exportpackage "$PACKAGE_SRC" "$PACKAGE_NAME.unitypackage" 74 | echo -e ">> OK" 75 | 76 | 77 | # upload unitypackage and release on Github 78 | gh-release --assets "$PACKAGE_NAME.unitypackage" 79 | 80 | 81 | echo -e "\n\n>> $PACKAGE_NAME v$RELEASE_VERSION has been successfully released!\n" 82 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/UI-Effect-Shiny.shader: -------------------------------------------------------------------------------- 1 | Shader "UI/Hidden/UI-Effect-Shiny" 2 | { 3 | Properties 4 | { 5 | [PerRendererData] _MainTex ("Main Texture", 2D) = "white" {} 6 | _Color ("Tint", Color) = (1,1,1,1) 7 | 8 | _StencilComp ("Stencil Comparison", Float) = 8 9 | _Stencil ("Stencil ID", Float) = 0 10 | _StencilOp ("Stencil Operation", Float) = 0 11 | _StencilWriteMask ("Stencil Write Mask", Float) = 255 12 | _StencilReadMask ("Stencil Read Mask", Float) = 255 13 | 14 | _ColorMask ("Color Mask", Float) = 15 15 | 16 | [Toggle(UNITY_UI_ALPHACLIP)] _UseUIAlphaClip ("Use Alpha Clip", Float) = 0 17 | } 18 | 19 | SubShader 20 | { 21 | Tags 22 | { 23 | "Queue"="Transparent" 24 | "IgnoreProjector"="True" 25 | "RenderType"="Transparent" 26 | "PreviewType"="Plane" 27 | "CanUseSpriteAtlas"="True" 28 | } 29 | 30 | Stencil 31 | { 32 | Ref [_Stencil] 33 | Comp [_StencilComp] 34 | Pass [_StencilOp] 35 | ReadMask [_StencilReadMask] 36 | WriteMask [_StencilWriteMask] 37 | } 38 | 39 | Cull Off 40 | Lighting Off 41 | ZWrite Off 42 | ZTest [unity_GUIZTestMode] 43 | Blend SrcAlpha OneMinusSrcAlpha 44 | ColorMask [_ColorMask] 45 | 46 | Pass 47 | { 48 | Name "Default" 49 | 50 | CGPROGRAM 51 | #pragma vertex vert 52 | #pragma fragment frag 53 | #pragma target 2.0 54 | 55 | #pragma multi_compile __ UNITY_UI_ALPHACLIP 56 | 57 | #include "UnityCG.cginc" 58 | #include "UnityUI.cginc" 59 | 60 | struct appdata_t 61 | { 62 | float4 vertex : POSITION; 63 | float4 color : COLOR; 64 | float2 texcoord : TEXCOORD0; 65 | UNITY_VERTEX_INPUT_INSTANCE_ID 66 | 67 | float2 uv1 : TEXCOORD1; 68 | }; 69 | 70 | struct v2f 71 | { 72 | float4 vertex : SV_POSITION; 73 | fixed4 color : COLOR; 74 | float2 texcoord : TEXCOORD0; 75 | float4 worldPosition : TEXCOORD1; 76 | UNITY_VERTEX_OUTPUT_STEREO 77 | 78 | half4 effectFactor : TEXCOORD2; 79 | half2 effectFactor2 : TEXCOORD3; 80 | }; 81 | 82 | fixed4 _Color; 83 | fixed4 _TextureSampleAdd; 84 | float4 _ClipRect; 85 | sampler2D _MainTex; 86 | float4 _MainTex_TexelSize; 87 | 88 | fixed4 UnpackToVec4(float value) 89 | { 90 | const int PACKER_STEP = 64; 91 | const int PRECISION = PACKER_STEP - 1; 92 | fixed4 color; 93 | 94 | color.r = (value % PACKER_STEP) / PRECISION; 95 | value = floor(value / PACKER_STEP); 96 | 97 | color.g = (value % PACKER_STEP) / PRECISION; 98 | value = floor(value / PACKER_STEP); 99 | 100 | color.b = (value % PACKER_STEP) / PRECISION; 101 | value = floor(value / PACKER_STEP); 102 | 103 | color.a = (value % PACKER_STEP) / PRECISION; 104 | return color; 105 | } 106 | 107 | half2 UnpackToVec2(float value) 108 | { 109 | const int PACKER_STEP = 4096; 110 | const int PRECISION = PACKER_STEP - 1; 111 | fixed4 color; 112 | 113 | color.x = (value % PACKER_STEP) / PRECISION; 114 | value = floor(value / PACKER_STEP); 115 | 116 | color.y = (value % PACKER_STEP) / PRECISION; 117 | return color; 118 | } 119 | 120 | v2f vert(appdata_t IN) 121 | { 122 | v2f OUT; 123 | UNITY_SETUP_INSTANCE_ID(IN); 124 | UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(OUT); 125 | OUT.worldPosition = IN.vertex; 126 | 127 | OUT.vertex = UnityObjectToClipPos(IN.vertex); 128 | 129 | OUT.texcoord = IN.texcoord; 130 | 131 | OUT.color = IN.color * _Color; 132 | 133 | OUT.effectFactor = UnpackToVec4(IN.uv1.x); 134 | OUT.effectFactor2 = UnpackToVec2(IN.uv1.y); 135 | 136 | OUT.effectFactor2.x = OUT.effectFactor2.x * 2 - 0.5; 137 | return OUT; 138 | } 139 | 140 | fixed4 frag(v2f IN) : SV_Target 141 | { 142 | half4 color = (tex2D(_MainTex, IN.texcoord) + _TextureSampleAdd); 143 | fixed4 originAlpha = color.a; 144 | color *= IN.color; 145 | color.a *= UnityGet2DClipping(IN.worldPosition.xy, _ClipRect); 146 | 147 | #ifdef UNITY_UI_ALPHACLIP 148 | clip (color.a - 0.001); 149 | #endif 150 | 151 | half pos = IN.effectFactor.x - IN.effectFactor2.x; 152 | 153 | half normalized = 1 - saturate(abs(pos / IN.effectFactor.z)); 154 | half shinePower = smoothstep(0, IN.effectFactor.y*2, normalized); 155 | half3 reflectColor = lerp(1, color.rgb * 10, IN.effectFactor2.y); 156 | 157 | color.rgb += originAlpha * (shinePower / 2) * IN.effectFactor.w * reflectColor; 158 | return color; 159 | } 160 | 161 | 162 | ENDCG 163 | } 164 | } 165 | } 166 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/UI-Effect-Shiny.mat: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!21 &2100000 4 | Material: 5 | serializedVersion: 6 6 | m_ObjectHideFlags: 0 7 | m_PrefabParentObject: {fileID: 0} 8 | m_PrefabInternal: {fileID: 0} 9 | m_Name: UI-Effect-Shiny 10 | m_Shader: {fileID: 4800000, guid: 73cd3247d1e984561a84a1269a5942a3, type: 3} 11 | m_ShaderKeywords: _EMISSION 12 | m_LightmapFlags: 1 13 | m_CustomRenderQueue: -1 14 | stringTagMap: {} 15 | m_SavedProperties: 16 | serializedVersion: 2 17 | m_TexEnvs: 18 | - first: 19 | name: _BumpMap 20 | second: 21 | m_Texture: {fileID: 0} 22 | m_Scale: {x: 1, y: 1} 23 | m_Offset: {x: 0, y: 0} 24 | - first: 25 | name: _DetailAlbedoMap 26 | second: 27 | m_Texture: {fileID: 0} 28 | m_Scale: {x: 1, y: 1} 29 | m_Offset: {x: 0, y: 0} 30 | - first: 31 | name: _DetailMask 32 | second: 33 | m_Texture: {fileID: 0} 34 | m_Scale: {x: 1, y: 1} 35 | m_Offset: {x: 0, y: 0} 36 | - first: 37 | name: _DetailNormalMap 38 | second: 39 | m_Texture: {fileID: 0} 40 | m_Scale: {x: 1, y: 1} 41 | m_Offset: {x: 0, y: 0} 42 | - first: 43 | name: _EmissionMap 44 | second: 45 | m_Texture: {fileID: 0} 46 | m_Scale: {x: 1, y: 1} 47 | m_Offset: {x: 0, y: 0} 48 | - first: 49 | name: _MainTex 50 | second: 51 | m_Texture: {fileID: 0} 52 | m_Scale: {x: 1, y: 1} 53 | m_Offset: {x: 0, y: 0} 54 | - first: 55 | name: _MetallicGlossMap 56 | second: 57 | m_Texture: {fileID: 0} 58 | m_Scale: {x: 1, y: 1} 59 | m_Offset: {x: 0, y: 0} 60 | - first: 61 | name: _OcclusionMap 62 | second: 63 | m_Texture: {fileID: 0} 64 | m_Scale: {x: 1, y: 1} 65 | m_Offset: {x: 0, y: 0} 66 | - first: 67 | name: _ParallaxMap 68 | second: 69 | m_Texture: {fileID: 0} 70 | m_Scale: {x: 1, y: 1} 71 | m_Offset: {x: 0, y: 0} 72 | m_Floats: 73 | - first: 74 | name: _BumpScale 75 | second: 1 76 | - first: 77 | name: _ColorMask 78 | second: 15 79 | - first: 80 | name: _Cutoff 81 | second: 0.5 82 | - first: 83 | name: _DetailNormalMapScale 84 | second: 1 85 | - first: 86 | name: _DstBlend 87 | second: 0 88 | - first: 89 | name: _GlossMapScale 90 | second: 1 91 | - first: 92 | name: _Glossiness 93 | second: 0.5 94 | - first: 95 | name: _GlossyReflections 96 | second: 1 97 | - first: 98 | name: _Metallic 99 | second: 0 100 | - first: 101 | name: _Mode 102 | second: 0 103 | - first: 104 | name: _OcclusionStrength 105 | second: 1 106 | - first: 107 | name: _Parallax 108 | second: 0.02 109 | - first: 110 | name: _ShineLocation 111 | second: 0.03 112 | - first: 113 | name: _ShineWidth 114 | second: 0.612 115 | - first: 116 | name: _SmoothnessTextureChannel 117 | second: 0 118 | - first: 119 | name: _SpecularHighlights 120 | second: 1 121 | - first: 122 | name: _SrcBlend 123 | second: 1 124 | - first: 125 | name: _Stencil 126 | second: 0 127 | - first: 128 | name: _StencilComp 129 | second: 8 130 | - first: 131 | name: _StencilOp 132 | second: 0 133 | - first: 134 | name: _StencilReadMask 135 | second: 255 136 | - first: 137 | name: _StencilWriteMask 138 | second: 255 139 | - first: 140 | name: _UVSec 141 | second: 0 142 | - first: 143 | name: _UseUIAlphaClip 144 | second: 0 145 | - first: 146 | name: _ZWrite 147 | second: 1 148 | - first: 149 | name: _alpha 150 | second: 0.4 151 | - first: 152 | name: _angle 153 | second: 180 154 | - first: 155 | name: _factor 156 | second: 16.2 157 | - first: 158 | name: _width 159 | second: 9969.5 160 | m_Colors: 161 | - first: 162 | name: _Color 163 | second: {r: 1, g: 1, b: 1, a: 1} 164 | - first: 165 | name: _EmissionColor 166 | second: {r: 0, g: 0, b: 0, a: 1} 167 | - first: 168 | name: _effectcolor 169 | second: {r: 0.14812386, g: 0, b: 0.9338235, a: 0.441} 170 | - first: 171 | name: _size 172 | second: {r: 112, g: 317, b: 100, a: 1000} 173 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ShinyEffectForUGUI 2 | === 3 | 4 | ### NOTE: This project has been integrated into [UIEffect](https://github.com/mob-sakai/UIEffect), so we are NOT continuing development in this repository. 5 | 6 | Shiny effect of uGUI, which does not need mask or normal map. 7 | Since useless draw calls are suppressed, performance is good! 8 | 9 | ![image](https://user-images.githubusercontent.com/12690315/40470027-4335bbf6-5f6d-11e8-8b8f-a130654d67db.png) 10 | 11 | [![](https://img.shields.io/github/release/mob-sakai/ShinyEffectForUGUI.svg?label=latest%20version)](https://github.com/mob-sakai/ShinyEffectForUGUI/release) 12 | [![](https://img.shields.io/github/release-date/mob-sakai/ShinyEffectForUGUI.svg)](https://github.com/mob-sakai/ShinyEffectForUGUI/releases) 13 | ![](https://img.shields.io/badge/requirement-Unity%205.5%2B-green.svg) 14 | [![](https://img.shields.io/github/license/mob-sakai/ShinyEffectForUGUI.svg)](https://github.com/mob-sakai/ShinyEffectForUGUI/blob/master/LICENSE.txt) 15 | [![](https://img.shields.io/github/last-commit/mob-sakai/ShinyEffectForUGUI/develop.svg?label=last%20commit)](https://github.com/mob-sakai/ShinyEffectForUGUI/commits/develop) 16 | [![](https://img.shields.io/github/issues/mob-sakai/ShinyEffectForUGUI.svg)](https://github.com/mob-sakai/ShinyEffectForUGUI/issues) 17 | [![](https://img.shields.io/github/commits-since/mob-sakai/ShinyEffectForUGUI/latest.svg)](https://github.com/mob-sakai/ShinyEffectForUGUI/compare/master...develop) 18 | 19 | 20 | << [Description](#Description) | [Demo](#demo) | [Download](https://github.com/mob-sakai/ShinyEffectForUGUI/releases) | [Usage](#usage) | [Development Note](#development-note) | [Change log](https://github.com/mob-sakai/ShinyEffectForUGUI/blob/develop/CHANGELOG.md) >> 21 | 22 | 23 | 24 |



25 | ## Description 26 | 27 | ShinyEffectForUGUI applies _shiny-effect_ to uGUI element (Image, RawImage, Text, etc...) **WITHOUT Mask component** . 28 | This will suppress extra draw calls and improve performance. 29 | 30 | ![compare](https://user-images.githubusercontent.com/12690315/40418786-39ad8b04-5ebe-11e8-91b9-2246a3d08a8c.gif) 31 | 32 | * With-mask method 33 | * For example: ShineEffect from [unity-ui-extensions](https://bitbucket.org/UnityUIExtensions/unity-ui-extensions) 34 | * 3 GameObject: Graphic + Mask + ShineEffect (masked) 35 | * ![image](https://user-images.githubusercontent.com/12690315/38498601-ec56963e-3c3f-11e8-9eb4-4723389032f2.png) 36 | * At least 3 draw calls(1:Stencil on, 2:Draw graphic, 3:Stensil off), **FOR EACH** ui elements with shiny effect 37 | * **Artifacts on the edges!** 38 | 39 | * **Proposal:** Without-mask method 40 | * shader applies shiny effect 41 | * 1 draw dall 42 | * Will be batched as possible 43 | 44 |

45 | ##### Features 46 | 47 | * No Mask component 48 | * Easy to control in inspector 49 | ![inspector](https://user-images.githubusercontent.com/12690315/40481130-65978b02-5f8b-11e8-90f3-02cf73107c4b.gif) 50 | * Supports AnimationClip 51 | * Will be batched as possible 52 | * Play effect from script (v0.4.0) 53 | * `ShinyEffectForUGUI.Play(duration, updateMode)` 54 | ![button](https://user-images.githubusercontent.com/12690315/40482409-a97b1a56-5f8f-11e8-819d-e75a40fd4fc5.gif) 55 | * Improve Visual quality (v0.4.0) 56 | ![image](https://user-images.githubusercontent.com/12690315/40473559-7416b086-5f77-11e8-97e4-d0de6137ea28.gif) 57 | * The effect does not use other images such as normal map. 58 | 59 | 60 | 61 |



62 | ## Demo 63 | 64 | ![demo](https://user-images.githubusercontent.com/12690315/40488848-a6e8bbe6-5fa2-11e8-9a3e-0e3e57eb2385.gif) 65 | 66 | [WebGL Demo](http://mob-sakai.github.io/ShinyEffectForUGUI/) 67 | 68 | 69 | 70 |



71 | ## Usage 72 | 73 | 1. Download ShinyEffectForUGUI.unitypackage from [Releases](https://github.com/mob-sakai/ShinyEffectForUGUI/releases). 74 | 1. Import the package into your Unity project. Select `Import Package > Custom Package` from the `Assets` menu. 75 | 1. Add `ShinyEffectForUGUI` component to UI element (Image, RawImage, Text, etc...) from `Add Component` in inspector. 76 | 1. Choose effect type and adjust values in inspector. 77 | 1. Enjoy! 78 | 79 | 80 | ##### Requirement 81 | 82 | * Unity 5.5+ *(included Unity 2017.x)* 83 | * No other SDK are required 84 | 85 | 86 | 87 |



88 | ## Development Note 89 | 90 | #### What's doing? 91 | 92 | * Control effect parameters for uGUI element WITHOUT MaterialPropertyBlock 93 | * https://github.com/mob-sakai/UIEffect#how-to-control-effect-parameters-for-ugui-element-without-materialpropertyblock 94 | * Directivity normalization 95 | * Likely `Vector2.Product()` 96 | * Linear shiny effect 97 | 98 | 99 | 100 |



101 | ## License 102 | 103 | * MIT 104 | * © UTJ/UCL 105 | 106 | 107 | 108 | ## Author 109 | 110 | [mob-sakai](https://github.com/mob-sakai) 111 | 112 | 113 | 114 | ## See Also 115 | 116 | * GitHub page : https://github.com/mob-sakai/ShinyEffectForUGUI 117 | * Releases : https://github.com/mob-sakai/ShinyEffectForUGUI/releases 118 | * Issue tracker : https://github.com/mob-sakai/ShinyEffectForUGUI/issues 119 | * Current project : https://github.com/mob-sakai/ShinyEffectForUGUI/projects/1 120 | * Change log : https://github.com/mob-sakai/ShinyEffectForUGUI/blob/master/CHANGELOG.md 121 | -------------------------------------------------------------------------------- /ProjectSettings/QualitySettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!47 &1 4 | QualitySettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 5 7 | m_CurrentQuality: 5 8 | m_QualitySettings: 9 | - serializedVersion: 2 10 | name: Fastest 11 | pixelLightCount: 0 12 | shadows: 0 13 | shadowResolution: 0 14 | shadowProjection: 1 15 | shadowCascades: 1 16 | shadowDistance: 15 17 | shadowNearPlaneOffset: 3 18 | shadowCascade2Split: 0.33333334 19 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 20 | blendWeights: 1 21 | textureQuality: 1 22 | anisotropicTextures: 0 23 | antiAliasing: 0 24 | softParticles: 0 25 | softVegetation: 0 26 | realtimeReflectionProbes: 0 27 | billboardsFaceCameraPosition: 0 28 | vSyncCount: 0 29 | lodBias: 0.3 30 | maximumLODLevel: 0 31 | particleRaycastBudget: 4 32 | asyncUploadTimeSlice: 2 33 | asyncUploadBufferSize: 4 34 | excludedTargetPlatforms: [] 35 | - serializedVersion: 2 36 | name: Fast 37 | pixelLightCount: 0 38 | shadows: 0 39 | shadowResolution: 0 40 | shadowProjection: 1 41 | shadowCascades: 1 42 | shadowDistance: 20 43 | shadowNearPlaneOffset: 3 44 | shadowCascade2Split: 0.33333334 45 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 46 | blendWeights: 2 47 | textureQuality: 0 48 | anisotropicTextures: 0 49 | antiAliasing: 0 50 | softParticles: 0 51 | softVegetation: 0 52 | realtimeReflectionProbes: 0 53 | billboardsFaceCameraPosition: 0 54 | vSyncCount: 0 55 | lodBias: 0.4 56 | maximumLODLevel: 0 57 | particleRaycastBudget: 16 58 | asyncUploadTimeSlice: 2 59 | asyncUploadBufferSize: 4 60 | excludedTargetPlatforms: [] 61 | - serializedVersion: 2 62 | name: Simple 63 | pixelLightCount: 1 64 | shadows: 1 65 | shadowResolution: 0 66 | shadowProjection: 1 67 | shadowCascades: 1 68 | shadowDistance: 20 69 | shadowNearPlaneOffset: 3 70 | shadowCascade2Split: 0.33333334 71 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 72 | blendWeights: 2 73 | textureQuality: 0 74 | anisotropicTextures: 1 75 | antiAliasing: 0 76 | softParticles: 0 77 | softVegetation: 0 78 | realtimeReflectionProbes: 0 79 | billboardsFaceCameraPosition: 0 80 | vSyncCount: 1 81 | lodBias: 0.7 82 | maximumLODLevel: 0 83 | particleRaycastBudget: 64 84 | asyncUploadTimeSlice: 2 85 | asyncUploadBufferSize: 4 86 | excludedTargetPlatforms: [] 87 | - serializedVersion: 2 88 | name: Good 89 | pixelLightCount: 2 90 | shadows: 2 91 | shadowResolution: 1 92 | shadowProjection: 1 93 | shadowCascades: 2 94 | shadowDistance: 40 95 | shadowNearPlaneOffset: 3 96 | shadowCascade2Split: 0.33333334 97 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 98 | blendWeights: 2 99 | textureQuality: 0 100 | anisotropicTextures: 1 101 | antiAliasing: 0 102 | softParticles: 0 103 | softVegetation: 1 104 | realtimeReflectionProbes: 1 105 | billboardsFaceCameraPosition: 1 106 | vSyncCount: 1 107 | lodBias: 1 108 | maximumLODLevel: 0 109 | particleRaycastBudget: 256 110 | asyncUploadTimeSlice: 2 111 | asyncUploadBufferSize: 4 112 | excludedTargetPlatforms: [] 113 | - serializedVersion: 2 114 | name: Beautiful 115 | pixelLightCount: 3 116 | shadows: 2 117 | shadowResolution: 2 118 | shadowProjection: 1 119 | shadowCascades: 2 120 | shadowDistance: 70 121 | shadowNearPlaneOffset: 3 122 | shadowCascade2Split: 0.33333334 123 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 124 | blendWeights: 4 125 | textureQuality: 0 126 | anisotropicTextures: 2 127 | antiAliasing: 2 128 | softParticles: 1 129 | softVegetation: 1 130 | realtimeReflectionProbes: 1 131 | billboardsFaceCameraPosition: 1 132 | vSyncCount: 1 133 | lodBias: 1.5 134 | maximumLODLevel: 0 135 | particleRaycastBudget: 1024 136 | asyncUploadTimeSlice: 2 137 | asyncUploadBufferSize: 4 138 | excludedTargetPlatforms: [] 139 | - serializedVersion: 2 140 | name: Fantastic 141 | pixelLightCount: 4 142 | shadows: 2 143 | shadowResolution: 2 144 | shadowProjection: 1 145 | shadowCascades: 4 146 | shadowDistance: 150 147 | shadowNearPlaneOffset: 3 148 | shadowCascade2Split: 0.33333334 149 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} 150 | blendWeights: 4 151 | textureQuality: 0 152 | anisotropicTextures: 2 153 | antiAliasing: 2 154 | softParticles: 1 155 | softVegetation: 1 156 | realtimeReflectionProbes: 1 157 | billboardsFaceCameraPosition: 1 158 | vSyncCount: 1 159 | lodBias: 2 160 | maximumLODLevel: 0 161 | particleRaycastBudget: 4096 162 | asyncUploadTimeSlice: 2 163 | asyncUploadBufferSize: 4 164 | excludedTargetPlatforms: [] 165 | m_PerPlatformDefaultQuality: 166 | Android: 2 167 | Nintendo 3DS: 5 168 | PS4: 5 169 | PSM: 5 170 | PSP2: 2 171 | Samsung TV: 2 172 | Standalone: 5 173 | Tizen: 2 174 | Web: 5 175 | WebGL: 3 176 | WiiU: 5 177 | Windows Store Apps: 5 178 | XboxOne: 5 179 | iPhone: 2 180 | tvOS: 5 181 | -------------------------------------------------------------------------------- /ProjectSettings/InputManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!13 &1 4 | InputManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Axes: 8 | - serializedVersion: 3 9 | m_Name: Horizontal 10 | descriptiveName: 11 | descriptiveNegativeName: 12 | negativeButton: left 13 | positiveButton: right 14 | altNegativeButton: a 15 | altPositiveButton: d 16 | gravity: 3 17 | dead: 0.001 18 | sensitivity: 3 19 | snap: 1 20 | invert: 0 21 | type: 0 22 | axis: 0 23 | joyNum: 0 24 | - serializedVersion: 3 25 | m_Name: Vertical 26 | descriptiveName: 27 | descriptiveNegativeName: 28 | negativeButton: down 29 | positiveButton: up 30 | altNegativeButton: s 31 | altPositiveButton: w 32 | gravity: 3 33 | dead: 0.001 34 | sensitivity: 3 35 | snap: 1 36 | invert: 0 37 | type: 0 38 | axis: 0 39 | joyNum: 0 40 | - serializedVersion: 3 41 | m_Name: Fire1 42 | descriptiveName: 43 | descriptiveNegativeName: 44 | negativeButton: 45 | positiveButton: left ctrl 46 | altNegativeButton: 47 | altPositiveButton: mouse 0 48 | gravity: 1000 49 | dead: 0.001 50 | sensitivity: 1000 51 | snap: 0 52 | invert: 0 53 | type: 0 54 | axis: 0 55 | joyNum: 0 56 | - serializedVersion: 3 57 | m_Name: Fire2 58 | descriptiveName: 59 | descriptiveNegativeName: 60 | negativeButton: 61 | positiveButton: left alt 62 | altNegativeButton: 63 | altPositiveButton: mouse 1 64 | gravity: 1000 65 | dead: 0.001 66 | sensitivity: 1000 67 | snap: 0 68 | invert: 0 69 | type: 0 70 | axis: 0 71 | joyNum: 0 72 | - serializedVersion: 3 73 | m_Name: Fire3 74 | descriptiveName: 75 | descriptiveNegativeName: 76 | negativeButton: 77 | positiveButton: left shift 78 | altNegativeButton: 79 | altPositiveButton: mouse 2 80 | gravity: 1000 81 | dead: 0.001 82 | sensitivity: 1000 83 | snap: 0 84 | invert: 0 85 | type: 0 86 | axis: 0 87 | joyNum: 0 88 | - serializedVersion: 3 89 | m_Name: Jump 90 | descriptiveName: 91 | descriptiveNegativeName: 92 | negativeButton: 93 | positiveButton: space 94 | altNegativeButton: 95 | altPositiveButton: 96 | gravity: 1000 97 | dead: 0.001 98 | sensitivity: 1000 99 | snap: 0 100 | invert: 0 101 | type: 0 102 | axis: 0 103 | joyNum: 0 104 | - serializedVersion: 3 105 | m_Name: Mouse X 106 | descriptiveName: 107 | descriptiveNegativeName: 108 | negativeButton: 109 | positiveButton: 110 | altNegativeButton: 111 | altPositiveButton: 112 | gravity: 0 113 | dead: 0 114 | sensitivity: 0.1 115 | snap: 0 116 | invert: 0 117 | type: 1 118 | axis: 0 119 | joyNum: 0 120 | - serializedVersion: 3 121 | m_Name: Mouse Y 122 | descriptiveName: 123 | descriptiveNegativeName: 124 | negativeButton: 125 | positiveButton: 126 | altNegativeButton: 127 | altPositiveButton: 128 | gravity: 0 129 | dead: 0 130 | sensitivity: 0.1 131 | snap: 0 132 | invert: 0 133 | type: 1 134 | axis: 1 135 | joyNum: 0 136 | - serializedVersion: 3 137 | m_Name: Mouse ScrollWheel 138 | descriptiveName: 139 | descriptiveNegativeName: 140 | negativeButton: 141 | positiveButton: 142 | altNegativeButton: 143 | altPositiveButton: 144 | gravity: 0 145 | dead: 0 146 | sensitivity: 0.1 147 | snap: 0 148 | invert: 0 149 | type: 1 150 | axis: 2 151 | joyNum: 0 152 | - serializedVersion: 3 153 | m_Name: Horizontal 154 | descriptiveName: 155 | descriptiveNegativeName: 156 | negativeButton: 157 | positiveButton: 158 | altNegativeButton: 159 | altPositiveButton: 160 | gravity: 0 161 | dead: 0.19 162 | sensitivity: 1 163 | snap: 0 164 | invert: 0 165 | type: 2 166 | axis: 0 167 | joyNum: 0 168 | - serializedVersion: 3 169 | m_Name: Vertical 170 | descriptiveName: 171 | descriptiveNegativeName: 172 | negativeButton: 173 | positiveButton: 174 | altNegativeButton: 175 | altPositiveButton: 176 | gravity: 0 177 | dead: 0.19 178 | sensitivity: 1 179 | snap: 0 180 | invert: 1 181 | type: 2 182 | axis: 1 183 | joyNum: 0 184 | - serializedVersion: 3 185 | m_Name: Fire1 186 | descriptiveName: 187 | descriptiveNegativeName: 188 | negativeButton: 189 | positiveButton: joystick button 0 190 | altNegativeButton: 191 | altPositiveButton: 192 | gravity: 1000 193 | dead: 0.001 194 | sensitivity: 1000 195 | snap: 0 196 | invert: 0 197 | type: 0 198 | axis: 0 199 | joyNum: 0 200 | - serializedVersion: 3 201 | m_Name: Fire2 202 | descriptiveName: 203 | descriptiveNegativeName: 204 | negativeButton: 205 | positiveButton: joystick button 1 206 | altNegativeButton: 207 | altPositiveButton: 208 | gravity: 1000 209 | dead: 0.001 210 | sensitivity: 1000 211 | snap: 0 212 | invert: 0 213 | type: 0 214 | axis: 0 215 | joyNum: 0 216 | - serializedVersion: 3 217 | m_Name: Fire3 218 | descriptiveName: 219 | descriptiveNegativeName: 220 | negativeButton: 221 | positiveButton: joystick button 2 222 | altNegativeButton: 223 | altPositiveButton: 224 | gravity: 1000 225 | dead: 0.001 226 | sensitivity: 1000 227 | snap: 0 228 | invert: 0 229 | type: 0 230 | axis: 0 231 | joyNum: 0 232 | - serializedVersion: 3 233 | m_Name: Jump 234 | descriptiveName: 235 | descriptiveNegativeName: 236 | negativeButton: 237 | positiveButton: joystick button 3 238 | altNegativeButton: 239 | altPositiveButton: 240 | gravity: 1000 241 | dead: 0.001 242 | sensitivity: 1000 243 | snap: 0 244 | invert: 0 245 | type: 0 246 | axis: 0 247 | joyNum: 0 248 | - serializedVersion: 3 249 | m_Name: Submit 250 | descriptiveName: 251 | descriptiveNegativeName: 252 | negativeButton: 253 | positiveButton: return 254 | altNegativeButton: 255 | altPositiveButton: joystick button 0 256 | gravity: 1000 257 | dead: 0.001 258 | sensitivity: 1000 259 | snap: 0 260 | invert: 0 261 | type: 0 262 | axis: 0 263 | joyNum: 0 264 | - serializedVersion: 3 265 | m_Name: Submit 266 | descriptiveName: 267 | descriptiveNegativeName: 268 | negativeButton: 269 | positiveButton: enter 270 | altNegativeButton: 271 | altPositiveButton: space 272 | gravity: 1000 273 | dead: 0.001 274 | sensitivity: 1000 275 | snap: 0 276 | invert: 0 277 | type: 0 278 | axis: 0 279 | joyNum: 0 280 | - serializedVersion: 3 281 | m_Name: Cancel 282 | descriptiveName: 283 | descriptiveNegativeName: 284 | negativeButton: 285 | positiveButton: escape 286 | altNegativeButton: 287 | altPositiveButton: joystick button 1 288 | gravity: 1000 289 | dead: 0.001 290 | sensitivity: 1000 291 | snap: 0 292 | invert: 0 293 | type: 0 294 | axis: 0 295 | joyNum: 0 296 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/ShinyEffectForUGUI.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | using UnityEngine.Serialization; 5 | using UnityEngine.UI; 6 | using System.Collections; 7 | 8 | #if UNITY_EDITOR 9 | using System.IO; 10 | using System.Linq; 11 | using UnityEditor; 12 | #endif 13 | 14 | namespace Coffee.UIExtensions 15 | { 16 | /// 17 | /// UIEffect. 18 | /// 19 | [ExecuteInEditMode] 20 | [DisallowMultipleComponent] 21 | public class ShinyEffectForUGUI : BaseMeshEffect 22 | #if UNITY_EDITOR 23 | , ISerializationCallbackReceiver 24 | #endif 25 | { 26 | //################################ 27 | // Constant or Static Members. 28 | //################################ 29 | public const string shaderName = "UI/Hidden/UI-Effect-Shiny"; 30 | 31 | 32 | //################################ 33 | // Serialize Members. 34 | //################################ 35 | [SerializeField][Range(0, 1)] float m_Location = 0; 36 | [SerializeField][Range(0, 1)] float m_Width = 0.25f; 37 | [SerializeField][Range(0.01f, 1)] float m_Softness = 1f; 38 | [FormerlySerializedAs("m_Alpha")] 39 | [SerializeField][Range(0, 1)] float m_Brightness = 1f; 40 | [SerializeField][Range(-180, 180)] float m_Rotation; 41 | [SerializeField][Range(0, 1)] float m_Highlight = 1; 42 | [SerializeField] Material m_EffectMaterial; 43 | 44 | 45 | //################################ 46 | // Public Members. 47 | //################################ 48 | /// 49 | /// Graphic affected by the UIEffect. 50 | /// 51 | new public Graphic graphic { get { return base.graphic; } } 52 | 53 | /// 54 | /// Location for shiny effect. 55 | /// 56 | public float location{ get { return m_Location; } set { m_Location = Mathf.Clamp(value, 0, 1); _SetDirty(); } } 57 | 58 | /// 59 | /// Width for shiny effect. 60 | /// 61 | public float width { get { return m_Width; } set { m_Width = Mathf.Clamp(value, 0, 1); _SetDirty(); } } 62 | 63 | /// 64 | /// Softness for shiny effect. 65 | /// 66 | public float softness { get { return m_Softness; } set { m_Softness = Mathf.Clamp(value, 0.01f, 1); _SetDirty(); } } 67 | 68 | /// 69 | /// Alpha for shiny effect. 70 | /// 71 | [System.Obsolete ("Use brightness instead (UnityUpgradable) -> brightness")] 72 | public float alpha { get { return m_Brightness; } set { m_Brightness = Mathf.Clamp(value, 0, 1); _SetDirty(); } } 73 | 74 | /// 75 | /// Brightness for shiny effect. 76 | /// 77 | public float brightness { get { return m_Brightness; } set { m_Brightness = Mathf.Clamp(value, 0, 1); _SetDirty(); } } 78 | 79 | /// 80 | /// Highlight factor for shiny effect. 81 | /// 82 | public float highlight { get { return m_Highlight; } set { m_Highlight = Mathf.Clamp(value, 0, 1); _SetDirty(); } } 83 | 84 | /// 85 | /// Rotation for shiny effect. 86 | /// 87 | public float rotation 88 | { 89 | get 90 | { 91 | return m_Rotation; 92 | } 93 | set { if (!Mathf.Approximately(m_Rotation, value)) { m_Rotation = value; _SetDirty(); } } 94 | } 95 | 96 | /// 97 | /// Effect material. 98 | /// 99 | public virtual Material effectMaterial { get { return m_EffectMaterial; } } 100 | 101 | /// 102 | /// This function is called when the object becomes enabled and active. 103 | /// 104 | protected override void OnEnable() 105 | { 106 | graphic.material = effectMaterial; 107 | base.OnEnable(); 108 | } 109 | 110 | /// 111 | /// This function is called when the behaviour becomes disabled () or inactive. 112 | /// 113 | protected override void OnDisable() 114 | { 115 | graphic.material = null; 116 | base.OnDisable(); 117 | } 118 | 119 | #if UNITY_EDITOR 120 | public void OnBeforeSerialize() 121 | { 122 | } 123 | 124 | public void OnAfterDeserialize() 125 | { 126 | var obj = this; 127 | EditorApplication.delayCall += () => 128 | { 129 | if (Application.isPlaying || !obj) 130 | return; 131 | 132 | var mat = GetMaterial(shaderName); 133 | if(m_EffectMaterial == mat && graphic.material == mat) 134 | return; 135 | 136 | graphic.material = m_EffectMaterial = mat; 137 | EditorUtility.SetDirty(this); 138 | EditorUtility.SetDirty(graphic); 139 | EditorApplication.delayCall +=AssetDatabase.SaveAssets; 140 | }; 141 | } 142 | 143 | public static Material GetMaterial(string shaderName) 144 | { 145 | string name = Path.GetFileName (shaderName); 146 | return AssetDatabase.FindAssets("t:Material " + name) 147 | .Select(x => AssetDatabase.GUIDToAssetPath(x)) 148 | .SelectMany(x => AssetDatabase.LoadAllAssetsAtPath(x)) 149 | .OfType() 150 | .FirstOrDefault(x => x.name == name); 151 | } 152 | #endif 153 | 154 | /// 155 | /// Modifies the mesh. 156 | /// 157 | public override void ModifyMesh(VertexHelper vh) 158 | { 159 | 160 | if (!IsActive()) 161 | return; 162 | 163 | // rect. 164 | Rect rect = graphic.rectTransform.rect; 165 | 166 | // rotation. 167 | float rad = rotation * Mathf.Deg2Rad; 168 | Vector2 dir = new Vector2(Mathf.Cos(rad), Mathf.Sin(rad)); 169 | dir.x *= rect.height / rect.width; 170 | dir = dir.normalized; 171 | 172 | // Calculate vertex position. 173 | UIVertex vertex = default(UIVertex); 174 | Vector2 nomalizedPos; 175 | Matrix2x3 localMatrix = new Matrix2x3(rect, dir.x, dir.y); // Get local matrix. 176 | for (int i = 0; i < vh.currentVertCount; i++) 177 | { 178 | vh.PopulateUIVertex(ref vertex, i); 179 | 180 | // Normalize vertex position by local matrix. 181 | nomalizedPos = localMatrix * vertex.position; 182 | 183 | vertex.uv1 = new Vector2( 184 | _PackToFloat(Mathf.Clamp01(nomalizedPos.y), softness, width, brightness), 185 | _PackToFloat(location, highlight) 186 | ); 187 | 188 | vh.SetUIVertex(vertex, i); 189 | } 190 | } 191 | 192 | /// 193 | /// Play effect. 194 | /// 195 | public void Play() 196 | { 197 | Play(1); 198 | } 199 | 200 | /// 201 | /// Play effect. 202 | /// 203 | public void Play(float duration) 204 | { 205 | StopAllCoroutines(); 206 | StartCoroutine(CoPlay(duration, AnimatorUpdateMode.Normal)); 207 | } 208 | 209 | /// 210 | /// Play effect. 211 | /// 212 | public void Play(float duration, AnimatorUpdateMode updateMode) 213 | { 214 | StopAllCoroutines(); 215 | StartCoroutine(CoPlay(duration, updateMode)); 216 | } 217 | 218 | //################################ 219 | // Private Members. 220 | //################################ 221 | /// 222 | /// Mark the UIEffect as dirty. 223 | /// 224 | void _SetDirty() 225 | { 226 | if(graphic) 227 | graphic.SetVerticesDirty(); 228 | } 229 | 230 | IEnumerator CoPlay(float duration, AnimatorUpdateMode updateMode = AnimatorUpdateMode.Normal) 231 | { 232 | float time = 0; 233 | while (time < duration) 234 | { 235 | location = time / duration; 236 | time += updateMode == AnimatorUpdateMode.UnscaledTime 237 | ? Time.unscaledDeltaTime 238 | : Time.deltaTime; 239 | yield return null; 240 | } 241 | } 242 | 243 | /// 244 | /// Pack 4 low-precision [0-1] floats values to a float. 245 | /// Each value [0-1] has 64 steps(6 bits). 246 | /// 247 | static float _PackToFloat(float x, float y, float z, float w) 248 | { 249 | const int PRECISION = (1 << 6) - 1; 250 | return (Mathf.FloorToInt(w * PRECISION) << 18) 251 | + (Mathf.FloorToInt(z * PRECISION) << 12) 252 | + (Mathf.FloorToInt(y * PRECISION) << 6) 253 | + Mathf.FloorToInt(x * PRECISION); 254 | } 255 | 256 | /// 257 | /// Pack 2 low-precision [0-1] floats values to a float. 258 | /// Each value [0-1] has 4096 steps(12 bits). 259 | /// 260 | static float _PackToFloat(float x, float y) 261 | { 262 | const int PRECISION = (1 << 12) - 1; 263 | return (Mathf.FloorToInt(y * PRECISION) << 12) 264 | + Mathf.FloorToInt(x * PRECISION); 265 | } 266 | 267 | 268 | /// 269 | /// Matrix2x3. 270 | /// 271 | struct Matrix2x3 272 | { 273 | public float m00, m01, m02, m10, m11, m12; 274 | 275 | public Matrix2x3(Rect rect, float cos, float sin) 276 | { 277 | const float center = 0.5f; 278 | float dx = -rect.xMin / rect.width - center; 279 | float dy = -rect.yMin / rect.height - center; 280 | m00 = cos / rect.width; 281 | m01 = -sin / rect.height; 282 | m02 = dx * cos - dy * sin + center; 283 | m10 = sin / rect.width; 284 | m11 = cos / rect.height; 285 | m12 = dx * sin + dy * cos + center; 286 | } 287 | 288 | public static Vector2 operator*(Matrix2x3 m, Vector2 v) 289 | { 290 | return new Vector2( 291 | (m.m00 * v.x) + (m.m01 * v.y) + m.m02, 292 | (m.m10 * v.x) + (m.m11 * v.y) + m.m12 293 | ); 294 | } 295 | } 296 | } 297 | } 298 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/Demo/Shiny.controller: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!74 &-1746834952 4 | AnimationClip: 5 | m_ObjectHideFlags: 0 6 | m_PrefabParentObject: {fileID: 0} 7 | m_PrefabInternal: {fileID: 0} 8 | m_Name: Animation 9 | serializedVersion: 6 10 | m_Legacy: 0 11 | m_Compressed: 0 12 | m_UseHighQualityCurve: 1 13 | m_RotationCurves: [] 14 | m_CompressedRotationCurves: [] 15 | m_EulerCurves: [] 16 | m_PositionCurves: [] 17 | m_ScaleCurves: [] 18 | m_FloatCurves: 19 | - curve: 20 | serializedVersion: 2 21 | m_Curve: 22 | - serializedVersion: 2 23 | time: 0 24 | value: 0 25 | inSlope: 0 26 | outSlope: 0 27 | tangentMode: 136 28 | - serializedVersion: 2 29 | time: 1.5 30 | value: 1 31 | inSlope: 0 32 | outSlope: 0 33 | tangentMode: 136 34 | m_PreInfinity: 2 35 | m_PostInfinity: 2 36 | m_RotationOrder: 4 37 | attribute: m_Location 38 | path: Layout/A 39 | classID: 114 40 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 41 | - curve: 42 | serializedVersion: 2 43 | m_Curve: 44 | - serializedVersion: 2 45 | time: 0.5 46 | value: 0 47 | inSlope: 0 48 | outSlope: 0 49 | tangentMode: 136 50 | - serializedVersion: 2 51 | time: 2 52 | value: 1 53 | inSlope: 0 54 | outSlope: 0 55 | tangentMode: 136 56 | m_PreInfinity: 2 57 | m_PostInfinity: 2 58 | m_RotationOrder: 4 59 | attribute: m_Location 60 | path: Layout/B 61 | classID: 114 62 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 63 | - curve: 64 | serializedVersion: 2 65 | m_Curve: 66 | - serializedVersion: 2 67 | time: 1 68 | value: 0 69 | inSlope: 0 70 | outSlope: 0 71 | tangentMode: 136 72 | - serializedVersion: 2 73 | time: 2.5 74 | value: 1 75 | inSlope: 0 76 | outSlope: 0 77 | tangentMode: 136 78 | m_PreInfinity: 2 79 | m_PostInfinity: 2 80 | m_RotationOrder: 4 81 | attribute: m_Location 82 | path: Layout/C 83 | classID: 114 84 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 85 | - curve: 86 | serializedVersion: 2 87 | m_Curve: 88 | - serializedVersion: 2 89 | time: 1.5 90 | value: 0 91 | inSlope: 0 92 | outSlope: 0 93 | tangentMode: 136 94 | - serializedVersion: 2 95 | time: 3 96 | value: 1 97 | inSlope: 0 98 | outSlope: 0 99 | tangentMode: 136 100 | m_PreInfinity: 2 101 | m_PostInfinity: 2 102 | m_RotationOrder: 4 103 | attribute: m_Location 104 | path: Layout/D 105 | classID: 114 106 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 107 | m_PPtrCurves: [] 108 | m_SampleRate: 8 109 | m_WrapMode: 0 110 | m_Bounds: 111 | m_Center: {x: 0, y: 0, z: 0} 112 | m_Extent: {x: 0, y: 0, z: 0} 113 | m_ClipBindingConstant: 114 | genericBindings: 115 | - path: 490744390 116 | attribute: 2830261733 117 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 118 | classID: 114 119 | customType: 0 120 | isPPtrCurve: 0 121 | - path: 2219408380 122 | attribute: 2830261733 123 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 124 | classID: 114 125 | customType: 0 126 | isPPtrCurve: 0 127 | - path: 4081994602 128 | attribute: 2830261733 129 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 130 | classID: 114 131 | customType: 0 132 | isPPtrCurve: 0 133 | - path: 1831526089 134 | attribute: 2830261733 135 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 136 | classID: 114 137 | customType: 0 138 | isPPtrCurve: 0 139 | pptrCurveMapping: [] 140 | m_AnimationClipSettings: 141 | serializedVersion: 2 142 | m_AdditiveReferencePoseClip: {fileID: 0} 143 | m_AdditiveReferencePoseTime: 0 144 | m_StartTime: 0 145 | m_StopTime: 3 146 | m_OrientationOffsetY: 0 147 | m_Level: 0 148 | m_CycleOffset: 0 149 | m_HasAdditiveReferencePose: 0 150 | m_LoopTime: 1 151 | m_LoopBlend: 0 152 | m_LoopBlendOrientation: 0 153 | m_LoopBlendPositionY: 0 154 | m_LoopBlendPositionXZ: 0 155 | m_KeepOriginalOrientation: 0 156 | m_KeepOriginalPositionY: 1 157 | m_KeepOriginalPositionXZ: 0 158 | m_HeightFromFeet: 0 159 | m_Mirror: 0 160 | m_EditorCurves: 161 | - curve: 162 | serializedVersion: 2 163 | m_Curve: 164 | - serializedVersion: 2 165 | time: 0 166 | value: 0 167 | inSlope: 0 168 | outSlope: 0 169 | tangentMode: 136 170 | - serializedVersion: 2 171 | time: 1.5 172 | value: 1 173 | inSlope: 0 174 | outSlope: 0 175 | tangentMode: 136 176 | m_PreInfinity: 2 177 | m_PostInfinity: 2 178 | m_RotationOrder: 4 179 | attribute: m_Location 180 | path: Layout/A 181 | classID: 114 182 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 183 | - curve: 184 | serializedVersion: 2 185 | m_Curve: 186 | - serializedVersion: 2 187 | time: 0.5 188 | value: 0 189 | inSlope: 0 190 | outSlope: 0 191 | tangentMode: 136 192 | - serializedVersion: 2 193 | time: 2 194 | value: 1 195 | inSlope: 0 196 | outSlope: 0 197 | tangentMode: 136 198 | m_PreInfinity: 2 199 | m_PostInfinity: 2 200 | m_RotationOrder: 4 201 | attribute: m_Location 202 | path: Layout/B 203 | classID: 114 204 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 205 | - curve: 206 | serializedVersion: 2 207 | m_Curve: 208 | - serializedVersion: 2 209 | time: 1 210 | value: 0 211 | inSlope: 0 212 | outSlope: 0 213 | tangentMode: 136 214 | - serializedVersion: 2 215 | time: 2.5 216 | value: 1 217 | inSlope: 0 218 | outSlope: 0 219 | tangentMode: 136 220 | m_PreInfinity: 2 221 | m_PostInfinity: 2 222 | m_RotationOrder: 4 223 | attribute: m_Location 224 | path: Layout/C 225 | classID: 114 226 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 227 | - curve: 228 | serializedVersion: 2 229 | m_Curve: 230 | - serializedVersion: 2 231 | time: 1.5 232 | value: 0 233 | inSlope: 0 234 | outSlope: 0 235 | tangentMode: 136 236 | - serializedVersion: 2 237 | time: 3 238 | value: 1 239 | inSlope: 0 240 | outSlope: 0 241 | tangentMode: 136 242 | m_PreInfinity: 2 243 | m_PostInfinity: 2 244 | m_RotationOrder: 4 245 | attribute: m_Location 246 | path: Layout/D 247 | classID: 114 248 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 249 | m_EulerEditorCurves: [] 250 | m_HasGenericRootTransform: 0 251 | m_HasMotionFloatCurves: 0 252 | m_GenerateMotionCurves: 0 253 | m_IsEmpty: 0 254 | m_Events: [] 255 | --- !u!1102 &-1537770706 256 | AnimatorState: 257 | serializedVersion: 5 258 | m_ObjectHideFlags: 1 259 | m_PrefabParentObject: {fileID: 0} 260 | m_PrefabInternal: {fileID: 0} 261 | m_Name: Animation 262 | m_Speed: 1 263 | m_CycleOffset: 0 264 | m_Transitions: [] 265 | m_StateMachineBehaviours: [] 266 | m_Position: {x: 50, y: 50, z: 0} 267 | m_IKOnFeet: 0 268 | m_WriteDefaultValues: 1 269 | m_Mirror: 0 270 | m_SpeedParameterActive: 0 271 | m_MirrorParameterActive: 0 272 | m_CycleOffsetParameterActive: 0 273 | m_Motion: {fileID: 0} 274 | m_Tag: 275 | m_SpeedParameter: 276 | m_MirrorParameter: 277 | m_CycleOffsetParameter: 278 | --- !u!91 &9100000 279 | AnimatorController: 280 | m_ObjectHideFlags: 0 281 | m_PrefabParentObject: {fileID: 0} 282 | m_PrefabInternal: {fileID: 0} 283 | m_Name: Shiny 284 | serializedVersion: 5 285 | m_AnimatorParameters: 286 | - m_Name: New Bool 287 | m_Type: 4 288 | m_DefaultFloat: 0 289 | m_DefaultInt: 0 290 | m_DefaultBool: 0 291 | m_Controller: {fileID: 9100000} 292 | m_AnimatorLayers: 293 | - serializedVersion: 5 294 | m_Name: Base Layer 295 | m_StateMachine: {fileID: 110755890} 296 | m_Mask: {fileID: 0} 297 | m_Motions: [] 298 | m_Behaviours: [] 299 | m_BlendingMode: 0 300 | m_SyncedLayerIndex: -1 301 | m_DefaultWeight: 0 302 | m_IKPass: 0 303 | m_SyncedLayerAffectsTiming: 0 304 | m_Controller: {fileID: 9100000} 305 | --- !u!1102 &110218890 306 | AnimatorState: 307 | serializedVersion: 5 308 | m_ObjectHideFlags: 1 309 | m_PrefabParentObject: {fileID: 0} 310 | m_PrefabInternal: {fileID: 0} 311 | m_Name: Animation 312 | m_Speed: 1 313 | m_CycleOffset: 0 314 | m_Transitions: [] 315 | m_StateMachineBehaviours: [] 316 | m_Position: {x: 50, y: 50, z: 0} 317 | m_IKOnFeet: 0 318 | m_WriteDefaultValues: 1 319 | m_Mirror: 0 320 | m_SpeedParameterActive: 0 321 | m_MirrorParameterActive: 0 322 | m_CycleOffsetParameterActive: 0 323 | m_Motion: {fileID: -1746834952} 324 | m_Tag: 325 | m_SpeedParameter: 326 | m_MirrorParameter: 327 | m_CycleOffsetParameter: 328 | --- !u!1107 &110755890 329 | AnimatorStateMachine: 330 | serializedVersion: 5 331 | m_ObjectHideFlags: 1 332 | m_PrefabParentObject: {fileID: 0} 333 | m_PrefabInternal: {fileID: 0} 334 | m_Name: Base Layer 335 | m_ChildStates: 336 | - serializedVersion: 1 337 | m_State: {fileID: 110218890} 338 | m_Position: {x: 240, y: 120, z: 0} 339 | m_ChildStateMachines: [] 340 | m_AnyStateTransitions: [] 341 | m_EntryTransitions: [] 342 | m_StateMachineTransitions: {} 343 | m_StateMachineBehaviours: [] 344 | m_AnyStatePosition: {x: 48, y: 72, z: 0} 345 | m_EntryPosition: {x: 50, y: 120, z: 0} 346 | m_ExitPosition: {x: 800, y: 120, z: 0} 347 | m_ParentStateMachinePosition: {x: 800, y: 20, z: 0} 348 | m_DefaultState: {fileID: 110218890} 349 | -------------------------------------------------------------------------------- /ProjectSettings/ProjectSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!129 &1 4 | PlayerSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 10 7 | productGUID: 4be074dcec5a4486da242b388060cbf4 8 | AndroidProfiler: 0 9 | defaultScreenOrientation: 4 10 | targetDevice: 2 11 | useOnDemandResources: 0 12 | accelerometerFrequency: 60 13 | companyName: DefaultCompany 14 | productName: ShinyEffectForUGUI 15 | defaultCursor: {fileID: 0} 16 | cursorHotspot: {x: 0, y: 0} 17 | m_SplashScreenBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21176471, a: 1} 18 | m_ShowUnitySplashScreen: 1 19 | m_ShowUnitySplashLogo: 1 20 | m_SplashScreenOverlayOpacity: 1 21 | m_SplashScreenAnimation: 1 22 | m_SplashScreenLogoStyle: 1 23 | m_SplashScreenDrawMode: 0 24 | m_SplashScreenBackgroundAnimationZoom: 1 25 | m_SplashScreenLogoAnimationZoom: 1 26 | m_SplashScreenBackgroundLandscapeAspect: 1 27 | m_SplashScreenBackgroundPortraitAspect: 1 28 | m_SplashScreenBackgroundLandscapeUvs: 29 | serializedVersion: 2 30 | x: 0 31 | y: 0 32 | width: 1 33 | height: 1 34 | m_SplashScreenBackgroundPortraitUvs: 35 | serializedVersion: 2 36 | x: 0 37 | y: 0 38 | width: 1 39 | height: 1 40 | m_SplashScreenLogos: [] 41 | m_SplashScreenBackgroundLandscape: {fileID: 0} 42 | m_SplashScreenBackgroundPortrait: {fileID: 0} 43 | m_VirtualRealitySplashScreen: {fileID: 0} 44 | m_HolographicTrackingLossScreen: {fileID: 0} 45 | defaultScreenWidth: 1024 46 | defaultScreenHeight: 768 47 | defaultScreenWidthWeb: 600 48 | defaultScreenHeightWeb: 800 49 | m_StereoRenderingPath: 0 50 | m_ActiveColorSpace: 0 51 | m_MTRendering: 1 52 | m_MobileMTRendering: 0 53 | m_StackTraceTypes: 010000000100000001000000010000000100000001000000 54 | iosShowActivityIndicatorOnLoading: -1 55 | androidShowActivityIndicatorOnLoading: -1 56 | tizenShowActivityIndicatorOnLoading: -1 57 | iosAppInBackgroundBehavior: 0 58 | displayResolutionDialog: 1 59 | iosAllowHTTPDownload: 1 60 | allowedAutorotateToPortrait: 1 61 | allowedAutorotateToPortraitUpsideDown: 1 62 | allowedAutorotateToLandscapeRight: 1 63 | allowedAutorotateToLandscapeLeft: 1 64 | useOSAutorotation: 1 65 | use32BitDisplayBuffer: 1 66 | disableDepthAndStencilBuffers: 0 67 | defaultIsFullScreen: 1 68 | defaultIsNativeResolution: 1 69 | runInBackground: 0 70 | captureSingleScreen: 0 71 | muteOtherAudioSources: 0 72 | Prepare IOS For Recording: 0 73 | submitAnalytics: 1 74 | usePlayerLog: 1 75 | bakeCollisionMeshes: 0 76 | forceSingleInstance: 0 77 | resizableWindow: 0 78 | useMacAppStoreValidation: 0 79 | gpuSkinning: 0 80 | graphicsJobs: 0 81 | xboxPIXTextureCapture: 0 82 | xboxEnableAvatar: 0 83 | xboxEnableKinect: 0 84 | xboxEnableKinectAutoTracking: 0 85 | xboxEnableFitness: 0 86 | visibleInBackground: 0 87 | allowFullscreenSwitch: 1 88 | macFullscreenMode: 2 89 | d3d9FullscreenMode: 1 90 | d3d11FullscreenMode: 1 91 | xboxSpeechDB: 0 92 | xboxEnableHeadOrientation: 0 93 | xboxEnableGuest: 0 94 | xboxEnablePIXSampling: 0 95 | n3dsDisableStereoscopicView: 0 96 | n3dsEnableSharedListOpt: 1 97 | n3dsEnableVSync: 0 98 | uiUse16BitDepthBuffer: 0 99 | ignoreAlphaClear: 0 100 | xboxOneResolution: 0 101 | xboxOneMonoLoggingLevel: 0 102 | xboxOneLoggingLevel: 1 103 | videoMemoryForVertexBuffers: 0 104 | psp2PowerMode: 0 105 | psp2AcquireBGM: 1 106 | wiiUTVResolution: 0 107 | wiiUGamePadMSAA: 1 108 | wiiUSupportsNunchuk: 0 109 | wiiUSupportsClassicController: 0 110 | wiiUSupportsBalanceBoard: 0 111 | wiiUSupportsMotionPlus: 0 112 | wiiUSupportsProController: 0 113 | wiiUAllowScreenCapture: 1 114 | wiiUControllerCount: 0 115 | m_SupportedAspectRatios: 116 | 4:3: 1 117 | 5:4: 1 118 | 16:10: 1 119 | 16:9: 1 120 | Others: 1 121 | bundleIdentifier: com.Company.ProductName 122 | bundleVersion: 1.0 123 | preloadedAssets: [] 124 | metroInputSource: 0 125 | m_HolographicPauseOnTrackingLoss: 1 126 | xboxOneDisableKinectGpuReservation: 0 127 | protectGraphicsMemory: 0 128 | AndroidBundleVersionCode: 1 129 | AndroidMinSdkVersion: 9 130 | AndroidPreferredInstallLocation: 1 131 | aotOptions: 132 | apiCompatibilityLevel: 2 133 | stripEngineCode: 1 134 | iPhoneStrippingLevel: 0 135 | iPhoneScriptCallOptimization: 0 136 | iPhoneBuildNumber: 0 137 | ForceInternetPermission: 0 138 | ForceSDCardPermission: 0 139 | CreateWallpaper: 0 140 | APKExpansionFiles: 0 141 | preloadShaders: 0 142 | StripUnusedMeshComponents: 0 143 | VertexChannelCompressionMask: 144 | serializedVersion: 2 145 | m_Bits: 238 146 | iPhoneSdkVersion: 988 147 | iOSTargetOSVersionString: 148 | tvOSSdkVersion: 0 149 | tvOSRequireExtendedGameController: 0 150 | tvOSTargetOSVersionString: 151 | uIPrerenderedIcon: 0 152 | uIRequiresPersistentWiFi: 0 153 | uIRequiresFullScreen: 1 154 | uIStatusBarHidden: 1 155 | uIExitOnSuspend: 0 156 | uIStatusBarStyle: 0 157 | iPhoneSplashScreen: {fileID: 0} 158 | iPhoneHighResSplashScreen: {fileID: 0} 159 | iPhoneTallHighResSplashScreen: {fileID: 0} 160 | iPhone47inSplashScreen: {fileID: 0} 161 | iPhone55inPortraitSplashScreen: {fileID: 0} 162 | iPhone55inLandscapeSplashScreen: {fileID: 0} 163 | iPadPortraitSplashScreen: {fileID: 0} 164 | iPadHighResPortraitSplashScreen: {fileID: 0} 165 | iPadLandscapeSplashScreen: {fileID: 0} 166 | iPadHighResLandscapeSplashScreen: {fileID: 0} 167 | appleTVSplashScreen: {fileID: 0} 168 | tvOSSmallIconLayers: [] 169 | tvOSLargeIconLayers: [] 170 | tvOSTopShelfImageLayers: [] 171 | tvOSTopShelfImageWideLayers: [] 172 | iOSLaunchScreenType: 0 173 | iOSLaunchScreenPortrait: {fileID: 0} 174 | iOSLaunchScreenLandscape: {fileID: 0} 175 | iOSLaunchScreenBackgroundColor: 176 | serializedVersion: 2 177 | rgba: 0 178 | iOSLaunchScreenFillPct: 100 179 | iOSLaunchScreenSize: 100 180 | iOSLaunchScreenCustomXibPath: 181 | iOSLaunchScreeniPadType: 0 182 | iOSLaunchScreeniPadImage: {fileID: 0} 183 | iOSLaunchScreeniPadBackgroundColor: 184 | serializedVersion: 2 185 | rgba: 0 186 | iOSLaunchScreeniPadFillPct: 100 187 | iOSLaunchScreeniPadSize: 100 188 | iOSLaunchScreeniPadCustomXibPath: 189 | iOSDeviceRequirements: [] 190 | iOSURLSchemes: [] 191 | iOSBackgroundModes: 0 192 | iOSMetalForceHardShadows: 0 193 | appleDeveloperTeamID: 194 | iOSManualSigningProvisioningProfileID: 195 | tvOSManualSigningProvisioningProfileID: 196 | appleEnableAutomaticSigning: 0 197 | AndroidTargetDevice: 0 198 | AndroidSplashScreenScale: 0 199 | androidSplashScreen: {fileID: 0} 200 | AndroidKeystoreName: 201 | AndroidKeyaliasName: 202 | AndroidTVCompatibility: 1 203 | AndroidIsGame: 1 204 | androidEnableBanner: 1 205 | m_AndroidBanners: 206 | - width: 320 207 | height: 180 208 | banner: {fileID: 0} 209 | androidGamepadSupportLevel: 0 210 | resolutionDialogBanner: {fileID: 0} 211 | m_BuildTargetIcons: [] 212 | m_BuildTargetBatching: [] 213 | m_BuildTargetGraphicsAPIs: [] 214 | m_BuildTargetVRSettings: [] 215 | openGLRequireES31: 0 216 | openGLRequireES31AEP: 0 217 | webPlayerTemplate: APPLICATION:Default 218 | m_TemplateCustomTags: {} 219 | wiiUTitleID: 0005000011000000 220 | wiiUGroupID: 00010000 221 | wiiUCommonSaveSize: 4096 222 | wiiUAccountSaveSize: 2048 223 | wiiUOlvAccessKey: 0 224 | wiiUTinCode: 0 225 | wiiUJoinGameId: 0 226 | wiiUJoinGameModeMask: 0000000000000000 227 | wiiUCommonBossSize: 0 228 | wiiUAccountBossSize: 0 229 | wiiUAddOnUniqueIDs: [] 230 | wiiUMainThreadStackSize: 3072 231 | wiiULoaderThreadStackSize: 1024 232 | wiiUSystemHeapSize: 128 233 | wiiUTVStartupScreen: {fileID: 0} 234 | wiiUGamePadStartupScreen: {fileID: 0} 235 | wiiUDrcBufferDisabled: 0 236 | wiiUProfilerLibPath: 237 | actionOnDotNetUnhandledException: 1 238 | enableInternalProfiler: 0 239 | logObjCUncaughtExceptions: 1 240 | enableCrashReportAPI: 0 241 | cameraUsageDescription: 242 | locationUsageDescription: 243 | microphoneUsageDescription: 244 | XboxTitleId: 245 | XboxImageXexPath: 246 | XboxSpaPath: 247 | XboxGenerateSpa: 0 248 | XboxDeployKinectResources: 0 249 | XboxSplashScreen: {fileID: 0} 250 | xboxEnableSpeech: 0 251 | xboxAdditionalTitleMemorySize: 0 252 | xboxDeployKinectHeadOrientation: 0 253 | xboxDeployKinectHeadPosition: 0 254 | ps4NPAgeRating: 12 255 | ps4NPTitleSecret: 256 | ps4NPTrophyPackPath: 257 | ps4ParentalLevel: 1 258 | ps4ContentID: ED1633-NPXX51362_00-0000000000000000 259 | ps4Category: 0 260 | ps4MasterVersion: 01.00 261 | ps4AppVersion: 01.00 262 | ps4AppType: 0 263 | ps4ParamSfxPath: 264 | ps4VideoOutPixelFormat: 0 265 | ps4VideoOutInitialWidth: 1920 266 | ps4VideoOutBaseModeInitialWidth: 1920 267 | ps4VideoOutReprojectionRate: 120 268 | ps4PronunciationXMLPath: 269 | ps4PronunciationSIGPath: 270 | ps4BackgroundImagePath: 271 | ps4StartupImagePath: 272 | ps4SaveDataImagePath: 273 | ps4SdkOverride: 274 | ps4BGMPath: 275 | ps4ShareFilePath: 276 | ps4ShareOverlayImagePath: 277 | ps4PrivacyGuardImagePath: 278 | ps4NPtitleDatPath: 279 | ps4RemotePlayKeyAssignment: -1 280 | ps4RemotePlayKeyMappingDir: 281 | ps4PlayTogetherPlayerCount: 0 282 | ps4EnterButtonAssignment: 1 283 | ps4ApplicationParam1: 0 284 | ps4ApplicationParam2: 0 285 | ps4ApplicationParam3: 0 286 | ps4ApplicationParam4: 0 287 | ps4DownloadDataSize: 0 288 | ps4GarlicHeapSize: 2048 289 | ps4ProGarlicHeapSize: 2560 290 | ps4Passcode: 5PN2qmWqBlQ9wQj99nsQzldVI5ZuGXbE 291 | ps4UseDebugIl2cppLibs: 0 292 | ps4pnSessions: 1 293 | ps4pnPresence: 1 294 | ps4pnFriends: 1 295 | ps4pnGameCustomData: 1 296 | playerPrefsSupport: 0 297 | restrictedAudioUsageRights: 0 298 | ps4UseResolutionFallback: 0 299 | ps4ReprojectionSupport: 0 300 | ps4UseAudio3dBackend: 0 301 | ps4SocialScreenEnabled: 0 302 | ps4ScriptOptimizationLevel: 3 303 | ps4Audio3dVirtualSpeakerCount: 14 304 | ps4attribCpuUsage: 0 305 | ps4PatchPkgPath: 306 | ps4PatchLatestPkgPath: 307 | ps4PatchChangeinfoPath: 308 | ps4PatchDayOne: 0 309 | ps4attribUserManagement: 0 310 | ps4attribMoveSupport: 0 311 | ps4attrib3DSupport: 0 312 | ps4attribShareSupport: 0 313 | ps4attribExclusiveVR: 0 314 | ps4disableAutoHideSplash: 0 315 | ps4videoRecordingFeaturesUsed: 0 316 | ps4contentSearchFeaturesUsed: 0 317 | ps4attribEyeToEyeDistanceSettingVR: 0 318 | ps4IncludedModules: [] 319 | monoEnv: 320 | psp2Splashimage: {fileID: 0} 321 | psp2NPTrophyPackPath: 322 | psp2NPSupportGBMorGJP: 0 323 | psp2NPAgeRating: 12 324 | psp2NPTitleDatPath: 325 | psp2NPCommsID: 326 | psp2NPCommunicationsID: 327 | psp2NPCommsPassphrase: 328 | psp2NPCommsSig: 329 | psp2ParamSfxPath: 330 | psp2ManualPath: 331 | psp2LiveAreaGatePath: 332 | psp2LiveAreaBackroundPath: 333 | psp2LiveAreaPath: 334 | psp2LiveAreaTrialPath: 335 | psp2PatchChangeInfoPath: 336 | psp2PatchOriginalPackage: 337 | psp2PackagePassword: WRK5RhRXdCdG5nG5azdNMK66MuCV6GXi 338 | psp2KeystoneFile: 339 | psp2MemoryExpansionMode: 0 340 | psp2DRMType: 0 341 | psp2StorageType: 0 342 | psp2MediaCapacity: 0 343 | psp2DLCConfigPath: 344 | psp2ThumbnailPath: 345 | psp2BackgroundPath: 346 | psp2SoundPath: 347 | psp2TrophyCommId: 348 | psp2TrophyPackagePath: 349 | psp2PackagedResourcesPath: 350 | psp2SaveDataQuota: 10240 351 | psp2ParentalLevel: 1 352 | psp2ShortTitle: Not Set 353 | psp2ContentID: IV0000-ABCD12345_00-0123456789ABCDEF 354 | psp2Category: 0 355 | psp2MasterVersion: 01.00 356 | psp2AppVersion: 01.00 357 | psp2TVBootMode: 0 358 | psp2EnterButtonAssignment: 2 359 | psp2TVDisableEmu: 0 360 | psp2AllowTwitterDialog: 1 361 | psp2Upgradable: 0 362 | psp2HealthWarning: 0 363 | psp2UseLibLocation: 0 364 | psp2InfoBarOnStartup: 0 365 | psp2InfoBarColor: 0 366 | psp2UseDebugIl2cppLibs: 0 367 | psmSplashimage: {fileID: 0} 368 | splashScreenBackgroundSourceLandscape: {fileID: 0} 369 | splashScreenBackgroundSourcePortrait: {fileID: 0} 370 | spritePackerPolicy: 371 | webGLMemorySize: 256 372 | webGLExceptionSupport: 1 373 | webGLDataCaching: 0 374 | webGLDebugSymbols: 0 375 | webGLEmscriptenArgs: 376 | webGLModulesDirectory: 377 | webGLTemplate: APPLICATION:Default 378 | webGLAnalyzeBuildSize: 0 379 | webGLUseEmbeddedResources: 0 380 | webGLUseWasm: 0 381 | webGLCompressionFormat: 1 382 | scriptingDefineSymbols: {} 383 | platformArchitecture: {} 384 | scriptingBackend: {} 385 | incrementalIl2cppBuild: {} 386 | additionalIl2CppArgs: 387 | m_RenderingPath: 1 388 | m_MobileRenderingPath: 1 389 | metroPackageName: ShinyEffectForUGUI 390 | metroPackageVersion: 391 | metroCertificatePath: 392 | metroCertificatePassword: 393 | metroCertificateSubject: 394 | metroCertificateIssuer: 395 | metroCertificateNotAfter: 0000000000000000 396 | metroApplicationDescription: ShinyEffectForUGUI 397 | wsaImages: {} 398 | metroTileShortName: 399 | metroCommandLineArgsFile: 400 | metroTileShowName: 0 401 | metroMediumTileShowName: 0 402 | metroLargeTileShowName: 0 403 | metroWideTileShowName: 0 404 | metroDefaultTileSize: 1 405 | metroTileForegroundText: 2 406 | metroTileBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21568628, a: 0} 407 | metroSplashScreenBackgroundColor: {r: 0.12941177, g: 0.17254902, b: 0.21568628, 408 | a: 1} 409 | metroSplashScreenUseBackgroundColor: 0 410 | platformCapabilities: {} 411 | metroFTAName: 412 | metroFTAFileTypes: [] 413 | metroProtocolName: 414 | metroCompilationOverrides: 1 415 | tizenProductDescription: 416 | tizenProductURL: 417 | tizenSigningProfileName: 418 | tizenGPSPermissions: 0 419 | tizenMicrophonePermissions: 0 420 | tizenDeploymentTarget: 421 | tizenDeploymentTargetType: 0 422 | tizenMinOSVersion: 0 423 | n3dsUseExtSaveData: 0 424 | n3dsCompressStaticMem: 1 425 | n3dsExtSaveDataNumber: 0x12345 426 | n3dsStackSize: 131072 427 | n3dsTargetPlatform: 2 428 | n3dsRegion: 7 429 | n3dsMediaSize: 0 430 | n3dsLogoStyle: 3 431 | n3dsTitle: GameName 432 | n3dsProductCode: 433 | n3dsApplicationId: 0xFF3FF 434 | stvDeviceAddress: 435 | stvProductDescription: 436 | stvProductAuthor: 437 | stvProductAuthorEmail: 438 | stvProductLink: 439 | stvProductCategory: 0 440 | XboxOneProductId: 441 | XboxOneUpdateKey: 442 | XboxOneSandboxId: 443 | XboxOneContentId: 444 | XboxOneTitleId: 445 | XboxOneSCId: 446 | XboxOneGameOsOverridePath: 447 | XboxOnePackagingOverridePath: 448 | XboxOneAppManifestOverridePath: 449 | XboxOnePackageEncryption: 0 450 | XboxOnePackageUpdateGranularity: 2 451 | XboxOneDescription: 452 | XboxOneLanguage: 453 | - enus 454 | XboxOneCapability: [] 455 | XboxOneGameRating: {} 456 | XboxOneIsContentPackage: 0 457 | XboxOneEnableGPUVariability: 0 458 | XboxOneSockets: {} 459 | XboxOneSplashScreen: {fileID: 0} 460 | XboxOneAllowedProductIds: [] 461 | XboxOnePersistentLocalStorageSize: 0 462 | vrEditorSettings: {} 463 | cloudServicesEnabled: {} 464 | cloudProjectId: 465 | projectName: 466 | organizationId: 467 | cloudEnabled: 0 468 | -------------------------------------------------------------------------------- /Assets/ShinyEffectForUGUI/Demo/Demo_ShinyEffectForUGUI_inspector.controller: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!74 &-1746834952 4 | AnimationClip: 5 | m_ObjectHideFlags: 0 6 | m_PrefabParentObject: {fileID: 0} 7 | m_PrefabInternal: {fileID: 0} 8 | m_Name: Animation 9 | serializedVersion: 6 10 | m_Legacy: 0 11 | m_Compressed: 0 12 | m_UseHighQualityCurve: 1 13 | m_RotationCurves: [] 14 | m_CompressedRotationCurves: [] 15 | m_EulerCurves: [] 16 | m_PositionCurves: [] 17 | m_ScaleCurves: [] 18 | m_FloatCurves: 19 | - curve: 20 | serializedVersion: 2 21 | m_Curve: 22 | - serializedVersion: 2 23 | time: 0 24 | value: 0.25 25 | inSlope: 0 26 | outSlope: 0 27 | tangentMode: 136 28 | - serializedVersion: 2 29 | time: 0.5 30 | value: 0.7 31 | inSlope: 0 32 | outSlope: 0 33 | tangentMode: 136 34 | - serializedVersion: 2 35 | time: 1 36 | value: 0.5 37 | inSlope: 0 38 | outSlope: 0 39 | tangentMode: 136 40 | - serializedVersion: 2 41 | time: 7 42 | value: 0.5 43 | inSlope: 0 44 | outSlope: 0 45 | tangentMode: 136 46 | - serializedVersion: 2 47 | time: 7.5 48 | value: 0.32 49 | inSlope: 0 50 | outSlope: 0 51 | tangentMode: 136 52 | - serializedVersion: 2 53 | time: 8 54 | value: 0.57 55 | inSlope: 0 56 | outSlope: 0 57 | tangentMode: 136 58 | m_PreInfinity: 2 59 | m_PostInfinity: 2 60 | m_RotationOrder: 4 61 | attribute: m_Location 62 | path: 63 | classID: 114 64 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 65 | - curve: 66 | serializedVersion: 2 67 | m_Curve: 68 | - serializedVersion: 2 69 | time: 1.5 70 | value: 0.15 71 | inSlope: 0 72 | outSlope: 0 73 | tangentMode: 136 74 | - serializedVersion: 2 75 | time: 2 76 | value: 0.05 77 | inSlope: 0 78 | outSlope: 0 79 | tangentMode: 136 80 | - serializedVersion: 2 81 | time: 2.4 82 | value: 0.25 83 | inSlope: 0 84 | outSlope: 0 85 | tangentMode: 136 86 | - serializedVersion: 2 87 | time: 2.8 88 | value: 0.15 89 | inSlope: 0 90 | outSlope: 0 91 | tangentMode: 136 92 | m_PreInfinity: 2 93 | m_PostInfinity: 2 94 | m_RotationOrder: 4 95 | attribute: m_Width 96 | path: 97 | classID: 114 98 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 99 | - curve: 100 | serializedVersion: 2 101 | m_Curve: 102 | - serializedVersion: 2 103 | time: 0 104 | value: 1 105 | inSlope: 0 106 | outSlope: 0 107 | tangentMode: 136 108 | - serializedVersion: 2 109 | time: 3.2 110 | value: 1 111 | inSlope: 0 112 | outSlope: 0 113 | tangentMode: 136 114 | - serializedVersion: 2 115 | time: 3.7 116 | value: 0.3 117 | inSlope: 0 118 | outSlope: 0 119 | tangentMode: 136 120 | - serializedVersion: 2 121 | time: 4.2 122 | value: 0.7 123 | inSlope: 0 124 | outSlope: 0 125 | tangentMode: 136 126 | m_PreInfinity: 2 127 | m_PostInfinity: 2 128 | m_RotationOrder: 4 129 | attribute: m_Softness 130 | path: 131 | classID: 114 132 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 133 | - curve: 134 | serializedVersion: 2 135 | m_Curve: 136 | - serializedVersion: 2 137 | time: 0 138 | value: 1 139 | inSlope: 0 140 | outSlope: 0 141 | tangentMode: 136 142 | - serializedVersion: 2 143 | time: 4.7 144 | value: 0.75 145 | inSlope: -0.1923077 146 | outSlope: -0.1923077 147 | tangentMode: 136 148 | - serializedVersion: 2 149 | time: 5.2 150 | value: 0 151 | inSlope: 0 152 | outSlope: 0 153 | tangentMode: 136 154 | - serializedVersion: 2 155 | time: 5.6 156 | value: 0.6 157 | inSlope: 0 158 | outSlope: 0 159 | tangentMode: 136 160 | m_PreInfinity: 2 161 | m_PostInfinity: 2 162 | m_RotationOrder: 4 163 | attribute: m_Brightness 164 | path: 165 | classID: 114 166 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 167 | - curve: 168 | serializedVersion: 2 169 | m_Curve: 170 | - serializedVersion: 2 171 | time: 0 172 | value: 140 173 | inSlope: 0 174 | outSlope: 0 175 | tangentMode: 136 176 | - serializedVersion: 2 177 | time: 6.1 178 | value: 140 179 | inSlope: 0 180 | outSlope: 0 181 | tangentMode: 136 182 | - serializedVersion: 2 183 | time: 6.5 184 | value: 0 185 | inSlope: 0 186 | outSlope: 0 187 | tangentMode: 136 188 | m_PreInfinity: 2 189 | m_PostInfinity: 2 190 | m_RotationOrder: 4 191 | attribute: m_Rotation 192 | path: 193 | classID: 114 194 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 195 | m_PPtrCurves: [] 196 | m_SampleRate: 10 197 | m_WrapMode: 0 198 | m_Bounds: 199 | m_Center: {x: 0, y: 0, z: 0} 200 | m_Extent: {x: 0, y: 0, z: 0} 201 | m_ClipBindingConstant: 202 | genericBindings: 203 | - path: 0 204 | attribute: 2830261733 205 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 206 | classID: 114 207 | customType: 0 208 | isPPtrCurve: 0 209 | - path: 0 210 | attribute: 19715407 211 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 212 | classID: 114 213 | customType: 0 214 | isPPtrCurve: 0 215 | - path: 0 216 | attribute: 1177258040 217 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 218 | classID: 114 219 | customType: 0 220 | isPPtrCurve: 0 221 | - path: 0 222 | attribute: 1406091054 223 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 224 | classID: 114 225 | customType: 0 226 | isPPtrCurve: 0 227 | - path: 0 228 | attribute: 3746581727 229 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 230 | classID: 114 231 | customType: 0 232 | isPPtrCurve: 0 233 | pptrCurveMapping: [] 234 | m_AnimationClipSettings: 235 | serializedVersion: 2 236 | m_AdditiveReferencePoseClip: {fileID: 0} 237 | m_AdditiveReferencePoseTime: 0 238 | m_StartTime: 0 239 | m_StopTime: 8 240 | m_OrientationOffsetY: 0 241 | m_Level: 0 242 | m_CycleOffset: 0 243 | m_HasAdditiveReferencePose: 0 244 | m_LoopTime: 1 245 | m_LoopBlend: 0 246 | m_LoopBlendOrientation: 0 247 | m_LoopBlendPositionY: 0 248 | m_LoopBlendPositionXZ: 0 249 | m_KeepOriginalOrientation: 0 250 | m_KeepOriginalPositionY: 1 251 | m_KeepOriginalPositionXZ: 0 252 | m_HeightFromFeet: 0 253 | m_Mirror: 0 254 | m_EditorCurves: 255 | - curve: 256 | serializedVersion: 2 257 | m_Curve: 258 | - serializedVersion: 2 259 | time: 0 260 | value: 0.25 261 | inSlope: 0 262 | outSlope: 0 263 | tangentMode: 136 264 | - serializedVersion: 2 265 | time: 0.5 266 | value: 0.7 267 | inSlope: 0 268 | outSlope: 0 269 | tangentMode: 136 270 | - serializedVersion: 2 271 | time: 1 272 | value: 0.5 273 | inSlope: 0 274 | outSlope: 0 275 | tangentMode: 136 276 | - serializedVersion: 2 277 | time: 7 278 | value: 0.5 279 | inSlope: 0 280 | outSlope: 0 281 | tangentMode: 136 282 | - serializedVersion: 2 283 | time: 7.5 284 | value: 0.32 285 | inSlope: 0 286 | outSlope: 0 287 | tangentMode: 136 288 | - serializedVersion: 2 289 | time: 8 290 | value: 0.57 291 | inSlope: 0 292 | outSlope: 0 293 | tangentMode: 136 294 | m_PreInfinity: 2 295 | m_PostInfinity: 2 296 | m_RotationOrder: 4 297 | attribute: m_Location 298 | path: 299 | classID: 114 300 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 301 | - curve: 302 | serializedVersion: 2 303 | m_Curve: 304 | - serializedVersion: 2 305 | time: 1.5 306 | value: 0.15 307 | inSlope: 0 308 | outSlope: 0 309 | tangentMode: 136 310 | - serializedVersion: 2 311 | time: 2 312 | value: 0.05 313 | inSlope: 0 314 | outSlope: 0 315 | tangentMode: 136 316 | - serializedVersion: 2 317 | time: 2.4 318 | value: 0.25 319 | inSlope: 0 320 | outSlope: 0 321 | tangentMode: 136 322 | - serializedVersion: 2 323 | time: 2.8 324 | value: 0.15 325 | inSlope: 0 326 | outSlope: 0 327 | tangentMode: 136 328 | m_PreInfinity: 2 329 | m_PostInfinity: 2 330 | m_RotationOrder: 4 331 | attribute: m_Width 332 | path: 333 | classID: 114 334 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 335 | - curve: 336 | serializedVersion: 2 337 | m_Curve: 338 | - serializedVersion: 2 339 | time: 0 340 | value: 1 341 | inSlope: 0 342 | outSlope: 0 343 | tangentMode: 136 344 | - serializedVersion: 2 345 | time: 3.2 346 | value: 1 347 | inSlope: 0 348 | outSlope: 0 349 | tangentMode: 136 350 | - serializedVersion: 2 351 | time: 3.7 352 | value: 0.3 353 | inSlope: 0 354 | outSlope: 0 355 | tangentMode: 136 356 | - serializedVersion: 2 357 | time: 4.2 358 | value: 0.7 359 | inSlope: 0 360 | outSlope: 0 361 | tangentMode: 136 362 | m_PreInfinity: 2 363 | m_PostInfinity: 2 364 | m_RotationOrder: 4 365 | attribute: m_Softness 366 | path: 367 | classID: 114 368 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 369 | - curve: 370 | serializedVersion: 2 371 | m_Curve: 372 | - serializedVersion: 2 373 | time: 0 374 | value: 1 375 | inSlope: 0 376 | outSlope: 0 377 | tangentMode: 136 378 | - serializedVersion: 2 379 | time: 4.7 380 | value: 0.75 381 | inSlope: -0.1923077 382 | outSlope: -0.1923077 383 | tangentMode: 136 384 | - serializedVersion: 2 385 | time: 5.2 386 | value: 0 387 | inSlope: 0 388 | outSlope: 0 389 | tangentMode: 136 390 | - serializedVersion: 2 391 | time: 5.6 392 | value: 0.6 393 | inSlope: 0 394 | outSlope: 0 395 | tangentMode: 136 396 | m_PreInfinity: 2 397 | m_PostInfinity: 2 398 | m_RotationOrder: 4 399 | attribute: m_Brightness 400 | path: 401 | classID: 114 402 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 403 | - curve: 404 | serializedVersion: 2 405 | m_Curve: 406 | - serializedVersion: 2 407 | time: 0 408 | value: 140 409 | inSlope: 0 410 | outSlope: 0 411 | tangentMode: 136 412 | - serializedVersion: 2 413 | time: 6.1 414 | value: 140 415 | inSlope: 0 416 | outSlope: 0 417 | tangentMode: 136 418 | - serializedVersion: 2 419 | time: 6.5 420 | value: 0 421 | inSlope: 0 422 | outSlope: 0 423 | tangentMode: 136 424 | m_PreInfinity: 2 425 | m_PostInfinity: 2 426 | m_RotationOrder: 4 427 | attribute: m_Rotation 428 | path: 429 | classID: 114 430 | script: {fileID: 11500000, guid: 62e4947d070cf41eb87bc6a9968c32a5, type: 3} 431 | m_EulerEditorCurves: [] 432 | m_HasGenericRootTransform: 0 433 | m_HasMotionFloatCurves: 0 434 | m_GenerateMotionCurves: 0 435 | m_IsEmpty: 0 436 | m_Events: [] 437 | --- !u!1102 &-1537770706 438 | AnimatorState: 439 | serializedVersion: 5 440 | m_ObjectHideFlags: 1 441 | m_PrefabParentObject: {fileID: 0} 442 | m_PrefabInternal: {fileID: 0} 443 | m_Name: Animation 444 | m_Speed: 1 445 | m_CycleOffset: 0 446 | m_Transitions: [] 447 | m_StateMachineBehaviours: [] 448 | m_Position: {x: 50, y: 50, z: 0} 449 | m_IKOnFeet: 0 450 | m_WriteDefaultValues: 1 451 | m_Mirror: 0 452 | m_SpeedParameterActive: 0 453 | m_MirrorParameterActive: 0 454 | m_CycleOffsetParameterActive: 0 455 | m_Motion: {fileID: 0} 456 | m_Tag: 457 | m_SpeedParameter: 458 | m_MirrorParameter: 459 | m_CycleOffsetParameter: 460 | --- !u!91 &9100000 461 | AnimatorController: 462 | m_ObjectHideFlags: 0 463 | m_PrefabParentObject: {fileID: 0} 464 | m_PrefabInternal: {fileID: 0} 465 | m_Name: Demo_ShinyEffectForUGUI_inspector 466 | serializedVersion: 5 467 | m_AnimatorParameters: 468 | - m_Name: New Bool 469 | m_Type: 4 470 | m_DefaultFloat: 0 471 | m_DefaultInt: 0 472 | m_DefaultBool: 0 473 | m_Controller: {fileID: 9100000} 474 | m_AnimatorLayers: 475 | - serializedVersion: 5 476 | m_Name: Base Layer 477 | m_StateMachine: {fileID: 110755890} 478 | m_Mask: {fileID: 0} 479 | m_Motions: [] 480 | m_Behaviours: [] 481 | m_BlendingMode: 0 482 | m_SyncedLayerIndex: -1 483 | m_DefaultWeight: 0 484 | m_IKPass: 0 485 | m_SyncedLayerAffectsTiming: 0 486 | m_Controller: {fileID: 9100000} 487 | --- !u!1102 &110218890 488 | AnimatorState: 489 | serializedVersion: 5 490 | m_ObjectHideFlags: 1 491 | m_PrefabParentObject: {fileID: 0} 492 | m_PrefabInternal: {fileID: 0} 493 | m_Name: Animation 494 | m_Speed: 1 495 | m_CycleOffset: 0 496 | m_Transitions: [] 497 | m_StateMachineBehaviours: [] 498 | m_Position: {x: 50, y: 50, z: 0} 499 | m_IKOnFeet: 0 500 | m_WriteDefaultValues: 1 501 | m_Mirror: 0 502 | m_SpeedParameterActive: 0 503 | m_MirrorParameterActive: 0 504 | m_CycleOffsetParameterActive: 0 505 | m_Motion: {fileID: -1746834952} 506 | m_Tag: 507 | m_SpeedParameter: 508 | m_MirrorParameter: 509 | m_CycleOffsetParameter: 510 | --- !u!1107 &110755890 511 | AnimatorStateMachine: 512 | serializedVersion: 5 513 | m_ObjectHideFlags: 1 514 | m_PrefabParentObject: {fileID: 0} 515 | m_PrefabInternal: {fileID: 0} 516 | m_Name: Base Layer 517 | m_ChildStates: 518 | - serializedVersion: 1 519 | m_State: {fileID: 110218890} 520 | m_Position: {x: 240, y: 120, z: 0} 521 | m_ChildStateMachines: [] 522 | m_AnyStateTransitions: [] 523 | m_EntryTransitions: [] 524 | m_StateMachineTransitions: {} 525 | m_StateMachineBehaviours: [] 526 | m_AnyStatePosition: {x: 48, y: 72, z: 0} 527 | m_EntryPosition: {x: 50, y: 120, z: 0} 528 | m_ExitPosition: {x: 800, y: 120, z: 0} 529 | m_ParentStateMachinePosition: {x: 800, y: 20, z: 0} 530 | m_DefaultState: {fileID: 110218890} 531 | --------------------------------------------------------------------------------