GLSL source for vertex shader 2: #version 120 uniform mat4 gxl3d_ModelViewProjectionMatrix; void main() { gl_Position = gxl3d_ModelViewProjectionMatrix * gl_Vertex; gl_FrontColor = gl_Color; } GLSL IR for shader 2: ( (declare (shader_in ) float gl_FogCoord) (declare (shader_in ) vec4 gl_MultiTexCoord7) (declare (shader_in ) vec4 gl_MultiTexCoord6) (declare (shader_in ) vec4 gl_MultiTexCoord5) (declare (shader_in ) vec4 gl_MultiTexCoord4) (declare (shader_in ) vec4 gl_MultiTexCoord3) (declare (shader_in ) vec4 gl_MultiTexCoord2) (declare (shader_in ) vec4 gl_MultiTexCoord1) (declare (shader_in ) vec4 gl_MultiTexCoord0) (declare (shader_in ) vec4 gl_SecondaryColor) (declare (shader_in ) vec4 gl_Color) (declare (shader_in ) vec3 gl_Normal) (declare (shader_in ) vec4 gl_Vertex) (declare (shader_out ) vec4 gl_BackSecondaryColor) (declare (shader_out ) vec4 gl_FrontSecondaryColor) (declare (shader_out ) vec4 gl_BackColor) (declare (shader_out ) vec4 gl_FrontColor) (declare (shader_out ) vec4 gl_ClipVertex) (declare (shader_out ) float gl_FogFragCoord) (declare (shader_out ) (array vec4 0) gl_TexCoord) (declare (shader_out ) float gl_PointSize) (declare (shader_out ) vec4 gl_Position) (declare (uniform ) gl_FogParameters gl_Fog) (declare (uniform ) (array vec4 8) gl_ObjectPlaneQ) (declare (uniform ) (array vec4 8) gl_ObjectPlaneR) (declare (uniform ) (array vec4 8) gl_ObjectPlaneT) (declare (uniform ) (array vec4 8) gl_ObjectPlaneS) (declare (uniform ) (array vec4 8) gl_EyePlaneQ) (declare (uniform ) (array vec4 8) gl_EyePlaneR) (declare (uniform ) (array vec4 8) gl_EyePlaneT) (declare (uniform ) (array vec4 8) gl_EyePlaneS) (declare (uniform ) (array vec4 8) gl_TextureEnvColor) (declare (uniform ) (array gl_LightProducts 8) gl_BackLightProduct) (declare (uniform ) (array gl_LightProducts 8) gl_FrontLightProduct) (declare (uniform ) gl_LightModelProducts gl_BackLightModelProduct) (declare (uniform ) gl_LightModelProducts gl_FrontLightModelProduct) (declare (uniform ) (array gl_LightSourceParameters 8) gl_LightSource) (declare (uniform ) gl_MaterialParameters gl_BackMaterial) (declare (uniform ) gl_MaterialParameters gl_FrontMaterial) (declare (uniform ) gl_PointParameters gl_Point) (declare (uniform ) (array vec4 8) gl_ClipPlane) (declare (uniform ) (array mat4 8) gl_TextureMatrixInverseTranspose) (declare (uniform ) (array mat4 8) gl_TextureMatrixTranspose) (declare (uniform ) (array mat4 8) gl_TextureMatrixInverse) (declare (uniform ) (array mat4 8) gl_TextureMatrix) (declare (uniform ) vec4 gl_FogParamsOptimizedMESA) (declare (uniform ) vec2 gl_BumpRotMatrix1MESA) (declare (uniform ) vec2 gl_BumpRotMatrix0MESA) (declare (uniform ) gl_LightModelParameters gl_LightModel) (declare (uniform ) float gl_NormalScale) (declare (uniform ) mat4 gl_ModelViewProjectionMatrixInverseTranspose) (declare (uniform ) mat4 gl_ProjectionMatrixInverseTranspose) (declare (uniform ) mat4 gl_ModelViewMatrixInverseTranspose) (declare (uniform ) mat4 gl_ModelViewProjectionMatrixTranspose) (declare (uniform ) mat4 gl_ProjectionMatrixTranspose) (declare (uniform ) mat4 gl_ModelViewMatrixTranspose) (declare (uniform ) mat4 gl_ModelViewProjectionMatrixInverse) (declare (uniform ) mat4 gl_ProjectionMatrixInverse) (declare (uniform ) mat4 gl_ModelViewMatrixInverse) (declare (uniform ) mat3 gl_NormalMatrix) (declare (uniform ) mat4 gl_ModelViewProjectionMatrix) (declare (uniform ) mat4 gl_ProjectionMatrix) (declare (uniform ) mat4 gl_ModelViewMatrix) (declare (uniform ) (array vec4 55) gl_CurrentAttribFragMESA) (declare (uniform ) (array vec4 33) gl_CurrentAttribVertMESA) (declare (uniform ) gl_DepthRangeParameters gl_DepthRange) (declare (uniform ) int gl_NumSamples) (declare () int gl_MaxTextureCoords) (declare () int gl_MaxTextureUnits) (declare () int gl_MaxClipPlanes) (declare () int gl_MaxLights) (declare () int gl_MaxFragmentUniformComponents) (declare () int gl_MaxVaryingFloats) (declare () int gl_MaxVertexUniformComponents) (declare () int gl_MaxDrawBuffers) (declare () int gl_MaxTextureImageUnits) (declare () int gl_MaxCombinedTextureImageUnits) (declare () int gl_MaxVertexTextureImageUnits) (declare () int gl_MaxVertexAttribs) (declare (uniform ) mat4 gxl3d_ModelViewProjectionMatrix) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref gl_Position) (expression vec4 * (var_ref gxl3d_ModelViewProjectionMatrix) (var_ref gl_Vertex) ) ) (assign (xyzw) (var_ref gl_FrontColor) (var_ref gl_Color) ) )) ) ) GLSL source for fragment shader 3: #version 120 void main() { gl_FragColor = gl_Color; } GLSL IR for shader 3: ( (declare (shader_out ) float gl_FragDepth) (declare (shader_out ) (array vec4 8) gl_FragData) (declare (shader_out ) vec4 gl_FragColor) (declare (shader_in ) vec2 gl_PointCoord) (declare (shader_in ) bool gl_FrontFacing) (declare (shader_in ) vec4 gl_FragCoord) (declare (shader_in ) vec4 gl_SecondaryColor) (declare (shader_in ) vec4 gl_Color) (declare (shader_in ) float gl_FogFragCoord) (declare (shader_in ) (array vec4 0) gl_TexCoord) (declare (uniform ) gl_FogParameters gl_Fog) (declare (uniform ) (array vec4 8) gl_ObjectPlaneQ) (declare (uniform ) (array vec4 8) gl_ObjectPlaneR) (declare (uniform ) (array vec4 8) gl_ObjectPlaneT) (declare (uniform ) (array vec4 8) gl_ObjectPlaneS) (declare (uniform ) (array vec4 8) gl_EyePlaneQ) (declare (uniform ) (array vec4 8) gl_EyePlaneR) (declare (uniform ) (array vec4 8) gl_EyePlaneT) (declare (uniform ) (array vec4 8) gl_EyePlaneS) (declare (uniform ) (array vec4 8) gl_TextureEnvColor) (declare (uniform ) (array gl_LightProducts 8) gl_BackLightProduct) (declare (uniform ) (array gl_LightProducts 8) gl_FrontLightProduct) (declare (uniform ) gl_LightModelProducts gl_BackLightModelProduct) (declare (uniform ) gl_LightModelProducts gl_FrontLightModelProduct) (declare (uniform ) (array gl_LightSourceParameters 8) gl_LightSource) (declare (uniform ) gl_MaterialParameters gl_BackMaterial) (declare (uniform ) gl_MaterialParameters gl_FrontMaterial) (declare (uniform ) gl_PointParameters gl_Point) (declare (uniform ) (array vec4 8) gl_ClipPlane) (declare (uniform ) (array mat4 8) gl_TextureMatrixInverseTranspose) (declare (uniform ) (array mat4 8) gl_TextureMatrixTranspose) (declare (uniform ) (array mat4 8) gl_TextureMatrixInverse) (declare (uniform ) (array mat4 8) gl_TextureMatrix) (declare (uniform ) vec4 gl_FogParamsOptimizedMESA) (declare (uniform ) vec2 gl_BumpRotMatrix1MESA) (declare (uniform ) vec2 gl_BumpRotMatrix0MESA) (declare (uniform ) gl_LightModelParameters gl_LightModel) (declare (uniform ) float gl_NormalScale) (declare (uniform ) mat4 gl_ModelViewProjectionMatrixInverseTranspose) (declare (uniform ) mat4 gl_ProjectionMatrixInverseTranspose) (declare (uniform ) mat4 gl_ModelViewMatrixInverseTranspose) (declare (uniform ) mat4 gl_ModelViewProjectionMatrixTranspose) (declare (uniform ) mat4 gl_ProjectionMatrixTranspose) (declare (uniform ) mat4 gl_ModelViewMatrixTranspose) (declare (uniform ) mat4 gl_ModelViewProjectionMatrixInverse) (declare (uniform ) mat4 gl_ProjectionMatrixInverse) (declare (uniform ) mat4 gl_ModelViewMatrixInverse) (declare (uniform ) mat3 gl_NormalMatrix) (declare (uniform ) mat4 gl_ModelViewProjectionMatrix) (declare (uniform ) mat4 gl_ProjectionMatrix) (declare (uniform ) mat4 gl_ModelViewMatrix) (declare (uniform ) (array vec4 55) gl_CurrentAttribFragMESA) (declare (uniform ) (array vec4 33) gl_CurrentAttribVertMESA) (declare (uniform ) gl_DepthRangeParameters gl_DepthRange) (declare (uniform ) int gl_NumSamples) (declare () int gl_MaxTextureCoords) (declare () int gl_MaxTextureUnits) (declare () int gl_MaxClipPlanes) (declare () int gl_MaxLights) (declare () int gl_MaxFragmentUniformComponents) (declare () int gl_MaxVaryingFloats) (declare () int gl_MaxVertexUniformComponents) (declare () int gl_MaxDrawBuffers) (declare () int gl_MaxTextureImageUnits) (declare () int gl_MaxCombinedTextureImageUnits) (declare () int gl_MaxVertexTextureImageUnits) (declare () int gl_MaxVertexAttribs) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref gl_FragColor) (var_ref gl_Color) ) )) ) ) GLSL IR for linked vertex program 1: ( (declare (shader_in ) vec4 gl_Color) (declare (shader_in ) vec4 gl_Vertex) (declare (shader_out ) vec4 gl_FrontColor) (declare (temporary ) vec4 gl_FrontColor) (declare (shader_out ) vec4 gl_Position) (declare (temporary ) vec4 gl_Position) (declare (uniform ) mat4 gxl3d_ModelViewProjectionMatrix) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref gl_Position) (expression vec4 + (expression vec4 + (expression vec4 + (expression vec4 * (array_ref (var_ref gxl3d_ModelViewProjectionMatrix) (constant int (0)) ) (swiz x (var_ref gl_Vertex) )) (expression vec4 * (array_ref (var_ref gxl3d_ModelViewProjectionMatrix) (constant int (1)) ) (swiz y (var_ref gl_Vertex) )) ) (expression vec4 * (array_ref (var_ref gxl3d_ModelViewProjectionMatrix) (constant int (2)) ) (swiz z (var_ref gl_Vertex) )) ) (expression vec4 * (array_ref (var_ref gxl3d_ModelViewProjectionMatrix) (constant int (3)) ) (swiz w (var_ref gl_Vertex) )) ) ) (assign (xyzw) (var_ref gl_FrontColor) (var_ref gl_Color) ) (assign (xyzw) (var_ref gl_Position@2) (var_ref gl_Position) ) (assign (xyzw) (var_ref gl_FrontColor@3) (var_ref gl_FrontColor) ) )) ) ) GLSL IR for linked fragment program 1: ( (declare (shader_out ) vec4 gl_FragColor) (declare (temporary ) vec4 gl_FragColor) (declare (shader_in ) vec4 gl_Color) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref gl_FragColor) (var_ref gl_Color) ) (assign (xyzw) (var_ref gl_FragColor@4) (var_ref gl_FragColor) ) )) ) ) GLSL IR for linked vertex program 1: ( (declare (shader_in ) vec4 gl_Color) (declare (shader_in ) vec4 gl_Vertex) (declare (shader_out ) vec4 gl_FrontColor) (declare (temporary ) vec4 gl_FrontColor) (declare (shader_out ) vec4 gl_Position) (declare (temporary ) vec4 gl_Position) (declare (uniform ) mat4 gxl3d_ModelViewProjectionMatrix) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref gl_Position) (expression vec4 + (expression vec4 + (expression vec4 + (expression vec4 * (array_ref (var_ref gxl3d_ModelViewProjectionMatrix) (constant int (0)) ) (swiz x (var_ref gl_Vertex) )) (expression vec4 * (array_ref (var_ref gxl3d_ModelViewProjectionMatrix) (constant int (1)) ) (swiz y (var_ref gl_Vertex) )) ) (expression vec4 * (array_ref (var_ref gxl3d_ModelViewProjectionMatrix) (constant int (2)) ) (swiz z (var_ref gl_Vertex) )) ) (expression vec4 * (array_ref (var_ref gxl3d_ModelViewProjectionMatrix) (constant int (3)) ) (swiz w (var_ref gl_Vertex) )) ) ) (assign (xyzw) (var_ref gl_FrontColor) (var_ref gl_Color) ) (assign (xyzw) (var_ref gl_Position@5) (var_ref gl_Position) ) (assign (xyzw) (var_ref gl_FrontColor@6) (var_ref gl_FrontColor) ) )) ) ) GLSL IR for linked fragment program 1: ( (declare (shader_out ) vec4 gl_FragColor) (declare (temporary ) vec4 gl_FragColor) (declare (shader_in ) vec4 gl_Color) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref gl_FragColor) (var_ref gl_Color) ) (assign (xyzw) (var_ref gl_FragColor@7) (var_ref gl_FragColor) ) )) ) ) GLSL source for vertex shader 5: #version 120 uniform mat4 gxl3d_ModelViewProjectionMatrix; void main() { gl_Position = gxl3d_ModelViewProjectionMatrix * gl_Vertex; gl_FrontColor = gl_Color; } GLSL IR for shader 5: ( (declare (shader_in ) float gl_FogCoord) (declare (shader_in ) vec4 gl_MultiTexCoord7) (declare (shader_in ) vec4 gl_MultiTexCoord6) (declare (shader_in ) vec4 gl_MultiTexCoord5) (declare (shader_in ) vec4 gl_MultiTexCoord4) (declare (shader_in ) vec4 gl_MultiTexCoord3) (declare (shader_in ) vec4 gl_MultiTexCoord2) (declare (shader_in ) vec4 gl_MultiTexCoord1) (declare (shader_in ) vec4 gl_MultiTexCoord0) (declare (shader_in ) vec4 gl_SecondaryColor) (declare (shader_in ) vec4 gl_Color) (declare (shader_in ) vec3 gl_Normal) (declare (shader_in ) vec4 gl_Vertex) (declare (shader_out ) vec4 gl_BackSecondaryColor) (declare (shader_out ) vec4 gl_FrontSecondaryColor) (declare (shader_out ) vec4 gl_BackColor) (declare (shader_out ) vec4 gl_FrontColor) (declare (shader_out ) vec4 gl_ClipVertex) (declare (shader_out ) float gl_FogFragCoord) (declare (shader_out ) (array vec4 0) gl_TexCoord) (declare (shader_out ) float gl_PointSize) (declare (shader_out ) vec4 gl_Position) (declare (uniform ) gl_FogParameters gl_Fog) (declare (uniform ) (array vec4 8) gl_ObjectPlaneQ) (declare (uniform ) (array vec4 8) gl_ObjectPlaneR) (declare (uniform ) (array vec4 8) gl_ObjectPlaneT) (declare (uniform ) (array vec4 8) gl_ObjectPlaneS) (declare (uniform ) (array vec4 8) gl_EyePlaneQ) (declare (uniform ) (array vec4 8) gl_EyePlaneR) (declare (uniform ) (array vec4 8) gl_EyePlaneT) (declare (uniform ) (array vec4 8) gl_EyePlaneS) (declare (uniform ) (array vec4 8) gl_TextureEnvColor) (declare (uniform ) (array gl_LightProducts 8) gl_BackLightProduct) (declare (uniform ) (array gl_LightProducts 8) gl_FrontLightProduct) (declare (uniform ) gl_LightModelProducts gl_BackLightModelProduct) (declare (uniform ) gl_LightModelProducts gl_FrontLightModelProduct) (declare (uniform ) (array gl_LightSourceParameters 8) gl_LightSource) (declare (uniform ) gl_MaterialParameters gl_BackMaterial) (declare (uniform ) gl_MaterialParameters gl_FrontMaterial) (declare (uniform ) gl_PointParameters gl_Point) (declare (uniform ) (array vec4 8) gl_ClipPlane) (declare (uniform ) (array mat4 8) gl_TextureMatrixInverseTranspose) (declare (uniform ) (array mat4 8) gl_TextureMatrixTranspose) (declare (uniform ) (array mat4 8) gl_TextureMatrixInverse) (declare (uniform ) (array mat4 8) gl_TextureMatrix) (declare (uniform ) vec4 gl_FogParamsOptimizedMESA) (declare (uniform ) vec2 gl_BumpRotMatrix1MESA) (declare (uniform ) vec2 gl_BumpRotMatrix0MESA) (declare (uniform ) gl_LightModelParameters gl_LightModel) (declare (uniform ) float gl_NormalScale) (declare (uniform ) mat4 gl_ModelViewProjectionMatrixInverseTranspose) (declare (uniform ) mat4 gl_ProjectionMatrixInverseTranspose) (declare (uniform ) mat4 gl_ModelViewMatrixInverseTranspose) (declare (uniform ) mat4 gl_ModelViewProjectionMatrixTranspose) (declare (uniform ) mat4 gl_ProjectionMatrixTranspose) (declare (uniform ) mat4 gl_ModelViewMatrixTranspose) (declare (uniform ) mat4 gl_ModelViewProjectionMatrixInverse) (declare (uniform ) mat4 gl_ProjectionMatrixInverse) (declare (uniform ) mat4 gl_ModelViewMatrixInverse) (declare (uniform ) mat3 gl_NormalMatrix) (declare (uniform ) mat4 gl_ModelViewProjectionMatrix) (declare (uniform ) mat4 gl_ProjectionMatrix) (declare (uniform ) mat4 gl_ModelViewMatrix) (declare (uniform ) (array vec4 55) gl_CurrentAttribFragMESA) (declare (uniform ) (array vec4 33) gl_CurrentAttribVertMESA) (declare (uniform ) gl_DepthRangeParameters gl_DepthRange) (declare (uniform ) int gl_NumSamples) (declare () int gl_MaxTextureCoords) (declare () int gl_MaxTextureUnits) (declare () int gl_MaxClipPlanes) (declare () int gl_MaxLights) (declare () int gl_MaxFragmentUniformComponents) (declare () int gl_MaxVaryingFloats) (declare () int gl_MaxVertexUniformComponents) (declare () int gl_MaxDrawBuffers) (declare () int gl_MaxTextureImageUnits) (declare () int gl_MaxCombinedTextureImageUnits) (declare () int gl_MaxVertexTextureImageUnits) (declare () int gl_MaxVertexAttribs) (declare (uniform ) mat4 gxl3d_ModelViewProjectionMatrix) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref gl_Position) (expression vec4 * (var_ref gxl3d_ModelViewProjectionMatrix) (var_ref gl_Vertex) ) ) (assign (xyzw) (var_ref gl_FrontColor) (var_ref gl_Color) ) )) ) ) GLSL source for fragment shader 6: #version 120 void main() { gl_FragColor = gl_Color; } GLSL IR for shader 6: ( (declare (shader_out ) float gl_FragDepth) (declare (shader_out ) (array vec4 8) gl_FragData) (declare (shader_out ) vec4 gl_FragColor) (declare (shader_in ) vec2 gl_PointCoord) (declare (shader_in ) bool gl_FrontFacing) (declare (shader_in ) vec4 gl_FragCoord) (declare (shader_in ) vec4 gl_SecondaryColor) (declare (shader_in ) vec4 gl_Color) (declare (shader_in ) float gl_FogFragCoord) (declare (shader_in ) (array vec4 0) gl_TexCoord) (declare (uniform ) gl_FogParameters gl_Fog) (declare (uniform ) (array vec4 8) gl_ObjectPlaneQ) (declare (uniform ) (array vec4 8) gl_ObjectPlaneR) (declare (uniform ) (array vec4 8) gl_ObjectPlaneT) (declare (uniform ) (array vec4 8) gl_ObjectPlaneS) (declare (uniform ) (array vec4 8) gl_EyePlaneQ) (declare (uniform ) (array vec4 8) gl_EyePlaneR) (declare (uniform ) (array vec4 8) gl_EyePlaneT) (declare (uniform ) (array vec4 8) gl_EyePlaneS) (declare (uniform ) (array vec4 8) gl_TextureEnvColor) (declare (uniform ) (array gl_LightProducts 8) gl_BackLightProduct) (declare (uniform ) (array gl_LightProducts 8) gl_FrontLightProduct) (declare (uniform ) gl_LightModelProducts gl_BackLightModelProduct) (declare (uniform ) gl_LightModelProducts gl_FrontLightModelProduct) (declare (uniform ) (array gl_LightSourceParameters 8) gl_LightSource) (declare (uniform ) gl_MaterialParameters gl_BackMaterial) (declare (uniform ) gl_MaterialParameters gl_FrontMaterial) (declare (uniform ) gl_PointParameters gl_Point) (declare (uniform ) (array vec4 8) gl_ClipPlane) (declare (uniform ) (array mat4 8) gl_TextureMatrixInverseTranspose) (declare (uniform ) (array mat4 8) gl_TextureMatrixTranspose) (declare (uniform ) (array mat4 8) gl_TextureMatrixInverse) (declare (uniform ) (array mat4 8) gl_TextureMatrix) (declare (uniform ) vec4 gl_FogParamsOptimizedMESA) (declare (uniform ) vec2 gl_BumpRotMatrix1MESA) (declare (uniform ) vec2 gl_BumpRotMatrix0MESA) (declare (uniform ) gl_LightModelParameters gl_LightModel) (declare (uniform ) float gl_NormalScale) (declare (uniform ) mat4 gl_ModelViewProjectionMatrixInverseTranspose) (declare (uniform ) mat4 gl_ProjectionMatrixInverseTranspose) (declare (uniform ) mat4 gl_ModelViewMatrixInverseTranspose) (declare (uniform ) mat4 gl_ModelViewProjectionMatrixTranspose) (declare (uniform ) mat4 gl_ProjectionMatrixTranspose) (declare (uniform ) mat4 gl_ModelViewMatrixTranspose) (declare (uniform ) mat4 gl_ModelViewProjectionMatrixInverse) (declare (uniform ) mat4 gl_ProjectionMatrixInverse) (declare (uniform ) mat4 gl_ModelViewMatrixInverse) (declare (uniform ) mat3 gl_NormalMatrix) (declare (uniform ) mat4 gl_ModelViewProjectionMatrix) (declare (uniform ) mat4 gl_ProjectionMatrix) (declare (uniform ) mat4 gl_ModelViewMatrix) (declare (uniform ) (array vec4 55) gl_CurrentAttribFragMESA) (declare (uniform ) (array vec4 33) gl_CurrentAttribVertMESA) (declare (uniform ) gl_DepthRangeParameters gl_DepthRange) (declare (uniform ) int gl_NumSamples) (declare () int gl_MaxTextureCoords) (declare () int gl_MaxTextureUnits) (declare () int gl_MaxClipPlanes) (declare () int gl_MaxLights) (declare () int gl_MaxFragmentUniformComponents) (declare () int gl_MaxVaryingFloats) (declare () int gl_MaxVertexUniformComponents) (declare () int gl_MaxDrawBuffers) (declare () int gl_MaxTextureImageUnits) (declare () int gl_MaxCombinedTextureImageUnits) (declare () int gl_MaxVertexTextureImageUnits) (declare () int gl_MaxVertexAttribs) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref gl_FragColor) (var_ref gl_Color) ) )) ) ) GLSL IR for linked vertex program 4: ( (declare (shader_in ) vec4 gl_Color) (declare (shader_in ) vec4 gl_Vertex) (declare (shader_out ) vec4 gl_FrontColor) (declare (temporary ) vec4 gl_FrontColor) (declare (shader_out ) vec4 gl_Position) (declare (temporary ) vec4 gl_Position) (declare (uniform ) mat4 gxl3d_ModelViewProjectionMatrix) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref gl_Position) (expression vec4 + (expression vec4 + (expression vec4 + (expression vec4 * (array_ref (var_ref gxl3d_ModelViewProjectionMatrix) (constant int (0)) ) (swiz x (var_ref gl_Vertex) )) (expression vec4 * (array_ref (var_ref gxl3d_ModelViewProjectionMatrix) (constant int (1)) ) (swiz y (var_ref gl_Vertex) )) ) (expression vec4 * (array_ref (var_ref gxl3d_ModelViewProjectionMatrix) (constant int (2)) ) (swiz z (var_ref gl_Vertex) )) ) (expression vec4 * (array_ref (var_ref gxl3d_ModelViewProjectionMatrix) (constant int (3)) ) (swiz w (var_ref gl_Vertex) )) ) ) (assign (xyzw) (var_ref gl_FrontColor) (var_ref gl_Color) ) (assign (xyzw) (var_ref gl_Position@8) (var_ref gl_Position) ) (assign (xyzw) (var_ref gl_FrontColor@9) (var_ref gl_FrontColor) ) )) ) ) GLSL IR for linked fragment program 4: ( (declare (shader_out ) vec4 gl_FragColor) (declare (temporary ) vec4 gl_FragColor) (declare (shader_in ) vec4 gl_Color) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref gl_FragColor) (var_ref gl_Color) ) (assign (xyzw) (var_ref gl_FragColor@10) (var_ref gl_FragColor) ) )) ) ) GLSL IR for linked vertex program 4: ( (declare (shader_in ) vec4 gl_Color) (declare (shader_in ) vec4 gl_Vertex) (declare (shader_out ) vec4 gl_FrontColor) (declare (temporary ) vec4 gl_FrontColor) (declare (shader_out ) vec4 gl_Position) (declare (temporary ) vec4 gl_Position) (declare (uniform ) mat4 gxl3d_ModelViewProjectionMatrix) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref gl_Position) (expression vec4 + (expression vec4 + (expression vec4 + (expression vec4 * (array_ref (var_ref gxl3d_ModelViewProjectionMatrix) (constant int (0)) ) (swiz x (var_ref gl_Vertex) )) (expression vec4 * (array_ref (var_ref gxl3d_ModelViewProjectionMatrix) (constant int (1)) ) (swiz y (var_ref gl_Vertex) )) ) (expression vec4 * (array_ref (var_ref gxl3d_ModelViewProjectionMatrix) (constant int (2)) ) (swiz z (var_ref gl_Vertex) )) ) (expression vec4 * (array_ref (var_ref gxl3d_ModelViewProjectionMatrix) (constant int (3)) ) (swiz w (var_ref gl_Vertex) )) ) ) (assign (xyzw) (var_ref gl_FrontColor) (var_ref gl_Color) ) (assign (xyzw) (var_ref gl_Position@11) (var_ref gl_Position) ) (assign (xyzw) (var_ref gl_FrontColor@12) (var_ref gl_FrontColor) ) )) ) ) GLSL IR for linked fragment program 4: ( (declare (shader_out ) vec4 gl_FragColor) (declare (temporary ) vec4 gl_FragColor) (declare (shader_in ) vec4 gl_Color) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref gl_FragColor) (var_ref gl_Color) ) (assign (xyzw) (var_ref gl_FragColor@13) (var_ref gl_FragColor) ) )) ) ) GLSL source for vertex shader 8: #version 120 void main() { gl_TexCoord[0] = gl_MultiTexCoord0; gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; } GLSL IR for shader 8: ( (declare (shader_in ) float gl_FogCoord) (declare (shader_in ) vec4 gl_MultiTexCoord7) (declare (shader_in ) vec4 gl_MultiTexCoord6) (declare (shader_in ) vec4 gl_MultiTexCoord5) (declare (shader_in ) vec4 gl_MultiTexCoord4) (declare (shader_in ) vec4 gl_MultiTexCoord3) (declare (shader_in ) vec4 gl_MultiTexCoord2) (declare (shader_in ) vec4 gl_MultiTexCoord1) (declare (shader_in ) vec4 gl_MultiTexCoord0) (declare (shader_in ) vec4 gl_SecondaryColor) (declare (shader_in ) vec4 gl_Color) (declare (shader_in ) vec3 gl_Normal) (declare (shader_in ) vec4 gl_Vertex) (declare (shader_out ) vec4 gl_BackSecondaryColor) (declare (shader_out ) vec4 gl_FrontSecondaryColor) (declare (shader_out ) vec4 gl_BackColor) (declare (shader_out ) vec4 gl_FrontColor) (declare (shader_out ) vec4 gl_ClipVertex) (declare (shader_out ) float gl_FogFragCoord) (declare (shader_out ) (array vec4 0) gl_TexCoord) (declare (shader_out ) float gl_PointSize) (declare (shader_out ) vec4 gl_Position) (declare (uniform ) gl_FogParameters gl_Fog) (declare (uniform ) (array vec4 8) gl_ObjectPlaneQ) (declare (uniform ) (array vec4 8) gl_ObjectPlaneR) (declare (uniform ) (array vec4 8) gl_ObjectPlaneT) (declare (uniform ) (array vec4 8) gl_ObjectPlaneS) (declare (uniform ) (array vec4 8) gl_EyePlaneQ) (declare (uniform ) (array vec4 8) gl_EyePlaneR) (declare (uniform ) (array vec4 8) gl_EyePlaneT) (declare (uniform ) (array vec4 8) gl_EyePlaneS) (declare (uniform ) (array vec4 8) gl_TextureEnvColor) (declare (uniform ) (array gl_LightProducts 8) gl_BackLightProduct) (declare (uniform ) (array gl_LightProducts 8) gl_FrontLightProduct) (declare (uniform ) gl_LightModelProducts gl_BackLightModelProduct) (declare (uniform ) gl_LightModelProducts gl_FrontLightModelProduct) (declare (uniform ) (array gl_LightSourceParameters 8) gl_LightSource) (declare (uniform ) gl_MaterialParameters gl_BackMaterial) (declare (uniform ) gl_MaterialParameters gl_FrontMaterial) (declare (uniform ) gl_PointParameters gl_Point) (declare (uniform ) (array vec4 8) gl_ClipPlane) (declare (uniform ) (array mat4 8) gl_TextureMatrixInverseTranspose) (declare (uniform ) (array mat4 8) gl_TextureMatrixTranspose) (declare (uniform ) (array mat4 8) gl_TextureMatrixInverse) (declare (uniform ) (array mat4 8) gl_TextureMatrix) (declare (uniform ) vec4 gl_FogParamsOptimizedMESA) (declare (uniform ) vec2 gl_BumpRotMatrix1MESA) (declare (uniform ) vec2 gl_BumpRotMatrix0MESA) (declare (uniform ) gl_LightModelParameters gl_LightModel) (declare (uniform ) float gl_NormalScale) (declare (uniform ) mat4 gl_ModelViewProjectionMatrixInverseTranspose) (declare (uniform ) mat4 gl_ProjectionMatrixInverseTranspose) (declare (uniform ) mat4 gl_ModelViewMatrixInverseTranspose) (declare (uniform ) mat4 gl_ModelViewProjectionMatrixTranspose) (declare (uniform ) mat4 gl_ProjectionMatrixTranspose) (declare (uniform ) mat4 gl_ModelViewMatrixTranspose) (declare (uniform ) mat4 gl_ModelViewProjectionMatrixInverse) (declare (uniform ) mat4 gl_ProjectionMatrixInverse) (declare (uniform ) mat4 gl_ModelViewMatrixInverse) (declare (uniform ) mat3 gl_NormalMatrix) (declare (uniform ) mat4 gl_ModelViewProjectionMatrix) (declare (uniform ) mat4 gl_ProjectionMatrix) (declare (uniform ) mat4 gl_ModelViewMatrix) (declare (uniform ) (array vec4 55) gl_CurrentAttribFragMESA) (declare (uniform ) (array vec4 33) gl_CurrentAttribVertMESA) (declare (uniform ) gl_DepthRangeParameters gl_DepthRange) (declare (uniform ) int gl_NumSamples) (declare () int gl_MaxTextureCoords) (declare () int gl_MaxTextureUnits) (declare () int gl_MaxClipPlanes) (declare () int gl_MaxLights) (declare () int gl_MaxFragmentUniformComponents) (declare () int gl_MaxVaryingFloats) (declare () int gl_MaxVertexUniformComponents) (declare () int gl_MaxDrawBuffers) (declare () int gl_MaxTextureImageUnits) (declare () int gl_MaxCombinedTextureImageUnits) (declare () int gl_MaxVertexTextureImageUnits) (declare () int gl_MaxVertexAttribs) (function main (signature void (parameters ) ( (assign (xyzw) (array_ref (var_ref gl_TexCoord) (constant int (0)) ) (var_ref gl_MultiTexCoord0) ) (assign (xyzw) (var_ref gl_Position) (expression vec4 * (var_ref gl_ModelViewProjectionMatrix) (var_ref gl_Vertex) ) ) )) ) ) GLSL source for fragment shader 9: #version 120 uniform vec2 resolution; uniform float time; #define float3 vec3 #define float4 vec4 const int _MaxSteps = 32; const float _StepDistanceScale = 0.72; const float _MinStep = 0.01; const float _DistThreshold = 0.05; const int _VolumeSteps = 32; const float _StepSize = 0.01; const float _Density = 0.1; const float _SphereRadius = 0.95; const float _NoiseFreq = 8.0; const float _NoiseAmp = -0.3; const float3 _NoiseAnim = float3(0.93, 0, 0); mat3 m = mat3( 0.00, 0.80, 0.60, -0.80, 0.36, -0.48, -0.60, -0.48, 0.64 ); float hash( float n ){ return fract(sin(n)*43758.5453); } float noise( in vec3 x ) { vec3 p = floor(x); vec3 f = fract(x); f = f*f*(3.0-2.0*f); float n = p.x + p.y*57.0 + 113.0*p.z; float res = mix(mix(mix( hash(n+ 0.0), hash(n+ 1.0),f.x), mix( hash(n+ 57.0), hash(n+ 58.0),f.x),f.y), mix(mix( hash(n+113.0), hash(n+114.0),f.x), mix( hash(n+170.0), hash(n+171.0),f.x),f.y),f.z); return res; } float fbm( vec3 p ) { float f; f = 0.5000*noise( p ); p = m*p*2.02; f += 0.2500*noise( p ); p = m*p*2.03; f += 0.1250*noise( p ); p = m*p*2.01; f += 0.0625*noise( p ); p = m*p*2.02; f += 0.03125*abs(noise( p )); return f/0.9375; } float sphereDist(float3 p, float4 sphere) { return length(p - sphere.xyz) - sphere.w; } float distanceFunc(float3 p, out float displace) { float d = length(p) - _SphereRadius; // distance to sphere displace = fbm(p*_NoiseFreq + _NoiseAnim*time); d += displace * _NoiseAmp; return d; } float3 dfNormal(float3 pos) { float eps = 0.001; float3 n; float s; #if 0 // central difference n.x = distanceFunc( float3(pos.x+eps, pos.y, pos.z), s ) - distanceFunc( float3(pos.x-eps, pos.y, pos.z), s ); n.y = distanceFunc( float3(pos.x, pos.y+eps, pos.z), s ) - distanceFunc( float3(pos.x, pos.y-eps, pos.z), s ); n.z = distanceFunc( float3(pos.x, pos.y, pos.z+eps), s ) - distanceFunc( float3(pos.x, pos.y, pos.z-eps), s ); #else // forward difference (faster) float d = distanceFunc(pos, s); n.x = distanceFunc( float3(pos.x+eps, pos.y, pos.z), s ) - d; n.y = distanceFunc( float3(pos.x, pos.y+eps, pos.z), s ) - d; n.z = distanceFunc( float3(pos.x, pos.y, pos.z+eps), s ) - d; #endif return normalize(n); } float4 gradient(float x) { const float4 c0 = float4(3, 3, 1, 1); // hot white const float4 c1 = float4(1, 0.5, 0, 1); // yellow const float4 c2 = float4(1, 0, 0, 1); // red const float4 c3 = float4(0.2, 0.2, 0.2, 1); // grey float t = fract(x*3.0); float4 c; if (x < 0.333333) { c = mix(c0, c1, t); } else if (x < 0.666666) { c = mix(c1, c2, t); } else { c = mix(c2, c3, t); } return c; } float4 shade(float3 p, float displace) { displace = displace*2.7 - 0.5; displace = clamp(displace, 0.0, 0.99); float4 c = gradient(displace); float3 n = dfNormal(p); float diffuse = n.z*0.35+0.85; c.rgb = mix(c.rgb, c.rgb*diffuse, clamp((displace-0.5)*2.0, 0.0, 1.0)); return c; } float4 volumeFunc(float3 p) { float displace; float d = distanceFunc(p, displace); float4 c = shade(p, displace); return c; } float3 sphereTrace(float3 rayOrigin, float3 rayDir, out bool hit, out float displace) { float3 pos = rayOrigin; hit = false; displace = 0.0; float d; float disp; for(int i=0; i<_MaxSteps; i++) { d = distanceFunc(pos, disp); if (d < _DistThreshold) { hit = true; displace = disp; } pos += rayDir*d*_StepDistanceScale; } return pos; } float4 rayMarch(float3 rayOrigin, float3 rayStep, out float3 pos) { float4 sum = float4(0, 0, 0, 0); pos = rayOrigin; for(int i=0; i<_VolumeSteps; i++) { float4 col = volumeFunc(pos); col.a *= _Density; col.a = min(col.a, 1.0); col.rgb *= col.a; sum = sum + col*(1.0 - sum.a); #if 0 if (sum.a > _OpacityThreshold) break; #endif pos += rayStep; } return sum; } void main(void) { float t = 0.0; // JeGX-ed float ust = sin(t)*0.5+0.5; vec2 q = gl_FragCoord.xy / resolution.xy; vec2 p = -1.0 + 2.0 * q; p.x *= resolution.x/resolution.y; float rotx = 0.0; // mouse.y*4.0; float roty = 0.0; // mouse.x*4.0; vec3 ro = ust*4.0*normalize(vec3(cos(roty), cos(rotx), sin(roty))); vec3 ww = normalize(vec3(0.0,0.0,0.0) - ro); vec3 uu = normalize(cross( vec3(0.0,1.0,0.0), ww )); vec3 vv = normalize(cross(ww,uu)); vec3 rd = normalize( p.x*uu + p.y*vv + 1.5*ww ); bool hit; float displace; vec3 hitPos = sphereTrace(ro, rd, hit, displace); vec4 col = vec4(0.4, 0.4, 0.4, 1); if (hit) { col = shade(hitPos, displace); // opaque version } gl_FragColor = col; } GLSL IR for shader 9: ( (declare (temporary ) mat3 assignment_tmp) (declare (temporary ) vec3 assignment_tmp) (declare (temporary ) float assignment_tmp) (declare (temporary ) float assignment_tmp) (declare (temporary ) float assignment_tmp) (declare (temporary ) float assignment_tmp) (declare (temporary ) float assignment_tmp) (declare (temporary ) int assignment_tmp) (declare (temporary ) float assignment_tmp) (declare (temporary ) float assignment_tmp) (declare (temporary ) float assignment_tmp) (declare (temporary ) int assignment_tmp) (declare (shader_out ) float gl_FragDepth) (declare (shader_out ) (array vec4 8) gl_FragData) (declare (shader_out ) vec4 gl_FragColor) (declare (shader_in ) vec2 gl_PointCoord) (declare (shader_in ) bool gl_FrontFacing) (declare (shader_in ) vec4 gl_FragCoord) (declare (shader_in ) vec4 gl_SecondaryColor) (declare (shader_in ) vec4 gl_Color) (declare (shader_in ) float gl_FogFragCoord) (declare (shader_in ) (array vec4 0) gl_TexCoord) (declare (uniform ) gl_FogParameters gl_Fog) (declare (uniform ) (array vec4 8) gl_ObjectPlaneQ) (declare (uniform ) (array vec4 8) gl_ObjectPlaneR) (declare (uniform ) (array vec4 8) gl_ObjectPlaneT) (declare (uniform ) (array vec4 8) gl_ObjectPlaneS) (declare (uniform ) (array vec4 8) gl_EyePlaneQ) (declare (uniform ) (array vec4 8) gl_EyePlaneR) (declare (uniform ) (array vec4 8) gl_EyePlaneT) (declare (uniform ) (array vec4 8) gl_EyePlaneS) (declare (uniform ) (array vec4 8) gl_TextureEnvColor) (declare (uniform ) (array gl_LightProducts 8) gl_BackLightProduct) (declare (uniform ) (array gl_LightProducts 8) gl_FrontLightProduct) (declare (uniform ) gl_LightModelProducts gl_BackLightModelProduct) (declare (uniform ) gl_LightModelProducts gl_FrontLightModelProduct) (declare (uniform ) (array gl_LightSourceParameters 8) gl_LightSource) (declare (uniform ) gl_MaterialParameters gl_BackMaterial) (declare (uniform ) gl_MaterialParameters gl_FrontMaterial) (declare (uniform ) gl_PointParameters gl_Point) (declare (uniform ) (array vec4 8) gl_ClipPlane) (declare (uniform ) (array mat4 8) gl_TextureMatrixInverseTranspose) (declare (uniform ) (array mat4 8) gl_TextureMatrixTranspose) (declare (uniform ) (array mat4 8) gl_TextureMatrixInverse) (declare (uniform ) (array mat4 8) gl_TextureMatrix) (declare (uniform ) vec4 gl_FogParamsOptimizedMESA) (declare (uniform ) vec2 gl_BumpRotMatrix1MESA) (declare (uniform ) vec2 gl_BumpRotMatrix0MESA) (declare (uniform ) gl_LightModelParameters gl_LightModel) (declare (uniform ) float gl_NormalScale) (declare (uniform ) mat4 gl_ModelViewProjectionMatrixInverseTranspose) (declare (uniform ) mat4 gl_ProjectionMatrixInverseTranspose) (declare (uniform ) mat4 gl_ModelViewMatrixInverseTranspose) (declare (uniform ) mat4 gl_ModelViewProjectionMatrixTranspose) (declare (uniform ) mat4 gl_ProjectionMatrixTranspose) (declare (uniform ) mat4 gl_ModelViewMatrixTranspose) (declare (uniform ) mat4 gl_ModelViewProjectionMatrixInverse) (declare (uniform ) mat4 gl_ProjectionMatrixInverse) (declare (uniform ) mat4 gl_ModelViewMatrixInverse) (declare (uniform ) mat3 gl_NormalMatrix) (declare (uniform ) mat4 gl_ModelViewProjectionMatrix) (declare (uniform ) mat4 gl_ProjectionMatrix) (declare (uniform ) mat4 gl_ModelViewMatrix) (declare (uniform ) (array vec4 55) gl_CurrentAttribFragMESA) (declare (uniform ) (array vec4 33) gl_CurrentAttribVertMESA) (declare (uniform ) gl_DepthRangeParameters gl_DepthRange) (declare (uniform ) int gl_NumSamples) (declare () int gl_MaxTextureCoords) (declare () int gl_MaxTextureUnits) (declare () int gl_MaxClipPlanes) (declare () int gl_MaxLights) (declare () int gl_MaxFragmentUniformComponents) (declare () int gl_MaxVaryingFloats) (declare () int gl_MaxVertexUniformComponents) (declare () int gl_MaxDrawBuffers) (declare () int gl_MaxTextureImageUnits) (declare () int gl_MaxCombinedTextureImageUnits) (declare () int gl_MaxVertexTextureImageUnits) (declare () int gl_MaxVertexAttribs) (declare (uniform ) vec2 resolution) (declare (uniform ) float time) (declare () int _MaxSteps) (declare () float _StepDistanceScale) (declare () float _MinStep) (declare () float _DistThreshold) (declare () int _VolumeSteps) (declare () float _StepSize) (declare () float _Density) (declare () float _SphereRadius) (declare () float _NoiseFreq) (declare () float _NoiseAmp) (declare () vec3 _NoiseAnim) (declare () mat3 m) (assign (x) (var_ref _MaxSteps) (constant int (32)) ) (assign (x) (var_ref _StepDistanceScale) (constant float (0x1.70a3d8p-1)) ) (assign (x) (var_ref _MinStep) (constant float (0x1.47ae14p-7)) ) (assign (x) (var_ref _DistThreshold) (constant float (0x1.99999ap-5)) ) (assign (x) (var_ref _VolumeSteps) (constant int (32)) ) (assign (x) (var_ref _StepSize) (constant float (0x1.47ae14p-7)) ) (assign (x) (var_ref _Density) (constant float (0x1.99999ap-4)) ) (assign (x) (var_ref _SphereRadius) (constant float (0x1.e66666p-1)) ) (assign (x) (var_ref _NoiseFreq) (constant float (8.000000)) ) (assign (x) (var_ref _NoiseAmp) (constant float (-0x1.333334p-2)) ) (assign (xyz) (var_ref _NoiseAnim) (constant vec3 (0x1.dc28f6p-1 0.0 0.0)) ) (assign () (var_ref m) (constant mat3 (0.0 0x1.99999ap-1 0x1.333334p-1 -0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2 -0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) ) (function hash (signature float (parameters (declare (in ) float n) ) ( (declare (temporary ) float sin_retval) (call sin (var_ref sin_retval) ((var_ref n) )) (declare (temporary ) float fract_retval) (call fract (var_ref fract_retval) ((expression float * (var_ref sin_retval) (constant float (43758.546875)) ) )) (return (var_ref fract_retval) ) )) ) (function sin (signature float (parameters (declare (in ) float x) ) ( )) ) (function fract (signature float (parameters (declare (in ) float x) ) ( )) (signature vec3 (parameters (declare (in ) vec3 x) ) ( )) ) (function noise (signature float (parameters (declare (in ) vec3 x) ) ( (declare () float n) (declare () vec3 f) (declare () vec3 p) (declare (temporary ) vec3 floor_retval) (call floor (var_ref floor_retval) ((var_ref x) )) (assign (xyz) (var_ref p) (var_ref floor_retval) ) (declare (temporary ) vec3 fract_retval) (call fract (var_ref fract_retval) ((var_ref x) )) (assign (xyz) (var_ref f) (expression vec3 * (expression vec3 * (var_ref fract_retval) (var_ref fract_retval) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval) ) ) ) ) ) (declare (temporary ) float assignment_tmp) (assign (x) (var_ref assignment_tmp) (expression float + (expression float + (swiz x (var_ref p) )(expression float * (swiz y (var_ref p) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref p) )) ) ) (assign (x) (var_ref n) (var_ref assignment_tmp) ) (declare (temporary ) float hash_retval) (call hash (var_ref hash_retval) ((var_ref assignment_tmp) )) (declare (temporary ) float hash_retval@14) (call hash (var_ref hash_retval@14) ((expression float + (var_ref n) (constant float (1.000000)) ) )) (declare (temporary ) float mix_retval) (call mix (var_ref mix_retval) ((var_ref hash_retval) (var_ref hash_retval@14) (swiz x (var_ref f) ))) (declare (temporary ) float hash_retval@15) (call hash (var_ref hash_retval@15) ((expression float + (var_ref n) (constant float (57.000000)) ) )) (declare (temporary ) float hash_retval@16) (call hash (var_ref hash_retval@16) ((expression float + (var_ref n) (constant float (58.000000)) ) )) (declare (temporary ) float mix_retval@17) (call mix (var_ref mix_retval@17) ((var_ref hash_retval@15) (var_ref hash_retval@16) (swiz x (var_ref f) ))) (declare (temporary ) float mix_retval@18) (call mix (var_ref mix_retval@18) ((var_ref mix_retval) (var_ref mix_retval@17) (swiz y (var_ref f) ))) (declare (temporary ) float hash_retval@19) (call hash (var_ref hash_retval@19) ((expression float + (var_ref n) (constant float (113.000000)) ) )) (declare (temporary ) float hash_retval@20) (call hash (var_ref hash_retval@20) ((expression float + (var_ref n) (constant float (114.000000)) ) )) (declare (temporary ) float mix_retval@21) (call mix (var_ref mix_retval@21) ((var_ref hash_retval@19) (var_ref hash_retval@20) (swiz x (var_ref f) ))) (declare (temporary ) float hash_retval@22) (call hash (var_ref hash_retval@22) ((expression float + (var_ref n) (constant float (170.000000)) ) )) (declare (temporary ) float hash_retval@23) (call hash (var_ref hash_retval@23) ((expression float + (var_ref n) (constant float (171.000000)) ) )) (declare (temporary ) float mix_retval@24) (call mix (var_ref mix_retval@24) ((var_ref hash_retval@22) (var_ref hash_retval@23) (swiz x (var_ref f) ))) (declare (temporary ) float mix_retval@25) (call mix (var_ref mix_retval@25) ((var_ref mix_retval@21) (var_ref mix_retval@24) (swiz y (var_ref f) ))) (declare (temporary ) float mix_retval@26) (call mix (var_ref mix_retval@26) ((var_ref mix_retval@18) (var_ref mix_retval@25) (swiz z (var_ref f) ))) (return (var_ref mix_retval@26) ) )) ) (function floor (signature vec3 (parameters (declare (in ) vec3 x) ) ( )) ) (function mix (signature float (parameters (declare (in ) float x) (declare (in ) float y) (declare (in ) float a) ) ( )) (signature vec4 (parameters (declare (in ) vec4 x) (declare (in ) vec4 y) (declare (in ) float a) ) ( )) (signature vec3 (parameters (declare (in ) vec3 x) (declare (in ) vec3 y) (declare (in ) float a) ) ( )) ) (function fbm (signature float (parameters (declare (in ) vec3 p) ) ( (declare () float f) (declare (temporary ) float noise_retval) (call noise (var_ref noise_retval) ((var_ref p) )) (assign (x) (var_ref f) (expression float * (constant float (0x1p-1)) (var_ref noise_retval) ) ) (declare (temporary ) vec3 assignment_tmp) (assign (xyz) (var_ref assignment_tmp) (expression vec3 * (expression vec3 * (var_ref m) (var_ref p) ) (constant float (2.020000)) ) ) (assign (xyz) (var_ref p) (var_ref assignment_tmp) ) (declare (temporary ) float noise_retval@27) (call noise (var_ref noise_retval@27) ((var_ref assignment_tmp) )) (assign (x) (var_ref f) (expression float + (var_ref f) (expression float * (constant float (0x1p-2)) (var_ref noise_retval@27) ) ) ) (declare (temporary ) vec3 assignment_tmp@28) (assign (xyz) (var_ref assignment_tmp@28) (expression vec3 * (expression vec3 * (var_ref m) (var_ref p) ) (constant float (2.030000)) ) ) (assign (xyz) (var_ref p) (var_ref assignment_tmp@28) ) (declare (temporary ) float noise_retval@29) (call noise (var_ref noise_retval@29) ((var_ref assignment_tmp@28) )) (assign (x) (var_ref f) (expression float + (var_ref f) (expression float * (constant float (0x1p-3)) (var_ref noise_retval@29) ) ) ) (declare (temporary ) vec3 assignment_tmp@30) (assign (xyz) (var_ref assignment_tmp@30) (expression vec3 * (expression vec3 * (var_ref m) (var_ref p) ) (constant float (2.010000)) ) ) (assign (xyz) (var_ref p) (var_ref assignment_tmp@30) ) (declare (temporary ) float noise_retval@31) (call noise (var_ref noise_retval@31) ((var_ref assignment_tmp@30) )) (assign (x) (var_ref f) (expression float + (var_ref f) (expression float * (constant float (0x1p-4)) (var_ref noise_retval@31) ) ) ) (declare (temporary ) vec3 assignment_tmp@32) (assign (xyz) (var_ref assignment_tmp@32) (expression vec3 * (expression vec3 * (var_ref m) (var_ref p) ) (constant float (2.020000)) ) ) (assign (xyz) (var_ref p) (var_ref assignment_tmp@32) ) (declare (temporary ) float noise_retval@33) (call noise (var_ref noise_retval@33) ((var_ref assignment_tmp@32) )) (declare (temporary ) float abs_retval) (call abs (var_ref abs_retval) ((var_ref noise_retval@33) )) (declare (temporary ) float assignment_tmp@34) (assign (x) (var_ref assignment_tmp@34) (expression float + (var_ref f) (expression float * (constant float (0x1p-5)) (var_ref abs_retval) ) ) ) (assign (x) (var_ref f) (var_ref assignment_tmp@34) ) (return (expression float / (var_ref assignment_tmp@34) (constant float (0x1.ep-1)) ) ) )) ) (function abs (signature float (parameters (declare (in ) float x) ) ( )) ) (function sphereDist (signature float (parameters (declare (in ) vec3 p) (declare (in ) vec4 sphere) ) ( (declare (temporary ) float length_retval) (call length (var_ref length_retval) ((expression vec3 + (var_ref p) (expression vec3 neg (swiz xyz (var_ref sphere) )) ) )) (return (expression float + (var_ref length_retval) (expression float neg (swiz w (var_ref sphere) )) ) ) )) ) (function length (signature float (parameters (declare (in ) vec3 x) ) ( )) ) (function distanceFunc (signature float (parameters (declare (in ) vec3 p) (declare (out ) float displace) ) ( (declare () float d) (declare (temporary ) float length_retval) (call length (var_ref length_retval) ((var_ref p) )) (assign (x) (var_ref d) (expression float + (var_ref length_retval) (constant float (-0x1.e66666p-1)) ) ) (declare (temporary ) float fbm_retval) (call fbm (var_ref fbm_retval) ((expression vec3 + (expression vec3 * (var_ref p) (var_ref _NoiseFreq) ) (expression vec3 * (var_ref _NoiseAnim) (var_ref time) ) ) )) (assign (x) (var_ref displace) (var_ref fbm_retval) ) (declare (temporary ) float assignment_tmp) (assign (x) (var_ref assignment_tmp) (expression float + (var_ref d) (expression float * (var_ref fbm_retval) (constant float (-0x1.333334p-2)) ) ) ) (assign (x) (var_ref d) (var_ref assignment_tmp) ) (return (var_ref assignment_tmp) ) )) ) (function dfNormal (signature vec3 (parameters (declare (in ) vec3 pos) ) ( (declare () float d) (declare () float s) (declare () vec3 n) (declare (temporary ) float distanceFunc_retval) (call distanceFunc (var_ref distanceFunc_retval) ((var_ref pos) (var_ref s) )) (assign (x) (var_ref d) (var_ref distanceFunc_retval) ) (declare (temporary ) vec3 vec_ctor) (assign (x) (var_ref vec_ctor) (expression float + (swiz x (var_ref pos) )(constant float (0x1.0624dep-10)) ) ) (assign (y) (var_ref vec_ctor) (swiz y (var_ref pos) )) (assign (z) (var_ref vec_ctor) (swiz z (var_ref pos) )) (declare (temporary ) float distanceFunc_retval@35) (call distanceFunc (var_ref distanceFunc_retval@35) ((var_ref vec_ctor) (var_ref s) )) (assign (x) (var_ref n) (expression float + (var_ref distanceFunc_retval@35) (expression float neg (var_ref d) ) ) ) (declare (temporary ) vec3 vec_ctor@36) (assign (x) (var_ref vec_ctor@36) (swiz x (var_ref pos) )) (assign (y) (var_ref vec_ctor@36) (expression float + (swiz y (var_ref pos) )(constant float (0x1.0624dep-10)) ) ) (assign (z) (var_ref vec_ctor@36) (swiz z (var_ref pos) )) (declare (temporary ) float distanceFunc_retval@37) (call distanceFunc (var_ref distanceFunc_retval@37) ((var_ref vec_ctor@36) (var_ref s) )) (assign (y) (var_ref n) (expression float + (var_ref distanceFunc_retval@37) (expression float neg (var_ref d) ) ) ) (declare (temporary ) vec3 vec_ctor@38) (assign (x) (var_ref vec_ctor@38) (swiz x (var_ref pos) )) (assign (y) (var_ref vec_ctor@38) (swiz y (var_ref pos) )) (assign (z) (var_ref vec_ctor@38) (expression float + (swiz z (var_ref pos) )(constant float (0x1.0624dep-10)) ) ) (declare (temporary ) float distanceFunc_retval@39) (call distanceFunc (var_ref distanceFunc_retval@39) ((var_ref vec_ctor@38) (var_ref s) )) (assign (z) (var_ref n) (expression float + (var_ref distanceFunc_retval@39) (expression float neg (var_ref d) ) ) ) (declare (temporary ) vec3 normalize_retval) (call normalize (var_ref normalize_retval) ((var_ref n) )) (return (var_ref normalize_retval) ) )) ) (function normalize (signature vec3 (parameters (declare (in ) vec3 x) ) ( )) ) (function gradient (signature vec4 (parameters (declare (in ) float x) ) ( (declare () vec4 c) (declare () float t) (declare (temporary ) float fract_retval) (call fract (var_ref fract_retval) ((expression float * (var_ref x) (constant float (3.000000)) ) )) (assign (x) (var_ref t) (var_ref fract_retval) ) (if (expression bool < (var_ref x) (constant float (0x1.55553ep-2)) ) ( (declare (temporary ) vec4 mix_retval) (call mix (var_ref mix_retval) ((constant vec4 (3.000000 3.000000 1.000000 1.000000)) (constant vec4 (1.000000 0x1p-1 0.0 1.000000)) (var_ref fract_retval) )) (assign (xyzw) (var_ref c) (var_ref mix_retval) ) ) ( (if (expression bool < (var_ref x) (constant float (0x1.55553ep-1)) ) ( (declare (temporary ) vec4 mix_retval@40) (call mix (var_ref mix_retval@40) ((constant vec4 (1.000000 0x1p-1 0.0 1.000000)) (constant vec4 (1.000000 0.0 0.0 1.000000)) (var_ref t) )) (assign (xyzw) (var_ref c) (var_ref mix_retval@40) ) ) ( (declare (temporary ) vec4 mix_retval@41) (call mix (var_ref mix_retval@41) ((constant vec4 (1.000000 0.0 0.0 1.000000)) (constant vec4 (0x1.99999ap-3 0x1.99999ap-3 0x1.99999ap-3 1.000000)) (var_ref t) )) (assign (xyzw) (var_ref c) (var_ref mix_retval@41) ) )) )) (return (var_ref c) ) )) ) (function shade (signature vec4 (parameters (declare (in ) vec3 p) (declare (in ) float displace) ) ( (declare () float diffuse) (declare () vec4 c) (declare (temporary ) float assignment_tmp) (assign (x) (var_ref assignment_tmp) (expression float + (expression float * (var_ref displace) (constant float (2.700000)) ) (constant float (-0x1p-1)) ) ) (assign (x) (var_ref displace) (var_ref assignment_tmp) ) (declare (temporary ) float clamp_retval) (call clamp (var_ref clamp_retval) ((var_ref assignment_tmp) (constant float (0.0)) (constant float (0x1.fae148p-1)) )) (assign (x) (var_ref displace) (var_ref clamp_retval) ) (declare (temporary ) vec4 gradient_retval) (call gradient (var_ref gradient_retval) ((var_ref clamp_retval) )) (assign (xyzw) (var_ref c) (var_ref gradient_retval) ) (declare (temporary ) vec3 dfNormal_retval) (call dfNormal (var_ref dfNormal_retval) ((var_ref p) )) (assign (x) (var_ref diffuse) (expression float + (expression float * (swiz z (var_ref dfNormal_retval) )(constant float (0x1.666666p-2)) ) (constant float (0x1.b33334p-1)) ) ) (declare (temporary ) float clamp_retval@42) (call clamp (var_ref clamp_retval@42) ((expression float * (expression float + (var_ref displace) (expression float neg (constant float (0x1p-1)) ) ) (constant float (2.000000)) ) (constant float (0.0)) (constant float (1.000000)) )) (declare (temporary ) vec3 mix_retval) (call mix (var_ref mix_retval) ((swiz xyz (var_ref c) )(expression vec3 * (swiz xyz (var_ref c) )(var_ref diffuse) ) (var_ref clamp_retval@42) )) (assign (xyz) (var_ref c) (var_ref mix_retval) ) (return (var_ref c) ) )) ) (function clamp (signature float (parameters (declare (in ) float x) (declare (in ) float minVal) (declare (in ) float maxVal) ) ( )) ) (function volumeFunc (signature vec4 (parameters (declare (in ) vec3 p) ) ( (declare () float displace) (declare (temporary ) float distanceFunc_retval) (call distanceFunc (var_ref distanceFunc_retval) ((var_ref p) (var_ref displace) )) (declare (temporary ) vec4 shade_retval) (call shade (var_ref shade_retval) ((var_ref p) (var_ref displace) )) (return (var_ref shade_retval) ) )) ) (function sphereTrace (signature vec3 (parameters (declare (in ) vec3 rayOrigin) (declare (in ) vec3 rayDir) (declare (out ) bool hit) (declare (out ) float displace) ) ( (declare () int i) (declare () float disp) (declare () vec3 pos) (assign (xyz) (var_ref pos) (var_ref rayOrigin) ) (assign (x) (var_ref hit) (constant bool (0)) ) (assign (x) (var_ref displace) (constant float (0.0)) ) (assign (x) (var_ref i) (constant int (0)) ) (loop () () () () ( (if (expression bool >= (var_ref i) (constant int (32)) ) ( break ) ()) (declare (temporary ) float distanceFunc_retval) (call distanceFunc (var_ref distanceFunc_retval) ((var_ref pos) (var_ref disp) )) (if (expression bool < (var_ref distanceFunc_retval) (constant float (0x1.99999ap-5)) ) ( (assign (x) (var_ref hit) (constant bool (1)) ) (assign (x) (var_ref displace) (var_ref disp) ) ) ()) (assign (xyz) (var_ref pos) (expression vec3 + (var_ref pos) (expression vec3 * (expression vec3 * (var_ref rayDir) (var_ref distanceFunc_retval) ) (constant float (0x1.70a3d8p-1)) ) ) ) (assign (x) (var_ref i) (expression int + (var_ref i) (constant int (1)) ) ) )) (return (var_ref pos) ) )) ) (function rayMarch (signature vec4 (parameters (declare (in ) vec3 rayOrigin) (declare (in ) vec3 rayStep) (declare (out ) vec3 pos) ) ( (declare () int i) (declare () vec4 sum) (assign (xyzw) (var_ref sum) (constant vec4 (0.0 0.0 0.0 0.0)) ) (assign (xyz) (var_ref pos) (var_ref rayOrigin) ) (assign (x) (var_ref i) (constant int (0)) ) (loop () () () () ( (declare () vec4 col) (if (expression bool >= (var_ref i) (constant int (32)) ) ( break ) ()) (declare (temporary ) vec4 volumeFunc_retval) (call volumeFunc (var_ref volumeFunc_retval) ((var_ref pos) )) (assign (xyz) (var_ref col) (swiz xyz (var_ref volumeFunc_retval) )) (assign (w) (var_ref col) (expression float * (swiz w (var_ref volumeFunc_retval) )(constant float (0x1.99999ap-4)) ) ) (declare (temporary ) float min_retval) (call min (var_ref min_retval) ((swiz w (var_ref col) )(constant float (1.000000)) )) (assign (w) (var_ref col) (var_ref min_retval) ) (assign (xyz) (var_ref col) (expression vec3 * (swiz xyz (var_ref col) )(var_ref min_retval) ) ) (assign (xyzw) (var_ref sum) (expression vec4 + (var_ref sum) (expression vec4 * (var_ref col) (expression float + (constant float (1.000000)) (expression float neg (swiz w (var_ref sum) )) ) ) ) ) (assign (xyz) (var_ref pos) (expression vec3 + (var_ref pos) (var_ref rayStep) ) ) (assign (x) (var_ref i) (expression int + (var_ref i) (constant int (1)) ) ) )) (return (var_ref sum) ) )) ) (function min (signature float (parameters (declare (in ) float x) (declare (in ) float y) ) ( )) ) (function main (signature void (parameters ) ( (declare () vec4 col) (declare () float displace) (declare () bool hit) (declare () vec2 p) (declare (temporary ) vec2 assignment_tmp) (assign (xy) (var_ref assignment_tmp) (expression vec2 + (constant float (-1.000000)) (expression vec2 * (constant float (2.000000)) (expression vec2 / (swiz xy (var_ref gl_FragCoord) )(var_ref resolution) ) ) ) ) (assign (y) (var_ref p) (swiz y (var_ref assignment_tmp) )) (assign (x) (var_ref p) (expression float * (swiz x (var_ref assignment_tmp) )(expression float / (swiz x (var_ref resolution) )(swiz y (var_ref resolution) )) ) ) (declare (temporary ) vec3 normalize_retval) (call normalize (var_ref normalize_retval) ((expression vec3 + (expression vec3 + (expression vec3 * (swiz x (var_ref p) )(constant vec3 (0.0 0.0 0x1.fffffep-1)) ) (expression vec3 * (swiz y (var_ref assignment_tmp) )(constant vec3 (-0x1.6a09e8p-1 0x1.6a09e8p-1 0.0)) ) ) (expression vec3 * (constant float (1.500000)) (constant vec3 (-0x1.6a09e8p-1 -0x1.6a09e8p-1 -0.0)) ) ) )) (declare (temporary ) vec3 sphereTrace_retval) (call sphereTrace (var_ref sphereTrace_retval) ((constant vec3 (1.414214 1.414214 0.0)) (var_ref normalize_retval) (var_ref hit) (var_ref displace) )) (assign (xyzw) (var_ref col) (constant vec4 (0x1.99999ap-2 0x1.99999ap-2 0x1.99999ap-2 1.000000)) ) (if (var_ref hit) ( (declare (temporary ) vec4 shade_retval) (call shade (var_ref shade_retval) ((var_ref sphereTrace_retval) (var_ref displace) )) (assign (xyzw) (var_ref col) (var_ref shade_retval) ) ) ()) (assign (xyzw) (var_ref gl_FragColor) (var_ref col) ) )) ) (function cos (signature float (parameters (declare (in ) float x) ) ( )) ) (function cross (signature vec3 (parameters (declare (in ) vec3 a) (declare (in ) vec3 b) ) ( )) ) ) GLSL IR for linked vertex program 7: ( (declare (shader_in ) vec4 gl_Vertex) (declare (shader_out ) vec4 gl_Position) (declare (temporary ) vec4 gl_Position) (declare (uniform ) mat4 gl_ModelViewProjectionMatrix) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref gl_Position) (expression vec4 + (expression vec4 + (expression vec4 + (expression vec4 * (array_ref (var_ref gl_ModelViewProjectionMatrix) (constant int (0)) ) (swiz x (var_ref gl_Vertex) )) (expression vec4 * (array_ref (var_ref gl_ModelViewProjectionMatrix) (constant int (1)) ) (swiz y (var_ref gl_Vertex) )) ) (expression vec4 * (array_ref (var_ref gl_ModelViewProjectionMatrix) (constant int (2)) ) (swiz z (var_ref gl_Vertex) )) ) (expression vec4 * (array_ref (var_ref gl_ModelViewProjectionMatrix) (constant int (3)) ) (swiz w (var_ref gl_Vertex) )) ) ) (assign (xyzw) (var_ref gl_Position@43) (var_ref gl_Position) ) )) ) ) GLSL IR for linked fragment program 7: ( (declare (shader_out ) vec4 gl_FragColor) (declare (temporary ) vec4 gl_FragColor) (declare (shader_in ) vec4 gl_FragCoord) (declare (uniform ) vec2 resolution) (declare (uniform ) float time) (function main (signature void (parameters ) ( (declare () vec4 col) (declare () vec2 p) (declare (temporary ) vec2 assignment_tmp) (assign (xy) (var_ref assignment_tmp) (expression vec2 + (constant float (-1.000000)) (expression vec2 * (constant float (2.000000)) (expression vec2 * (swiz xy (var_ref gl_FragCoord) )(expression vec2 rcp (var_ref resolution) ) ) ) ) ) (assign (y) (var_ref p) (swiz y (var_ref assignment_tmp) )) (assign (x) (var_ref p) (expression float * (swiz x (var_ref assignment_tmp) )(expression float * (swiz x (var_ref resolution) )(expression float rcp (swiz y (var_ref resolution) )) ) ) ) (declare () vec3 x) (assign (xyz) (var_ref x) (expression vec3 + (expression vec3 + (expression vec3 * (swiz x (var_ref p) )(constant vec3 (0.0 0.0 0x1.fffffep-1)) ) (expression vec3 * (swiz y (var_ref assignment_tmp) )(constant vec3 (-0x1.6a09e8p-1 0x1.6a09e8p-1 0.0)) ) ) (constant vec3 (-1.060660 -1.060660 -0.0)) ) ) (declare () vec3 rayDir) (assign (xyz) (var_ref rayDir) (expression vec3 * (var_ref x) (expression float rsq (expression float dot (var_ref x) (var_ref x) ) ) ) ) (declare () bool hit) (declare () float displace) (declare () int i) (declare () vec3 pos) (assign (xyz) (var_ref pos) (constant vec3 (1.414214 1.414214 0.0)) ) (assign (x) (var_ref hit) (constant bool (0)) ) (assign (x) (var_ref displace) (constant float (0.0)) ) (assign (x) (var_ref i) (constant int (0)) ) (loop ((declare () int i)) ((constant int (0)) ) ((constant int (32)) ) ((constant int (1)) ) ( (declare () float d) (assign (x) (var_ref d) (expression float + (expression float sqrt (expression float dot (var_ref pos) (var_ref pos) ) ) (constant float (-0x1.e66666p-1)) ) ) (declare (temporary ) float fbm_retval) (declare () vec3 p@44) (assign (xyz) (var_ref p@44) (expression vec3 + (expression vec3 * (var_ref pos) (constant float (8.000000)) ) (expression vec3 * (constant vec3 (0x1.dc28f6p-1 0.0 0.0)) (var_ref time) ) ) ) (declare () float f) (declare () vec3 f@45) (declare (temporary ) vec3 floor_retval) (assign (xyz) (var_ref floor_retval) (expression vec3 floor (var_ref p@44) ) ) (declare (temporary ) vec3 fract_retval) (assign (xyz) (var_ref fract_retval) (expression vec3 fract (var_ref p@44) ) ) (assign (xyz) (var_ref f@45) (expression vec3 * (expression vec3 * (var_ref fract_retval) (var_ref fract_retval) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval) ) ) ) ) ) (declare (temporary ) float assignment_tmp@46) (assign (x) (var_ref assignment_tmp@46) (expression float + (expression float + (swiz x (var_ref floor_retval) )(expression float * (swiz y (var_ref floor_retval) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval) )) ) ) (assign (x) (var_ref f) (expression float * (constant float (0x1p-1)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@46) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@46) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@45) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@46) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@46) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@45) )) (swiz y (var_ref f@45) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@46) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@46) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@45) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@46) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@46) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@45) )) (swiz y (var_ref f@45) )) (swiz z (var_ref f@45) )) ) ) (declare (temporary ) vec3 assignment_tmp@47) (assign (xyz) (var_ref assignment_tmp@47) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref p@44) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref p@44) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref p@44) )) ) (constant float (2.020000)) ) ) (declare () vec3 f@48) (declare (temporary ) vec3 floor_retval@49) (assign (xyz) (var_ref floor_retval@49) (expression vec3 floor (var_ref assignment_tmp@47) ) ) (declare (temporary ) vec3 fract_retval@50) (assign (xyz) (var_ref fract_retval@50) (expression vec3 fract (var_ref assignment_tmp@47) ) ) (assign (xyz) (var_ref f@48) (expression vec3 * (expression vec3 * (var_ref fract_retval@50) (var_ref fract_retval@50) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@50) ) ) ) ) ) (declare (temporary ) float assignment_tmp@51) (assign (x) (var_ref assignment_tmp@51) (expression float + (expression float + (swiz x (var_ref floor_retval@49) )(expression float * (swiz y (var_ref floor_retval@49) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@49) )) ) ) (assign (x) (var_ref f) (expression float + (var_ref f) (expression float * (constant float (0x1p-2)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@51) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@51) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@48) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@51) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@51) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@48) )) (swiz y (var_ref f@48) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@51) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@51) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@48) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@51) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@51) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@48) )) (swiz y (var_ref f@48) )) (swiz z (var_ref f@48) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@52) (assign (xyz) (var_ref assignment_tmp@52) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@47) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@47) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@47) )) ) (constant float (2.030000)) ) ) (declare () vec3 f@53) (declare (temporary ) vec3 floor_retval@54) (assign (xyz) (var_ref floor_retval@54) (expression vec3 floor (var_ref assignment_tmp@52) ) ) (declare (temporary ) vec3 fract_retval@55) (assign (xyz) (var_ref fract_retval@55) (expression vec3 fract (var_ref assignment_tmp@52) ) ) (assign (xyz) (var_ref f@53) (expression vec3 * (expression vec3 * (var_ref fract_retval@55) (var_ref fract_retval@55) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@55) ) ) ) ) ) (declare (temporary ) float assignment_tmp@56) (assign (x) (var_ref assignment_tmp@56) (expression float + (expression float + (swiz x (var_ref floor_retval@54) )(expression float * (swiz y (var_ref floor_retval@54) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@54) )) ) ) (assign (x) (var_ref f) (expression float + (var_ref f) (expression float * (constant float (0x1p-3)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@56) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@56) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@53) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@56) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@56) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@53) )) (swiz y (var_ref f@53) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@56) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@56) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@53) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@56) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@56) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@53) )) (swiz y (var_ref f@53) )) (swiz z (var_ref f@53) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@57) (assign (xyz) (var_ref assignment_tmp@57) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@52) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@52) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@52) )) ) (constant float (2.010000)) ) ) (declare () vec3 f@58) (declare (temporary ) vec3 floor_retval@59) (assign (xyz) (var_ref floor_retval@59) (expression vec3 floor (var_ref assignment_tmp@57) ) ) (declare (temporary ) vec3 fract_retval@60) (assign (xyz) (var_ref fract_retval@60) (expression vec3 fract (var_ref assignment_tmp@57) ) ) (assign (xyz) (var_ref f@58) (expression vec3 * (expression vec3 * (var_ref fract_retval@60) (var_ref fract_retval@60) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@60) ) ) ) ) ) (declare (temporary ) float assignment_tmp@61) (assign (x) (var_ref assignment_tmp@61) (expression float + (expression float + (swiz x (var_ref floor_retval@59) )(expression float * (swiz y (var_ref floor_retval@59) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@59) )) ) ) (assign (x) (var_ref f) (expression float + (var_ref f) (expression float * (constant float (0x1p-4)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@61) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@61) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@58) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@61) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@61) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@58) )) (swiz y (var_ref f@58) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@61) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@61) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@58) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@61) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@61) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@58) )) (swiz y (var_ref f@58) )) (swiz z (var_ref f@58) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@62) (assign (xyz) (var_ref assignment_tmp@62) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@57) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@57) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@57) )) ) (constant float (2.020000)) ) ) (assign (xyz) (var_ref p@44) (var_ref assignment_tmp@62) ) (declare () vec3 f@63) (declare (temporary ) vec3 floor_retval@64) (assign (xyz) (var_ref floor_retval@64) (expression vec3 floor (var_ref assignment_tmp@62) ) ) (declare (temporary ) vec3 fract_retval@65) (assign (xyz) (var_ref fract_retval@65) (expression vec3 fract (var_ref assignment_tmp@62) ) ) (assign (xyz) (var_ref f@63) (expression vec3 * (expression vec3 * (var_ref fract_retval@65) (var_ref fract_retval@65) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@65) ) ) ) ) ) (declare (temporary ) float assignment_tmp@66) (assign (x) (var_ref assignment_tmp@66) (expression float + (expression float + (swiz x (var_ref floor_retval@64) )(expression float * (swiz y (var_ref floor_retval@64) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@64) )) ) ) (declare (temporary ) float assignment_tmp@67) (assign (x) (var_ref assignment_tmp@67) (expression float + (var_ref f) (expression float * (constant float (0x1p-5)) (expression float abs (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@66) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@66) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@63) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@66) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@66) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@63) )) (swiz y (var_ref f@63) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@66) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@66) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@63) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@66) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@66) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@63) )) (swiz y (var_ref f@63) )) (swiz z (var_ref f@63) )) ) ) ) ) (assign (x) (var_ref f) (var_ref assignment_tmp@67) ) (assign (x) (var_ref fbm_retval) (expression float * (var_ref assignment_tmp@67) (constant float (1.066667)) ) ) (declare (temporary ) float assignment_tmp@68) (assign (x) (var_ref assignment_tmp@68) (expression float + (var_ref d) (expression float * (var_ref fbm_retval) (constant float (-0x1.333334p-2)) ) ) ) (assign (x) (var_ref d) (var_ref assignment_tmp@68) ) (if (expression bool < (var_ref assignment_tmp@68) (constant float (0x1.99999ap-5)) ) ( (assign (x) (var_ref hit) (constant bool (1)) ) (assign (x) (var_ref displace) (var_ref fbm_retval) ) ) ()) (assign (xyz) (var_ref pos) (expression vec3 + (var_ref pos) (expression vec3 * (expression vec3 * (var_ref rayDir) (var_ref assignment_tmp@68) ) (constant float (0x1.70a3d8p-1)) ) ) ) (assign (x) (var_ref i) (expression int + (var_ref i) (constant int (1)) ) ) )) (assign (xyzw) (var_ref col) (constant vec4 (0x1.99999ap-2 0x1.99999ap-2 0x1.99999ap-2 1.000000)) ) (if (var_ref hit) ( (declare () vec4 c) (declare (temporary ) float clamp_retval) (assign (x) (var_ref clamp_retval) (expression float min (expression float max (expression float + (expression float * (var_ref displace) (constant float (2.700000)) ) (constant float (-0x1p-1)) ) (constant float (0.0)) ) (constant float (0x1.fae148p-1)) ) ) (declare () vec4 c@69) (declare (temporary ) float fract_retval@70) (assign (x) (var_ref fract_retval@70) (expression float fract (expression float * (var_ref clamp_retval) (constant float (3.000000)) ) ) ) (if (expression bool < (var_ref clamp_retval) (constant float (0x1.55553ep-2)) ) ( (assign (xyzw) (var_ref c@69) (expression vec4 lrp (constant vec4 (3.000000 3.000000 1.000000 1.000000)) (constant vec4 (1.000000 0x1p-1 0.0 1.000000)) (var_ref fract_retval@70) ) ) ) ( (if (expression bool < (var_ref clamp_retval) (constant float (0x1.55553ep-1)) ) ( (assign (xyzw) (var_ref c@69) (expression vec4 lrp (constant vec4 (1.000000 0x1p-1 0.0 1.000000)) (constant vec4 (1.000000 0.0 0.0 1.000000)) (var_ref fract_retval@70) ) ) ) ( (assign (xyzw) (var_ref c@69) (expression vec4 lrp (constant vec4 (1.000000 0.0 0.0 1.000000)) (constant vec4 (0x1.99999ap-3 0x1.99999ap-3 0x1.99999ap-3 1.000000)) (var_ref fract_retval@70) ) ) )) )) (assign (w) (var_ref c) (swiz w (var_ref c@69) )) (declare () vec3 n) (declare () float d@71) (assign (x) (var_ref d@71) (expression float + (expression float sqrt (expression float dot (var_ref pos) (var_ref pos) ) ) (constant float (-0x1.e66666p-1)) ) ) (declare () vec3 p@72) (declare () vec3 cse) (assign (xyz) (var_ref cse) (expression vec3 * (constant vec3 (0x1.dc28f6p-1 0.0 0.0)) (var_ref time) ) ) (assign (xyz) (var_ref p@72) (expression vec3 + (expression vec3 * (var_ref pos) (constant float (8.000000)) ) (var_ref cse) ) ) (declare () float f@73) (declare () vec3 f@74) (declare (temporary ) vec3 floor_retval@75) (assign (xyz) (var_ref floor_retval@75) (expression vec3 floor (var_ref p@72) ) ) (declare (temporary ) vec3 fract_retval@76) (assign (xyz) (var_ref fract_retval@76) (expression vec3 fract (var_ref p@72) ) ) (assign (xyz) (var_ref f@74) (expression vec3 * (expression vec3 * (var_ref fract_retval@76) (var_ref fract_retval@76) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@76) ) ) ) ) ) (declare (temporary ) float assignment_tmp@77) (assign (x) (var_ref assignment_tmp@77) (expression float + (expression float + (swiz x (var_ref floor_retval@75) )(expression float * (swiz y (var_ref floor_retval@75) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@75) )) ) ) (assign (x) (var_ref f@73) (expression float * (constant float (0x1p-1)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@77) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@77) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@74) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@77) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@77) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@74) )) (swiz y (var_ref f@74) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@77) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@77) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@74) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@77) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@77) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@74) )) (swiz y (var_ref f@74) )) (swiz z (var_ref f@74) )) ) ) (declare (temporary ) vec3 assignment_tmp@78) (assign (xyz) (var_ref assignment_tmp@78) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref p@72) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref p@72) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref p@72) )) ) (constant float (2.020000)) ) ) (declare () vec3 f@79) (declare (temporary ) vec3 floor_retval@80) (assign (xyz) (var_ref floor_retval@80) (expression vec3 floor (var_ref assignment_tmp@78) ) ) (declare (temporary ) vec3 fract_retval@81) (assign (xyz) (var_ref fract_retval@81) (expression vec3 fract (var_ref assignment_tmp@78) ) ) (assign (xyz) (var_ref f@79) (expression vec3 * (expression vec3 * (var_ref fract_retval@81) (var_ref fract_retval@81) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@81) ) ) ) ) ) (declare (temporary ) float assignment_tmp@82) (assign (x) (var_ref assignment_tmp@82) (expression float + (expression float + (swiz x (var_ref floor_retval@80) )(expression float * (swiz y (var_ref floor_retval@80) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@80) )) ) ) (assign (x) (var_ref f@73) (expression float + (var_ref f@73) (expression float * (constant float (0x1p-2)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@82) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@82) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@79) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@82) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@82) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@79) )) (swiz y (var_ref f@79) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@82) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@82) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@79) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@82) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@82) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@79) )) (swiz y (var_ref f@79) )) (swiz z (var_ref f@79) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@83) (assign (xyz) (var_ref assignment_tmp@83) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@78) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@78) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@78) )) ) (constant float (2.030000)) ) ) (declare () vec3 f@84) (declare (temporary ) vec3 floor_retval@85) (assign (xyz) (var_ref floor_retval@85) (expression vec3 floor (var_ref assignment_tmp@83) ) ) (declare (temporary ) vec3 fract_retval@86) (assign (xyz) (var_ref fract_retval@86) (expression vec3 fract (var_ref assignment_tmp@83) ) ) (assign (xyz) (var_ref f@84) (expression vec3 * (expression vec3 * (var_ref fract_retval@86) (var_ref fract_retval@86) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@86) ) ) ) ) ) (declare (temporary ) float assignment_tmp@87) (assign (x) (var_ref assignment_tmp@87) (expression float + (expression float + (swiz x (var_ref floor_retval@85) )(expression float * (swiz y (var_ref floor_retval@85) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@85) )) ) ) (assign (x) (var_ref f@73) (expression float + (var_ref f@73) (expression float * (constant float (0x1p-3)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@87) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@87) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@84) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@87) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@87) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@84) )) (swiz y (var_ref f@84) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@87) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@87) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@84) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@87) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@87) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@84) )) (swiz y (var_ref f@84) )) (swiz z (var_ref f@84) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@88) (assign (xyz) (var_ref assignment_tmp@88) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@83) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@83) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@83) )) ) (constant float (2.010000)) ) ) (declare () vec3 f@89) (declare (temporary ) vec3 floor_retval@90) (assign (xyz) (var_ref floor_retval@90) (expression vec3 floor (var_ref assignment_tmp@88) ) ) (declare (temporary ) vec3 fract_retval@91) (assign (xyz) (var_ref fract_retval@91) (expression vec3 fract (var_ref assignment_tmp@88) ) ) (assign (xyz) (var_ref f@89) (expression vec3 * (expression vec3 * (var_ref fract_retval@91) (var_ref fract_retval@91) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@91) ) ) ) ) ) (declare (temporary ) float assignment_tmp@92) (assign (x) (var_ref assignment_tmp@92) (expression float + (expression float + (swiz x (var_ref floor_retval@90) )(expression float * (swiz y (var_ref floor_retval@90) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@90) )) ) ) (assign (x) (var_ref f@73) (expression float + (var_ref f@73) (expression float * (constant float (0x1p-4)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@92) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@92) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@89) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@92) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@92) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@89) )) (swiz y (var_ref f@89) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@92) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@92) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@89) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@92) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@92) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@89) )) (swiz y (var_ref f@89) )) (swiz z (var_ref f@89) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@93) (assign (xyz) (var_ref assignment_tmp@93) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@88) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@88) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@88) )) ) (constant float (2.020000)) ) ) (assign (xyz) (var_ref p@72) (var_ref assignment_tmp@93) ) (declare () vec3 f@94) (declare (temporary ) vec3 floor_retval@95) (assign (xyz) (var_ref floor_retval@95) (expression vec3 floor (var_ref assignment_tmp@93) ) ) (declare (temporary ) vec3 fract_retval@96) (assign (xyz) (var_ref fract_retval@96) (expression vec3 fract (var_ref assignment_tmp@93) ) ) (assign (xyz) (var_ref f@94) (expression vec3 * (expression vec3 * (var_ref fract_retval@96) (var_ref fract_retval@96) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@96) ) ) ) ) ) (declare (temporary ) float assignment_tmp@97) (assign (x) (var_ref assignment_tmp@97) (expression float + (expression float + (swiz x (var_ref floor_retval@95) )(expression float * (swiz y (var_ref floor_retval@95) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@95) )) ) ) (declare (temporary ) float assignment_tmp@98) (assign (x) (var_ref assignment_tmp@98) (expression float + (var_ref f@73) (expression float * (constant float (0x1p-5)) (expression float abs (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@97) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@97) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@94) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@97) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@97) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@94) )) (swiz y (var_ref f@94) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@97) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@97) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@94) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@97) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@97) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@94) )) (swiz y (var_ref f@94) )) (swiz z (var_ref f@94) )) ) ) ) ) (assign (x) (var_ref f@73) (var_ref assignment_tmp@98) ) (declare (temporary ) float assignment_tmp@99) (assign (x) (var_ref assignment_tmp@99) (expression float + (var_ref d@71) (expression float * (constant float (-0x1.47ae16p-2)) (var_ref assignment_tmp@98) ) ) ) (assign (x) (var_ref d@71) (var_ref assignment_tmp@99) ) (declare (temporary ) vec3 vec_ctor) (assign (x) (var_ref vec_ctor) (expression float + (swiz x (var_ref pos) )(constant float (0x1.0624dep-10)) ) ) (assign (y) (var_ref vec_ctor) (swiz y (var_ref pos) )) (assign (z) (var_ref vec_ctor) (swiz z (var_ref pos) )) (declare () float d@100) (assign (x) (var_ref d@100) (expression float + (expression float sqrt (expression float dot (var_ref vec_ctor) (var_ref vec_ctor) ) ) (constant float (-0x1.e66666p-1)) ) ) (declare () vec3 p@101) (assign (xyz) (var_ref p@101) (expression vec3 + (expression vec3 * (var_ref vec_ctor) (constant float (8.000000)) ) (var_ref cse) ) ) (declare () float f@102) (declare () vec3 f@103) (declare (temporary ) vec3 floor_retval@104) (assign (xyz) (var_ref floor_retval@104) (expression vec3 floor (var_ref p@101) ) ) (declare (temporary ) vec3 fract_retval@105) (assign (xyz) (var_ref fract_retval@105) (expression vec3 fract (var_ref p@101) ) ) (assign (xyz) (var_ref f@103) (expression vec3 * (expression vec3 * (var_ref fract_retval@105) (var_ref fract_retval@105) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@105) ) ) ) ) ) (declare (temporary ) float assignment_tmp@106) (assign (x) (var_ref assignment_tmp@106) (expression float + (expression float + (swiz x (var_ref floor_retval@104) )(expression float * (swiz y (var_ref floor_retval@104) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@104) )) ) ) (assign (x) (var_ref f@102) (expression float * (constant float (0x1p-1)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@106) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@106) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@103) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@106) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@106) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@103) )) (swiz y (var_ref f@103) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@106) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@106) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@103) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@106) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@106) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@103) )) (swiz y (var_ref f@103) )) (swiz z (var_ref f@103) )) ) ) (declare (temporary ) vec3 assignment_tmp@107) (assign (xyz) (var_ref assignment_tmp@107) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref p@101) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref p@101) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref p@101) )) ) (constant float (2.020000)) ) ) (declare () vec3 f@108) (declare (temporary ) vec3 floor_retval@109) (assign (xyz) (var_ref floor_retval@109) (expression vec3 floor (var_ref assignment_tmp@107) ) ) (declare (temporary ) vec3 fract_retval@110) (assign (xyz) (var_ref fract_retval@110) (expression vec3 fract (var_ref assignment_tmp@107) ) ) (assign (xyz) (var_ref f@108) (expression vec3 * (expression vec3 * (var_ref fract_retval@110) (var_ref fract_retval@110) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@110) ) ) ) ) ) (declare (temporary ) float assignment_tmp@111) (assign (x) (var_ref assignment_tmp@111) (expression float + (expression float + (swiz x (var_ref floor_retval@109) )(expression float * (swiz y (var_ref floor_retval@109) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@109) )) ) ) (assign (x) (var_ref f@102) (expression float + (var_ref f@102) (expression float * (constant float (0x1p-2)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@111) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@111) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@108) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@111) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@111) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@108) )) (swiz y (var_ref f@108) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@111) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@111) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@108) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@111) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@111) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@108) )) (swiz y (var_ref f@108) )) (swiz z (var_ref f@108) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@112) (assign (xyz) (var_ref assignment_tmp@112) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@107) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@107) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@107) )) ) (constant float (2.030000)) ) ) (declare () vec3 f@113) (declare (temporary ) vec3 floor_retval@114) (assign (xyz) (var_ref floor_retval@114) (expression vec3 floor (var_ref assignment_tmp@112) ) ) (declare (temporary ) vec3 fract_retval@115) (assign (xyz) (var_ref fract_retval@115) (expression vec3 fract (var_ref assignment_tmp@112) ) ) (assign (xyz) (var_ref f@113) (expression vec3 * (expression vec3 * (var_ref fract_retval@115) (var_ref fract_retval@115) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@115) ) ) ) ) ) (declare (temporary ) float assignment_tmp@116) (assign (x) (var_ref assignment_tmp@116) (expression float + (expression float + (swiz x (var_ref floor_retval@114) )(expression float * (swiz y (var_ref floor_retval@114) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@114) )) ) ) (assign (x) (var_ref f@102) (expression float + (var_ref f@102) (expression float * (constant float (0x1p-3)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@116) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@116) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@113) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@116) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@116) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@113) )) (swiz y (var_ref f@113) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@116) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@116) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@113) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@116) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@116) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@113) )) (swiz y (var_ref f@113) )) (swiz z (var_ref f@113) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@117) (assign (xyz) (var_ref assignment_tmp@117) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@112) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@112) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@112) )) ) (constant float (2.010000)) ) ) (declare () vec3 f@118) (declare (temporary ) vec3 floor_retval@119) (assign (xyz) (var_ref floor_retval@119) (expression vec3 floor (var_ref assignment_tmp@117) ) ) (declare (temporary ) vec3 fract_retval@120) (assign (xyz) (var_ref fract_retval@120) (expression vec3 fract (var_ref assignment_tmp@117) ) ) (assign (xyz) (var_ref f@118) (expression vec3 * (expression vec3 * (var_ref fract_retval@120) (var_ref fract_retval@120) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@120) ) ) ) ) ) (declare (temporary ) float assignment_tmp@121) (assign (x) (var_ref assignment_tmp@121) (expression float + (expression float + (swiz x (var_ref floor_retval@119) )(expression float * (swiz y (var_ref floor_retval@119) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@119) )) ) ) (assign (x) (var_ref f@102) (expression float + (var_ref f@102) (expression float * (constant float (0x1p-4)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@121) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@121) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@118) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@121) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@121) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@118) )) (swiz y (var_ref f@118) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@121) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@121) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@118) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@121) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@121) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@118) )) (swiz y (var_ref f@118) )) (swiz z (var_ref f@118) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@122) (assign (xyz) (var_ref assignment_tmp@122) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@117) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@117) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@117) )) ) (constant float (2.020000)) ) ) (assign (xyz) (var_ref p@101) (var_ref assignment_tmp@122) ) (declare () vec3 f@123) (declare (temporary ) vec3 floor_retval@124) (assign (xyz) (var_ref floor_retval@124) (expression vec3 floor (var_ref assignment_tmp@122) ) ) (declare (temporary ) vec3 fract_retval@125) (assign (xyz) (var_ref fract_retval@125) (expression vec3 fract (var_ref assignment_tmp@122) ) ) (assign (xyz) (var_ref f@123) (expression vec3 * (expression vec3 * (var_ref fract_retval@125) (var_ref fract_retval@125) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@125) ) ) ) ) ) (declare (temporary ) float assignment_tmp@126) (assign (x) (var_ref assignment_tmp@126) (expression float + (expression float + (swiz x (var_ref floor_retval@124) )(expression float * (swiz y (var_ref floor_retval@124) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@124) )) ) ) (declare (temporary ) float assignment_tmp@127) (assign (x) (var_ref assignment_tmp@127) (expression float + (var_ref f@102) (expression float * (constant float (0x1p-5)) (expression float abs (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@126) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@126) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@123) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@126) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@126) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@123) )) (swiz y (var_ref f@123) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@126) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@126) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@123) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@126) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@126) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@123) )) (swiz y (var_ref f@123) )) (swiz z (var_ref f@123) )) ) ) ) ) (assign (x) (var_ref f@102) (var_ref assignment_tmp@127) ) (declare (temporary ) float assignment_tmp@128) (assign (x) (var_ref assignment_tmp@128) (expression float + (var_ref d@100) (expression float * (constant float (-0x1.47ae16p-2)) (var_ref assignment_tmp@127) ) ) ) (assign (x) (var_ref d@100) (var_ref assignment_tmp@128) ) (assign (x) (var_ref n) (expression float + (var_ref assignment_tmp@128) (expression float neg (var_ref assignment_tmp@99) ) ) ) (declare (temporary ) vec3 vec_ctor@129) (assign (x) (var_ref vec_ctor@129) (swiz x (var_ref pos) )) (assign (y) (var_ref vec_ctor@129) (expression float + (swiz y (var_ref pos) )(constant float (0x1.0624dep-10)) ) ) (assign (z) (var_ref vec_ctor@129) (swiz z (var_ref pos) )) (declare () float d@130) (assign (x) (var_ref d@130) (expression float + (expression float sqrt (expression float dot (var_ref vec_ctor@129) (var_ref vec_ctor@129) ) ) (constant float (-0x1.e66666p-1)) ) ) (declare () vec3 p@131) (assign (xyz) (var_ref p@131) (expression vec3 + (expression vec3 * (var_ref vec_ctor@129) (constant float (8.000000)) ) (var_ref cse) ) ) (declare () float f@132) (declare () vec3 f@133) (declare (temporary ) vec3 floor_retval@134) (assign (xyz) (var_ref floor_retval@134) (expression vec3 floor (var_ref p@131) ) ) (declare (temporary ) vec3 fract_retval@135) (assign (xyz) (var_ref fract_retval@135) (expression vec3 fract (var_ref p@131) ) ) (assign (xyz) (var_ref f@133) (expression vec3 * (expression vec3 * (var_ref fract_retval@135) (var_ref fract_retval@135) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@135) ) ) ) ) ) (declare (temporary ) float assignment_tmp@136) (assign (x) (var_ref assignment_tmp@136) (expression float + (expression float + (swiz x (var_ref floor_retval@134) )(expression float * (swiz y (var_ref floor_retval@134) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@134) )) ) ) (assign (x) (var_ref f@132) (expression float * (constant float (0x1p-1)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@136) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@136) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@133) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@136) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@136) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@133) )) (swiz y (var_ref f@133) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@136) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@136) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@133) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@136) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@136) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@133) )) (swiz y (var_ref f@133) )) (swiz z (var_ref f@133) )) ) ) (declare (temporary ) vec3 assignment_tmp@137) (assign (xyz) (var_ref assignment_tmp@137) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref p@131) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref p@131) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref p@131) )) ) (constant float (2.020000)) ) ) (declare () vec3 f@138) (declare (temporary ) vec3 floor_retval@139) (assign (xyz) (var_ref floor_retval@139) (expression vec3 floor (var_ref assignment_tmp@137) ) ) (declare (temporary ) vec3 fract_retval@140) (assign (xyz) (var_ref fract_retval@140) (expression vec3 fract (var_ref assignment_tmp@137) ) ) (assign (xyz) (var_ref f@138) (expression vec3 * (expression vec3 * (var_ref fract_retval@140) (var_ref fract_retval@140) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@140) ) ) ) ) ) (declare (temporary ) float assignment_tmp@141) (assign (x) (var_ref assignment_tmp@141) (expression float + (expression float + (swiz x (var_ref floor_retval@139) )(expression float * (swiz y (var_ref floor_retval@139) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@139) )) ) ) (assign (x) (var_ref f@132) (expression float + (var_ref f@132) (expression float * (constant float (0x1p-2)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@141) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@141) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@138) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@141) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@141) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@138) )) (swiz y (var_ref f@138) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@141) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@141) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@138) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@141) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@141) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@138) )) (swiz y (var_ref f@138) )) (swiz z (var_ref f@138) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@142) (assign (xyz) (var_ref assignment_tmp@142) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@137) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@137) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@137) )) ) (constant float (2.030000)) ) ) (declare () vec3 f@143) (declare (temporary ) vec3 floor_retval@144) (assign (xyz) (var_ref floor_retval@144) (expression vec3 floor (var_ref assignment_tmp@142) ) ) (declare (temporary ) vec3 fract_retval@145) (assign (xyz) (var_ref fract_retval@145) (expression vec3 fract (var_ref assignment_tmp@142) ) ) (assign (xyz) (var_ref f@143) (expression vec3 * (expression vec3 * (var_ref fract_retval@145) (var_ref fract_retval@145) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@145) ) ) ) ) ) (declare (temporary ) float assignment_tmp@146) (assign (x) (var_ref assignment_tmp@146) (expression float + (expression float + (swiz x (var_ref floor_retval@144) )(expression float * (swiz y (var_ref floor_retval@144) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@144) )) ) ) (assign (x) (var_ref f@132) (expression float + (var_ref f@132) (expression float * (constant float (0x1p-3)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@146) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@146) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@143) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@146) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@146) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@143) )) (swiz y (var_ref f@143) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@146) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@146) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@143) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@146) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@146) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@143) )) (swiz y (var_ref f@143) )) (swiz z (var_ref f@143) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@147) (assign (xyz) (var_ref assignment_tmp@147) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@142) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@142) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@142) )) ) (constant float (2.010000)) ) ) (declare () vec3 f@148) (declare (temporary ) vec3 floor_retval@149) (assign (xyz) (var_ref floor_retval@149) (expression vec3 floor (var_ref assignment_tmp@147) ) ) (declare (temporary ) vec3 fract_retval@150) (assign (xyz) (var_ref fract_retval@150) (expression vec3 fract (var_ref assignment_tmp@147) ) ) (assign (xyz) (var_ref f@148) (expression vec3 * (expression vec3 * (var_ref fract_retval@150) (var_ref fract_retval@150) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@150) ) ) ) ) ) (declare (temporary ) float assignment_tmp@151) (assign (x) (var_ref assignment_tmp@151) (expression float + (expression float + (swiz x (var_ref floor_retval@149) )(expression float * (swiz y (var_ref floor_retval@149) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@149) )) ) ) (assign (x) (var_ref f@132) (expression float + (var_ref f@132) (expression float * (constant float (0x1p-4)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@151) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@151) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@148) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@151) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@151) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@148) )) (swiz y (var_ref f@148) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@151) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@151) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@148) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@151) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@151) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@148) )) (swiz y (var_ref f@148) )) (swiz z (var_ref f@148) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@152) (assign (xyz) (var_ref assignment_tmp@152) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@147) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@147) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@147) )) ) (constant float (2.020000)) ) ) (assign (xyz) (var_ref p@131) (var_ref assignment_tmp@152) ) (declare () vec3 f@153) (declare (temporary ) vec3 floor_retval@154) (assign (xyz) (var_ref floor_retval@154) (expression vec3 floor (var_ref assignment_tmp@152) ) ) (declare (temporary ) vec3 fract_retval@155) (assign (xyz) (var_ref fract_retval@155) (expression vec3 fract (var_ref assignment_tmp@152) ) ) (assign (xyz) (var_ref f@153) (expression vec3 * (expression vec3 * (var_ref fract_retval@155) (var_ref fract_retval@155) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@155) ) ) ) ) ) (declare (temporary ) float assignment_tmp@156) (assign (x) (var_ref assignment_tmp@156) (expression float + (expression float + (swiz x (var_ref floor_retval@154) )(expression float * (swiz y (var_ref floor_retval@154) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@154) )) ) ) (declare (temporary ) float assignment_tmp@157) (assign (x) (var_ref assignment_tmp@157) (expression float + (var_ref f@132) (expression float * (constant float (0x1p-5)) (expression float abs (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@156) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@156) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@153) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@156) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@156) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@153) )) (swiz y (var_ref f@153) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@156) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@156) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@153) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@156) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@156) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@153) )) (swiz y (var_ref f@153) )) (swiz z (var_ref f@153) )) ) ) ) ) (assign (x) (var_ref f@132) (var_ref assignment_tmp@157) ) (declare (temporary ) float assignment_tmp@158) (assign (x) (var_ref assignment_tmp@158) (expression float + (var_ref d@130) (expression float * (constant float (-0x1.47ae16p-2)) (var_ref assignment_tmp@157) ) ) ) (assign (x) (var_ref d@130) (var_ref assignment_tmp@158) ) (assign (y) (var_ref n) (expression float + (var_ref assignment_tmp@158) (expression float neg (var_ref assignment_tmp@99) ) ) ) (declare (temporary ) vec3 vec_ctor@159) (assign (x) (var_ref vec_ctor@159) (swiz x (var_ref pos) )) (assign (y) (var_ref vec_ctor@159) (swiz y (var_ref pos) )) (assign (z) (var_ref vec_ctor@159) (expression float + (swiz z (var_ref pos) )(constant float (0x1.0624dep-10)) ) ) (declare () float d@160) (assign (x) (var_ref d@160) (expression float + (expression float sqrt (expression float dot (var_ref vec_ctor@159) (var_ref vec_ctor@159) ) ) (constant float (-0x1.e66666p-1)) ) ) (declare () vec3 p@161) (assign (xyz) (var_ref p@161) (expression vec3 + (expression vec3 * (var_ref vec_ctor@159) (constant float (8.000000)) ) (var_ref cse) ) ) (declare () float f@162) (declare () vec3 f@163) (declare (temporary ) vec3 floor_retval@164) (assign (xyz) (var_ref floor_retval@164) (expression vec3 floor (var_ref p@161) ) ) (declare (temporary ) vec3 fract_retval@165) (assign (xyz) (var_ref fract_retval@165) (expression vec3 fract (var_ref p@161) ) ) (assign (xyz) (var_ref f@163) (expression vec3 * (expression vec3 * (var_ref fract_retval@165) (var_ref fract_retval@165) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@165) ) ) ) ) ) (declare (temporary ) float assignment_tmp@166) (assign (x) (var_ref assignment_tmp@166) (expression float + (expression float + (swiz x (var_ref floor_retval@164) )(expression float * (swiz y (var_ref floor_retval@164) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@164) )) ) ) (assign (x) (var_ref f@162) (expression float * (constant float (0x1p-1)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@166) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@166) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@163) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@166) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@166) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@163) )) (swiz y (var_ref f@163) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@166) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@166) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@163) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@166) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@166) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@163) )) (swiz y (var_ref f@163) )) (swiz z (var_ref f@163) )) ) ) (declare (temporary ) vec3 assignment_tmp@167) (assign (xyz) (var_ref assignment_tmp@167) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref p@161) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref p@161) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref p@161) )) ) (constant float (2.020000)) ) ) (declare () vec3 f@168) (declare (temporary ) vec3 floor_retval@169) (assign (xyz) (var_ref floor_retval@169) (expression vec3 floor (var_ref assignment_tmp@167) ) ) (declare (temporary ) vec3 fract_retval@170) (assign (xyz) (var_ref fract_retval@170) (expression vec3 fract (var_ref assignment_tmp@167) ) ) (assign (xyz) (var_ref f@168) (expression vec3 * (expression vec3 * (var_ref fract_retval@170) (var_ref fract_retval@170) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@170) ) ) ) ) ) (declare (temporary ) float assignment_tmp@171) (assign (x) (var_ref assignment_tmp@171) (expression float + (expression float + (swiz x (var_ref floor_retval@169) )(expression float * (swiz y (var_ref floor_retval@169) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@169) )) ) ) (assign (x) (var_ref f@162) (expression float + (var_ref f@162) (expression float * (constant float (0x1p-2)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@171) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@171) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@168) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@171) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@171) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@168) )) (swiz y (var_ref f@168) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@171) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@171) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@168) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@171) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@171) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@168) )) (swiz y (var_ref f@168) )) (swiz z (var_ref f@168) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@172) (assign (xyz) (var_ref assignment_tmp@172) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@167) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@167) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@167) )) ) (constant float (2.030000)) ) ) (declare () vec3 f@173) (declare (temporary ) vec3 floor_retval@174) (assign (xyz) (var_ref floor_retval@174) (expression vec3 floor (var_ref assignment_tmp@172) ) ) (declare (temporary ) vec3 fract_retval@175) (assign (xyz) (var_ref fract_retval@175) (expression vec3 fract (var_ref assignment_tmp@172) ) ) (assign (xyz) (var_ref f@173) (expression vec3 * (expression vec3 * (var_ref fract_retval@175) (var_ref fract_retval@175) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@175) ) ) ) ) ) (declare (temporary ) float assignment_tmp@176) (assign (x) (var_ref assignment_tmp@176) (expression float + (expression float + (swiz x (var_ref floor_retval@174) )(expression float * (swiz y (var_ref floor_retval@174) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@174) )) ) ) (assign (x) (var_ref f@162) (expression float + (var_ref f@162) (expression float * (constant float (0x1p-3)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@176) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@176) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@173) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@176) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@176) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@173) )) (swiz y (var_ref f@173) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@176) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@176) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@173) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@176) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@176) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@173) )) (swiz y (var_ref f@173) )) (swiz z (var_ref f@173) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@177) (assign (xyz) (var_ref assignment_tmp@177) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@172) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@172) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@172) )) ) (constant float (2.010000)) ) ) (declare () vec3 f@178) (declare (temporary ) vec3 floor_retval@179) (assign (xyz) (var_ref floor_retval@179) (expression vec3 floor (var_ref assignment_tmp@177) ) ) (declare (temporary ) vec3 fract_retval@180) (assign (xyz) (var_ref fract_retval@180) (expression vec3 fract (var_ref assignment_tmp@177) ) ) (assign (xyz) (var_ref f@178) (expression vec3 * (expression vec3 * (var_ref fract_retval@180) (var_ref fract_retval@180) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@180) ) ) ) ) ) (declare (temporary ) float assignment_tmp@181) (assign (x) (var_ref assignment_tmp@181) (expression float + (expression float + (swiz x (var_ref floor_retval@179) )(expression float * (swiz y (var_ref floor_retval@179) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@179) )) ) ) (assign (x) (var_ref f@162) (expression float + (var_ref f@162) (expression float * (constant float (0x1p-4)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@181) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@181) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@178) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@181) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@181) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@178) )) (swiz y (var_ref f@178) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@181) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@181) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@178) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@181) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@181) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@178) )) (swiz y (var_ref f@178) )) (swiz z (var_ref f@178) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@182) (assign (xyz) (var_ref assignment_tmp@182) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@177) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@177) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@177) )) ) (constant float (2.020000)) ) ) (assign (xyz) (var_ref p@161) (var_ref assignment_tmp@182) ) (declare () vec3 f@183) (declare (temporary ) vec3 floor_retval@184) (assign (xyz) (var_ref floor_retval@184) (expression vec3 floor (var_ref assignment_tmp@182) ) ) (declare (temporary ) vec3 fract_retval@185) (assign (xyz) (var_ref fract_retval@185) (expression vec3 fract (var_ref assignment_tmp@182) ) ) (assign (xyz) (var_ref f@183) (expression vec3 * (expression vec3 * (var_ref fract_retval@185) (var_ref fract_retval@185) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@185) ) ) ) ) ) (declare (temporary ) float assignment_tmp@186) (assign (x) (var_ref assignment_tmp@186) (expression float + (expression float + (swiz x (var_ref floor_retval@184) )(expression float * (swiz y (var_ref floor_retval@184) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@184) )) ) ) (declare (temporary ) float assignment_tmp@187) (assign (x) (var_ref assignment_tmp@187) (expression float + (var_ref f@162) (expression float * (constant float (0x1p-5)) (expression float abs (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@186) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@186) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@183) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@186) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@186) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@183) )) (swiz y (var_ref f@183) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@186) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@186) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@183) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@186) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@186) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@183) )) (swiz y (var_ref f@183) )) (swiz z (var_ref f@183) )) ) ) ) ) (assign (x) (var_ref f@162) (var_ref assignment_tmp@187) ) (declare (temporary ) float assignment_tmp@188) (assign (x) (var_ref assignment_tmp@188) (expression float + (var_ref d@160) (expression float * (constant float (-0x1.47ae16p-2)) (var_ref assignment_tmp@187) ) ) ) (assign (x) (var_ref d@160) (var_ref assignment_tmp@188) ) (assign (z) (var_ref n) (expression float + (var_ref assignment_tmp@188) (expression float neg (var_ref assignment_tmp@99) ) ) ) (assign (xyz) (var_ref c) (expression vec3 lrp (swiz xyz (var_ref c@69) )(expression vec3 * (swiz xyz (var_ref c@69) )(expression float + (expression float * (swiz z (expression vec3 * (var_ref n) (expression float rsq (expression float dot (var_ref n) (var_ref n) ) ) ) )(constant float (0x1.666666p-2)) ) (constant float (0x1.b33334p-1)) ) ) (expression float min (expression float max (expression float * (expression float + (var_ref clamp_retval) (constant float (-0x1p-1)) ) (constant float (2.000000)) ) (constant float (0.0)) ) (constant float (1.000000)) ) ) ) (assign (xyzw) (var_ref col) (var_ref c) ) ) ()) (assign (xyzw) (var_ref gl_FragColor) (var_ref col) ) (assign (xyzw) (var_ref gl_FragColor@189) (var_ref gl_FragColor) ) )) ) ) GLSL IR for linked vertex program 7: ( (declare (shader_in ) vec4 gl_Vertex) (declare (shader_out ) vec4 gl_Position) (declare (temporary ) vec4 gl_Position) (declare (uniform ) mat4 gl_ModelViewProjectionMatrix) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref gl_Position) (expression vec4 + (expression vec4 + (expression vec4 + (expression vec4 * (array_ref (var_ref gl_ModelViewProjectionMatrix) (constant int (0)) ) (swiz x (var_ref gl_Vertex) )) (expression vec4 * (array_ref (var_ref gl_ModelViewProjectionMatrix) (constant int (1)) ) (swiz y (var_ref gl_Vertex) )) ) (expression vec4 * (array_ref (var_ref gl_ModelViewProjectionMatrix) (constant int (2)) ) (swiz z (var_ref gl_Vertex) )) ) (expression vec4 * (array_ref (var_ref gl_ModelViewProjectionMatrix) (constant int (3)) ) (swiz w (var_ref gl_Vertex) )) ) ) (assign (xyzw) (var_ref gl_Position@190) (var_ref gl_Position) ) )) ) ) GLSL IR for linked fragment program 7: ( (declare (shader_out ) vec4 gl_FragColor) (declare (temporary ) vec4 gl_FragColor) (declare (shader_in ) vec4 gl_FragCoord) (declare (uniform ) vec2 resolution) (declare (uniform ) float time) (function main (signature void (parameters ) ( (declare () vec4 col) (declare () vec2 p) (declare (temporary ) vec2 assignment_tmp) (assign (xy) (var_ref assignment_tmp) (expression vec2 + (constant float (-1.000000)) (expression vec2 * (constant float (2.000000)) (expression vec2 * (swiz xy (var_ref gl_FragCoord) )(expression vec2 rcp (var_ref resolution) ) ) ) ) ) (assign (y) (var_ref p) (swiz y (var_ref assignment_tmp) )) (assign (x) (var_ref p) (expression float * (swiz x (var_ref assignment_tmp) )(expression float * (swiz x (var_ref resolution) )(expression float rcp (swiz y (var_ref resolution) )) ) ) ) (declare () vec3 x) (assign (xyz) (var_ref x) (expression vec3 + (expression vec3 + (expression vec3 * (swiz x (var_ref p) )(constant vec3 (0.0 0.0 0x1.fffffep-1)) ) (expression vec3 * (swiz y (var_ref assignment_tmp) )(constant vec3 (-0x1.6a09e8p-1 0x1.6a09e8p-1 0.0)) ) ) (constant vec3 (-1.060660 -1.060660 -0.0)) ) ) (declare () vec3 rayDir) (assign (xyz) (var_ref rayDir) (expression vec3 * (var_ref x) (expression float rsq (expression float dot (var_ref x) (var_ref x) ) ) ) ) (declare () bool hit) (declare () float displace) (declare () int i) (declare () vec3 pos) (assign (xyz) (var_ref pos) (constant vec3 (1.414214 1.414214 0.0)) ) (assign (x) (var_ref hit) (constant bool (0)) ) (assign (x) (var_ref displace) (constant float (0.0)) ) (assign (x) (var_ref i) (constant int (0)) ) (loop ((declare () int i)) ((constant int (0)) ) ((constant int (32)) ) ((constant int (1)) ) ( (declare () float d) (assign (x) (var_ref d) (expression float + (expression float sqrt (expression float dot (var_ref pos) (var_ref pos) ) ) (constant float (-0x1.e66666p-1)) ) ) (declare (temporary ) float fbm_retval) (declare () vec3 p@191) (assign (xyz) (var_ref p@191) (expression vec3 + (expression vec3 * (var_ref pos) (constant float (8.000000)) ) (expression vec3 * (constant vec3 (0x1.dc28f6p-1 0.0 0.0)) (var_ref time) ) ) ) (declare () float f) (declare () vec3 f@192) (declare (temporary ) vec3 floor_retval) (assign (xyz) (var_ref floor_retval) (expression vec3 floor (var_ref p@191) ) ) (declare (temporary ) vec3 fract_retval) (assign (xyz) (var_ref fract_retval) (expression vec3 fract (var_ref p@191) ) ) (assign (xyz) (var_ref f@192) (expression vec3 * (expression vec3 * (var_ref fract_retval) (var_ref fract_retval) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval) ) ) ) ) ) (declare (temporary ) float assignment_tmp@193) (assign (x) (var_ref assignment_tmp@193) (expression float + (expression float + (swiz x (var_ref floor_retval) )(expression float * (swiz y (var_ref floor_retval) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval) )) ) ) (assign (x) (var_ref f) (expression float * (constant float (0x1p-1)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@193) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@193) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@192) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@193) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@193) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@192) )) (swiz y (var_ref f@192) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@193) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@193) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@192) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@193) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@193) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@192) )) (swiz y (var_ref f@192) )) (swiz z (var_ref f@192) )) ) ) (declare (temporary ) vec3 assignment_tmp@194) (assign (xyz) (var_ref assignment_tmp@194) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref p@191) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref p@191) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref p@191) )) ) (constant float (2.020000)) ) ) (declare () vec3 f@195) (declare (temporary ) vec3 floor_retval@196) (assign (xyz) (var_ref floor_retval@196) (expression vec3 floor (var_ref assignment_tmp@194) ) ) (declare (temporary ) vec3 fract_retval@197) (assign (xyz) (var_ref fract_retval@197) (expression vec3 fract (var_ref assignment_tmp@194) ) ) (assign (xyz) (var_ref f@195) (expression vec3 * (expression vec3 * (var_ref fract_retval@197) (var_ref fract_retval@197) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@197) ) ) ) ) ) (declare (temporary ) float assignment_tmp@198) (assign (x) (var_ref assignment_tmp@198) (expression float + (expression float + (swiz x (var_ref floor_retval@196) )(expression float * (swiz y (var_ref floor_retval@196) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@196) )) ) ) (assign (x) (var_ref f) (expression float + (var_ref f) (expression float * (constant float (0x1p-2)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@198) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@198) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@195) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@198) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@198) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@195) )) (swiz y (var_ref f@195) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@198) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@198) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@195) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@198) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@198) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@195) )) (swiz y (var_ref f@195) )) (swiz z (var_ref f@195) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@199) (assign (xyz) (var_ref assignment_tmp@199) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@194) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@194) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@194) )) ) (constant float (2.030000)) ) ) (declare () vec3 f@200) (declare (temporary ) vec3 floor_retval@201) (assign (xyz) (var_ref floor_retval@201) (expression vec3 floor (var_ref assignment_tmp@199) ) ) (declare (temporary ) vec3 fract_retval@202) (assign (xyz) (var_ref fract_retval@202) (expression vec3 fract (var_ref assignment_tmp@199) ) ) (assign (xyz) (var_ref f@200) (expression vec3 * (expression vec3 * (var_ref fract_retval@202) (var_ref fract_retval@202) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@202) ) ) ) ) ) (declare (temporary ) float assignment_tmp@203) (assign (x) (var_ref assignment_tmp@203) (expression float + (expression float + (swiz x (var_ref floor_retval@201) )(expression float * (swiz y (var_ref floor_retval@201) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@201) )) ) ) (assign (x) (var_ref f) (expression float + (var_ref f) (expression float * (constant float (0x1p-3)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@203) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@203) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@200) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@203) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@203) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@200) )) (swiz y (var_ref f@200) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@203) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@203) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@200) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@203) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@203) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@200) )) (swiz y (var_ref f@200) )) (swiz z (var_ref f@200) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@204) (assign (xyz) (var_ref assignment_tmp@204) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@199) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@199) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@199) )) ) (constant float (2.010000)) ) ) (declare () vec3 f@205) (declare (temporary ) vec3 floor_retval@206) (assign (xyz) (var_ref floor_retval@206) (expression vec3 floor (var_ref assignment_tmp@204) ) ) (declare (temporary ) vec3 fract_retval@207) (assign (xyz) (var_ref fract_retval@207) (expression vec3 fract (var_ref assignment_tmp@204) ) ) (assign (xyz) (var_ref f@205) (expression vec3 * (expression vec3 * (var_ref fract_retval@207) (var_ref fract_retval@207) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@207) ) ) ) ) ) (declare (temporary ) float assignment_tmp@208) (assign (x) (var_ref assignment_tmp@208) (expression float + (expression float + (swiz x (var_ref floor_retval@206) )(expression float * (swiz y (var_ref floor_retval@206) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@206) )) ) ) (assign (x) (var_ref f) (expression float + (var_ref f) (expression float * (constant float (0x1p-4)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@208) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@208) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@205) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@208) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@208) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@205) )) (swiz y (var_ref f@205) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@208) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@208) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@205) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@208) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@208) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@205) )) (swiz y (var_ref f@205) )) (swiz z (var_ref f@205) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@209) (assign (xyz) (var_ref assignment_tmp@209) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@204) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@204) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@204) )) ) (constant float (2.020000)) ) ) (assign (xyz) (var_ref p@191) (var_ref assignment_tmp@209) ) (declare () vec3 f@210) (declare (temporary ) vec3 floor_retval@211) (assign (xyz) (var_ref floor_retval@211) (expression vec3 floor (var_ref assignment_tmp@209) ) ) (declare (temporary ) vec3 fract_retval@212) (assign (xyz) (var_ref fract_retval@212) (expression vec3 fract (var_ref assignment_tmp@209) ) ) (assign (xyz) (var_ref f@210) (expression vec3 * (expression vec3 * (var_ref fract_retval@212) (var_ref fract_retval@212) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@212) ) ) ) ) ) (declare (temporary ) float assignment_tmp@213) (assign (x) (var_ref assignment_tmp@213) (expression float + (expression float + (swiz x (var_ref floor_retval@211) )(expression float * (swiz y (var_ref floor_retval@211) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@211) )) ) ) (declare (temporary ) float assignment_tmp@214) (assign (x) (var_ref assignment_tmp@214) (expression float + (var_ref f) (expression float * (constant float (0x1p-5)) (expression float abs (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@213) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@213) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@210) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@213) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@213) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@210) )) (swiz y (var_ref f@210) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@213) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@213) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@210) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@213) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@213) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@210) )) (swiz y (var_ref f@210) )) (swiz z (var_ref f@210) )) ) ) ) ) (assign (x) (var_ref f) (var_ref assignment_tmp@214) ) (assign (x) (var_ref fbm_retval) (expression float * (var_ref assignment_tmp@214) (constant float (1.066667)) ) ) (declare (temporary ) float assignment_tmp@215) (assign (x) (var_ref assignment_tmp@215) (expression float + (var_ref d) (expression float * (var_ref fbm_retval) (constant float (-0x1.333334p-2)) ) ) ) (assign (x) (var_ref d) (var_ref assignment_tmp@215) ) (if (expression bool < (var_ref assignment_tmp@215) (constant float (0x1.99999ap-5)) ) ( (assign (x) (var_ref hit) (constant bool (1)) ) (assign (x) (var_ref displace) (var_ref fbm_retval) ) ) ()) (assign (xyz) (var_ref pos) (expression vec3 + (var_ref pos) (expression vec3 * (expression vec3 * (var_ref rayDir) (var_ref assignment_tmp@215) ) (constant float (0x1.70a3d8p-1)) ) ) ) (assign (x) (var_ref i) (expression int + (var_ref i) (constant int (1)) ) ) )) (assign (xyzw) (var_ref col) (constant vec4 (0x1.99999ap-2 0x1.99999ap-2 0x1.99999ap-2 1.000000)) ) (if (var_ref hit) ( (declare () vec4 c) (declare (temporary ) float clamp_retval) (assign (x) (var_ref clamp_retval) (expression float min (expression float max (expression float + (expression float * (var_ref displace) (constant float (2.700000)) ) (constant float (-0x1p-1)) ) (constant float (0.0)) ) (constant float (0x1.fae148p-1)) ) ) (declare () vec4 c@216) (declare (temporary ) float fract_retval@217) (assign (x) (var_ref fract_retval@217) (expression float fract (expression float * (var_ref clamp_retval) (constant float (3.000000)) ) ) ) (if (expression bool < (var_ref clamp_retval) (constant float (0x1.55553ep-2)) ) ( (assign (xyzw) (var_ref c@216) (expression vec4 lrp (constant vec4 (3.000000 3.000000 1.000000 1.000000)) (constant vec4 (1.000000 0x1p-1 0.0 1.000000)) (var_ref fract_retval@217) ) ) ) ( (if (expression bool < (var_ref clamp_retval) (constant float (0x1.55553ep-1)) ) ( (assign (xyzw) (var_ref c@216) (expression vec4 lrp (constant vec4 (1.000000 0x1p-1 0.0 1.000000)) (constant vec4 (1.000000 0.0 0.0 1.000000)) (var_ref fract_retval@217) ) ) ) ( (assign (xyzw) (var_ref c@216) (expression vec4 lrp (constant vec4 (1.000000 0.0 0.0 1.000000)) (constant vec4 (0x1.99999ap-3 0x1.99999ap-3 0x1.99999ap-3 1.000000)) (var_ref fract_retval@217) ) ) )) )) (assign (w) (var_ref c) (swiz w (var_ref c@216) )) (declare () vec3 n) (declare () float d@218) (assign (x) (var_ref d@218) (expression float + (expression float sqrt (expression float dot (var_ref pos) (var_ref pos) ) ) (constant float (-0x1.e66666p-1)) ) ) (declare () vec3 p@219) (declare () vec3 cse) (assign (xyz) (var_ref cse) (expression vec3 * (constant vec3 (0x1.dc28f6p-1 0.0 0.0)) (var_ref time) ) ) (assign (xyz) (var_ref p@219) (expression vec3 + (expression vec3 * (var_ref pos) (constant float (8.000000)) ) (var_ref cse) ) ) (declare () float f@220) (declare () vec3 f@221) (declare (temporary ) vec3 floor_retval@222) (assign (xyz) (var_ref floor_retval@222) (expression vec3 floor (var_ref p@219) ) ) (declare (temporary ) vec3 fract_retval@223) (assign (xyz) (var_ref fract_retval@223) (expression vec3 fract (var_ref p@219) ) ) (assign (xyz) (var_ref f@221) (expression vec3 * (expression vec3 * (var_ref fract_retval@223) (var_ref fract_retval@223) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@223) ) ) ) ) ) (declare (temporary ) float assignment_tmp@224) (assign (x) (var_ref assignment_tmp@224) (expression float + (expression float + (swiz x (var_ref floor_retval@222) )(expression float * (swiz y (var_ref floor_retval@222) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@222) )) ) ) (assign (x) (var_ref f@220) (expression float * (constant float (0x1p-1)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@224) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@224) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@221) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@224) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@224) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@221) )) (swiz y (var_ref f@221) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@224) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@224) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@221) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@224) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@224) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@221) )) (swiz y (var_ref f@221) )) (swiz z (var_ref f@221) )) ) ) (declare (temporary ) vec3 assignment_tmp@225) (assign (xyz) (var_ref assignment_tmp@225) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref p@219) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref p@219) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref p@219) )) ) (constant float (2.020000)) ) ) (declare () vec3 f@226) (declare (temporary ) vec3 floor_retval@227) (assign (xyz) (var_ref floor_retval@227) (expression vec3 floor (var_ref assignment_tmp@225) ) ) (declare (temporary ) vec3 fract_retval@228) (assign (xyz) (var_ref fract_retval@228) (expression vec3 fract (var_ref assignment_tmp@225) ) ) (assign (xyz) (var_ref f@226) (expression vec3 * (expression vec3 * (var_ref fract_retval@228) (var_ref fract_retval@228) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@228) ) ) ) ) ) (declare (temporary ) float assignment_tmp@229) (assign (x) (var_ref assignment_tmp@229) (expression float + (expression float + (swiz x (var_ref floor_retval@227) )(expression float * (swiz y (var_ref floor_retval@227) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@227) )) ) ) (assign (x) (var_ref f@220) (expression float + (var_ref f@220) (expression float * (constant float (0x1p-2)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@229) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@229) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@226) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@229) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@229) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@226) )) (swiz y (var_ref f@226) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@229) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@229) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@226) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@229) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@229) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@226) )) (swiz y (var_ref f@226) )) (swiz z (var_ref f@226) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@230) (assign (xyz) (var_ref assignment_tmp@230) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@225) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@225) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@225) )) ) (constant float (2.030000)) ) ) (declare () vec3 f@231) (declare (temporary ) vec3 floor_retval@232) (assign (xyz) (var_ref floor_retval@232) (expression vec3 floor (var_ref assignment_tmp@230) ) ) (declare (temporary ) vec3 fract_retval@233) (assign (xyz) (var_ref fract_retval@233) (expression vec3 fract (var_ref assignment_tmp@230) ) ) (assign (xyz) (var_ref f@231) (expression vec3 * (expression vec3 * (var_ref fract_retval@233) (var_ref fract_retval@233) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@233) ) ) ) ) ) (declare (temporary ) float assignment_tmp@234) (assign (x) (var_ref assignment_tmp@234) (expression float + (expression float + (swiz x (var_ref floor_retval@232) )(expression float * (swiz y (var_ref floor_retval@232) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@232) )) ) ) (assign (x) (var_ref f@220) (expression float + (var_ref f@220) (expression float * (constant float (0x1p-3)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@234) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@234) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@231) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@234) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@234) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@231) )) (swiz y (var_ref f@231) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@234) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@234) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@231) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@234) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@234) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@231) )) (swiz y (var_ref f@231) )) (swiz z (var_ref f@231) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@235) (assign (xyz) (var_ref assignment_tmp@235) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@230) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@230) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@230) )) ) (constant float (2.010000)) ) ) (declare () vec3 f@236) (declare (temporary ) vec3 floor_retval@237) (assign (xyz) (var_ref floor_retval@237) (expression vec3 floor (var_ref assignment_tmp@235) ) ) (declare (temporary ) vec3 fract_retval@238) (assign (xyz) (var_ref fract_retval@238) (expression vec3 fract (var_ref assignment_tmp@235) ) ) (assign (xyz) (var_ref f@236) (expression vec3 * (expression vec3 * (var_ref fract_retval@238) (var_ref fract_retval@238) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@238) ) ) ) ) ) (declare (temporary ) float assignment_tmp@239) (assign (x) (var_ref assignment_tmp@239) (expression float + (expression float + (swiz x (var_ref floor_retval@237) )(expression float * (swiz y (var_ref floor_retval@237) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@237) )) ) ) (assign (x) (var_ref f@220) (expression float + (var_ref f@220) (expression float * (constant float (0x1p-4)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@239) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@239) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@236) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@239) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@239) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@236) )) (swiz y (var_ref f@236) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@239) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@239) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@236) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@239) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@239) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@236) )) (swiz y (var_ref f@236) )) (swiz z (var_ref f@236) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@240) (assign (xyz) (var_ref assignment_tmp@240) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@235) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@235) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@235) )) ) (constant float (2.020000)) ) ) (assign (xyz) (var_ref p@219) (var_ref assignment_tmp@240) ) (declare () vec3 f@241) (declare (temporary ) vec3 floor_retval@242) (assign (xyz) (var_ref floor_retval@242) (expression vec3 floor (var_ref assignment_tmp@240) ) ) (declare (temporary ) vec3 fract_retval@243) (assign (xyz) (var_ref fract_retval@243) (expression vec3 fract (var_ref assignment_tmp@240) ) ) (assign (xyz) (var_ref f@241) (expression vec3 * (expression vec3 * (var_ref fract_retval@243) (var_ref fract_retval@243) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@243) ) ) ) ) ) (declare (temporary ) float assignment_tmp@244) (assign (x) (var_ref assignment_tmp@244) (expression float + (expression float + (swiz x (var_ref floor_retval@242) )(expression float * (swiz y (var_ref floor_retval@242) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@242) )) ) ) (declare (temporary ) float assignment_tmp@245) (assign (x) (var_ref assignment_tmp@245) (expression float + (var_ref f@220) (expression float * (constant float (0x1p-5)) (expression float abs (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@244) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@244) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@241) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@244) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@244) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@241) )) (swiz y (var_ref f@241) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@244) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@244) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@241) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@244) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@244) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@241) )) (swiz y (var_ref f@241) )) (swiz z (var_ref f@241) )) ) ) ) ) (assign (x) (var_ref f@220) (var_ref assignment_tmp@245) ) (declare (temporary ) float assignment_tmp@246) (assign (x) (var_ref assignment_tmp@246) (expression float + (var_ref d@218) (expression float * (constant float (-0x1.47ae16p-2)) (var_ref assignment_tmp@245) ) ) ) (assign (x) (var_ref d@218) (var_ref assignment_tmp@246) ) (declare (temporary ) vec3 vec_ctor) (assign (x) (var_ref vec_ctor) (expression float + (swiz x (var_ref pos) )(constant float (0x1.0624dep-10)) ) ) (assign (y) (var_ref vec_ctor) (swiz y (var_ref pos) )) (assign (z) (var_ref vec_ctor) (swiz z (var_ref pos) )) (declare () float d@247) (assign (x) (var_ref d@247) (expression float + (expression float sqrt (expression float dot (var_ref vec_ctor) (var_ref vec_ctor) ) ) (constant float (-0x1.e66666p-1)) ) ) (declare () vec3 p@248) (assign (xyz) (var_ref p@248) (expression vec3 + (expression vec3 * (var_ref vec_ctor) (constant float (8.000000)) ) (var_ref cse) ) ) (declare () float f@249) (declare () vec3 f@250) (declare (temporary ) vec3 floor_retval@251) (assign (xyz) (var_ref floor_retval@251) (expression vec3 floor (var_ref p@248) ) ) (declare (temporary ) vec3 fract_retval@252) (assign (xyz) (var_ref fract_retval@252) (expression vec3 fract (var_ref p@248) ) ) (assign (xyz) (var_ref f@250) (expression vec3 * (expression vec3 * (var_ref fract_retval@252) (var_ref fract_retval@252) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@252) ) ) ) ) ) (declare (temporary ) float assignment_tmp@253) (assign (x) (var_ref assignment_tmp@253) (expression float + (expression float + (swiz x (var_ref floor_retval@251) )(expression float * (swiz y (var_ref floor_retval@251) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@251) )) ) ) (assign (x) (var_ref f@249) (expression float * (constant float (0x1p-1)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@253) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@253) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@250) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@253) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@253) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@250) )) (swiz y (var_ref f@250) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@253) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@253) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@250) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@253) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@253) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@250) )) (swiz y (var_ref f@250) )) (swiz z (var_ref f@250) )) ) ) (declare (temporary ) vec3 assignment_tmp@254) (assign (xyz) (var_ref assignment_tmp@254) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref p@248) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref p@248) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref p@248) )) ) (constant float (2.020000)) ) ) (declare () vec3 f@255) (declare (temporary ) vec3 floor_retval@256) (assign (xyz) (var_ref floor_retval@256) (expression vec3 floor (var_ref assignment_tmp@254) ) ) (declare (temporary ) vec3 fract_retval@257) (assign (xyz) (var_ref fract_retval@257) (expression vec3 fract (var_ref assignment_tmp@254) ) ) (assign (xyz) (var_ref f@255) (expression vec3 * (expression vec3 * (var_ref fract_retval@257) (var_ref fract_retval@257) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@257) ) ) ) ) ) (declare (temporary ) float assignment_tmp@258) (assign (x) (var_ref assignment_tmp@258) (expression float + (expression float + (swiz x (var_ref floor_retval@256) )(expression float * (swiz y (var_ref floor_retval@256) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@256) )) ) ) (assign (x) (var_ref f@249) (expression float + (var_ref f@249) (expression float * (constant float (0x1p-2)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@258) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@258) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@255) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@258) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@258) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@255) )) (swiz y (var_ref f@255) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@258) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@258) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@255) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@258) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@258) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@255) )) (swiz y (var_ref f@255) )) (swiz z (var_ref f@255) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@259) (assign (xyz) (var_ref assignment_tmp@259) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@254) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@254) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@254) )) ) (constant float (2.030000)) ) ) (declare () vec3 f@260) (declare (temporary ) vec3 floor_retval@261) (assign (xyz) (var_ref floor_retval@261) (expression vec3 floor (var_ref assignment_tmp@259) ) ) (declare (temporary ) vec3 fract_retval@262) (assign (xyz) (var_ref fract_retval@262) (expression vec3 fract (var_ref assignment_tmp@259) ) ) (assign (xyz) (var_ref f@260) (expression vec3 * (expression vec3 * (var_ref fract_retval@262) (var_ref fract_retval@262) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@262) ) ) ) ) ) (declare (temporary ) float assignment_tmp@263) (assign (x) (var_ref assignment_tmp@263) (expression float + (expression float + (swiz x (var_ref floor_retval@261) )(expression float * (swiz y (var_ref floor_retval@261) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@261) )) ) ) (assign (x) (var_ref f@249) (expression float + (var_ref f@249) (expression float * (constant float (0x1p-3)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@263) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@263) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@260) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@263) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@263) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@260) )) (swiz y (var_ref f@260) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@263) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@263) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@260) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@263) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@263) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@260) )) (swiz y (var_ref f@260) )) (swiz z (var_ref f@260) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@264) (assign (xyz) (var_ref assignment_tmp@264) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@259) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@259) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@259) )) ) (constant float (2.010000)) ) ) (declare () vec3 f@265) (declare (temporary ) vec3 floor_retval@266) (assign (xyz) (var_ref floor_retval@266) (expression vec3 floor (var_ref assignment_tmp@264) ) ) (declare (temporary ) vec3 fract_retval@267) (assign (xyz) (var_ref fract_retval@267) (expression vec3 fract (var_ref assignment_tmp@264) ) ) (assign (xyz) (var_ref f@265) (expression vec3 * (expression vec3 * (var_ref fract_retval@267) (var_ref fract_retval@267) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@267) ) ) ) ) ) (declare (temporary ) float assignment_tmp@268) (assign (x) (var_ref assignment_tmp@268) (expression float + (expression float + (swiz x (var_ref floor_retval@266) )(expression float * (swiz y (var_ref floor_retval@266) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@266) )) ) ) (assign (x) (var_ref f@249) (expression float + (var_ref f@249) (expression float * (constant float (0x1p-4)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@268) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@268) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@265) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@268) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@268) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@265) )) (swiz y (var_ref f@265) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@268) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@268) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@265) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@268) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@268) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@265) )) (swiz y (var_ref f@265) )) (swiz z (var_ref f@265) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@269) (assign (xyz) (var_ref assignment_tmp@269) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@264) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@264) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@264) )) ) (constant float (2.020000)) ) ) (assign (xyz) (var_ref p@248) (var_ref assignment_tmp@269) ) (declare () vec3 f@270) (declare (temporary ) vec3 floor_retval@271) (assign (xyz) (var_ref floor_retval@271) (expression vec3 floor (var_ref assignment_tmp@269) ) ) (declare (temporary ) vec3 fract_retval@272) (assign (xyz) (var_ref fract_retval@272) (expression vec3 fract (var_ref assignment_tmp@269) ) ) (assign (xyz) (var_ref f@270) (expression vec3 * (expression vec3 * (var_ref fract_retval@272) (var_ref fract_retval@272) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@272) ) ) ) ) ) (declare (temporary ) float assignment_tmp@273) (assign (x) (var_ref assignment_tmp@273) (expression float + (expression float + (swiz x (var_ref floor_retval@271) )(expression float * (swiz y (var_ref floor_retval@271) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@271) )) ) ) (declare (temporary ) float assignment_tmp@274) (assign (x) (var_ref assignment_tmp@274) (expression float + (var_ref f@249) (expression float * (constant float (0x1p-5)) (expression float abs (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@273) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@273) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@270) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@273) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@273) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@270) )) (swiz y (var_ref f@270) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@273) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@273) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@270) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@273) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@273) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@270) )) (swiz y (var_ref f@270) )) (swiz z (var_ref f@270) )) ) ) ) ) (assign (x) (var_ref f@249) (var_ref assignment_tmp@274) ) (declare (temporary ) float assignment_tmp@275) (assign (x) (var_ref assignment_tmp@275) (expression float + (var_ref d@247) (expression float * (constant float (-0x1.47ae16p-2)) (var_ref assignment_tmp@274) ) ) ) (assign (x) (var_ref d@247) (var_ref assignment_tmp@275) ) (assign (x) (var_ref n) (expression float + (var_ref assignment_tmp@275) (expression float neg (var_ref assignment_tmp@246) ) ) ) (declare (temporary ) vec3 vec_ctor@276) (assign (x) (var_ref vec_ctor@276) (swiz x (var_ref pos) )) (assign (y) (var_ref vec_ctor@276) (expression float + (swiz y (var_ref pos) )(constant float (0x1.0624dep-10)) ) ) (assign (z) (var_ref vec_ctor@276) (swiz z (var_ref pos) )) (declare () float d@277) (assign (x) (var_ref d@277) (expression float + (expression float sqrt (expression float dot (var_ref vec_ctor@276) (var_ref vec_ctor@276) ) ) (constant float (-0x1.e66666p-1)) ) ) (declare () vec3 p@278) (assign (xyz) (var_ref p@278) (expression vec3 + (expression vec3 * (var_ref vec_ctor@276) (constant float (8.000000)) ) (var_ref cse) ) ) (declare () float f@279) (declare () vec3 f@280) (declare (temporary ) vec3 floor_retval@281) (assign (xyz) (var_ref floor_retval@281) (expression vec3 floor (var_ref p@278) ) ) (declare (temporary ) vec3 fract_retval@282) (assign (xyz) (var_ref fract_retval@282) (expression vec3 fract (var_ref p@278) ) ) (assign (xyz) (var_ref f@280) (expression vec3 * (expression vec3 * (var_ref fract_retval@282) (var_ref fract_retval@282) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@282) ) ) ) ) ) (declare (temporary ) float assignment_tmp@283) (assign (x) (var_ref assignment_tmp@283) (expression float + (expression float + (swiz x (var_ref floor_retval@281) )(expression float * (swiz y (var_ref floor_retval@281) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@281) )) ) ) (assign (x) (var_ref f@279) (expression float * (constant float (0x1p-1)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@283) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@283) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@280) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@283) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@283) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@280) )) (swiz y (var_ref f@280) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@283) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@283) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@280) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@283) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@283) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@280) )) (swiz y (var_ref f@280) )) (swiz z (var_ref f@280) )) ) ) (declare (temporary ) vec3 assignment_tmp@284) (assign (xyz) (var_ref assignment_tmp@284) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref p@278) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref p@278) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref p@278) )) ) (constant float (2.020000)) ) ) (declare () vec3 f@285) (declare (temporary ) vec3 floor_retval@286) (assign (xyz) (var_ref floor_retval@286) (expression vec3 floor (var_ref assignment_tmp@284) ) ) (declare (temporary ) vec3 fract_retval@287) (assign (xyz) (var_ref fract_retval@287) (expression vec3 fract (var_ref assignment_tmp@284) ) ) (assign (xyz) (var_ref f@285) (expression vec3 * (expression vec3 * (var_ref fract_retval@287) (var_ref fract_retval@287) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@287) ) ) ) ) ) (declare (temporary ) float assignment_tmp@288) (assign (x) (var_ref assignment_tmp@288) (expression float + (expression float + (swiz x (var_ref floor_retval@286) )(expression float * (swiz y (var_ref floor_retval@286) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@286) )) ) ) (assign (x) (var_ref f@279) (expression float + (var_ref f@279) (expression float * (constant float (0x1p-2)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@288) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@288) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@285) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@288) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@288) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@285) )) (swiz y (var_ref f@285) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@288) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@288) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@285) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@288) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@288) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@285) )) (swiz y (var_ref f@285) )) (swiz z (var_ref f@285) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@289) (assign (xyz) (var_ref assignment_tmp@289) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@284) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@284) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@284) )) ) (constant float (2.030000)) ) ) (declare () vec3 f@290) (declare (temporary ) vec3 floor_retval@291) (assign (xyz) (var_ref floor_retval@291) (expression vec3 floor (var_ref assignment_tmp@289) ) ) (declare (temporary ) vec3 fract_retval@292) (assign (xyz) (var_ref fract_retval@292) (expression vec3 fract (var_ref assignment_tmp@289) ) ) (assign (xyz) (var_ref f@290) (expression vec3 * (expression vec3 * (var_ref fract_retval@292) (var_ref fract_retval@292) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@292) ) ) ) ) ) (declare (temporary ) float assignment_tmp@293) (assign (x) (var_ref assignment_tmp@293) (expression float + (expression float + (swiz x (var_ref floor_retval@291) )(expression float * (swiz y (var_ref floor_retval@291) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@291) )) ) ) (assign (x) (var_ref f@279) (expression float + (var_ref f@279) (expression float * (constant float (0x1p-3)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@293) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@293) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@290) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@293) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@293) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@290) )) (swiz y (var_ref f@290) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@293) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@293) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@290) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@293) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@293) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@290) )) (swiz y (var_ref f@290) )) (swiz z (var_ref f@290) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@294) (assign (xyz) (var_ref assignment_tmp@294) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@289) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@289) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@289) )) ) (constant float (2.010000)) ) ) (declare () vec3 f@295) (declare (temporary ) vec3 floor_retval@296) (assign (xyz) (var_ref floor_retval@296) (expression vec3 floor (var_ref assignment_tmp@294) ) ) (declare (temporary ) vec3 fract_retval@297) (assign (xyz) (var_ref fract_retval@297) (expression vec3 fract (var_ref assignment_tmp@294) ) ) (assign (xyz) (var_ref f@295) (expression vec3 * (expression vec3 * (var_ref fract_retval@297) (var_ref fract_retval@297) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@297) ) ) ) ) ) (declare (temporary ) float assignment_tmp@298) (assign (x) (var_ref assignment_tmp@298) (expression float + (expression float + (swiz x (var_ref floor_retval@296) )(expression float * (swiz y (var_ref floor_retval@296) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@296) )) ) ) (assign (x) (var_ref f@279) (expression float + (var_ref f@279) (expression float * (constant float (0x1p-4)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@298) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@298) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@295) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@298) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@298) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@295) )) (swiz y (var_ref f@295) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@298) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@298) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@295) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@298) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@298) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@295) )) (swiz y (var_ref f@295) )) (swiz z (var_ref f@295) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@299) (assign (xyz) (var_ref assignment_tmp@299) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@294) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@294) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@294) )) ) (constant float (2.020000)) ) ) (assign (xyz) (var_ref p@278) (var_ref assignment_tmp@299) ) (declare () vec3 f@300) (declare (temporary ) vec3 floor_retval@301) (assign (xyz) (var_ref floor_retval@301) (expression vec3 floor (var_ref assignment_tmp@299) ) ) (declare (temporary ) vec3 fract_retval@302) (assign (xyz) (var_ref fract_retval@302) (expression vec3 fract (var_ref assignment_tmp@299) ) ) (assign (xyz) (var_ref f@300) (expression vec3 * (expression vec3 * (var_ref fract_retval@302) (var_ref fract_retval@302) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@302) ) ) ) ) ) (declare (temporary ) float assignment_tmp@303) (assign (x) (var_ref assignment_tmp@303) (expression float + (expression float + (swiz x (var_ref floor_retval@301) )(expression float * (swiz y (var_ref floor_retval@301) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@301) )) ) ) (declare (temporary ) float assignment_tmp@304) (assign (x) (var_ref assignment_tmp@304) (expression float + (var_ref f@279) (expression float * (constant float (0x1p-5)) (expression float abs (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@303) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@303) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@300) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@303) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@303) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@300) )) (swiz y (var_ref f@300) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@303) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@303) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@300) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@303) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@303) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@300) )) (swiz y (var_ref f@300) )) (swiz z (var_ref f@300) )) ) ) ) ) (assign (x) (var_ref f@279) (var_ref assignment_tmp@304) ) (declare (temporary ) float assignment_tmp@305) (assign (x) (var_ref assignment_tmp@305) (expression float + (var_ref d@277) (expression float * (constant float (-0x1.47ae16p-2)) (var_ref assignment_tmp@304) ) ) ) (assign (x) (var_ref d@277) (var_ref assignment_tmp@305) ) (assign (y) (var_ref n) (expression float + (var_ref assignment_tmp@305) (expression float neg (var_ref assignment_tmp@246) ) ) ) (declare (temporary ) vec3 vec_ctor@306) (assign (x) (var_ref vec_ctor@306) (swiz x (var_ref pos) )) (assign (y) (var_ref vec_ctor@306) (swiz y (var_ref pos) )) (assign (z) (var_ref vec_ctor@306) (expression float + (swiz z (var_ref pos) )(constant float (0x1.0624dep-10)) ) ) (declare () float d@307) (assign (x) (var_ref d@307) (expression float + (expression float sqrt (expression float dot (var_ref vec_ctor@306) (var_ref vec_ctor@306) ) ) (constant float (-0x1.e66666p-1)) ) ) (declare () vec3 p@308) (assign (xyz) (var_ref p@308) (expression vec3 + (expression vec3 * (var_ref vec_ctor@306) (constant float (8.000000)) ) (var_ref cse) ) ) (declare () float f@309) (declare () vec3 f@310) (declare (temporary ) vec3 floor_retval@311) (assign (xyz) (var_ref floor_retval@311) (expression vec3 floor (var_ref p@308) ) ) (declare (temporary ) vec3 fract_retval@312) (assign (xyz) (var_ref fract_retval@312) (expression vec3 fract (var_ref p@308) ) ) (assign (xyz) (var_ref f@310) (expression vec3 * (expression vec3 * (var_ref fract_retval@312) (var_ref fract_retval@312) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@312) ) ) ) ) ) (declare (temporary ) float assignment_tmp@313) (assign (x) (var_ref assignment_tmp@313) (expression float + (expression float + (swiz x (var_ref floor_retval@311) )(expression float * (swiz y (var_ref floor_retval@311) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@311) )) ) ) (assign (x) (var_ref f@309) (expression float * (constant float (0x1p-1)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@313) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@313) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@310) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@313) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@313) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@310) )) (swiz y (var_ref f@310) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@313) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@313) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@310) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@313) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@313) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@310) )) (swiz y (var_ref f@310) )) (swiz z (var_ref f@310) )) ) ) (declare (temporary ) vec3 assignment_tmp@314) (assign (xyz) (var_ref assignment_tmp@314) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref p@308) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref p@308) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref p@308) )) ) (constant float (2.020000)) ) ) (declare () vec3 f@315) (declare (temporary ) vec3 floor_retval@316) (assign (xyz) (var_ref floor_retval@316) (expression vec3 floor (var_ref assignment_tmp@314) ) ) (declare (temporary ) vec3 fract_retval@317) (assign (xyz) (var_ref fract_retval@317) (expression vec3 fract (var_ref assignment_tmp@314) ) ) (assign (xyz) (var_ref f@315) (expression vec3 * (expression vec3 * (var_ref fract_retval@317) (var_ref fract_retval@317) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@317) ) ) ) ) ) (declare (temporary ) float assignment_tmp@318) (assign (x) (var_ref assignment_tmp@318) (expression float + (expression float + (swiz x (var_ref floor_retval@316) )(expression float * (swiz y (var_ref floor_retval@316) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@316) )) ) ) (assign (x) (var_ref f@309) (expression float + (var_ref f@309) (expression float * (constant float (0x1p-2)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@318) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@318) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@315) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@318) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@318) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@315) )) (swiz y (var_ref f@315) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@318) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@318) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@315) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@318) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@318) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@315) )) (swiz y (var_ref f@315) )) (swiz z (var_ref f@315) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@319) (assign (xyz) (var_ref assignment_tmp@319) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@314) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@314) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@314) )) ) (constant float (2.030000)) ) ) (declare () vec3 f@320) (declare (temporary ) vec3 floor_retval@321) (assign (xyz) (var_ref floor_retval@321) (expression vec3 floor (var_ref assignment_tmp@319) ) ) (declare (temporary ) vec3 fract_retval@322) (assign (xyz) (var_ref fract_retval@322) (expression vec3 fract (var_ref assignment_tmp@319) ) ) (assign (xyz) (var_ref f@320) (expression vec3 * (expression vec3 * (var_ref fract_retval@322) (var_ref fract_retval@322) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@322) ) ) ) ) ) (declare (temporary ) float assignment_tmp@323) (assign (x) (var_ref assignment_tmp@323) (expression float + (expression float + (swiz x (var_ref floor_retval@321) )(expression float * (swiz y (var_ref floor_retval@321) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@321) )) ) ) (assign (x) (var_ref f@309) (expression float + (var_ref f@309) (expression float * (constant float (0x1p-3)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@323) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@323) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@320) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@323) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@323) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@320) )) (swiz y (var_ref f@320) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@323) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@323) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@320) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@323) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@323) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@320) )) (swiz y (var_ref f@320) )) (swiz z (var_ref f@320) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@324) (assign (xyz) (var_ref assignment_tmp@324) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@319) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@319) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@319) )) ) (constant float (2.010000)) ) ) (declare () vec3 f@325) (declare (temporary ) vec3 floor_retval@326) (assign (xyz) (var_ref floor_retval@326) (expression vec3 floor (var_ref assignment_tmp@324) ) ) (declare (temporary ) vec3 fract_retval@327) (assign (xyz) (var_ref fract_retval@327) (expression vec3 fract (var_ref assignment_tmp@324) ) ) (assign (xyz) (var_ref f@325) (expression vec3 * (expression vec3 * (var_ref fract_retval@327) (var_ref fract_retval@327) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@327) ) ) ) ) ) (declare (temporary ) float assignment_tmp@328) (assign (x) (var_ref assignment_tmp@328) (expression float + (expression float + (swiz x (var_ref floor_retval@326) )(expression float * (swiz y (var_ref floor_retval@326) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@326) )) ) ) (assign (x) (var_ref f@309) (expression float + (var_ref f@309) (expression float * (constant float (0x1p-4)) (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@328) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@328) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@325) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@328) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@328) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@325) )) (swiz y (var_ref f@325) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@328) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@328) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@325) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@328) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@328) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@325) )) (swiz y (var_ref f@325) )) (swiz z (var_ref f@325) )) ) ) ) (declare (temporary ) vec3 assignment_tmp@329) (assign (xyz) (var_ref assignment_tmp@329) (expression vec3 * (expression vec3 + (expression vec3 + (expression vec3 * (constant vec3 (0.0 0x1.99999ap-1 0x1.333334p-1)) (swiz x (var_ref assignment_tmp@324) )) (expression vec3 * (constant vec3 (-0x1.99999ap-1 0x1.70a3d8p-2 -0x1.eb851ep-2)) (swiz y (var_ref assignment_tmp@324) )) ) (expression vec3 * (constant vec3 (-0x1.333334p-1 -0x1.eb851ep-2 0x1.47ae14p-1)) (swiz z (var_ref assignment_tmp@324) )) ) (constant float (2.020000)) ) ) (assign (xyz) (var_ref p@308) (var_ref assignment_tmp@329) ) (declare () vec3 f@330) (declare (temporary ) vec3 floor_retval@331) (assign (xyz) (var_ref floor_retval@331) (expression vec3 floor (var_ref assignment_tmp@329) ) ) (declare (temporary ) vec3 fract_retval@332) (assign (xyz) (var_ref fract_retval@332) (expression vec3 fract (var_ref assignment_tmp@329) ) ) (assign (xyz) (var_ref f@330) (expression vec3 * (expression vec3 * (var_ref fract_retval@332) (var_ref fract_retval@332) ) (expression vec3 + (constant float (3.000000)) (expression vec3 neg (expression vec3 * (constant float (2.000000)) (var_ref fract_retval@332) ) ) ) ) ) (declare (temporary ) float assignment_tmp@333) (assign (x) (var_ref assignment_tmp@333) (expression float + (expression float + (swiz x (var_ref floor_retval@331) )(expression float * (swiz y (var_ref floor_retval@331) )(constant float (57.000000)) ) ) (expression float * (constant float (113.000000)) (swiz z (var_ref floor_retval@331) )) ) ) (declare (temporary ) float assignment_tmp@334) (assign (x) (var_ref assignment_tmp@334) (expression float + (var_ref f@309) (expression float * (constant float (0x1p-5)) (expression float abs (expression float lrp (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (var_ref assignment_tmp@333) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@333) (constant float (1.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@330) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@333) (constant float (57.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@333) (constant float (58.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@330) )) (swiz y (var_ref f@330) )) (expression float lrp (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@333) (constant float (113.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@333) (constant float (114.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@330) )) (expression float lrp (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@333) (constant float (170.000000)) ) ) (constant float (43758.546875)) ) ) (expression float fract (expression float * (expression float sin (expression float + (var_ref assignment_tmp@333) (constant float (171.000000)) ) ) (constant float (43758.546875)) ) ) (swiz x (var_ref f@330) )) (swiz y (var_ref f@330) )) (swiz z (var_ref f@330) )) ) ) ) ) (assign (x) (var_ref f@309) (var_ref assignment_tmp@334) ) (declare (temporary ) float assignment_tmp@335) (assign (x) (var_ref assignment_tmp@335) (expression float + (var_ref d@307) (expression float * (constant float (-0x1.47ae16p-2)) (var_ref assignment_tmp@334) ) ) ) (assign (x) (var_ref d@307) (var_ref assignment_tmp@335) ) (assign (z) (var_ref n) (expression float + (var_ref assignment_tmp@335) (expression float neg (var_ref assignment_tmp@246) ) ) ) (assign (xyz) (var_ref c) (expression vec3 lrp (swiz xyz (var_ref c@216) )(expression vec3 * (swiz xyz (var_ref c@216) )(expression float + (expression float * (swiz z (expression vec3 * (var_ref n) (expression float rsq (expression float dot (var_ref n) (var_ref n) ) ) ) )(constant float (0x1.666666p-2)) ) (constant float (0x1.b33334p-1)) ) ) (expression float min (expression float max (expression float * (expression float + (var_ref clamp_retval) (constant float (-0x1p-1)) ) (constant float (2.000000)) ) (constant float (0.0)) ) (constant float (1.000000)) ) ) ) (assign (xyzw) (var_ref col) (var_ref c) ) ) ()) (assign (xyzw) (var_ref gl_FragColor) (var_ref col) ) (assign (xyzw) (var_ref gl_FragColor@336) (var_ref gl_FragColor) ) )) ) ) GLSL IR for linked fragment program 0: ( (declare (shader_in ) vec4 gl_Color) (declare (shader_out ) vec4 gl_FragColor) (declare (temporary ) vec4 gl_FragColor) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref gl_FragColor) (var_ref gl_Color) ) (assign (xyzw) (var_ref gl_FragColor@337) (var_ref gl_FragColor) ) )) ) ) GLSL source for vertex shader 11: #version 120 uniform mat4 gxl3d_ModelViewProjectionMatrix; void main() { gl_Position = gxl3d_ModelViewProjectionMatrix * gl_Vertex; gl_TexCoord[0] = gl_MultiTexCoord0; } GLSL IR for shader 11: ( (declare (shader_in ) float gl_FogCoord) (declare (shader_in ) vec4 gl_MultiTexCoord7) (declare (shader_in ) vec4 gl_MultiTexCoord6) (declare (shader_in ) vec4 gl_MultiTexCoord5) (declare (shader_in ) vec4 gl_MultiTexCoord4) (declare (shader_in ) vec4 gl_MultiTexCoord3) (declare (shader_in ) vec4 gl_MultiTexCoord2) (declare (shader_in ) vec4 gl_MultiTexCoord1) (declare (shader_in ) vec4 gl_MultiTexCoord0) (declare (shader_in ) vec4 gl_SecondaryColor) (declare (shader_in ) vec4 gl_Color) (declare (shader_in ) vec3 gl_Normal) (declare (shader_in ) vec4 gl_Vertex) (declare (shader_out ) vec4 gl_BackSecondaryColor) (declare (shader_out ) vec4 gl_FrontSecondaryColor) (declare (shader_out ) vec4 gl_BackColor) (declare (shader_out ) vec4 gl_FrontColor) (declare (shader_out ) vec4 gl_ClipVertex) (declare (shader_out ) float gl_FogFragCoord) (declare (shader_out ) (array vec4 0) gl_TexCoord) (declare (shader_out ) float gl_PointSize) (declare (shader_out ) vec4 gl_Position) (declare (uniform ) gl_FogParameters gl_Fog) (declare (uniform ) (array vec4 8) gl_ObjectPlaneQ) (declare (uniform ) (array vec4 8) gl_ObjectPlaneR) (declare (uniform ) (array vec4 8) gl_ObjectPlaneT) (declare (uniform ) (array vec4 8) gl_ObjectPlaneS) (declare (uniform ) (array vec4 8) gl_EyePlaneQ) (declare (uniform ) (array vec4 8) gl_EyePlaneR) (declare (uniform ) (array vec4 8) gl_EyePlaneT) (declare (uniform ) (array vec4 8) gl_EyePlaneS) (declare (uniform ) (array vec4 8) gl_TextureEnvColor) (declare (uniform ) (array gl_LightProducts 8) gl_BackLightProduct) (declare (uniform ) (array gl_LightProducts 8) gl_FrontLightProduct) (declare (uniform ) gl_LightModelProducts gl_BackLightModelProduct) (declare (uniform ) gl_LightModelProducts gl_FrontLightModelProduct) (declare (uniform ) (array gl_LightSourceParameters 8) gl_LightSource) (declare (uniform ) gl_MaterialParameters gl_BackMaterial) (declare (uniform ) gl_MaterialParameters gl_FrontMaterial) (declare (uniform ) gl_PointParameters gl_Point) (declare (uniform ) (array vec4 8) gl_ClipPlane) (declare (uniform ) (array mat4 8) gl_TextureMatrixInverseTranspose) (declare (uniform ) (array mat4 8) gl_TextureMatrixTranspose) (declare (uniform ) (array mat4 8) gl_TextureMatrixInverse) (declare (uniform ) (array mat4 8) gl_TextureMatrix) (declare (uniform ) vec4 gl_FogParamsOptimizedMESA) (declare (uniform ) vec2 gl_BumpRotMatrix1MESA) (declare (uniform ) vec2 gl_BumpRotMatrix0MESA) (declare (uniform ) gl_LightModelParameters gl_LightModel) (declare (uniform ) float gl_NormalScale) (declare (uniform ) mat4 gl_ModelViewProjectionMatrixInverseTranspose) (declare (uniform ) mat4 gl_ProjectionMatrixInverseTranspose) (declare (uniform ) mat4 gl_ModelViewMatrixInverseTranspose) (declare (uniform ) mat4 gl_ModelViewProjectionMatrixTranspose) (declare (uniform ) mat4 gl_ProjectionMatrixTranspose) (declare (uniform ) mat4 gl_ModelViewMatrixTranspose) (declare (uniform ) mat4 gl_ModelViewProjectionMatrixInverse) (declare (uniform ) mat4 gl_ProjectionMatrixInverse) (declare (uniform ) mat4 gl_ModelViewMatrixInverse) (declare (uniform ) mat3 gl_NormalMatrix) (declare (uniform ) mat4 gl_ModelViewProjectionMatrix) (declare (uniform ) mat4 gl_ProjectionMatrix) (declare (uniform ) mat4 gl_ModelViewMatrix) (declare (uniform ) (array vec4 55) gl_CurrentAttribFragMESA) (declare (uniform ) (array vec4 33) gl_CurrentAttribVertMESA) (declare (uniform ) gl_DepthRangeParameters gl_DepthRange) (declare (uniform ) int gl_NumSamples) (declare () int gl_MaxTextureCoords) (declare () int gl_MaxTextureUnits) (declare () int gl_MaxClipPlanes) (declare () int gl_MaxLights) (declare () int gl_MaxFragmentUniformComponents) (declare () int gl_MaxVaryingFloats) (declare () int gl_MaxVertexUniformComponents) (declare () int gl_MaxDrawBuffers) (declare () int gl_MaxTextureImageUnits) (declare () int gl_MaxCombinedTextureImageUnits) (declare () int gl_MaxVertexTextureImageUnits) (declare () int gl_MaxVertexAttribs) (declare (uniform ) mat4 gxl3d_ModelViewProjectionMatrix) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref gl_Position) (expression vec4 * (var_ref gxl3d_ModelViewProjectionMatrix) (var_ref gl_Vertex) ) ) (assign (xyzw) (array_ref (var_ref gl_TexCoord) (constant int (0)) ) (var_ref gl_MultiTexCoord0) ) )) ) ) GLSL source for fragment shader 12: #version 120 uniform sampler2D tex0; void main() { gl_FragColor = texture2D(tex0, gl_TexCoord[0].xy); } GLSL IR for shader 12: ( (declare (shader_out ) float gl_FragDepth) (declare (shader_out ) (array vec4 8) gl_FragData) (declare (shader_out ) vec4 gl_FragColor) (declare (shader_in ) vec2 gl_PointCoord) (declare (shader_in ) bool gl_FrontFacing) (declare (shader_in ) vec4 gl_FragCoord) (declare (shader_in ) vec4 gl_SecondaryColor) (declare (shader_in ) vec4 gl_Color) (declare (shader_in ) float gl_FogFragCoord) (declare (shader_in ) (array vec4 0) gl_TexCoord) (declare (uniform ) gl_FogParameters gl_Fog) (declare (uniform ) (array vec4 8) gl_ObjectPlaneQ) (declare (uniform ) (array vec4 8) gl_ObjectPlaneR) (declare (uniform ) (array vec4 8) gl_ObjectPlaneT) (declare (uniform ) (array vec4 8) gl_ObjectPlaneS) (declare (uniform ) (array vec4 8) gl_EyePlaneQ) (declare (uniform ) (array vec4 8) gl_EyePlaneR) (declare (uniform ) (array vec4 8) gl_EyePlaneT) (declare (uniform ) (array vec4 8) gl_EyePlaneS) (declare (uniform ) (array vec4 8) gl_TextureEnvColor) (declare (uniform ) (array gl_LightProducts 8) gl_BackLightProduct) (declare (uniform ) (array gl_LightProducts 8) gl_FrontLightProduct) (declare (uniform ) gl_LightModelProducts gl_BackLightModelProduct) (declare (uniform ) gl_LightModelProducts gl_FrontLightModelProduct) (declare (uniform ) (array gl_LightSourceParameters 8) gl_LightSource) (declare (uniform ) gl_MaterialParameters gl_BackMaterial) (declare (uniform ) gl_MaterialParameters gl_FrontMaterial) (declare (uniform ) gl_PointParameters gl_Point) (declare (uniform ) (array vec4 8) gl_ClipPlane) (declare (uniform ) (array mat4 8) gl_TextureMatrixInverseTranspose) (declare (uniform ) (array mat4 8) gl_TextureMatrixTranspose) (declare (uniform ) (array mat4 8) gl_TextureMatrixInverse) (declare (uniform ) (array mat4 8) gl_TextureMatrix) (declare (uniform ) vec4 gl_FogParamsOptimizedMESA) (declare (uniform ) vec2 gl_BumpRotMatrix1MESA) (declare (uniform ) vec2 gl_BumpRotMatrix0MESA) (declare (uniform ) gl_LightModelParameters gl_LightModel) (declare (uniform ) float gl_NormalScale) (declare (uniform ) mat4 gl_ModelViewProjectionMatrixInverseTranspose) (declare (uniform ) mat4 gl_ProjectionMatrixInverseTranspose) (declare (uniform ) mat4 gl_ModelViewMatrixInverseTranspose) (declare (uniform ) mat4 gl_ModelViewProjectionMatrixTranspose) (declare (uniform ) mat4 gl_ProjectionMatrixTranspose) (declare (uniform ) mat4 gl_ModelViewMatrixTranspose) (declare (uniform ) mat4 gl_ModelViewProjectionMatrixInverse) (declare (uniform ) mat4 gl_ProjectionMatrixInverse) (declare (uniform ) mat4 gl_ModelViewMatrixInverse) (declare (uniform ) mat3 gl_NormalMatrix) (declare (uniform ) mat4 gl_ModelViewProjectionMatrix) (declare (uniform ) mat4 gl_ProjectionMatrix) (declare (uniform ) mat4 gl_ModelViewMatrix) (declare (uniform ) (array vec4 55) gl_CurrentAttribFragMESA) (declare (uniform ) (array vec4 33) gl_CurrentAttribVertMESA) (declare (uniform ) gl_DepthRangeParameters gl_DepthRange) (declare (uniform ) int gl_NumSamples) (declare () int gl_MaxTextureCoords) (declare () int gl_MaxTextureUnits) (declare () int gl_MaxClipPlanes) (declare () int gl_MaxLights) (declare () int gl_MaxFragmentUniformComponents) (declare () int gl_MaxVaryingFloats) (declare () int gl_MaxVertexUniformComponents) (declare () int gl_MaxDrawBuffers) (declare () int gl_MaxTextureImageUnits) (declare () int gl_MaxCombinedTextureImageUnits) (declare () int gl_MaxVertexTextureImageUnits) (declare () int gl_MaxVertexAttribs) (declare (uniform ) sampler2D tex0) (function main (signature void (parameters ) ( (declare (temporary ) vec4 texture2D_retval) (call texture2D (var_ref texture2D_retval) ((var_ref tex0) (swiz xy (array_ref (var_ref gl_TexCoord) (constant int (0)) ) ))) (assign (xyzw) (var_ref gl_FragColor) (var_ref texture2D_retval) ) )) ) (function texture2D (signature vec4 (parameters (declare (in ) sampler2D sampler) (declare (in ) vec2 P) ) ( )) ) ) GLSL IR for linked vertex program 10: ( (declare (shader_out ) vec4 gl_out_TexCoord0) (declare (temporary ) vec4 gl_out_TexCoord0) (declare (shader_in ) vec4 gl_MultiTexCoord0) (declare (shader_in ) vec4 gl_Vertex) (declare (shader_out ) vec4 gl_Position) (declare (temporary ) vec4 gl_Position) (declare (uniform ) mat4 gxl3d_ModelViewProjectionMatrix) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref gl_Position) (expression vec4 + (expression vec4 + (expression vec4 + (expression vec4 * (array_ref (var_ref gxl3d_ModelViewProjectionMatrix) (constant int (0)) ) (swiz x (var_ref gl_Vertex) )) (expression vec4 * (array_ref (var_ref gxl3d_ModelViewProjectionMatrix) (constant int (1)) ) (swiz y (var_ref gl_Vertex) )) ) (expression vec4 * (array_ref (var_ref gxl3d_ModelViewProjectionMatrix) (constant int (2)) ) (swiz z (var_ref gl_Vertex) )) ) (expression vec4 * (array_ref (var_ref gxl3d_ModelViewProjectionMatrix) (constant int (3)) ) (swiz w (var_ref gl_Vertex) )) ) ) (assign (xyzw) (var_ref gl_out_TexCoord0) (var_ref gl_MultiTexCoord0) ) (assign (xyzw) (var_ref gl_out_TexCoord0@338) (var_ref gl_out_TexCoord0) ) (assign (xyzw) (var_ref gl_Position@339) (var_ref gl_Position) ) )) ) ) GLSL IR for linked fragment program 10: ( (declare (shader_in ) vec4 gl_in_TexCoord0) (declare (shader_out ) vec4 gl_FragColor) (declare (temporary ) vec4 gl_FragColor) (declare (uniform ) sampler2D tex0) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref gl_FragColor) (tex vec4 (var_ref tex0) (swiz xy (var_ref gl_in_TexCoord0) ) 0 1 () )) (assign (xyzw) (var_ref gl_FragColor@340) (var_ref gl_FragColor) ) )) ) ) GLSL IR for linked vertex program 10: ( (declare (shader_out ) vec4 gl_out_TexCoord0) (declare (temporary ) vec4 gl_out_TexCoord0) (declare (shader_in ) vec4 gl_MultiTexCoord0) (declare (shader_in ) vec4 gl_Vertex) (declare (shader_out ) vec4 gl_Position) (declare (temporary ) vec4 gl_Position) (declare (uniform ) mat4 gxl3d_ModelViewProjectionMatrix) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref gl_Position) (expression vec4 + (expression vec4 + (expression vec4 + (expression vec4 * (array_ref (var_ref gxl3d_ModelViewProjectionMatrix) (constant int (0)) ) (swiz x (var_ref gl_Vertex) )) (expression vec4 * (array_ref (var_ref gxl3d_ModelViewProjectionMatrix) (constant int (1)) ) (swiz y (var_ref gl_Vertex) )) ) (expression vec4 * (array_ref (var_ref gxl3d_ModelViewProjectionMatrix) (constant int (2)) ) (swiz z (var_ref gl_Vertex) )) ) (expression vec4 * (array_ref (var_ref gxl3d_ModelViewProjectionMatrix) (constant int (3)) ) (swiz w (var_ref gl_Vertex) )) ) ) (assign (xyzw) (var_ref gl_out_TexCoord0) (var_ref gl_MultiTexCoord0) ) (assign (xyzw) (var_ref gl_out_TexCoord0@341) (var_ref gl_out_TexCoord0) ) (assign (xyzw) (var_ref gl_Position@342) (var_ref gl_Position) ) )) ) ) GLSL IR for linked fragment program 10: ( (declare (shader_in ) vec4 gl_in_TexCoord0) (declare (shader_out ) vec4 gl_FragColor) (declare (temporary ) vec4 gl_FragColor) (declare (uniform ) sampler2D tex0) (function main (signature void (parameters ) ( (assign (xyzw) (var_ref gl_FragColor) (tex vec4 (var_ref tex0) (swiz xy (var_ref gl_in_TexCoord0) ) 0 1 () )) (assign (xyzw) (var_ref gl_FragColor@343) (var_ref gl_FragColor) ) )) ) )