- Home /
,I am Trying to make A Colored Vignette Effect and I don't know how
// my goal is to make a shader something like this
https://www.leovst.com/shaders/
Can someone help me achieved this i will need to access this shader throug matterial later so if someone could made the sahder please add some comments too thank you so much.
better if the vignette Effect is square
Shader "Custom/Aura"
{
Properties
{
_MainTex("Texture", 2D) = "white" {}
_Color("Color", Color) = (1, 1, 1, 1)![alt text][1]
_VRadius("Vignette Radius", Range(0.0, 1.0)) = 1
_VSoft("Vignette Softness", Range(0.0, 1.0)) = 0.5
}
SubShader
{
Pass
{
CGPROGRAM
#pragma vertex vert_img
#pragma fragment frag
#include "UnityCG.cginc"
// Properties
sampler2D _MainTex;
float4 _Color;
float4 _GlitchColor;
float _VRadius;
float _VSoft;
float4 frag(v2f_img input) : COLOR
{
// sample texture for color
float4 base = tex2D(_MainTex, input.uv);
// average original color and new color
base = base * _Color;
// I want to change the color of the Vignette itself not the base color
// I want to change the Black Vignette to other color
// add vignette
float distFromCenter = distance(input.uv.xy, float2(0.5, 0.5));
float vignette = smoothstep(_VRadius, _VRadius - _VSoft, distFromCenter);
base = saturate(base * vignette);
return base;
}
ENDCG
}
}
}
, Shader "Custom/Aura" { Properties { _MainTex("Texture", 2D) = "white" {} _Color("Color", Color) = (1, 1, 1, 1) _VRadius("Vignette Radius", Range(0.0, 1.0)) = 1 _VSoft("Vignette Softness", Range(0.0, 1.0)) = 0.5 }
SubShader
{
Pass
{
CGPROGRAM
#pragma vertex vert_img
#pragma fragment frag
#include "UnityCG.cginc"
// Properties
sampler2D _MainTex;
float4 _Color;
float4 _GlitchColor;
float _VRadius;
float _VSoft;
float4 frag(v2f_img input) : COLOR
{
// sample texture for color
float4 base = tex2D(_MainTex, input.uv);
// average original color and new color
base = base * _Color;
// I want to change the color of the Vignette itself not the base color
// I want to change the Black Vignette to other color
// add vignette
float distFromCenter = distance(input.uv.xy, float2(0.5, 0.5));
float vignette = smoothstep(_VRadius, _VRadius - _VSoft, distFromCenter);
base = saturate(base * vignette);
return base;
}
ENDCG
}
}
}
failattemp.png
(100.4 kB)
Comment
Your answer
Follow this Question
Related Questions
Material doesn't have a color property '_Color' 4 Answers
How to remove a color from texture using Shader? 0 Answers
Colors tint at shader 0 Answers
InnerGlow Shader for Polygons 0 Answers