Shader_Shader的其他属性及使用003
来源:互联网 发布:mac os界面 编辑:程序博客网 时间:2024/06/06 04:24
Shader的其他属性及其使用规则都在源码中注释了,在这里不在赘述
参考代码如下:
//定义Shader 的名字 不要求和文件的名字一样//YY是Shader的目录 MyShader是Shader 的名字Shader"YY/01 MyShader"{ //属性部分 只能有一块 //属性中的代码是没有分号的 Properties{ //属性 //"_Color"是自定义的 "Color"是自定义的 Color是固定的 (1,1,1,1)使用的是RGBA颜色系统 _Color("Color",Color) = (1,1,1,1) //对应float4类型 //向量 _Vector("Vector",Vector) = (1,2,3,4)//对应float4类型 //整型 _Int("Int",Int) = 12//对应float类型 //浮点类型 _Float("Float",Float) = 12.0//对应float类型 //设置一个范围 _Range("Range",Range(1,11)) = 6//对应float类型 //2D纹理 _2D("Texture",2D) = "white"{}//对应sampler2D类型 //立方体贴图 _Cube("Cube",Cube) = "white"{}//对应samplerCube类型 //3D纹理 _3D("Texture",3D) = "white"{}//对应sampler3D类型 } //子Shader块 类似类 一个Shader中可以有很多Shader 为了适配不同种类的显卡 //显卡运行效果的时候 从第一个SubShader开始,如果第一个SubShader里面的效果都可实现,那么就使用第一个SubShader,如果显卡发现这个SubShader里面某些效果实现不了,它会自动运行下一个SubShader SubShader{ //pass块类似方法 可以有很多pass块 至少有一个Pass块 //在pass内部写Shader代码 pass { //声明包含Cg代码的块 //Cg代码中的是要使用分号隔开的 CGPROGRAM //使用Cg语言编写Shader代码 //_Color 和属性中的变量保持一致 由于Color类型是4个分量组成 所以在这里使用float4代替 //在Cg块中使用属性的值需要在声明一次 float4 _Color; float4 _Vector; float _Int; float _Range; sampler2D _2D; samplerCube _Cube; sampler3D _3D; ENDCG } //这里面没有分号的 } //如果上面的所有的SubShader都不满足 则执行备用方案 VertexLit 是一个Shader的名字 直接指定名称即可 FallBack "VertexLit"}
阅读全文
0 0
- Shader_Shader的其他属性及使用003
- scrollView的基本使用之其他属性
- 属性 及 KVC 的使用
- UITabbBar的使用及属性
- JS运用id得到其他的属性值及jquery对相同属性的class扫描
- 文件其他属性的修改
- Fragment的一些其他属性
- Spring中的IOC(三):bean 的其他属性及bean实例的生命周期和范围
- 相对布局中取值为其他控件id 的属性及说明
- dtree树的使用及属性配置
- Android自定义属性的定义及使用
- 奇葩属性:layout_weight 的解释及使用
- AutoCompleteTextView的使用及属性详解
- maven的属性设置及使用
- SlidingMenu的使用及常用属性
- Shape的属性介绍及使用
- UIView的transform属性及使用案例
- ImageView的属性及使用相关
- JarvisOJ-You-Need-Python-wp
- SSH框架搭建和整合(struts2、spring4、hibernate5)
- Mybatis快速入门——Mybatis学习总结(一)
- HelloWorld
- 最佳加法表达式(DP)
- Shader_Shader的其他属性及使用003
- 「模板」 左偏树
- 「模板」 归并排序
- ajax跨域之---服务器端代理实现
- 2017年陕西省网络空间安全技术大赛Mobile部分WriteUp
- 2017秋招编程题
- mysql 比较运算符和函数
- 轻量级网页在线聊天系统
- 「模板」 随机遍历数组