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

福建网站建设公司局域网内建网站

福建网站建设公司,局域网内建网站,羽贝网站建设,温州 网站建设文章目录 前言一、什么是立方体纹理二、立方体纹理的生成方式1、使用6个面的生成方式2、使用单张图片的生成方式 三、Cubemap的采样方式四、在Unity中看一下Cubemap五、在Shader中#xff0c;对立方体纹理进行采样使用1、我们在属性面板定义一个Cube类型的变量来存放立方体纹理… 文章目录 前言一、什么是立方体纹理二、立方体纹理的生成方式1、使用6个面的生成方式2、使用单张图片的生成方式 三、Cubemap的采样方式四、在Unity中看一下Cubemap五、在Shader中对立方体纹理进行采样使用1、我们在属性面板定义一个Cube类型的变量来存放立方体纹理2、使用前在Pass中声明一下该变量3、在片元着色器中对其纹理采样4、模拟真实的反射效果 Cubemap的环境映射5、计算视线的反射向量 六、最终效果 前言 Unity中Shader立方体纹理Cubemap 一、什么是立方体纹理 立方体纹理也被叫做Cubemap。通常用来做反射效果 在Unity中如果全都使用实时反射那么对于设备性能的消耗是比较大的所以使用一种投机取巧的方式实现的反射效果 二、立方体纹理的生成方式 1、使用6个面的生成方式 一般选择Auto即可会自动适配 2、使用单张图片的生成方式 一般选择Auto即可会自动适配 三、Cubemap的采样方式 由模型顶点向Cubemap发射射线射线经过的Cubemap哪个点那个点就是采样点 四、在Unity中看一下Cubemap 在纹理的 Inspector按如下设置就可以把普通纹理类型修改为立方体纹理 五、在Shader中对立方体纹理进行采样使用 我们使用上一篇文章的Shader继续测试 Unity中Shader纹理的环绕方式 1、我们在属性面板定义一个Cube类型的变量来存放立方体纹理 _CubeMap(“CubeMap”,Cube) “white” {} 2、使用前在Pass中声明一下该变量 samplerCUBE _Cubemap; 3、在片元着色器中对其纹理采样 这里进行纹理采样时由其原理可知需要使用顶点的本地坐标。 所以这里使用 appdata 传入的顶点数据来采样即可。 我们先在 v2f 中定义一个变量来存储应用程序阶段传入的数据 我们只需要顶点的 xyz 即可 float3 localPos : TEXCOORD1; 然后在顶点着色器阶段把 appdata 的顶点 xyz 传给 v2f 中的 localPos o.localPos v.vertex.xyz; 返回一下采样的结果看看(已经有了采样的结果) fixed4 cubemap texCUBE(_CubeMap,i.localPos); return cubemap; 4、模拟真实的反射效果 Cubemap的环境映射 要模拟出真实的反射效果不能向之前一样采样眼睛处的Cubemap 而是需要采样视线的反射视线经过Cubemap的点 5、计算视线的反射向量 因为需要计算视线的反射向量所以需要准备一些数据: 摄像机的世界坐标、模型顶点的世界坐标、法线的世界坐标 准备摄像机的世界坐标 _WorldSpaceCameraPos 准备模型顶点的世界坐标 1、在 v2f 中定义一个变量存储顶点的世界信息 float3 worldPos : TEXCOORD2; 2、在顶点着色器中进行顶点坐标转化 o.worldPos mul(unity_ObjectToWorld,v.vertex); 准备法线的世界坐标 1、在 appdata 中传入法线信息 half3 normal : NORMAL; 2、在 v2f 中定义一个变量存储法线世界坐标 half3 worldNormal : NORMAL; 3、在顶点着色器中进行法线坐标转化 o.worldNormal UnityObjectToWorldNormal(v.normal); 准备最后的计算 1、计算世界坐标下 视线单位向量 V fixed3 V normalize(i.worldPos - _WorldSpaceCameraPos); 2、计算世界坐标下 法线单位向量 N fixed3 N normalize(i.worldNormal); 3、计算世界坐标下 反射向量R fixed3 R reflect(V,N); 4、用 R 对Cubemap进行纹理采样 fixed4 cubemap texCUBE(_CubeMap,R); 六、最终效果 最终代码 //纹理的多级渐远 Mipmap //纹理的环绕方式 Shader MyShader/P2_1_5 {Properties{_MainTex (Texture, 2D) white {}[KeywordEnum (Repeat,Clamp)]_WrapMode(WrapMode,int) 0[IntRange]_Mipmap (Mipmap,Range(0,10)) 0//在属性面板定义立方体纹理_CubeMap(CubeMap,Cube) white {}}SubShader{Tags { RenderTypeOpaque }LOD 100Pass{CGPROGRAM#pragma vertex vert#pragma fragment frag#pragma shader_feature _WRAPMODE_REPEAT _WRAPMODE_CLAMP#include UnityCG.cgincstruct appdata{float4 vertex : POSITION;float2 uv : TEXCOORD0;half3 normal : NORMAL;};struct v2f{float2 uv : TEXCOORD0;float4 vertex : SV_POSITION;float3 localPos : TEXCOORD1;float3 worldPos : TEXCOORD2;half3 worldNormal : NORMAL;};sampler2D _MainTex;float4 _MainTex_ST;half _Mipmap;samplerCUBE _CubeMap;v2f vert (appdata v){v2f o;o.vertex UnityObjectToClipPos(v.vertex);o.uv TRANSFORM_TEX(v.uv, _MainTex);o.localPos v.vertex.xyz;o.worldPos mul(unity_ObjectToWorld,v.vertex);o.worldNormal UnityObjectToWorldNormal(v.normal);return o;}fixed4 frag (v2f i) : SV_Target{//WrapMode#if _WRAPMODE_REPEATi.uv frac(i.uv);#elif _WRAPMODE_CLAMP//法一://i.uv clamp(i.uv,0,1);//法二:i.uv saturate(i.uv);#endiffloat4 uvMipmap fixed4(i.uv,0,_Mipmap);fixed4 col tex2Dlod(_MainTex, uvMipmap);//Cubefixed4 cubemap texCUBE(_CubeMap,i.localPos);//V,N,Rfixed3 V normalize(i.worldPos - _WorldSpaceCameraPos);fixed3 N normalize(i.worldNormal);fixed3 R reflect(V,N);cubemap texCUBE(_CubeMap,R);return cubemap;return col;}ENDCG}} }
http://www.sadfv.cn/news/64987/

相关文章:

  • 优化免费网站建设建站系统
  • 有什么好的网站建设的书手机网站 底部菜单
  • 布吉做棋牌网站建设找哪家效益快南海网站智能推广
  • 做网站选哪家医疗网站是否全部需要前置备案
  • 03340网站建设与管理wordpress美化登录界面
  • wordpress展示企业主题免费关键词搜索优化
  • 关于网站建设项目实训报告安卓app开发模板
  • 公司网站建设对公司的重要性女教师遭网课入侵直播录屏曝光
  • 网站导航营销步骤怎么上传wordpress
  • 专业网站建设商城价格wordpress attachment
  • 深圳大型论坛网站建设广州站
  • python做的网站有什么漏洞自己有网站 做app吗
  • 好的文案网站wordpress 资源主题
  • 千博企业网站管理系统营销旗舰版消费金融网站建设
  • wordpress公众号抓取网站优化软件排名技术
  • 如何把图片做网站背景专业购物网站建设哪家好
  • 关于做无机化学实验的网站爱链接外链购买
  • 中铝长城建设有限公司网站小程序登录代码
  • 仪器网站模板广东省外贸网站建设
  • 郑州上街区网站建设公司中小型网站建设案例
  • 福州微信营销网站建设网站开发汇报ppt模板
  • 美容行业培训网站建设营销推广的作用
  • 网做 网站有哪些功能南京网站网站建设学校
  • 洛阳恒凯做的网站有哪些信阳网站建设招聘
  • 网站建设商标属于哪个类别wordpress 只显示文章标题
  • 网站建设价格很 好乐云seo哈尔滨专业官网建站企业
  • 嘉兴专业做网站wordpress 七牛缩略图
  • 谁会在掏宝网上做网站做一个电子商务网站在哪里做
  • 婚庆网站源码哪个dns访问国外网站
  • 在线crm视频在线crm免wordpress改造seo