75 lines
2.5 KiB
Plaintext
75 lines
2.5 KiB
Plaintext
Shader "AibisDream/HuoshanScreenGlitch"
|
|
{
|
|
// 只暴露 6 个宏观旋钮 + 5 个基调,内部十几个系数全部从它们推导。
|
|
// 想加新参数前先想清楚:上一版 40 个属性根本没法调。
|
|
Properties
|
|
{
|
|
[PerRendererData] _MainTex("Sprite Texture", 2D) = "white" {}
|
|
_Color("Tint", Color) = (1,1,1,1)
|
|
|
|
[Header(Drive)]
|
|
_GlitchIntensity("Glitch Intensity (driven by Yarn)", Range(0, 1)) = 0
|
|
_Rage("Rage (driven by Yarn, phosphor to red)", Range(0, 1)) = 0
|
|
_Speed("Signal Refresh Speed", Range(0.05, 4)) = 1
|
|
|
|
[Header(Main Knobs)]
|
|
_Scale("Scale (screen too small then raise this)", Range(0.25, 6)) = 1.6
|
|
_ColorDamage("Color Damage (hue drift and fringing)", Range(0, 2)) = 1
|
|
_Warp("Warp (tear and vertical roll)", Range(0, 2)) = 1
|
|
_Chaos("Chaos (signal dropout rate)", Range(0, 1)) = 0.5
|
|
_Grit("Grit (static and scanlines)", Range(0, 2)) = 1
|
|
_SurgeRate("Surge Rate (emotional pacing)", Range(0.05, 3)) = 0.5
|
|
|
|
[Header(Tone)]
|
|
_PhosphorColor("Phosphor Color (screen self color)", Color) = (0.72, 1, 0.82, 1)
|
|
_RageColor("Rage Phosphor (LOG3 attack)", Color) = (1, 0.188, 0.302, 1)
|
|
_Emissive("Emissive Gain (above 1 feeds Bloom)", Range(0.5, 3)) = 1.5
|
|
_Ghost("Ghost Image", Range(0, 1)) = 0.35
|
|
_BloomBoost("Recover Bloom Boost", Range(0, 3)) = 0.6
|
|
_Vignette("Vignette", Range(0, 1)) = 0.28
|
|
}
|
|
|
|
SubShader
|
|
{
|
|
Tags
|
|
{
|
|
"Queue" = "Transparent"
|
|
"RenderType" = "Transparent"
|
|
"RenderPipeline" = "UniversalPipeline"
|
|
"IgnoreProjector" = "True"
|
|
"CanUseSpriteAtlas" = "True"
|
|
}
|
|
|
|
Cull Off
|
|
ZWrite Off
|
|
Blend SrcAlpha OneMinusSrcAlpha
|
|
|
|
Pass
|
|
{
|
|
Name "HuoshanScreenGlitch"
|
|
Tags { "LightMode" = "Universal2D" }
|
|
|
|
HLSLPROGRAM
|
|
#pragma vertex HuoshanScreenGlitchVert
|
|
#pragma fragment HuoshanScreenGlitchFrag
|
|
#pragma target 3.0
|
|
#include "HuoshanScreenGlitch.hlsl"
|
|
ENDHLSL
|
|
}
|
|
|
|
Pass
|
|
{
|
|
Name "HuoshanScreenGlitchUnlit"
|
|
Tags { "LightMode" = "SRPDefaultUnlit" }
|
|
|
|
HLSLPROGRAM
|
|
#pragma vertex HuoshanScreenGlitchVert
|
|
#pragma fragment HuoshanScreenGlitchFrag
|
|
#pragma target 3.0
|
|
#include "HuoshanScreenGlitch.hlsl"
|
|
ENDHLSL
|
|
}
|
|
}
|
|
FallBack "Sprites/Default"
|
|
}
|