首页 > 其他 > 详细

Unity ShaderLab 学习笔记(一)

时间:2014-01-18 01:29:03      阅读:536      评论:0      收藏:0      [点我收藏+]

因为项目的问题,有个效果在iOS上面无法实现出来~

因为shader用的HardSurface的,在android上面跑起来没有问题~

以为在iOS上也不会有问题,但是悲剧啊,技能效果一片漆黑~

而且之所以在iOS上面跑6.8FPS,就是因为HardSurface造成的~

没办法临时抱佛脚,一边看视频教程,一边看着圣典的翻译,学一下吧~

但愿能学会......哎......


 

ShaderLab语法:Properties

 

Properties { Property [Property ...] }

定义属性块,其中可包含多个属性,其定义如下

 

name ("display name", Range (minmax)) = number

定义浮点数属性,在检视器中可通过一个标注最大最小值的滑条来修改。

name ("display name", Color) = (number,number,number,number)

定义颜色属性

name ("display name", 2D) = "name" { options }

定义2D纹理属性

name ("display name", Rect) = "name" { options }

定义长方形(非2次方)纹理属性

name ("display name", Cube) = "name" { options }

定义立方贴图纹理属性

name ("display name", Float) = number

定义浮点数属性

name ("display name", Vector) = (number,number,number,number)

定义一个四元素的容器(相当于Vector4)属性

 

对于纹理(2D, Rect, Cube) 缺省值既可以是一个空字符串("")也可以是某个内置的缺省纹理:"white", "black", "gray" or "bump"

 

 

Texture property options 纹理属性选项

包含在纹理属性的大括号中的选项是可选的。可能的选项有:

TexGen texgenmode 纹理生成类型
  纹理的自动生成纹理坐标时的模式。
  可以是ObjectLinear, EyeLinear, SphereMap, CubeReflect, CubeNormal的其中之一;
  (上面着几个没明白都是什么意思,虽然能看到效果,但是不明白这都是什么意思~)
  ObjectLinear:
  bubuko.com,布布扣
  EyeLinear:
  bubuko.com,布布扣
  SphereMap:
  bubuko.com,布布扣
  CubeReflect:
  bubuko.com,布布扣
  CubeNormal:
  bubuko.com,布布扣
  这些模式和OpenGL纹理生成模式相对应。
  注意如果使用自定义顶点程序,那么纹理生成将被忽略。
LightmapMode 光照贴图模式
如果给出这个选项,纹理将能被渲染器的光线贴图属性所影响。
纹理不能被使用在材质中,而是取自渲染器的设定。
请参考渲染器脚本文档
(这段翻译也没明白~额~)

Unity ShaderLab 学习笔记(一)

原文:http://www.cnblogs.com/rayyang/p/3524469.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!