想利用Unity在場景實作一個物理模型的漸現,這里的漸現不是通過透明度實作的整體漸現,而是類似游戲中一把劍從劍柄顯現到劍尖的百分比漸現。求大神助攻。跪謝
uj5u.com熱心網友回復:
Shader "Custom/Fade-FadeIn" {Properties{
_MainTex("Base (RGB)",2D) = "white"{}
_Rate("Rate",Range(0.1,1)) = 1
}
SubShader
{
Cull Off
Tags{"RenderType" = "Geometry"}
Pass
{
Tags{"LightMode" = "ForwardBase"}
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
uniform sampler2D _MainTex;
uniform float4 _MainTex_ST;
uniform float _Rate;
struct v2f
{
float4 pos : SV_POSITION;
float2 uv : TEXCOORD0;
};
v2f vert(appdata_full v)
{
v2f o;
v.vertex.y *= _Rate;
o.pos = mul(UNITY_MATRIX_MVP, v.vertex);
v.texcoord.y *= _Rate;
o.uv = v.texcoord.xy * _MainTex_ST.xy + _MainTex_ST.zw;
return o;
}
fixed4 frag(v2f i):SV_Target
{
fixed3 Albedo = tex2D(_MainTex,i.uv).rgb;
return fixed4(Albedo, 1.0);
}
ENDCG
}
}
}
不知道是不是你要的效果
uj5u.com熱心網友回復:
先感謝,這是Java的代碼,我看不太明白,我要研究一下換成C#試試,
uj5u.com熱心網友回復:
這是Shader,你直接在U3D中創建一個Shder程式,把里面的內容洗掉,把我這個黏貼進去然后創建一個對應的材質球就可以了。
uj5u.com熱心網友回復:
好吧,謝謝啦,我試試。沒怎么接觸過shader。。。見諒
uj5u.com熱心網友回復:
利用物體與相機的距離,可以用簡單的插值來在fragment shader中修改gl_FragColor.a的值(透明度)uj5u.com熱心網友回復:
你這個不行,我弄了試試,你這個直接是壓縮貼圖了轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/17339.html
標籤:Unity3D
上一篇:unity 預制件顯示材質不對
