日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

UnityShader太空中的大气层效果

發布時間:2024/1/1 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 UnityShader太空中的大气层效果 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Shader "Custom/Atmosphere Glow" {Properties{//大氣層的顏色_AtmoColor("Glow Color", Color) = (1,1,1,1)//大氣層反射效果的強化量_InnterRingFactor("Glow Factor", Float) = 5//大氣層相對于地表的偏移_Offset("Vertex Offset", Float) = 0}SubShader{Tags{"IgnoreProjector" = "True""Queue" = "Transparent""RenderType" = "Transparent"}Pass{Blend One OneAlphaTest Greater 0.1ColorMask RGBACull Back Lighting Off ZWrite Off Fog{ Color(0,0,0,0) }CGPROGRAM#pragma vertex vert#pragma fragment frag#pragma glsl#pragma target 3.0uniform float _InnterRingFactor;uniform float4 _AtmoColor;uniform float _Offset;struct VertexInput{float4 vertex : POSITION;float3 normal : NORMAL;};struct VertexOutput{float4 pos : SV_POSITION;float4 posWorld : TEXCOORD0;float3 normalDir : TEXCOORD1;};VertexOutput vert(VertexInput v){VertexOutput o;//獲得頂點的發現方向o.normalDir = normalize(mul(unity_ObjectToWorld,float4(v.normal, 0)).xyz);//對原來的頂點進行偏移v.vertex.xyz += (_Offset*v.normal);//在世界中的頂點信息o.posWorld = mul(unity_ObjectToWorld, v.vertex);//轉換后得到偏移后的頂點信息o.pos = mul(UNITY_MATRIX_MVP, v.vertex);return o;}float4 frag(VertexOutput i) : COLOR{//視角方向float3 viewDirection = normalize(_WorldSpaceCameraPos.xyz - i.posWorld.xyz);//項目里沒有使用光源,shader中模擬(0,0,0)點為太陽光照(點光源)float3 lightDirection = normalize((0,0,0) - i.posWorld.xyz);float ndl = dot(i.normalDir, lightDirection);float ndv = dot(i.normalDir, viewDirection);//實現的效果為內側描邊//這里當ndv為正數時,指數越大,效果越小,ndv為負數時1-ndv為大于1的數,指數越大,效果越強float3 innerRing = saturate(_AtmoColor.xyz * pow(1 - ndv,_InnterRingFactor)) ;//光源方向參與到運算中float3 finalColor = saturate(pow(ndl + max(0.2, dot(-lightDirection, viewDirection)), 3)) * (innerRing * 2) ;return float4(finalColor, 1);}ENDCG}} }


效果對比如下:




總結

以上是生活随笔為你收集整理的UnityShader太空中的大气层效果的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。