今天分享下unity中3D模型的一些Shader。
先来个最简单的,就是上下滚动的纯色流光。

代码:
Shader "JackyShader/flashShader"
{
Properties
{
_MainTex ("Texture", 2D) = "white" {}
_centerRange("CenterRange",Range(-2.0, 1)) = 0.5
_flashColor("FlashColor", Color) = (1, 0, 0, 1)
_flashHeight("FlashHeight",Float) = 0.1
}
SubShader
{
Tags { "RenderType"="Opaque" }
LOD 100
Pass
{
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
// make fog work
#pragma multi_compile_fog
#include "UnityCG.cginc"
struct appdata
{
float4 vertex : POSITION;
float2 uv : TEXCOORD0;
};
struct v2f
{
float2 uv : TEXCOORD0;
UNITY_FOG_COORDS(1)
float4 vertex : SV_POSITION;
float objz: TEXCOORD1;
};
sampler2D _MainTex;
float4 _MainTex_ST;
float _centerRange;
float4 _flashColor;
float _flashHeight;
v2f vert (ap

本文介绍了如何在Unity中创建3D模型的流光Shader。从简单的上下滚动纯色流光开始,逐步进阶到带有颜色过渡和使用流光贴图的效果。通过调整代码,展示了如何控制流光的位置、颜色过渡以及使用时间变量实现动态效果。最后提到,如果想要流光特定部位显示,可以通过美术提供的黑白贴图来实现,文中并未展示这一过程。
最低0.47元/天 解锁文章
5082





