Shader com efeito de dissolução
2 participantes
Página 1 de 1
Shader com efeito de dissolução
Olá a todos! como vão?
Estava zapeando aqui pelos meus projetos e encontrei esse shader que montei a algum tempo
Ele contém um efeito de "desintegração" por textura, um efeito muito bacana que pode ser adicionado nos projetos de vocês, além de cores secundárias com rgb próprio, espero que gostem!
(esse é um shader que montei a muito tempo, e não me aprofundei muito na criação de Shaders)
Estava zapeando aqui pelos meus projetos e encontrei esse shader que montei a algum tempo
Ele contém um efeito de "desintegração" por textura, um efeito muito bacana que pode ser adicionado nos projetos de vocês, além de cores secundárias com rgb próprio, espero que gostem!
(esse é um shader que montei a muito tempo, e não me aprofundei muito na criação de Shaders)
- Código:
Shader "Dissolver" {
Properties {
_Cutoff ("Alpha cutoff", Range(0,1)) = 0.5
_Color ("Cor Principal", Color) = (1,1,1,1)
_MainTex ("Textura principal", 2D) = "white" {}
_Color2 ("Cor Secundária", Color) = (0.5,0.5,0.5,1)
_Tex2 ("Textura Secundária", 2D) = "white" {}
_SecuntaryColorAmount("Influência da cor secundária", Range(0.0000001,1)) = 0.0
_DissolveTex("DissolveTex", 2D) = "white" {}
_DissolveColor("DissolveColor", Color) = (1,1,1,1)
_DissolveAmount("Dissolve", Range(0.0000001,1)) = 0.0
}
SubShader {
Tags {"Queue"="AlphaTest" "IgnoreProjector"="True" "RenderType"="TransparentCutout"}
LOD 200
Cull off
CGPROGRAM
#pragma surface surf Lambert alphatest:_Cutoff
sampler2D _MainTex;
fixed4 _Color;
sampler2D _Tex2;
fixed4 _Color2;
struct Input {
float2 uv_MainTex;
};
sampler2D _DissolveTex;
float _DissolveAmount;
fixed4 _DissolveColor;
float _SecuntaryColorAmount;
void surf (Input IN, inout SurfaceOutput o) {
// Albedo comes from a texture tinted by color
fixed4 c = tex2D (_MainTex, IN.uv_MainTex) * _Color;
fixed4 t = tex2D (_MainTex, IN.uv_MainTex)* _Color - tex2D (_Tex2, IN.uv_MainTex) * _Color;
fixed4 s = tex2D (_Tex2, IN.uv_MainTex) * _Color2;
fixed4 s2 = tex2D (_Tex2, IN.uv_MainTex);
fixed4 c2 = tex2D (_MainTex, IN.uv_MainTex);
//Dissolver
fixed4 d = tex2D (_DissolveTex, IN.uv_MainTex);
fixed4 e = tex2D (_DissolveTex, IN.uv_MainTex) - (_DissolveAmount * _DissolveColor);
o.Albedo = (c.rgb / (e.rgb / _DissolveAmount)) + /*Setar primeira cor (c.rgb - s2.rgb) */ (c.rgb);
//o.Albedo = ((t.rgb + s.rgb) * _SecuntaryColorAmount) + (c.rgb * (1 -_SecuntaryColorAmount));
clip(d.rgb - _DissolveAmount);
o.Alpha = c.a;
clip(c.a - 1);
}
ENDCG
}
Fallback "Transparent/Cutout/VertexLit"
}
Re: Shader com efeito de dissolução
Ander, tudo bem?
Como eu faria para aplicar isso? criei o shader, aí eu coloco no material?
Como eu faria para aplicar isso? criei o shader, aí eu coloco no material?
fabricadegame- Membro
- PONTOS : 1966
REPUTAÇÃO : 11
Respeito as regras :
Re: Shader com efeito de dissolução
Vc precisa de uma textura,a e de um mapa UV para dissolver, então vc pode alterar no slider para isso.fabricadegame escreveu:Ander, tudo bem?
Como eu faria para aplicar isso? criei o shader, aí eu coloco no material?
Tópicos semelhantes
» [TUTORIAL] Efeito Outlined (Sublinhado) com shader
» Tem Como Fazer um Shader com o Shader Graph que Deixa a Escala Infinita?
» [TUTORIAL] Programando um shader URP simples utilizando Shader Graph
» Problema com o Shader (Shader Bloqueado)
» SHADER
» Tem Como Fazer um Shader com o Shader Graph que Deixa a Escala Infinita?
» [TUTORIAL] Programando um shader URP simples utilizando Shader Graph
» Problema com o Shader (Shader Bloqueado)
» SHADER
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos