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

崇左做网站公司百度网站

崇左做网站公司,百度网站,网站建设遵循的规范,网站建设编辑本想随便找一个裁剪的shader,可无奈的是没找到一个shader符合要求,美术制作的场景都是用的都标准的着色器他们不在乎你的功能逻辑需求,他们只关心场景的表现,那又找不到和unity标准着色器表现一样的shader 1.通过贴图的透明通道做…
本想随便找一个裁剪的shader,可无奈的是没找到一个shader符合要求,美术制作的场景都是用的都标准的着色器他们不在乎你的功能逻辑需求,他们只关心场景的表现,那又找不到和unity标准着色器表现一样的shader

1.通过贴图的透明通道做裁剪效果,发现贴图受tiling和 offset属性的制约

2.通过uv坐标逆计算或者传入的uv不做tiling offset的计算,发现建模小伙子uv展的稀碎

3.uv不能用,那只能顶点的位置做裁剪

4.啃源码

standard shader:

standard shader引用的 UnityStandardCoreForward.cginc

 #include "UnityStandardCoreForward.cginc"

找到这个文件打开,打开发现里面啥也没有一个判断,根据宏判断然后引用不同的文件里面的顶点片元函数,我需要的是在下面的文件里修改

   #include "UnityStandardCore.cginc"

打开这个文件,发现里面引用的文件太多了,没办法全部复制到你的shader pass中,为了防止影响到原standard shader,我全部重新创建,最终的文件是这样的

我需要的是根据顶点的位置裁剪片元,然后找到最终的片元处理函数 

fragBase (VertexOutputForwardBase i) 

在函数中添加顶点的判断逻辑

half4 fragBase (VertexOutputForwardBase i) : SV_Target {half4 colLight =fragForwardBaseInternal(i);if(abs(i.posLocal.x -_VertexCut.x)<_VertexCut.w *0.5f&& (i.posLocal.x<_VertexCut.x) &&abs(i.posLocal.y -_VertexCut.y)<0.3f){}  else{discard;}                        return colLight; 
}

由于顶点信息没有传进来,然后需要在VertexOutputForwardBase的结构体中加入变量

struct VertexOutputForwardBase
{UNITY_POSITION(pos);float4 tex                            : TEXCOORD0;float4 eyeVec                         : TEXCOORD1;    // eyeVec.xyz | fogCoordfloat4 tangentToWorldAndPackedData[3] : TEXCOORD2;    // [3x3:tangentToWorld | 1x3:viewDirForParallax or worldPos]half4 ambientOrLightmapUV             : TEXCOORD5;    // SH or Lightmap UVfloat3 posLocal                          : TEXCOORD9;   //新添加的局部顶点变量UNITY_LIGHTING_COORDS(6,7)// next ones would not fit into SM2.0 limits, but they are always for SM3.0+
#if UNITY_REQUIRE_FRAG_WORLDPOS && !UNITY_PACK_WORLDPOS_WITH_TANGENTfloat3 posWorld                     : TEXCOORD8;
#endifUNITY_VERTEX_INPUT_INSTANCE_IDUNITY_VERTEX_OUTPUT_STEREO
};

还需要在顶点函数中给结构体传入这个变量的值

   o.posLocal=v.vertex.xyz;

之后就能跑起来了,为了方便调试,修改shader的界面布局脚本,把需要裁剪的位置暴露给编辑器

,方法就是别的属性怎么写你就怎么写,然后shader引用布局的代码是在最后一句话,

 

   FallBack "VertexLit"CustomEditor "CStandardShaderGUI"

注意点就是,找到对应的pass,不要复制错位置,要是不知道当前使用的pass,把pass注释掉,测试使用的pass

没什么好说的了,都是照搬,不想写了,就这样吧

http://www.hengruixuexiao.com/news/19009.html

相关文章:

  • 1m带宽做网站快不新闻头条最新
  • wordpress幻灯片滚动插件菏泽seo
  • 做网站的框架结构百度自媒体怎么注册
  • 动态网页设计作业成品在线seo关键词排名优化
  • wordpress 导出html5360优化大师官方免费下载
  • 用Html5做网站企业培训课程推荐
  • 做网站gif代码上海seo招聘
  • 泰安网络诈骗网上报警seo在线教程
  • 一站式网站建设平台免费下载百度一下
  • 西安网站建设报价方案打开百度搜索
  • 做礼品公司网站的费用精准引流推广公司
  • 做一个大型网站需要多少钱中国十大营销策划公司排名
  • 安徽手机版建站系统信息湖北seo诊断
  • a站b站搭建网站需要哪些步骤
  • 网站群管理建设帮人推广的平台
  • 外贸工厂 网站建设web设计一个简单网页
  • 做网站公司关键词成免费crm特色
  • 怎么建设淘宝联盟的网站谷歌seo和百度seo
  • proudly powered by wordpress站长之家seo综合
  • 好的网站设计网络营销的模式有哪些
  • 梁平区高点击量网站建设哪家好短期的技能培训有哪些
  • 太原建立网站百度网盘资源搜索引擎
  • 嘉兴专业做网站的公司附近的教育培训机构有哪些
  • 做高效能的父母网站中级经济师考试
  • 制作宝安网站建设网络推广seo怎么弄
  • 郑州做网站好2023年5月最新疫情
  • 网站 验收一键优化软件
  • 网站建设流程 费用百度问问首页
  • wordpress网易云外贸网站优化推广
  • 做微信的网站叫什么名字外链网盘源码