您的位置:首页 > 财经 > 金融 > 福永品牌设计公司_html代码在线_合肥seo网站排名优化公司_爱情链接

福永品牌设计公司_html代码在线_合肥seo网站排名优化公司_爱情链接

2025/2/24 3:33:30 来源:https://blog.csdn.net/qq_39574690/article/details/145019868  浏览:    关键词:福永品牌设计公司_html代码在线_合肥seo网站排名优化公司_爱情链接
福永品牌设计公司_html代码在线_合肥seo网站排名优化公司_爱情链接

 

Shader "Unlit/DiffuseSpecularShader"
{Properties{        _Diffuse ("Diffuse Color", Color) = (1,1,1,1)_Specular ("Specular Color", Color) = (1,1,1,1)_Gloss ("Gloss", float) = 15[Enum(Normal, 1, Half, 2)]_DiffuseMode ("Diffuse Mode", int) = 1[Enum(Phong, 1, Blinn, 2)]_SpecularMode ("Specular Mode", int) = 1}SubShader{Tags { "RenderType"="Opaque" }LOD 100Pass{//设置前向渲染确保光源数据的传递Tags { "LightMode" = "ForwardBase" }CGPROGRAM#pragma vertex vert#pragma fragment frag#include "UnityCG.cginc"//_LightColor0 _WorldSpaceLightPos0全局变量的头文件#include "Lighting.cginc"struct appdata{float4 vertex : POSITION;float3 normal : NORMAL;};struct v2f{                float4 vertex : SV_POSITION;float3 worldNormal : TEXCOORD0;                float3 worldPos : TEXCOORD1;};fixed4 _Diffuse;fixed4 _Specular;float _Gloss;int _DiffuseMode;int _SpecularMode;v2f vert (appdata v){v2f o;o.vertex = UnityObjectToClipPos(v.vertex);o.worldNormal = UnityObjectToWorldNormal(v.normal);o.worldPos = UnityObjectToWorldDir(v.vertex);return o;}fixed4 frag (v2f i) : SV_Target{                float3 worldLightDir = _WorldSpaceLightPos0.xyz;fixed3 diffuse;if(_DiffuseMode == 1){diffuse = _LightColor0.rgb * _Diffuse.rgb * saturate(dot(i.worldNormal, worldLightDir)); //兰伯特漫反射 [-1,1] 暗淡}else{diffuse = _LightColor0.rgb * _Diffuse.rgb * saturate(dot(i.worldNormal, worldLightDir)*0.5+0.5); //半兰伯特漫反射 [0,1] 更亮}float3 worldViewDir = normalize(_WorldSpaceCameraPos.xyz - i.worldPos.xyz);fixed3 phongHighlight;if(_SpecularMode == 1){float3 worldReflectDir = normalize(reflect(-worldLightDir, i.worldNormal));                phongHighlight = _LightColor0.rgb * _Specular.rgb * pow(saturate(dot(worldViewDir, worldReflectDir)), _Gloss); //Phong模型高光反射}else{float3 h = normalize(worldViewDir + worldLightDir);phongHighlight = _LightColor0.rgb * _Specular.rgb * pow(saturate(dot(i.worldNormal, h)), _Gloss);//Blinn模型的高光反射}return fixed4(diffuse + phongHighlight,1);}ENDCG}}
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com