From 67ce4cad2459cb3004e0a65310074c2fb1c27a9d Mon Sep 17 00:00:00 2001 From: Csaba Hruska Date: Mon, 8 Feb 2016 15:15:12 +0100 Subject: update out files --- testdata/Graphics.out | 2 +- testdata/HyperbolicParaboloic.out | 2 +- testdata/Hyperboloid.out | 2 +- testdata/NewStyle.out | 2 +- testdata/PrimReduce.out | 2 +- testdata/Spiral.out | 2 +- testdata/editor-examples/Clear.out | 2 +- testdata/editor-examples/Cube.out | 2 +- testdata/editor-examples/Heartbeat.out | 2 +- testdata/editor-examples/LambdaCube.out | 2 +- testdata/editor-examples/LambdaCube2.out | 2 +- testdata/editor-examples/MagicCube.out | 2 +- testdata/editor-examples/RecLC.out | 2 +- testdata/editor-examples/RecursiveTexture.out | 2 +- testdata/editor-examples/Stripes.out | 2 +- testdata/editor-examples/Tetrahedron.out | 2 +- testdata/example06.out | 2 +- testdata/example07.out | 2 +- testdata/example08.out | 2 +- testdata/fetcharrays01.out | 2 +- testdata/fragment01.out | 2 +- testdata/fragment03swizzling.out | 2 +- testdata/fragment04ifthenelse.out | 2 +- testdata/fragment07let.out | 2 +- testdata/framebuffer01.out | 2 +- testdata/framebuffer02.out | 2 +- testdata/framebuffer03.out | 2 +- testdata/framebuffer04.out | 2 +- testdata/framebuffer05.out | 2 +- testdata/gfx00.out | 2 +- testdata/gfx01.out | 2 +- testdata/gfx02.out | 2 +- testdata/gfx03.out | 2 +- testdata/gfx04.out | 2 +- testdata/gfx05.out | 2 +- testdata/heartbeat01.out | 2 +- testdata/helloWorld.out | 2 +- testdata/line01.out | 2 +- testdata/point01.out | 2 +- testdata/recursivetexture01.out | 2 +- testdata/recursivetexture02.out | 2 +- testdata/reduce01.out | 2 +- testdata/reduce02.out | 2 +- testdata/reduce03.out | 2 +- testdata/reduce04.out | 2 +- testdata/reduce05.out | 2 +- testdata/simple02.out | 2 +- testdata/simple03.out | 2 +- testdata/texture01.out | 2 +- testdata/texture02.out | 2 +- testdata/uniformparam01.out | 2 +- testdata/uniformparam02.out | 2 +- testdata/uniformparam03.out | 2 +- 53 files changed, 53 insertions(+), 53 deletions(-) diff --git a/testdata/Graphics.out b/testdata/Graphics.out index a86acb82..056d0d82 100644 --- a/testdata/Graphics.out +++ b/testdata/Graphics.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a3",Parameter {name = "color", ty = V4F}),("z2",Parameter {name = "position", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 z2 ;\nin vec4 a3 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = a3;\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( z2 ).x,( z2 ).y,( z2 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vec4 ( ( 1.0 ) - ( ( vv0 ).x ),( 1.0 ) - ( ( vv0 ).y ),( 1.0 ) - ( ( vv0 ).z ),1.0 );\n}\n"},Program {programUniforms = fromList [("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("k6",Parameter {name = "position", ty = V3F}),("l6",Parameter {name = "color", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 k6 ;\nin vec4 l6 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = vec4 ( ( l6 ).x,( l6 ).y,( l6 ).z,0.5 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( k6 ).x,( k6 ).y,( k6 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("b11",Parameter {name = "position", ty = V3F}),("c11",Parameter {name = "normal", ty = V3F}),("d11",Parameter {name = "diffuseUV", ty = V2F}),("e11",Parameter {name = "lightmapUV", ty = V2F}),("f11",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 b11 ;\nin vec3 c11 ;\nin vec2 d11 ;\nin vec2 e11 ;\nin vec4 f11 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = e11;\nvv1 = vec4 ( 1.0,1.0,1.0,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( b11 ).x,( b11 ).y,( b11 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3562558025",FTexture2D),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a16",Parameter {name = "color", ty = V4F}),("w15",Parameter {name = "position", ty = V3F}),("x15",Parameter {name = "normal", ty = V3F}),("y15",Parameter {name = "diffuseUV", ty = V2F}),("z15",Parameter {name = "lightmapUV", ty = V2F})], programInTextures = fromList [("Tex_3562558025",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 w15 ;\nin vec3 x15 ;\nin vec2 y15 ;\nin vec2 z15 ;\nin vec4 a16 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = y15;\nvv1 = vec4 ( 1.0,1.0,1.0,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( w15 ).x,( w15 ).y,( w15 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3562558025 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3562558025,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_47037129",FTexture2D),("time",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("j20",Parameter {name = "position", ty = V3F}),("k20",Parameter {name = "normal", ty = V3F}),("l20",Parameter {name = "diffuseUV", ty = V2F}),("m20",Parameter {name = "lightmapUV", ty = V2F}),("n20",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_47037129",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float time ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 j20 ;\nin vec3 k20 ;\nin vec2 l20 ;\nin vec2 m20 ;\nin vec4 n20 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = ( ( ( l20 ) + ( ( vec2 ( 0.0,1.0 ) ) * ( time ) ) ) + ( ( sin ( vec2 ( ( 6.28 ) * ( ( ( ( ( j20 ).x ) + ( ( j20 ).z ) ) * ( 9.765625e-4 ) ) + ( ( 0.0 ) + ( ( time ) * ( 1.6 ) ) ) ),( 6.28 ) * ( ( ( ( j20 ).y ) * ( 9.765625e-4 ) ) + ( ( 0.0 ) + ( ( time ) * ( 1.6 ) ) ) ) ) ) ) * ( 0.25 ) ) ) * ( vec2 ( 4.0,4.0 ) );\nvv1 = vec4 ( 1.0,1.0,1.0,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( j20 ).x,( j20 ).y,( j20 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_47037129 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_47037129,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_1910997598",FTexture2D),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("j27",Parameter {name = "position", ty = V3F}),("k27",Parameter {name = "normal", ty = V3F}),("l27",Parameter {name = "diffuseUV", ty = V2F}),("m27",Parameter {name = "lightmapUV", ty = V2F}),("n27",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_1910997598",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 j27 ;\nin vec3 k27 ;\nin vec2 l27 ;\nin vec2 m27 ;\nin vec4 n27 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = l27;\nvv1 = vec4 ( 1.0,1.0,1.0,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( j27 ).x,( j27 ).y,( j27 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_1910997598 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_1910997598,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a32",Parameter {name = "color", ty = V4F}),("w31",Parameter {name = "position", ty = V3F}),("x31",Parameter {name = "normal", ty = V3F}),("y31",Parameter {name = "diffuseUV", ty = V2F}),("z31",Parameter {name = "lightmapUV", ty = V2F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 w31 ;\nin vec3 x31 ;\nin vec2 y31 ;\nin vec2 z31 ;\nin vec4 a32 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = z31;\nvv1 = vec4 ( 1.0,1.0,1.0,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( w31 ).x,( w31 ).y,( w31 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("r36",Parameter {name = "position", ty = V3F}),("s36",Parameter {name = "normal", ty = V3F}),("t36",Parameter {name = "diffuseUV", ty = V2F}),("u36",Parameter {name = "lightmapUV", ty = V2F}),("v36",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 r36 ;\nin vec3 s36 ;\nin vec2 t36 ;\nin vec2 u36 ;\nin vec4 v36 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = u36;\nvv1 = vec4 ( 1.0,1.0,1.0,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( r36 ).x,( r36 ).y,( r36 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_4077187607",FTexture2D),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("m41",Parameter {name = "position", ty = V3F}),("n41",Parameter {name = "normal", ty = V3F}),("o41",Parameter {name = "diffuseUV", ty = V2F}),("p41",Parameter {name = "lightmapUV", ty = V2F}),("q41",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_4077187607",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 m41 ;\nin vec3 n41 ;\nin vec2 o41 ;\nin vec2 p41 ;\nin vec4 q41 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = o41;\nvv1 = vec4 ( 1.0,1.0,1.0,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( m41 ).x,( m41 ).y,( m41 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_4077187607 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_4077187607,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3416962274",FTexture2D),("time",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a46",Parameter {name = "normal", ty = V3F}),("b46",Parameter {name = "diffuseUV", ty = V2F}),("c46",Parameter {name = "lightmapUV", ty = V2F}),("d46",Parameter {name = "color", ty = V4F}),("z45",Parameter {name = "position", ty = V3F})], programInTextures = fromList [("Tex_3416962274",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float time ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 z45 ;\nin vec3 a46 ;\nin vec2 b46 ;\nin vec2 c46 ;\nin vec4 d46 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = ( ( ( b46 ) + ( ( vec2 ( 0.0,1.0 ) ) * ( time ) ) ) + ( ( sin ( vec2 ( ( 6.28 ) * ( ( ( ( ( z45 ).x ) + ( ( z45 ).z ) ) * ( 9.765625e-4 ) ) + ( ( 0.0 ) + ( ( time ) * ( 5.6 ) ) ) ),( 6.28 ) * ( ( ( ( z45 ).y ) * ( 9.765625e-4 ) ) + ( ( 0.0 ) + ( ( time ) * ( 5.6 ) ) ) ) ) ) ) * ( 0.25 ) ) ) * ( vec2 ( 1.5,1.5 ) );\nvv1 = vec4 ( 1.0,1.0,1.0,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( z45 ).x,( z45 ).y,( z45 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3416962274 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3416962274,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a53",Parameter {name = "normal", ty = V3F}),("b53",Parameter {name = "diffuseUV", ty = V2F}),("c53",Parameter {name = "lightmapUV", ty = V2F}),("d53",Parameter {name = "color", ty = V4F}),("z52",Parameter {name = "position", ty = V3F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 z52 ;\nin vec3 a53 ;\nin vec2 b53 ;\nin vec2 c53 ;\nin vec4 d53 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = c53;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( z52 ).x,( z52 ).y,( z52 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_4288602201",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("p57",Parameter {name = "position", ty = V3F}),("q57",Parameter {name = "normal", ty = V3F}),("r57",Parameter {name = "diffuseUV", ty = V2F}),("s57",Parameter {name = "lightmapUV", ty = V2F}),("t57",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_4288602201",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 p57 ;\nin vec3 q57 ;\nin vec2 r57 ;\nin vec2 s57 ;\nin vec4 t57 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = r57;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( p57 ).x,( p57 ).y,( p57 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_4288602201 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_4288602201,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("n62",Parameter {name = "position", ty = V3F}),("o62",Parameter {name = "normal", ty = V3F}),("p62",Parameter {name = "diffuseUV", ty = V2F}),("q62",Parameter {name = "lightmapUV", ty = V2F}),("r62",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 n62 ;\nin vec3 o62 ;\nin vec2 p62 ;\nin vec2 q62 ;\nin vec4 r62 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = q62;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( n62 ).x,( n62 ).y,( n62 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3202786139",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("d67",Parameter {name = "position", ty = V3F}),("e67",Parameter {name = "normal", ty = V3F}),("f67",Parameter {name = "diffuseUV", ty = V2F}),("g67",Parameter {name = "lightmapUV", ty = V2F}),("h67",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3202786139",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 d67 ;\nin vec3 e67 ;\nin vec2 f67 ;\nin vec2 g67 ;\nin vec4 h67 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = f67;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( d67 ).x,( d67 ).y,( d67 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3202786139 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3202786139,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("b72",Parameter {name = "position", ty = V3F}),("c72",Parameter {name = "normal", ty = V3F}),("d72",Parameter {name = "diffuseUV", ty = V2F}),("e72",Parameter {name = "lightmapUV", ty = V2F}),("f72",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 b72 ;\nin vec3 c72 ;\nin vec2 d72 ;\nin vec2 e72 ;\nin vec4 f72 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = e72;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( b72 ).x,( b72 ).y,( b72 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_4255130505",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("r76",Parameter {name = "position", ty = V3F}),("s76",Parameter {name = "normal", ty = V3F}),("t76",Parameter {name = "diffuseUV", ty = V2F}),("u76",Parameter {name = "lightmapUV", ty = V2F}),("v76",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_4255130505",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 r76 ;\nin vec3 s76 ;\nin vec2 t76 ;\nin vec2 u76 ;\nin vec4 v76 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = t76;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( r76 ).x,( r76 ).y,( r76 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_4255130505 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_4255130505,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("p81",Parameter {name = "position", ty = V3F}),("q81",Parameter {name = "normal", ty = V3F}),("r81",Parameter {name = "diffuseUV", ty = V2F}),("s81",Parameter {name = "lightmapUV", ty = V2F}),("t81",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 p81 ;\nin vec3 q81 ;\nin vec2 r81 ;\nin vec2 s81 ;\nin vec4 t81 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = s81;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( p81 ).x,( p81 ).y,( p81 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_564811775",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("f86",Parameter {name = "position", ty = V3F}),("g86",Parameter {name = "normal", ty = V3F}),("h86",Parameter {name = "diffuseUV", ty = V2F}),("i86",Parameter {name = "lightmapUV", ty = V2F}),("j86",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_564811775",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 f86 ;\nin vec3 g86 ;\nin vec2 h86 ;\nin vec2 i86 ;\nin vec4 j86 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = h86;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( f86 ).x,( f86 ).y,( f86 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_564811775 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_564811775,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("d91",Parameter {name = "position", ty = V3F}),("e91",Parameter {name = "normal", ty = V3F}),("f91",Parameter {name = "diffuseUV", ty = V2F}),("g91",Parameter {name = "lightmapUV", ty = V2F}),("h91",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 d91 ;\nin vec3 e91 ;\nin vec2 f91 ;\nin vec2 g91 ;\nin vec4 h91 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = g91;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( d91 ).x,( d91 ).y,( d91 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2073154888",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("t95",Parameter {name = "position", ty = V3F}),("u95",Parameter {name = "normal", ty = V3F}),("v95",Parameter {name = "diffuseUV", ty = V2F}),("w95",Parameter {name = "lightmapUV", ty = V2F}),("x95",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_2073154888",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 t95 ;\nin vec3 u95 ;\nin vec2 v95 ;\nin vec2 w95 ;\nin vec4 x95 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = v95;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( t95 ).x,( t95 ).y,( t95 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2073154888 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2073154888,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("r100",Parameter {name = "position", ty = V3F}),("s100",Parameter {name = "normal", ty = V3F}),("t100",Parameter {name = "diffuseUV", ty = V2F}),("u100",Parameter {name = "lightmapUV", ty = V2F}),("v100",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 r100 ;\nin vec3 s100 ;\nin vec2 t100 ;\nin vec2 u100 ;\nin vec4 v100 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = u100;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( r100 ).x,( r100 ).y,( r100 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2099456856",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("h105",Parameter {name = "position", ty = V3F}),("i105",Parameter {name = "normal", ty = V3F}),("j105",Parameter {name = "diffuseUV", ty = V2F}),("k105",Parameter {name = "lightmapUV", ty = V2F}),("l105",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_2099456856",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 h105 ;\nin vec3 i105 ;\nin vec2 j105 ;\nin vec2 k105 ;\nin vec4 l105 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = j105;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( h105 ).x,( h105 ).y,( h105 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2099456856 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2099456856,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("f110",Parameter {name = "position", ty = V3F}),("g110",Parameter {name = "normal", ty = V3F}),("h110",Parameter {name = "diffuseUV", ty = V2F}),("i110",Parameter {name = "lightmapUV", ty = V2F}),("j110",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 f110 ;\nin vec3 g110 ;\nin vec2 h110 ;\nin vec2 i110 ;\nin vec4 j110 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = i110;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( f110 ).x,( f110 ).y,( f110 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_1581337759",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("v114",Parameter {name = "position", ty = V3F}),("w114",Parameter {name = "normal", ty = V3F}),("x114",Parameter {name = "diffuseUV", ty = V2F}),("y114",Parameter {name = "lightmapUV", ty = V2F}),("z114",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_1581337759",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 v114 ;\nin vec3 w114 ;\nin vec2 x114 ;\nin vec2 y114 ;\nin vec4 z114 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = x114;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( v114 ).x,( v114 ).y,( v114 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_1581337759 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_1581337759,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("t119",Parameter {name = "position", ty = V3F}),("u119",Parameter {name = "normal", ty = V3F}),("v119",Parameter {name = "diffuseUV", ty = V2F}),("w119",Parameter {name = "lightmapUV", ty = V2F}),("x119",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 t119 ;\nin vec3 u119 ;\nin vec2 v119 ;\nin vec2 w119 ;\nin vec4 x119 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = w119;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( t119 ).x,( t119 ).y,( t119 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_1062467595",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("j124",Parameter {name = "position", ty = V3F}),("k124",Parameter {name = "normal", ty = V3F}),("l124",Parameter {name = "diffuseUV", ty = V2F}),("m124",Parameter {name = "lightmapUV", ty = V2F}),("n124",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_1062467595",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 j124 ;\nin vec3 k124 ;\nin vec2 l124 ;\nin vec2 m124 ;\nin vec4 n124 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = l124;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( j124 ).x,( j124 ).y,( j124 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_1062467595 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_1062467595,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("h129",Parameter {name = "position", ty = V3F}),("i129",Parameter {name = "normal", ty = V3F}),("j129",Parameter {name = "diffuseUV", ty = V2F}),("k129",Parameter {name = "lightmapUV", ty = V2F}),("l129",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 h129 ;\nin vec3 i129 ;\nin vec2 j129 ;\nin vec2 k129 ;\nin vec4 l129 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = k129;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( h129 ).x,( h129 ).y,( h129 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2024854890",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a134",Parameter {name = "lightmapUV", ty = V2F}),("b134",Parameter {name = "color", ty = V4F}),("x133",Parameter {name = "position", ty = V3F}),("y133",Parameter {name = "normal", ty = V3F}),("z133",Parameter {name = "diffuseUV", ty = V2F})], programInTextures = fromList [("Tex_2024854890",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 x133 ;\nin vec3 y133 ;\nin vec2 z133 ;\nin vec2 a134 ;\nin vec4 b134 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = z133;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( x133 ).x,( x133 ).y,( x133 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2024854890 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2024854890,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("v138",Parameter {name = "position", ty = V3F}),("w138",Parameter {name = "normal", ty = V3F}),("x138",Parameter {name = "diffuseUV", ty = V2F}),("y138",Parameter {name = "lightmapUV", ty = V2F}),("z138",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 v138 ;\nin vec3 w138 ;\nin vec2 x138 ;\nin vec2 y138 ;\nin vec4 z138 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = y138;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( v138 ).x,( v138 ).y,( v138 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_1284708166",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("l143",Parameter {name = "position", ty = V3F}),("m143",Parameter {name = "normal", ty = V3F}),("n143",Parameter {name = "diffuseUV", ty = V2F}),("o143",Parameter {name = "lightmapUV", ty = V2F}),("p143",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_1284708166",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 l143 ;\nin vec3 m143 ;\nin vec2 n143 ;\nin vec2 o143 ;\nin vec4 p143 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = n143;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( l143 ).x,( l143 ).y,( l143 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_1284708166 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_1284708166,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("j148",Parameter {name = "position", ty = V3F}),("k148",Parameter {name = "normal", ty = V3F}),("l148",Parameter {name = "diffuseUV", ty = V2F}),("m148",Parameter {name = "lightmapUV", ty = V2F}),("n148",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 j148 ;\nin vec3 k148 ;\nin vec2 l148 ;\nin vec2 m148 ;\nin vec4 n148 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = m148;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( j148 ).x,( j148 ).y,( j148 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2432583247",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a153",Parameter {name = "normal", ty = V3F}),("b153",Parameter {name = "diffuseUV", ty = V2F}),("c153",Parameter {name = "lightmapUV", ty = V2F}),("d153",Parameter {name = "color", ty = V4F}),("z152",Parameter {name = "position", ty = V3F})], programInTextures = fromList [("Tex_2432583247",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 z152 ;\nin vec3 a153 ;\nin vec2 b153 ;\nin vec2 c153 ;\nin vec4 d153 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = b153;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( z152 ).x,( z152 ).y,( z152 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2432583247 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2432583247,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a158",Parameter {name = "lightmapUV", ty = V2F}),("b158",Parameter {name = "color", ty = V4F}),("x157",Parameter {name = "position", ty = V3F}),("y157",Parameter {name = "normal", ty = V3F}),("z157",Parameter {name = "diffuseUV", ty = V2F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 x157 ;\nin vec3 y157 ;\nin vec2 z157 ;\nin vec2 a158 ;\nin vec4 b158 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = a158;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( x157 ).x,( x157 ).y,( x157 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_1002517541",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("n162",Parameter {name = "position", ty = V3F}),("o162",Parameter {name = "normal", ty = V3F}),("p162",Parameter {name = "diffuseUV", ty = V2F}),("q162",Parameter {name = "lightmapUV", ty = V2F}),("r162",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_1002517541",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 n162 ;\nin vec3 o162 ;\nin vec2 p162 ;\nin vec2 q162 ;\nin vec4 r162 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = p162;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( n162 ).x,( n162 ).y,( n162 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_1002517541 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_1002517541,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("l167",Parameter {name = "position", ty = V3F}),("m167",Parameter {name = "normal", ty = V3F}),("n167",Parameter {name = "diffuseUV", ty = V2F}),("o167",Parameter {name = "lightmapUV", ty = V2F}),("p167",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 l167 ;\nin vec3 m167 ;\nin vec2 n167 ;\nin vec2 o167 ;\nin vec4 p167 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = o167;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( l167 ).x,( l167 ).y,( l167 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2639119078",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("b172",Parameter {name = "position", ty = V3F}),("c172",Parameter {name = "normal", ty = V3F}),("d172",Parameter {name = "diffuseUV", ty = V2F}),("e172",Parameter {name = "lightmapUV", ty = V2F}),("f172",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_2639119078",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 b172 ;\nin vec3 c172 ;\nin vec2 d172 ;\nin vec2 e172 ;\nin vec4 f172 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = d172;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( b172 ).x,( b172 ).y,( b172 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2639119078 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2639119078,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a177",Parameter {name = "normal", ty = V3F}),("b177",Parameter {name = "diffuseUV", ty = V2F}),("c177",Parameter {name = "lightmapUV", ty = V2F}),("d177",Parameter {name = "color", ty = V4F}),("z176",Parameter {name = "position", ty = V3F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 z176 ;\nin vec3 a177 ;\nin vec2 b177 ;\nin vec2 c177 ;\nin vec4 d177 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = c177;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( z176 ).x,( z176 ).y,( z176 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3479185666",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("p181",Parameter {name = "position", ty = V3F}),("q181",Parameter {name = "normal", ty = V3F}),("r181",Parameter {name = "diffuseUV", ty = V2F}),("s181",Parameter {name = "lightmapUV", ty = V2F}),("t181",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3479185666",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 p181 ;\nin vec3 q181 ;\nin vec2 r181 ;\nin vec2 s181 ;\nin vec4 t181 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = r181;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( p181 ).x,( p181 ).y,( p181 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3479185666 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3479185666,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("n186",Parameter {name = "position", ty = V3F}),("o186",Parameter {name = "normal", ty = V3F}),("p186",Parameter {name = "diffuseUV", ty = V2F}),("q186",Parameter {name = "lightmapUV", ty = V2F}),("r186",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 n186 ;\nin vec3 o186 ;\nin vec2 p186 ;\nin vec2 q186 ;\nin vec4 r186 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = q186;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( n186 ).x,( n186 ).y,( n186 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3448884269",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("d191",Parameter {name = "position", ty = V3F}),("e191",Parameter {name = "normal", ty = V3F}),("f191",Parameter {name = "diffuseUV", ty = V2F}),("g191",Parameter {name = "lightmapUV", ty = V2F}),("h191",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3448884269",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 d191 ;\nin vec3 e191 ;\nin vec2 f191 ;\nin vec2 g191 ;\nin vec4 h191 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = f191;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( d191 ).x,( d191 ).y,( d191 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3448884269 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3448884269,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("b196",Parameter {name = "position", ty = V3F}),("c196",Parameter {name = "normal", ty = V3F}),("d196",Parameter {name = "diffuseUV", ty = V2F}),("e196",Parameter {name = "lightmapUV", ty = V2F}),("f196",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 b196 ;\nin vec3 c196 ;\nin vec2 d196 ;\nin vec2 e196 ;\nin vec4 f196 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = e196;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( b196 ).x,( b196 ).y,( b196 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_1201212243",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("r200",Parameter {name = "position", ty = V3F}),("s200",Parameter {name = "normal", ty = V3F}),("t200",Parameter {name = "diffuseUV", ty = V2F}),("u200",Parameter {name = "lightmapUV", ty = V2F}),("v200",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_1201212243",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 r200 ;\nin vec3 s200 ;\nin vec2 t200 ;\nin vec2 u200 ;\nin vec4 v200 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = t200;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( r200 ).x,( r200 ).y,( r200 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_1201212243 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_1201212243,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("p205",Parameter {name = "position", ty = V3F}),("q205",Parameter {name = "normal", ty = V3F}),("r205",Parameter {name = "diffuseUV", ty = V2F}),("s205",Parameter {name = "lightmapUV", ty = V2F}),("t205",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 p205 ;\nin vec3 q205 ;\nin vec2 r205 ;\nin vec2 s205 ;\nin vec4 t205 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = s205;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( p205 ).x,( p205 ).y,( p205 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3389727963",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("f210",Parameter {name = "position", ty = V3F}),("g210",Parameter {name = "normal", ty = V3F}),("h210",Parameter {name = "diffuseUV", ty = V2F}),("i210",Parameter {name = "lightmapUV", ty = V2F}),("j210",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3389727963",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 f210 ;\nin vec3 g210 ;\nin vec2 h210 ;\nin vec2 i210 ;\nin vec4 j210 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = h210;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( f210 ).x,( f210 ).y,( f210 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3389727963 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3389727963,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("d215",Parameter {name = "position", ty = V3F}),("e215",Parameter {name = "normal", ty = V3F}),("f215",Parameter {name = "diffuseUV", ty = V2F}),("g215",Parameter {name = "lightmapUV", ty = V2F}),("h215",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 d215 ;\nin vec3 e215 ;\nin vec2 f215 ;\nin vec2 g215 ;\nin vec4 h215 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = g215;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( d215 ).x,( d215 ).y,( d215 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3836020895",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("t219",Parameter {name = "position", ty = V3F}),("u219",Parameter {name = "normal", ty = V3F}),("v219",Parameter {name = "diffuseUV", ty = V2F}),("w219",Parameter {name = "lightmapUV", ty = V2F}),("x219",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3836020895",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 t219 ;\nin vec3 u219 ;\nin vec2 v219 ;\nin vec2 w219 ;\nin vec4 x219 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = v219;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( t219 ).x,( t219 ).y,( t219 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3836020895 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3836020895,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("r224",Parameter {name = "position", ty = V3F}),("s224",Parameter {name = "normal", ty = V3F}),("t224",Parameter {name = "diffuseUV", ty = V2F}),("u224",Parameter {name = "lightmapUV", ty = V2F}),("v224",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 r224 ;\nin vec3 s224 ;\nin vec2 t224 ;\nin vec2 u224 ;\nin vec4 v224 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = u224;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( r224 ).x,( r224 ).y,( r224 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_209322640",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("h229",Parameter {name = "position", ty = V3F}),("i229",Parameter {name = "normal", ty = V3F}),("j229",Parameter {name = "diffuseUV", ty = V2F}),("k229",Parameter {name = "lightmapUV", ty = V2F}),("l229",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_209322640",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 h229 ;\nin vec3 i229 ;\nin vec2 j229 ;\nin vec2 k229 ;\nin vec4 l229 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = j229;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( h229 ).x,( h229 ).y,( h229 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_209322640 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_209322640,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("f234",Parameter {name = "position", ty = V3F}),("g234",Parameter {name = "normal", ty = V3F}),("h234",Parameter {name = "diffuseUV", ty = V2F}),("i234",Parameter {name = "lightmapUV", ty = V2F}),("j234",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 f234 ;\nin vec3 g234 ;\nin vec2 h234 ;\nin vec2 i234 ;\nin vec4 j234 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = i234;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( f234 ).x,( f234 ).y,( f234 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2893650486",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("v238",Parameter {name = "position", ty = V3F}),("w238",Parameter {name = "normal", ty = V3F}),("x238",Parameter {name = "diffuseUV", ty = V2F}),("y238",Parameter {name = "lightmapUV", ty = V2F}),("z238",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_2893650486",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 v238 ;\nin vec3 w238 ;\nin vec2 x238 ;\nin vec2 y238 ;\nin vec4 z238 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = x238;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( v238 ).x,( v238 ).y,( v238 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2893650486 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2893650486,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("t243",Parameter {name = "position", ty = V3F}),("u243",Parameter {name = "normal", ty = V3F}),("v243",Parameter {name = "diffuseUV", ty = V2F}),("w243",Parameter {name = "lightmapUV", ty = V2F}),("x243",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 t243 ;\nin vec3 u243 ;\nin vec2 v243 ;\nin vec2 w243 ;\nin vec4 x243 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = w243;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( t243 ).x,( t243 ).y,( t243 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3814342582",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("j248",Parameter {name = "position", ty = V3F}),("k248",Parameter {name = "normal", ty = V3F}),("l248",Parameter {name = "diffuseUV", ty = V2F}),("m248",Parameter {name = "lightmapUV", ty = V2F}),("n248",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3814342582",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 j248 ;\nin vec3 k248 ;\nin vec2 l248 ;\nin vec2 m248 ;\nin vec4 n248 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = l248;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( j248 ).x,( j248 ).y,( j248 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3814342582 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3814342582,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("h253",Parameter {name = "position", ty = V3F}),("i253",Parameter {name = "normal", ty = V3F}),("j253",Parameter {name = "diffuseUV", ty = V2F}),("k253",Parameter {name = "lightmapUV", ty = V2F}),("l253",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 h253 ;\nin vec3 i253 ;\nin vec2 j253 ;\nin vec2 k253 ;\nin vec4 l253 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = k253;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( h253 ).x,( h253 ).y,( h253 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_4189195777",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a258",Parameter {name = "lightmapUV", ty = V2F}),("b258",Parameter {name = "color", ty = V4F}),("x257",Parameter {name = "position", ty = V3F}),("y257",Parameter {name = "normal", ty = V3F}),("z257",Parameter {name = "diffuseUV", ty = V2F})], programInTextures = fromList [("Tex_4189195777",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 x257 ;\nin vec3 y257 ;\nin vec2 z257 ;\nin vec2 a258 ;\nin vec4 b258 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = z257;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( x257 ).x,( x257 ).y,( x257 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_4189195777 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_4189195777,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("v262",Parameter {name = "position", ty = V3F}),("w262",Parameter {name = "normal", ty = V3F}),("x262",Parameter {name = "diffuseUV", ty = V2F}),("y262",Parameter {name = "lightmapUV", ty = V2F}),("z262",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 v262 ;\nin vec3 w262 ;\nin vec2 x262 ;\nin vec2 y262 ;\nin vec4 z262 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = y262;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( v262 ).x,( v262 ).y,( v262 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2239853403",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("l267",Parameter {name = "position", ty = V3F}),("m267",Parameter {name = "normal", ty = V3F}),("n267",Parameter {name = "diffuseUV", ty = V2F}),("o267",Parameter {name = "lightmapUV", ty = V2F}),("p267",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_2239853403",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 l267 ;\nin vec3 m267 ;\nin vec2 n267 ;\nin vec2 o267 ;\nin vec4 p267 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = n267;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( l267 ).x,( l267 ).y,( l267 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2239853403 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2239853403,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("j272",Parameter {name = "position", ty = V3F}),("k272",Parameter {name = "normal", ty = V3F}),("l272",Parameter {name = "diffuseUV", ty = V2F}),("m272",Parameter {name = "lightmapUV", ty = V2F}),("n272",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 j272 ;\nin vec3 k272 ;\nin vec2 l272 ;\nin vec2 m272 ;\nin vec4 n272 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = m272;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( j272 ).x,( j272 ).y,( j272 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2367525081",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a277",Parameter {name = "normal", ty = V3F}),("b277",Parameter {name = "diffuseUV", ty = V2F}),("c277",Parameter {name = "lightmapUV", ty = V2F}),("d277",Parameter {name = "color", ty = V4F}),("z276",Parameter {name = "position", ty = V3F})], programInTextures = fromList [("Tex_2367525081",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 z276 ;\nin vec3 a277 ;\nin vec2 b277 ;\nin vec2 c277 ;\nin vec4 d277 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = b277;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( z276 ).x,( z276 ).y,( z276 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2367525081 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2367525081,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a282",Parameter {name = "lightmapUV", ty = V2F}),("b282",Parameter {name = "color", ty = V4F}),("x281",Parameter {name = "position", ty = V3F}),("y281",Parameter {name = "normal", ty = V3F}),("z281",Parameter {name = "diffuseUV", ty = V2F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 x281 ;\nin vec3 y281 ;\nin vec2 z281 ;\nin vec2 a282 ;\nin vec4 b282 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = a282;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( x281 ).x,( x281 ).y,( x281 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2523116863",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("n286",Parameter {name = "position", ty = V3F}),("o286",Parameter {name = "normal", ty = V3F}),("p286",Parameter {name = "diffuseUV", ty = V2F}),("q286",Parameter {name = "lightmapUV", ty = V2F}),("r286",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_2523116863",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 n286 ;\nin vec3 o286 ;\nin vec2 p286 ;\nin vec2 q286 ;\nin vec4 r286 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = p286;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( n286 ).x,( n286 ).y,( n286 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2523116863 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2523116863,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("l291",Parameter {name = "position", ty = V3F}),("m291",Parameter {name = "normal", ty = V3F}),("n291",Parameter {name = "diffuseUV", ty = V2F}),("o291",Parameter {name = "lightmapUV", ty = V2F}),("p291",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 l291 ;\nin vec3 m291 ;\nin vec2 n291 ;\nin vec2 o291 ;\nin vec4 p291 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = o291;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( l291 ).x,( l291 ).y,( l291 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2512757607",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("b296",Parameter {name = "position", ty = V3F}),("c296",Parameter {name = "normal", ty = V3F}),("d296",Parameter {name = "diffuseUV", ty = V2F}),("e296",Parameter {name = "lightmapUV", ty = V2F}),("f296",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_2512757607",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 b296 ;\nin vec3 c296 ;\nin vec2 d296 ;\nin vec2 e296 ;\nin vec4 f296 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = d296;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( b296 ).x,( b296 ).y,( b296 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2512757607 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2512757607,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a301",Parameter {name = "normal", ty = V3F}),("b301",Parameter {name = "diffuseUV", ty = V2F}),("c301",Parameter {name = "lightmapUV", ty = V2F}),("d301",Parameter {name = "color", ty = V4F}),("z300",Parameter {name = "position", ty = V3F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 z300 ;\nin vec3 a301 ;\nin vec2 b301 ;\nin vec2 c301 ;\nin vec4 d301 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = c301;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( z300 ).x,( z300 ).y,( z300 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_4289279309",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("p305",Parameter {name = "position", ty = V3F}),("q305",Parameter {name = "normal", ty = V3F}),("r305",Parameter {name = "diffuseUV", ty = V2F}),("s305",Parameter {name = "lightmapUV", ty = V2F}),("t305",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_4289279309",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 p305 ;\nin vec3 q305 ;\nin vec2 r305 ;\nin vec2 s305 ;\nin vec4 t305 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = r305;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( p305 ).x,( p305 ).y,( p305 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_4289279309 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_4289279309,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("n310",Parameter {name = "position", ty = V3F}),("o310",Parameter {name = "normal", ty = V3F}),("p310",Parameter {name = "diffuseUV", ty = V2F}),("q310",Parameter {name = "lightmapUV", ty = V2F}),("r310",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 n310 ;\nin vec3 o310 ;\nin vec2 p310 ;\nin vec2 q310 ;\nin vec4 r310 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = q310;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( n310 ).x,( n310 ).y,( n310 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2525124732",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("d315",Parameter {name = "position", ty = V3F}),("e315",Parameter {name = "normal", ty = V3F}),("f315",Parameter {name = "diffuseUV", ty = V2F}),("g315",Parameter {name = "lightmapUV", ty = V2F}),("h315",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_2525124732",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 d315 ;\nin vec3 e315 ;\nin vec2 f315 ;\nin vec2 g315 ;\nin vec4 h315 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = f315;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( d315 ).x,( d315 ).y,( d315 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2525124732 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2525124732,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("b320",Parameter {name = "position", ty = V3F}),("c320",Parameter {name = "normal", ty = V3F}),("d320",Parameter {name = "diffuseUV", ty = V2F}),("e320",Parameter {name = "lightmapUV", ty = V2F}),("f320",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 b320 ;\nin vec3 c320 ;\nin vec2 d320 ;\nin vec2 e320 ;\nin vec4 f320 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = e320;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( b320 ).x,( b320 ).y,( b320 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3071107621",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("r324",Parameter {name = "position", ty = V3F}),("s324",Parameter {name = "normal", ty = V3F}),("t324",Parameter {name = "diffuseUV", ty = V2F}),("u324",Parameter {name = "lightmapUV", ty = V2F}),("v324",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3071107621",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 r324 ;\nin vec3 s324 ;\nin vec2 t324 ;\nin vec2 u324 ;\nin vec4 v324 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = t324;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( r324 ).x,( r324 ).y,( r324 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3071107621 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3071107621,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("p329",Parameter {name = "position", ty = V3F}),("q329",Parameter {name = "normal", ty = V3F}),("r329",Parameter {name = "diffuseUV", ty = V2F}),("s329",Parameter {name = "lightmapUV", ty = V2F}),("t329",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 p329 ;\nin vec3 q329 ;\nin vec2 r329 ;\nin vec2 s329 ;\nin vec4 t329 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = s329;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( p329 ).x,( p329 ).y,( p329 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3921745736",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("f334",Parameter {name = "position", ty = V3F}),("g334",Parameter {name = "normal", ty = V3F}),("h334",Parameter {name = "diffuseUV", ty = V2F}),("i334",Parameter {name = "lightmapUV", ty = V2F}),("j334",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3921745736",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 f334 ;\nin vec3 g334 ;\nin vec2 h334 ;\nin vec2 i334 ;\nin vec4 j334 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = h334;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( f334 ).x,( f334 ).y,( f334 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3921745736 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3921745736,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("d339",Parameter {name = "position", ty = V3F}),("e339",Parameter {name = "normal", ty = V3F}),("f339",Parameter {name = "diffuseUV", ty = V2F}),("g339",Parameter {name = "lightmapUV", ty = V2F}),("h339",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 d339 ;\nin vec3 e339 ;\nin vec2 f339 ;\nin vec2 g339 ;\nin vec4 h339 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = g339;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( d339 ).x,( d339 ).y,( d339 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3647563961",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("t343",Parameter {name = "position", ty = V3F}),("u343",Parameter {name = "normal", ty = V3F}),("v343",Parameter {name = "diffuseUV", ty = V2F}),("w343",Parameter {name = "lightmapUV", ty = V2F}),("x343",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3647563961",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 t343 ;\nin vec3 u343 ;\nin vec2 v343 ;\nin vec2 w343 ;\nin vec4 x343 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = v343;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( t343 ).x,( t343 ).y,( t343 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3647563961 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3647563961,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("r348",Parameter {name = "position", ty = V3F}),("s348",Parameter {name = "normal", ty = V3F}),("t348",Parameter {name = "diffuseUV", ty = V2F}),("u348",Parameter {name = "lightmapUV", ty = V2F}),("v348",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 r348 ;\nin vec3 s348 ;\nin vec2 t348 ;\nin vec2 u348 ;\nin vec4 v348 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = u348;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( r348 ).x,( r348 ).y,( r348 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3593923076",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("h353",Parameter {name = "position", ty = V3F}),("i353",Parameter {name = "normal", ty = V3F}),("j353",Parameter {name = "diffuseUV", ty = V2F}),("k353",Parameter {name = "lightmapUV", ty = V2F}),("l353",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3593923076",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 h353 ;\nin vec3 i353 ;\nin vec2 j353 ;\nin vec2 k353 ;\nin vec4 l353 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = j353;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( h353 ).x,( h353 ).y,( h353 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3593923076 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3593923076,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("f358",Parameter {name = "position", ty = V3F}),("g358",Parameter {name = "normal", ty = V3F}),("h358",Parameter {name = "diffuseUV", ty = V2F}),("i358",Parameter {name = "lightmapUV", ty = V2F}),("j358",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 f358 ;\nin vec3 g358 ;\nin vec2 h358 ;\nin vec2 i358 ;\nin vec4 j358 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = i358;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( f358 ).x,( f358 ).y,( f358 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_1435187472",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("v362",Parameter {name = "position", ty = V3F}),("w362",Parameter {name = "normal", ty = V3F}),("x362",Parameter {name = "diffuseUV", ty = V2F}),("y362",Parameter {name = "lightmapUV", ty = V2F}),("z362",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_1435187472",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 v362 ;\nin vec3 w362 ;\nin vec2 x362 ;\nin vec2 y362 ;\nin vec4 z362 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = x362;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( v362 ).x,( v362 ).y,( v362 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_1435187472 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_1435187472,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("t367",Parameter {name = "position", ty = V3F}),("u367",Parameter {name = "normal", ty = V3F}),("v367",Parameter {name = "diffuseUV", ty = V2F}),("w367",Parameter {name = "lightmapUV", ty = V2F}),("x367",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 t367 ;\nin vec3 u367 ;\nin vec2 v367 ;\nin vec2 w367 ;\nin vec4 x367 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = w367;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( t367 ).x,( t367 ).y,( t367 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_1318715778",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("j372",Parameter {name = "position", ty = V3F}),("k372",Parameter {name = "normal", ty = V3F}),("l372",Parameter {name = "diffuseUV", ty = V2F}),("m372",Parameter {name = "lightmapUV", ty = V2F}),("n372",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_1318715778",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 j372 ;\nin vec3 k372 ;\nin vec2 l372 ;\nin vec2 m372 ;\nin vec4 n372 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = l372;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( j372 ).x,( j372 ).y,( j372 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_1318715778 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_1318715778,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("h377",Parameter {name = "position", ty = V3F}),("i377",Parameter {name = "normal", ty = V3F}),("j377",Parameter {name = "diffuseUV", ty = V2F}),("k377",Parameter {name = "lightmapUV", ty = V2F}),("l377",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 h377 ;\nin vec3 i377 ;\nin vec2 j377 ;\nin vec2 k377 ;\nin vec4 l377 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = k377;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( h377 ).x,( h377 ).y,( h377 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_442868841",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a382",Parameter {name = "lightmapUV", ty = V2F}),("b382",Parameter {name = "color", ty = V4F}),("x381",Parameter {name = "position", ty = V3F}),("y381",Parameter {name = "normal", ty = V3F}),("z381",Parameter {name = "diffuseUV", ty = V2F})], programInTextures = fromList [("Tex_442868841",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 x381 ;\nin vec3 y381 ;\nin vec2 z381 ;\nin vec2 a382 ;\nin vec4 b382 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = z381;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( x381 ).x,( x381 ).y,( x381 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_442868841 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_442868841,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("v386",Parameter {name = "position", ty = V3F}),("w386",Parameter {name = "normal", ty = V3F}),("x386",Parameter {name = "diffuseUV", ty = V2F}),("y386",Parameter {name = "lightmapUV", ty = V2F}),("z386",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 v386 ;\nin vec3 w386 ;\nin vec2 x386 ;\nin vec2 y386 ;\nin vec4 z386 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = y386;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( v386 ).x,( v386 ).y,( v386 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2289735512",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("l391",Parameter {name = "position", ty = V3F}),("m391",Parameter {name = "normal", ty = V3F}),("n391",Parameter {name = "diffuseUV", ty = V2F}),("o391",Parameter {name = "lightmapUV", ty = V2F}),("p391",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_2289735512",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 l391 ;\nin vec3 m391 ;\nin vec2 n391 ;\nin vec2 o391 ;\nin vec4 p391 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = n391;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( l391 ).x,( l391 ).y,( l391 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2289735512 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2289735512,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("j396",Parameter {name = "position", ty = V3F}),("k396",Parameter {name = "normal", ty = V3F}),("l396",Parameter {name = "diffuseUV", ty = V2F}),("m396",Parameter {name = "lightmapUV", ty = V2F}),("n396",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 j396 ;\nin vec3 k396 ;\nin vec2 l396 ;\nin vec2 m396 ;\nin vec4 n396 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = m396;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( j396 ).x,( j396 ).y,( j396 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3939430064",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a401",Parameter {name = "normal", ty = V3F}),("b401",Parameter {name = "diffuseUV", ty = V2F}),("c401",Parameter {name = "lightmapUV", ty = V2F}),("d401",Parameter {name = "color", ty = V4F}),("z400",Parameter {name = "position", ty = V3F})], programInTextures = fromList [("Tex_3939430064",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 z400 ;\nin vec3 a401 ;\nin vec2 b401 ;\nin vec2 c401 ;\nin vec4 d401 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = b401;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( z400 ).x,( z400 ).y,( z400 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3939430064 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3939430064,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a406",Parameter {name = "lightmapUV", ty = V2F}),("b406",Parameter {name = "color", ty = V4F}),("x405",Parameter {name = "position", ty = V3F}),("y405",Parameter {name = "normal", ty = V3F}),("z405",Parameter {name = "diffuseUV", ty = V2F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 x405 ;\nin vec3 y405 ;\nin vec2 z405 ;\nin vec2 a406 ;\nin vec4 b406 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = a406;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( x405 ).x,( x405 ).y,( x405 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3012001075",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("n410",Parameter {name = "position", ty = V3F}),("o410",Parameter {name = "normal", ty = V3F}),("p410",Parameter {name = "diffuseUV", ty = V2F}),("q410",Parameter {name = "lightmapUV", ty = V2F}),("r410",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3012001075",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 n410 ;\nin vec3 o410 ;\nin vec2 p410 ;\nin vec2 q410 ;\nin vec4 r410 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = p410;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( n410 ).x,( n410 ).y,( n410 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3012001075 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3012001075,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("l415",Parameter {name = "position", ty = V3F}),("m415",Parameter {name = "normal", ty = V3F}),("n415",Parameter {name = "diffuseUV", ty = V2F}),("o415",Parameter {name = "lightmapUV", ty = V2F}),("p415",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 l415 ;\nin vec3 m415 ;\nin vec2 n415 ;\nin vec2 o415 ;\nin vec4 p415 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = o415;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( l415 ).x,( l415 ).y,( l415 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3768122504",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("b420",Parameter {name = "position", ty = V3F}),("c420",Parameter {name = "normal", ty = V3F}),("d420",Parameter {name = "diffuseUV", ty = V2F}),("e420",Parameter {name = "lightmapUV", ty = V2F}),("f420",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3768122504",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 b420 ;\nin vec3 c420 ;\nin vec2 d420 ;\nin vec2 e420 ;\nin vec4 f420 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = d420;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( b420 ).x,( b420 ).y,( b420 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3768122504 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3768122504,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a425",Parameter {name = "normal", ty = V3F}),("b425",Parameter {name = "diffuseUV", ty = V2F}),("c425",Parameter {name = "lightmapUV", ty = V2F}),("d425",Parameter {name = "color", ty = V4F}),("z424",Parameter {name = "position", ty = V3F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 z424 ;\nin vec3 a425 ;\nin vec2 b425 ;\nin vec2 c425 ;\nin vec4 d425 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = c425;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( z424 ).x,( z424 ).y,( z424 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2634868983",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("p429",Parameter {name = "position", ty = V3F}),("q429",Parameter {name = "normal", ty = V3F}),("r429",Parameter {name = "diffuseUV", ty = V2F}),("s429",Parameter {name = "lightmapUV", ty = V2F}),("t429",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_2634868983",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 p429 ;\nin vec3 q429 ;\nin vec2 r429 ;\nin vec2 s429 ;\nin vec4 t429 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = r429;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( p429 ).x,( p429 ).y,( p429 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2634868983 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2634868983,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("n434",Parameter {name = "position", ty = V3F}),("o434",Parameter {name = "normal", ty = V3F}),("p434",Parameter {name = "diffuseUV", ty = V2F}),("q434",Parameter {name = "lightmapUV", ty = V2F}),("r434",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 n434 ;\nin vec3 o434 ;\nin vec2 p434 ;\nin vec2 q434 ;\nin vec4 r434 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = q434;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( n434 ).x,( n434 ).y,( n434 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3269743316",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("d439",Parameter {name = "position", ty = V3F}),("e439",Parameter {name = "normal", ty = V3F}),("f439",Parameter {name = "diffuseUV", ty = V2F}),("g439",Parameter {name = "lightmapUV", ty = V2F}),("h439",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3269743316",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 d439 ;\nin vec3 e439 ;\nin vec2 f439 ;\nin vec2 g439 ;\nin vec4 h439 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = f439;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( d439 ).x,( d439 ).y,( d439 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3269743316 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3269743316,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("b444",Parameter {name = "position", ty = V3F}),("c444",Parameter {name = "normal", ty = V3F}),("d444",Parameter {name = "diffuseUV", ty = V2F}),("e444",Parameter {name = "lightmapUV", ty = V2F}),("f444",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 b444 ;\nin vec3 c444 ;\nin vec2 d444 ;\nin vec2 e444 ;\nin vec4 f444 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = e444;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( b444 ).x,( b444 ).y,( b444 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3617993418",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("r448",Parameter {name = "position", ty = V3F}),("s448",Parameter {name = "normal", ty = V3F}),("t448",Parameter {name = "diffuseUV", ty = V2F}),("u448",Parameter {name = "lightmapUV", ty = V2F}),("v448",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3617993418",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 r448 ;\nin vec3 s448 ;\nin vec2 t448 ;\nin vec2 u448 ;\nin vec4 v448 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = t448;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( r448 ).x,( r448 ).y,( r448 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3617993418 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3617993418,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("p453",Parameter {name = "position", ty = V3F}),("q453",Parameter {name = "normal", ty = V3F}),("r453",Parameter {name = "diffuseUV", ty = V2F}),("s453",Parameter {name = "lightmapUV", ty = V2F}),("t453",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 p453 ;\nin vec3 q453 ;\nin vec2 r453 ;\nin vec2 s453 ;\nin vec4 t453 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = s453;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( p453 ).x,( p453 ).y,( p453 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_1243894392",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("f458",Parameter {name = "position", ty = V3F}),("g458",Parameter {name = "normal", ty = V3F}),("h458",Parameter {name = "diffuseUV", ty = V2F}),("i458",Parameter {name = "lightmapUV", ty = V2F}),("j458",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_1243894392",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 f458 ;\nin vec3 g458 ;\nin vec2 h458 ;\nin vec2 i458 ;\nin vec4 j458 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = h458;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( f458 ).x,( f458 ).y,( f458 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_1243894392 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_1243894392,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("d463",Parameter {name = "position", ty = V3F}),("e463",Parameter {name = "normal", ty = V3F}),("f463",Parameter {name = "diffuseUV", ty = V2F}),("g463",Parameter {name = "lightmapUV", ty = V2F}),("h463",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 d463 ;\nin vec3 e463 ;\nin vec2 f463 ;\nin vec2 g463 ;\nin vec4 h463 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = g463;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( d463 ).x,( d463 ).y,( d463 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2966885788",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("t467",Parameter {name = "position", ty = V3F}),("u467",Parameter {name = "normal", ty = V3F}),("v467",Parameter {name = "diffuseUV", ty = V2F}),("w467",Parameter {name = "lightmapUV", ty = V2F}),("x467",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_2966885788",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 t467 ;\nin vec3 u467 ;\nin vec2 v467 ;\nin vec2 w467 ;\nin vec4 x467 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = v467;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( t467 ).x,( t467 ).y,( t467 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2966885788 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2966885788,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("r472",Parameter {name = "position", ty = V3F}),("s472",Parameter {name = "normal", ty = V3F}),("t472",Parameter {name = "diffuseUV", ty = V2F}),("u472",Parameter {name = "lightmapUV", ty = V2F}),("v472",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 r472 ;\nin vec3 s472 ;\nin vec2 t472 ;\nin vec2 u472 ;\nin vec4 v472 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = u472;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( r472 ).x,( r472 ).y,( r472 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_1250438154",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("h477",Parameter {name = "position", ty = V3F}),("i477",Parameter {name = "normal", ty = V3F}),("j477",Parameter {name = "diffuseUV", ty = V2F}),("k477",Parameter {name = "lightmapUV", ty = V2F}),("l477",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_1250438154",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 h477 ;\nin vec3 i477 ;\nin vec2 j477 ;\nin vec2 k477 ;\nin vec4 l477 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = j477;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( h477 ).x,( h477 ).y,( h477 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_1250438154 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_1250438154,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("f482",Parameter {name = "position", ty = V3F}),("g482",Parameter {name = "normal", ty = V3F}),("h482",Parameter {name = "diffuseUV", ty = V2F}),("i482",Parameter {name = "lightmapUV", ty = V2F}),("j482",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 f482 ;\nin vec3 g482 ;\nin vec2 h482 ;\nin vec2 i482 ;\nin vec4 j482 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = i482;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( f482 ).x,( f482 ).y,( f482 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2490648334",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("v486",Parameter {name = "position", ty = V3F}),("w486",Parameter {name = "normal", ty = V3F}),("x486",Parameter {name = "diffuseUV", ty = V2F}),("y486",Parameter {name = "lightmapUV", ty = V2F}),("z486",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_2490648334",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 v486 ;\nin vec3 w486 ;\nin vec2 x486 ;\nin vec2 y486 ;\nin vec4 z486 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = x486;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( v486 ).x,( v486 ).y,( v486 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2490648334 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2490648334,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("t491",Parameter {name = "position", ty = V3F}),("u491",Parameter {name = "normal", ty = V3F}),("v491",Parameter {name = "diffuseUV", ty = V2F}),("w491",Parameter {name = "lightmapUV", ty = V2F}),("x491",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 t491 ;\nin vec3 u491 ;\nin vec2 v491 ;\nin vec2 w491 ;\nin vec4 x491 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = w491;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( t491 ).x,( t491 ).y,( t491 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3694494180",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("j496",Parameter {name = "position", ty = V3F}),("k496",Parameter {name = "normal", ty = V3F}),("l496",Parameter {name = "diffuseUV", ty = V2F}),("m496",Parameter {name = "lightmapUV", ty = V2F}),("n496",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3694494180",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 j496 ;\nin vec3 k496 ;\nin vec2 l496 ;\nin vec2 m496 ;\nin vec4 n496 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = l496;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( j496 ).x,( j496 ).y,( j496 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3694494180 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3694494180,vv0 ) );\n}\n"}], slots = [Slot {slotName = "missing shader", slotStreams = fromList [("color",V4F),("position",V3F)], slotUniforms = fromList [("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [0,1]},Slot {slotName = "textures/gothic_block/demon_block15fx", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3562558025",FTexture2D),("Tex_47037129",FTexture2D),("time",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [2,3,4]},Slot {slotName = "textures/gothic_trim/pitted_rust2_trans", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_1910997598",FTexture2D),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [5,6]},Slot {slotName = "textures/gothic_door/skullarch_b", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3416962274",FTexture2D),("Tex_4077187607",FTexture2D),("time",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [7,8,9]},Slot {slotName = "textures/gothic_block/blocks11b", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_4288602201",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [10,11]},Slot {slotName = "textures/gothic_trim/baseboard09_l2", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3202786139",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [12,13]},Slot {slotName = "textures/gothic_door/skull_door_e", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_4255130505",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [14,15]},Slot {slotName = "textures/gothic_wall/supportborder_blue_b", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_564811775",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [16,17]},Slot {slotName = "textures/gothic_door/km_arena1archfinalc_mid", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2073154888",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [18,19]},Slot {slotName = "textures/gothic_trim/pitted_rust2", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2099456856",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [20,21]},Slot {slotName = "textures/gothic_floor/metalbridge06", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_1581337759",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [22,23]},Slot {slotName = "textures/gothic_trim/metaldemonkillblock", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_1062467595",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [24,25]},Slot {slotName = "textures/gothic_door/skullarch_c", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2024854890",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [26,27]},Slot {slotName = "textures/gothic_door/skull_door_a", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_1284708166",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [28,29]},Slot {slotName = "textures/gothic_wall/iron01_e", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2432583247",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [30,31]},Slot {slotName = "textures/gothic_trim/baseboard04", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_1002517541",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [32,33]},Slot {slotName = "textures/gothic_block/blocks18b", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2639119078",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [34,35]},Slot {slotName = "textures/gothic_trim/km_arena1tower4", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3479185666",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [36,37]},Slot {slotName = "textures/gothic_door/skullarch_a", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3448884269",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [38,39]},Slot {slotName = "textures/gothic_door/km_arena1archfinald_bot", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_1201212243",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [40,41]},Slot {slotName = "textures/gothic_trim/pitted_rust3", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3389727963",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [42,43]},Slot {slotName = "textures/gothic_floor/xstairtop4", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3836020895",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [44,45]},Slot {slotName = "textures/gothic_block/killblock_i", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_209322640",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [46,47]},Slot {slotName = "textures/gothic_trim/metalsupsolid", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2893650486",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [48,49]},Slot {slotName = "textures/gothic_floor/blocks17floor2", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3814342582",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [50,51]},Slot {slotName = "textures/gothic_door/skull_door_c", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_4189195777",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [52,53]},Slot {slotName = "textures/gothic_wall/skull4", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2239853403",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [54,55]},Slot {slotName = "textures/gothic_trim/baseboard09_e", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2367525081",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [56,57]},Slot {slotName = "textures/gothic_block/blocks15", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2523116863",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [58,59]},Slot {slotName = "textures/gothic_trim/baseboard09_o3", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2512757607",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [60,61]},Slot {slotName = "textures/gothic_door/skull_door_f", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_4289279309",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [62,63]},Slot {slotName = "textures/gothic_wall/supportborder_blue_c", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2525124732",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [64,65]},Slot {slotName = "textures/gothic_door/km_arena1archfinalc_top", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3071107621",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [66,67]},Slot {slotName = "textures/gothic_floor/metalbridge06broke", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3921745736",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [68,69]},Slot {slotName = "textures/gothic_block/killblock", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3647563961",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [70,71]},Slot {slotName = "textures/gothic_trim/metalsupport4b", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3593923076",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [72,73]},Slot {slotName = "textures/gothic_door/xian_tourneyarch_inside2", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_1435187472",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [74,75]},Slot {slotName = "textures/gothic_door/skull_door_b", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_1318715778",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [76,77]},Slot {slotName = "textures/gothic_wall/iron01_ntech3", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_442868841",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [78,79]},Slot {slotName = "textures/gothic_trim/baseboard09_c3", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2289735512",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [80,81]},Slot {slotName = "textures/gothic_block/blocks18c_3", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3939430064",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [82,83]},Slot {slotName = "textures/gothic_trim/km_arena1tower4_a", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3012001075",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [84,85]},Slot {slotName = "textures/gothic_door/km_arena1archfinald_mid", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3768122504",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [86,87]},Slot {slotName = "textures/gothic_trim/skullsvertgray02b", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2634868983",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [88,89]},Slot {slotName = "textures/gothic_floor/xstepborder3", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3269743316",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [90,91]},Slot {slotName = "textures/gothic_block/killblock_i4", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3617993418",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [92,93]},Slot {slotName = "textures/gothic_trim/pitted_rust", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_1243894392",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [94,95]},Slot {slotName = "textures/gothic_floor/largerblock3b", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2966885788",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [96,97]},Slot {slotName = "textures/gothic_door/skull_door_d", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_1250438154",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [98,99]},Slot {slotName = "textures/gothic_wall/slateroofc", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2490648334",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [100,101]},Slot {slotName = "textures/gothic_trim/baseboard09_e2", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3694494180",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [102,103]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 0.0)}],SetProgram 103,SetSamplerUniform "Tex_3694494180" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 50,SetProgram 102,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 50,SetProgram 101,SetSamplerUniform "Tex_2490648334" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 49,SetProgram 100,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 49,SetProgram 99,SetSamplerUniform "Tex_1250438154" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 48,SetProgram 98,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 48,SetProgram 97,SetSamplerUniform "Tex_2966885788" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 47,SetProgram 96,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 47,SetProgram 95,SetSamplerUniform "Tex_1243894392" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 46,SetProgram 94,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 46,SetProgram 93,SetSamplerUniform "Tex_3617993418" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 45,SetProgram 92,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 45,SetProgram 91,SetSamplerUniform "Tex_3269743316" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 44,SetProgram 90,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 44,SetProgram 89,SetSamplerUniform "Tex_2634868983" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 43,SetProgram 88,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 43,SetProgram 87,SetSamplerUniform "Tex_3768122504" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 42,SetProgram 86,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 42,SetProgram 85,SetSamplerUniform "Tex_3012001075" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 41,SetProgram 84,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 41,SetProgram 83,SetSamplerUniform "Tex_3939430064" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 40,SetProgram 82,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 40,SetProgram 81,SetSamplerUniform "Tex_2289735512" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 39,SetProgram 80,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 39,SetProgram 79,SetSamplerUniform "Tex_442868841" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 38,SetProgram 78,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 38,SetProgram 77,SetSamplerUniform "Tex_1318715778" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 37,SetProgram 76,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 37,SetProgram 75,SetSamplerUniform "Tex_1435187472" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 36,SetProgram 74,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 36,SetProgram 73,SetSamplerUniform "Tex_3593923076" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 35,SetProgram 72,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 35,SetProgram 71,SetSamplerUniform "Tex_3647563961" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 34,SetProgram 70,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 34,SetProgram 69,SetSamplerUniform "Tex_3921745736" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 33,SetProgram 68,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 33,SetProgram 67,SetSamplerUniform "Tex_3071107621" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 32,SetProgram 66,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 32,SetProgram 65,SetSamplerUniform "Tex_2525124732" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 31,SetProgram 64,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 31,SetProgram 63,SetSamplerUniform "Tex_4289279309" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 30,SetProgram 62,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 30,SetProgram 61,SetSamplerUniform "Tex_2512757607" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 29,SetProgram 60,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 29,SetProgram 59,SetSamplerUniform "Tex_2523116863" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 28,SetProgram 58,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 28,SetProgram 57,SetSamplerUniform "Tex_2367525081" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 27,SetProgram 56,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 27,SetProgram 55,SetSamplerUniform "Tex_2239853403" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 26,SetProgram 54,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 26,SetProgram 53,SetSamplerUniform "Tex_4189195777" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 25,SetProgram 52,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 25,SetProgram 51,SetSamplerUniform "Tex_3814342582" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 24,SetProgram 50,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 24,SetProgram 49,SetSamplerUniform "Tex_2893650486" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 23,SetProgram 48,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 23,SetProgram 47,SetSamplerUniform "Tex_209322640" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 22,SetProgram 46,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 22,SetProgram 45,SetSamplerUniform "Tex_3836020895" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 21,SetProgram 44,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 21,SetProgram 43,SetSamplerUniform "Tex_3389727963" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 20,SetProgram 42,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 20,SetProgram 41,SetSamplerUniform "Tex_1201212243" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 19,SetProgram 40,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 19,SetProgram 39,SetSamplerUniform "Tex_3448884269" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 18,SetProgram 38,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 18,SetProgram 37,SetSamplerUniform "Tex_3479185666" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 17,SetProgram 36,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 17,SetProgram 35,SetSamplerUniform "Tex_2639119078" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 16,SetProgram 34,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 16,SetProgram 33,SetSamplerUniform "Tex_1002517541" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 15,SetProgram 32,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 15,SetProgram 31,SetSamplerUniform "Tex_2432583247" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 14,SetProgram 30,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 14,SetProgram 29,SetSamplerUniform "Tex_1284708166" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 13,SetProgram 28,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 13,SetProgram 27,SetSamplerUniform "Tex_2024854890" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 12,SetProgram 26,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 12,SetProgram 25,SetSamplerUniform "Tex_1062467595" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 11,SetProgram 24,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 11,SetProgram 23,SetSamplerUniform "Tex_1581337759" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 10,SetProgram 22,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 10,SetProgram 21,SetSamplerUniform "Tex_2099456856" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 9,SetProgram 20,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 9,SetProgram 19,SetSamplerUniform "Tex_2073154888" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 8,SetProgram 18,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 8,SetProgram 17,SetSamplerUniform "Tex_564811775" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 7,SetProgram 16,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 7,SetProgram 15,SetSamplerUniform "Tex_4255130505" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 6,SetProgram 14,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 6,SetProgram 13,SetSamplerUniform "Tex_3202786139" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 5,SetProgram 12,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 5,SetProgram 11,SetSamplerUniform "Tex_4288602201" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 4,SetProgram 10,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 4,SetProgram 9,SetSamplerUniform "Tex_3416962274" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 3,SetProgram 8,SetSamplerUniform "Tex_4077187607" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal False,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = SrcAlpha, colorFDst = OneMinusSrcAlpha, alphaFSrc = SrcAlpha, alphaFDst = OneMinusSrcAlpha, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 3,SetProgram 7,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal False,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 3,SetProgram 6,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 2,SetProgram 5,SetSamplerUniform "Tex_1910997598" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal False,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 2,SetProgram 4,SetSamplerUniform "Tex_47037129" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 1,SetProgram 3,SetSamplerUniform "Tex_3562558025" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal False,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = SrcAlpha, colorFDst = OneMinusSrcAlpha, alphaFSrc = SrcAlpha, alphaFDst = OneMinusSrcAlpha, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 1,SetProgram 2,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal False,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = OneMinusDstAlpha, alphaFSrc = DstColor, alphaFDst = OneMinusDstAlpha, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 1,SetProgram 1,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less False,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = Min, colorFSrc = One, colorFDst = One, alphaFSrc = One, alphaFDst = One, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 0,SetRasterContext (TriangleCtx CullNone (PolygonLine 1.0) NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a3",Parameter {name = "color", ty = V4F}),("z2",Parameter {name = "position", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 z2 ;\nin vec4 a3 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = a3;\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( z2 ).x,( z2 ).y,( z2 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vec4 ( ( 1.0 ) - ( ( vv0 ).x ),( 1.0 ) - ( ( vv0 ).y ),( 1.0 ) - ( ( vv0 ).z ),1.0 );\n}\n"},Program {programUniforms = fromList [("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("k6",Parameter {name = "position", ty = V3F}),("l6",Parameter {name = "color", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 k6 ;\nin vec4 l6 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = vec4 ( ( l6 ).x,( l6 ).y,( l6 ).z,0.5 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( k6 ).x,( k6 ).y,( k6 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("b11",Parameter {name = "position", ty = V3F}),("c11",Parameter {name = "normal", ty = V3F}),("d11",Parameter {name = "diffuseUV", ty = V2F}),("e11",Parameter {name = "lightmapUV", ty = V2F}),("f11",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 b11 ;\nin vec3 c11 ;\nin vec2 d11 ;\nin vec2 e11 ;\nin vec4 f11 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = e11;\nvv1 = vec4 ( 1.0,1.0,1.0,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( b11 ).x,( b11 ).y,( b11 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3562558025",FTexture2D),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a16",Parameter {name = "color", ty = V4F}),("w15",Parameter {name = "position", ty = V3F}),("x15",Parameter {name = "normal", ty = V3F}),("y15",Parameter {name = "diffuseUV", ty = V2F}),("z15",Parameter {name = "lightmapUV", ty = V2F})], programInTextures = fromList [("Tex_3562558025",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 w15 ;\nin vec3 x15 ;\nin vec2 y15 ;\nin vec2 z15 ;\nin vec4 a16 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = y15;\nvv1 = vec4 ( 1.0,1.0,1.0,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( w15 ).x,( w15 ).y,( w15 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3562558025 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3562558025,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_47037129",FTexture2D),("time",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("j20",Parameter {name = "position", ty = V3F}),("k20",Parameter {name = "normal", ty = V3F}),("l20",Parameter {name = "diffuseUV", ty = V2F}),("m20",Parameter {name = "lightmapUV", ty = V2F}),("n20",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_47037129",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float time ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 j20 ;\nin vec3 k20 ;\nin vec2 l20 ;\nin vec2 m20 ;\nin vec4 n20 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = ( ( ( l20 ) + ( ( vec2 ( 0.0,1.0 ) ) * ( time ) ) ) + ( ( sin ( vec2 ( ( 6.28 ) * ( ( ( ( ( j20 ).x ) + ( ( j20 ).z ) ) * ( 9.765625e-4 ) ) + ( ( 0.0 ) + ( ( time ) * ( 1.6 ) ) ) ),( 6.28 ) * ( ( ( ( j20 ).y ) * ( 9.765625e-4 ) ) + ( ( 0.0 ) + ( ( time ) * ( 1.6 ) ) ) ) ) ) ) * ( 0.25 ) ) ) * ( vec2 ( 4.0,4.0 ) );\nvv1 = vec4 ( 1.0,1.0,1.0,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( j20 ).x,( j20 ).y,( j20 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_47037129 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_47037129,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_1910997598",FTexture2D),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("j27",Parameter {name = "position", ty = V3F}),("k27",Parameter {name = "normal", ty = V3F}),("l27",Parameter {name = "diffuseUV", ty = V2F}),("m27",Parameter {name = "lightmapUV", ty = V2F}),("n27",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_1910997598",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 j27 ;\nin vec3 k27 ;\nin vec2 l27 ;\nin vec2 m27 ;\nin vec4 n27 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = l27;\nvv1 = vec4 ( 1.0,1.0,1.0,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( j27 ).x,( j27 ).y,( j27 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_1910997598 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_1910997598,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a32",Parameter {name = "color", ty = V4F}),("w31",Parameter {name = "position", ty = V3F}),("x31",Parameter {name = "normal", ty = V3F}),("y31",Parameter {name = "diffuseUV", ty = V2F}),("z31",Parameter {name = "lightmapUV", ty = V2F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 w31 ;\nin vec3 x31 ;\nin vec2 y31 ;\nin vec2 z31 ;\nin vec4 a32 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = z31;\nvv1 = vec4 ( 1.0,1.0,1.0,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( w31 ).x,( w31 ).y,( w31 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("r36",Parameter {name = "position", ty = V3F}),("s36",Parameter {name = "normal", ty = V3F}),("t36",Parameter {name = "diffuseUV", ty = V2F}),("u36",Parameter {name = "lightmapUV", ty = V2F}),("v36",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 r36 ;\nin vec3 s36 ;\nin vec2 t36 ;\nin vec2 u36 ;\nin vec4 v36 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = u36;\nvv1 = vec4 ( 1.0,1.0,1.0,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( r36 ).x,( r36 ).y,( r36 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_4077187607",FTexture2D),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("m41",Parameter {name = "position", ty = V3F}),("n41",Parameter {name = "normal", ty = V3F}),("o41",Parameter {name = "diffuseUV", ty = V2F}),("p41",Parameter {name = "lightmapUV", ty = V2F}),("q41",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_4077187607",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 m41 ;\nin vec3 n41 ;\nin vec2 o41 ;\nin vec2 p41 ;\nin vec4 q41 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = o41;\nvv1 = vec4 ( 1.0,1.0,1.0,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( m41 ).x,( m41 ).y,( m41 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_4077187607 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_4077187607,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3416962274",FTexture2D),("time",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a46",Parameter {name = "normal", ty = V3F}),("b46",Parameter {name = "diffuseUV", ty = V2F}),("c46",Parameter {name = "lightmapUV", ty = V2F}),("d46",Parameter {name = "color", ty = V4F}),("z45",Parameter {name = "position", ty = V3F})], programInTextures = fromList [("Tex_3416962274",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float time ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 z45 ;\nin vec3 a46 ;\nin vec2 b46 ;\nin vec2 c46 ;\nin vec4 d46 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = ( ( ( b46 ) + ( ( vec2 ( 0.0,1.0 ) ) * ( time ) ) ) + ( ( sin ( vec2 ( ( 6.28 ) * ( ( ( ( ( z45 ).x ) + ( ( z45 ).z ) ) * ( 9.765625e-4 ) ) + ( ( 0.0 ) + ( ( time ) * ( 5.6 ) ) ) ),( 6.28 ) * ( ( ( ( z45 ).y ) * ( 9.765625e-4 ) ) + ( ( 0.0 ) + ( ( time ) * ( 5.6 ) ) ) ) ) ) ) * ( 0.25 ) ) ) * ( vec2 ( 1.5,1.5 ) );\nvv1 = vec4 ( 1.0,1.0,1.0,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( z45 ).x,( z45 ).y,( z45 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3416962274 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3416962274,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a53",Parameter {name = "normal", ty = V3F}),("b53",Parameter {name = "diffuseUV", ty = V2F}),("c53",Parameter {name = "lightmapUV", ty = V2F}),("d53",Parameter {name = "color", ty = V4F}),("z52",Parameter {name = "position", ty = V3F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 z52 ;\nin vec3 a53 ;\nin vec2 b53 ;\nin vec2 c53 ;\nin vec4 d53 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = c53;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( z52 ).x,( z52 ).y,( z52 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_4288602201",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("p57",Parameter {name = "position", ty = V3F}),("q57",Parameter {name = "normal", ty = V3F}),("r57",Parameter {name = "diffuseUV", ty = V2F}),("s57",Parameter {name = "lightmapUV", ty = V2F}),("t57",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_4288602201",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 p57 ;\nin vec3 q57 ;\nin vec2 r57 ;\nin vec2 s57 ;\nin vec4 t57 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = r57;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( p57 ).x,( p57 ).y,( p57 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_4288602201 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_4288602201,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("n62",Parameter {name = "position", ty = V3F}),("o62",Parameter {name = "normal", ty = V3F}),("p62",Parameter {name = "diffuseUV", ty = V2F}),("q62",Parameter {name = "lightmapUV", ty = V2F}),("r62",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 n62 ;\nin vec3 o62 ;\nin vec2 p62 ;\nin vec2 q62 ;\nin vec4 r62 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = q62;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( n62 ).x,( n62 ).y,( n62 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3202786139",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("d67",Parameter {name = "position", ty = V3F}),("e67",Parameter {name = "normal", ty = V3F}),("f67",Parameter {name = "diffuseUV", ty = V2F}),("g67",Parameter {name = "lightmapUV", ty = V2F}),("h67",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3202786139",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 d67 ;\nin vec3 e67 ;\nin vec2 f67 ;\nin vec2 g67 ;\nin vec4 h67 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = f67;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( d67 ).x,( d67 ).y,( d67 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3202786139 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3202786139,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("b72",Parameter {name = "position", ty = V3F}),("c72",Parameter {name = "normal", ty = V3F}),("d72",Parameter {name = "diffuseUV", ty = V2F}),("e72",Parameter {name = "lightmapUV", ty = V2F}),("f72",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 b72 ;\nin vec3 c72 ;\nin vec2 d72 ;\nin vec2 e72 ;\nin vec4 f72 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = e72;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( b72 ).x,( b72 ).y,( b72 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_4255130505",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("r76",Parameter {name = "position", ty = V3F}),("s76",Parameter {name = "normal", ty = V3F}),("t76",Parameter {name = "diffuseUV", ty = V2F}),("u76",Parameter {name = "lightmapUV", ty = V2F}),("v76",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_4255130505",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 r76 ;\nin vec3 s76 ;\nin vec2 t76 ;\nin vec2 u76 ;\nin vec4 v76 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = t76;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( r76 ).x,( r76 ).y,( r76 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_4255130505 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_4255130505,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("p81",Parameter {name = "position", ty = V3F}),("q81",Parameter {name = "normal", ty = V3F}),("r81",Parameter {name = "diffuseUV", ty = V2F}),("s81",Parameter {name = "lightmapUV", ty = V2F}),("t81",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 p81 ;\nin vec3 q81 ;\nin vec2 r81 ;\nin vec2 s81 ;\nin vec4 t81 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = s81;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( p81 ).x,( p81 ).y,( p81 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_564811775",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("f86",Parameter {name = "position", ty = V3F}),("g86",Parameter {name = "normal", ty = V3F}),("h86",Parameter {name = "diffuseUV", ty = V2F}),("i86",Parameter {name = "lightmapUV", ty = V2F}),("j86",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_564811775",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 f86 ;\nin vec3 g86 ;\nin vec2 h86 ;\nin vec2 i86 ;\nin vec4 j86 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = h86;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( f86 ).x,( f86 ).y,( f86 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_564811775 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_564811775,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("d91",Parameter {name = "position", ty = V3F}),("e91",Parameter {name = "normal", ty = V3F}),("f91",Parameter {name = "diffuseUV", ty = V2F}),("g91",Parameter {name = "lightmapUV", ty = V2F}),("h91",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 d91 ;\nin vec3 e91 ;\nin vec2 f91 ;\nin vec2 g91 ;\nin vec4 h91 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = g91;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( d91 ).x,( d91 ).y,( d91 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2073154888",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("t95",Parameter {name = "position", ty = V3F}),("u95",Parameter {name = "normal", ty = V3F}),("v95",Parameter {name = "diffuseUV", ty = V2F}),("w95",Parameter {name = "lightmapUV", ty = V2F}),("x95",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_2073154888",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 t95 ;\nin vec3 u95 ;\nin vec2 v95 ;\nin vec2 w95 ;\nin vec4 x95 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = v95;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( t95 ).x,( t95 ).y,( t95 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2073154888 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2073154888,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("r100",Parameter {name = "position", ty = V3F}),("s100",Parameter {name = "normal", ty = V3F}),("t100",Parameter {name = "diffuseUV", ty = V2F}),("u100",Parameter {name = "lightmapUV", ty = V2F}),("v100",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 r100 ;\nin vec3 s100 ;\nin vec2 t100 ;\nin vec2 u100 ;\nin vec4 v100 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = u100;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( r100 ).x,( r100 ).y,( r100 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2099456856",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("h105",Parameter {name = "position", ty = V3F}),("i105",Parameter {name = "normal", ty = V3F}),("j105",Parameter {name = "diffuseUV", ty = V2F}),("k105",Parameter {name = "lightmapUV", ty = V2F}),("l105",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_2099456856",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 h105 ;\nin vec3 i105 ;\nin vec2 j105 ;\nin vec2 k105 ;\nin vec4 l105 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = j105;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( h105 ).x,( h105 ).y,( h105 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2099456856 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2099456856,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("f110",Parameter {name = "position", ty = V3F}),("g110",Parameter {name = "normal", ty = V3F}),("h110",Parameter {name = "diffuseUV", ty = V2F}),("i110",Parameter {name = "lightmapUV", ty = V2F}),("j110",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 f110 ;\nin vec3 g110 ;\nin vec2 h110 ;\nin vec2 i110 ;\nin vec4 j110 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = i110;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( f110 ).x,( f110 ).y,( f110 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_1581337759",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("v114",Parameter {name = "position", ty = V3F}),("w114",Parameter {name = "normal", ty = V3F}),("x114",Parameter {name = "diffuseUV", ty = V2F}),("y114",Parameter {name = "lightmapUV", ty = V2F}),("z114",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_1581337759",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 v114 ;\nin vec3 w114 ;\nin vec2 x114 ;\nin vec2 y114 ;\nin vec4 z114 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = x114;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( v114 ).x,( v114 ).y,( v114 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_1581337759 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_1581337759,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("t119",Parameter {name = "position", ty = V3F}),("u119",Parameter {name = "normal", ty = V3F}),("v119",Parameter {name = "diffuseUV", ty = V2F}),("w119",Parameter {name = "lightmapUV", ty = V2F}),("x119",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 t119 ;\nin vec3 u119 ;\nin vec2 v119 ;\nin vec2 w119 ;\nin vec4 x119 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = w119;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( t119 ).x,( t119 ).y,( t119 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_1062467595",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("j124",Parameter {name = "position", ty = V3F}),("k124",Parameter {name = "normal", ty = V3F}),("l124",Parameter {name = "diffuseUV", ty = V2F}),("m124",Parameter {name = "lightmapUV", ty = V2F}),("n124",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_1062467595",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 j124 ;\nin vec3 k124 ;\nin vec2 l124 ;\nin vec2 m124 ;\nin vec4 n124 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = l124;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( j124 ).x,( j124 ).y,( j124 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_1062467595 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_1062467595,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("h129",Parameter {name = "position", ty = V3F}),("i129",Parameter {name = "normal", ty = V3F}),("j129",Parameter {name = "diffuseUV", ty = V2F}),("k129",Parameter {name = "lightmapUV", ty = V2F}),("l129",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 h129 ;\nin vec3 i129 ;\nin vec2 j129 ;\nin vec2 k129 ;\nin vec4 l129 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = k129;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( h129 ).x,( h129 ).y,( h129 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2024854890",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a134",Parameter {name = "lightmapUV", ty = V2F}),("b134",Parameter {name = "color", ty = V4F}),("x133",Parameter {name = "position", ty = V3F}),("y133",Parameter {name = "normal", ty = V3F}),("z133",Parameter {name = "diffuseUV", ty = V2F})], programInTextures = fromList [("Tex_2024854890",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 x133 ;\nin vec3 y133 ;\nin vec2 z133 ;\nin vec2 a134 ;\nin vec4 b134 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = z133;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( x133 ).x,( x133 ).y,( x133 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2024854890 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2024854890,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("v138",Parameter {name = "position", ty = V3F}),("w138",Parameter {name = "normal", ty = V3F}),("x138",Parameter {name = "diffuseUV", ty = V2F}),("y138",Parameter {name = "lightmapUV", ty = V2F}),("z138",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 v138 ;\nin vec3 w138 ;\nin vec2 x138 ;\nin vec2 y138 ;\nin vec4 z138 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = y138;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( v138 ).x,( v138 ).y,( v138 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_1284708166",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("l143",Parameter {name = "position", ty = V3F}),("m143",Parameter {name = "normal", ty = V3F}),("n143",Parameter {name = "diffuseUV", ty = V2F}),("o143",Parameter {name = "lightmapUV", ty = V2F}),("p143",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_1284708166",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 l143 ;\nin vec3 m143 ;\nin vec2 n143 ;\nin vec2 o143 ;\nin vec4 p143 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = n143;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( l143 ).x,( l143 ).y,( l143 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_1284708166 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_1284708166,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("j148",Parameter {name = "position", ty = V3F}),("k148",Parameter {name = "normal", ty = V3F}),("l148",Parameter {name = "diffuseUV", ty = V2F}),("m148",Parameter {name = "lightmapUV", ty = V2F}),("n148",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 j148 ;\nin vec3 k148 ;\nin vec2 l148 ;\nin vec2 m148 ;\nin vec4 n148 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = m148;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( j148 ).x,( j148 ).y,( j148 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2432583247",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a153",Parameter {name = "normal", ty = V3F}),("b153",Parameter {name = "diffuseUV", ty = V2F}),("c153",Parameter {name = "lightmapUV", ty = V2F}),("d153",Parameter {name = "color", ty = V4F}),("z152",Parameter {name = "position", ty = V3F})], programInTextures = fromList [("Tex_2432583247",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 z152 ;\nin vec3 a153 ;\nin vec2 b153 ;\nin vec2 c153 ;\nin vec4 d153 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = b153;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( z152 ).x,( z152 ).y,( z152 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2432583247 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2432583247,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a158",Parameter {name = "lightmapUV", ty = V2F}),("b158",Parameter {name = "color", ty = V4F}),("x157",Parameter {name = "position", ty = V3F}),("y157",Parameter {name = "normal", ty = V3F}),("z157",Parameter {name = "diffuseUV", ty = V2F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 x157 ;\nin vec3 y157 ;\nin vec2 z157 ;\nin vec2 a158 ;\nin vec4 b158 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = a158;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( x157 ).x,( x157 ).y,( x157 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_1002517541",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("n162",Parameter {name = "position", ty = V3F}),("o162",Parameter {name = "normal", ty = V3F}),("p162",Parameter {name = "diffuseUV", ty = V2F}),("q162",Parameter {name = "lightmapUV", ty = V2F}),("r162",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_1002517541",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 n162 ;\nin vec3 o162 ;\nin vec2 p162 ;\nin vec2 q162 ;\nin vec4 r162 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = p162;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( n162 ).x,( n162 ).y,( n162 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_1002517541 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_1002517541,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("l167",Parameter {name = "position", ty = V3F}),("m167",Parameter {name = "normal", ty = V3F}),("n167",Parameter {name = "diffuseUV", ty = V2F}),("o167",Parameter {name = "lightmapUV", ty = V2F}),("p167",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 l167 ;\nin vec3 m167 ;\nin vec2 n167 ;\nin vec2 o167 ;\nin vec4 p167 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = o167;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( l167 ).x,( l167 ).y,( l167 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2639119078",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("b172",Parameter {name = "position", ty = V3F}),("c172",Parameter {name = "normal", ty = V3F}),("d172",Parameter {name = "diffuseUV", ty = V2F}),("e172",Parameter {name = "lightmapUV", ty = V2F}),("f172",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_2639119078",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 b172 ;\nin vec3 c172 ;\nin vec2 d172 ;\nin vec2 e172 ;\nin vec4 f172 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = d172;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( b172 ).x,( b172 ).y,( b172 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2639119078 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2639119078,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a177",Parameter {name = "normal", ty = V3F}),("b177",Parameter {name = "diffuseUV", ty = V2F}),("c177",Parameter {name = "lightmapUV", ty = V2F}),("d177",Parameter {name = "color", ty = V4F}),("z176",Parameter {name = "position", ty = V3F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 z176 ;\nin vec3 a177 ;\nin vec2 b177 ;\nin vec2 c177 ;\nin vec4 d177 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = c177;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( z176 ).x,( z176 ).y,( z176 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3479185666",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("p181",Parameter {name = "position", ty = V3F}),("q181",Parameter {name = "normal", ty = V3F}),("r181",Parameter {name = "diffuseUV", ty = V2F}),("s181",Parameter {name = "lightmapUV", ty = V2F}),("t181",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3479185666",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 p181 ;\nin vec3 q181 ;\nin vec2 r181 ;\nin vec2 s181 ;\nin vec4 t181 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = r181;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( p181 ).x,( p181 ).y,( p181 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3479185666 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3479185666,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("n186",Parameter {name = "position", ty = V3F}),("o186",Parameter {name = "normal", ty = V3F}),("p186",Parameter {name = "diffuseUV", ty = V2F}),("q186",Parameter {name = "lightmapUV", ty = V2F}),("r186",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 n186 ;\nin vec3 o186 ;\nin vec2 p186 ;\nin vec2 q186 ;\nin vec4 r186 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = q186;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( n186 ).x,( n186 ).y,( n186 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3448884269",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("d191",Parameter {name = "position", ty = V3F}),("e191",Parameter {name = "normal", ty = V3F}),("f191",Parameter {name = "diffuseUV", ty = V2F}),("g191",Parameter {name = "lightmapUV", ty = V2F}),("h191",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3448884269",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 d191 ;\nin vec3 e191 ;\nin vec2 f191 ;\nin vec2 g191 ;\nin vec4 h191 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = f191;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( d191 ).x,( d191 ).y,( d191 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3448884269 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3448884269,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("b196",Parameter {name = "position", ty = V3F}),("c196",Parameter {name = "normal", ty = V3F}),("d196",Parameter {name = "diffuseUV", ty = V2F}),("e196",Parameter {name = "lightmapUV", ty = V2F}),("f196",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 b196 ;\nin vec3 c196 ;\nin vec2 d196 ;\nin vec2 e196 ;\nin vec4 f196 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = e196;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( b196 ).x,( b196 ).y,( b196 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_1201212243",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("r200",Parameter {name = "position", ty = V3F}),("s200",Parameter {name = "normal", ty = V3F}),("t200",Parameter {name = "diffuseUV", ty = V2F}),("u200",Parameter {name = "lightmapUV", ty = V2F}),("v200",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_1201212243",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 r200 ;\nin vec3 s200 ;\nin vec2 t200 ;\nin vec2 u200 ;\nin vec4 v200 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = t200;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( r200 ).x,( r200 ).y,( r200 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_1201212243 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_1201212243,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("p205",Parameter {name = "position", ty = V3F}),("q205",Parameter {name = "normal", ty = V3F}),("r205",Parameter {name = "diffuseUV", ty = V2F}),("s205",Parameter {name = "lightmapUV", ty = V2F}),("t205",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 p205 ;\nin vec3 q205 ;\nin vec2 r205 ;\nin vec2 s205 ;\nin vec4 t205 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = s205;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( p205 ).x,( p205 ).y,( p205 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3389727963",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("f210",Parameter {name = "position", ty = V3F}),("g210",Parameter {name = "normal", ty = V3F}),("h210",Parameter {name = "diffuseUV", ty = V2F}),("i210",Parameter {name = "lightmapUV", ty = V2F}),("j210",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3389727963",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 f210 ;\nin vec3 g210 ;\nin vec2 h210 ;\nin vec2 i210 ;\nin vec4 j210 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = h210;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( f210 ).x,( f210 ).y,( f210 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3389727963 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3389727963,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("d215",Parameter {name = "position", ty = V3F}),("e215",Parameter {name = "normal", ty = V3F}),("f215",Parameter {name = "diffuseUV", ty = V2F}),("g215",Parameter {name = "lightmapUV", ty = V2F}),("h215",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 d215 ;\nin vec3 e215 ;\nin vec2 f215 ;\nin vec2 g215 ;\nin vec4 h215 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = g215;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( d215 ).x,( d215 ).y,( d215 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3836020895",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("t219",Parameter {name = "position", ty = V3F}),("u219",Parameter {name = "normal", ty = V3F}),("v219",Parameter {name = "diffuseUV", ty = V2F}),("w219",Parameter {name = "lightmapUV", ty = V2F}),("x219",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3836020895",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 t219 ;\nin vec3 u219 ;\nin vec2 v219 ;\nin vec2 w219 ;\nin vec4 x219 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = v219;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( t219 ).x,( t219 ).y,( t219 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3836020895 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3836020895,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("r224",Parameter {name = "position", ty = V3F}),("s224",Parameter {name = "normal", ty = V3F}),("t224",Parameter {name = "diffuseUV", ty = V2F}),("u224",Parameter {name = "lightmapUV", ty = V2F}),("v224",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 r224 ;\nin vec3 s224 ;\nin vec2 t224 ;\nin vec2 u224 ;\nin vec4 v224 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = u224;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( r224 ).x,( r224 ).y,( r224 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_209322640",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("h229",Parameter {name = "position", ty = V3F}),("i229",Parameter {name = "normal", ty = V3F}),("j229",Parameter {name = "diffuseUV", ty = V2F}),("k229",Parameter {name = "lightmapUV", ty = V2F}),("l229",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_209322640",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 h229 ;\nin vec3 i229 ;\nin vec2 j229 ;\nin vec2 k229 ;\nin vec4 l229 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = j229;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( h229 ).x,( h229 ).y,( h229 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_209322640 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_209322640,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("f234",Parameter {name = "position", ty = V3F}),("g234",Parameter {name = "normal", ty = V3F}),("h234",Parameter {name = "diffuseUV", ty = V2F}),("i234",Parameter {name = "lightmapUV", ty = V2F}),("j234",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 f234 ;\nin vec3 g234 ;\nin vec2 h234 ;\nin vec2 i234 ;\nin vec4 j234 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = i234;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( f234 ).x,( f234 ).y,( f234 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2893650486",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("v238",Parameter {name = "position", ty = V3F}),("w238",Parameter {name = "normal", ty = V3F}),("x238",Parameter {name = "diffuseUV", ty = V2F}),("y238",Parameter {name = "lightmapUV", ty = V2F}),("z238",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_2893650486",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 v238 ;\nin vec3 w238 ;\nin vec2 x238 ;\nin vec2 y238 ;\nin vec4 z238 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = x238;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( v238 ).x,( v238 ).y,( v238 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2893650486 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2893650486,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("t243",Parameter {name = "position", ty = V3F}),("u243",Parameter {name = "normal", ty = V3F}),("v243",Parameter {name = "diffuseUV", ty = V2F}),("w243",Parameter {name = "lightmapUV", ty = V2F}),("x243",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 t243 ;\nin vec3 u243 ;\nin vec2 v243 ;\nin vec2 w243 ;\nin vec4 x243 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = w243;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( t243 ).x,( t243 ).y,( t243 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3814342582",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("j248",Parameter {name = "position", ty = V3F}),("k248",Parameter {name = "normal", ty = V3F}),("l248",Parameter {name = "diffuseUV", ty = V2F}),("m248",Parameter {name = "lightmapUV", ty = V2F}),("n248",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3814342582",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 j248 ;\nin vec3 k248 ;\nin vec2 l248 ;\nin vec2 m248 ;\nin vec4 n248 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = l248;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( j248 ).x,( j248 ).y,( j248 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3814342582 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3814342582,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("h253",Parameter {name = "position", ty = V3F}),("i253",Parameter {name = "normal", ty = V3F}),("j253",Parameter {name = "diffuseUV", ty = V2F}),("k253",Parameter {name = "lightmapUV", ty = V2F}),("l253",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 h253 ;\nin vec3 i253 ;\nin vec2 j253 ;\nin vec2 k253 ;\nin vec4 l253 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = k253;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( h253 ).x,( h253 ).y,( h253 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_4189195777",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a258",Parameter {name = "lightmapUV", ty = V2F}),("b258",Parameter {name = "color", ty = V4F}),("x257",Parameter {name = "position", ty = V3F}),("y257",Parameter {name = "normal", ty = V3F}),("z257",Parameter {name = "diffuseUV", ty = V2F})], programInTextures = fromList [("Tex_4189195777",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 x257 ;\nin vec3 y257 ;\nin vec2 z257 ;\nin vec2 a258 ;\nin vec4 b258 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = z257;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( x257 ).x,( x257 ).y,( x257 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_4189195777 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_4189195777,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("v262",Parameter {name = "position", ty = V3F}),("w262",Parameter {name = "normal", ty = V3F}),("x262",Parameter {name = "diffuseUV", ty = V2F}),("y262",Parameter {name = "lightmapUV", ty = V2F}),("z262",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 v262 ;\nin vec3 w262 ;\nin vec2 x262 ;\nin vec2 y262 ;\nin vec4 z262 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = y262;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( v262 ).x,( v262 ).y,( v262 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2239853403",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("l267",Parameter {name = "position", ty = V3F}),("m267",Parameter {name = "normal", ty = V3F}),("n267",Parameter {name = "diffuseUV", ty = V2F}),("o267",Parameter {name = "lightmapUV", ty = V2F}),("p267",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_2239853403",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 l267 ;\nin vec3 m267 ;\nin vec2 n267 ;\nin vec2 o267 ;\nin vec4 p267 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = n267;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( l267 ).x,( l267 ).y,( l267 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2239853403 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2239853403,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("j272",Parameter {name = "position", ty = V3F}),("k272",Parameter {name = "normal", ty = V3F}),("l272",Parameter {name = "diffuseUV", ty = V2F}),("m272",Parameter {name = "lightmapUV", ty = V2F}),("n272",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 j272 ;\nin vec3 k272 ;\nin vec2 l272 ;\nin vec2 m272 ;\nin vec4 n272 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = m272;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( j272 ).x,( j272 ).y,( j272 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2367525081",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a277",Parameter {name = "normal", ty = V3F}),("b277",Parameter {name = "diffuseUV", ty = V2F}),("c277",Parameter {name = "lightmapUV", ty = V2F}),("d277",Parameter {name = "color", ty = V4F}),("z276",Parameter {name = "position", ty = V3F})], programInTextures = fromList [("Tex_2367525081",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 z276 ;\nin vec3 a277 ;\nin vec2 b277 ;\nin vec2 c277 ;\nin vec4 d277 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = b277;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( z276 ).x,( z276 ).y,( z276 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2367525081 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2367525081,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a282",Parameter {name = "lightmapUV", ty = V2F}),("b282",Parameter {name = "color", ty = V4F}),("x281",Parameter {name = "position", ty = V3F}),("y281",Parameter {name = "normal", ty = V3F}),("z281",Parameter {name = "diffuseUV", ty = V2F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 x281 ;\nin vec3 y281 ;\nin vec2 z281 ;\nin vec2 a282 ;\nin vec4 b282 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = a282;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( x281 ).x,( x281 ).y,( x281 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2523116863",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("n286",Parameter {name = "position", ty = V3F}),("o286",Parameter {name = "normal", ty = V3F}),("p286",Parameter {name = "diffuseUV", ty = V2F}),("q286",Parameter {name = "lightmapUV", ty = V2F}),("r286",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_2523116863",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 n286 ;\nin vec3 o286 ;\nin vec2 p286 ;\nin vec2 q286 ;\nin vec4 r286 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = p286;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( n286 ).x,( n286 ).y,( n286 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2523116863 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2523116863,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("l291",Parameter {name = "position", ty = V3F}),("m291",Parameter {name = "normal", ty = V3F}),("n291",Parameter {name = "diffuseUV", ty = V2F}),("o291",Parameter {name = "lightmapUV", ty = V2F}),("p291",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 l291 ;\nin vec3 m291 ;\nin vec2 n291 ;\nin vec2 o291 ;\nin vec4 p291 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = o291;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( l291 ).x,( l291 ).y,( l291 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2512757607",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("b296",Parameter {name = "position", ty = V3F}),("c296",Parameter {name = "normal", ty = V3F}),("d296",Parameter {name = "diffuseUV", ty = V2F}),("e296",Parameter {name = "lightmapUV", ty = V2F}),("f296",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_2512757607",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 b296 ;\nin vec3 c296 ;\nin vec2 d296 ;\nin vec2 e296 ;\nin vec4 f296 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = d296;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( b296 ).x,( b296 ).y,( b296 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2512757607 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2512757607,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a301",Parameter {name = "normal", ty = V3F}),("b301",Parameter {name = "diffuseUV", ty = V2F}),("c301",Parameter {name = "lightmapUV", ty = V2F}),("d301",Parameter {name = "color", ty = V4F}),("z300",Parameter {name = "position", ty = V3F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 z300 ;\nin vec3 a301 ;\nin vec2 b301 ;\nin vec2 c301 ;\nin vec4 d301 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = c301;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( z300 ).x,( z300 ).y,( z300 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_4289279309",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("p305",Parameter {name = "position", ty = V3F}),("q305",Parameter {name = "normal", ty = V3F}),("r305",Parameter {name = "diffuseUV", ty = V2F}),("s305",Parameter {name = "lightmapUV", ty = V2F}),("t305",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_4289279309",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 p305 ;\nin vec3 q305 ;\nin vec2 r305 ;\nin vec2 s305 ;\nin vec4 t305 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = r305;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( p305 ).x,( p305 ).y,( p305 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_4289279309 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_4289279309,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("n310",Parameter {name = "position", ty = V3F}),("o310",Parameter {name = "normal", ty = V3F}),("p310",Parameter {name = "diffuseUV", ty = V2F}),("q310",Parameter {name = "lightmapUV", ty = V2F}),("r310",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 n310 ;\nin vec3 o310 ;\nin vec2 p310 ;\nin vec2 q310 ;\nin vec4 r310 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = q310;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( n310 ).x,( n310 ).y,( n310 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2525124732",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("d315",Parameter {name = "position", ty = V3F}),("e315",Parameter {name = "normal", ty = V3F}),("f315",Parameter {name = "diffuseUV", ty = V2F}),("g315",Parameter {name = "lightmapUV", ty = V2F}),("h315",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_2525124732",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 d315 ;\nin vec3 e315 ;\nin vec2 f315 ;\nin vec2 g315 ;\nin vec4 h315 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = f315;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( d315 ).x,( d315 ).y,( d315 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2525124732 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2525124732,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("b320",Parameter {name = "position", ty = V3F}),("c320",Parameter {name = "normal", ty = V3F}),("d320",Parameter {name = "diffuseUV", ty = V2F}),("e320",Parameter {name = "lightmapUV", ty = V2F}),("f320",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 b320 ;\nin vec3 c320 ;\nin vec2 d320 ;\nin vec2 e320 ;\nin vec4 f320 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = e320;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( b320 ).x,( b320 ).y,( b320 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3071107621",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("r324",Parameter {name = "position", ty = V3F}),("s324",Parameter {name = "normal", ty = V3F}),("t324",Parameter {name = "diffuseUV", ty = V2F}),("u324",Parameter {name = "lightmapUV", ty = V2F}),("v324",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3071107621",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 r324 ;\nin vec3 s324 ;\nin vec2 t324 ;\nin vec2 u324 ;\nin vec4 v324 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = t324;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( r324 ).x,( r324 ).y,( r324 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3071107621 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3071107621,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("p329",Parameter {name = "position", ty = V3F}),("q329",Parameter {name = "normal", ty = V3F}),("r329",Parameter {name = "diffuseUV", ty = V2F}),("s329",Parameter {name = "lightmapUV", ty = V2F}),("t329",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 p329 ;\nin vec3 q329 ;\nin vec2 r329 ;\nin vec2 s329 ;\nin vec4 t329 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = s329;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( p329 ).x,( p329 ).y,( p329 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3921745736",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("f334",Parameter {name = "position", ty = V3F}),("g334",Parameter {name = "normal", ty = V3F}),("h334",Parameter {name = "diffuseUV", ty = V2F}),("i334",Parameter {name = "lightmapUV", ty = V2F}),("j334",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3921745736",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 f334 ;\nin vec3 g334 ;\nin vec2 h334 ;\nin vec2 i334 ;\nin vec4 j334 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = h334;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( f334 ).x,( f334 ).y,( f334 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3921745736 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3921745736,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("d339",Parameter {name = "position", ty = V3F}),("e339",Parameter {name = "normal", ty = V3F}),("f339",Parameter {name = "diffuseUV", ty = V2F}),("g339",Parameter {name = "lightmapUV", ty = V2F}),("h339",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 d339 ;\nin vec3 e339 ;\nin vec2 f339 ;\nin vec2 g339 ;\nin vec4 h339 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = g339;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( d339 ).x,( d339 ).y,( d339 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3647563961",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("t343",Parameter {name = "position", ty = V3F}),("u343",Parameter {name = "normal", ty = V3F}),("v343",Parameter {name = "diffuseUV", ty = V2F}),("w343",Parameter {name = "lightmapUV", ty = V2F}),("x343",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3647563961",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 t343 ;\nin vec3 u343 ;\nin vec2 v343 ;\nin vec2 w343 ;\nin vec4 x343 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = v343;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( t343 ).x,( t343 ).y,( t343 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3647563961 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3647563961,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("r348",Parameter {name = "position", ty = V3F}),("s348",Parameter {name = "normal", ty = V3F}),("t348",Parameter {name = "diffuseUV", ty = V2F}),("u348",Parameter {name = "lightmapUV", ty = V2F}),("v348",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 r348 ;\nin vec3 s348 ;\nin vec2 t348 ;\nin vec2 u348 ;\nin vec4 v348 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = u348;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( r348 ).x,( r348 ).y,( r348 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3593923076",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("h353",Parameter {name = "position", ty = V3F}),("i353",Parameter {name = "normal", ty = V3F}),("j353",Parameter {name = "diffuseUV", ty = V2F}),("k353",Parameter {name = "lightmapUV", ty = V2F}),("l353",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3593923076",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 h353 ;\nin vec3 i353 ;\nin vec2 j353 ;\nin vec2 k353 ;\nin vec4 l353 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = j353;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( h353 ).x,( h353 ).y,( h353 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3593923076 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3593923076,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("f358",Parameter {name = "position", ty = V3F}),("g358",Parameter {name = "normal", ty = V3F}),("h358",Parameter {name = "diffuseUV", ty = V2F}),("i358",Parameter {name = "lightmapUV", ty = V2F}),("j358",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 f358 ;\nin vec3 g358 ;\nin vec2 h358 ;\nin vec2 i358 ;\nin vec4 j358 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = i358;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( f358 ).x,( f358 ).y,( f358 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_1435187472",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("v362",Parameter {name = "position", ty = V3F}),("w362",Parameter {name = "normal", ty = V3F}),("x362",Parameter {name = "diffuseUV", ty = V2F}),("y362",Parameter {name = "lightmapUV", ty = V2F}),("z362",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_1435187472",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 v362 ;\nin vec3 w362 ;\nin vec2 x362 ;\nin vec2 y362 ;\nin vec4 z362 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = x362;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( v362 ).x,( v362 ).y,( v362 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_1435187472 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_1435187472,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("t367",Parameter {name = "position", ty = V3F}),("u367",Parameter {name = "normal", ty = V3F}),("v367",Parameter {name = "diffuseUV", ty = V2F}),("w367",Parameter {name = "lightmapUV", ty = V2F}),("x367",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 t367 ;\nin vec3 u367 ;\nin vec2 v367 ;\nin vec2 w367 ;\nin vec4 x367 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = w367;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( t367 ).x,( t367 ).y,( t367 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_1318715778",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("j372",Parameter {name = "position", ty = V3F}),("k372",Parameter {name = "normal", ty = V3F}),("l372",Parameter {name = "diffuseUV", ty = V2F}),("m372",Parameter {name = "lightmapUV", ty = V2F}),("n372",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_1318715778",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 j372 ;\nin vec3 k372 ;\nin vec2 l372 ;\nin vec2 m372 ;\nin vec4 n372 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = l372;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( j372 ).x,( j372 ).y,( j372 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_1318715778 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_1318715778,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("h377",Parameter {name = "position", ty = V3F}),("i377",Parameter {name = "normal", ty = V3F}),("j377",Parameter {name = "diffuseUV", ty = V2F}),("k377",Parameter {name = "lightmapUV", ty = V2F}),("l377",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 h377 ;\nin vec3 i377 ;\nin vec2 j377 ;\nin vec2 k377 ;\nin vec4 l377 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = k377;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( h377 ).x,( h377 ).y,( h377 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_442868841",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a382",Parameter {name = "lightmapUV", ty = V2F}),("b382",Parameter {name = "color", ty = V4F}),("x381",Parameter {name = "position", ty = V3F}),("y381",Parameter {name = "normal", ty = V3F}),("z381",Parameter {name = "diffuseUV", ty = V2F})], programInTextures = fromList [("Tex_442868841",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 x381 ;\nin vec3 y381 ;\nin vec2 z381 ;\nin vec2 a382 ;\nin vec4 b382 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = z381;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( x381 ).x,( x381 ).y,( x381 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_442868841 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_442868841,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("v386",Parameter {name = "position", ty = V3F}),("w386",Parameter {name = "normal", ty = V3F}),("x386",Parameter {name = "diffuseUV", ty = V2F}),("y386",Parameter {name = "lightmapUV", ty = V2F}),("z386",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 v386 ;\nin vec3 w386 ;\nin vec2 x386 ;\nin vec2 y386 ;\nin vec4 z386 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = y386;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( v386 ).x,( v386 ).y,( v386 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2289735512",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("l391",Parameter {name = "position", ty = V3F}),("m391",Parameter {name = "normal", ty = V3F}),("n391",Parameter {name = "diffuseUV", ty = V2F}),("o391",Parameter {name = "lightmapUV", ty = V2F}),("p391",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_2289735512",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 l391 ;\nin vec3 m391 ;\nin vec2 n391 ;\nin vec2 o391 ;\nin vec4 p391 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = n391;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( l391 ).x,( l391 ).y,( l391 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2289735512 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2289735512,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("j396",Parameter {name = "position", ty = V3F}),("k396",Parameter {name = "normal", ty = V3F}),("l396",Parameter {name = "diffuseUV", ty = V2F}),("m396",Parameter {name = "lightmapUV", ty = V2F}),("n396",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 j396 ;\nin vec3 k396 ;\nin vec2 l396 ;\nin vec2 m396 ;\nin vec4 n396 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = m396;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( j396 ).x,( j396 ).y,( j396 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3939430064",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a401",Parameter {name = "normal", ty = V3F}),("b401",Parameter {name = "diffuseUV", ty = V2F}),("c401",Parameter {name = "lightmapUV", ty = V2F}),("d401",Parameter {name = "color", ty = V4F}),("z400",Parameter {name = "position", ty = V3F})], programInTextures = fromList [("Tex_3939430064",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 z400 ;\nin vec3 a401 ;\nin vec2 b401 ;\nin vec2 c401 ;\nin vec4 d401 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = b401;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( z400 ).x,( z400 ).y,( z400 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3939430064 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3939430064,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a406",Parameter {name = "lightmapUV", ty = V2F}),("b406",Parameter {name = "color", ty = V4F}),("x405",Parameter {name = "position", ty = V3F}),("y405",Parameter {name = "normal", ty = V3F}),("z405",Parameter {name = "diffuseUV", ty = V2F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 x405 ;\nin vec3 y405 ;\nin vec2 z405 ;\nin vec2 a406 ;\nin vec4 b406 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = a406;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( x405 ).x,( x405 ).y,( x405 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3012001075",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("n410",Parameter {name = "position", ty = V3F}),("o410",Parameter {name = "normal", ty = V3F}),("p410",Parameter {name = "diffuseUV", ty = V2F}),("q410",Parameter {name = "lightmapUV", ty = V2F}),("r410",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3012001075",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 n410 ;\nin vec3 o410 ;\nin vec2 p410 ;\nin vec2 q410 ;\nin vec4 r410 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = p410;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( n410 ).x,( n410 ).y,( n410 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3012001075 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3012001075,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("l415",Parameter {name = "position", ty = V3F}),("m415",Parameter {name = "normal", ty = V3F}),("n415",Parameter {name = "diffuseUV", ty = V2F}),("o415",Parameter {name = "lightmapUV", ty = V2F}),("p415",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 l415 ;\nin vec3 m415 ;\nin vec2 n415 ;\nin vec2 o415 ;\nin vec4 p415 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = o415;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( l415 ).x,( l415 ).y,( l415 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3768122504",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("b420",Parameter {name = "position", ty = V3F}),("c420",Parameter {name = "normal", ty = V3F}),("d420",Parameter {name = "diffuseUV", ty = V2F}),("e420",Parameter {name = "lightmapUV", ty = V2F}),("f420",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3768122504",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 b420 ;\nin vec3 c420 ;\nin vec2 d420 ;\nin vec2 e420 ;\nin vec4 f420 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = d420;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( b420 ).x,( b420 ).y,( b420 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3768122504 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3768122504,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("a425",Parameter {name = "normal", ty = V3F}),("b425",Parameter {name = "diffuseUV", ty = V2F}),("c425",Parameter {name = "lightmapUV", ty = V2F}),("d425",Parameter {name = "color", ty = V4F}),("z424",Parameter {name = "position", ty = V3F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 z424 ;\nin vec3 a425 ;\nin vec2 b425 ;\nin vec2 c425 ;\nin vec4 d425 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = c425;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( z424 ).x,( z424 ).y,( z424 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2634868983",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("p429",Parameter {name = "position", ty = V3F}),("q429",Parameter {name = "normal", ty = V3F}),("r429",Parameter {name = "diffuseUV", ty = V2F}),("s429",Parameter {name = "lightmapUV", ty = V2F}),("t429",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_2634868983",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 p429 ;\nin vec3 q429 ;\nin vec2 r429 ;\nin vec2 s429 ;\nin vec4 t429 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = r429;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( p429 ).x,( p429 ).y,( p429 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2634868983 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2634868983,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("n434",Parameter {name = "position", ty = V3F}),("o434",Parameter {name = "normal", ty = V3F}),("p434",Parameter {name = "diffuseUV", ty = V2F}),("q434",Parameter {name = "lightmapUV", ty = V2F}),("r434",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 n434 ;\nin vec3 o434 ;\nin vec2 p434 ;\nin vec2 q434 ;\nin vec4 r434 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = q434;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( n434 ).x,( n434 ).y,( n434 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3269743316",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("d439",Parameter {name = "position", ty = V3F}),("e439",Parameter {name = "normal", ty = V3F}),("f439",Parameter {name = "diffuseUV", ty = V2F}),("g439",Parameter {name = "lightmapUV", ty = V2F}),("h439",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3269743316",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 d439 ;\nin vec3 e439 ;\nin vec2 f439 ;\nin vec2 g439 ;\nin vec4 h439 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = f439;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( d439 ).x,( d439 ).y,( d439 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3269743316 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3269743316,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("b444",Parameter {name = "position", ty = V3F}),("c444",Parameter {name = "normal", ty = V3F}),("d444",Parameter {name = "diffuseUV", ty = V2F}),("e444",Parameter {name = "lightmapUV", ty = V2F}),("f444",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 b444 ;\nin vec3 c444 ;\nin vec2 d444 ;\nin vec2 e444 ;\nin vec4 f444 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = e444;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( b444 ).x,( b444 ).y,( b444 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3617993418",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("r448",Parameter {name = "position", ty = V3F}),("s448",Parameter {name = "normal", ty = V3F}),("t448",Parameter {name = "diffuseUV", ty = V2F}),("u448",Parameter {name = "lightmapUV", ty = V2F}),("v448",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3617993418",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 r448 ;\nin vec3 s448 ;\nin vec2 t448 ;\nin vec2 u448 ;\nin vec4 v448 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = t448;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( r448 ).x,( r448 ).y,( r448 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3617993418 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3617993418,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("p453",Parameter {name = "position", ty = V3F}),("q453",Parameter {name = "normal", ty = V3F}),("r453",Parameter {name = "diffuseUV", ty = V2F}),("s453",Parameter {name = "lightmapUV", ty = V2F}),("t453",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 p453 ;\nin vec3 q453 ;\nin vec2 r453 ;\nin vec2 s453 ;\nin vec4 t453 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = s453;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( p453 ).x,( p453 ).y,( p453 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_1243894392",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("f458",Parameter {name = "position", ty = V3F}),("g458",Parameter {name = "normal", ty = V3F}),("h458",Parameter {name = "diffuseUV", ty = V2F}),("i458",Parameter {name = "lightmapUV", ty = V2F}),("j458",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_1243894392",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 f458 ;\nin vec3 g458 ;\nin vec2 h458 ;\nin vec2 i458 ;\nin vec4 j458 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = h458;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( f458 ).x,( f458 ).y,( f458 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_1243894392 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_1243894392,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("d463",Parameter {name = "position", ty = V3F}),("e463",Parameter {name = "normal", ty = V3F}),("f463",Parameter {name = "diffuseUV", ty = V2F}),("g463",Parameter {name = "lightmapUV", ty = V2F}),("h463",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 d463 ;\nin vec3 e463 ;\nin vec2 f463 ;\nin vec2 g463 ;\nin vec4 h463 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = g463;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( d463 ).x,( d463 ).y,( d463 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2966885788",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("t467",Parameter {name = "position", ty = V3F}),("u467",Parameter {name = "normal", ty = V3F}),("v467",Parameter {name = "diffuseUV", ty = V2F}),("w467",Parameter {name = "lightmapUV", ty = V2F}),("x467",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_2966885788",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 t467 ;\nin vec3 u467 ;\nin vec2 v467 ;\nin vec2 w467 ;\nin vec4 x467 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = v467;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( t467 ).x,( t467 ).y,( t467 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2966885788 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2966885788,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("r472",Parameter {name = "position", ty = V3F}),("s472",Parameter {name = "normal", ty = V3F}),("t472",Parameter {name = "diffuseUV", ty = V2F}),("u472",Parameter {name = "lightmapUV", ty = V2F}),("v472",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 r472 ;\nin vec3 s472 ;\nin vec2 t472 ;\nin vec2 u472 ;\nin vec4 v472 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = u472;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( r472 ).x,( r472 ).y,( r472 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_1250438154",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("h477",Parameter {name = "position", ty = V3F}),("i477",Parameter {name = "normal", ty = V3F}),("j477",Parameter {name = "diffuseUV", ty = V2F}),("k477",Parameter {name = "lightmapUV", ty = V2F}),("l477",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_1250438154",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 h477 ;\nin vec3 i477 ;\nin vec2 j477 ;\nin vec2 k477 ;\nin vec4 l477 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = j477;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( h477 ).x,( h477 ).y,( h477 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_1250438154 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_1250438154,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("f482",Parameter {name = "position", ty = V3F}),("g482",Parameter {name = "normal", ty = V3F}),("h482",Parameter {name = "diffuseUV", ty = V2F}),("i482",Parameter {name = "lightmapUV", ty = V2F}),("j482",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 f482 ;\nin vec3 g482 ;\nin vec2 h482 ;\nin vec2 i482 ;\nin vec4 j482 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = i482;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( f482 ).x,( f482 ).y,( f482 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_2490648334",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("v486",Parameter {name = "position", ty = V3F}),("w486",Parameter {name = "normal", ty = V3F}),("x486",Parameter {name = "diffuseUV", ty = V2F}),("y486",Parameter {name = "lightmapUV", ty = V2F}),("z486",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_2490648334",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 v486 ;\nin vec3 w486 ;\nin vec2 x486 ;\nin vec2 y486 ;\nin vec4 z486 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = x486;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( v486 ).x,( v486 ).y,( v486 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_2490648334 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_2490648334,vv0 ) );\n}\n"},Program {programUniforms = fromList [("LightMap",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("t491",Parameter {name = "position", ty = V3F}),("u491",Parameter {name = "normal", ty = V3F}),("v491",Parameter {name = "diffuseUV", ty = V2F}),("w491",Parameter {name = "lightmapUV", ty = V2F}),("x491",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("LightMap",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 t491 ;\nin vec3 u491 ;\nin vec2 v491 ;\nin vec2 w491 ;\nin vec4 x491 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = w491;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( t491 ).x,( t491 ).y,( t491 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D LightMap ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( LightMap,vv0 ) );\n}\n"},Program {programUniforms = fromList [("Tex_3694494180",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], programStreams = fromList [("j496",Parameter {name = "position", ty = V3F}),("k496",Parameter {name = "normal", ty = V3F}),("l496",Parameter {name = "diffuseUV", ty = V2F}),("m496",Parameter {name = "lightmapUV", ty = V2F}),("n496",Parameter {name = "color", ty = V4F})], programInTextures = fromList [("Tex_3694494180",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float identityLight ;\nuniform mat4 viewProj ;\nuniform mat4 worldMat ;\nin vec3 j496 ;\nin vec3 k496 ;\nin vec2 l496 ;\nin vec2 m496 ;\nin vec4 n496 ;\nsmooth out vec2 vv0 ;\nsmooth out vec4 vv1 ;\nvoid main() {\nvv0 = l496;\nvv1 = vec4 ( identityLight,identityLight,identityLight,1.0 );\ngl_Position = ( viewProj ) * ( ( worldMat ) * ( vec4 ( ( j496 ).x,( j496 ).y,( j496 ).z,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D Tex_3694494180 ;\nsmooth in vec2 vv0 ;\nsmooth in vec4 vv1 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv1 ) * ( texture2D ( Tex_3694494180,vv0 ) );\n}\n"}], slots = [Slot {slotName = "missing shader", slotStreams = fromList [("color",V4F),("position",V3F)], slotUniforms = fromList [("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [0,1]},Slot {slotName = "textures/gothic_block/demon_block15fx", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3562558025",FTexture2D),("Tex_47037129",FTexture2D),("time",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [2,3,4]},Slot {slotName = "textures/gothic_trim/pitted_rust2_trans", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_1910997598",FTexture2D),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [5,6]},Slot {slotName = "textures/gothic_door/skullarch_b", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3416962274",FTexture2D),("Tex_4077187607",FTexture2D),("time",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [7,8,9]},Slot {slotName = "textures/gothic_block/blocks11b", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_4288602201",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [10,11]},Slot {slotName = "textures/gothic_trim/baseboard09_l2", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3202786139",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [12,13]},Slot {slotName = "textures/gothic_door/skull_door_e", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_4255130505",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [14,15]},Slot {slotName = "textures/gothic_wall/supportborder_blue_b", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_564811775",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [16,17]},Slot {slotName = "textures/gothic_door/km_arena1archfinalc_mid", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2073154888",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [18,19]},Slot {slotName = "textures/gothic_trim/pitted_rust2", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2099456856",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [20,21]},Slot {slotName = "textures/gothic_floor/metalbridge06", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_1581337759",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [22,23]},Slot {slotName = "textures/gothic_trim/metaldemonkillblock", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_1062467595",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [24,25]},Slot {slotName = "textures/gothic_door/skullarch_c", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2024854890",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [26,27]},Slot {slotName = "textures/gothic_door/skull_door_a", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_1284708166",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [28,29]},Slot {slotName = "textures/gothic_wall/iron01_e", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2432583247",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [30,31]},Slot {slotName = "textures/gothic_trim/baseboard04", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_1002517541",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [32,33]},Slot {slotName = "textures/gothic_block/blocks18b", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2639119078",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [34,35]},Slot {slotName = "textures/gothic_trim/km_arena1tower4", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3479185666",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [36,37]},Slot {slotName = "textures/gothic_door/skullarch_a", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3448884269",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [38,39]},Slot {slotName = "textures/gothic_door/km_arena1archfinald_bot", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_1201212243",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [40,41]},Slot {slotName = "textures/gothic_trim/pitted_rust3", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3389727963",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [42,43]},Slot {slotName = "textures/gothic_floor/xstairtop4", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3836020895",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [44,45]},Slot {slotName = "textures/gothic_block/killblock_i", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_209322640",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [46,47]},Slot {slotName = "textures/gothic_trim/metalsupsolid", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2893650486",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [48,49]},Slot {slotName = "textures/gothic_floor/blocks17floor2", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3814342582",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [50,51]},Slot {slotName = "textures/gothic_door/skull_door_c", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_4189195777",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [52,53]},Slot {slotName = "textures/gothic_wall/skull4", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2239853403",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [54,55]},Slot {slotName = "textures/gothic_trim/baseboard09_e", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2367525081",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [56,57]},Slot {slotName = "textures/gothic_block/blocks15", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2523116863",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [58,59]},Slot {slotName = "textures/gothic_trim/baseboard09_o3", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2512757607",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [60,61]},Slot {slotName = "textures/gothic_door/skull_door_f", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_4289279309",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [62,63]},Slot {slotName = "textures/gothic_wall/supportborder_blue_c", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2525124732",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [64,65]},Slot {slotName = "textures/gothic_door/km_arena1archfinalc_top", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3071107621",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [66,67]},Slot {slotName = "textures/gothic_floor/metalbridge06broke", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3921745736",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [68,69]},Slot {slotName = "textures/gothic_block/killblock", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3647563961",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [70,71]},Slot {slotName = "textures/gothic_trim/metalsupport4b", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3593923076",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [72,73]},Slot {slotName = "textures/gothic_door/xian_tourneyarch_inside2", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_1435187472",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [74,75]},Slot {slotName = "textures/gothic_door/skull_door_b", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_1318715778",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [76,77]},Slot {slotName = "textures/gothic_wall/iron01_ntech3", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_442868841",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [78,79]},Slot {slotName = "textures/gothic_trim/baseboard09_c3", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2289735512",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [80,81]},Slot {slotName = "textures/gothic_block/blocks18c_3", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3939430064",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [82,83]},Slot {slotName = "textures/gothic_trim/km_arena1tower4_a", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3012001075",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [84,85]},Slot {slotName = "textures/gothic_door/km_arena1archfinald_mid", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3768122504",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [86,87]},Slot {slotName = "textures/gothic_trim/skullsvertgray02b", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2634868983",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [88,89]},Slot {slotName = "textures/gothic_floor/xstepborder3", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3269743316",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [90,91]},Slot {slotName = "textures/gothic_block/killblock_i4", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3617993418",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [92,93]},Slot {slotName = "textures/gothic_trim/pitted_rust", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_1243894392",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [94,95]},Slot {slotName = "textures/gothic_floor/largerblock3b", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2966885788",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [96,97]},Slot {slotName = "textures/gothic_door/skull_door_d", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_1250438154",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [98,99]},Slot {slotName = "textures/gothic_wall/slateroofc", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_2490648334",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [100,101]},Slot {slotName = "textures/gothic_trim/baseboard09_e2", slotStreams = fromList [("color",V4F),("diffuseUV",V2F),("lightmapUV",V2F),("normal",V3F),("position",V3F)], slotUniforms = fromList [("LightMap",FTexture2D),("Tex_3694494180",FTexture2D),("identityLight",Float),("viewProj",M44F),("worldMat",M44F)], slotPrimitive = Triangles, slotPrograms = [102,103]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 0.0)}],SetProgram 103,SetSamplerUniform "Tex_3694494180" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 50,SetProgram 102,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 50,SetProgram 101,SetSamplerUniform "Tex_2490648334" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 49,SetProgram 100,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 49,SetProgram 99,SetSamplerUniform "Tex_1250438154" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 48,SetProgram 98,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 48,SetProgram 97,SetSamplerUniform "Tex_2966885788" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 47,SetProgram 96,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 47,SetProgram 95,SetSamplerUniform "Tex_1243894392" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 46,SetProgram 94,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 46,SetProgram 93,SetSamplerUniform "Tex_3617993418" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 45,SetProgram 92,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 45,SetProgram 91,SetSamplerUniform "Tex_3269743316" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 44,SetProgram 90,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 44,SetProgram 89,SetSamplerUniform "Tex_2634868983" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 43,SetProgram 88,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 43,SetProgram 87,SetSamplerUniform "Tex_3768122504" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 42,SetProgram 86,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 42,SetProgram 85,SetSamplerUniform "Tex_3012001075" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 41,SetProgram 84,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 41,SetProgram 83,SetSamplerUniform "Tex_3939430064" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 40,SetProgram 82,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 40,SetProgram 81,SetSamplerUniform "Tex_2289735512" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 39,SetProgram 80,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 39,SetProgram 79,SetSamplerUniform "Tex_442868841" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 38,SetProgram 78,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 38,SetProgram 77,SetSamplerUniform "Tex_1318715778" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 37,SetProgram 76,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 37,SetProgram 75,SetSamplerUniform "Tex_1435187472" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 36,SetProgram 74,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 36,SetProgram 73,SetSamplerUniform "Tex_3593923076" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 35,SetProgram 72,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 35,SetProgram 71,SetSamplerUniform "Tex_3647563961" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 34,SetProgram 70,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 34,SetProgram 69,SetSamplerUniform "Tex_3921745736" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 33,SetProgram 68,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 33,SetProgram 67,SetSamplerUniform "Tex_3071107621" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 32,SetProgram 66,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 32,SetProgram 65,SetSamplerUniform "Tex_2525124732" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 31,SetProgram 64,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 31,SetProgram 63,SetSamplerUniform "Tex_4289279309" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 30,SetProgram 62,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 30,SetProgram 61,SetSamplerUniform "Tex_2512757607" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 29,SetProgram 60,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 29,SetProgram 59,SetSamplerUniform "Tex_2523116863" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 28,SetProgram 58,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 28,SetProgram 57,SetSamplerUniform "Tex_2367525081" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 27,SetProgram 56,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 27,SetProgram 55,SetSamplerUniform "Tex_2239853403" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 26,SetProgram 54,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 26,SetProgram 53,SetSamplerUniform "Tex_4189195777" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 25,SetProgram 52,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 25,SetProgram 51,SetSamplerUniform "Tex_3814342582" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 24,SetProgram 50,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 24,SetProgram 49,SetSamplerUniform "Tex_2893650486" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 23,SetProgram 48,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 23,SetProgram 47,SetSamplerUniform "Tex_209322640" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 22,SetProgram 46,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 22,SetProgram 45,SetSamplerUniform "Tex_3836020895" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 21,SetProgram 44,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 21,SetProgram 43,SetSamplerUniform "Tex_3389727963" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 20,SetProgram 42,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 20,SetProgram 41,SetSamplerUniform "Tex_1201212243" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 19,SetProgram 40,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 19,SetProgram 39,SetSamplerUniform "Tex_3448884269" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 18,SetProgram 38,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 18,SetProgram 37,SetSamplerUniform "Tex_3479185666" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 17,SetProgram 36,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 17,SetProgram 35,SetSamplerUniform "Tex_2639119078" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 16,SetProgram 34,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 16,SetProgram 33,SetSamplerUniform "Tex_1002517541" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 15,SetProgram 32,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 15,SetProgram 31,SetSamplerUniform "Tex_2432583247" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 14,SetProgram 30,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 14,SetProgram 29,SetSamplerUniform "Tex_1284708166" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 13,SetProgram 28,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 13,SetProgram 27,SetSamplerUniform "Tex_2024854890" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 12,SetProgram 26,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 12,SetProgram 25,SetSamplerUniform "Tex_1062467595" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 11,SetProgram 24,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 11,SetProgram 23,SetSamplerUniform "Tex_1581337759" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 10,SetProgram 22,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 10,SetProgram 21,SetSamplerUniform "Tex_2099456856" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 9,SetProgram 20,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 9,SetProgram 19,SetSamplerUniform "Tex_2073154888" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 8,SetProgram 18,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 8,SetProgram 17,SetSamplerUniform "Tex_564811775" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 7,SetProgram 16,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 7,SetProgram 15,SetSamplerUniform "Tex_4255130505" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 6,SetProgram 14,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 6,SetProgram 13,SetSamplerUniform "Tex_3202786139" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 5,SetProgram 12,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 5,SetProgram 11,SetSamplerUniform "Tex_4288602201" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 4,SetProgram 10,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 4,SetProgram 9,SetSamplerUniform "Tex_3416962274" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 3,SetProgram 8,SetSamplerUniform "Tex_4077187607" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal False,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = SrcAlpha, colorFDst = OneMinusSrcAlpha, alphaFSrc = SrcAlpha, alphaFDst = OneMinusSrcAlpha, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 3,SetProgram 7,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal False,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 3,SetProgram 6,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 2,SetProgram 5,SetSamplerUniform "Tex_1910997598" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal False,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = Zero, alphaFSrc = DstColor, alphaFDst = Zero, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 2,SetProgram 4,SetSamplerUniform "Tex_47037129" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 1,SetProgram 3,SetSamplerUniform "Tex_3562558025" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal False,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = SrcAlpha, colorFDst = OneMinusSrcAlpha, alphaFSrc = SrcAlpha, alphaFDst = OneMinusSrcAlpha, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 1,SetProgram 2,SetSamplerUniform "LightMap" 0,SetRasterContext (TriangleCtx (CullFront CCW) PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal False,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = DstColor, colorFDst = OneMinusDstAlpha, alphaFSrc = DstColor, alphaFDst = OneMinusDstAlpha, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 1,SetProgram 1,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less False,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = Min, colorFSrc = One, colorFDst = One, alphaFSrc = One, alphaFDst = One, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 0,SetRasterContext (TriangleCtx CullNone (PolygonLine 1.0) NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/HyperbolicParaboloic.out b/testdata/HyperbolicParaboloic.out index a9537f7c..50818578 100644 --- a/testdata/HyperbolicParaboloic.out +++ b/testdata/HyperbolicParaboloic.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F),("Mouse",V2F)], programStreams = fromList [("y1",Parameter {name = "attribute_0", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nuniform vec2 Mouse ;\nin vec3 y1 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = vec4 ( ( y1 ).x,( y1 ).y,( y1 ).z,1.0 );\ngl_Position = ( ( MVP ) * ( vec4 ( ( ( Mouse ).y ) * ( ( y1 ).x ),( ( ( 0.5 ) * ( ( Mouse ).x ) ) * ( ( y1 ).x ) ) * ( ( y1 ).y ),( ( Mouse ).y ) * ( ( y1 ).y ),1.0 ) ) ) * ( vec4 ( 0.1,0.1,0.1,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [], streams = [StreamData {streamData = fromList [("attribute_0",VFloatArray [-3.0,-3.0,0.0,-3.0,3.0,0.0,-2.0,-3.0,0.0,-2.0,3.0,0.0,-1.0,-3.0,0.0,-1.0,3.0,0.0,0.0,-3.0,0.0,0.0,3.0,0.0,1.0,-3.0,0.0,1.0,3.0,0.0,2.0,-3.0,0.0,2.0,3.0,0.0,3.0,-3.0,0.0,3.0,3.0,0.0,-3.0,-3.0,0.0,3.0,-3.0,0.0,-3.0,-2.0,0.0,3.0,-2.0,0.0,-3.0,-1.0,0.0,3.0,-1.0,0.0,-3.0,0.0,0.0,3.0,0.0,0.0,-3.0,1.0,0.0,3.0,1.0,0.0,-3.0,2.0,0.0,3.0,2.0,0.0,-3.0,3.0,0.0,3.0,3.0,0.0])], streamType = fromList [("attribute_0",V3F)], streamPrimitive = Lines, streamPrograms = [0]}], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 1.0 1.0 1.0)}],SetProgram 0,SetRasterContext (LineCtx 1.0 LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderStream 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F),("Mouse",V2F)], programStreams = fromList [("y1",Parameter {name = "attribute_0", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nuniform vec2 Mouse ;\nin vec3 y1 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = vec4 ( ( y1 ).x,( y1 ).y,( y1 ).z,1.0 );\ngl_Position = ( ( MVP ) * ( vec4 ( ( ( Mouse ).y ) * ( ( y1 ).x ),( ( ( 0.5 ) * ( ( Mouse ).x ) ) * ( ( y1 ).x ) ) * ( ( y1 ).y ),( ( Mouse ).y ) * ( ( y1 ).y ),1.0 ) ) ) * ( vec4 ( 0.1,0.1,0.1,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [], streams = [StreamData {streamData = fromList [("attribute_0",VFloatArray [-3.0,-3.0,0.0,-3.0,3.0,0.0,-2.0,-3.0,0.0,-2.0,3.0,0.0,-1.0,-3.0,0.0,-1.0,3.0,0.0,0.0,-3.0,0.0,0.0,3.0,0.0,1.0,-3.0,0.0,1.0,3.0,0.0,2.0,-3.0,0.0,2.0,3.0,0.0,3.0,-3.0,0.0,3.0,3.0,0.0,-3.0,-3.0,0.0,3.0,-3.0,0.0,-3.0,-2.0,0.0,3.0,-2.0,0.0,-3.0,-1.0,0.0,3.0,-1.0,0.0,-3.0,0.0,0.0,3.0,0.0,0.0,-3.0,1.0,0.0,3.0,1.0,0.0,-3.0,2.0,0.0,3.0,2.0,0.0,-3.0,3.0,0.0,3.0,3.0,0.0])], streamType = fromList [("attribute_0",V3F)], streamPrimitive = Lines, streamPrograms = [0]}], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 1.0 1.0 1.0)}],SetProgram 0,SetRasterContext (LineCtx 1.0 LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderStream 0]} \ No newline at end of file diff --git a/testdata/Hyperboloid.out b/testdata/Hyperboloid.out index fb64558d..437b0242 100644 --- a/testdata/Hyperboloid.out +++ b/testdata/Hyperboloid.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F),("Mouse",V2F)], programStreams = fromList [("y1",Parameter {name = "attribute_0", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nuniform vec2 Mouse ;\nin vec3 y1 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = vec4 ( ( y1 ).x,( y1 ).y,( y1 ).z,1.0 );\ngl_Position = ( ( MVP ) * ( vec4 ( ( ( 2.0 ) * ( ( Mouse ).y ) ) * ( sin ( ( ( 0.7 ) * ( ( y1 ).x ) ) + ( ( ( Mouse ).x ) * ( ( y1 ).y ) ) ) ),( y1 ).y,( ( 2.0 ) * ( ( Mouse ).y ) ) * ( cos ( ( ( 0.7 ) * ( ( y1 ).x ) ) + ( ( ( Mouse ).x ) * ( ( y1 ).y ) ) ) ),1.0 ) ) ) * ( vec4 ( 0.1,0.1,0.1,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [], streams = [StreamData {streamData = fromList [("attribute_0",VFloatArray [-5.0,-3.0,0.0,-5.0,3.0,0.0,-4.0,-3.0,0.0,-4.0,3.0,0.0,-3.0,-3.0,0.0,-3.0,3.0,0.0,-2.0,-3.0,0.0,-2.0,3.0,0.0,-1.0,-3.0,0.0,-1.0,3.0,0.0,0.0,-3.0,0.0,0.0,3.0,0.0,1.0,-3.0,0.0,1.0,3.0,0.0,2.0,-3.0,0.0,2.0,3.0,0.0,3.0,-3.0,0.0,3.0,3.0,0.0,4.0,-3.0,0.0,4.0,3.0,0.0,5.0,-3.0,0.0,5.0,3.0,0.0])], streamType = fromList [("attribute_0",V3F)], streamPrimitive = Lines, streamPrograms = [0]}], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 1.0 1.0 1.0)}],SetProgram 0,SetRasterContext (LineCtx 1.0 LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderStream 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F),("Mouse",V2F)], programStreams = fromList [("y1",Parameter {name = "attribute_0", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nuniform vec2 Mouse ;\nin vec3 y1 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = vec4 ( ( y1 ).x,( y1 ).y,( y1 ).z,1.0 );\ngl_Position = ( ( MVP ) * ( vec4 ( ( ( 2.0 ) * ( ( Mouse ).y ) ) * ( sin ( ( ( 0.7 ) * ( ( y1 ).x ) ) + ( ( ( Mouse ).x ) * ( ( y1 ).y ) ) ) ),( y1 ).y,( ( 2.0 ) * ( ( Mouse ).y ) ) * ( cos ( ( ( 0.7 ) * ( ( y1 ).x ) ) + ( ( ( Mouse ).x ) * ( ( y1 ).y ) ) ) ),1.0 ) ) ) * ( vec4 ( 0.1,0.1,0.1,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [], streams = [StreamData {streamData = fromList [("attribute_0",VFloatArray [-5.0,-3.0,0.0,-5.0,3.0,0.0,-4.0,-3.0,0.0,-4.0,3.0,0.0,-3.0,-3.0,0.0,-3.0,3.0,0.0,-2.0,-3.0,0.0,-2.0,3.0,0.0,-1.0,-3.0,0.0,-1.0,3.0,0.0,0.0,-3.0,0.0,0.0,3.0,0.0,1.0,-3.0,0.0,1.0,3.0,0.0,2.0,-3.0,0.0,2.0,3.0,0.0,3.0,-3.0,0.0,3.0,3.0,0.0,4.0,-3.0,0.0,4.0,3.0,0.0,5.0,-3.0,0.0,5.0,3.0,0.0])], streamType = fromList [("attribute_0",V3F)], streamPrimitive = Lines, streamPrograms = [0]}], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 1.0 1.0 1.0)}],SetProgram 0,SetRasterContext (LineCtx 1.0 LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderStream 0]} \ No newline at end of file diff --git a/testdata/NewStyle.out b/testdata/NewStyle.out index 1161fe2d..9b1b5d3e 100644 --- a/testdata/NewStyle.out +++ b/testdata/NewStyle.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("z1",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 z1 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = z1;\ngl_Position = ( ( MVP ) * ( z1 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.1 0.0 0.2 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("z1",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 z1 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = z1;\ngl_Position = ( ( MVP ) * ( z1 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.1 0.0 0.2 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/PrimReduce.out b/testdata/PrimReduce.out index f2b974a7..681cd9fe 100644 --- a/testdata/PrimReduce.out +++ b/testdata/PrimReduce.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [], programStreams = fromList [("v1",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 v1 ;\nvoid main() {\ngl_Position = ( ( mat4 ( vec4 ( cos ( 3.0 ),( 0.0 ) - ( sin ( 3.0 ) ),0.0,0.0 ),vec4 ( sin ( 3.0 ),cos ( 3.0 ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( v1 ) ) * ( vec4 ( 0.1,0.1,0.1,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nout vec4 f0 ;\nvoid main() {\nf0 = vec4 ( 0.0,0.0,1.0,1.0 );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [], programStreams = fromList [("v1",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 v1 ;\nvoid main() {\ngl_Position = ( ( mat4 ( vec4 ( cos ( 3.0 ),( 0.0 ) - ( sin ( 3.0 ) ),0.0,0.0 ),vec4 ( sin ( 3.0 ),cos ( 3.0 ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( v1 ) ) * ( vec4 ( 0.1,0.1,0.1,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nout vec4 f0 ;\nvoid main() {\nf0 = vec4 ( 0.0,0.0,1.0,1.0 );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/Spiral.out b/testdata/Spiral.out index da8b06bc..416aa45c 100644 --- a/testdata/Spiral.out +++ b/testdata/Spiral.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F),("Mouse",V2F)], programStreams = fromList [("y1",Parameter {name = "attribute_0", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nuniform vec2 Mouse ;\nin vec3 y1 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = vec4 ( ( y1 ).x,( y1 ).y,( y1 ).z,1.0 );\ngl_Position = ( ( MVP ) * ( vec4 ( ( exp ( ( ( ( Mouse ).x ) - ( 0.5 ) ) * ( ( y1 ).x ) ) ) * ( sin ( ( 0.9 ) * ( ( y1 ).x ) ) ),( exp ( ( ( ( Mouse ).x ) - ( 0.5 ) ) * ( ( y1 ).x ) ) ) * ( cos ( ( 0.9 ) * ( ( y1 ).x ) ) ),( ( Mouse ).y ) * ( ( 0.9 ) * ( ( y1 ).x ) ),1.0 ) ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [], streams = [StreamData {streamData = fromList [("attribute_0",VFloatArray [-5.0,0.0,0.0,-4.0,0.0,0.0,-4.0,0.0,0.0,-3.0,0.0,0.0,-3.0,0.0,0.0,-2.0,0.0,0.0,-2.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,2.0,0.0,0.0,2.0,0.0,0.0,3.0,0.0,0.0,3.0,0.0,0.0,4.0,0.0,0.0,4.0,0.0,0.0,5.0,0.0,0.0])], streamType = fromList [("attribute_0",V3F)], streamPrimitive = Lines, streamPrograms = [0]}], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 1.0 1.0 1.0)}],SetProgram 0,SetRasterContext (LineCtx 1.0 LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderStream 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F),("Mouse",V2F)], programStreams = fromList [("y1",Parameter {name = "attribute_0", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nuniform vec2 Mouse ;\nin vec3 y1 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = vec4 ( ( y1 ).x,( y1 ).y,( y1 ).z,1.0 );\ngl_Position = ( ( MVP ) * ( vec4 ( ( exp ( ( ( ( Mouse ).x ) - ( 0.5 ) ) * ( ( y1 ).x ) ) ) * ( sin ( ( 0.9 ) * ( ( y1 ).x ) ) ),( exp ( ( ( ( Mouse ).x ) - ( 0.5 ) ) * ( ( y1 ).x ) ) ) * ( cos ( ( 0.9 ) * ( ( y1 ).x ) ) ),( ( Mouse ).y ) * ( ( 0.9 ) * ( ( y1 ).x ) ),1.0 ) ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [], streams = [StreamData {streamData = fromList [("attribute_0",VFloatArray [-5.0,0.0,0.0,-4.0,0.0,0.0,-4.0,0.0,0.0,-3.0,0.0,0.0,-3.0,0.0,0.0,-2.0,0.0,0.0,-2.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,2.0,0.0,0.0,2.0,0.0,0.0,3.0,0.0,0.0,3.0,0.0,0.0,4.0,0.0,0.0,4.0,0.0,0.0,5.0,0.0,0.0])], streamType = fromList [("attribute_0",V3F)], streamPrimitive = Lines, streamPrograms = [0]}], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 1.0 1.0 1.0)}],SetProgram 0,SetRasterContext (LineCtx 1.0 LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderStream 0]} \ No newline at end of file diff --git a/testdata/editor-examples/Clear.out b/testdata/editor-examples/Clear.out index 4ba5a209..e4059e4d 100644 --- a/testdata/editor-examples/Clear.out +++ b/testdata/editor-examples/Clear.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [], slots = [], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 1.0 0.0 1.0)}]]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [], slots = [], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 1.0 0.0 1.0)}]]} \ No newline at end of file diff --git a/testdata/editor-examples/Cube.out b/testdata/editor-examples/Cube.out index 3592b011..ebcb8030 100644 --- a/testdata/editor-examples/Cube.out +++ b/testdata/editor-examples/Cube.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("s1",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 s1 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = s1;\ngl_Position = ( ( MVP ) * ( s1 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.5 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("s1",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 s1 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = s1;\ngl_Position = ( ( MVP ) * ( s1 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.5 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/editor-examples/Heartbeat.out b/testdata/editor-examples/Heartbeat.out index 105a96bc..21d9a9c0 100644 --- a/testdata/editor-examples/Heartbeat.out +++ b/testdata/editor-examples/Heartbeat.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 128 128), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 128 128), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0}], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 0 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 1 0 Nothing)}]}], programs = [Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("l9",Parameter {name = "position4", ty = V4F}),("m9",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 l9 ;\nin vec2 m9 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = m9;\ngl_Position = ( l9 ) * ( vec4 ( 1.0,1.0,1.0,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).x ) - ( 0.85 ) ) * ( ( ( vv0 ).x ) - ( 0.85 ) ) ) + ( ( ( ( vv0 ).y ) - ( 0.85 ) ) * ( ( ( vv0 ).y ) - ( 0.85 ) ) ) ) + ( ( 5.0e-4 ) * ( sin ( ( ( 3.0 ) * ( atan ( ( ( vv0 ).x ) - ( 0.85 ),( ( vv0 ).y ) - ( 0.85 ) ) ) ) + ( ( 15.0 ) * ( Time ) ) ) ) ) ) < ( ( 5.0e-3 ) * ( abs ( ( sin ( ( Time ) * ( 4.0 ) ) ) - ( 0.37 ) ) ) ) ? vec4 ( 0.0,0.0,0.5,1.0 ) : ( ( ( ( ( ( vv0 ).x ) - ( 0.85 ) ) * ( ( ( vv0 ).x ) - ( 0.85 ) ) ) + ( ( ( ( vv0 ).y ) - ( 0.85 ) ) * ( ( ( vv0 ).y ) - ( 0.85 ) ) ) ) + ( ( 2.0e-3 ) * ( sin ( ( ( 5.0 ) * ( atan ( ( ( vv0 ).x ) - ( 0.85 ),( ( vv0 ).y ) - ( 0.85 ) ) ) ) - ( ( 5.0 ) * ( Time ) ) ) ) ) ) < ( ( 2.0e-2 ) * ( abs ( ( sin ( ( Time ) * ( 4.0 ) ) ) - ( 0.37 ) ) ) ) ? vec4 ( 0.0,0.0,1.0,1.0 ) : ( ( ( ( ( ( vv0 ).x ) - ( 0.85 ) ) * ( ( ( vv0 ).x ) - ( 0.85 ) ) ) + ( ( ( ( vv0 ).y ) - ( 0.85 ) ) * ( ( ( vv0 ).y ) - ( 0.85 ) ) ) ) + ( ( 2.0e-3 ) * ( sin ( ( ( 7.0 ) * ( atan ( ( ( vv0 ).x ) - ( 0.85 ),( ( vv0 ).y ) - ( 0.85 ) ) ) ) + ( ( 3.0 ) * ( Time ) ) ) ) ) ) < ( ( 5.0e-2 ) * ( abs ( ( sin ( ( Time ) * ( 4.0 ) ) ) - ( 0.37 ) ) ) ) ? vec4 ( 1.0,1.0,1.0,1.0 ) : vec4 ( 1.0,1.0,0.0,1.0 );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("v11",Parameter {name = "position4", ty = V4F}),("w11",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("b1",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 v11 ;\nin vec2 w11 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = w11;\ngl_Position = ( ( MVP ) * ( v11 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D b1 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = texture2D ( b1,vv0 );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F),("vertexUV",V2F)], slotUniforms = fromList [("MVP",M44F),("Time",Float)], slotPrimitive = Triangles, slotPrograms = [0,1]}], streams = [], commands = [SetRenderTarget 1,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 1.0)}],SetProgram 1,SetTexture 0 1,SetSamplerUniform "b1" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 128 128), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 128 128), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0}], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 0 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 1 0 Nothing)}]}], programs = [Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("l9",Parameter {name = "position4", ty = V4F}),("m9",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 l9 ;\nin vec2 m9 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = m9;\ngl_Position = ( l9 ) * ( vec4 ( 1.0,1.0,1.0,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).x ) - ( 0.85 ) ) * ( ( ( vv0 ).x ) - ( 0.85 ) ) ) + ( ( ( ( vv0 ).y ) - ( 0.85 ) ) * ( ( ( vv0 ).y ) - ( 0.85 ) ) ) ) + ( ( 5.0e-4 ) * ( sin ( ( ( 3.0 ) * ( atan ( ( ( vv0 ).x ) - ( 0.85 ),( ( vv0 ).y ) - ( 0.85 ) ) ) ) + ( ( 15.0 ) * ( Time ) ) ) ) ) ) < ( ( 5.0e-3 ) * ( abs ( ( sin ( ( Time ) * ( 4.0 ) ) ) - ( 0.37 ) ) ) ) ? vec4 ( 0.0,0.0,0.5,1.0 ) : ( ( ( ( ( ( vv0 ).x ) - ( 0.85 ) ) * ( ( ( vv0 ).x ) - ( 0.85 ) ) ) + ( ( ( ( vv0 ).y ) - ( 0.85 ) ) * ( ( ( vv0 ).y ) - ( 0.85 ) ) ) ) + ( ( 2.0e-3 ) * ( sin ( ( ( 5.0 ) * ( atan ( ( ( vv0 ).x ) - ( 0.85 ),( ( vv0 ).y ) - ( 0.85 ) ) ) ) - ( ( 5.0 ) * ( Time ) ) ) ) ) ) < ( ( 2.0e-2 ) * ( abs ( ( sin ( ( Time ) * ( 4.0 ) ) ) - ( 0.37 ) ) ) ) ? vec4 ( 0.0,0.0,1.0,1.0 ) : ( ( ( ( ( ( vv0 ).x ) - ( 0.85 ) ) * ( ( ( vv0 ).x ) - ( 0.85 ) ) ) + ( ( ( ( vv0 ).y ) - ( 0.85 ) ) * ( ( ( vv0 ).y ) - ( 0.85 ) ) ) ) + ( ( 2.0e-3 ) * ( sin ( ( ( 7.0 ) * ( atan ( ( ( vv0 ).x ) - ( 0.85 ),( ( vv0 ).y ) - ( 0.85 ) ) ) ) + ( ( 3.0 ) * ( Time ) ) ) ) ) ) < ( ( 5.0e-2 ) * ( abs ( ( sin ( ( Time ) * ( 4.0 ) ) ) - ( 0.37 ) ) ) ) ? vec4 ( 1.0,1.0,1.0,1.0 ) : vec4 ( 1.0,1.0,0.0,1.0 );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("v11",Parameter {name = "position4", ty = V4F}),("w11",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("b1",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 v11 ;\nin vec2 w11 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = w11;\ngl_Position = ( ( MVP ) * ( v11 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D b1 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = texture2D ( b1,vv0 );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F),("vertexUV",V2F)], slotUniforms = fromList [("MVP",M44F),("Time",Float)], slotPrimitive = Triangles, slotPrograms = [0,1]}], streams = [], commands = [SetRenderTarget 1,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 1.0)}],SetProgram 1,SetTexture 0 1,SetSamplerUniform "b1" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/editor-examples/LambdaCube.out b/testdata/editor-examples/LambdaCube.out index 66300bb3..b21a4804 100644 --- a/testdata/editor-examples/LambdaCube.out +++ b/testdata/editor-examples/LambdaCube.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("l13",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nin vec4 l13 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = l13;\ngl_Position = ( ( mat4 ( vec4 ( cos ( ( 4.1 ) + ( ( ( ( fract ( ( Time ) * ( 0.2 ) ) ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) * ( ( 3.0 ) - ( ( 2.0 ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) ) ) * ( 6.28318530718 ) ) ),0.0,( 0.0 ) - ( sin ( ( 4.1 ) + ( ( ( ( fract ( ( Time ) * ( 0.2 ) ) ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) * ( ( 3.0 ) - ( ( 2.0 ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) ) ) * ( 6.28318530718 ) ) ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( ( 4.1 ) + ( ( ( ( fract ( ( Time ) * ( 0.2 ) ) ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) * ( ( 3.0 ) - ( ( 2.0 ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) ) ) * ( 6.28318530718 ) ) ),0.0,cos ( ( 4.1 ) + ( ( ( ( fract ( ( Time ) * ( 0.2 ) ) ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) * ( ( 3.0 ) - ( ( 2.0 ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) ) ) * ( 6.28318530718 ) ) ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( 2.35619449017 ),sin ( 2.35619449017 ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( 2.35619449017 ) ),cos ( 2.35619449017 ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( l13 ) ) ) * ( vec4 ( ( 0.2 ) + ( ( abs ( ( 0.5 ) - ( ( ( fract ( ( Time ) * ( 0.2 ) ) ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) * ( ( 3.0 ) - ( ( 2.0 ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) ) ) ) ) * ( 0.6 ) ),( 0.2 ) + ( ( abs ( ( 0.5 ) - ( ( ( fract ( ( Time ) * ( 0.2 ) ) ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) * ( ( 3.0 ) - ( ( 2.0 ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) ) ) ) ) * ( 0.6 ) ),( 0.2 ) + ( ( abs ( ( 0.5 ) - ( ( ( fract ( ( Time ) * ( 0.2 ) ) ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) * ( ( 3.0 ) - ( ( 2.0 ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) ) ) ) ) * ( 0.6 ) ),1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( abs ( ( vv0 ).x ) ) > ( 0.99999 ) ? vec4 ( ( ( ( ( ( ( vv0 ).yz ) * ( sign ( ( vv0 ).x ) ) ) * ( 0.5 ) ) + ( 0.5 ) ).x ) * ( ( ( ( ( ( vv0 ).yz ) * ( sign ( ( vv0 ).x ) ) ) * ( 0.5 ) ) + ( 0.5 ) ).x ),1.0,( ( 1.0 ) - ( ( ( ( ( ( vv0 ).yz ) * ( sign ( ( vv0 ).x ) ) ) * ( 0.5 ) ) + ( 0.5 ) ).x ) ) * ( ( 1.0 ) - ( ( ( ( ( ( vv0 ).yz ) * ( sign ( ( vv0 ).x ) ) ) * ( 0.5 ) ) + ( 0.5 ) ).x ) ),( ( ( ( ( ( vv0 ).yz ) * ( sign ( ( vv0 ).x ) ) ) * ( 0.5 ) ) + ( 0.5 ) ).y ) > ( 0.75 ) ? 0.0 : 1.0 ) : ( abs ( ( vv0 ).y ) ) > ( 0.99999 ) ? vec4 ( ( dot ( ( ( ( ( vv0 ).zx ) * ( sign ( ( vv0 ).y ) ) ) * ( 0.5 ) ) + ( 0.5 ),vec2 ( -0.5,0.5 ) ) ) + ( 0.4 ),1.0,0.0,( ( dot ( ( ( ( ( vv0 ).zx ) * ( sign ( ( vv0 ).y ) ) ) * ( 0.5 ) ) + ( 0.5 ),vec2 ( 1.0,-1.0 ) ) ) > ( -0.25 ) ) && ( ( dot ( ( ( ( ( vv0 ).zx ) * ( sign ( ( vv0 ).y ) ) ) * ( 0.5 ) ) + ( 0.5 ),vec2 ( 1.0,-1.0 ) ) ) < ( 0.0 ) ) ? 0.0 : 1.0 ) : ( abs ( ( vv0 ).z ) ) > ( 0.99999 ) ? vec4 ( 0.0,1.0,( dot ( ( ( ( ( vv0 ).xy ) * ( sign ( ( vv0 ).z ) ) ) * ( 0.5 ) ) + ( 0.5 ),vec2 ( 0.5,-0.5 ) ) ) + ( 0.4 ),( ( ( ( ( ( vv0 ).xy ) * ( sign ( ( vv0 ).z ) ) ) * ( 0.5 ) ) + ( 0.5 ) ).y ) > ( 0.75 ) ? 0.0 : 1.0 ) : vec4 ( 0.0,0.0,0.0,1.0 );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("Time",Float)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.5 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("l13",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nin vec4 l13 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = l13;\ngl_Position = ( ( mat4 ( vec4 ( cos ( ( 4.1 ) + ( ( ( ( fract ( ( Time ) * ( 0.2 ) ) ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) * ( ( 3.0 ) - ( ( 2.0 ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) ) ) * ( 6.28318530718 ) ) ),0.0,( 0.0 ) - ( sin ( ( 4.1 ) + ( ( ( ( fract ( ( Time ) * ( 0.2 ) ) ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) * ( ( 3.0 ) - ( ( 2.0 ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) ) ) * ( 6.28318530718 ) ) ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( ( 4.1 ) + ( ( ( ( fract ( ( Time ) * ( 0.2 ) ) ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) * ( ( 3.0 ) - ( ( 2.0 ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) ) ) * ( 6.28318530718 ) ) ),0.0,cos ( ( 4.1 ) + ( ( ( ( fract ( ( Time ) * ( 0.2 ) ) ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) * ( ( 3.0 ) - ( ( 2.0 ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) ) ) * ( 6.28318530718 ) ) ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( 2.35619449017 ),sin ( 2.35619449017 ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( 2.35619449017 ) ),cos ( 2.35619449017 ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( l13 ) ) ) * ( vec4 ( ( 0.2 ) + ( ( abs ( ( 0.5 ) - ( ( ( fract ( ( Time ) * ( 0.2 ) ) ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) * ( ( 3.0 ) - ( ( 2.0 ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) ) ) ) ) * ( 0.6 ) ),( 0.2 ) + ( ( abs ( ( 0.5 ) - ( ( ( fract ( ( Time ) * ( 0.2 ) ) ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) * ( ( 3.0 ) - ( ( 2.0 ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) ) ) ) ) * ( 0.6 ) ),( 0.2 ) + ( ( abs ( ( 0.5 ) - ( ( ( fract ( ( Time ) * ( 0.2 ) ) ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) * ( ( 3.0 ) - ( ( 2.0 ) * ( fract ( ( Time ) * ( 0.2 ) ) ) ) ) ) ) ) * ( 0.6 ) ),1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( abs ( ( vv0 ).x ) ) > ( 0.99999 ) ? vec4 ( ( ( ( ( ( ( vv0 ).yz ) * ( sign ( ( vv0 ).x ) ) ) * ( 0.5 ) ) + ( 0.5 ) ).x ) * ( ( ( ( ( ( vv0 ).yz ) * ( sign ( ( vv0 ).x ) ) ) * ( 0.5 ) ) + ( 0.5 ) ).x ),1.0,( ( 1.0 ) - ( ( ( ( ( ( vv0 ).yz ) * ( sign ( ( vv0 ).x ) ) ) * ( 0.5 ) ) + ( 0.5 ) ).x ) ) * ( ( 1.0 ) - ( ( ( ( ( ( vv0 ).yz ) * ( sign ( ( vv0 ).x ) ) ) * ( 0.5 ) ) + ( 0.5 ) ).x ) ),( ( ( ( ( ( vv0 ).yz ) * ( sign ( ( vv0 ).x ) ) ) * ( 0.5 ) ) + ( 0.5 ) ).y ) > ( 0.75 ) ? 0.0 : 1.0 ) : ( abs ( ( vv0 ).y ) ) > ( 0.99999 ) ? vec4 ( ( dot ( ( ( ( ( vv0 ).zx ) * ( sign ( ( vv0 ).y ) ) ) * ( 0.5 ) ) + ( 0.5 ),vec2 ( -0.5,0.5 ) ) ) + ( 0.4 ),1.0,0.0,( ( dot ( ( ( ( ( vv0 ).zx ) * ( sign ( ( vv0 ).y ) ) ) * ( 0.5 ) ) + ( 0.5 ),vec2 ( 1.0,-1.0 ) ) ) > ( -0.25 ) ) && ( ( dot ( ( ( ( ( vv0 ).zx ) * ( sign ( ( vv0 ).y ) ) ) * ( 0.5 ) ) + ( 0.5 ),vec2 ( 1.0,-1.0 ) ) ) < ( 0.0 ) ) ? 0.0 : 1.0 ) : ( abs ( ( vv0 ).z ) ) > ( 0.99999 ) ? vec4 ( 0.0,1.0,( dot ( ( ( ( ( vv0 ).xy ) * ( sign ( ( vv0 ).z ) ) ) * ( 0.5 ) ) + ( 0.5 ),vec2 ( 0.5,-0.5 ) ) ) + ( 0.4 ),( ( ( ( ( ( vv0 ).xy ) * ( sign ( ( vv0 ).z ) ) ) * ( 0.5 ) ) + ( 0.5 ) ).y ) > ( 0.75 ) ? 0.0 : 1.0 ) : vec4 ( 0.0,0.0,0.0,1.0 );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("Time",Float)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.5 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/editor-examples/LambdaCube2.out b/testdata/editor-examples/LambdaCube2.out index aa6c6e71..865d2363 100644 --- a/testdata/editor-examples/LambdaCube2.out +++ b/testdata/editor-examples/LambdaCube2.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("r9",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 r9 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = r9;\ngl_Position = ( ( MVP ) * ( r9 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( ( ( ( ( ( vv0 ).y ) + ( ( vv0 ).x ) ) + ( ( vv0 ).z ) ) > ( 1.0 ) ) || ( ( abs ( ( ( ( ( vv0 ).y ) - ( ( vv0 ).x ) ) + ( ( vv0 ).z ) ) - ( 1.0 ) ) ) > ( 0.25 ) ) ) && ( ( ( ( ( ( ( vv0 ).y ) + ( ( vv0 ).x ) ) - ( ( vv0 ).z ) ) > ( 1.0 ) ) || ( ( abs ( ( ( ( ( vv0 ).y ) + ( ( vv0 ).x ) ) + ( ( vv0 ).z ) ) - ( 1.0 ) ) ) > ( 0.25 ) ) ) && ( ( ( ( ( ( ( vv0 ).y ) - ( ( vv0 ).x ) ) - ( ( vv0 ).z ) ) > ( 1.0 ) ) || ( ( abs ( ( ( ( ( vv0 ).y ) + ( ( vv0 ).x ) ) - ( ( vv0 ).z ) ) - ( 1.0 ) ) ) > ( 0.25 ) ) ) && ( ( ( ( ( ( ( vv0 ).y ) - ( ( vv0 ).x ) ) + ( ( vv0 ).z ) ) > ( 1.0 ) ) || ( ( abs ( ( ( ( ( vv0 ).y ) - ( ( vv0 ).x ) ) - ( ( vv0 ).z ) ) - ( 1.0 ) ) ) > ( 0.25 ) ) ) && ( ( ( ( ( ( sin ( ( vv0 ) * ( 20.0 ) ) ).x ) * ( ( sin ( ( vv0 ) * ( 20.0 ) ) ).x ) ) + ( ( ( sin ( ( vv0 ) * ( 20.0 ) ) ).y ) * ( ( sin ( ( vv0 ) * ( 20.0 ) ) ).y ) ) ) + ( ( ( sin ( ( vv0 ) * ( 20.0 ) ) ).z ) * ( ( sin ( ( vv0 ) * ( 20.0 ) ) ).z ) ) ) > ( abs ( ( 3.0 ) * ( sin ( ( 1.0 ) * ( Time ) ) ) ) ) ) ) ) ))) discard;\nf0 = vv0;\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F),("Time",Float)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.5 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("r9",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 r9 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = r9;\ngl_Position = ( ( MVP ) * ( r9 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( ( ( ( ( ( vv0 ).y ) + ( ( vv0 ).x ) ) + ( ( vv0 ).z ) ) > ( 1.0 ) ) || ( ( abs ( ( ( ( ( vv0 ).y ) - ( ( vv0 ).x ) ) + ( ( vv0 ).z ) ) - ( 1.0 ) ) ) > ( 0.25 ) ) ) && ( ( ( ( ( ( ( vv0 ).y ) + ( ( vv0 ).x ) ) - ( ( vv0 ).z ) ) > ( 1.0 ) ) || ( ( abs ( ( ( ( ( vv0 ).y ) + ( ( vv0 ).x ) ) + ( ( vv0 ).z ) ) - ( 1.0 ) ) ) > ( 0.25 ) ) ) && ( ( ( ( ( ( ( vv0 ).y ) - ( ( vv0 ).x ) ) - ( ( vv0 ).z ) ) > ( 1.0 ) ) || ( ( abs ( ( ( ( ( vv0 ).y ) + ( ( vv0 ).x ) ) - ( ( vv0 ).z ) ) - ( 1.0 ) ) ) > ( 0.25 ) ) ) && ( ( ( ( ( ( ( vv0 ).y ) - ( ( vv0 ).x ) ) + ( ( vv0 ).z ) ) > ( 1.0 ) ) || ( ( abs ( ( ( ( ( vv0 ).y ) - ( ( vv0 ).x ) ) - ( ( vv0 ).z ) ) - ( 1.0 ) ) ) > ( 0.25 ) ) ) && ( ( ( ( ( ( sin ( ( vv0 ) * ( 20.0 ) ) ).x ) * ( ( sin ( ( vv0 ) * ( 20.0 ) ) ).x ) ) + ( ( ( sin ( ( vv0 ) * ( 20.0 ) ) ).y ) * ( ( sin ( ( vv0 ) * ( 20.0 ) ) ).y ) ) ) + ( ( ( sin ( ( vv0 ) * ( 20.0 ) ) ).z ) * ( ( sin ( ( vv0 ) * ( 20.0 ) ) ).z ) ) ) > ( abs ( ( 3.0 ) * ( sin ( ( 1.0 ) * ( Time ) ) ) ) ) ) ) ) ))) discard;\nf0 = vv0;\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F),("Time",Float)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.5 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/editor-examples/MagicCube.out b/testdata/editor-examples/MagicCube.out index c82ac86a..6fa35c44 100644 --- a/testdata/editor-examples/MagicCube.out +++ b/testdata/editor-examples/MagicCube.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("s53",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 s53 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = s53;\ngl_Position = ( ( MVP ) * ( s53 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( ( ( ( ( vv0 ).y ) * ( ( vv0 ).y ) ) + ( ( ( vv0 ).x ) * ( ( vv0 ).x ) ) ) + ( ( ( vv0 ).z ) * ( ( vv0 ).z ) ) ) > ( 1.5 ))) discard;\nf0 = ( vec4 ( ( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( cos ( Time ),sin ( Time ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( vec4 ( ( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).x,( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).y,( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).z,( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).w ) ) * ( ( 1.0 ) + ( ( 0.5 ) * ( sin ( Time ) ) ) ) ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).x,( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( cos ( Time ),sin ( Time ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( vec4 ( ( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).x,( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).y,( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).z,( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).w ) ) * ( ( 1.0 ) + ( ( 0.5 ) * ( sin ( Time ) ) ) ) ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).y,( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( cos ( Time ),sin ( Time ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( vec4 ( ( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).x,( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).y,( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).z,( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).w ) ) * ( ( 1.0 ) + ( ( 0.5 ) * ( sin ( Time ) ) ) ) ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).z,( ( mat4 ( vec4 ( cos ( Time ),sin ( Time ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( vec4 ( ( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).x,( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).y,( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).z,( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).w ) ) * ( ( 1.0 ) + ( ( 0.5 ) * ( sin ( Time ) ) ) ) ) ) ).w ) ) * ( ( mod ( ( ( Time ) + ( sin ( Time ) ) ) + ( sin ( ( 1.1 ) * ( Time ) ) ),4.0 ) ) * ( 2.0 ) );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F),("Time",Float)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.5 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("s53",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 s53 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = s53;\ngl_Position = ( ( MVP ) * ( s53 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( ( ( ( ( vv0 ).y ) * ( ( vv0 ).y ) ) + ( ( ( vv0 ).x ) * ( ( vv0 ).x ) ) ) + ( ( ( vv0 ).z ) * ( ( vv0 ).z ) ) ) > ( 1.5 ))) discard;\nf0 = ( vec4 ( ( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( cos ( Time ),sin ( Time ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( vec4 ( ( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).x,( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).y,( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).z,( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).w ) ) * ( ( 1.0 ) + ( ( 0.5 ) * ( sin ( Time ) ) ) ) ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).x,( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( cos ( Time ),sin ( Time ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( vec4 ( ( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).x,( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).y,( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).z,( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).w ) ) * ( ( 1.0 ) + ( ( 0.5 ) * ( sin ( Time ) ) ) ) ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).y,( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( cos ( Time ),sin ( Time ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( vec4 ( ( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).x,( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).y,( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).z,( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).w ) ) * ( ( 1.0 ) + ( ( 0.5 ) * ( sin ( Time ) ) ) ) ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).z,( ( mat4 ( vec4 ( cos ( Time ),sin ( Time ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( vec4 ( ( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).x,( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).y,( ( vec3 ( 0.5,0.5,0.5 ) ) + ( ( cos ( ( ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).xyz ) + ( vec3 ( 0.0,0.1,0.2 ) ) ) * ( 6.28318 ) ) ) * ( 0.5 ) ) ).z,( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( Time ),sin ( Time ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).w ) ) * ( ( 1.0 ) + ( ( 0.5 ) * ( sin ( Time ) ) ) ) ) ) ).w ) ) * ( ( mod ( ( ( Time ) + ( sin ( Time ) ) ) + ( sin ( ( 1.1 ) * ( Time ) ) ),4.0 ) ) * ( 2.0 ) );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F),("Time",Float)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.5 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/editor-examples/RecLC.out b/testdata/editor-examples/RecLC.out index ec91af0a..9d8acf17 100644 --- a/testdata/editor-examples/RecLC.out +++ b/testdata/editor-examples/RecLC.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 512 512), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 512 512), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 512 512), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 512 512), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0}], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 0 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 1 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 2 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 3 0 Nothing)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("t12",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 t12 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = t12;\ngl_Position = ( ( MVP ) * ( t12 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( ( ( ( ( ( vv0 ).y ) + ( ( vv0 ).x ) ) + ( ( vv0 ).z ) ) > ( 1.0 ) ) || ( ( abs ( ( ( ( ( vv0 ).y ) - ( ( vv0 ).x ) ) + ( ( vv0 ).z ) ) - ( 1.0 ) ) ) > ( 0.25 ) ) ) && ( ( ( ( ( ( ( vv0 ).y ) + ( ( vv0 ).x ) ) - ( ( vv0 ).z ) ) > ( 1.0 ) ) || ( ( abs ( ( ( ( ( vv0 ).y ) + ( ( vv0 ).x ) ) + ( ( vv0 ).z ) ) - ( 1.0 ) ) ) > ( 0.25 ) ) ) && ( ( ( ( ( ( ( vv0 ).y ) - ( ( vv0 ).x ) ) - ( ( vv0 ).z ) ) > ( 1.0 ) ) || ( ( abs ( ( ( ( ( vv0 ).y ) + ( ( vv0 ).x ) ) - ( ( vv0 ).z ) ) - ( 1.0 ) ) ) > ( 0.25 ) ) ) && ( ( ( ( ( ( ( vv0 ).y ) - ( ( vv0 ).x ) ) + ( ( vv0 ).z ) ) > ( 1.0 ) ) || ( ( abs ( ( ( ( ( vv0 ).y ) - ( ( vv0 ).x ) ) - ( ( vv0 ).z ) ) - ( 1.0 ) ) ) > ( 0.25 ) ) ) && ( ( ( ( ( ( sin ( ( vv0 ) * ( 20.0 ) ) ).x ) * ( ( sin ( ( vv0 ) * ( 20.0 ) ) ).x ) ) + ( ( ( sin ( ( vv0 ) * ( 20.0 ) ) ).y ) * ( ( sin ( ( vv0 ) * ( 20.0 ) ) ).y ) ) ) + ( ( ( sin ( ( vv0 ) * ( 20.0 ) ) ).z ) * ( ( sin ( ( vv0 ) * ( 20.0 ) ) ).z ) ) ) > ( abs ( ( 3.0 ) * ( sin ( ( 1.0 ) * ( Time ) ) ) ) ) ) ) ) ))) discard;\nf0 = vv0;\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("f15",Parameter {name = "position4", ty = V4F}),("g15",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("c3",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 f15 ;\nin vec2 g15 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = g15;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.0 ),sin ( 0.0 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.0 ) ),cos ( 0.0 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( f15 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D c3 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( c3,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("p18",Parameter {name = "position4", ty = V4F}),("q18",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("o1",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 p18 ;\nin vec2 q18 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = q18;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.1 ),sin ( 0.1 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.1 ) ),cos ( 0.1 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( p18 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D o1 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( o1,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F),("vertexUV",V2F)], slotUniforms = fromList [("MVP",M44F),("Time",Float)], slotPrimitive = Triangles, slotPrograms = [0,1,2]}], streams = [], commands = [SetRenderTarget 2,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.5 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 1,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 1,SetTexture 0 3,SetSamplerUniform "c3" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 2,SetTexture 0 1,SetSamplerUniform "o1" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 512 512), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 512 512), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 512 512), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 512 512), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0}], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 0 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 1 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 2 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 3 0 Nothing)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("t12",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 t12 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = t12;\ngl_Position = ( ( MVP ) * ( t12 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( ( ( ( ( ( vv0 ).y ) + ( ( vv0 ).x ) ) + ( ( vv0 ).z ) ) > ( 1.0 ) ) || ( ( abs ( ( ( ( ( vv0 ).y ) - ( ( vv0 ).x ) ) + ( ( vv0 ).z ) ) - ( 1.0 ) ) ) > ( 0.25 ) ) ) && ( ( ( ( ( ( ( vv0 ).y ) + ( ( vv0 ).x ) ) - ( ( vv0 ).z ) ) > ( 1.0 ) ) || ( ( abs ( ( ( ( ( vv0 ).y ) + ( ( vv0 ).x ) ) + ( ( vv0 ).z ) ) - ( 1.0 ) ) ) > ( 0.25 ) ) ) && ( ( ( ( ( ( ( vv0 ).y ) - ( ( vv0 ).x ) ) - ( ( vv0 ).z ) ) > ( 1.0 ) ) || ( ( abs ( ( ( ( ( vv0 ).y ) + ( ( vv0 ).x ) ) - ( ( vv0 ).z ) ) - ( 1.0 ) ) ) > ( 0.25 ) ) ) && ( ( ( ( ( ( ( vv0 ).y ) - ( ( vv0 ).x ) ) + ( ( vv0 ).z ) ) > ( 1.0 ) ) || ( ( abs ( ( ( ( ( vv0 ).y ) - ( ( vv0 ).x ) ) - ( ( vv0 ).z ) ) - ( 1.0 ) ) ) > ( 0.25 ) ) ) && ( ( ( ( ( ( sin ( ( vv0 ) * ( 20.0 ) ) ).x ) * ( ( sin ( ( vv0 ) * ( 20.0 ) ) ).x ) ) + ( ( ( sin ( ( vv0 ) * ( 20.0 ) ) ).y ) * ( ( sin ( ( vv0 ) * ( 20.0 ) ) ).y ) ) ) + ( ( ( sin ( ( vv0 ) * ( 20.0 ) ) ).z ) * ( ( sin ( ( vv0 ) * ( 20.0 ) ) ).z ) ) ) > ( abs ( ( 3.0 ) * ( sin ( ( 1.0 ) * ( Time ) ) ) ) ) ) ) ) ))) discard;\nf0 = vv0;\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("f15",Parameter {name = "position4", ty = V4F}),("g15",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("c3",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 f15 ;\nin vec2 g15 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = g15;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.0 ),sin ( 0.0 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.0 ) ),cos ( 0.0 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( f15 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D c3 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( c3,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("p18",Parameter {name = "position4", ty = V4F}),("q18",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("o1",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 p18 ;\nin vec2 q18 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = q18;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.1 ),sin ( 0.1 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.1 ) ),cos ( 0.1 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( p18 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D o1 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( o1,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F),("vertexUV",V2F)], slotUniforms = fromList [("MVP",M44F),("Time",Float)], slotPrimitive = Triangles, slotPrograms = [0,1,2]}], streams = [], commands = [SetRenderTarget 2,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.5 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 1,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 1,SetTexture 0 3,SetSamplerUniform "c3" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 2,SetTexture 0 1,SetSamplerUniform "o1" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/editor-examples/RecursiveTexture.out b/testdata/editor-examples/RecursiveTexture.out index aeb2b6e6..afa24584 100644 --- a/testdata/editor-examples/RecursiveTexture.out +++ b/testdata/editor-examples/RecursiveTexture.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0}], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 0 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 1 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 2 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 3 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 4 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 5 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 6 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 7 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 8 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 9 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 10 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 11 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 12 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 13 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 14 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 15 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 16 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 17 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 18 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 19 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 20 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 21 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 22 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 23 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 24 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 25 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 26 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 27 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 28 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 29 0 Nothing)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("h25",Parameter {name = "position4", ty = V4F}),("i25",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("c23",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 h25 ;\nin vec2 i25 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = i25;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.0 ),sin ( 0.0 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.0 ) ),cos ( 0.0 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( h25 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D c23 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( c23,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("r28",Parameter {name = "position4", ty = V4F}),("s28",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("o21",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 r28 ;\nin vec2 s28 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = s28;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.1 ),sin ( 0.1 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.1 ) ),cos ( 0.1 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( r28 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D o21 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( o21,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("b32",Parameter {name = "position4", ty = V4F}),("c32",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("a20",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 b32 ;\nin vec2 c32 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = c32;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.2 ),sin ( 0.2 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.2 ) ),cos ( 0.2 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( b32 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D a20 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( a20,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("l35",Parameter {name = "position4", ty = V4F}),("m35",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("m18",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 l35 ;\nin vec2 m35 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = m35;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.3 ),sin ( 0.3 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.3 ) ),cos ( 0.3 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( l35 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D m18 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( m18,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("v38",Parameter {name = "position4", ty = V4F}),("w38",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("y16",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 v38 ;\nin vec2 w38 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = w38;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.4 ),sin ( 0.4 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.4 ) ),cos ( 0.4 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( v38 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D y16 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( y16,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("f42",Parameter {name = "position4", ty = V4F}),("g42",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("k15",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 f42 ;\nin vec2 g42 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = g42;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.5 ),sin ( 0.5 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.5 ) ),cos ( 0.5 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( f42 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D k15 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( k15,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("p45",Parameter {name = "position4", ty = V4F}),("q45",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("w13",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 p45 ;\nin vec2 q45 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = q45;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.6 ),sin ( 0.6 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.6 ) ),cos ( 0.6 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( p45 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D w13 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( w13,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("a49",Parameter {name = "vertexUV", ty = V2F}),("z48",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [("i12",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 z48 ;\nin vec2 a49 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = a49;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.7 ),sin ( 0.7 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.7 ) ),cos ( 0.7 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( z48 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D i12 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( i12,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("j52",Parameter {name = "position4", ty = V4F}),("k52",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("u10",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 j52 ;\nin vec2 k52 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = k52;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.8 ),sin ( 0.8 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.8 ) ),cos ( 0.8 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( j52 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D u10 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( u10,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("t55",Parameter {name = "position4", ty = V4F}),("u55",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("g9",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 t55 ;\nin vec2 u55 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = u55;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.9 ),sin ( 0.9 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.9 ) ),cos ( 0.9 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( t55 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D g9 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( g9,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("d59",Parameter {name = "position4", ty = V4F}),("e59",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("s7",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 d59 ;\nin vec2 e59 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = e59;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 1.0 ),sin ( 1.0 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 1.0 ) ),cos ( 1.0 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( d59 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D s7 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( s7,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("n62",Parameter {name = "position4", ty = V4F}),("o62",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("e6",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 n62 ;\nin vec2 o62 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = o62;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 1.1 ),sin ( 1.1 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 1.1 ) ),cos ( 1.1 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( n62 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D e6 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( e6,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("x65",Parameter {name = "position4", ty = V4F}),("y65",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("q4",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 x65 ;\nin vec2 y65 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = y65;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 1.2 ),sin ( 1.2 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 1.2 ) ),cos ( 1.2 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( x65 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D q4 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( q4,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("h69",Parameter {name = "position4", ty = V4F}),("i69",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("c3",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 h69 ;\nin vec2 i69 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = i69;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 1.3 ),sin ( 1.3 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 1.3 ) ),cos ( 1.3 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( h69 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D c3 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( c3,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("r72",Parameter {name = "position4", ty = V4F}),("s72",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("o1",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 r72 ;\nin vec2 s72 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = s72;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 1.4 ),sin ( 1.4 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 1.4 ) ),cos ( 1.4 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( r72 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D o1 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( o1,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F),("vertexUV",V2F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14]}], streams = [], commands = [SetRenderTarget 15,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetRenderTarget 14,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 0,SetTexture 0 29,SetSamplerUniform "c23" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 13,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 1,SetTexture 0 27,SetSamplerUniform "o21" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 12,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 2,SetTexture 0 25,SetSamplerUniform "a20" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 11,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 3,SetTexture 0 23,SetSamplerUniform "m18" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 10,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 4,SetTexture 0 21,SetSamplerUniform "y16" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 9,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 5,SetTexture 0 19,SetSamplerUniform "k15" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 8,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 6,SetTexture 0 17,SetSamplerUniform "w13" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 7,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 7,SetTexture 0 15,SetSamplerUniform "i12" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 6,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 8,SetTexture 0 13,SetSamplerUniform "u10" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 5,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 9,SetTexture 0 11,SetSamplerUniform "g9" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 4,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 10,SetTexture 0 9,SetSamplerUniform "s7" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 3,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 11,SetTexture 0 7,SetSamplerUniform "e6" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 2,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 12,SetTexture 0 5,SetSamplerUniform "q4" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 1,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 13,SetTexture 0 3,SetSamplerUniform "c3" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 14,SetTexture 0 1,SetSamplerUniform "o1" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0}], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 0 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 1 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 2 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 3 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 4 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 5 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 6 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 7 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 8 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 9 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 10 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 11 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 12 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 13 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 14 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 15 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 16 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 17 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 18 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 19 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 20 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 21 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 22 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 23 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 24 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 25 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 26 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 27 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 28 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 29 0 Nothing)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("h25",Parameter {name = "position4", ty = V4F}),("i25",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("c23",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 h25 ;\nin vec2 i25 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = i25;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.0 ),sin ( 0.0 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.0 ) ),cos ( 0.0 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( h25 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D c23 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( c23,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("r28",Parameter {name = "position4", ty = V4F}),("s28",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("o21",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 r28 ;\nin vec2 s28 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = s28;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.1 ),sin ( 0.1 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.1 ) ),cos ( 0.1 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( r28 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D o21 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( o21,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("b32",Parameter {name = "position4", ty = V4F}),("c32",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("a20",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 b32 ;\nin vec2 c32 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = c32;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.2 ),sin ( 0.2 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.2 ) ),cos ( 0.2 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( b32 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D a20 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( a20,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("l35",Parameter {name = "position4", ty = V4F}),("m35",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("m18",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 l35 ;\nin vec2 m35 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = m35;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.3 ),sin ( 0.3 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.3 ) ),cos ( 0.3 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( l35 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D m18 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( m18,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("v38",Parameter {name = "position4", ty = V4F}),("w38",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("y16",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 v38 ;\nin vec2 w38 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = w38;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.4 ),sin ( 0.4 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.4 ) ),cos ( 0.4 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( v38 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D y16 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( y16,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("f42",Parameter {name = "position4", ty = V4F}),("g42",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("k15",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 f42 ;\nin vec2 g42 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = g42;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.5 ),sin ( 0.5 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.5 ) ),cos ( 0.5 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( f42 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D k15 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( k15,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("p45",Parameter {name = "position4", ty = V4F}),("q45",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("w13",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 p45 ;\nin vec2 q45 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = q45;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.6 ),sin ( 0.6 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.6 ) ),cos ( 0.6 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( p45 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D w13 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( w13,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("a49",Parameter {name = "vertexUV", ty = V2F}),("z48",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [("i12",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 z48 ;\nin vec2 a49 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = a49;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.7 ),sin ( 0.7 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.7 ) ),cos ( 0.7 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( z48 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D i12 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( i12,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("j52",Parameter {name = "position4", ty = V4F}),("k52",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("u10",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 j52 ;\nin vec2 k52 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = k52;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.8 ),sin ( 0.8 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.8 ) ),cos ( 0.8 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( j52 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D u10 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( u10,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("t55",Parameter {name = "position4", ty = V4F}),("u55",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("g9",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 t55 ;\nin vec2 u55 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = u55;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.9 ),sin ( 0.9 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.9 ) ),cos ( 0.9 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( t55 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D g9 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( g9,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("d59",Parameter {name = "position4", ty = V4F}),("e59",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("s7",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 d59 ;\nin vec2 e59 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = e59;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 1.0 ),sin ( 1.0 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 1.0 ) ),cos ( 1.0 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( d59 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D s7 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( s7,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("n62",Parameter {name = "position4", ty = V4F}),("o62",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("e6",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 n62 ;\nin vec2 o62 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = o62;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 1.1 ),sin ( 1.1 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 1.1 ) ),cos ( 1.1 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( n62 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D e6 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( e6,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("x65",Parameter {name = "position4", ty = V4F}),("y65",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("q4",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 x65 ;\nin vec2 y65 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = y65;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 1.2 ),sin ( 1.2 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 1.2 ) ),cos ( 1.2 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( x65 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D q4 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( q4,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("h69",Parameter {name = "position4", ty = V4F}),("i69",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("c3",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 h69 ;\nin vec2 i69 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = i69;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 1.3 ),sin ( 1.3 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 1.3 ) ),cos ( 1.3 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( h69 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D c3 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( c3,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("r72",Parameter {name = "position4", ty = V4F}),("s72",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("o1",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 r72 ;\nin vec2 s72 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = s72;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 1.4 ),sin ( 1.4 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 1.4 ) ),cos ( 1.4 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( r72 ) ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D o1 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).yyyx ) * ( 0.5 ) ) + ( texture2D ( o1,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F),("vertexUV",V2F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14]}], streams = [], commands = [SetRenderTarget 15,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetRenderTarget 14,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 0,SetTexture 0 29,SetSamplerUniform "c23" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 13,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 1,SetTexture 0 27,SetSamplerUniform "o21" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 12,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 2,SetTexture 0 25,SetSamplerUniform "a20" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 11,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 3,SetTexture 0 23,SetSamplerUniform "m18" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 10,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 4,SetTexture 0 21,SetSamplerUniform "y16" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 9,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 5,SetTexture 0 19,SetSamplerUniform "k15" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 8,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 6,SetTexture 0 17,SetSamplerUniform "w13" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 7,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 7,SetTexture 0 15,SetSamplerUniform "i12" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 6,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 8,SetTexture 0 13,SetSamplerUniform "u10" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 5,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 9,SetTexture 0 11,SetSamplerUniform "g9" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 4,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 10,SetTexture 0 9,SetSamplerUniform "s7" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 3,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 11,SetTexture 0 7,SetSamplerUniform "e6" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 2,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 12,SetTexture 0 5,SetSamplerUniform "q4" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 1,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 13,SetTexture 0 3,SetSamplerUniform "c3" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.5 0.5 1.0)}],SetProgram 14,SetTexture 0 1,SetSamplerUniform "o1" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/editor-examples/Stripes.out b/testdata/editor-examples/Stripes.out index 0fbf0177..2b6dd8a1 100644 --- a/testdata/editor-examples/Stripes.out +++ b/testdata/editor-examples/Stripes.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("s4",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 s4 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = s4;\ngl_Position = ( s4 ) * ( vec4 ( 1.0,1.0,1.0,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( sin ( ( 10.0 ) * ( ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( ( Time ) * ( 1.0 ) ),sin ( ( Time ) * ( 1.0 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 1.0 ) ) ),cos ( ( Time ) * ( 1.0 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).x ) ) ) > ( 0.5 ))) discard;\nf0 = vec4 ( 0.0,0.0,0.0,1.0 );\n}\n"},Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("n9",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 n9 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = n9;\ngl_Position = ( n9 ) * ( vec4 ( 0.9,0.9,0.9,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( sin ( ( 10.0 ) * ( ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.9 ) ),sin ( ( Time ) * ( 0.9 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.9 ) ) ),cos ( ( Time ) * ( 0.9 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).x ) ) ) > ( 0.5 ))) discard;\nf0 = vec4 ( 9.999999999999998e-2,9.999999999999998e-2,9.999999999999998e-2,1.0 );\n}\n"},Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("i14",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 i14 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = i14;\ngl_Position = ( i14 ) * ( vec4 ( 0.8,0.8,0.8,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( sin ( ( 10.0 ) * ( ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.8 ) ),sin ( ( Time ) * ( 0.8 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.8 ) ) ),cos ( ( Time ) * ( 0.8 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).x ) ) ) > ( 0.5 ))) discard;\nf0 = vec4 ( 0.19999999999999996,0.19999999999999996,0.19999999999999996,1.0 );\n}\n"},Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("d19",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 d19 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = d19;\ngl_Position = ( d19 ) * ( vec4 ( 0.7,0.7,0.7,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( sin ( ( 10.0 ) * ( ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.7 ) ),sin ( ( Time ) * ( 0.7 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.7 ) ) ),cos ( ( Time ) * ( 0.7 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).x ) ) ) > ( 0.5 ))) discard;\nf0 = vec4 ( 0.30000000000000004,0.30000000000000004,0.30000000000000004,1.0 );\n}\n"},Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("y23",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 y23 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = y23;\ngl_Position = ( y23 ) * ( vec4 ( 0.6,0.6,0.6,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( sin ( ( 10.0 ) * ( ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.6 ) ),sin ( ( Time ) * ( 0.6 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.6 ) ) ),cos ( ( Time ) * ( 0.6 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).x ) ) ) > ( 0.5 ))) discard;\nf0 = vec4 ( 0.4,0.4,0.4,1.0 );\n}\n"},Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("t28",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 t28 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = t28;\ngl_Position = ( t28 ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( sin ( ( 10.0 ) * ( ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.5 ) ),sin ( ( Time ) * ( 0.5 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.5 ) ) ),cos ( ( Time ) * ( 0.5 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).x ) ) ) > ( 0.5 ))) discard;\nf0 = vec4 ( 0.5,0.5,0.5,1.0 );\n}\n"},Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("o33",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 o33 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = o33;\ngl_Position = ( o33 ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( sin ( ( 10.0 ) * ( ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.4 ) ),sin ( ( Time ) * ( 0.4 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.4 ) ) ),cos ( ( Time ) * ( 0.4 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).x ) ) ) > ( 0.5 ))) discard;\nf0 = vec4 ( 0.6,0.6,0.6,1.0 );\n}\n"},Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("j38",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 j38 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = j38;\ngl_Position = ( j38 ) * ( vec4 ( 0.3,0.3,0.3,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( sin ( ( 10.0 ) * ( ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.3 ) ),sin ( ( Time ) * ( 0.3 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.3 ) ) ),cos ( ( Time ) * ( 0.3 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).x ) ) ) > ( 0.5 ))) discard;\nf0 = vec4 ( 0.7,0.7,0.7,1.0 );\n}\n"},Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("e43",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 e43 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = e43;\ngl_Position = ( e43 ) * ( vec4 ( 0.2,0.2,0.2,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( sin ( ( 10.0 ) * ( ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.2 ) ),sin ( ( Time ) * ( 0.2 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.2 ) ) ),cos ( ( Time ) * ( 0.2 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).x ) ) ) > ( 0.5 ))) discard;\nf0 = vec4 ( 0.8,0.8,0.8,1.0 );\n}\n"},Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("z47",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 z47 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = z47;\ngl_Position = ( z47 ) * ( vec4 ( 0.1,0.1,0.1,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( sin ( ( 10.0 ) * ( ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.1 ) ),sin ( ( Time ) * ( 0.1 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.1 ) ) ),cos ( ( Time ) * ( 0.1 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).x ) ) ) > ( 0.5 ))) discard;\nf0 = vec4 ( 0.9,0.9,0.9,1.0 );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("Time",Float)], slotPrimitive = Triangles, slotPrograms = [0,1,2,3,4,5,6,7,8,9]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.5 1.0)}],SetProgram 9,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 8,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 7,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 6,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 5,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 4,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 3,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 2,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 1,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("s4",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 s4 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = s4;\ngl_Position = ( s4 ) * ( vec4 ( 1.0,1.0,1.0,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( sin ( ( 10.0 ) * ( ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( ( Time ) * ( 1.0 ) ),sin ( ( Time ) * ( 1.0 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 1.0 ) ) ),cos ( ( Time ) * ( 1.0 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).x ) ) ) > ( 0.5 ))) discard;\nf0 = vec4 ( 0.0,0.0,0.0,1.0 );\n}\n"},Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("n9",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 n9 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = n9;\ngl_Position = ( n9 ) * ( vec4 ( 0.9,0.9,0.9,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( sin ( ( 10.0 ) * ( ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.9 ) ),sin ( ( Time ) * ( 0.9 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.9 ) ) ),cos ( ( Time ) * ( 0.9 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).x ) ) ) > ( 0.5 ))) discard;\nf0 = vec4 ( 9.999999999999998e-2,9.999999999999998e-2,9.999999999999998e-2,1.0 );\n}\n"},Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("i14",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 i14 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = i14;\ngl_Position = ( i14 ) * ( vec4 ( 0.8,0.8,0.8,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( sin ( ( 10.0 ) * ( ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.8 ) ),sin ( ( Time ) * ( 0.8 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.8 ) ) ),cos ( ( Time ) * ( 0.8 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).x ) ) ) > ( 0.5 ))) discard;\nf0 = vec4 ( 0.19999999999999996,0.19999999999999996,0.19999999999999996,1.0 );\n}\n"},Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("d19",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 d19 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = d19;\ngl_Position = ( d19 ) * ( vec4 ( 0.7,0.7,0.7,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( sin ( ( 10.0 ) * ( ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.7 ) ),sin ( ( Time ) * ( 0.7 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.7 ) ) ),cos ( ( Time ) * ( 0.7 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).x ) ) ) > ( 0.5 ))) discard;\nf0 = vec4 ( 0.30000000000000004,0.30000000000000004,0.30000000000000004,1.0 );\n}\n"},Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("y23",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 y23 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = y23;\ngl_Position = ( y23 ) * ( vec4 ( 0.6,0.6,0.6,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( sin ( ( 10.0 ) * ( ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.6 ) ),sin ( ( Time ) * ( 0.6 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.6 ) ) ),cos ( ( Time ) * ( 0.6 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).x ) ) ) > ( 0.5 ))) discard;\nf0 = vec4 ( 0.4,0.4,0.4,1.0 );\n}\n"},Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("t28",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 t28 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = t28;\ngl_Position = ( t28 ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( sin ( ( 10.0 ) * ( ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.5 ) ),sin ( ( Time ) * ( 0.5 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.5 ) ) ),cos ( ( Time ) * ( 0.5 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).x ) ) ) > ( 0.5 ))) discard;\nf0 = vec4 ( 0.5,0.5,0.5,1.0 );\n}\n"},Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("o33",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 o33 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = o33;\ngl_Position = ( o33 ) * ( vec4 ( 0.4,0.4,0.4,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( sin ( ( 10.0 ) * ( ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.4 ) ),sin ( ( Time ) * ( 0.4 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.4 ) ) ),cos ( ( Time ) * ( 0.4 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).x ) ) ) > ( 0.5 ))) discard;\nf0 = vec4 ( 0.6,0.6,0.6,1.0 );\n}\n"},Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("j38",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 j38 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = j38;\ngl_Position = ( j38 ) * ( vec4 ( 0.3,0.3,0.3,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( sin ( ( 10.0 ) * ( ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.3 ) ),sin ( ( Time ) * ( 0.3 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.3 ) ) ),cos ( ( Time ) * ( 0.3 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).x ) ) ) > ( 0.5 ))) discard;\nf0 = vec4 ( 0.7,0.7,0.7,1.0 );\n}\n"},Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("e43",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 e43 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = e43;\ngl_Position = ( e43 ) * ( vec4 ( 0.2,0.2,0.2,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( sin ( ( 10.0 ) * ( ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.2 ) ),sin ( ( Time ) * ( 0.2 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.2 ) ) ),cos ( ( Time ) * ( 0.2 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).x ) ) ) > ( 0.5 ))) discard;\nf0 = vec4 ( 0.8,0.8,0.8,1.0 );\n}\n"},Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("z47",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 z47 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = z47;\ngl_Position = ( z47 ) * ( vec4 ( 0.1,0.1,0.1,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(( sin ( ( 10.0 ) * ( ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.1 ) ),sin ( ( Time ) * ( 0.1 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.1 ) ) ),cos ( ( Time ) * ( 0.1 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ).x ) ) ) > ( 0.5 ))) discard;\nf0 = vec4 ( 0.9,0.9,0.9,1.0 );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("Time",Float)], slotPrimitive = Triangles, slotPrograms = [0,1,2,3,4,5,6,7,8,9]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.5 1.0)}],SetProgram 9,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 8,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 7,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 6,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 5,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 4,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 3,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 2,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 1,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/editor-examples/Tetrahedron.out b/testdata/editor-examples/Tetrahedron.out index de116baf..6d0bc696 100644 --- a/testdata/editor-examples/Tetrahedron.out +++ b/testdata/editor-examples/Tetrahedron.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("v4",Parameter {name = "attribute_0", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 v4 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = v4;\ngl_Position = ( ( MVP ) * ( v4 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(true)) discard;\nf0 = ( ( mat4 ( vec4 ( cos ( Time ),sin ( Time ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ) * ( ( mod ( ( ( Time ) + ( sin ( Time ) ) ) + ( sin ( ( 1.1 ) * ( Time ) ) ),4.0 ) ) * ( 2.0 ) );\n}\n"}], slots = [], streams = [StreamData {streamData = fromList [("attribute_0",VFloatArray [0.0,0.0,0.0,1.0,1.0,0.0,0.0,1.0,0.0,1.0,0.0,1.0,1.0,0.0,0.0,1.0,0.0,1.0,0.0,1.0,0.0,0.0,1.0,1.0,0.0,1.0,0.0,1.0,0.0,0.0,1.0,1.0,0.0,0.0,0.0,1.0,0.0,0.0,1.0,1.0,0.0,0.0,0.0,1.0,0.0,0.0,1.0,1.0])], streamType = fromList [("attribute_0",V4F)], streamPrimitive = Triangles, streamPrograms = [0]}], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.5 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderStream 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("v4",Parameter {name = "attribute_0", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 v4 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = v4;\ngl_Position = ( ( MVP ) * ( v4 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(true)) discard;\nf0 = ( ( mat4 ( vec4 ( cos ( Time ),sin ( Time ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( Time ) ),cos ( Time ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( mat4 ( vec4 ( cos ( Time ),0.0,( 0.0 ) - ( sin ( Time ) ),0.0 ),vec4 ( 0.0,1.0,0.0,0.0 ),vec4 ( sin ( Time ),0.0,cos ( Time ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( vv0 ) ) ) * ( ( mod ( ( ( Time ) + ( sin ( Time ) ) ) + ( sin ( ( 1.1 ) * ( Time ) ) ),4.0 ) ) * ( 2.0 ) );\n}\n"}], slots = [], streams = [StreamData {streamData = fromList [("attribute_0",VFloatArray [0.0,0.0,0.0,1.0,1.0,0.0,0.0,1.0,0.0,1.0,0.0,1.0,1.0,0.0,0.0,1.0,0.0,1.0,0.0,1.0,0.0,0.0,1.0,1.0,0.0,1.0,0.0,1.0,0.0,0.0,1.0,1.0,0.0,0.0,0.0,1.0,0.0,0.0,1.0,1.0,0.0,0.0,0.0,1.0,0.0,0.0,1.0,1.0])], streamType = fromList [("attribute_0",V4F)], streamPrimitive = Triangles, streamPrograms = [0]}], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.5 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderStream 0]} \ No newline at end of file diff --git a/testdata/example06.out b/testdata/example06.out index 8fe248f4..ed3cef14 100644 --- a/testdata/example06.out +++ b/testdata/example06.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("z1",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 z1 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = z1;\ngl_Position = ( ( MVP ) * ( z1 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("z1",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 z1 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = z1;\ngl_Position = ( ( MVP ) * ( z1 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/example07.out b/testdata/example07.out index bacb5a17..91678507 100644 --- a/testdata/example07.out +++ b/testdata/example07.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("k2",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 k2 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = k2;\ngl_Position = ( ( MVP ) * ( k2 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( vv0 ).x ) < ( 0.5 ) ? vec4 ( 0.0,0.0,1.0,1.0 ) : vec4 ( 1.0,0.0,0.0,1.0 );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.1 0.0 0.2 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("k2",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 k2 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = k2;\ngl_Position = ( ( MVP ) * ( k2 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( vv0 ).x ) < ( 0.5 ) ? vec4 ( 0.0,0.0,1.0,1.0 ) : vec4 ( 1.0,0.0,0.0,1.0 );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.1 0.0 0.2 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/example08.out b/testdata/example08.out index e82c4188..ae6bfe17 100644 --- a/testdata/example08.out +++ b/testdata/example08.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("z1",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nuniform mat4 MVP ;\nin vec4 z1 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = z1;\ngl_Position = ( mat4 ( vec4 ( cos ( ( Time ) * ( 2.0 ) ),sin ( ( Time ) * ( 2.0 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 2.0 ) ) ),cos ( ( Time ) * ( 2.0 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( MVP ) * ( ( vec4 ( ( 1.0 ) + ( ( sin ( Time ) ) * ( 0.1 ) ),0.0,0.0,0.0 ) ) + ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( ( ( Time ) * ( 2.0 ) ) * ( 2.0 ) ),sin ( ( ( Time ) * ( 2.0 ) ) * ( 2.0 ) ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( ( ( Time ) * ( 2.0 ) ) * ( 2.0 ) ) ),cos ( ( ( Time ) * ( 2.0 ) ) * ( 2.0 ) ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( z1 ) ) * ( vec4 ( 4.0e-2,4.0e-2,4.0e-2,1.0 ) ) ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"},Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("x7",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nuniform mat4 MVP ;\nin vec4 x7 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = x7;\ngl_Position = ( mat4 ( vec4 ( cos ( ( Time ) * ( 1.0 ) ),sin ( ( Time ) * ( 1.0 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 1.0 ) ) ),cos ( ( Time ) * ( 1.0 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( MVP ) * ( ( vec4 ( ( 0.5 ) + ( ( sin ( Time ) ) * ( 0.1 ) ),0.0,0.0,0.0 ) ) + ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( ( ( Time ) * ( 2.0 ) ) * ( 1.0 ) ),sin ( ( ( Time ) * ( 2.0 ) ) * ( 1.0 ) ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( ( ( Time ) * ( 2.0 ) ) * ( 1.0 ) ) ),cos ( ( ( Time ) * ( 2.0 ) ) * ( 1.0 ) ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( x7 ) ) * ( vec4 ( 4.0e-2,4.0e-2,4.0e-2,1.0 ) ) ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"},Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("v13",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nuniform mat4 MVP ;\nin vec4 v13 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = v13;\ngl_Position = ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.0 ) ),sin ( ( Time ) * ( 0.0 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.0 ) ) ),cos ( ( Time ) * ( 0.0 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( MVP ) * ( ( vec4 ( ( 0.0 ) + ( ( sin ( Time ) ) * ( 0.1 ) ),0.0,0.0,0.0 ) ) + ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( ( ( Time ) * ( 2.0 ) ) * ( 0.0 ) ),sin ( ( ( Time ) * ( 2.0 ) ) * ( 0.0 ) ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( ( ( Time ) * ( 2.0 ) ) * ( 0.0 ) ) ),cos ( ( ( Time ) * ( 2.0 ) ) * ( 0.0 ) ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( v13 ) ) * ( vec4 ( 4.0e-2,4.0e-2,4.0e-2,1.0 ) ) ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"},Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("t19",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nuniform mat4 MVP ;\nin vec4 t19 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = t19;\ngl_Position = ( mat4 ( vec4 ( cos ( ( Time ) * ( -1.0 ) ),sin ( ( Time ) * ( -1.0 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( -1.0 ) ) ),cos ( ( Time ) * ( -1.0 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( MVP ) * ( ( vec4 ( ( -0.5 ) + ( ( sin ( Time ) ) * ( 0.1 ) ),0.0,0.0,0.0 ) ) + ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( ( ( Time ) * ( 2.0 ) ) * ( -1.0 ) ),sin ( ( ( Time ) * ( 2.0 ) ) * ( -1.0 ) ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( ( ( Time ) * ( 2.0 ) ) * ( -1.0 ) ) ),cos ( ( ( Time ) * ( 2.0 ) ) * ( -1.0 ) ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( t19 ) ) * ( vec4 ( 4.0e-2,4.0e-2,4.0e-2,1.0 ) ) ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"},Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("r25",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nuniform mat4 MVP ;\nin vec4 r25 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = r25;\ngl_Position = ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.75 ) ),sin ( ( Time ) * ( 0.75 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.75 ) ) ),cos ( ( Time ) * ( 0.75 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( MVP ) * ( ( vec4 ( ( 0.375 ) + ( ( sin ( Time ) ) * ( 0.1 ) ),0.0,0.0,0.0 ) ) + ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( ( ( Time ) * ( 2.0 ) ) * ( 0.75 ) ),sin ( ( ( Time ) * ( 2.0 ) ) * ( 0.75 ) ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( ( ( Time ) * ( 2.0 ) ) * ( 0.75 ) ) ),cos ( ( ( Time ) * ( 2.0 ) ) * ( 0.75 ) ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( r25 ) ) * ( vec4 ( 4.0e-2,4.0e-2,4.0e-2,1.0 ) ) ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"},Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("p31",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nuniform mat4 MVP ;\nin vec4 p31 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = p31;\ngl_Position = ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.3 ) ),sin ( ( Time ) * ( 0.3 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.3 ) ) ),cos ( ( Time ) * ( 0.3 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( MVP ) * ( ( vec4 ( ( 0.15 ) + ( ( sin ( Time ) ) * ( 0.1 ) ),0.0,0.0,0.0 ) ) + ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( ( ( Time ) * ( 2.0 ) ) * ( 0.3 ) ),sin ( ( ( Time ) * ( 2.0 ) ) * ( 0.3 ) ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( ( ( Time ) * ( 2.0 ) ) * ( 0.3 ) ) ),cos ( ( ( Time ) * ( 2.0 ) ) * ( 0.3 ) ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( p31 ) ) * ( vec4 ( 4.0e-2,4.0e-2,4.0e-2,1.0 ) ) ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"},Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("n37",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nuniform mat4 MVP ;\nin vec4 n37 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = n37;\ngl_Position = ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.5 ) ),sin ( ( Time ) * ( 0.5 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.5 ) ) ),cos ( ( Time ) * ( 0.5 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( MVP ) * ( ( vec4 ( ( 0.25 ) + ( ( sin ( Time ) ) * ( 0.1 ) ),0.0,0.0,0.0 ) ) + ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( ( ( Time ) * ( 2.0 ) ) * ( 0.5 ) ),sin ( ( ( Time ) * ( 2.0 ) ) * ( 0.5 ) ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( ( ( Time ) * ( 2.0 ) ) * ( 0.5 ) ) ),cos ( ( ( Time ) * ( 2.0 ) ) * ( 0.5 ) ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( n37 ) ) * ( vec4 ( 4.0e-2,4.0e-2,4.0e-2,1.0 ) ) ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"},Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("l43",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nuniform mat4 MVP ;\nin vec4 l43 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = l43;\ngl_Position = ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.0 ) ),sin ( ( Time ) * ( 0.0 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.0 ) ) ),cos ( ( Time ) * ( 0.0 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( MVP ) * ( ( vec4 ( ( 0.0 ) + ( ( sin ( Time ) ) * ( 0.1 ) ),0.0,0.0,0.0 ) ) + ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( ( ( Time ) * ( 2.0 ) ) * ( 0.0 ) ),sin ( ( ( Time ) * ( 2.0 ) ) * ( 0.0 ) ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( ( ( Time ) * ( 2.0 ) ) * ( 0.0 ) ) ),cos ( ( ( Time ) * ( 2.0 ) ) * ( 0.0 ) ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( l43 ) ) * ( vec4 ( 4.0e-2,4.0e-2,4.0e-2,1.0 ) ) ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"},Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("j49",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nuniform mat4 MVP ;\nin vec4 j49 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = j49;\ngl_Position = ( mat4 ( vec4 ( cos ( ( Time ) * ( -0.5 ) ),sin ( ( Time ) * ( -0.5 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( -0.5 ) ) ),cos ( ( Time ) * ( -0.5 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( MVP ) * ( ( vec4 ( ( -0.25 ) + ( ( sin ( Time ) ) * ( 0.1 ) ),0.0,0.0,0.0 ) ) + ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( ( ( Time ) * ( 2.0 ) ) * ( -0.5 ) ),sin ( ( ( Time ) * ( 2.0 ) ) * ( -0.5 ) ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( ( ( Time ) * ( 2.0 ) ) * ( -0.5 ) ) ),cos ( ( ( Time ) * ( 2.0 ) ) * ( -0.5 ) ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( j49 ) ) * ( vec4 ( 4.0e-2,4.0e-2,4.0e-2,1.0 ) ) ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F),("Time",Float)], slotPrimitive = Triangles, slotPrograms = [0,1,2,3,4,5,6,7,8]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.5 1.0)}],SetProgram 8,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 7,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 6,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 5,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 4,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 3,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 2,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 1,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("z1",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nuniform mat4 MVP ;\nin vec4 z1 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = z1;\ngl_Position = ( mat4 ( vec4 ( cos ( ( Time ) * ( 2.0 ) ),sin ( ( Time ) * ( 2.0 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 2.0 ) ) ),cos ( ( Time ) * ( 2.0 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( MVP ) * ( ( vec4 ( ( 1.0 ) + ( ( sin ( Time ) ) * ( 0.1 ) ),0.0,0.0,0.0 ) ) + ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( ( ( Time ) * ( 2.0 ) ) * ( 2.0 ) ),sin ( ( ( Time ) * ( 2.0 ) ) * ( 2.0 ) ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( ( ( Time ) * ( 2.0 ) ) * ( 2.0 ) ) ),cos ( ( ( Time ) * ( 2.0 ) ) * ( 2.0 ) ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( z1 ) ) * ( vec4 ( 4.0e-2,4.0e-2,4.0e-2,1.0 ) ) ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"},Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("x7",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nuniform mat4 MVP ;\nin vec4 x7 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = x7;\ngl_Position = ( mat4 ( vec4 ( cos ( ( Time ) * ( 1.0 ) ),sin ( ( Time ) * ( 1.0 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 1.0 ) ) ),cos ( ( Time ) * ( 1.0 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( MVP ) * ( ( vec4 ( ( 0.5 ) + ( ( sin ( Time ) ) * ( 0.1 ) ),0.0,0.0,0.0 ) ) + ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( ( ( Time ) * ( 2.0 ) ) * ( 1.0 ) ),sin ( ( ( Time ) * ( 2.0 ) ) * ( 1.0 ) ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( ( ( Time ) * ( 2.0 ) ) * ( 1.0 ) ) ),cos ( ( ( Time ) * ( 2.0 ) ) * ( 1.0 ) ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( x7 ) ) * ( vec4 ( 4.0e-2,4.0e-2,4.0e-2,1.0 ) ) ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"},Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("v13",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nuniform mat4 MVP ;\nin vec4 v13 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = v13;\ngl_Position = ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.0 ) ),sin ( ( Time ) * ( 0.0 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.0 ) ) ),cos ( ( Time ) * ( 0.0 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( MVP ) * ( ( vec4 ( ( 0.0 ) + ( ( sin ( Time ) ) * ( 0.1 ) ),0.0,0.0,0.0 ) ) + ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( ( ( Time ) * ( 2.0 ) ) * ( 0.0 ) ),sin ( ( ( Time ) * ( 2.0 ) ) * ( 0.0 ) ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( ( ( Time ) * ( 2.0 ) ) * ( 0.0 ) ) ),cos ( ( ( Time ) * ( 2.0 ) ) * ( 0.0 ) ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( v13 ) ) * ( vec4 ( 4.0e-2,4.0e-2,4.0e-2,1.0 ) ) ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"},Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("t19",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nuniform mat4 MVP ;\nin vec4 t19 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = t19;\ngl_Position = ( mat4 ( vec4 ( cos ( ( Time ) * ( -1.0 ) ),sin ( ( Time ) * ( -1.0 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( -1.0 ) ) ),cos ( ( Time ) * ( -1.0 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( MVP ) * ( ( vec4 ( ( -0.5 ) + ( ( sin ( Time ) ) * ( 0.1 ) ),0.0,0.0,0.0 ) ) + ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( ( ( Time ) * ( 2.0 ) ) * ( -1.0 ) ),sin ( ( ( Time ) * ( 2.0 ) ) * ( -1.0 ) ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( ( ( Time ) * ( 2.0 ) ) * ( -1.0 ) ) ),cos ( ( ( Time ) * ( 2.0 ) ) * ( -1.0 ) ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( t19 ) ) * ( vec4 ( 4.0e-2,4.0e-2,4.0e-2,1.0 ) ) ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"},Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("r25",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nuniform mat4 MVP ;\nin vec4 r25 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = r25;\ngl_Position = ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.75 ) ),sin ( ( Time ) * ( 0.75 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.75 ) ) ),cos ( ( Time ) * ( 0.75 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( MVP ) * ( ( vec4 ( ( 0.375 ) + ( ( sin ( Time ) ) * ( 0.1 ) ),0.0,0.0,0.0 ) ) + ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( ( ( Time ) * ( 2.0 ) ) * ( 0.75 ) ),sin ( ( ( Time ) * ( 2.0 ) ) * ( 0.75 ) ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( ( ( Time ) * ( 2.0 ) ) * ( 0.75 ) ) ),cos ( ( ( Time ) * ( 2.0 ) ) * ( 0.75 ) ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( r25 ) ) * ( vec4 ( 4.0e-2,4.0e-2,4.0e-2,1.0 ) ) ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"},Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("p31",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nuniform mat4 MVP ;\nin vec4 p31 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = p31;\ngl_Position = ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.3 ) ),sin ( ( Time ) * ( 0.3 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.3 ) ) ),cos ( ( Time ) * ( 0.3 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( MVP ) * ( ( vec4 ( ( 0.15 ) + ( ( sin ( Time ) ) * ( 0.1 ) ),0.0,0.0,0.0 ) ) + ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( ( ( Time ) * ( 2.0 ) ) * ( 0.3 ) ),sin ( ( ( Time ) * ( 2.0 ) ) * ( 0.3 ) ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( ( ( Time ) * ( 2.0 ) ) * ( 0.3 ) ) ),cos ( ( ( Time ) * ( 2.0 ) ) * ( 0.3 ) ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( p31 ) ) * ( vec4 ( 4.0e-2,4.0e-2,4.0e-2,1.0 ) ) ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"},Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("n37",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nuniform mat4 MVP ;\nin vec4 n37 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = n37;\ngl_Position = ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.5 ) ),sin ( ( Time ) * ( 0.5 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.5 ) ) ),cos ( ( Time ) * ( 0.5 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( MVP ) * ( ( vec4 ( ( 0.25 ) + ( ( sin ( Time ) ) * ( 0.1 ) ),0.0,0.0,0.0 ) ) + ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( ( ( Time ) * ( 2.0 ) ) * ( 0.5 ) ),sin ( ( ( Time ) * ( 2.0 ) ) * ( 0.5 ) ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( ( ( Time ) * ( 2.0 ) ) * ( 0.5 ) ) ),cos ( ( ( Time ) * ( 2.0 ) ) * ( 0.5 ) ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( n37 ) ) * ( vec4 ( 4.0e-2,4.0e-2,4.0e-2,1.0 ) ) ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"},Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("l43",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nuniform mat4 MVP ;\nin vec4 l43 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = l43;\ngl_Position = ( mat4 ( vec4 ( cos ( ( Time ) * ( 0.0 ) ),sin ( ( Time ) * ( 0.0 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( 0.0 ) ) ),cos ( ( Time ) * ( 0.0 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( MVP ) * ( ( vec4 ( ( 0.0 ) + ( ( sin ( Time ) ) * ( 0.1 ) ),0.0,0.0,0.0 ) ) + ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( ( ( Time ) * ( 2.0 ) ) * ( 0.0 ) ),sin ( ( ( Time ) * ( 2.0 ) ) * ( 0.0 ) ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( ( ( Time ) * ( 2.0 ) ) * ( 0.0 ) ) ),cos ( ( ( Time ) * ( 2.0 ) ) * ( 0.0 ) ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( l43 ) ) * ( vec4 ( 4.0e-2,4.0e-2,4.0e-2,1.0 ) ) ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"},Program {programUniforms = fromList [("MVP",M44F),("Time",Float)], programStreams = fromList [("j49",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nuniform mat4 MVP ;\nin vec4 j49 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = j49;\ngl_Position = ( mat4 ( vec4 ( cos ( ( Time ) * ( -0.5 ) ),sin ( ( Time ) * ( -0.5 ) ),0.0,0.0 ),vec4 ( ( 0.0 ) - ( sin ( ( Time ) * ( -0.5 ) ) ),cos ( ( Time ) * ( -0.5 ) ),0.0,0.0 ),vec4 ( 0.0,0.0,1.0,0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( ( MVP ) * ( ( vec4 ( ( -0.25 ) + ( ( sin ( Time ) ) * ( 0.1 ) ),0.0,0.0,0.0 ) ) + ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( ( ( Time ) * ( 2.0 ) ) * ( -0.5 ) ),sin ( ( ( Time ) * ( 2.0 ) ) * ( -0.5 ) ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( ( ( Time ) * ( 2.0 ) ) * ( -0.5 ) ) ),cos ( ( ( Time ) * ( 2.0 ) ) * ( -0.5 ) ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( j49 ) ) * ( vec4 ( 4.0e-2,4.0e-2,4.0e-2,1.0 ) ) ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F),("Time",Float)], slotPrimitive = Triangles, slotPrograms = [0,1,2,3,4,5,6,7,8]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.5 1.0)}],SetProgram 8,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 7,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 6,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 5,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 4,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 3,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 2,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 1,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/fetcharrays01.out b/testdata/fetcharrays01.out index 414be0b7..49885827 100644 --- a/testdata/fetcharrays01.out +++ b/testdata/fetcharrays01.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("j2",Parameter {name = "attribute_0", ty = V3F}),("k2",Parameter {name = "attribute_1", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec3 j2 ;\nin vec3 k2 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = vec4 ( ( j2 ).x,( j2 ).y,( j2 ).z,1.0 );\ngl_Position = ( ( MVP ) * ( vec4 ( ( j2 ).x,( j2 ).y,( j2 ).z,1.0 ) ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [], streams = [StreamData {streamData = fromList [("attribute_0",VFloatArray [1.0,1.0,1.0,-1.0,1.0,1.0,-1.0,1.0,-1.0,-1.0,1.0,-1.0,1.0,1.0,-1.0,1.0,1.0,1.0,1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,1.0,-1.0,-1.0,1.0,1.0,-1.0,1.0,1.0,-1.0,-1.0,1.0,-1.0,1.0,-1.0,-1.0,1.0,-1.0,1.0,1.0,-1.0,1.0,1.0,1.0,1.0,1.0,1.0,-1.0,1.0,1.0,1.0,-1.0,-1.0,1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,1.0,-1.0,-1.0,1.0,1.0,-1.0,-1.0,-1.0,1.0,-1.0,-1.0,-1.0,-1.0,1.0,-1.0,-1.0,1.0,-1.0,-1.0,1.0,1.0,-1.0,-1.0,1.0,1.0,-1.0,-1.0,1.0,-1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,-1.0,1.0,-1.0,-1.0]),("attribute_1",VFloatArray [0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,-1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0])], streamType = fromList [("attribute_0",V3F),("attribute_1",V3F)], streamPrimitive = Triangles, streamPrograms = [0]}], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderStream 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("j2",Parameter {name = "attribute_0", ty = V3F}),("k2",Parameter {name = "attribute_1", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec3 j2 ;\nin vec3 k2 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = vec4 ( ( j2 ).x,( j2 ).y,( j2 ).z,1.0 );\ngl_Position = ( ( MVP ) * ( vec4 ( ( j2 ).x,( j2 ).y,( j2 ).z,1.0 ) ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [], streams = [StreamData {streamData = fromList [("attribute_0",VFloatArray [1.0,1.0,1.0,-1.0,1.0,1.0,-1.0,1.0,-1.0,-1.0,1.0,-1.0,1.0,1.0,-1.0,1.0,1.0,1.0,1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,1.0,-1.0,-1.0,1.0,1.0,-1.0,1.0,1.0,-1.0,-1.0,1.0,-1.0,1.0,-1.0,-1.0,1.0,-1.0,1.0,1.0,-1.0,1.0,1.0,1.0,1.0,1.0,1.0,-1.0,1.0,1.0,1.0,-1.0,-1.0,1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,-1.0,1.0,-1.0,-1.0,1.0,1.0,-1.0,-1.0,-1.0,1.0,-1.0,-1.0,-1.0,-1.0,1.0,-1.0,-1.0,1.0,-1.0,-1.0,1.0,1.0,-1.0,-1.0,1.0,1.0,-1.0,-1.0,1.0,-1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,-1.0,1.0,-1.0,-1.0]),("attribute_1",VFloatArray [0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,-1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0])], streamType = fromList [("attribute_0",V3F),("attribute_1",V3F)], streamPrimitive = Triangles, streamPrograms = [0]}], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderStream 0]} \ No newline at end of file diff --git a/testdata/fragment01.out b/testdata/fragment01.out index 62b681a1..d5d7c6f5 100644 --- a/testdata/fragment01.out +++ b/testdata/fragment01.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [], programStreams = fromList [("v1",Parameter {name = "position", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 v1 ;\nvoid main() {\ngl_Position = v1;\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nout vec4 f0 ;\nvoid main() {\nf0 = vec4 ( 0.0,0.0,1.0,1.0 );\n}\n"}], slots = [Slot {slotName = "quad", slotStreams = fromList [("position",V4F)], slotUniforms = fromList [], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 0.5)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [], programStreams = fromList [("v1",Parameter {name = "position", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 v1 ;\nvoid main() {\ngl_Position = v1;\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nout vec4 f0 ;\nvoid main() {\nf0 = vec4 ( 0.0,0.0,1.0,1.0 );\n}\n"}], slots = [Slot {slotName = "quad", slotStreams = fromList [("position",V4F)], slotUniforms = fromList [], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 0.5)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/fragment03swizzling.out b/testdata/fragment03swizzling.out index 1b6c950b..54927be4 100644 --- a/testdata/fragment03swizzling.out +++ b/testdata/fragment03swizzling.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [], programStreams = fromList [("e2",Parameter {name = "position", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 e2 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = e2;\ngl_Position = e2;\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( vv0 ).xxxw ) + ( ( vv0 ).yyyw );\n}\n"}], slots = [Slot {slotName = "quad", slotStreams = fromList [("position",V4F)], slotUniforms = fromList [], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 0.5)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [], programStreams = fromList [("e2",Parameter {name = "position", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 e2 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = e2;\ngl_Position = e2;\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( vv0 ).xxxw ) + ( ( vv0 ).yyyw );\n}\n"}], slots = [Slot {slotName = "quad", slotStreams = fromList [("position",V4F)], slotUniforms = fromList [], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 0.5)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/fragment04ifthenelse.out b/testdata/fragment04ifthenelse.out index e90a975b..01bc45a8 100644 --- a/testdata/fragment04ifthenelse.out +++ b/testdata/fragment04ifthenelse.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("e2",Parameter {name = "position", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 e2 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = e2;\ngl_Position = e2;\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( Time ) < ( 0.5 ) ? vv0 : vec4 ( 0.0,0.0,1.0,1.0 );\n}\n"}], slots = [Slot {slotName = "quad", slotStreams = fromList [("position",V4F)], slotUniforms = fromList [("Time",Float)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 0.5)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("e2",Parameter {name = "position", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 e2 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = e2;\ngl_Position = e2;\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( Time ) < ( 0.5 ) ? vv0 : vec4 ( 0.0,0.0,1.0,1.0 );\n}\n"}], slots = [Slot {slotName = "quad", slotStreams = fromList [("position",V4F)], slotUniforms = fromList [("Time",Float)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 0.5)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/fragment07let.out b/testdata/fragment07let.out index d21bc583..eedff89c 100644 --- a/testdata/fragment07let.out +++ b/testdata/fragment07let.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [], programStreams = fromList [("b2",Parameter {name = "position", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 b2 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = b2;\ngl_Position = b2;\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = sin ( sin ( vv0 ) );\n}\n"}], slots = [Slot {slotName = "quad", slotStreams = fromList [("position",V4F)], slotUniforms = fromList [], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 0.5)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [], programStreams = fromList [("b2",Parameter {name = "position", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 b2 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = b2;\ngl_Position = b2;\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = sin ( sin ( vv0 ) );\n}\n"}], slots = [Slot {slotName = "quad", slotStreams = fromList [("position",V4F)], slotUniforms = fromList [], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 0.5)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/framebuffer01.out b/testdata/framebuffer01.out index faef5c91..46637eb0 100644 --- a/testdata/framebuffer01.out +++ b/testdata/framebuffer01.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [], slots = [], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.4 1.0)}]]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [], slots = [], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.4 1.0)}]]} \ No newline at end of file diff --git a/testdata/framebuffer02.out b/testdata/framebuffer02.out index 3e49dbfd..1dfd394b 100644 --- a/testdata/framebuffer02.out +++ b/testdata/framebuffer02.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [], slots = [], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.4 1.0)},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 1.0 1.0 1.0)},ClearImage {imageSemantic = Color, clearValue = VFloat 1.0}]]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [], slots = [], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.4 1.0)},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 1.0 1.0 1.0)},ClearImage {imageSemantic = Color, clearValue = VFloat 1.0}]]} \ No newline at end of file diff --git a/testdata/framebuffer03.out b/testdata/framebuffer03.out index 702b07dd..b1eb8bc3 100644 --- a/testdata/framebuffer03.out +++ b/testdata/framebuffer03.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)},TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)}]}], programs = [], slots = [], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.4 1.0)},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 1.0 1.0 1.0)},ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0}]]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)},TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)}]}], programs = [], slots = [], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.4 1.0)},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 1.0 1.0 1.0)},ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0}]]} \ No newline at end of file diff --git a/testdata/framebuffer04.out b/testdata/framebuffer04.out index a44133c2..92382c70 100644 --- a/testdata/framebuffer04.out +++ b/testdata/framebuffer04.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)}]}], programs = [], slots = [], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0}]]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)}]}], programs = [], slots = [], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0}]]} \ No newline at end of file diff --git a/testdata/framebuffer05.out b/testdata/framebuffer05.out index a44133c2..92382c70 100644 --- a/testdata/framebuffer05.out +++ b/testdata/framebuffer05.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)}]}], programs = [], slots = [], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0}]]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)}]}], programs = [], slots = [], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1.0}]]} \ No newline at end of file diff --git a/testdata/gfx00.out b/testdata/gfx00.out index faef5c91..46637eb0 100644 --- a/testdata/gfx00.out +++ b/testdata/gfx00.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [], slots = [], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.4 1.0)}]]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [], slots = [], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.4 1.0)}]]} \ No newline at end of file diff --git a/testdata/gfx01.out b/testdata/gfx01.out index faef5c91..46637eb0 100644 --- a/testdata/gfx01.out +++ b/testdata/gfx01.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [], slots = [], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.4 1.0)}]]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [], slots = [], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.4 1.0)}]]} \ No newline at end of file diff --git a/testdata/gfx02.out b/testdata/gfx02.out index 94d597e6..bc799c35 100644 --- a/testdata/gfx02.out +++ b/testdata/gfx02.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [], programStreams = fromList [("v1",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 v1 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = v1;\ngl_Position = v1;\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.4 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [], programStreams = fromList [("v1",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 v1 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = v1;\ngl_Position = v1;\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.4 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/gfx03.out b/testdata/gfx03.out index 3f72d5f6..91672e5f 100644 --- a/testdata/gfx03.out +++ b/testdata/gfx03.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP2",M44F)], programStreams = fromList [("z1",Parameter {name = "position", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP2 ;\nin vec3 z1 ;\nvoid main() {\ngl_Position = ( MVP2 ) * ( vec4 ( ( z1 ).x,( z1 ).y,( z1 ).z,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nout vec4 f0 ;\nvoid main() {\nf0 = vec4 ( 0.0,0.4,0.0,1.0 );\n}\n"},Program {programUniforms = fromList [("MVP2",M44F)], programStreams = fromList [("k4",Parameter {name = "position", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP2 ;\nin vec3 k4 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = vec4 ( ( k4 ).x,( k4 ).y,( k4 ).z,1.0 );\ngl_Position = ( MVP2 ) * ( vec4 ( ( k4 ).x,( k4 ).y,( k4 ).z,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv0 ) + ( vec4 ( 1.0,1.4,1.0,0.6 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("m7",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 m7 ;\nflat out vec4 vv0 ;\nvoid main() {\nvv0 = m7;\ngl_Position = ( MVP ) * ( m7 );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nflat in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv0 ) * ( vec4 ( 1.0,1.4,1.0,0.6 ) );\n}\n"}], slots = [Slot {slotName = "stream", slotStreams = fromList [("position",V3F)], slotUniforms = fromList [("MVP2",M44F)], slotPrimitive = Triangles, slotPrograms = [0,1]},Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [2]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.5 0.0 0.4 1.0)}],SetProgram 2,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less False,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = SrcAlpha, colorFDst = OneMinusSrcAlpha, alphaFSrc = SrcAlpha, alphaFDst = OneMinusSrcAlpha, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 1,SetProgram 1,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset FirstVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less False,ColorOp NoBlending (VV4B (V4 True True False False))]}),RenderSlot 0,SetProgram 0,SetRasterContext (TriangleCtx CullNone (PolygonLine 20.0) NoOffset FirstVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Always False,ColorOp NoBlending (VV4B (V4 True True False False))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP2",M44F)], programStreams = fromList [("z1",Parameter {name = "position", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP2 ;\nin vec3 z1 ;\nvoid main() {\ngl_Position = ( MVP2 ) * ( vec4 ( ( z1 ).x,( z1 ).y,( z1 ).z,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nout vec4 f0 ;\nvoid main() {\nf0 = vec4 ( 0.0,0.4,0.0,1.0 );\n}\n"},Program {programUniforms = fromList [("MVP2",M44F)], programStreams = fromList [("k4",Parameter {name = "position", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP2 ;\nin vec3 k4 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = vec4 ( ( k4 ).x,( k4 ).y,( k4 ).z,1.0 );\ngl_Position = ( MVP2 ) * ( vec4 ( ( k4 ).x,( k4 ).y,( k4 ).z,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv0 ) + ( vec4 ( 1.0,1.4,1.0,0.6 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("m7",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 m7 ;\nflat out vec4 vv0 ;\nvoid main() {\nvv0 = m7;\ngl_Position = ( MVP ) * ( m7 );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nflat in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv0 ) * ( vec4 ( 1.0,1.4,1.0,0.6 ) );\n}\n"}], slots = [Slot {slotName = "stream", slotStreams = fromList [("position",V3F)], slotUniforms = fromList [("MVP2",M44F)], slotPrimitive = Triangles, slotPrograms = [0,1]},Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [2]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.5 0.0 0.4 1.0)}],SetProgram 2,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less False,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = SrcAlpha, colorFDst = OneMinusSrcAlpha, alphaFSrc = SrcAlpha, alphaFDst = OneMinusSrcAlpha, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 1,SetProgram 1,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset FirstVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less False,ColorOp NoBlending (VV4B (V4 True True False False))]}),RenderSlot 0,SetProgram 0,SetRasterContext (TriangleCtx CullNone (PolygonLine 20.0) NoOffset FirstVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Always False,ColorOp NoBlending (VV4B (V4 True True False False))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/gfx04.out b/testdata/gfx04.out index 7204045a..8e884840 100644 --- a/testdata/gfx04.out +++ b/testdata/gfx04.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("t2",Parameter {name = "position", ty = V3F}),("u2",Parameter {name = "normal", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec3 t2 ;\nin vec3 u2 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = vec4 ( ( u2 ).x,( u2 ).y,( u2 ).z,1.0 );\ngl_Position = ( MVP ) * ( vec4 ( ( t2 ).x,( t2 ).y,( t2 ).z,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv0 ) * ( vec4 ( 1.0,1.4,1.0,0.6 ) );\n}\n"}], slots = [Slot {slotName = "stream", slotStreams = fromList [("normal",V3F),("position",V3F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.5 0.0 0.4 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less False,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = SrcAlpha, colorFDst = OneMinusSrcAlpha, alphaFSrc = SrcAlpha, alphaFDst = OneMinusSrcAlpha, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("t2",Parameter {name = "position", ty = V3F}),("u2",Parameter {name = "normal", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec3 t2 ;\nin vec3 u2 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = vec4 ( ( u2 ).x,( u2 ).y,( u2 ).z,1.0 );\ngl_Position = ( MVP ) * ( vec4 ( ( t2 ).x,( t2 ).y,( t2 ).z,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv0 ) * ( vec4 ( 1.0,1.4,1.0,0.6 ) );\n}\n"}], slots = [Slot {slotName = "stream", slotStreams = fromList [("normal",V3F),("position",V3F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.5 0.0 0.4 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less False,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = SrcAlpha, colorFDst = OneMinusSrcAlpha, alphaFSrc = SrcAlpha, alphaFDst = OneMinusSrcAlpha, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/gfx05.out b/testdata/gfx05.out index f14b23d1..b34a1fc0 100644 --- a/testdata/gfx05.out +++ b/testdata/gfx05.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 1024 768), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 1024 768), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0}], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 0 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 1 0 Nothing)}]}], programs = [Program {programUniforms = fromList [("MVP2",M44F)], programStreams = fromList [("z1",Parameter {name = "position", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP2 ;\nin vec3 z1 ;\nvoid main() {\ngl_Position = ( MVP2 ) * ( vec4 ( ( z1 ).x,( z1 ).y,( z1 ).z,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nout vec4 f0 ;\nvoid main() {\nf0 = vec4 ( 0.0,0.4,0.0,1.0 );\n}\n"},Program {programUniforms = fromList [("MVP2",M44F)], programStreams = fromList [("k4",Parameter {name = "position", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP2 ;\nin vec3 k4 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = vec4 ( ( k4 ).x,( k4 ).y,( k4 ).z,1.0 );\ngl_Position = ( MVP2 ) * ( vec4 ( ( k4 ).x,( k4 ).y,( k4 ).z,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv0 ) + ( vec4 ( 1.0,1.4,1.0,0.6 ) );\n}\n"},Program {programUniforms = fromList [("MVP2",M44F)], programStreams = fromList [("o8",Parameter {name = "position", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP2 ;\nin vec3 o8 ;\nvoid main() {\ngl_Position = ( MVP2 ) * ( vec4 ( ( o8 ).x,( o8 ).y,( o8 ).z,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nout vec4 f0 ;\nvoid main() {\nf0 = vec4 ( 0.0,0.4,0.0,1.0 );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("f11",Parameter {name = "position4", ty = V4F}),("g11",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("p6",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 f11 ;\nin vec2 g11 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = g11;\ngl_Position = ( MVP ) * ( f11 );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D p6 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( texture2D ( p6,( vv0 ).xy ) ) * ( 0.7 );\n}\n"}], slots = [Slot {slotName = "stream", slotStreams = fromList [("position",V3F)], slotUniforms = fromList [("MVP2",M44F)], slotPrimitive = Triangles, slotPrograms = [0,1,2]},Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F),("vertexUV",V2F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [3]}], streams = [], commands = [SetRenderTarget 1,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.1 0.0 0.3 1.0)}],SetProgram 2,SetRasterContext (TriangleCtx CullNone (PolygonLine 20.0) NoOffset FirstVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Always False,ColorOp NoBlending (VV4B (V4 True True False False))]}),RenderSlot 0,SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.5 0.0 0.4 1.0)}],SetProgram 3,SetTexture 0 1,SetSamplerUniform "p6" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less False,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = SrcAlpha, colorFDst = OneMinusSrcAlpha, alphaFSrc = SrcAlpha, alphaFDst = OneMinusSrcAlpha, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 1,SetProgram 1,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset FirstVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less False,ColorOp NoBlending (VV4B (V4 True True False False))]}),RenderSlot 0,SetProgram 0,SetRasterContext (TriangleCtx CullNone (PolygonLine 20.0) NoOffset FirstVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Always False,ColorOp NoBlending (VV4B (V4 True True False False))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 1024 768), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 1024 768), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0}], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 0 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 1 0 Nothing)}]}], programs = [Program {programUniforms = fromList [("MVP2",M44F)], programStreams = fromList [("z1",Parameter {name = "position", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP2 ;\nin vec3 z1 ;\nvoid main() {\ngl_Position = ( MVP2 ) * ( vec4 ( ( z1 ).x,( z1 ).y,( z1 ).z,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nout vec4 f0 ;\nvoid main() {\nf0 = vec4 ( 0.0,0.4,0.0,1.0 );\n}\n"},Program {programUniforms = fromList [("MVP2",M44F)], programStreams = fromList [("k4",Parameter {name = "position", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP2 ;\nin vec3 k4 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = vec4 ( ( k4 ).x,( k4 ).y,( k4 ).z,1.0 );\ngl_Position = ( MVP2 ) * ( vec4 ( ( k4 ).x,( k4 ).y,( k4 ).z,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv0 ) + ( vec4 ( 1.0,1.4,1.0,0.6 ) );\n}\n"},Program {programUniforms = fromList [("MVP2",M44F)], programStreams = fromList [("o8",Parameter {name = "position", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP2 ;\nin vec3 o8 ;\nvoid main() {\ngl_Position = ( MVP2 ) * ( vec4 ( ( o8 ).x,( o8 ).y,( o8 ).z,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nout vec4 f0 ;\nvoid main() {\nf0 = vec4 ( 0.0,0.4,0.0,1.0 );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("f11",Parameter {name = "position4", ty = V4F}),("g11",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("p6",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 f11 ;\nin vec2 g11 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = g11;\ngl_Position = ( MVP ) * ( f11 );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D p6 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( texture2D ( p6,( vv0 ).xy ) ) * ( 0.7 );\n}\n"}], slots = [Slot {slotName = "stream", slotStreams = fromList [("position",V3F)], slotUniforms = fromList [("MVP2",M44F)], slotPrimitive = Triangles, slotPrograms = [0,1,2]},Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F),("vertexUV",V2F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [3]}], streams = [], commands = [SetRenderTarget 1,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.1 0.0 0.3 1.0)}],SetProgram 2,SetRasterContext (TriangleCtx CullNone (PolygonLine 20.0) NoOffset FirstVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Always False,ColorOp NoBlending (VV4B (V4 True True False False))]}),RenderSlot 0,SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.5 0.0 0.4 1.0)}],SetProgram 3,SetTexture 0 1,SetSamplerUniform "p6" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less False,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = SrcAlpha, colorFDst = OneMinusSrcAlpha, alphaFSrc = SrcAlpha, alphaFDst = OneMinusSrcAlpha, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 1,SetProgram 1,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset FirstVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less False,ColorOp NoBlending (VV4B (V4 True True False False))]}),RenderSlot 0,SetProgram 0,SetRasterContext (TriangleCtx CullNone (PolygonLine 20.0) NoOffset FirstVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Always False,ColorOp NoBlending (VV4B (V4 True True False False))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/heartbeat01.out b/testdata/heartbeat01.out index 2f4553e7..9839d681 100644 --- a/testdata/heartbeat01.out +++ b/testdata/heartbeat01.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 128 128), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 128 128), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0}], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 0 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 1 0 Nothing)}]}], programs = [Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("j13",Parameter {name = "position4", ty = V4F}),("k13",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 j13 ;\nin vec2 k13 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = k13;\ngl_Position = ( j13 ) * ( vec4 ( 1.0,1.0,1.0,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).x ) - ( 0.85 ) ) * ( ( ( vv0 ).x ) - ( 0.85 ) ) ) + ( ( ( ( vv0 ).y ) - ( 0.85 ) ) * ( ( ( vv0 ).y ) - ( 0.85 ) ) ) ) + ( ( 5.0e-4 ) * ( sin ( ( ( 3.0 ) * ( atan ( ( ( vv0 ).x ) - ( 0.85 ),( ( vv0 ).y ) - ( 0.85 ) ) ) ) + ( ( 15.0 ) * ( Time ) ) ) ) ) ) < ( ( 5.0e-3 ) * ( abs ( ( sin ( ( Time ) * ( 4.0 ) ) ) - ( 0.37 ) ) ) ) ? vec4 ( 0.0,0.0,0.5,1.0 ) : ( ( ( ( ( ( vv0 ).x ) - ( 0.85 ) ) * ( ( ( vv0 ).x ) - ( 0.85 ) ) ) + ( ( ( ( vv0 ).y ) - ( 0.85 ) ) * ( ( ( vv0 ).y ) - ( 0.85 ) ) ) ) + ( ( 2.0e-3 ) * ( sin ( ( ( 5.0 ) * ( atan ( ( ( vv0 ).x ) - ( 0.85 ),( ( vv0 ).y ) - ( 0.85 ) ) ) ) - ( ( 5.0 ) * ( Time ) ) ) ) ) ) < ( ( 2.0e-2 ) * ( abs ( ( sin ( ( Time ) * ( 4.0 ) ) ) - ( 0.37 ) ) ) ) ? vec4 ( 0.0,0.0,1.0,1.0 ) : ( ( ( ( ( ( vv0 ).x ) - ( 0.85 ) ) * ( ( ( vv0 ).x ) - ( 0.85 ) ) ) + ( ( ( ( vv0 ).y ) - ( 0.85 ) ) * ( ( ( vv0 ).y ) - ( 0.85 ) ) ) ) + ( ( 2.0e-3 ) * ( sin ( ( ( 7.0 ) * ( atan ( ( ( vv0 ).x ) - ( 0.85 ),( ( vv0 ).y ) - ( 0.85 ) ) ) ) + ( ( 3.0 ) * ( Time ) ) ) ) ) ) < ( ( 5.0e-2 ) * ( abs ( ( sin ( ( Time ) * ( 4.0 ) ) ) - ( 0.37 ) ) ) ) ? vec4 ( 1.0,1.0,1.0,1.0 ) : vec4 ( 1.0,1.0,0.0,1.0 );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("t15",Parameter {name = "position4", ty = V4F}),("u15",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("b1",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 t15 ;\nin vec2 u15 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = u15;\ngl_Position = ( ( MVP ) * ( t15 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D b1 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = texture2D ( b1,vv0 );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F),("vertexUV",V2F)], slotUniforms = fromList [("MVP",M44F),("Time",Float)], slotPrimitive = Triangles, slotPrograms = [0,1]}], streams = [], commands = [SetRenderTarget 1,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 1.0)}],SetProgram 1,SetTexture 0 1,SetSamplerUniform "b1" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 128 128), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 128 128), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0}], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 0 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 1 0 Nothing)}]}], programs = [Program {programUniforms = fromList [("Time",Float)], programStreams = fromList [("j13",Parameter {name = "position4", ty = V4F}),("k13",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 j13 ;\nin vec2 k13 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = k13;\ngl_Position = ( j13 ) * ( vec4 ( 1.0,1.0,1.0,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform float Time ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).x ) - ( 0.85 ) ) * ( ( ( vv0 ).x ) - ( 0.85 ) ) ) + ( ( ( ( vv0 ).y ) - ( 0.85 ) ) * ( ( ( vv0 ).y ) - ( 0.85 ) ) ) ) + ( ( 5.0e-4 ) * ( sin ( ( ( 3.0 ) * ( atan ( ( ( vv0 ).x ) - ( 0.85 ),( ( vv0 ).y ) - ( 0.85 ) ) ) ) + ( ( 15.0 ) * ( Time ) ) ) ) ) ) < ( ( 5.0e-3 ) * ( abs ( ( sin ( ( Time ) * ( 4.0 ) ) ) - ( 0.37 ) ) ) ) ? vec4 ( 0.0,0.0,0.5,1.0 ) : ( ( ( ( ( ( vv0 ).x ) - ( 0.85 ) ) * ( ( ( vv0 ).x ) - ( 0.85 ) ) ) + ( ( ( ( vv0 ).y ) - ( 0.85 ) ) * ( ( ( vv0 ).y ) - ( 0.85 ) ) ) ) + ( ( 2.0e-3 ) * ( sin ( ( ( 5.0 ) * ( atan ( ( ( vv0 ).x ) - ( 0.85 ),( ( vv0 ).y ) - ( 0.85 ) ) ) ) - ( ( 5.0 ) * ( Time ) ) ) ) ) ) < ( ( 2.0e-2 ) * ( abs ( ( sin ( ( Time ) * ( 4.0 ) ) ) - ( 0.37 ) ) ) ) ? vec4 ( 0.0,0.0,1.0,1.0 ) : ( ( ( ( ( ( vv0 ).x ) - ( 0.85 ) ) * ( ( ( vv0 ).x ) - ( 0.85 ) ) ) + ( ( ( ( vv0 ).y ) - ( 0.85 ) ) * ( ( ( vv0 ).y ) - ( 0.85 ) ) ) ) + ( ( 2.0e-3 ) * ( sin ( ( ( 7.0 ) * ( atan ( ( ( vv0 ).x ) - ( 0.85 ),( ( vv0 ).y ) - ( 0.85 ) ) ) ) + ( ( 3.0 ) * ( Time ) ) ) ) ) ) < ( ( 5.0e-2 ) * ( abs ( ( sin ( ( Time ) * ( 4.0 ) ) ) - ( 0.37 ) ) ) ) ? vec4 ( 1.0,1.0,1.0,1.0 ) : vec4 ( 1.0,1.0,0.0,1.0 );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("t15",Parameter {name = "position4", ty = V4F}),("u15",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("b1",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 t15 ;\nin vec2 u15 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = u15;\ngl_Position = ( ( MVP ) * ( t15 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D b1 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = texture2D ( b1,vv0 );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F),("vertexUV",V2F)], slotUniforms = fromList [("MVP",M44F),("Time",Float)], slotPrimitive = Triangles, slotPrograms = [0,1]}], streams = [], commands = [SetRenderTarget 1,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 1.0)}],SetProgram 1,SetTexture 0 1,SetSamplerUniform "b1" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/helloWorld.out b/testdata/helloWorld.out index 436203b5..f77baf40 100644 --- a/testdata/helloWorld.out +++ b/testdata/helloWorld.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("f2",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 f2 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = f2;\ngl_Position = ( ( MVP ) * ( f2 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(true)) discard;\nf0 = vv0;\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.5 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("f2",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 f2 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = f2;\ngl_Position = ( ( MVP ) * ( f2 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nif (!(true)) discard;\nf0 = vv0;\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.5 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/line01.out b/testdata/line01.out index 7bc13716..42050280 100644 --- a/testdata/line01.out +++ b/testdata/line01.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("y1",Parameter {name = "attribute_0", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec3 y1 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = vec4 ( ( y1 ).x,( y1 ).y,( y1 ).z,1.0 );\ngl_Position = ( ( MVP ) * ( vec4 ( ( y1 ).x,( y1 ).y,( y1 ).z,1.0 ) ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [], streams = [StreamData {streamData = fromList [("attribute_0",VFloatArray [-2.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,2.0,0.0,0.0,2.0,0.0,0.0,3.0,0.0,0.0])], streamType = fromList [("attribute_0",V3F)], streamPrimitive = Lines, streamPrograms = [0]}], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.5 1.0)}],SetProgram 0,SetRasterContext (LineCtx 1.0 LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderStream 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("y1",Parameter {name = "attribute_0", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec3 y1 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = vec4 ( ( y1 ).x,( y1 ).y,( y1 ).z,1.0 );\ngl_Position = ( ( MVP ) * ( vec4 ( ( y1 ).x,( y1 ).y,( y1 ).z,1.0 ) ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [], streams = [StreamData {streamData = fromList [("attribute_0",VFloatArray [-2.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,2.0,0.0,0.0,2.0,0.0,0.0,3.0,0.0,0.0])], streamType = fromList [("attribute_0",V3F)], streamPrimitive = Lines, streamPrograms = [0]}], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.5 1.0)}],SetProgram 0,SetRasterContext (LineCtx 1.0 LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderStream 0]} \ No newline at end of file diff --git a/testdata/point01.out b/testdata/point01.out index f3223865..59984b59 100644 --- a/testdata/point01.out +++ b/testdata/point01.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("k2",Parameter {name = "attribute_0", ty = V3F}),("l2",Parameter {name = "attribute_1", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec3 k2 ;\nin vec4 l2 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = l2;\ngl_Position = ( ( MVP ) * ( vec4 ( ( k2 ).x,( k2 ).y,( k2 ).z,1.0 ) ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 30.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [], streams = [StreamData {streamData = fromList [("attribute_0",VFloatArray [-2.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,2.0,0.0,0.0,2.0,0.0,0.0,3.0,0.0,0.0]),("attribute_1",VFloatArray [1.0,0.0,0.0,1.0,1.0,0.0,0.0,1.0,1.0,0.0,0.0,1.0,1.0,0.0,0.0,1.0,1.0,0.0,0.0,1.0,1.0,0.0,0.0,1.0,1.0,0.0,0.0,1.0,1.0,0.0,0.0,1.0,1.0,0.0,0.0,1.0,1.0,0.0,0.0,1.0])], streamType = fromList [("attribute_0",V3F),("attribute_1",V4F)], streamPrimitive = Points, streamPrograms = [0]}], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.5 1.0)}],SetProgram 0,SetRasterContext (PointCtx ProgramPointSize 1.0 LowerLeft),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderStream 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("k2",Parameter {name = "attribute_0", ty = V3F}),("l2",Parameter {name = "attribute_1", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec3 k2 ;\nin vec4 l2 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = l2;\ngl_Position = ( ( MVP ) * ( vec4 ( ( k2 ).x,( k2 ).y,( k2 ).z,1.0 ) ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 30.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [], streams = [StreamData {streamData = fromList [("attribute_0",VFloatArray [-2.0,0.0,0.0,-1.0,0.0,0.0,-1.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.0,0.0,0.0,1.0,0.0,0.0,2.0,0.0,0.0,2.0,0.0,0.0,3.0,0.0,0.0]),("attribute_1",VFloatArray [1.0,0.0,0.0,1.0,1.0,0.0,0.0,1.0,1.0,0.0,0.0,1.0,1.0,0.0,0.0,1.0,1.0,0.0,0.0,1.0,1.0,0.0,0.0,1.0,1.0,0.0,0.0,1.0,1.0,0.0,0.0,1.0,1.0,0.0,0.0,1.0,1.0,0.0,0.0,1.0])], streamType = fromList [("attribute_0",V3F),("attribute_1",V4F)], streamPrimitive = Points, streamPrograms = [0]}], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.5 1.0)}],SetProgram 0,SetRasterContext (PointCtx ProgramPointSize 1.0 LowerLeft),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderStream 0]} \ No newline at end of file diff --git a/testdata/recursivetexture01.out b/testdata/recursivetexture01.out index 811dc547..896ccef8 100644 --- a/testdata/recursivetexture01.out +++ b/testdata/recursivetexture01.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0}], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 0 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 1 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 2 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 3 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 4 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 5 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 6 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 7 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 8 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 9 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 10 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 11 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 12 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 13 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 14 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 15 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 16 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 17 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 18 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 19 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 20 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 21 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 22 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 23 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 24 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 25 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 26 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 27 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 28 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 29 0 Nothing)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("h25",Parameter {name = "position4", ty = V4F}),("i25",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("c23",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 h25 ;\nin vec2 i25 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = i25;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.0 ),sin ( 0.0 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.0 ) ),cos ( 0.0 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( h25 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D c23 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( c23,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("r28",Parameter {name = "position4", ty = V4F}),("s28",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("o21",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 r28 ;\nin vec2 s28 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = s28;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.1 ),sin ( 0.1 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.1 ) ),cos ( 0.1 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( r28 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D o21 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( o21,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("b32",Parameter {name = "position4", ty = V4F}),("c32",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("a20",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 b32 ;\nin vec2 c32 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = c32;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.2 ),sin ( 0.2 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.2 ) ),cos ( 0.2 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( b32 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D a20 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( a20,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("l35",Parameter {name = "position4", ty = V4F}),("m35",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("m18",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 l35 ;\nin vec2 m35 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = m35;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.3 ),sin ( 0.3 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.3 ) ),cos ( 0.3 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( l35 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D m18 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( m18,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("v38",Parameter {name = "position4", ty = V4F}),("w38",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("y16",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 v38 ;\nin vec2 w38 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = w38;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.4 ),sin ( 0.4 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.4 ) ),cos ( 0.4 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( v38 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D y16 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( y16,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("f42",Parameter {name = "position4", ty = V4F}),("g42",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("k15",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 f42 ;\nin vec2 g42 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = g42;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.5 ),sin ( 0.5 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.5 ) ),cos ( 0.5 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( f42 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D k15 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( k15,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("p45",Parameter {name = "position4", ty = V4F}),("q45",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("w13",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 p45 ;\nin vec2 q45 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = q45;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.6 ),sin ( 0.6 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.6 ) ),cos ( 0.6 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( p45 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D w13 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( w13,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("a49",Parameter {name = "vertexUV", ty = V2F}),("z48",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [("i12",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 z48 ;\nin vec2 a49 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = a49;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.7 ),sin ( 0.7 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.7 ) ),cos ( 0.7 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( z48 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D i12 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( i12,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("j52",Parameter {name = "position4", ty = V4F}),("k52",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("u10",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 j52 ;\nin vec2 k52 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = k52;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.8 ),sin ( 0.8 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.8 ) ),cos ( 0.8 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( j52 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D u10 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( u10,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("t55",Parameter {name = "position4", ty = V4F}),("u55",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("g9",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 t55 ;\nin vec2 u55 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = u55;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.9 ),sin ( 0.9 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.9 ) ),cos ( 0.9 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( t55 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D g9 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( g9,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("d59",Parameter {name = "position4", ty = V4F}),("e59",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("s7",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 d59 ;\nin vec2 e59 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = e59;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 1.0 ),sin ( 1.0 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 1.0 ) ),cos ( 1.0 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( d59 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D s7 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( s7,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("n62",Parameter {name = "position4", ty = V4F}),("o62",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("e6",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 n62 ;\nin vec2 o62 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = o62;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 1.1 ),sin ( 1.1 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 1.1 ) ),cos ( 1.1 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( n62 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D e6 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( e6,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("x65",Parameter {name = "position4", ty = V4F}),("y65",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("q4",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 x65 ;\nin vec2 y65 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = y65;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 1.2 ),sin ( 1.2 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 1.2 ) ),cos ( 1.2 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( x65 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D q4 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( q4,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("h69",Parameter {name = "position4", ty = V4F}),("i69",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("c3",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 h69 ;\nin vec2 i69 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = i69;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 1.3 ),sin ( 1.3 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 1.3 ) ),cos ( 1.3 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( h69 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D c3 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( c3,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("r72",Parameter {name = "position4", ty = V4F}),("s72",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("o1",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 r72 ;\nin vec2 s72 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = s72;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 1.4 ),sin ( 1.4 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 1.4 ) ),cos ( 1.4 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( r72 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D o1 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( o1,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F),("vertexUV",V2F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14]}], streams = [], commands = [SetRenderTarget 15,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetRenderTarget 14,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 0,SetTexture 0 29,SetSamplerUniform "c23" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 13,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 1,SetTexture 0 27,SetSamplerUniform "o21" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 12,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 2,SetTexture 0 25,SetSamplerUniform "a20" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 11,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 3,SetTexture 0 23,SetSamplerUniform "m18" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 10,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 4,SetTexture 0 21,SetSamplerUniform "y16" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 9,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 5,SetTexture 0 19,SetSamplerUniform "k15" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 8,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 6,SetTexture 0 17,SetSamplerUniform "w13" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 7,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 7,SetTexture 0 15,SetSamplerUniform "i12" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 6,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 8,SetTexture 0 13,SetSamplerUniform "u10" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 5,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 9,SetTexture 0 11,SetSamplerUniform "g9" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 4,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 10,SetTexture 0 9,SetSamplerUniform "s7" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 3,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 11,SetTexture 0 7,SetSamplerUniform "e6" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 2,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 12,SetTexture 0 5,SetSamplerUniform "q4" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 1,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 13,SetTexture 0 3,SetSamplerUniform "c3" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 14,SetTexture 0 1,SetSamplerUniform "o1" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 256 256), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 256 256), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0}], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 0 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 1 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 2 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 3 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 4 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 5 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 6 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 7 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 8 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 9 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 10 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 11 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 12 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 13 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 14 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 15 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 16 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 17 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 18 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 19 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 20 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 21 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 22 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 23 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 24 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 25 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 26 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 27 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 28 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 29 0 Nothing)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("h25",Parameter {name = "position4", ty = V4F}),("i25",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("c23",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 h25 ;\nin vec2 i25 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = i25;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.0 ),sin ( 0.0 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.0 ) ),cos ( 0.0 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( h25 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D c23 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( c23,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("r28",Parameter {name = "position4", ty = V4F}),("s28",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("o21",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 r28 ;\nin vec2 s28 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = s28;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.1 ),sin ( 0.1 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.1 ) ),cos ( 0.1 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( r28 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D o21 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( o21,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("b32",Parameter {name = "position4", ty = V4F}),("c32",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("a20",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 b32 ;\nin vec2 c32 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = c32;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.2 ),sin ( 0.2 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.2 ) ),cos ( 0.2 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( b32 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D a20 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( a20,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("l35",Parameter {name = "position4", ty = V4F}),("m35",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("m18",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 l35 ;\nin vec2 m35 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = m35;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.3 ),sin ( 0.3 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.3 ) ),cos ( 0.3 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( l35 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D m18 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( m18,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("v38",Parameter {name = "position4", ty = V4F}),("w38",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("y16",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 v38 ;\nin vec2 w38 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = w38;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.4 ),sin ( 0.4 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.4 ) ),cos ( 0.4 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( v38 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D y16 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( y16,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("f42",Parameter {name = "position4", ty = V4F}),("g42",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("k15",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 f42 ;\nin vec2 g42 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = g42;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.5 ),sin ( 0.5 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.5 ) ),cos ( 0.5 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( f42 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D k15 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( k15,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("p45",Parameter {name = "position4", ty = V4F}),("q45",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("w13",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 p45 ;\nin vec2 q45 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = q45;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.6 ),sin ( 0.6 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.6 ) ),cos ( 0.6 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( p45 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D w13 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( w13,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("a49",Parameter {name = "vertexUV", ty = V2F}),("z48",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [("i12",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 z48 ;\nin vec2 a49 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = a49;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.7 ),sin ( 0.7 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.7 ) ),cos ( 0.7 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( z48 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D i12 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( i12,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("j52",Parameter {name = "position4", ty = V4F}),("k52",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("u10",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 j52 ;\nin vec2 k52 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = k52;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.8 ),sin ( 0.8 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.8 ) ),cos ( 0.8 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( j52 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D u10 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( u10,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("t55",Parameter {name = "position4", ty = V4F}),("u55",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("g9",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 t55 ;\nin vec2 u55 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = u55;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 0.9 ),sin ( 0.9 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 0.9 ) ),cos ( 0.9 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( t55 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D g9 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( g9,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("d59",Parameter {name = "position4", ty = V4F}),("e59",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("s7",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 d59 ;\nin vec2 e59 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = e59;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 1.0 ),sin ( 1.0 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 1.0 ) ),cos ( 1.0 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( d59 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D s7 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( s7,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("n62",Parameter {name = "position4", ty = V4F}),("o62",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("e6",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 n62 ;\nin vec2 o62 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = o62;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 1.1 ),sin ( 1.1 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 1.1 ) ),cos ( 1.1 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( n62 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D e6 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( e6,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("x65",Parameter {name = "position4", ty = V4F}),("y65",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("q4",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 x65 ;\nin vec2 y65 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = y65;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 1.2 ),sin ( 1.2 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 1.2 ) ),cos ( 1.2 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( x65 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D q4 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( q4,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("h69",Parameter {name = "position4", ty = V4F}),("i69",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("c3",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 h69 ;\nin vec2 i69 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = i69;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 1.3 ),sin ( 1.3 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 1.3 ) ),cos ( 1.3 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( h69 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D c3 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( c3,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("r72",Parameter {name = "position4", ty = V4F}),("s72",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("o1",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 r72 ;\nin vec2 s72 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = s72;\ngl_Position = ( MVP ) * ( ( ( mat4 ( vec4 ( 1.0,0.0,0.0,0.0 ),vec4 ( 0.0,cos ( 1.4 ),sin ( 1.4 ),0.0 ),vec4 ( 0.0,( 0.0 ) - ( sin ( 1.4 ) ),cos ( 1.4 ),0.0 ),vec4 ( 0.0,0.0,0.0,1.0 ) ) ) * ( r72 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D o1 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( ( ( ( ( ( vv0 ).xyxx ) * ( 0.7 ) ) + ( texture2D ( o1,vv0 ) ) ) * ( 0.7 ) ) * ( vec4 ( 1.0,1.0,1.0,0.0 ) ) ) + ( vec4 ( 0.0,0.0,0.0,1.0 ) );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F),("vertexUV",V2F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14]}], streams = [], commands = [SetRenderTarget 15,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetRenderTarget 14,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 0,SetTexture 0 29,SetSamplerUniform "c23" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 13,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 1,SetTexture 0 27,SetSamplerUniform "o21" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 12,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 2,SetTexture 0 25,SetSamplerUniform "a20" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 11,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 3,SetTexture 0 23,SetSamplerUniform "m18" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 10,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 4,SetTexture 0 21,SetSamplerUniform "y16" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 9,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 5,SetTexture 0 19,SetSamplerUniform "k15" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 8,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 6,SetTexture 0 17,SetSamplerUniform "w13" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 7,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 7,SetTexture 0 15,SetSamplerUniform "i12" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 6,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 8,SetTexture 0 13,SetSamplerUniform "u10" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 5,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 9,SetTexture 0 11,SetSamplerUniform "g9" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 4,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 10,SetTexture 0 9,SetSamplerUniform "s7" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 3,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 11,SetTexture 0 7,SetSamplerUniform "e6" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 2,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 12,SetTexture 0 5,SetSamplerUniform "q4" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 1,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 13,SetTexture 0 3,SetSamplerUniform "c3" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.0 1.0)}],SetProgram 14,SetTexture 0 1,SetSamplerUniform "o1" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/recursivetexture02.out b/testdata/recursivetexture02.out index 28e7e77b..a08dfadd 100644 --- a/testdata/recursivetexture02.out +++ b/testdata/recursivetexture02.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 1024 768), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 1024 768), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 1024 768), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 1024 768), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 1024 768), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 1024 768), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 1024 768), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 1024 768), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 1024 768), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 1024 768), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0}], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 0 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 1 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 2 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 3 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 4 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 5 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 6 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 7 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 8 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 9 0 Nothing)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("x7",Parameter {name = "position4", ty = V4F}),("y7",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 x7 ;\nin vec2 y7 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = y7;\ngl_Position = ( ( MVP ) * ( x7 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv0 ).xyxy;\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("m10",Parameter {name = "position4", ty = V4F}),("n10",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("k5",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 m10 ;\nin vec2 n10 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = n10;\ngl_Position = ( ( MVP ) * ( m10 ) ) * ( vec4 ( 1.0,1.0,1.0,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D k5 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( texture2D ( k5,vv0 ) ) * ( vec4 ( 0.7,0.7,0.7,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("b13",Parameter {name = "position4", ty = V4F}),("c13",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("i4",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 b13 ;\nin vec2 c13 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = c13;\ngl_Position = ( ( MVP ) * ( b13 ) ) * ( vec4 ( 1.0,1.0,1.0,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D i4 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( texture2D ( i4,vv0 ) ) * ( vec4 ( 0.7,0.7,0.7,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("q15",Parameter {name = "position4", ty = V4F}),("r15",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("g3",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 q15 ;\nin vec2 r15 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = r15;\ngl_Position = ( ( MVP ) * ( q15 ) ) * ( vec4 ( 1.0,1.0,1.0,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D g3 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( texture2D ( g3,vv0 ) ) * ( vec4 ( 0.7,0.7,0.7,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("f18",Parameter {name = "position4", ty = V4F}),("g18",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("e2",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 f18 ;\nin vec2 g18 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = g18;\ngl_Position = ( ( MVP ) * ( f18 ) ) * ( vec4 ( 1.0,1.0,1.0,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D e2 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( texture2D ( e2,vv0 ) ) * ( vec4 ( 0.7,0.7,0.7,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("u20",Parameter {name = "position4", ty = V4F}),("v20",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("c1",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 u20 ;\nin vec2 v20 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = v20;\ngl_Position = ( ( MVP ) * ( u20 ) ) * ( vec4 ( 1.0,1.0,1.0,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D c1 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( texture2D ( c1,vv0 ) ) * ( vec4 ( 0.7,0.7,0.7,1.0 ) );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F),("vertexUV",V2F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [0,1,2,3,4,5]}], streams = [], commands = [SetRenderTarget 5,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.5 0.0 0.0 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 4,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.5 0.0 0.0 1.0)}],SetProgram 1,SetTexture 0 9,SetSamplerUniform "k5" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 3,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.5 0.0 0.0 1.0)}],SetProgram 2,SetTexture 0 7,SetSamplerUniform "i4" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 2,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.5 0.0 0.0 1.0)}],SetProgram 3,SetTexture 0 5,SetSamplerUniform "g3" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 1,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.5 0.0 0.0 1.0)}],SetProgram 4,SetTexture 0 3,SetSamplerUniform "e2" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.5 0.0 0.0 1.0)}],SetProgram 5,SetTexture 0 1,SetSamplerUniform "c1" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 1024 768), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 1024 768), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 1024 768), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 1024 768), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 1024 768), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 1024 768), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 1024 768), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 1024 768), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 1024 768), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 1024 768), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0}], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 0 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 1 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 2 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 3 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 4 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 5 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 6 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 7 0 Nothing)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 8 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 9 0 Nothing)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("x7",Parameter {name = "position4", ty = V4F}),("y7",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 x7 ;\nin vec2 y7 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = y7;\ngl_Position = ( ( MVP ) * ( x7 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv0 ).xyxy;\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("m10",Parameter {name = "position4", ty = V4F}),("n10",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("k5",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 m10 ;\nin vec2 n10 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = n10;\ngl_Position = ( ( MVP ) * ( m10 ) ) * ( vec4 ( 1.0,1.0,1.0,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D k5 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( texture2D ( k5,vv0 ) ) * ( vec4 ( 0.7,0.7,0.7,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("b13",Parameter {name = "position4", ty = V4F}),("c13",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("i4",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 b13 ;\nin vec2 c13 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = c13;\ngl_Position = ( ( MVP ) * ( b13 ) ) * ( vec4 ( 1.0,1.0,1.0,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D i4 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( texture2D ( i4,vv0 ) ) * ( vec4 ( 0.7,0.7,0.7,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("q15",Parameter {name = "position4", ty = V4F}),("r15",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("g3",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 q15 ;\nin vec2 r15 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = r15;\ngl_Position = ( ( MVP ) * ( q15 ) ) * ( vec4 ( 1.0,1.0,1.0,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D g3 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( texture2D ( g3,vv0 ) ) * ( vec4 ( 0.7,0.7,0.7,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("f18",Parameter {name = "position4", ty = V4F}),("g18",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("e2",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 f18 ;\nin vec2 g18 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = g18;\ngl_Position = ( ( MVP ) * ( f18 ) ) * ( vec4 ( 1.0,1.0,1.0,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D e2 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( texture2D ( e2,vv0 ) ) * ( vec4 ( 0.7,0.7,0.7,1.0 ) );\n}\n"},Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("u20",Parameter {name = "position4", ty = V4F}),("v20",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("c1",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 u20 ;\nin vec2 v20 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = v20;\ngl_Position = ( ( MVP ) * ( u20 ) ) * ( vec4 ( 1.0,1.0,1.0,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D c1 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( texture2D ( c1,vv0 ) ) * ( vec4 ( 0.7,0.7,0.7,1.0 ) );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F),("vertexUV",V2F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [0,1,2,3,4,5]}], streams = [], commands = [SetRenderTarget 5,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.5 0.0 0.0 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 4,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.5 0.0 0.0 1.0)}],SetProgram 1,SetTexture 0 9,SetSamplerUniform "k5" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 3,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.5 0.0 0.0 1.0)}],SetProgram 2,SetTexture 0 7,SetSamplerUniform "i4" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 2,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.5 0.0 0.0 1.0)}],SetProgram 3,SetTexture 0 5,SetSamplerUniform "g3" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 1,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.5 0.0 0.0 1.0)}],SetProgram 4,SetTexture 0 3,SetSamplerUniform "e2" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.5 0.0 0.0 1.0)}],SetProgram 5,SetTexture 0 1,SetSamplerUniform "c1" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/reduce01.out b/testdata/reduce01.out index 94d597e6..bc799c35 100644 --- a/testdata/reduce01.out +++ b/testdata/reduce01.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [], programStreams = fromList [("v1",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 v1 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = v1;\ngl_Position = v1;\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.4 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [], programStreams = fromList [("v1",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 v1 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = v1;\ngl_Position = v1;\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.4 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/reduce02.out b/testdata/reduce02.out index 9fde0d73..db0c7adb 100644 --- a/testdata/reduce02.out +++ b/testdata/reduce02.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [], slots = [], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.4 1.0)}]]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [], slots = [], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.4 1.0)}]]} \ No newline at end of file diff --git a/testdata/reduce03.out b/testdata/reduce03.out index faef5c91..46637eb0 100644 --- a/testdata/reduce03.out +++ b/testdata/reduce03.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [], slots = [], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.4 1.0)}]]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [], slots = [], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.4 1.0)}]]} \ No newline at end of file diff --git a/testdata/reduce04.out b/testdata/reduce04.out index 9fde0d73..db0c7adb 100644 --- a/testdata/reduce04.out +++ b/testdata/reduce04.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [], slots = [], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.4 1.0)}]]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [], slots = [], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.4 1.0)}]]} \ No newline at end of file diff --git a/testdata/reduce05.out b/testdata/reduce05.out index 60eb1c03..40f73394 100644 --- a/testdata/reduce05.out +++ b/testdata/reduce05.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [], programStreams = fromList [("w1",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 w1 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = w1;\ngl_Position = w1;\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vec4 ( 1.0,0.0,0.0,1.0 );\n}\n"},Program {programUniforms = fromList [], programStreams = fromList [("u3",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 u3 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = u3;\ngl_Position = u3;\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vec4 ( 0.0,1.0,0.0,1.0 );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [], slotPrimitive = Triangles, slotPrograms = [0,1]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 1.0 1.0)}],SetProgram 1,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [ColorOp NoBlending (VV4B (V4 False True False False))]}),RenderSlot 0,SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [ColorOp NoBlending (VV4B (V4 True False False False))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [], programStreams = fromList [("w1",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 w1 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = w1;\ngl_Position = w1;\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vec4 ( 1.0,0.0,0.0,1.0 );\n}\n"},Program {programUniforms = fromList [], programStreams = fromList [("u3",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 u3 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = u3;\ngl_Position = u3;\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vec4 ( 0.0,1.0,0.0,1.0 );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [], slotPrimitive = Triangles, slotPrograms = [0,1]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 1.0 1.0)}],SetProgram 1,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [ColorOp NoBlending (VV4B (V4 False True False False))]}),RenderSlot 0,SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [ColorOp NoBlending (VV4B (V4 True False False False))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/simple02.out b/testdata/simple02.out index 7ab7d939..c67cf5de 100644 --- a/testdata/simple02.out +++ b/testdata/simple02.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("j2",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 j2 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = j2;\ngl_Position = ( MVP ) * ( j2 );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv0 ) * ( vec4 ( 1.0,0.4,0.0,0.2 ) );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.5 0.0 0.4 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset FirstVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = SrcAlpha, colorFDst = OneMinusSrcAlpha, alphaFSrc = SrcAlpha, alphaFDst = OneMinusSrcAlpha, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("j2",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 j2 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = j2;\ngl_Position = ( MVP ) * ( j2 );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = ( vv0 ) * ( vec4 ( 1.0,0.4,0.0,0.2 ) );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.5 0.0 0.4 1.0)}],SetProgram 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset FirstVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp (Blend {colorEqSrc = FuncAdd, alphaEqSrc = FuncAdd, colorFSrc = SrcAlpha, colorFDst = OneMinusSrcAlpha, alphaFSrc = SrcAlpha, alphaFDst = OneMinusSrcAlpha, color = V4 1.0 1.0 1.0 1.0}) (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/simple03.out b/testdata/simple03.out index b266c22b..614a4869 100644 --- a/testdata/simple03.out +++ b/testdata/simple03.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("viewProj",M44F)], programStreams = fromList [("k2",Parameter {name = "position", ty = V3F}),("l2",Parameter {name = "color", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 viewProj ;\nin vec3 k2 ;\nin vec3 l2 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = vec4 ( ( l2 ).x,( l2 ).y,( l2 ).z,1.0 );\ngl_Position = ( viewProj ) * ( vec4 ( ( k2 ).x,( k2 ).y,( k2 ).z,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vec4 ( 1.0,1.0,1.0,1.0 );\n}\n"},Program {programUniforms = fromList [("viewProj",M44F)], programStreams = fromList [("q5",Parameter {name = "position", ty = V3F}),("r5",Parameter {name = "color", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 viewProj ;\nin vec3 q5 ;\nin vec3 r5 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = vec4 ( ( r5 ).x,( r5 ).y,( r5 ).z,1.0 );\ngl_Position = ( viewProj ) * ( vec4 ( ( q5 ).x,( q5 ).y,( q5 ).z,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [Slot {slotName = "missing shader", slotStreams = fromList [("color",V3F),("position",V3F)], slotUniforms = fromList [("viewProj",M44F)], slotPrimitive = Triangles, slotPrograms = [0,1]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.4 1.0)}],SetProgram 1,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset FirstVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 0,SetRasterContext (TriangleCtx CullNone (PolygonLine 20.0) (Offset (-1.0) 0.0) FirstVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("viewProj",M44F)], programStreams = fromList [("k2",Parameter {name = "position", ty = V3F}),("l2",Parameter {name = "color", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 viewProj ;\nin vec3 k2 ;\nin vec3 l2 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = vec4 ( ( l2 ).x,( l2 ).y,( l2 ).z,1.0 );\ngl_Position = ( viewProj ) * ( vec4 ( ( k2 ).x,( k2 ).y,( k2 ).z,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vec4 ( 1.0,1.0,1.0,1.0 );\n}\n"},Program {programUniforms = fromList [("viewProj",M44F)], programStreams = fromList [("q5",Parameter {name = "position", ty = V3F}),("r5",Parameter {name = "color", ty = V3F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 viewProj ;\nin vec3 q5 ;\nin vec3 r5 ;\nsmooth out vec4 vv0 ;\nvoid main() {\nvv0 = vec4 ( ( r5 ).x,( r5 ).y,( r5 ).z,1.0 );\ngl_Position = ( viewProj ) * ( vec4 ( ( q5 ).x,( q5 ).y,( q5 ).z,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nsmooth in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [Slot {slotName = "missing shader", slotStreams = fromList [("color",V3F),("position",V3F)], slotUniforms = fromList [("viewProj",M44F)], slotPrimitive = Triangles, slotPrograms = [0,1]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 0.4 1.0)}],SetProgram 1,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset FirstVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0,SetProgram 0,SetRasterContext (TriangleCtx CullNone (PolygonLine 20.0) (Offset (-1.0) 0.0) FirstVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Lequal True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/texture01.out b/testdata/texture01.out index 95e212fc..b9cf912d 100644 --- a/testdata/texture01.out +++ b/testdata/texture01.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F),("diffuse",FTexture2D)], programStreams = fromList [("k2",Parameter {name = "position4", ty = V4F}),("l2",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("diffuse",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 k2 ;\nin vec2 l2 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = l2;\ngl_Position = ( ( MVP ) * ( k2 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D diffuse ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = texture2D ( diffuse,vv0 );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F),("vertexUV",V2F)], slotUniforms = fromList [("MVP",M44F),("diffuse",FTexture2D)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 1.0)}],SetProgram 0,SetSamplerUniform "diffuse" 1,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F),("diffuse",FTexture2D)], programStreams = fromList [("k2",Parameter {name = "position4", ty = V4F}),("l2",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("diffuse",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 k2 ;\nin vec2 l2 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = l2;\ngl_Position = ( ( MVP ) * ( k2 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D diffuse ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = texture2D ( diffuse,vv0 );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F),("vertexUV",V2F)], slotUniforms = fromList [("MVP",M44F),("diffuse",FTexture2D)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 1.0)}],SetProgram 0,SetSamplerUniform "diffuse" 1,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/texture02.out b/testdata/texture02.out index f6e56e85..54fda2a8 100644 --- a/testdata/texture02.out +++ b/testdata/texture02.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 128 128), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 128 128), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0}], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 0 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 1 0 Nothing)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("e3",Parameter {name = "position4", ty = V4F}),("f3",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("b1",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 e3 ;\nin vec2 f3 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = f3;\ngl_Position = ( ( MVP ) * ( e3 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D b1 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = texture2D ( b1,vv0 );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F),("vertexUV",V2F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 1,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 1.0 1.0)}],SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 1.0)}],SetProgram 0,SetTexture 0 1,SetSamplerUniform "b1" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [TextureDescriptor {textureType = Texture2D (FloatT Red) 1, textureSize = VV2U (V2 128 128), textureSemantic = Depth, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0},TextureDescriptor {textureType = Texture2D (FloatT RGBA) 1, textureSize = VV2U (V2 128 128), textureSemantic = Color, textureSampler = SamplerDescriptor {samplerWrapS = Repeat, samplerWrapT = Nothing, samplerWrapR = Nothing, samplerMinFilter = Linear, samplerMagFilter = Linear, samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0), samplerMinLod = Nothing, samplerMaxLod = Nothing, samplerLodBias = 0.0, samplerCompareFunc = Nothing}, textureBaseLevel = 0, textureMaxLevel = 0}], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)},TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]},RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (TextureImage 0 0 Nothing)},TargetItem {targetSemantic = Color, targetRef = Just (TextureImage 1 0 Nothing)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("e3",Parameter {name = "position4", ty = V4F}),("f3",Parameter {name = "vertexUV", ty = V2F})], programInTextures = fromList [("b1",FTexture2D)], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 e3 ;\nin vec2 f3 ;\nsmooth out vec2 vv0 ;\nvoid main() {\nvv0 = f3;\ngl_Position = ( ( MVP ) * ( e3 ) ) * ( vec4 ( 0.5,0.5,0.5,1.0 ) );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform sampler2D b1 ;\nsmooth in vec2 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = texture2D ( b1,vv0 );\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F),("vertexUV",V2F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Triangles, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 1,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.0 0.0 1.0 1.0)}],SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0},ClearImage {imageSemantic = Color, clearValue = VV4F (V4 1.0 0.0 0.0 1.0)}],SetProgram 0,SetTexture 0 1,SetSamplerUniform "b1" 0,SetRasterContext (TriangleCtx CullNone PolygonFill NoOffset LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less True,ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/uniformparam01.out b/testdata/uniformparam01.out index f6a85288..242674d6 100644 --- a/testdata/uniformparam01.out +++ b/testdata/uniformparam01.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("u1",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 u1 ;\nflat out vec4 vv0 ;\nvoid main() {\nvv0 = u1;\ngl_Position = ( MVP ) * ( u1 );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nflat in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Lines, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.5 0.0 0.4 1.0)}],SetProgram 0,SetRasterContext (LineCtx 1.0 LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("u1",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 u1 ;\nflat out vec4 vv0 ;\nvoid main() {\nvv0 = u1;\ngl_Position = ( MVP ) * ( u1 );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nflat in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Lines, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.5 0.0 0.4 1.0)}],SetProgram 0,SetRasterContext (LineCtx 1.0 LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/uniformparam02.out b/testdata/uniformparam02.out index f1020407..5196493a 100644 --- a/testdata/uniformparam02.out +++ b/testdata/uniformparam02.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)}]}], programs = [Program {programUniforms = fromList [], programStreams = fromList [("m1",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 m1 ;\nflat out vec4 vv0 ;\nvoid main() {\nvv0 = m1;\ngl_Position = m1;\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nflat in vec4 vv0 ;\nvoid main() {\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [], slotPrimitive = Lines, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0}],SetProgram 0,SetRasterContext (LineCtx 1.0 LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less False]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Depth, targetRef = Just (Framebuffer Depth)}]}], programs = [Program {programUniforms = fromList [], programStreams = fromList [("m1",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nin vec4 m1 ;\nflat out vec4 vv0 ;\nvoid main() {\nvv0 = m1;\ngl_Position = m1;\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nflat in vec4 vv0 ;\nvoid main() {\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [], slotPrimitive = Lines, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Depth, clearValue = VFloat 1000.0}],SetProgram 0,SetRasterContext (LineCtx 1.0 LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [DepthOp Less False]}),RenderSlot 0]} \ No newline at end of file diff --git a/testdata/uniformparam03.out b/testdata/uniformparam03.out index f6a85288..242674d6 100644 --- a/testdata/uniformparam03.out +++ b/testdata/uniformparam03.out @@ -1 +1 @@ -Pipeline {backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("u1",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 u1 ;\nflat out vec4 vv0 ;\nvoid main() {\nvv0 = u1;\ngl_Position = ( MVP ) * ( u1 );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nflat in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Lines, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.5 0.0 0.4 1.0)}],SetProgram 0,SetRasterContext (LineCtx 1.0 LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file +Pipeline {info = "generated by lambdcube-compiler 0.5.0.0", backend = OpenGL33, textures = [], samplers = [], targets = [RenderTarget {renderTargets = [TargetItem {targetSemantic = Color, targetRef = Just (Framebuffer Color)}]}], programs = [Program {programUniforms = fromList [("MVP",M44F)], programStreams = fromList [("u1",Parameter {name = "position4", ty = V4F})], programInTextures = fromList [], programOutput = [Parameter {name = "f0", ty = V4F}], vertexShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nuniform mat4 MVP ;\nin vec4 u1 ;\nflat out vec4 vv0 ;\nvoid main() {\nvv0 = u1;\ngl_Position = ( MVP ) * ( u1 );\ngl_PointSize = 1.0;\n}\n", geometryShader = Nothing, fragmentShader = "#version 330 core\nvec4 texture2D(sampler2D s, vec2 uv){return texture(s,uv);}\nflat in vec4 vv0 ;\nout vec4 f0 ;\nvoid main() {\nf0 = vv0;\n}\n"}], slots = [Slot {slotName = "stream4", slotStreams = fromList [("position4",V4F)], slotUniforms = fromList [("MVP",M44F)], slotPrimitive = Lines, slotPrograms = [0]}], streams = [], commands = [SetRenderTarget 0,ClearRenderTarget [ClearImage {imageSemantic = Color, clearValue = VV4F (V4 0.5 0.0 0.4 1.0)}],SetProgram 0,SetRasterContext (LineCtx 1.0 LastVertex),SetAccumulationContext (AccumulationContext {accViewportName = Nothing, accOperations = [ColorOp NoBlending (VV4B (V4 True True True True))]}),RenderSlot 0]} \ No newline at end of file -- cgit v1.2.3