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

灰色网站怎么做seo室内设计联盟网

灰色网站怎么做seo,室内设计联盟网,文章 百度网站创建及发展历史,百度广告联盟文章目录 前言一、在之前顶点着色器的输入中#xff0c;放弃了使用结构体传入#xff0c;而是直接从应用程序阶段传入参数#xff0c;这样写的话#xff0c;对于程序来说#xff0c;不方便扩张#xff0c;所以需要对其进行修改实现1、定义结构体用于传入顶点坐标系2、因为… 文章目录 前言一、在之前顶点着色器的输入中放弃了使用结构体传入而是直接从应用程序阶段传入参数这样写的话对于程序来说不方便扩张所以需要对其进行修改实现1、定义结构体用于传入顶点坐标系2、因为UnityObjectToClipPos是从本地空间转换到裁剪空间但是没有进行透视除法所以需要对其进行透视除法用转化后的结果的 xyz / w 就可以进行透视除法3、因为屏幕坐标的原点一般在左上角DirectX 或 左下角OpenGL 我的是DirectX平台所以在左上角。会造成显示的位置和我们需要的位置不同所以需要对其进行计算平移缩放处理 二、改用Unity内置提供的方法平台间互通三、最后加上扭曲 前言 对上一篇中实现的shader进行优化 一、在之前顶点着色器的输入中放弃了使用结构体传入而是直接从应用程序阶段传入参数这样写的话对于程序来说不方便扩张所以需要对其进行修改 实现 1、定义结构体用于传入顶点坐标系 struct appdata { float4 vertex : POSITION; //从应用程序阶段的输入多加一个uv用于对扭曲纹理的采样 float2 uv : TEXCOORD; }; 2、因为UnityObjectToClipPos是从本地空间转换到裁剪空间但是没有进行透视除法所以需要对其进行透视除法用转化后的结果的 xyz / w 就可以进行透视除法 v2f vert (appdata v) { v2f o; o.pos UnityObjectToClipPos(v.vertex); o.uv TRANSFORM_TEX(v.uv,_DistortTex) _Distort.xy * _Time.y; //把本地空间转化到其次裁剪空间后的结果,进行透视除法后, 传给 screenUV o.screenUV.xyz o.pos.xyz / o.pos.w; return o; } 3、因为屏幕坐标的原点一般在左上角DirectX 或 左下角OpenGL 我的是DirectX平台所以在左上角。会造成显示的位置和我们需要的位置不同所以需要对其进行计算平移缩放处理 DirectX平台:fixed2 uv fixed2(i.screenUV.x * 0.5,i.screenUV.y * -0.5) 0.5; OpenGL平台:fixed2 uv i.screenUV * 0.5 0.5; 改到顶点着色器中计算 DirectX平台: o.screenUV.x o.screenUV.x * 0.5 0.5; o.screenUV.y o.screenUV.y * -0.5 0.5; OpenGL平台: o.screenUV.x o.screenUV * 0.5 0.5; 但是这样是插值计算的会有误差瑕疵所以还是改在片元着色器中计算 DirectX平台: fixed2 uv i.screenUV.xy / i.screenUV.w; uv.x uv.x * 0.5 0.5; uv.y uv.y * -0.5 0.5; 二、改用Unity内置提供的方法平台间互通 ComputeScreenPos(float4 pos) pos为裁剪空间下的坐标位置返回的是某个投影点下的屏幕坐标位置 由于这个函数返回的坐标值并未除以齐次坐标所以如果直接使用函数的返回值的话需要使用tex2Dproj(_ScreenTexture, uv.xyw); 也可以自己处理其次坐标,使用tex2D(_ScreenTexture, uv.xy / uv.w); 在顶点着色器o.screenUV ComputeScreenPos(o.pos); 在片元着色器fixed4 grabTex tex2Dproj(_GrabTex,i.screenUV); 三、最后加上扭曲 Shader MyShader/P0_10_5 {Properties{//实现扭曲就需要传入贴图来实现扰度_DistortTex(DistortTex,2D) white{}_Distort(SpeedX(X) SpeedY(y) Distort(Z),vector) (0,0,0,0)}SubShader{Tags{Queue Transparent}//屏幕抓取需要单独使用一个Pass —— GrabPass{} 里面什么都不写或者GrabPass{_GrabTex}GrabPass{_GrabTex}//使用Cull off 让两面都有扭曲Cull OffPass{CGPROGRAM#pragma vertex vert#pragma fragment frag#include UnityCG.cgincstruct appdata{float4 vertex : POSITION;//从应用程序阶段的输入多加一个uv用于对扭曲纹理的采样float2 uv : TEXCOORD;};struct v2f{float2 uv : TEXCOORD0;float4 pos : SV_POSITION;float4 screenUV:TEXCOORD1;};//在使用抓取的屏幕前需要像使用属性一样定义一下,_GrabTexture这个名字是Unity定义好的sampler2D _GrabTex;sampler2D _DistortTex;float4 _DistortTex_ST;float4 _Distort;v2f vert (appdata v){v2f o;o.pos UnityObjectToClipPos(v.vertex);o.uv TRANSFORM_TEX(v.uv,_DistortTex) _Distort.xy * _Time.y;//pos为裁剪空间下的坐标位置返回的是某个投影点下的屏幕坐标位置o.screenUV ComputeScreenPos(o.pos);return o;}fixed4 frag (v2f i) : SV_Target{//DirectX平台:/*fixed2 uv i.screenUV.xy / i.screenUV.w;uv.x uv.x * 0.5 0.5;uv.y uv.y * -0.5 0.5;*/fixed4 distortTex tex2D(_DistortTex,i.uv);//使用线性插值来控制UV的扭曲程度float2 uv lerp(i.screenUV.xy/i.screenUV.w,distortTex,_Distort.z);//对抓取的屏幕进行采样fixed4 grabTex tex2D(_GrabTex,uv);return grabTex;}ENDCG}} } 效果
http://www.hkea.cn/news/14272981/

相关文章:

  • 国际建设管理学会网站甘肃省水利工程建设网站
  • 专业做网站的公司哪家更专业建设一个网站平台需要哪些技术员
  • 网站建立某小型网站开发公司创业策划
  • 怎样分析网站做seo怎样上传自己的网站
  • 建设我们的网站教案做贸易进出口要什么网站平台
  • 杭州移动公司网站wordpress 修改meta
  • 深圳网站制作电话无备案网站可以做百度推广
  • 成功的网站不仅仅是优化排企业网站建设 详细方案
  • 怎么创建视频网站徐州网站关键词排名
  • 礼品回收网站建设网络服务顺序
  • 长春建站企业wordpress集成dz
  • 银饰品网站建设规划策划书设计公司名字怎么取
  • 乐清手机网站福州 哈尔滨网站建设 网络服务
  • 女生做网站主题有哪些怎么用ps做静态网站
  • 哪里找做网站的北京建网站定制价格
  • 江宁网站建设价位矿大师德建设网站
  • 网站主题编辑工具WordPress开发游戏学什么专业
  • 网站制作的公司旅游网站开发目标
  • 兼职做国外网站钻前免费发布推广信息的网站
  • 单位网站建设收费标准nginx反向代理wordpress
  • 手机网站建设分析淘宝网页制作模板
  • 专门帮人做网站的公司wordpress 判断手机端
  • 电子商务实验网站建设实训过程浙江省城乡建设网站证件查询
  • 网站建设教程流程黄骅港天气预报一周7天
  • 网页网站自做全搞定江西省赣州市定南县
  • 房产网站流量排名加拿大搜索引擎
  • 做交通锁具网站碟刹锁快速搭建网站视频
  • 淮安网站开发被禁止访问网站怎么办
  • 网站建设的设备外国做家具的网站
  • 网站功能策划爱网站查询挖掘工具