自己做个总结先。当然文中很多内容都是从各位大神的文档当中看的。我只是站在巨人的肩膀上。

      首先什么是shader?其实就是一个在显示屏当中的显示程序,俗称着色器。它可以定义物体在硬件显示屏当中的显示方式,例如物体颜色和表面贴图,光泽等。貌似3Dmax和maya都有相关的shader程序。本篇基于unity内部的shader总结。
      shader在unity的编程当中有3种,1.固定管式shader ;2.可编程shader; 3.surface shader 表面shader。

1.固定功能着色器(Fixed Function Shader)

  1. Properties
  2. {
  3. }
  4. SubShader
  5. {
  6. Pass
  7. Material
  8. {
  9. }
  10. }
  11. }

2.表面着色器(Surface Shader)-建议从这块学起。

结构:

Properties
{}
 SubShader   
    {  
        //渲染类型为Opaque,不透明  
        Tags { "RenderType" = "Opaque" }  
  
        //-------------------开始CG着色器编程语言段-----------------  
        CGPROGRAM   //使用兰伯特光照模式  
        #pragma surface surf Lambert  
          
        //输入结构  
        struct Input   
        {            
        };  
void surf (Input IN, inout SurfaceOutput o)  
        {            
        }  
3.顶点着色器&片段着色器 (Vertex Shader & Fragment Shader)
结构:
Properties{
    } 
        Pass{
        Tags{ "LightMode" = "" }
        CGPROGRAM
        #pragma vertex vert
        #pragma fragment frag
        #include "UnityCG.cginc"
        struct appdata_t {
         
            };
 
            struct v2f {
      
            };
              
            v2f vert(appdata_t v)
            {
               
            } 
 half4 frag(v2f i) : COLOR
            {
                
            }
 
  
本文只是初略研究shader,如有错误之处,欢迎大神指点。

unity之初识shader的更多相关文章

  1. 【unity shaders】:Unity中的Shader及其基本框架

    shader和Material的基本关系 Shader(着色器)实际上就是一小段程序,它负责将输入的Mesh(网格)以指定的方式和输入的贴图或者颜色等组合作用,然后输出.绘图单元可以依据这个输出来将图 ...

  2. 【浅墨Unity3D Shader编程】之二 雪山飞狐篇:Unity的基本Shader框架写法&颜色、光照与材质

    本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接:http://blog.csdn.net/poem_qianmo/article/details/40955607 作者:毛星云(浅墨)  ...

  3. 【Unity Shaders】Shader学习资源和Surface Shader概述

    写在前面 写这篇文章的时候,我断断续续学习Unity Shader半年了,其实还是个门外汉.我也能体会很多童鞋那种想要学好Shader却无从下手的感觉.在这个期间,我找到一些学习Shader的教程以及 ...

  4. unity 内置shader

    几个有用的Unity 内置shader: (一)Standard RenderingMode:Opaque为实体渲染,更改Color的透明通道不会有影响:Cutout会把图片的透明通道显示出来,非严格 ...

  5. Unity内置shader 下载

    Unity内置shader  4.3.1 版本的  其他版本可以自己修改名称 下载地址 http://download.unity3d.com/download_unity/builtin_shade ...

  6. Unity 3d中Shader是什么,可以吃吗?

    众所周知,Unity3d是一款跨平台非常广的游戏引擎,上手容易,界面友好,集成功能众多,是目前开发手游的主流引擎.本人有幸使用Unity 3d进行开发已一年多时间,已领略了这歀引擎的强大之处. 编写s ...

  7. 【Unity Shaders】Shader中的光照

    写在前面 自己写过Vertex & Fragment Shader的童鞋,大概都会对Unity的光照痛恨不已.当然,我相信这是因为我们写得少...不过这也是由于官方文档对这方面介绍很少的缘故, ...

  8. Unity之fragment shader中如何获得视口空间中的坐标

    2种方法: 1. 使用 VPOS 或 WPOS语义,如: Shader "Test/ScreenPos1" { SubShader { Pass { CGPROGRAM #prag ...

  9. Unity 5.x Shader and Effects Cookbook(2nd) (Alan Zucconi Kenneth Lammers 著)

    1. Creating Your First Shader 2. Surface Shaders and Texture Mapping 3. Understanding Lighting Model ...

随机推荐

  1. x01.TextProc: 两三分钟完成的一个小工具

    在工作中,遇到这么个问题,需要将 Excel 表中类似 2134-1234-4456 的商品编号输入到单位的程序中,而程序只认 213412344456 这种没有 ‘-’ 的输入.数量比较多,一笔一笔 ...

  2. linux下的守护进程daemon

    什么是守护进程?其实感觉守护进程并没有什么明确的定义,只是守护进程有一些特征,这是它需要遵循的. 守护进程的第一个特征是长时间在后台运行的程序,并且主要是为了提供某种服务,而为了能够让服务尽可能随时都 ...

  3. Ubuntu的个个版本代号

    首先版本号跟发布日期有关,.04 为 4月份发布,.10 则在10月份发布.另外每个版本都会选一个动物作为代号,下面是 Ubuntu 从 4.10 开始的版本代号和对应动物: Ubuntu Warty ...

  4. [Django]数据批量导入

    前言:历经一个月的复习,考试终于结束了.这期间上班的时候有研究了Django网页制作过程中,如何将数据批量导入到数据库中. 这个过程真的是惨不忍睹,犯了很多的低级错误,这会在正文中说到的.再者导入数据 ...

  5. Entity Framework 6 with MySql

        MySQL Connector/Net 6.8.x MySQL Server 5.1 or above Entity Framework 6 assemblies .NET Framework ...

  6. spark dataframe unionall

    今天本来想写一个spark dataframe unionall的demo,由于粗心报下面错误: Exception in thread "main" org.apache.spa ...

  7. Leetcode study time

    August 2, 2015 在http://zzk.cnblogs.com/ 用"找一找", 花了几个小时, 找出比较好的Leetcode博客. Read the leetcod ...

  8. JS入门学习,写一个简单的选项卡

    /* 经过昨天一整天的纠结和摸索.总结下学习初期我最致命的几个问题…… 1.var oDiv = document.getElementById('');    一定要多输,熟悉后o u什么的字母别搞 ...

  9. 【CSS】其他CSS属性和特性

    1. 设置元素的颜色和透明度 前面有介绍CSS颜色的各种用法,如 background-color属性.boder-color属性等.还有另外两个与颜色有关的属性. 1.1 设置前景色 color属性 ...

  10. jquery的回调对象Callbacks详解

    Callbacks : 对函数的统一管理 Callbacks的options参数接受4个属性,分别是once : 只执行一次momery : 记忆stopOnFalse : 强制退出循环unique ...