当前位置: 首页 > news >正文

建设网站的申请网站的联系我们怎么做

建设网站的申请,网站的联系我们怎么做,济南高新网站建设,wordpress怎样安装1、让透明度测试Shader投射阴影 #xff08;1#xff09;同样我们使用FallBack的形式投射阴影#xff0c;但是需要注意的是#xff0c;FallBack的内容为#xff1a;Transparent / Cutout / VertexLit#xff0c;该默认Shader中会把裁剪后的物体深度信息写入到 阴影映射纹…1、让透明度测试Shader投射阴影 1同样我们使用FallBack的形式投射阴影但是需要注意的是FallBack的内容为Transparent / Cutout / VertexLit该默认Shader中会把裁剪后的物体深度信息写入到 阴影映射纹理和摄像机深度图中 注意使用该默认Shader计算投射阴影时需要使用_Cutwoff属性 和 _Color属性来进行相关计算因此我们必须保证我们的Shader当中有名为_Cutoff的阈值属性 和 _Color的漫反射颜色属性否则无法得到正确阴影结果 2为了得到正确的阴影效果我们需要将该物体的Cast Shadows投射阴影属性设置为Two Sided双面强制让Unity计算阴影隐射纹理时计算所有面的深度信息。因为如果不设置默认将物体渲染到阴影隐射纹理和摄像机深度图时只会考虑物体的正面背对光源的面不会参与计算左图设置为双面后即可参与计算得到正确的结果右图。 3、让透明度测试Shader接收阴影 主要分5步骤 1编译指令#pragma multi_compile_fwdbase 用于帮助我们编译所有变体 并且保证衰减相关光照变量能够正确赋值到对应的内置变量中 2包含内置文件 #include AutoLight.cginc 3结构体中声明阴影坐标宏SHADOW_COORDS(n) n为下一个可用的插值寄存器的索引值结构体前面有几个TEXCOORD就填几 4坐标转换宏TRANSFER_SHADOW(o); 5Unity光照衰减计算宏UNITY_LIGHT_ATTENUATION(atten, v2f结构体, 顶点世界坐标位置); Shader ShaderProj/4/TranparentTest_Both {Properties{_MainTex(MainTex, 2D) {}_Color(MainColor, Color) (1,1,1,1)_SpecularColor(SpecularColor, Color) (1,1,1,1)_SpecularNum(SpecularNum, Range(0,20)) 15_Cutoff(CutOff, Range(0,1)) 0 // 透明度测试阈值}SubShader{Tags{QueueAlphaTestIgnoreProjectorTrueRenderTypeTransparentCutout}Pass{Tags { LightModeForwardBase }// 关闭剔除正面背面都被渲染Cull OffCGPROGRAM#pragma vertex vert#pragma fragment frag#pragma multi_compile_fwdbase#include UnityCG.cginc#include Lighting.cginc#include AutoLight.cgincsampler2D _MainTex;float4 _MainTex_ST;fixed4 _Color;fixed4 _SpecularColor;float _SpecularNum;fixed _Cutoff;struct v2f{float4 pos:SV_POSITION;float2 uv:TEXCOORD0;float3 wNormal:NORMAL;float3 wPos:TEXCOORD01;SHADOW_COORDS(2)};fixed3 getLambertColor(float3 normal, float3 lightDir, fixed3 albedo){fixed3 color _LightColor0 * albedo * max(0, dot(lightDir, normal));return color;}fixed3 getSpecularColor(float3 worldPos, float3 normal, float3 lightDir){//float3 viewDir normalize(_WorldSpaceCameraPos - worldPos);float3 viewDir normalize(UnityWorldSpaceViewDir(worldPos));float3 halfAngle normalize(viewDir lightDir);fixed3 color _LightColor0 * _SpecularColor * pow(max(0, dot(normal, halfAngle)), _SpecularNum);return color;}v2f vert (appdata_base v){v2f data;data.pos UnityObjectToClipPos(v.vertex);data.wNormal UnityObjectToWorldNormal(v.normal);data.wPos mul(unity_ObjectToWorld, v.vertex);data.uv TRANSFORM_TEX(v.texcoord, _MainTex);//data.uv v.texcoord.xy * _MainTex_ST.xy _MainTex_ST.zw;TRANSFER_SHADOW(data)return data;}fixed4 frag (v2f i) : SV_Target{// 透明度测试fixed4 texColor tex2D(_MainTex, i.uv);clip(texColor.a - _Cutoff);//计算光照衰减和阴影衰减的宏UNITY_LIGHT_ATTENUATION(atten, i, i.wPos)fixed3 albedo texColor.rgb * _Color.rgb; float3 lightDir normalize(_WorldSpaceLightPos0);fixed3 lambertColor getLambertColor(i.wNormal, lightDir, albedo);fixed3 specularColor getSpecularColor(i.wPos, i.wNormal, lightDir);fixed3 color (lambertColor specularColor) * atten UNITY_LIGHTMODEL_AMBIENT.rgb * albedo;return fixed4(color, 1);}ENDCG}}Fallback Transparent/Cutout/VertexLit }3、透明度混合处理阴影 根据透明度测试的思路我们如果想要物体产生阴影效果无非就两步 1投射阴影     在FallBack中关联内置的对应ShaderTransparent/VertexLit 2接受阴影     在Shader中书写计算阴影衰减值的相关代码 因此对于透明度混合的Shader也会使用同样的思路去制作 但是由于透明度混合需要关闭深度写入而阴影相关的处理需要用到深度值参与计算因此Unity中从性能方面考虑要计算半透明物体的的阴影表现效果是相对复杂的所有的内置半透明Shader都不会产生阴影效果比如 Transparent/ VertexLit 因此 2 - 1.透明混合Shader想要 投射阴影时 不管你在FallBack中写入哪种自带的半透明混合Shader都不会有投射阴影的效果因为深度不会写入 2 - 2.透明混合Shader想要 接受阴影时 Unity内置关于阴影接收计算的相关宏不会计算处理透明混合Shader【混合因子 设置为半透明效果(Blend SrcAlpha OneMinusSrcAlpha)的Shader】 因为透明混合物体的深度值和遮挡关系无法直接用传统的深度缓冲和阴影贴图来处理 结论Unity中不会直接为透明度混合Shader处理阴影 4、透明度混合强制生成阴影 在FallBack中设置一个非透明Shader比如VertexLit、Diffuse等用其中的灯光模式设置为阴影投射的渲染通道来参与阴影映射纹理的计算把该物体当成一个实体物体处理但是这种效果并不真实不建议使用
http://www.w-s-a.com/news/145915/

相关文章:

  • 网站建设求职具备什么30岁学网站开发
  • 官方网站minecraft北京低价做网站
  • 网站建设报价兴田德润机械加工网络接单
  • 免费的推广网站安卓app制作平台
  • 长春火车站附近美食建设信用卡银行积分兑换商城网站
  • 网站提交网址如何备份wordpress网页
  • 龙腾盛世网站建设医院管理系统
  • 网站切换图片做背景怎么写外贸营销邮件主题一般怎么写
  • 基于html5的网站开发wordpress主题工具
  • php网站开发的成功经历公司网站现状
  • 软件发布网站源码中国企业公示信息网
  • flash 的网站网站型销售怎么做
  • 营销型网站单页网站的域名和密码
  • 建网站保定seo自动发布外链工具
  • 做公众号关注网站做课件用这15大网站
  • 怎么制作公司自己网站店铺设计软件手机版
  • 深圳网站关键词优化公司哪家好怎么选择锦州网站建设
  • 标准网站优势项目合作网站
  • 无人机东莞网站建设wordpress站群管理破解版
  • 深圳企业官网网站建设教育培训学校
  • 医疗网站建设及优化西安网站建设开发公司
  • 网站建设详细流程ydg wordpress theme
  • 湖北黄石域名注册网站建设编程网站项目做哪个比较好
  • 旺道网站排名优化咸阳建设网站
  • 建设一个类似淘宝的网站律师做推广宣传的网站
  • 东阳网站建设方案网站建设asp
  • 模板网站建设一条龙平面设计师招聘信息
  • 制作一个网站流程企业建设网站的母的
  • 九州建网站网页游戏平台代理
  • 培训课程网站网上下载的网站模板怎么用