标签:
一:标准库里的常用.cginc文件
HLSLSupport.cginc
- (automatically included) Helper macros and definitions for cross-platform shader compilation. UnityCG.cginc
- commonly used global variables and helper functions. AutoLight.cginc
- lighting & shadowing functionality, e.g. surface shaders use this file internally. Lighting.cginc
- standard surface shader lighting models; automatically included when you‘re writing surface shaders. TerrainEngine.cginc
- helper functions for Terrain & Vegetation shaders. 二:辅助函数
float3 WorldSpaceViewDir (float4 v)
- returns world space direction (not normalized) from given object space vertex position towards the camera. float3 ObjSpaceViewDir (float4 v)
- returns object space direction (not normalized) from given object space vertex position towards the camera. float2 ParallaxOffset (half h, half height, half3 viewDir)
- calculates UV offset for parallax normal mapping. fixed Luminance (fixed3 c)
- converts color to luminance (grayscale). fixed3 DecodeLightmap (fixed4 color)
- decodes color from Unity lightmap (RGBM or dLDR depending on platform). float4 EncodeFloatRGBA (float v)
- encodes [0..1) range float into RGBA color, for storage in low precision render target. float DecodeFloatRGBA (float4 enc)
- decodes RGBA color into a float. float2 EncodeFloatRG (float v)
and float DecodeFloatRG (float2 enc)
that use two color channels. float2 EncodeViewNormalStereo (float3 n)
- encodes view space normal into two numbers in 0..1 range. float3 DecodeViewNormalStereo (float4 enc4)
- decodes view space normal from enc4.xy. 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. 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. 三:内置变量 http://docs.unity3d.com/Manual/SL-UnityShaderVariables.html
标签:
原文地址:http://www.cnblogs.com/naturelight/p/5477302.html