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

烟台cms建站模板ifm网站做啥的

烟台cms建站模板,ifm网站做啥的,免费发布信息的网站平台,四川省建设网站评标专家考试文章目录 前言一、我们先创建一个简单的Shader二、编译这个Shader#xff0c;并且打开1、编译后注意事项2、编译平台 和 编译指令数3、顶点着色器用到的信息4、顶点着色器计算的核心部分5、片元着色器用到的信息6、片元着色器核心部分 前言 我们先读懂Shader编译后代码#… 文章目录 前言一、我们先创建一个简单的Shader二、编译这个Shader并且打开1、编译后注意事项2、编译平台 和 编译指令数3、顶点着色器用到的信息4、顶点着色器计算的核心部分5、片元着色器用到的信息6、片元着色器核心部分 前言 我们先读懂Shader编译后代码才能对Shader进行合理的优化 一、我们先创建一个简单的Shader Shader MyShader/P2_3_6 {Properties{}SubShader{Tags { RenderTypeOpaque }LOD 100Pass{CGPROGRAM#pragma vertex vert#pragma fragment frag#include UnityCG.cgincstruct appdata{float4 vertex : POSITION;float2 uv : TEXCOORD0;};struct v2f{float2 uv : TEXCOORD0;float4 vertex : SV_POSITION;};v2f vert (appdata v){v2f o;o.vertex UnityObjectToClipPos(v.vertex);o.uv v.uv;return o;}fixed4 frag (v2f i) : SV_Target{return fixed4(i.uv,1,1);}ENDCG}} } 二、编译这个Shader并且打开 我们目前先只编译到 D3D 平台 这是编译后的代码我们来逐步分析 // Compiled shader for custom platforms// // // NOTE: This is *not* a valid shader file, the contents are provided just // for information and for debugging purposes only. // // // Skipping shader variants that would not be included into build of current scene.Shader MyShader/P2_3_6 { SubShader { LOD 100Tags { RenderTypeOpaque }// Stats for Vertex shader:// d3d11: 8 mathPass {Tags { RenderTypeOpaque }//// //// Compiled programs //// //// // Keywords: none -- Hardware tier variant: Tier 1 -- Vertex shader for d3d11: // Stats: 8 math, 2 temp registers Uses vertex data channel Vertex Uses vertex data channel TexCoord0Constant Buffer UnityPerDraw (176 bytes) on slot 0 {Matrix4x4 unity_ObjectToWorld at 0 } Constant Buffer UnityPerFrame (368 bytes) on slot 1 {Matrix4x4 unity_MatrixVP at 272 }Shader Disassembly: // // Generated by Microsoft (R) D3D Shader Disassembler // // // Input signature: // // Name Index Mask Register SysValue Format Used // -------------------- ----- ------ -------- -------- ------- ------ // POSITION 0 xyzw 0 NONE float xyz // TEXCOORD 0 xy 1 NONE float xy // // // Output signature: // // Name Index Mask Register SysValue Format Used // -------------------- ----- ------ -------- -------- ------- ------ // TEXCOORD 0 xy 0 NONE float xy // SV_POSITION 0 xyzw 1 POS float xyzw //vs_4_0dcl_constantbuffer CB0[4], immediateIndexeddcl_constantbuffer CB1[21], immediateIndexeddcl_input v0.xyzdcl_input v1.xydcl_output o0.xydcl_output_siv o1.xyzw, positiondcl_temps 20: mov o0.xy, v1.xyxx1: mul r0.xyzw, v0.yyyy, cb0[1].xyzw2: mad r0.xyzw, cb0[0].xyzw, v0.xxxx, r0.xyzw3: mad r0.xyzw, cb0[2].xyzw, v0.zzzz, r0.xyzw4: add r0.xyzw, r0.xyzw, cb0[3].xyzw5: mul r1.xyzw, r0.yyyy, cb1[18].xyzw6: mad r1.xyzw, cb1[17].xyzw, r0.xxxx, r1.xyzw7: mad r1.xyzw, cb1[19].xyzw, r0.zzzz, r1.xyzw8: mad o1.xyzw, cb1[20].xyzw, r0.wwww, r1.xyzw9: ret // Approximately 0 instruction slots used-- Hardware tier variant: Tier 1 -- Fragment shader for d3d11: Shader Disassembly: // // Generated by Microsoft (R) D3D Shader Disassembler // // // Input signature: // // Name Index Mask Register SysValue Format Used // -------------------- ----- ------ -------- -------- ------- ------ // TEXCOORD 0 xy 0 NONE float xy // SV_POSITION 0 xyzw 1 POS float // // // Output signature: // // Name Index Mask Register SysValue Format Used // -------------------- ----- ------ -------- -------- ------- ------ // SV_Target 0 xyzw 0 TARGET float xyzw //ps_4_0dcl_input_ps linear v0.xydcl_output o0.xyzw0: mov o0.xy, v0.xyxx1: mov o0.zw, l(0,0,1.000000,1.000000)2: ret // Approximately 0 instruction slots used} } }1、编译后注意事项 // // // NOTE: This is not a valid shader file, the contents are provided just // for information and for debugging purposes only. // // 这不是一个有效的Shader这个文本只是提供用于 Debug Shader 时使用 2、编译平台 和 编译指令数 // Stats for Vertex shader: // d3d11: 8 math 代表编译后的平台是 DirectX 11使用到了 8 条计算指令 3、顶点着色器用到的信息 Keywords: – Hardware tier variant: Tier 1 – Vertex shader for “d3d11”: // Stats: 8 math, 2 temp registers Uses vertex data channel “Vertex” Uses vertex data channel “TexCoord0” 无关键字变体数1顶点着色器 对应 编译平台 DirectX 11用到计算 指令 8条临时寄存器 2 个 Constant Buffer “UnityPerDraw” (176 bytes) on slot 0 { Matrix4x4 unity_ObjectToWorld at 0 } Constant Buffer “UnityPerFrame” (368 bytes) on slot 1 { Matrix4x4 unity_MatrixVP at 272 } 这两个代表 常量缓存 存贮计算用到的 Unity 中定义的常量 4、顶点着色器计算的核心部分 Shader Disassembly: // // Generated by Microsoft (R) D3D Shader Disassembler // // // Input signature: // // Name Index Mask Register SysValue Format Used // -------------------- ----- ------ -------- -------- ------- ------ // POSITION 0 xyzw 0 NONE float xyz // TEXCOORD 0 xy 1 NONE float xy // // // Output signature: // // Name Index Mask Register SysValue Format Used // -------------------- ----- ------ -------- -------- ------- ------ // TEXCOORD 0 xy 0 NONE float xy // SV_POSITION 0 xyzw 1 POS float xyzw //vs_4_0dcl_constantbuffer CB0[4], immediateIndexeddcl_constantbuffer CB1[21], immediateIndexeddcl_input v0.xyzdcl_input v1.xydcl_output o0.xydcl_output_siv o1.xyzw, positiondcl_temps 20: mov o0.xy, v1.xyxx1: mul r0.xyzw, v0.yyyy, cb0[1].xyzw2: mad r0.xyzw, cb0[0].xyzw, v0.xxxx, r0.xyzw3: mad r0.xyzw, cb0[2].xyzw, v0.zzzz, r0.xyzw4: add r0.xyzw, r0.xyzw, cb0[3].xyzw5: mul r1.xyzw, r0.yyyy, cb1[18].xyzw6: mad r1.xyzw, cb1[17].xyzw, r0.xxxx, r1.xyzw7: mad r1.xyzw, cb1[19].xyzw, r0.zzzz, r1.xyzw8: mad o1.xyzw, cb1[20].xyzw, r0.wwww, r1.xyzw9: ret // Approximately 0 instruction slots used我们先看一下顶点着色器的注释重要: 计算用到的指令 mov: 赋值运算 mul : 乘法 div : 除法 add : 加法 和 减法 mad: mul 和 add 的结合 ret : 返回 5、片元着色器用到的信息 – Hardware tier variant: Tier 1 – Fragment shader for “d3d11”: 变体 1 个片元着色器编译平台 DirectX 11 6、片元着色器核心部分 Shader Disassembly: // // Generated by Microsoft (R) D3D Shader Disassembler // // // Input signature: // // Name Index Mask Register SysValue Format Used // -------------------- ----- ------ -------- -------- ------- ------ // TEXCOORD 0 xy 0 NONE float xy // SV_POSITION 0 xyzw 1 POS float // // // Output signature: // // Name Index Mask Register SysValue Format Used // -------------------- ----- ------ -------- -------- ------- ------ // SV_Target 0 xyzw 0 TARGET float xyzw //ps_4_0dcl_input_ps linear v0.xydcl_output o0.xyzw0: mov o0.xy, v0.xyxx1: mov o0.zw, l(0,0,1.000000,1.000000)2: ret // Approximately 0 instruction slots used 片元着色器部分的注释 和 顶点着色器 部分一样 ps_4_0 代表编译到的像素着色器这里和片元着色器差不多但是他两不一样。在DirectX 平台下这个代表编译到硬件 SM4.0 dcl_input_ps linear v0.xy代表输入的变量v 默认代表输入变量0代表索引为0 dcl_output o0.xyzw代表输出的变量o默认代表输出变量0代表索引为0 mov : 赋值 l 值类型 r : 代表 临时寄存器 cb : 代表 常量寄存器
http://www.pierceye.com/news/7338/

相关文章:

  • 域名注册网站查询工具杭州企业建站程序
  • 网站毕业设计代做工业园网站建设
  • 郑州网站优化的微博_腾讯微博怎么用dw网站怎么建设
  • 孵化器网站建设方案平台经济是什么意思
  • 如何创建一个属于自己的网站推广软文营销案例
  • 做外贸怎么网站找客户通化北京网站建设
  • 做系统和做网站哪个简单一些免费站推广网站2022
  • 私募基金公司网站建设大发 wordpress ifanr
  • 高唐建筑公司网站苏州软件开发
  • 网站建设项目简介培训网站完整页面
  • 万博法务网站怎么优化整站
  • 网站建设是不是要有营业执照宿迁做网站需要多少钱
  • 2018建设网站成立中英文网站建设工作领导小组
  • 外贸网站建设公司价格江苏镇江论坛
  • 做网站买虚拟服务器南京网站如何制作
  • 如何做直接打开网站的二维码郑州专业做网站
  • 中国能源建设集团网站群做腰椎核磁证网站是 收 七
  • 建个门户网站百度提交wordpress
  • 怎么用VS2012建设网站中企动力企业邮箱下载
  • 怎么做搜索功能网站工作总结范文模板大全
  • 私人pk赛车网站怎么做网页制作工具分哪两类
  • 嘉兴 网站 建设东莞网站优化一般多少钱
  • 网站开发竞争对手分析安康市建设局网站
  • 高端网站定制的方法如何做公司的网站建设
  • 合肥网站优化软件金山西安网站建设
  • 学做网站应该看那些书给网站建设提意见
  • 用什么系统程序做评测网站互联网软件开发是什么工作
  • 留电话的广告网站新网站如何做排名
  • 临海网站开发公司电话海尔网站建设目的
  • 中国建设领域专业人员网站网站的推广方式