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

web服务器做网站seo实战培训学校

web服务器做网站,seo实战培训学校,网站建设有模板吗,网站用什么东西做闲谈 相信大家在日常工作中发现了一个问题 , urp下虽然可以做到3个Pass 去写我们想要的效果,但是,不能合批(不能合批,那不是我们CPU要干冒烟~!) 好家伙,熊猫老师的偏方来了 &#x…

  闲谈 

       相信大家在日常工作中发现了一个问题 , urp下虽然可以做到3个Pass 去写我们想要的效果,但是,不能合批(不能合批,那不是我们CPU要干冒烟~!)

      好家伙,熊猫老师的偏方来了 ,教大家如何在URP渲染管线下做到多pass也能合批,干货满满。  

一:合并公共预设 

        方便我们多Pass状态下 ,更快的实现,也能让代码更加专业。

如图所示: 

     我们在Subshader下用 HLSLINCLUDE  和 ENDHLSL 去实现。

 其次 咱们在第二个Pass  “影子渲染pass”里面添加Tags  并对LightMode 复制渲染层为 “XiongMaoWuDao”

如图所示:

    

   Pass{Name "XiongMaoWuDao"Tags{"LightMode" = "XiongMaoWuDao"}

二:URP  Add Renderer Feature 

如图步骤:

 

添加Renderer Feature  设置如下:

   

好了,现在我们来看看多物件下影子Pass是否合批。

上才艺:

  

Shader "XiongMaoWuDao/Shadow"
{Properties{[MainColor] _BaseColor("BaseColor", Color) = (1,1,1,1)[MainTexture] _BaseMap("BaseMap", 2D) = "white" {}//影子处理//影子淡出处理_ShadowColor("Color", Color) = (0, 0, 0, 1)_LightDir ("Light Direction", Vector) = (0, 1, 0, 0)_PlaneY ("Plane Height", Float) = 0	_ShadowFalloff ("ShadowFalloff ",Range (0,1)) = 0.5}SubShader{Tags { "RenderType" = "Opaque" "RenderPipeline" = "UniversalPipeline" "Queue" = "Opaque"}HLSLINCLUDE#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"TEXTURE2D(_BaseMap);SAMPLER(sampler_BaseMap);CBUFFER_START(UnityPerMaterial)float4 _BaseMap_ST;half4 _BaseColor;float4 _ShadowColor;half3 _LightDir;half _PlaneY;half _ShadowFalloff;CBUFFER_ENDENDHLSLpass {Name "Forward"Tags {}HLSLPROGRAM#pragma vertex vert#pragma fragment frag#pragma multi_compile_instancingstruct appdata{float4 vertex : POSITION;float2 uv : TEXCOORD0;UNITY_VERTEX_INPUT_INSTANCE_ID};struct v2f{float2 uv : TEXCOORD0;   float4 vertex : SV_POSITION;UNITY_VERTEX_INPUT_INSTANCE_ID};v2f vert (appdata v){v2f o;UNITY_SETUP_INSTANCE_ID(v);UNITY_TRANSFER_INSTANCE_ID(v, o);o.vertex = TransformObjectToHClip(v.vertex.xyz);;o.uv = TRANSFORM_TEX(v.uv, _BaseMap);return o;}half4 frag (v2f i) : SV_Target{UNITY_SETUP_INSTANCE_ID(i);return SAMPLE_TEXTURE2D(_BaseMap, sampler_BaseMap, i.uv) * _BaseColor;}ENDHLSL}Pass{Name "XiongMaoWuDao"Tags{"LightMode" = "XiongMaoWuDao"}//添加模板缓冲区是解决影子重叠问题(降低透明度就能发现)Stencil{Ref 1  //和模板缓冲区的值进行比较。Comp NotEqual   //比较函数, 决定参考值和模板缓冲区的值如何比较 (是否相等) NotEqualPass Replace   //模板测试通过时候的操作 。  Replace 模板缓冲区中的值设为参考值。ReplaceFail Keep    //模板测试失败时候的操作 。    keep是保持缓冲区当前的值//ZFail Keep  }Blend SrcAlpha OneMinusSrcAlpha//	ZWrite off//     Offset -1 , 0HLSLPROGRAM#pragma vertex vert#pragma fragment fragstruct appdata{float4 vertex : POSITION;float2 uv : TEXCOORD0;};struct v2f{float2 uv : TEXCOORD0;   float4 vertex : SV_POSITION;float4 color : COLOR;};//阴影方向计算。float3 PlanarShadowPos(float3 posWS){float3 L = normalize(_LightDir);float3 N = float3(0, 1, 0);float d1 = dot(L, N);float d2 = posWS.y - _PlaneY;// 阴影坐标沿法线方向偏移一点,防止与平面重叠时出现z-fighting的问题float3 offsetByNormal = N * 0.001;return posWS - L * (d2 / d1) + offsetByNormal;}v2f vert (appdata v){v2f o;// 顶点坐标,转世界坐标float3 posWS = TransformObjectToWorld(v.vertex.xyz);// 世界顶点坐标转为平面坐标posWS = PlanarShadowPos(posWS);o.vertex = TransformWorldToHClip(posWS);o.uv =v.uv;         //得到中心点世界坐标float3 center = float3(unity_ObjectToWorld[0].w,  _PlaneY, unity_ObjectToWorld[2].w);//计算阴影衰减float falloff = 1 - saturate(distance(posWS, center) * _ShadowFalloff);o.color = _ShadowColor;o.color.a *=falloff;return o;}half4 frag (v2f i) : SV_Target{return i.color;}ENDHLSL}}}

能看见我在场景中做了4个材质球且用了不同的贴图,但是  能看见第一个pass对颜色渲染已经合批成一个了(除了地面用了默认的材质球外,忽略)。 第二个Pass影子也全部合并成一个渲染层渲染,完美解决问题。 鼓掌~~~!

http://www.hkea.cn/news/355134/

相关文章:

  • 中企动力沈阳分公司seo免费诊断电话
  • 网站vps被黑湖人最新排名最新排名
  • 如何夸奖客户网站做的好seo课程心得体会
  • 有哪些做电子商务的网站时空seo助手
  • 临沂百度网站电脑培训机构哪个好
  • 无锡专业做网站的公司怎样把自己的产品放到网上销售
  • 大学网站建设管理办法推广技巧
  • 长春做网站公司seo关键词排名优化软件怎么选
  • 网站开发未按合同约定工期完工seo关键词排名怎么提升
  • 创可贴app海报制作网站百度seo优化方法
  • 龙岗品牌网站建设2024年新闻摘抄
  • 南阳住房和城乡建设厅网站招聘网站排名
  • 如何做网站活动封面建站的公司
  • 温州网站建设培训营销推广方案包括哪些内容
  • 厦门 建网站商业软文案例
  • wordpress读者墙站长之家seo工具包
  • 网站建设哪家好灵活苏州久远网络北京搜索引擎关键词优化
  • 网站优化怎么做 有什么技巧东莞seo建站
  • 什么网站可以做游戏机疫情最新数据消息
  • 企业网站开发报价单巩义网络推广
  • 网站开发技术交流群免费域名申请网站
  • 手机网站一键分享怎么知道自己的域名
  • 做网站 做好把我踢开北京网站搭建哪家好
  • 网站如何做引流刷外链网站
  • wordpress 站点地址关注公众号一单一结兼职
  • 合肥网站建设第一品牌个人seo外包
  • 省心的免费建站服务热线四川seo关键词工具
  • 网站总是跳转dede58seo对网络推广的作用是
  • seo排名怎么提高seo排名优化软件有用
  • 江门论坛建站模板黑帽seo联系方式