Cg入门1:输入输出和语义
2016-03-23 14:45
246 查看
知识点:1.顶点和片段程序的输入输出2.常用语义3.编写一个简单的Shader
输入用:in输出用:out即使输入也是输出用:inout
CG语法:CGPROGRAM 开始标识ENDCG 结束标识
objPos:语义 语义关键字必须为全大写字母组成(objpos:POSITION 语义:objpos表示一个位置向量),语义只是代表一种运行环境inout:表示可以把输入直接当成输出返回(顶点颜色输出col当成片段程序的输入,根据类型来匹配的,而不是根据名字来匹配的)
语义类型: POSITION, NORMAL, BINORMAL, BLENDINDICES, BLENDWEIGHT, TANGENT, PSIZE, TEXCOORD0 ~ TEXCOORD7
[align=left]要想用顶点的输出col 有两种方式:[/align][align=left]第一种:return col 出去顶点颜色输出[/align]
[align=left]第二种:定义结构体,然后输出结构体[/align]
定义结构体的好处:清楚明了,减少out,in 的编写,如果作为输出结构,那么里面的元素全是输出;如果是作为参数输入,那么你们的元素全是输入小技巧:Properties下的_MainColor 在inspector 颜色值看不到,也调不了。
随意点击红色框框的区域就可以让其显示了
输入用:in输出用:out即使输入也是输出用:inout
CG语法:CGPROGRAM 开始标识ENDCG 结束标识
objPos:语义 语义关键字必须为全大写字母组成(objpos:POSITION 语义:objpos表示一个位置向量),语义只是代表一种运行环境inout:表示可以把输入直接当成输出返回(顶点颜色输出col当成片段程序的输入,根据类型来匹配的,而不是根据名字来匹配的)
语义类型: POSITION, NORMAL, BINORMAL, BLENDINDICES, BLENDWEIGHT, TANGENT, PSIZE, TEXCOORD0 ~ TEXCOORD7
[align=left]要想用顶点的输出col 有两种方式:[/align][align=left]第一种:return col 出去顶点颜色输出[/align]
[align=left]第二种:定义结构体,然后输出结构体[/align]
定义结构体的好处:清楚明了,减少out,in 的编写,如果作为输出结构,那么里面的元素全是输出;如果是作为参数输入,那么你们的元素全是输入小技巧:Properties下的_MainColor 在inspector 颜色值看不到,也调不了。
随意点击红色框框的区域就可以让其显示了
相关文章推荐
- mysql 按照姓氏排序
- 转:使用gradle 构建编译程序
- github 操作指南
- Jquery 返回顶部
- Target 'Pods' of project 'Pods' was rejected as an implicit dependency for 'libPods.a' because its a
- debian添加删除用户
- 集成gitHub的几款常用工具
- 链表中的添加节点和删除节点的操作
- ASP.NET MVC的TextBoxFor()和TextBox()
- Spark中常用工具类Utils的简明介绍
- Tab切换
- HTTP错误码集合,及错误原因
- javascript基本知识小结--命名空间,函数
- 安卓组件的设计思想
- linux路由添加
- twisted理论基础
- Microsoft Azure系列之二 Microsoft Azure概述
- Gradle编译的APK反编译看不到VersionCode
- [从头学数学] 第149节 一元二次方程 小结与复习题
- Matconvnet在windows8下编译安装过程