HeavenStudio/Assets/Shaders/SpecularGlow.shader
wookywok 2128310b92
More Airboarder visual touchups/fixes (#892)
* Fixed Airboarder bopping, reworked floor texture

- Airboarder bops will no longer interrupt whiff animations or YEAAAAAAAH LET'S GO
- The floor now uses a custom shader that makes the textures much more vibrant

* Added glow effect to charge animation
2024-04-23 14:57:27 +00:00

99 lines
7 KiB
GLSL

// Made with Amplify Shader Editor v1.9.2.2
// Available at the Unity Asset Store - http://u3d.as/y3X
Shader "Specular Glow"
{
Properties
{
_Albedo("Albedo", 2D) = "white" {}
_Specular("Specular", 2D) = "white" {}
_EmissionTexture("Emission Texture", 2D) = "white" {}
_AlbedoColor("Albedo Color", Color) = (1,1,1,1)
_SpecularColor("Specular Color", Color) = (0.2156863,0.2156863,0.2156863,0)
_Emission("Emission", Color) = (1,1,1,1)
_Smoothness("Smoothness", Range( 0 , 100)) = 0
_EmissionTextureGlow("Emission Texture Glow", Range( 0 , 1)) = 0
[HideInInspector] _texcoord( "", 2D ) = "white" {}
[HideInInspector] __dirty( "", Int ) = 1
}
SubShader
{
Tags{ "RenderType" = "Opaque" "Queue" = "Geometry+0" "IsEmissive" = "true" }
Cull Back
CGPROGRAM
#pragma target 3.0
#pragma surface surf StandardSpecular keepalpha addshadow fullforwardshadows exclude_path:deferred
struct Input
{
float2 uv_texcoord;
};
uniform sampler2D _Albedo;
uniform float4 _Albedo_ST;
uniform float4 _AlbedoColor;
uniform sampler2D _EmissionTexture;
uniform float4 _EmissionTexture_ST;
uniform float _EmissionTextureGlow;
uniform float4 _Emission;
uniform sampler2D _Specular;
uniform float4 _Specular_ST;
uniform float4 _SpecularColor;
uniform float _Smoothness;
void surf( Input i , inout SurfaceOutputStandardSpecular o )
{
float2 uv_Albedo = i.uv_texcoord * _Albedo_ST.xy + _Albedo_ST.zw;
o.Albedo = ( tex2D( _Albedo, uv_Albedo ) * _AlbedoColor ).rgb;
float2 uv_EmissionTexture = i.uv_texcoord * _EmissionTexture_ST.xy + _EmissionTexture_ST.zw;
float4 color33 = IsGammaSpace() ? float4(1,1,1,1) : float4(1,1,1,1);
o.Emission = ( ( tex2D( _EmissionTexture, uv_EmissionTexture ) + ( color33.a * _EmissionTextureGlow ) ) * _Emission ).rgb;
float2 uv_Specular = i.uv_texcoord * _Specular_ST.xy + _Specular_ST.zw;
float4 temp_output_6_0 = ( tex2D( _Specular, uv_Specular ) * _SpecularColor );
o.Specular = temp_output_6_0.rgb;
o.Smoothness = ( temp_output_6_0 * _Smoothness * 0.1 ).r;
o.Alpha = 1;
}
ENDCG
}
Fallback "Diffuse"
CustomEditor "ASEMaterialInspector"
}
/*ASEBEGIN
Version=19202
Node;AmplifyShaderEditor.StandardSurfaceOutputNode;0;0,0;Float;False;True;-1;2;ASEMaterialInspector;0;0;StandardSpecular;Specular Glow;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;False;Back;0;False;;0;False;;False;0;False;;0;False;;False;0;Opaque;0.5;True;True;0;False;Opaque;;Geometry;ForwardOnly;12;all;True;True;True;True;0;False;;False;0;False;;255;False;;255;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;0;False;;False;2;15;10;25;False;0.5;True;0;0;False;;0;False;;0;0;False;;0;False;;0;False;;0;False;;0;False;0;0,0,0,0;VertexOffset;True;False;Cylindrical;False;True;Relative;0;;-1;-1;-1;-1;0;False;0;0;False;;-1;0;False;;0;0;0;False;0.1;False;;0;False;;False;17;0;FLOAT3;0,0,0;False;1;FLOAT3;0,0,0;False;2;FLOAT3;0,0,0;False;3;FLOAT3;0,0,0;False;4;FLOAT;0;False;5;FLOAT;0;False;6;FLOAT3;0,0,0;False;7;FLOAT3;0,0,0;False;8;FLOAT;0;False;9;FLOAT;0;False;10;FLOAT;0;False;13;FLOAT3;0,0,0;False;11;FLOAT3;0,0,0;False;12;FLOAT3;0,0,0;False;16;FLOAT4;0,0,0,0;False;14;FLOAT4;0,0,0,0;False;15;FLOAT3;0,0,0;False;0
Node;AmplifyShaderEditor.SamplerNode;4;-561.849,-379.6918;Inherit;True;Property;_Specular;Specular;1;0;Create;True;0;0;0;False;0;False;-1;None;None;True;0;False;white;Auto;False;Object;-1;Auto;Texture2D;8;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;6;FLOAT;0;False;7;SAMPLERSTATE;;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.ColorNode;5;-275.5963,-428.9292;Inherit;False;Property;_SpecularColor;Specular Color;4;0;Create;True;0;0;0;False;0;False;0.2156863,0.2156863,0.2156863,0;0,0,0,0;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.ColorNode;2;-614.7783,134.9062;Inherit;False;Property;_AlbedoColor;Albedo Color;3;0;Create;True;0;0;0;False;0;False;1,1,1,1;0,0,0,0;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.SamplerNode;1;-778.9177,-86.56062;Inherit;True;Property;_Albedo;Albedo;0;0;Create;True;0;0;0;False;0;False;-1;None;None;True;0;False;white;Auto;False;Object;-1;Auto;Texture2D;8;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;6;FLOAT;0;False;7;SAMPLERSTATE;;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;3;-384.1176,-12.8627;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;6;-166.1549,-119.7796;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;21;15.1507,-131.5531;Inherit;False;3;3;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;2;FLOAT;0;False;1;COLOR;0
Node;AmplifyShaderEditor.RangedFloatNode;20;-494.1024,-160.6708;Inherit;False;Property;_Smoothness;Smoothness;6;0;Create;True;0;0;0;False;0;False;0;0;0;100;0;1;FLOAT;0
Node;AmplifyShaderEditor.RangedFloatNode;23;-247.8493,-40.5531;Inherit;False;Constant;_Float0;Float 0;7;0;Create;True;0;0;0;False;0;False;0.1;0;0;0;0;1;FLOAT;0
Node;AmplifyShaderEditor.ColorNode;8;384.8788,-293.1961;Inherit;False;Property;_Emission;Emission;5;0;Create;True;0;0;0;False;0;False;1,1,1,1;0,0,0,0;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.SamplerNode;7;80.382,-561.5367;Inherit;True;Property;_EmissionTexture;Emission Texture;2;0;Create;True;0;0;0;False;0;False;-1;None;None;True;0;False;white;Auto;False;Object;-1;Auto;Texture2D;8;0;SAMPLER2D;;False;1;FLOAT2;0,0;False;2;FLOAT;0;False;3;FLOAT2;0,0;False;4;FLOAT2;0,0;False;5;FLOAT;1;False;6;FLOAT;0;False;7;SAMPLERSTATE;;False;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;9;292.3847,-114.4826;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;COLOR;0,0,0,0;False;1;COLOR;0
Node;AmplifyShaderEditor.ColorNode;33;408.1147,-692.324;Inherit;False;Constant;_AlphaSamlple;Alpha Samlple;8;0;Create;True;0;0;0;False;0;False;1,1,1,1;1,1,1,0;True;0;5;COLOR;0;FLOAT;1;FLOAT;2;FLOAT;3;FLOAT;4
Node;AmplifyShaderEditor.SimpleMultiplyOpNode;40;446.2459,-535.1497;Inherit;True;2;2;0;FLOAT;0;False;1;FLOAT;0;False;1;FLOAT;0
Node;AmplifyShaderEditor.SimpleAddOpNode;42;185.1021,-298.8689;Inherit;False;2;2;0;COLOR;0,0,0,0;False;1;FLOAT;0;False;1;COLOR;0
Node;AmplifyShaderEditor.RangedFloatNode;34;639.1148,-455.3241;Inherit;False;Property;_EmissionTextureGlow;Emission Texture Glow;7;0;Create;True;0;0;0;False;0;False;0;0;0;1;0;1;FLOAT;0
WireConnection;0;0;3;0
WireConnection;0;2;9;0
WireConnection;0;3;6;0
WireConnection;0;4;21;0
WireConnection;3;0;1;0
WireConnection;3;1;2;0
WireConnection;6;0;4;0
WireConnection;6;1;5;0
WireConnection;21;0;6;0
WireConnection;21;1;20;0
WireConnection;21;2;23;0
WireConnection;9;0;42;0
WireConnection;9;1;8;0
WireConnection;40;0;33;4
WireConnection;40;1;34;0
WireConnection;42;0;7;0
WireConnection;42;1;40;0
ASEEND*/
//CHKSM=09FE79B78A6BE2E8E56AFE063A52AF77811EE807