Skip to content

Unlit_BlockCompose.glsl ​

源文件:shaders/Unlit_BlockCompose.glsl

glsl
// shader   : Unlit/BlockCompose
// asset    : sharedassets12.assets
// platform : 9

#ifdef VERTEX
#version 300 es

#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
#if HLSLCC_ENABLE_UNIFORM_BUFFERS
#define UNITY_UNIFORM
#else
#define UNITY_UNIFORM uniform
#endif
#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
#if UNITY_SUPPORTS_UNIFORM_LOCATION
#define UNITY_LOCATION(x) layout(location = x)
#define UNITY_BINDING(x) layout(binding = x, std140)
#else
#define UNITY_LOCATION(x)
#define UNITY_BINDING(x) layout(std140)
#endif
uniform 	vec4 hlslcc_mtx4x4unity_ObjectToWorld[4];
uniform 	vec4 hlslcc_mtx4x4unity_MatrixVP[4];
uniform 	mediump vec4 _DisplaceMap_ST;
in highp vec4 in_POSITION0;
in highp vec2 in_TEXCOORD0;
out highp vec2 vs_TEXCOORD0;
out highp vec2 vs_TEXCOORD1;
vec4 u_xlat0;
vec4 u_xlat1;
void main()
{
    vs_TEXCOORD1.xy = in_TEXCOORD0.xy * _DisplaceMap_ST.xy + _DisplaceMap_ST.zw;
    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
    u_xlat0 = in_POSITION0.yyyy * hlslcc_mtx4x4unity_ObjectToWorld[1];
    u_xlat0 = hlslcc_mtx4x4unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
    u_xlat0 = hlslcc_mtx4x4unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
    u_xlat0 = u_xlat0 + hlslcc_mtx4x4unity_ObjectToWorld[3];
    u_xlat1 = u_xlat0.yyyy * hlslcc_mtx4x4unity_MatrixVP[1];
    u_xlat1 = hlslcc_mtx4x4unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
    u_xlat1 = hlslcc_mtx4x4unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
    gl_Position = hlslcc_mtx4x4unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
    return;
}

#endif
#ifdef FRAGMENT
#version 300 es

precision highp float;
precision highp int;
#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
#if HLSLCC_ENABLE_UNIFORM_BUFFERS
#define UNITY_UNIFORM
#else
#define UNITY_UNIFORM uniform
#endif
#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
#if UNITY_SUPPORTS_UNIFORM_LOCATION
#define UNITY_LOCATION(x) layout(location = x)
#define UNITY_BINDING(x) layout(binding = x, std140)
#else
#define UNITY_LOCATION(x)
#define UNITY_BINDING(x) layout(std140)
#endif
uniform 	vec4 _Time;
uniform 	mediump float _DisplaceSpeed;
uniform 	mediump float _DisplaceStrength;
uniform 	mediump vec4 _DisplaceDirection;
UNITY_LOCATION(0) uniform mediump sampler2D _DisplaceMap;
UNITY_LOCATION(1) uniform mediump sampler2D _NormalBlockRT;
UNITY_LOCATION(2) uniform mediump sampler2D _SubtractBlockRT;
in highp vec2 vs_TEXCOORD0;
in highp vec2 vs_TEXCOORD1;
layout(location = 0) out mediump float SV_Target0;
mediump vec2 u_xlat16_0;
vec2 u_xlat1;
mediump float u_xlat16_1;
mediump float u_xlat16_4;
vec2 u_xlat5;
mediump float u_xlat16_5;
mediump float u_xlat16_6;
void main()
{
    u_xlat16_0.x = dot(_DisplaceDirection.xy, _DisplaceDirection.xy);
    u_xlat16_0.x = inversesqrt(u_xlat16_0.x);
    u_xlat16_0.xy = u_xlat16_0.xx * _DisplaceDirection.xy;
    u_xlat1.x = _Time.x * _DisplaceSpeed;
    u_xlat5.y = u_xlat16_0.x * u_xlat1.x;
    u_xlat5.x = (-u_xlat16_0.y) * u_xlat1.x;
    u_xlat1.xy = u_xlat16_0.xy * u_xlat1.xx + vs_TEXCOORD1.xy;
    u_xlat16_1 = texture(_DisplaceMap, u_xlat1.xy).x;
    u_xlat16_4 = u_xlat16_1 + -0.5;
    u_xlat1.xy = u_xlat5.xy + vs_TEXCOORD1.xy;
    u_xlat16_1 = texture(_DisplaceMap, u_xlat1.xy).x;
    u_xlat16_6 = u_xlat16_1 + -0.5;
    u_xlat1.x = u_xlat16_6 * (-u_xlat16_0.y);
    u_xlat1.y = u_xlat16_6 * u_xlat16_0.x;
    u_xlat1.xy = u_xlat16_0.xy * vec2(u_xlat16_4) + u_xlat1.xy;
    u_xlat1.xy = u_xlat1.xy * vec2(vec2(_DisplaceStrength, _DisplaceStrength)) + vs_TEXCOORD0.xy;
    u_xlat16_5 = texture(_NormalBlockRT, u_xlat1.xy).x;
    u_xlat16_1 = texture(_SubtractBlockRT, u_xlat1.xy).x;
    u_xlat16_0.x = (-u_xlat16_5) + u_xlat16_1;
    SV_Target0 = abs(u_xlat16_0.x);
    return;
}

#endif
��������u
����������������������$Globals�����������������u
��������������������������#ifdef VERTEX
#version 300 es

#define HLSLCC_ENABLE_UNIFORM_BUFFERS 1
#if HLSLCC_ENABLE_UNIFORM_BUFFERS
#define UNITY_UNIFORM
#else
#define UNITY_UNIFORM uniform
#endif
#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
#if UNITY_SUPPORTS_UNIFORM_LOCATION
#define UNITY_LOCATION(x) layout(location = x)
#define UNITY_BINDING(x) layout(binding = x, std140)
#else
#define UNITY_LOCATION(x)
#define UNITY_BINDING(x) layout(std140)
#endif
uniform 	vec4 hlslcc_mtx4x4unity_ObjectToWorld[4];
uniform 	vec4 hlslcc_mtx4x4unity_MatrixVP[4];
in highp vec4 in_POSITION0;
in highp vec2 in_TEXCOORD0;
out highp vec2 vs_TEXCOORD0;
vec4 u_xlat0;
vec4 u_xlat1;
void main()
{
    vs_TEXCOORD0.xy = in_TEXCOORD0.xy;
    u_xlat0 = in_POSITION0.yyyy * hlslcc_mtx4x4unity_ObjectToWorld[1];
    u_xlat0 = hlslcc_mtx4x4unity_ObjectToWorld[0] * in_POSITION0.xxxx + u_xlat0;
    u_xlat0 = hlslcc_mtx4x4unity_ObjectToWorld[2] * in_POSITION0.zzzz + u_xlat0;
    u_xlat0 = u_xlat0 + hlslcc_mtx4x4unity_ObjectToWorld[3];
    u_xlat1 = u_xlat0.yyyy * hlslcc_mtx4x4unity_MatrixVP[1];
    u_xlat1 = hlslcc_mtx4x4unity_MatrixVP[0] * u_xlat0.xxxx + u_xlat1;
    u_xlat1 = hlslcc_mtx4x4unity_MatrixVP[2] * u_xlat0.zzzz + u_xlat1;
    gl_Position = hlslcc_mtx4x4unity_MatrixVP[3] * u_xlat0.wwww + u_xlat1;
    return;
}

#endif
#ifdef FRAGMENT
#version 300 es

precision highp float;
precision highp int;
#define UNITY_SUPPORTS_UNIFORM_LOCATION 1
#if UNITY_SUPPORTS_UNIFORM_LOCATION
#define UNITY_LOCATION(x) layout(location = x)
#define UNITY_BINDING(x) layout(binding = x, std140)
#else
#define UNITY_LOCATION(x)
#define UNITY_BINDING(x) layout(std140)
#endif
UNITY_LOCATION(0) uniform mediump sampler2D _DisabledNormalBlockRT;
UNITY_LOCATION(1) uniform mediump sampler2D _DisabledSubtractBlockRT;
in highp vec2 vs_TEXCOORD0;
layout(location = 0) out mediump vec2 SV_Target0;
mediump float u_xlat16_0;
mediump float u_xlat16_1;
mediump vec2 u_xlat16_2;
void main()
{
    u_xlat16_0 = texture(_DisabledNormalBlockRT, vs_TEXCOORD0.xy).x;
    u_xlat16_2.xy = texture(_DisabledSubtractBlockRT, vs_TEXCOORD0.xy).xy;
    u_xlat16_1 = u_xlat16_2.x * u_xlat16_2.y + (-u_xlat16_0);
    SV_Target0.y = u_xlat16_2.y;
    SV_Target0.x = abs(u_xlat16_1);
    return;
}

#endif