最近shader学习中,看的视频。

练习的固定管线的shader如下:

ps.在unity5中半透明不好用,其他的还好

 //不区分大小写
//这是固定管线的Shader
Shader "ShaderStudy/FixedShader"
{
Properties//定义属性代码块
{
//shader中使用的变量名(显示在检视面板中的变量名,变量类型)=初始值
_mainColor("Main Color", Color) = (, , , )
_ambientColor("Ambient Color", Color) = (, , , )
_specularColor("Specular Color", Color) = (, , , )
_shininess("Smooth", Range(, )) =
_emission("Emission", Color) = (, , , )
_constantColor("ConstantColor", Color) = (, , , 0.5)
_mainTexture("MainTexture", 2D) = ""{}
_secondTexture("SecondTexture", 2D) = ""{}
} SubShader
{
Tags//标签,表明渲染的顺序
{
"Queue" = "Transparent"
} Pass
{
Blend SrcAlpha OneMinusSrcAlpha//混合源alpha值和1-alpha值,使有关于alpha的改变能够正常实现
// color[_MainColor]//单纯设置颜色,这个颜色不带任何效果,[]里面放的是变量
// color(1,1,1,1)//()里面放的是常量
Material//设置材质
{
diffuse[_mainColor]//漫反射效果,需要打开光照效果才能正常使用,不然是黑的,因为没有光
Ambient[_ambientColor]//环境光效果
Specular[_specularColor]//高光效果
Shininess[_shininess]//高光集中程度,数值越大越集中,越光滑
Emission[_emission]//自发光效果
}
Lighting On//打开光照效果,即能够反射光线
// Lighting Off//关闭光照效果
SeparateSpecular On//高光效果打开
// SeparateSpecular Off//高光效果关闭 SetTexture[_mainTexture]
{
// Combine texture//仅使用texture的颜色信息进行着色
// Combine texture * primary//将texture和之前Material中的颜色计算的结果进行混合
Combine texture * primary double//颜色值相乘混合后会导致颜色偏暗,double将颜色值乘以2,提亮最终结果
// Combine texture * primary quad//颜色值相乘混合后会导致颜色偏暗,quad将所得的颜色值乘以4,提亮最终结果
} //可以设置多个texture,但是,最大支持多少个texture由硬件决定,硬件越好,支持混合的texture数量越多
//一半来讲,2个texture的基本都支持
SetTexture[_secondTexture]
{
ConstantColor[_constantColor]
// Combine texture * primary double//这会覆盖之前的texture的计算
//将texture与之前经过所有计算而得出的颜色值进行混合,alpha值进行混合
Combine texture * previous double, texture * constant
//经过测试,unity5里面半透明不好用,随着主摄像机的模式的变化,会掺杂天空盒或者是背景底色,或重复堆叠自身颜色,直至看不出半透明效果
}
}
}
}

unity的固定管线shader的更多相关文章

  1. 固定管线shader编写:基本属性

    欢迎转载!转载时请注明出处:http://write.blog.csdn.net/postedit/50753008 shader 部分介绍: properties:属性部分 material:材质部 ...

  2. [Unity] Shader(着色器)之固定管线

    在Unity中,固定管线Shader的性能是最好的. 什么是固定管线呢? 固定渲染管线 —— 这是标准的几何&光照(T&L)管线,功能是固定的,它控制着世界.视.投影变换及固定光照控制 ...

  3. UnityShader之固定管线Fixed Function Shader【Shader资料3】

    Fixed function shader简介:  属于固定渲染管线 Shader, 基本用于高级Shader在老显卡无法显示时的情况.使用的是ShaderLab语言,语法与微软的FX files 或 ...

  4. Shader基础(固定管线着色器)

    在Shader的编码中,要养成不加空格的习惯,否则会有时候出现一些错误 固定管线着色器: 优点:实现简单 缺点:处理的效果比较差 //设置Shader的路径 Shader "MyFixedS ...

  5. GPU的历史:从固定管线到可编程管线再到通用计算平台

    开始的时候GPU不能编程,也叫固定管线的,就是把数据按照固定的通路走完. 和CPU同样作为计算处理器,顺理成章就出来了可编程的GPU,但是那时候想在GPU上编程可不是容易的事,你只能使用GPU汇编来写 ...

  6. Unity内置的shader include files

    Unity内置的shader include files:这些文件都以.cninc结尾, HLSLSupport.cginc:自动包含,一些跨平台编译相关的宏和定义. UnityShaderVaria ...

  7. 【Unity Shaders】Mobile Shader Adjustment—— 什么是高效的Shader

    本系列主要参考<Unity Shaders and Effects Cookbook>一书(感谢原书作者),同时会加上一点个人理解或拓展. 这里是本书所有的插图.这里是本书所需的代码和资源 ...

  8. OpenGL 笔记<1> 固定管线实例 + 双缓存测试实例

    欲以此分类来记录opengl的学习历程,此为第一篇,所以先来一个固定管线的例子,以及对双缓存的测试. 一.配置环境 写之前,先进行配置,然后再讲内容. 注:第一部分涉及的代码均忽略. [环境配置传送门 ...

  9. unity 切圆角矩形 --shader编程

    先上个效果图 制作思路 如上图我们要渲染的就是上图带颜色的部分 步骤: 先获取黄色和蓝绿部分 例如以下图 算法 |U|<(0.5-r)或|V|<(0.5-r) 注意的是模型贴图最大值是1. ...

随机推荐

  1. linux下安装jdk

    第一步:查看Linux自带的JDK是否已安装 (卸载centOS已安装的1.4) 安装好的CentOS会自带OpenJdk,用命令 Java -version ,会有下面的信息: Javaversio ...

  2. 初识JVM--java虚拟机的基本知识

    JVM运行时的内存块 pc寄存器:(线程独有)保存线程运行的java方法地址 Java 虚拟接栈(线程独有):用于存储线程的栈帧 Java堆(全局共享):随着Java虚拟机的启动 创建 存储着所有对象 ...

  3. 【原】作为前端需要了解的B/S架构

    其实B/S架构是属于后台方面的东西,不过作为一个前端,也是需要了解一下滴 C/S架构简要介绍 在了解什么是B/S架构之前,我们有必要了解一下什么是C/S架构: C/S架构是第一种比较早的软件架构,主要 ...

  4. JavaScript中的静态成员

    静态:共享 一.公有静态成员(作为函数的属性即可): var Gadget = function(price) { this.price = price; } Gadget.isShiny = fun ...

  5. redis 操作string 的测试

    1>set  set name zhangsan :OK get name: zhangsan set name lisi:OK get name: lisi   2> setnx 如果存 ...

  6. SQL Server 2008在Windows 10上不支持

    https://support.microsoft.com/en-us/kb/2681562 For SQL Server 2008 R2 SQL Server 2008 R2 is not supp ...

  7. 2. web前端开发分享-css,js进阶篇

    一,css进阶篇: 等css哪些事儿看了两三遍之后,需要对看过的知识综合应用,这时候需要大量的实践经验, 简单的想法:把qq首页全屏另存为jpg然后通过ps工具切图结合css转换成html,有无从下手 ...

  8. TCP学习之四:传输协议

    参考学习张子阳大神的博客:http://www.cnblogs.com/JimmyZhang/category/101698.html     服务端接收到的数据可能是被截断或合并后的数据,需要协议来 ...

  9. [从产品角度学EXCEL 02]-EXCEL里的树形结构

    这是<从产品角度学EXCEL>系列第三篇. 前言请看: 0 为什么要关注EXCEL的本质 1 excel是怎样运作的 或者你可以去微信公众号@尾巴说数 获得连载目录. 本文仅由尾巴本人发布 ...

  10. [从产品角度学EXCEL 00]-为什么要关注EXCEL的本质

    前言 Hello 大家好,我是尾巴,从今天开始,在这里连载<从产品角度学EXCEL>的系列文章.本文不接受无授权转载,如需转载,请先联系我,非常感谢. 与世面上的大部分EXCEL教程不同的 ...