SFX_WIN Version=28 GroupVersion=1.44 Advanced=0 HelpID=8 ParentMaterial=0 NumberOfNodes=24 #NT=10100 0 PC=31 name=1 v=5000 _FlipBook version=1 v=2003 1.44 posx=1 v=2003 -978.827 posy=1 v=2003 -34.101 classname=1 v=5000 Flip Book submenuname=1 v=5000 Textures bitmapnodeindex=1 v=2002 64 helpid=1 v=2002 8 grpnodecolor=1 v=5012 6 grpPosX=1 v=2003 -1056.96 grpPosY=1 v=2003 40.1834 defineinheader_MyTexture=2 e=1 v=2001 0 value_FramesPerSec=2 e=1 v=2003 1.0 value_HorizontalImages=2 e=1 v=2003 2.0 value_VerticalImages=2 e=1 v=2003 2.0 texturepath_MyTexture=2 e=1 v=5000 uvindex_UVs=2 e=2 v=2002 0 exposetoui_MyTexture=2 e=3 v=2001 1 uvsetname_UVs=2 e=3 v=5000 autoPreviewTexture_MyTexture=2 e=4 v=2001 1 fullpathinshader_MyTexture=2 e=4 v=2001 0 value_ConvertToLinearSpace=2 e=4 v=2001 0 perinstanceunshared_UVs=2 e=4 v=2001 0 mipmaplevels_MyTexture=2 e=5 v=2002 -1 filter_SamplerState=2 e=6 v=5012 0 addressu_SamplerState=2 e=7 v=5012 0 addressv_SamplerState=2 e=8 v=5012 0 addressw_SamplerState=2 e=9 v=5012 0 bordercolor_SamplerState=2 e=10 v=3003 0.0,0.0,0.0,0.0 uiorder_MyTexture=2 e=12 v=2002 0 uigroup_MyTexture=2 e=13 v=5000 group=-1 ISC=5 SVT=5001 2003 0 0 0 _FramesPerSecond SVT=5001 2003 0 0 0 _Time SVT=5001 3001 0 0 0 _NumHorzAndVertImages SVT=5001 3001 0 0 0 _UV SVT=5001 1002 0 0 0 OSC=5 SVT=5001 2003 0 _FramesPerSecond CC=1 C=0 0 0 9 1 2 0 CPC=0 SVT=5001 2003 0 _Time CC=1 C=0 1 0 10 1 2 0 CPC=0 SVT=5001 3001 0 _NumHorzAndVertImages CC=1 C=0 2 0 11 1 2 0 CPC=0 SVT=5001 3001 0 _UV CC=1 C=0 3 0 12 1 2 0 CPC=0 SVT=5001 1002 0 CC=0 #NT=10101 0 PC=2 posx=1 v=2003 1331.15 posy=1 v=2003 274.823 group=0 ISC=3 SVT=5001 3002 0 0 0 _Color SVT=5001 2003 0 0 0 SVT=1001 1002 0 0 0 OSC=3 SVT=5001 3002 0 _Color CC=1 C=1 0 0 -1 3 0 0 CPC=0 SVT=5001 2003 0 CC=0 SVT=5001 1002 0 CC=0 #NT=20028 0 PC=10 posx=1 v=2003 185.28 posy=1 v=2003 230.632 fullpathinshader=2 e=4 v=2001 0 exposetoui=2 e=3 v=2001 1 autoPreviewTexture=2 e=4 v=2001 1 defineinheader=2 e=1 v=2001 0 texturenodename=2 e=0 v=5000 mipmaplevels=2 e=5 v=2002 -1 uiorder=2 e=12 v=2002 0 uigroup=2 e=13 v=5000 group=0 ISC=3 SVT=2002 2002 1 0 0 SVT=2002 2002 3 0 0 SVT=2002 2002 4 0 0 OSC=1 SVT=5001 5011 2 CC=2 C=2 0 2 3 0 1 0 CPC=0 C=2 0 2 4 0 3 0 CPC=0 #NT=20029 0 PC=2 posx=1 v=2003 630.599 posy=1 v=2003 246.887 group=0 ISC=7 SVT=5001 5011 1 0 0 SVT=5001 3001 2 0 0 SVT=5001 2003 3 0 0 SVT=5001 5013 4 0 0 SVT=5001 2002 11 0 0 SVT=5001 2002 12 0 0 SVT=2002 2002 13 0 0 OSC=6 SVT=5001 3003 5 CC=0 SVT=5001 3002 6 CC=2 C=3 1 6 5 2 3 0 CPC=0 C=3 1 6 17 0 0 0 CPC=0 SVT=5001 2003 7 CC=0 SVT=5001 2003 8 CC=0 SVT=5001 2003 9 CC=0 SVT=5001 2003 10 CC=1 C=3 5 10 1 1 0 0 CPC=0 #NT=20092 0 PC=7 posx=1 v=2003 380.087 posy=1 v=2003 376.56 filter=2 e=6 v=5012 0 addressu=2 e=7 v=5012 0 addressv=2 e=8 v=5012 0 addressw=2 e=9 v=5012 0 bordercolor=2 e=10 v=3003 0.0,0.0,0.0,0.0 group=0 ISC=2 SVT=5001 5011 3 0 0 SVT=2002 2002 2 0 0 OSC=1 SVT=5001 5013 1 CC=1 C=4 0 1 3 3 4 0 CPC=0 #NT=20093 0 PC=3 name=1 v=5000 IftruethenAelseB posx=1 v=2003 1049.45 posy=1 v=2003 212.807 group=0 ISC=3 SVT=2001 2001 1 0 0 SVT=5001 3002 2 0 0 SVT=5001 3002 3 0 0 OSC=1 SVT=5001 3002 4 CC=1 C=5 0 4 1 0 0 0 CPC=0 #NT=20116 0 PC=5 name=1 v=5000 ConvertToLinearSpace posx=1 v=2003 841.739 posy=1 v=2003 136.339 collapsed=1 v=2001 1 value=2 e=4 v=2001 0 group=0 ISC=0 OSC=2 SVT=2001 2001 1 CC=1 C=6 0 1 5 0 1 0 CPC=0 SVT=2001 2001 2 CC=0 #NT=20017 0 PC=6 name=1 v=5000 FramesPerSec posx=1 v=2003 -608.403 posy=1 v=2003 -13.4876 collapsed=1 v=2001 1 value=2 e=1 v=2003 1.0 exposetoui=1 v=2001 1 group=0 ISC=0 OSC=1 SVT=5001 2003 1 CC=1 C=7 0 1 9 0 1 0 CPC=0 #NT=20086 0 PC=3 posx=1 v=2003 -602.705 posy=1 v=2003 112.313 collapsed=1 v=2001 1 group=0 ISC=0 OSC=1 SVT=5001 2003 1 CC=1 C=8 0 1 10 0 1 0 CPC=0 #NT=20109 0 PC=2 posx=1 v=2003 -400.063 posy=1 v=2003 -21.7088 group=0 ISC=2 SVT=5001 2003 1 0 0 SVT=5001 2003 2 0 0 OSC=1 SVT=5001 2003 3 CC=1 C=9 0 3 18 0 0 0 CPC=0 #NT=20109 0 PC=2 posx=1 v=2003 -403.228 posy=1 v=2003 106.456 group=0 ISC=2 SVT=5001 2003 1 0 0 SVT=5001 2003 2 0 0 OSC=1 SVT=5001 2003 3 CC=1 C=10 0 3 18 1 0 0 CPC=0 #NT=20109 0 PC=2 posx=1 v=2003 -404.203 posy=1 v=2003 268.375 group=0 ISC=2 SVT=5001 3001 1 0 0 SVT=5001 3001 2 0 0 OSC=1 SVT=5001 3001 3 CC=1 C=11 0 3 18 2 0 0 CPC=0 #NT=20109 0 PC=2 posx=1 v=2003 -404.79 posy=1 v=2003 476.6 group=0 ISC=2 SVT=5001 3001 1 0 0 SVT=5001 3001 2 0 0 OSC=1 SVT=5001 3001 3 CC=1 C=12 0 3 18 3 0 0 CPC=0 #NT=20017 0 PC=5 name=1 v=5000 HorizontalImages posx=1 v=2003 -853.625 posy=1 v=2003 281.205 value=2 e=1 v=2003 2.0 uistep=2 e=0 v=2003 1.0 group=0 ISC=0 OSC=1 SVT=5001 2003 1 CC=1 C=13 0 1 15 0 1 0 CPC=0 #NT=20017 0 PC=5 name=1 v=5000 VerticalImages posx=1 v=2003 -851.573 posy=1 v=2003 378.922 value=2 e=1 v=2003 2.0 uistep=2 e=0 v=2003 1.0 group=0 ISC=0 OSC=1 SVT=5001 2003 1 CC=1 C=14 0 1 15 1 2 0 CPC=0 #NT=20020 0 PC=4 name=1 v=5000 Dimension posx=1 v=2003 -604.64 posy=1 v=2003 295.417 collapsed=1 v=2001 1 group=0 ISC=6 SVT=5001 2003 1 0 0 SVT=5001 2003 2 0 0 SVT=5001 3001 3 0 0 SVT=5001 2003 4 0 0 SVT=5001 3002 5 0 0 SVT=5001 2003 6 0 0 OSC=3 SVT=5001 3001 7 CC=1 C=15 0 7 11 0 1 0 CPC=0 SVT=5001 3002 8 CC=0 SVT=5001 3003 9 CC=0 #NT=10100 1 UV Set-Hw Shader Nodes-Inputs Common PC=14 name=1 v=5000 _UVSet version=1 v=2003 1.69 posx=1 v=2003 -599.717 posy=1 v=2003 430.669 classname=1 v=5000 UV Set submenuname=1 v=5000 Inputs Common bitmapnodeindex=1 v=2002 65 helpid=1 v=2002 23 grpnodecolor=1 v=5012 5 grpPosX=1 v=2003 -450.0 grpPosY=1 v=2003 -221.667 uvindex_UVs=2 e=2 v=2002 0 uvsetname_UVs=2 e=3 v=5000 perinstanceunshared_UVs=2 e=4 v=2001 0 group=0 ISC=4 SVT=2002 2002 0 0 0 SVT=5000 5000 0 0 0 SVT=2001 2001 0 0 0 SVT=1001 1002 0 0 0 OSC=3 SVT=5001 3003 0 _UVWZ CC=0 SVT=5001 3001 0 _UV CC=1 C=16 1 0 12 0 1 0 CPC=0 SVT=5001 1002 0 CC=0 #NT=10100 1 Color to Linear Space-Hw Shader Nodes-Various PC=12 name=1 v=5000 _ToLinearSpace version=1 v=2003 1.64 posx=1 v=2003 849.749 posy=1 v=2003 215.21 classname=1 v=5000 Color to Linear Space submenuname=1 v=5000 Various bitmapnodeindex=1 v=2002 2 isadvanced=1 v=2001 1 helpid=1 v=2002 3 grpnodecolor=1 v=5012 7 grpPosX=1 v=2003 -110.561 grpPosY=1 v=2003 -207.921 group=0 ISC=2 SVT=5001 3002 0 0 0 _Color SVT=5001 1002 0 0 0 OSC=2 SVT=5001 3002 0 _LinearColor CC=1 C=17 0 0 5 1 2 0 CPC=0 SVT=5001 1002 0 CC=0 #NT=10100 0 PC=7 name=1 v=5000 GenerateFlipBookUVs posx=1 v=2003 -88.0 posy=1 v=2003 190.0 isfunction=1 v=2001 1 functiondonotaddshaderdatastruct=1 v=2001 1 grpPosX=1 v=2003 -396.789 grpPosY=1 v=2003 94.0368 group=0 ISC=5 SVT=5001 2003 0 0 0 FramesPerSec SVT=5001 2003 0 0 0 Time SVT=5001 3001 0 0 0 NumImages SVT=5001 3001 0 0 0 UVs SVT=1001 1002 0 0 0 OSC=5 SVT=5001 2003 0 FramesPerSec CC=1 C=18 0 0 21 2 99 0 CPC=0 SVT=5001 2003 0 Time CC=1 C=18 1 0 21 3 100 0 CPC=0 SVT=5001 3001 0 NumImages CC=1 C=18 2 0 20 0 1 0 CPC=0 SVT=5001 3001 0 UVs CC=1 C=18 3 0 21 6 103 0 CPC=0 SVT=1001 1002 0 CC=0 #NT=10101 0 PC=2 posx=1 v=2003 729.36 posy=1 v=2003 246.468 group=18 ISC=2 SVT=5001 3001 0 0 0 UVs SVT=1001 1002 0 0 0 OSC=2 SVT=5001 3001 0 UVs CC=1 C=19 0 0 3 1 2 0 CPC=0 SVT=1001 1002 0 CC=0 #NT=20108 0 PC=2 posx=1 v=2003 77.857 posy=1 v=2003 104.286 group=18 ISC=1 SVT=5001 3001 1 0 0 OSC=6 SVT=5001 2003 2 CC=1 C=20 0 2 21 4 101 0 CPC=0 SVT=5001 2003 3 CC=1 C=20 1 3 21 5 102 0 CPC=0 SVT=5001 3001 4 CC=0 SVT=5001 2003 5 CC=0 SVT=5001 3002 6 CC=0 SVT=5001 2003 7 CC=0 #NT=20161 0 PC=4 posx=1 v=2003 392.555 posy=1 v=2003 199.937 funcname=1 v=5000 FlipBook text=1 v=5000 \nstruct FlipBookOutput \n{ \n\tfloat2 UV; \n}; \n\n// HLSL fmod and GLSL mod are not identical, but since we only use it for positive number here, this is probably ok\n#if defined(SFX_GLSL_1_2) || defined(SFX_GLSL_4) || defined(SFX_OGSFX)\n\t#define fmod mod\n#endif\n\nFlipBookOutput FlipBookFunc( float frame_per_sec, float time, float sprite_per_row, float sprite_per_col, float2 uv ) \n{ \n\tFlipBookOutput OUT; \n\n\tfloat current_frame = floor( fmod(frame_per_sec * time, sprite_per_row * sprite_per_col) );\n\n\tfloat spriteU = fmod(current_frame, sprite_per_row) / sprite_per_row;\n\tfloat spriteV = floor(current_frame / sprite_per_row) / sprite_per_col;\n\n\t// add local UV offset\n\tspriteU += uv.x / sprite_per_row;\n\tspriteV += uv.y / sprite_per_col;\n\n\tOUT.UV = float2( spriteU, spriteV );\n\treturn OUT; \n} \n group=18 ISC=7 SVT=5001 5011 1 0 0 SVT=5001 5013 2 0 0 SVT=5001 2003 99 0 0 frame_per_sec SVT=5001 2003 100 0 0 time SVT=5001 2003 101 0 0 sprite_per_row SVT=5001 2003 102 0 0 sprite_per_col SVT=5001 3001 103 0 0 uv OSC=1 SVT=5001 3001 999 UV CC=1 C=21 0 999 19 0 0 0 CPC=0 #NT=20159 0 PC=1 posy=1 v=2003 557.746 group=0 ISC=0 OSC=1 SVT=2002 2002 1 CC=3 C=22 0 1 4 1 2 0 CPC=0 C=22 0 1 2 2 4 0 CPC=0 C=22 0 1 3 6 13 0 CPC=0 #NT=20175 0 PC=3 posx=1 v=2003 -82.5 posy=1 v=2003 -121.607 text=1 v=5000 color GenerateFlipBookUVsFunction(float FramesPerSec, float Time, color NumImages, color UVs)\n{\n int current_frame = (int) floor( (int)(FramesPerSec * Time) % (int)(NumImages[0] * NumImages[1]) );\n float spriteU = (current_frame % (int)NumImages[0]) / NumImages[0];\n float spriteV = floor(current_frame / NumImages[0]) / NumImages[1];\n // add local UV offset\n spriteU += UVs[0] / NumImages[0];\n spriteV += UVs[1] / NumImages[1];\n color out = color(spriteU, spriteV, 0.0);\n \n return out;\n}\n\ncolor flip_texture(string path, float FramesPerSec, float Time, color NumHorzAndVertImages, float U, float V, int swrap, int twrap, string alphaParam, float a)\n{\n\n color UVs = GenerateFlipBookUVsFunction(FramesPerSec, Time, NumHorzAndVertImages, color(U,V,0));\n \n string swrapParam;\n string twrapParam;\n if(swrap == 0)\n swrapParam = "periodic";\n else if(swrap == 1)\n swrapParam = "clamp";\n else if(swrap == 2)\n swrapParam = "mirror";\n else \n swrapParam = "black";\n\n if(twrap == 0)\n twrapParam = "periodic";\n else if(twrap == 1)\n twrapParam = "clamp";\n else if(twrap == 2)\n twrapParam = "mirror";\n else\n twrapParam = "black";\n\n color map = texture(path, UVs[0], (1-UVs[1]), alphaParam, a, "swrap", swrapParam, "twrap", twrapParam);\n return map;\n}\n\nflip_texture( [[ PROP = texturepath_MyTexture ]], [[ INPUT = FramesPerSecond ? 5.0 ]], [[ INPUT = Time ? 0.0 ]], [[ INPUT = NumHorzAndVertImages ? 2 ]], [[ INPUT = UV.x ? u ]], [[ INPUT = UV.y ? -v+1 ]], [[ PROP = addressu_SamplerState ]], [[ PROP = addressv_SamplerState ]] ) group=0 ISC=0 OSC=0