在这个看脸的时代,手机美颜已经成为了日常生活的必备技能。然而,你知道吗?除了美颜,还有更多神奇的UG外观插件可以让我们手机中的头像、图片改头换面,焕然一新。今天,就让我们一起来聊聊这些能改头换面的UG外观插件吧!
UG外观插件:什么是它们?
首先,我们来了解一下什么是UG外观插件。UG(Unity Graphics)是Unity引擎中负责图形渲染的模块。而UG外观插件,就是针对Unity引擎开发的,可以改变物体外观的插件。通过这些插件,我们可以轻松地给手机中的头像、图片等添加各种效果,实现改头换面的魔法。
改头换面的利器:热门UG外观插件推荐
1. Toon Shader
Toon Shader是一款非常受欢迎的UG外观插件,它可以将物体渲染成卡通风格。这款插件提供了丰富的参数调节,让我们可以轻松地调整卡通效果的程度,让图片呈现出独特的艺术感。
Shader "Custom/ToonShader"
{
Properties
{
_MainTex ("Texture", 2D) = "white" {}
_Color ("Color", Color) = (1,1,1,1)
}
SubShader
{
Tags { "RenderType"="Opaque" }
LOD 100
Pass
{
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
struct appdata
{
float4 vertex : POSITION;
float2 uv : TEXCOORD0;
};
struct v2f
{
float2 uv : TEXCOORD0;
float4 vertex : SV_POSITION;
};
sampler2D _MainTex;
float4 _Color;
v2f vert (appdata v)
{
v2f o;
o.vertex = UnityObjectToClipPos(v.vertex);
o.uv = TRANSFORM_TEX(v.uv, _MainTex);
return o;
}
fixed4 frag (v2f i) : SV_Target
{
fixed4 col = tex2D(_MainTex, i.uv);
return lerp(col, _Color, 0.5);
}
ENDCG
}
}
}
2. Outline Shader
Outline Shader是一款可以给物体添加轮廓线的UG外观插件。通过调整轮廓线的粗细、颜色等参数,我们可以让图片呈现出更加立体的效果。
Shader "Custom/OutlineShader"
{
Properties
{
_MainTex ("Texture", 2D) = "white" {}
_OutlineColor ("Outline Color", Color) = (0,0,0,1)
_OutlineWidth ("Outline Width", Range(0.1, 5.0)) = 1.0
}
SubShader
{
Tags { "RenderType"="Opaque" }
LOD 100
Pass
{
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
struct appdata
{
float4 vertex : POSITION;
float2 uv : TEXCOORD0;
};
struct v2f
{
float2 uv : TEXCOORD0;
float4 vertex : SV_POSITION;
};
sampler2D _MainTex;
float4 _OutlineColor;
float _OutlineWidth;
v2f vert (appdata v)
{
v2f o;
o.vertex = UnityObjectToClipPos(v.vertex);
o.uv = TRANSFORM_TEX(v.uv, _MainTex);
return o;
}
fixed4 frag (v2f i) : SV_Target
{
fixed4 col = tex2D(_MainTex, i.uv);
fixed4 outline = _OutlineColor * step(_OutlineWidth, length(i.vertex));
return col + outline;
}
ENDCG
}
}
}
3. Bump Map Shader
Bump Map Shader是一款可以给物体添加凹凸感的UG外观插件。通过调整凹凸贴图和颜色等参数,我们可以让图片呈现出更加真实的效果。
Shader "Custom/BumpMapShader"
{
Properties
{
_MainTex ("Texture", 2D) = "white" {}
_BumpMap ("Bump Map", 2D) = "bump" {}
_Color ("Color", Color) = (1,1,1,1)
}
SubShader
{
Tags { "RenderType"="Opaque" }
LOD 100
Pass
{
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
struct appdata
{
float4 vertex : POSITION;
float2 uv : TEXCOORD0;
};
struct v2f
{
float2 uv : TEXCOORD0;
float4 vertex : SV_POSITION;
float3 worldNormal : TEXCOORD1;
};
sampler2D _MainTex;
sampler2D _BumpMap;
float4 _Color;
v2f vert (appdata v)
{
v2f o;
o.vertex = UnityObjectToClipPos(v.vertex);
o.uv = TRANSFORM_TEX(v.uv, _MainTex);
o.worldNormal = normalize(mul(unity_ObjectToWorld, float4(v.vertex.xyz, 1.0)).xyz);
return o;
}
fixed4 frag (v2f i) : SV_Target
{
float3 bumpNormal = tex2D(_BumpMap, i.uv).rgb * 2.0 - 1.0;
float3 normal = normalize(i.worldNormal + bumpNormal * 0.1);
fixed3 lightDir = normalize(float3(1, 1, 1));
float3 color = pow(dot(normal, lightDir), 2) * _Color.rgb;
return fixed4(color, 1);
}
ENDCG
}
}
}
总结
通过以上介绍,相信大家对手机改头换面的UG外观插件有了更深入的了解。这些插件不仅可以让我们轻松地给图片添加各种效果,还可以为我们的创作带来更多的灵感。快来尝试一下吧,让你的手机照片焕然一新!
