// CRC32: A87D7AC7 | Unity headers extracted from Particle.shader
// Shader "Custom/Particle" {
//   Properties {
//    _MainTex ("Texture (RGB)", 2D) = "white" { }
//    _EmissiveTex ("Emissive (RGB)", 2D) = "black" { }
//    _Glossiness ("Glossiness", Float) = 1
//    _SpecularPower ("Specular Power", Float) = 1
//   }
//   Fallback Off
//   SubShader 1/1 {
//     Tags { "QUEUE"="Transparent" "RenderType"="Transparent" }
//     Pass 1/2 {
//       Name "FORWARD"
//       Tags { "LIGHTMODE"="ForwardBase" "QUEUE"="Transparent" "RenderType"="Transparent" }
//       ZWrite Off
//       Blend SrcAlpha OneMinusSrcAlpha
//       ColorMask RGB
//       GpuProgramID 46369
//       Program "fp" {
//         SubProgram "d3d9 " {
//           Keywords { "DIRECTIONAL" "DIRLIGHTMAP_OFF" "DYNAMICLIGHTMAP_OFF" "LIGHTMAP_OFF" }
//           Float 3 [_Glossiness]
//           Vector 2 [_LightColor0]
//           Float 4 [_SpecularPower]
//           Vector 0 [_WorldSpaceCameraPos]
//           Vector 1 [_WorldSpaceLightPos0]
//           SetTexture 0 [_MainTex] 2D 0
//           SetTexture 1 [_EmissiveTex] 2D 1
//           SetTexture 2 [_Env_LightCubeTex] CUBE 2
//           SetTexture 3 [_Env_ReflectedCubeTex] CUBE 3
//         }
//       }
//     }
//   }
// }
// 
// Headers extracted with DarkStarSword's extract_unity_shaders.py
// https://raw.githubusercontent.com/DarkStarSword/3d-fixes/master/extract_unity_shaders.py

    ps_3_0
    def c5, 0, 0, 0, 0
    dcl_texcoord v0.xy
    dcl_texcoord1_pp v1.xyz
    dcl_texcoord2 v2.xyz
    dcl_color v3.w
    dcl_texcoord3_pp v4.xyz
    dcl_2d s0
    dcl_2d s1
    dcl_cube s2
    dcl_cube s3

def c220, 0, 1, 0.0625, 0.5
dcl_2d s13

texldl r31, c220.z, s13

// Unity reflection/specular fix inserted with DarkStarSword's shadertool.py:
// shadertool.py -I ../.. --fix-unity-reflection --only-autofixed --ignore-register-errors Custom_Particle/fp/A87D7AC7.txt
mov r30, c0
mov r29, c220.x
mul r29.x, r31.x, -r31.y
dp4 r28.x, c180, r29
dp4 r28.y, c181, r29
dp4 r28.z, c182, r29
dp4 r28.w, c183, r29
dp4 r29.x, c190, r28
dp4 r29.y, c191, r28
dp4 r29.z, c192, r28
add r30.xyz, r30, -r29

    add r0.xyz, r30, -v2
    nrm_pp r1.xyz, r0
    dp3_pp r0.x, -r1, v1
    add_pp r0.x, r0.x, r0.x
    mad_pp r0.xyz, v1, -r0.x, -r1
    texld r0, r0, s3
    log r1.x, r0.x
    log r1.y, r0.y
    log r1.z, r0.z
    mul r0.xyz, r1, c4.x
    exp r1.x, r0.x
    exp r1.y, r0.y
    exp r1.z, r0.z
    mul_pp r0.xyz, r1, c3.x
    texld r1, v1, s2
    texld r2, v0, s0
    mad_pp r0.xyz, r2, r1, r0
    dp3_pp r0.w, v1, c1
    mul_pp r1.xyz, r2, c2
    mad_pp r0.xyz, r1, r0.w, r0
    mov_pp r1.w, c5.x
    mul_pp r0.w, r2.w, v3.w
    mul_pp r1.xyz, r2, v4
    add_pp r0, r0, r1
    texld_pp r1, v0, s1
    add_pp oC0.xyz, r0, r1
    mov_pp oC0.w, r0.w
