一:标准库里的常用.cginc文件

    • HLSLSupport.cginc - (automatically included) Helper macros and definitions for cross-platform shader compilation. 
      HLSLSupport.cginc :(自动包含)跨平台着色器编译帮助宏和定义
    • UnityCG.cginc - commonly used global variables and helper functions. 
      UnityCG.cginc :常用的全局变量和辅助函数
    • AutoLight.cginc - lighting & shadowing functionality, e.g. surface shaders use this file internally. 
      AutoLight.cginc :灯光和阴影功能,例如surface shaders 内在地使用此文件。
    • Lighting.cginc - standard surface shader lighting models; automatically included when you're writing surface shaders. 
      Lighting.cginc :标准surface shader 灯光模型,当你写表面着色器时自动包含。
    • TerrainEngine.cginc - helper functions for Terrain & Vegetation shaders. 
      TerrainEngine.cginc : 地形和植被着色器的辅助函数。

二:辅助函数

Generic helper functions in UnityCG.cginc 在UnityCG.cginc中的通用辅助函数

    • float3 WorldSpaceViewDir (float4 v) - returns world space direction (not normalized) from given object space vertex position towards the camera. 
      float3 WorldSpaceViewDir (float4 v):根据给定的局部空间顶点位置到相机返回世界空间的方向(非规范化的)
    • float3 ObjSpaceViewDir (float4 v) - returns object space direction (not normalized) from given object space vertex position towards the camera. 
      float3 ObjSpaceViewDir (float4 v):根据给定的局部空间顶点位置到相机返回局部空间的方向(非规范化的)
    • float2 ParallaxOffset (half h, half height, half3 viewDir) - calculates UV offset for parallax normal mapping. 
      float2 ParallaxOffset (half h, half height, half3 viewDir):为视差法线贴图计算UV偏移
    • fixed Luminance (fixed3 c) - converts color to luminance (grayscale). 
      fixed Luminance (fixed3 c):将颜色转换为亮度(灰度)
    • fixed3 DecodeLightmap (fixed4 color) - decodes color from Unity lightmap (RGBM or dLDR depending on platform). 
      fixed3 DecodeLightmap (fixed4 color):从Unity光照贴图解码颜色(基于平台为RGBM 或dLDR)
    • float4 EncodeFloatRGBA (float v) - encodes [0..1) range float into RGBA color, for storage in low precision render target. 
      float4 EncodeFloatRGBA (float v):为储存低精度的渲染目标,编码[0..1)范围的浮点数到RGBA颜色。
    • float DecodeFloatRGBA (float4 enc) - decodes RGBA color into a float. 
      float DecodeFloatRGBA (float4 enc):解码RGBA颜色到float。
    • Similarly, float2 EncodeFloatRG (float v) and float DecodeFloatRG (float2 enc) that use two color channels. 
      同样的,float2 EncodeFloatRG (float v) 和float DecodeFloatRG (float2 enc)使用的是两个颜色通道。
    • float2 EncodeViewNormalStereo (float3 n) - encodes view space normal into two numbers in 0..1 range. 
      float2 EncodeViewNormalStereo (float3 n):编码视图空间法线到在0到1范围的两个数。
    • float3 DecodeViewNormalStereo (float4 enc4) - decodes view space normal from enc4.xy. 
      float3 DecodeViewNormalStereo (float4 enc4):从enc4.xy解码视图空间法线

Forward rendering helper functions in UnityCG.cginc
UnityCG.cginc正向渲染辅助函数

These functions are only useful when using forward rendering (ForwardBase or ForwardAdd pass types).

这些函数只有当使用forward rendering(ForwardBase 或 ForwardAdd通道类型)时才有效。

    • float3 WorldSpaceLightDir (float4 v) - computes world space direction (not normalized) to light, given object space vertex position. 
      根据局部空间顶点位置计算世界空间灯光方向(非规范化的)。
    • float3 ObjSpaceLightDir (float4 v) - computes object space direction (not normalized) to light, given object space vertex position. 
      根据局部空间顶点位置计算局部空间灯光方向(非规范化的)。
    • float3 Shade4PointLights (...) - computes illumination from four point lights, with light data tightly packed into vectors. Forward rendering uses this to compute per-vertex lighting. 
      从4个点光源计算亮度,来将光照数据牢固的装入向量中。正向渲染使用此来计算逐顶点光照。

Vertex-lit helper functions in UnityCG.cginc
UnityCG.cginc中的顶点光照辅助函数

These functions are only useful when using per-vertex lit shaders ("Vertex" pass type).

这些函数只在当使用逐顶点光照着色器(“顶点”通道类型)时才有效。

    • float3 ShadeVertexLights (float4 vertex, float3 normal) - computes illumination from four per-vertex lights and ambient, given object space position & normal. 
      根据局部空间位置和法线,从4个逐顶点灯光和环境光计算亮度。

三:内置变量 http://docs.unity3d.com/Manual/SL-UnityShaderVariables.html

  • unity_SpecCube0unity_SpecCube0_HDR from the built-in shader variables. unity_SpecCube0 contains data for the active reflection probe. //unity_SpecCube0包含了现在激活的反射探头, unity_SpecCube0_HDR是其HDR颜色数据。

Unity 内置Shader变量、辅助函数等的更多相关文章

  1. unity 内置shader

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

  2. Unity内置shader 下载

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

  3. osg内置shader变量

    uniform int osg_FrameNumber:当前OSG程序运行的帧数: uniform float osg_FrameTime:当前OSG程序的运行总时间: uniform float o ...

  4. CESIUM内置shader变量和函数[转]

    cesium中内置了一些常量.变量和函数,在vs和fs中可直接使用. 内置uniform 内置uniform主要置于AutomaticUniforms类里面,该类私有未开放文档. czm_backgr ...

  5. unity, 内置shader下载地址

    在unity的download页面上能找到Built in shaders的下载连接.

  6. 【Unity Shaders】使用CgInclude让你的Shader模块化——Unity内置的CgInclude文件

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

  7. Unity内置的shader include files

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

  8. unity, 查看内置shader源码

    1,建一个球体. 2,建一个材质,将材质拖到球体上. 3,在材质的shader下拉列表中选择想查看的内置shader,点材质栏右上设置按钮->Select Shader 进入shader面板. ...

  9. GLSL语言内置的变量详解

    GLSL语言内置的变量,包括内置的顶点属性(attribute).一致变量(uniform).易变变量(varying)以及常量(const),一方面加深印象,另一方面今天的文章可以为以后的编程做查询 ...

随机推荐

  1. JavaString库

    String库 .length() 字符串的长度,一个字符串为空(空字符串对象)和null(不指向任何对象)是两个概念,中文字符和英文字符是一样的计数(一个中文是一个字符,一个英文字母是一个字符) . ...

  2. 【codeforces 505D】Mr. Kitayuta's Technology

    [题目链接]:http://codeforces.com/problemset/problem/505/D [题意] 让你构造一张有向图; n个点; 以及所要求的m对联通关系(xi,yi) 即要求这张 ...

  3. MFC 加入背景图片并让控件背景透明

    /*加入背景图片*/ BOOL CTOOLDlg::OnEraseBkgnd(CDC* pDC) {  // TODO: 在此加入消息处理程序代码和/或调用默认值  CDialog::OnEraseB ...

  4. node--19 moogose demo1

    db.js /** * Created by Danny on 2015/9/28 16:44. */ //引包 var mongoose = require('mongoose'); //创建数据库 ...

  5. [TJOI2017] DNA 解题报告 (hash+二分)

    题目链接:https://www.luogu.org/problemnew/show/P3763 题目大意: 给定原串S0,询问S0有多少个子串和给定串S相差不到3个字母 题解: 我们枚举S0的子串, ...

  6. 10.ref regex unordered_set smartpoint

    ref引用不可以复制的对象 void print(std::ostream &os, int i) { os << i << endl; } //ref引用不可以复制的 ...

  7. css实现左右两端对齐均匀排列 text-align: justify

    1.实现一行文字的两端对齐均匀排列 为了实现效果只是加上一个text-align: justify;是没效果的.所以需要加上一个空标签<span><i>都可以,也可以用伪类来写 ...

  8. WPF 基础

    关于布局的规则 控件的布局应该由容器来决定,而不是通过自身使用margin之类的东西来控制位置 避免为控件定义明确的尺寸,但应该限定一个可接受的最大及最小尺寸 不要将界面元素设置成与屏幕坐标相关 容器 ...

  9. DotNetCore.1.0.1-VS2015Tools.Preview2.0.3 相关问题及解决办法

    本月16号,MS发布了 .NET Core 1.1.作为一个用贯MS产品的小盆友,我第一时间就把相关的安装包下载下来了,然后果断安装(入坑). 我猜你来看这篇博客可能遇到了和我一样的问题. 问题0:正 ...

  10. 优动漫PAINT画树教程

    依次解析画树要点!让画树不再是难事~ 优动漫PAINT下载:http://wm.makeding.com/iclk/?zoneid=18597