From 6eb915c129fc90c6f4c82ae097dd6ffad5239efc Mon Sep 17 00:00:00 2001 From: chai Date: Mon, 25 Jan 2021 14:28:30 +0800 Subject: +scripts --- .../Assets/Scripts/XUtliPoolLib/ShaderManager.cs | 316 +++++++++++++++++++++ 1 file changed, 316 insertions(+) create mode 100644 Client/Assets/Scripts/XUtliPoolLib/ShaderManager.cs (limited to 'Client/Assets/Scripts/XUtliPoolLib/ShaderManager.cs') diff --git a/Client/Assets/Scripts/XUtliPoolLib/ShaderManager.cs b/Client/Assets/Scripts/XUtliPoolLib/ShaderManager.cs new file mode 100644 index 00000000..17853dc0 --- /dev/null +++ b/Client/Assets/Scripts/XUtliPoolLib/ShaderManager.cs @@ -0,0 +1,316 @@ +using System; +using System.IO; +using UnityEngine; + +namespace XUtliPoolLib +{ + public sealed class ShaderManager : XSingleton + { + public static Shader _skin_effect + { + get + { + bool flag = ShaderManager.m_skin_effect == null; + if (flag) + { + ShaderManager.m_skin_effect = XSingleton.singleton.FindShader("Skin-Effect", "Custom/Skin/Effect"); + } + return ShaderManager.m_skin_effect; + } + } + + public static Shader _skin8 + { + get + { + bool flag = ShaderManager.m_skin8 == null; + if (flag) + { + ShaderManager.m_skin8 = XSingleton.singleton.FindShader("Skin-RimLightBlend8", "Custom/Skin/RimlightBlend8"); + } + return ShaderManager.m_skin8; + } + } + + public static Shader _skin_blend + { + get + { + bool flag = ShaderManager.m_skin_blend == null; + if (flag) + { + ShaderManager.m_skin_blend = XSingleton.singleton.FindShader("Skin-RimLightBlend", "Custom/Skin/RimlightBlend"); + } + return ShaderManager.m_skin_blend; + } + } + + public static Shader _skin_cutout + { + get + { + bool flag = ShaderManager.m_skin_cutout == null; + if (flag) + { + ShaderManager.m_skin_cutout = XSingleton.singleton.FindShader("Skin-RimLightBlendCutout", "Custom/Skin/RimlightBlendCutout"); + } + return ShaderManager.m_skin_cutout; + } + } + + public static Shader _skin_cutout4 + { + get + { + bool flag = ShaderManager.m_skin_cutout4 == null; + if (flag) + { + ShaderManager.m_skin_cutout4 = XSingleton.singleton.FindShader("Skin-RimLightBlendCutout4", "Custom/Skin/RimlightBlendCutout4"); + } + return ShaderManager.m_skin_cutout4; + } + } + + public static Shader _fade_maskR_noLight + { + get + { + bool flag = ShaderManager.m_fade_maskR_noLight == null; + if (flag) + { + ShaderManager.m_fade_maskR_noLight = XSingleton.singleton.FindShader("FadeMaskRNoLight", "Custom/Common/FadeMaskRNoLight"); + } + return ShaderManager.m_fade_maskR_noLight; + } + } + + public static Shader _transparentGrayMaskRNoLight + { + get + { + bool flag = ShaderManager.m_transparentGrayMaskRNoLight == null; + if (flag) + { + ShaderManager.m_transparentGrayMaskRNoLight = XSingleton.singleton.FindShader("TransparentGrayMaskRNoLight", "Custom/Common/TransparentGrayMaskRNoLight"); + } + return ShaderManager.m_transparentGrayMaskRNoLight; + } + } + + public static Shader _color + { + get + { + bool flag = ShaderManager.m_color == null; + if (flag) + { + ShaderManager.m_color = Shader.Find("Custom/Effect/Color"); + } + return ShaderManager.m_color; + } + } + + public static Shader _maskR + { + get + { + bool flag = ShaderManager.m_maskR == null; + if (flag) + { + ShaderManager.m_maskR = XSingleton.singleton.FindShader("CustomShadowR", "Custom/Scene/CustomShadowR"); + } + return ShaderManager.m_maskR; + } + } + + public static Shader _radialBlur + { + get + { + bool flag = ShaderManager.m_radialBlur == null; + if (flag) + { + ShaderManager.m_radialBlur = XSingleton.singleton.FindShader("RadialBlur", "Hidden/radialBlur"); + } + return ShaderManager.m_radialBlur; + } + } + + public static Shader _blackWhite + { + get + { + bool flag = ShaderManager.m_blackWhite == null; + if (flag) + { + ShaderManager.m_blackWhite = XSingleton.singleton.FindShader("BlackWhite", "Hidden/blackWhite"); + } + return ShaderManager.m_blackWhite; + } + } + + public static Shader _gausBlur + { + get + { + bool flag = ShaderManager.m_gausBlur == null; + if (flag) + { + ShaderManager.m_gausBlur = XSingleton.singleton.FindShader("BlurEffectConeTaps", "Hidden/BlurEffectConeTap"); + } + return ShaderManager.m_gausBlur; + } + } + + private static Shader m_skin_effect = null; + + private static Shader m_skin8 = null; + + private static Shader m_skin_blend = null; + + private static Shader m_skin_cutout = null; + + private static Shader m_skin_cutout4 = null; + + private static Shader m_fade_maskR_noLight = null; + + private static Shader m_transparentGrayMaskRNoLight = null; + + private static Shader m_color = null; + + private static Shader m_maskR = null; + + public static Shader _maskG; + + public static Shader _maskB; + + public static Shader _maskA; + + private static Shader m_radialBlur = null; + + private static Shader m_blackWhite = null; + + private static Shader m_gausBlur = null; + + private AssetBundle m_ShaderAB = null; + + public static int _ShaderKeyMainTex; + + public static int _ShaderKeyMaskTex; + + public static int _ShaderKeyIDColor0; + + public static int _ShaderKeyIDHairColor; + + public static int _ShaderKeyIDFace; + + public static int _ShaderKeyIDHair; + + public static int _ShaderKeyIDBody; + + public static int _ShaderKeyIDAlpha; + + public static int[] _ShaderKeyIDSkin = new int[8]; + + public bool Awake(RuntimePlatform editorPlatform) + { + ShaderManager._ShaderKeyMainTex = Shader.PropertyToID("_MainTex"); + ShaderManager._ShaderKeyMaskTex = Shader.PropertyToID("_Mask"); + ShaderManager._ShaderKeyIDColor0 = Shader.PropertyToID("_Color"); + ShaderManager._ShaderKeyIDHairColor = Shader.PropertyToID("_HairColor"); + ShaderManager._ShaderKeyIDFace = Shader.PropertyToID("_Face"); + ShaderManager._ShaderKeyIDHair = Shader.PropertyToID("_Hair"); + ShaderManager._ShaderKeyIDBody = Shader.PropertyToID("_Body"); + ShaderManager._ShaderKeyIDAlpha = Shader.PropertyToID("_Alpha"); + for (int i = 0; i < ShaderManager._ShaderKeyIDSkin.Length; i++) + { + ShaderManager._ShaderKeyIDSkin[i] = Shader.PropertyToID("_Tex" + i.ToString()); + } + string text = null; + RuntimePlatform platform = Application.platform; + if ((int) platform != 8) + { + if ((int)platform != 11) + { + if ((int)editorPlatform != 2) + { + if ((int)editorPlatform != 8) + { + if ((int)editorPlatform == 11) + { + text = string.Format("{0}/update/Android/AssetBundles/shaders.ab", Application.streamingAssetsPath); + } + } + else + { + text = string.Format("{0}/update/iOS/AssetBundles/shaders.ab", Application.streamingAssetsPath); + } + } + else + { + text = string.Format("{0}/update/AssetBundles/shaders.ab", Application.streamingAssetsPath); + } + bool flag = !File.Exists(text); + if (flag) + { + text = null; + } + } + else + { + text = string.Format("{0}!assets/update/Android/AssetBundles/shaders.ab", Application.dataPath); + } + } + else + { + text = string.Format("{0}/Raw/update/iOS/AssetBundles/shaders.ab", Application.dataPath); + } + bool flag2 = !string.IsNullOrEmpty(text); + if (flag2) + { + this.m_ShaderAB = AssetBundle.LoadFromFile(text); + } + return true; + } + + public Shader FindShader(string name0, string name1) + { + Shader shader = null; + bool flag = this.m_ShaderAB != null; + if (flag) + { + shader = this.m_ShaderAB.LoadAsset(name0); + } + bool flag2 = shader == null; + if (flag2) + { + shader = Shader.Find(name1); + } + return shader; + } + + public static void SetColor32(MaterialPropertyBlock mpb, Color32 color, int keyID) + { + mpb.SetColor(keyID, color); + } + + public static void SetColor(MaterialPropertyBlock mpb, Color color, int keyID) + { + mpb.SetColor(keyID, color); + } + + public static void SetTexture(MaterialPropertyBlock mpb, Texture tex, int keyID) + { + bool flag = tex != null; + if (flag) + { + mpb.SetTexture(keyID, tex); + } + } + + public static void SetFloat(MaterialPropertyBlock mpb, float value, int keyID) + { + mpb.SetFloat(keyID, value); + } + } +} -- cgit v1.1-26-g67d0