summaryrefslogtreecommitdiff
path: root/VRCSDK3AvatarsLegacy/Assets/Avatars/Auri/materials/OptimizedShaders/nails/Includes/CGI_PoiBackFace.cginc
blob: f08beb281c930000d422c9ed31ab9349c0ebb62a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#ifndef POI_BACKFACE
    #define POI_BACKFACE
    
    float _BackFaceEnabled;
    float _BackFaceTextureUV;
    float _BackFaceDetailIntensity;
    float _BackFaceEmissionStrength;
    float2 _BackFacePanning;
    float _BackFaceHueShift;
    float4 _BackFaceColor;

    #if defined(PROP_BACKFACETEXTURE) || !defined(OPTIMIZER_ENABLED)
        UNITY_DECLARE_TEX2D_NOSAMPLER(_BackFaceTexture); float4 _BackFaceTexture_ST;
    #endif
    
    float3 BackFaceColor;
    void applyBackFaceTexture(inout float backFaceDetailIntensity, inout float mixedHueShift, inout float4 albedo, inout float3 backFaceEmission)
    {
        backFaceEmission = 0;
        BackFaceColor = 0;
        
        if (float(0))
        {
            if(!poiMesh.isFrontFace)
            {
                #if defined(PROP_BACKFACETEXTURE) || !defined(OPTIMIZER_ENABLED)
                    albedo = POI2D_SAMPLER_PAN(_BackFaceTexture, _MainTex, poiMesh.uv[float(0)], float4(0,0,0,0)) * float4(1,1,1,1);
                #endif
                backFaceDetailIntensity = float(1);
                BackFaceColor = albedo.rgb;
                mixedHueShift = float(0);
                backFaceEmission = BackFaceColor * float(0);
            }
        }
    }
    
#endif