summaryrefslogtreecommitdiff
path: root/testdata
diff options
context:
space:
mode:
authorCsaba Hruska <csaba.hruska@gmail.com>2016-03-01 11:21:29 +0100
committerCsaba Hruska <csaba.hruska@gmail.com>2016-03-01 11:21:29 +0100
commit8747321abd4d6259533ed186d9505735c0e162f9 (patch)
treef80fc9cecac4b17bbf00cdabf75259d1f9c28869 /testdata
parentd8fb866c04b9221c9ef8e23f924db08045591cdd (diff)
adjust recursive texture example
Diffstat (limited to 'testdata')
-rw-r--r--testdata/editor-examples/RecursiveTexture.lc2
-rw-r--r--testdata/editor-examples/RecursiveTexture.out2575
2 files changed, 8 insertions, 2569 deletions
diff --git a/testdata/editor-examples/RecursiveTexture.lc b/testdata/editor-examples/RecursiveTexture.lc
index 69d54447..fca21946 100644
--- a/testdata/editor-examples/RecursiveTexture.lc
+++ b/testdata/editor-examples/RecursiveTexture.lc
@@ -23,5 +23,5 @@ cube' res (n :: Float) fb =
23 sampler = Sampler LinearFilter MirroredRepeat $ Texture2D (V2 res res) (PrjImageColor fb) 23 sampler = Sampler LinearFilter MirroredRepeat $ Texture2D (V2 res res) (PrjImageColor fb)
24 24
25main :: Output 25main :: Output
26main = ScreenOut $ snd $ iterate (\(n, f) -> (n+1, cube' 256 n f)) (0, clear) !! 15 26main = ScreenOut $ snd $ iterate (\(n, f) -> (n+1, cube' 256 n f)) (0, clear) !! 5
27 27
diff --git a/testdata/editor-examples/RecursiveTexture.out b/testdata/editor-examples/RecursiveTexture.out
index 9c4cfba8..2a479b09 100644
--- a/testdata/editor-examples/RecursiveTexture.out
+++ b/testdata/editor-examples/RecursiveTexture.out
@@ -202,406 +202,6 @@ Pipeline
202 , textureBaseLevel = 0 202 , textureBaseLevel = 0
203 , textureMaxLevel = 0 203 , textureMaxLevel = 0
204 } 204 }
205 , TextureDescriptor
206 { textureType = Texture2D (FloatT Red) 1
207 , textureSize = VV2U (V2 256 256)
208 , textureSemantic = Depth
209 , textureSampler =
210 SamplerDescriptor
211 { samplerWrapS = Repeat
212 , samplerWrapT = Nothing
213 , samplerWrapR = Nothing
214 , samplerMinFilter = Linear
215 , samplerMagFilter = Linear
216 , samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0)
217 , samplerMinLod = Nothing
218 , samplerMaxLod = Nothing
219 , samplerLodBias = 0.0
220 , samplerCompareFunc = Nothing
221 }
222 , textureBaseLevel = 0
223 , textureMaxLevel = 0
224 }
225 , TextureDescriptor
226 { textureType = Texture2D (FloatT RGBA) 1
227 , textureSize = VV2U (V2 256 256)
228 , textureSemantic = Color
229 , textureSampler =
230 SamplerDescriptor
231 { samplerWrapS = Repeat
232 , samplerWrapT = Nothing
233 , samplerWrapR = Nothing
234 , samplerMinFilter = Linear
235 , samplerMagFilter = Linear
236 , samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0)
237 , samplerMinLod = Nothing
238 , samplerMaxLod = Nothing
239 , samplerLodBias = 0.0
240 , samplerCompareFunc = Nothing
241 }
242 , textureBaseLevel = 0
243 , textureMaxLevel = 0
244 }
245 , TextureDescriptor
246 { textureType = Texture2D (FloatT Red) 1
247 , textureSize = VV2U (V2 256 256)
248 , textureSemantic = Depth
249 , textureSampler =
250 SamplerDescriptor
251 { samplerWrapS = Repeat
252 , samplerWrapT = Nothing
253 , samplerWrapR = Nothing
254 , samplerMinFilter = Linear
255 , samplerMagFilter = Linear
256 , samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0)
257 , samplerMinLod = Nothing
258 , samplerMaxLod = Nothing
259 , samplerLodBias = 0.0
260 , samplerCompareFunc = Nothing
261 }
262 , textureBaseLevel = 0
263 , textureMaxLevel = 0
264 }
265 , TextureDescriptor
266 { textureType = Texture2D (FloatT RGBA) 1
267 , textureSize = VV2U (V2 256 256)
268 , textureSemantic = Color
269 , textureSampler =
270 SamplerDescriptor
271 { samplerWrapS = Repeat
272 , samplerWrapT = Nothing
273 , samplerWrapR = Nothing
274 , samplerMinFilter = Linear
275 , samplerMagFilter = Linear
276 , samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0)
277 , samplerMinLod = Nothing
278 , samplerMaxLod = Nothing
279 , samplerLodBias = 0.0
280 , samplerCompareFunc = Nothing
281 }
282 , textureBaseLevel = 0
283 , textureMaxLevel = 0
284 }
285 , TextureDescriptor
286 { textureType = Texture2D (FloatT Red) 1
287 , textureSize = VV2U (V2 256 256)
288 , textureSemantic = Depth
289 , textureSampler =
290 SamplerDescriptor
291 { samplerWrapS = Repeat
292 , samplerWrapT = Nothing
293 , samplerWrapR = Nothing
294 , samplerMinFilter = Linear
295 , samplerMagFilter = Linear
296 , samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0)
297 , samplerMinLod = Nothing
298 , samplerMaxLod = Nothing
299 , samplerLodBias = 0.0
300 , samplerCompareFunc = Nothing
301 }
302 , textureBaseLevel = 0
303 , textureMaxLevel = 0
304 }
305 , TextureDescriptor
306 { textureType = Texture2D (FloatT RGBA) 1
307 , textureSize = VV2U (V2 256 256)
308 , textureSemantic = Color
309 , textureSampler =
310 SamplerDescriptor
311 { samplerWrapS = Repeat
312 , samplerWrapT = Nothing
313 , samplerWrapR = Nothing
314 , samplerMinFilter = Linear
315 , samplerMagFilter = Linear
316 , samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0)
317 , samplerMinLod = Nothing
318 , samplerMaxLod = Nothing
319 , samplerLodBias = 0.0
320 , samplerCompareFunc = Nothing
321 }
322 , textureBaseLevel = 0
323 , textureMaxLevel = 0
324 }
325 , TextureDescriptor
326 { textureType = Texture2D (FloatT Red) 1
327 , textureSize = VV2U (V2 256 256)
328 , textureSemantic = Depth
329 , textureSampler =
330 SamplerDescriptor
331 { samplerWrapS = Repeat
332 , samplerWrapT = Nothing
333 , samplerWrapR = Nothing
334 , samplerMinFilter = Linear
335 , samplerMagFilter = Linear
336 , samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0)
337 , samplerMinLod = Nothing
338 , samplerMaxLod = Nothing
339 , samplerLodBias = 0.0
340 , samplerCompareFunc = Nothing
341 }
342 , textureBaseLevel = 0
343 , textureMaxLevel = 0
344 }
345 , TextureDescriptor
346 { textureType = Texture2D (FloatT RGBA) 1
347 , textureSize = VV2U (V2 256 256)
348 , textureSemantic = Color
349 , textureSampler =
350 SamplerDescriptor
351 { samplerWrapS = Repeat
352 , samplerWrapT = Nothing
353 , samplerWrapR = Nothing
354 , samplerMinFilter = Linear
355 , samplerMagFilter = Linear
356 , samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0)
357 , samplerMinLod = Nothing
358 , samplerMaxLod = Nothing
359 , samplerLodBias = 0.0
360 , samplerCompareFunc = Nothing
361 }
362 , textureBaseLevel = 0
363 , textureMaxLevel = 0
364 }
365 , TextureDescriptor
366 { textureType = Texture2D (FloatT Red) 1
367 , textureSize = VV2U (V2 256 256)
368 , textureSemantic = Depth
369 , textureSampler =
370 SamplerDescriptor
371 { samplerWrapS = Repeat
372 , samplerWrapT = Nothing
373 , samplerWrapR = Nothing
374 , samplerMinFilter = Linear
375 , samplerMagFilter = Linear
376 , samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0)
377 , samplerMinLod = Nothing
378 , samplerMaxLod = Nothing
379 , samplerLodBias = 0.0
380 , samplerCompareFunc = Nothing
381 }
382 , textureBaseLevel = 0
383 , textureMaxLevel = 0
384 }
385 , TextureDescriptor
386 { textureType = Texture2D (FloatT RGBA) 1
387 , textureSize = VV2U (V2 256 256)
388 , textureSemantic = Color
389 , textureSampler =
390 SamplerDescriptor
391 { samplerWrapS = Repeat
392 , samplerWrapT = Nothing
393 , samplerWrapR = Nothing
394 , samplerMinFilter = Linear
395 , samplerMagFilter = Linear
396 , samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0)
397 , samplerMinLod = Nothing
398 , samplerMaxLod = Nothing
399 , samplerLodBias = 0.0
400 , samplerCompareFunc = Nothing
401 }
402 , textureBaseLevel = 0
403 , textureMaxLevel = 0
404 }
405 , TextureDescriptor
406 { textureType = Texture2D (FloatT Red) 1
407 , textureSize = VV2U (V2 256 256)
408 , textureSemantic = Depth
409 , textureSampler =
410 SamplerDescriptor
411 { samplerWrapS = Repeat
412 , samplerWrapT = Nothing
413 , samplerWrapR = Nothing
414 , samplerMinFilter = Linear
415 , samplerMagFilter = Linear
416 , samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0)
417 , samplerMinLod = Nothing
418 , samplerMaxLod = Nothing
419 , samplerLodBias = 0.0
420 , samplerCompareFunc = Nothing
421 }
422 , textureBaseLevel = 0
423 , textureMaxLevel = 0
424 }
425 , TextureDescriptor
426 { textureType = Texture2D (FloatT RGBA) 1
427 , textureSize = VV2U (V2 256 256)
428 , textureSemantic = Color
429 , textureSampler =
430 SamplerDescriptor
431 { samplerWrapS = Repeat
432 , samplerWrapT = Nothing
433 , samplerWrapR = Nothing
434 , samplerMinFilter = Linear
435 , samplerMagFilter = Linear
436 , samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0)
437 , samplerMinLod = Nothing
438 , samplerMaxLod = Nothing
439 , samplerLodBias = 0.0
440 , samplerCompareFunc = Nothing
441 }
442 , textureBaseLevel = 0
443 , textureMaxLevel = 0
444 }
445 , TextureDescriptor
446 { textureType = Texture2D (FloatT Red) 1
447 , textureSize = VV2U (V2 256 256)
448 , textureSemantic = Depth
449 , textureSampler =
450 SamplerDescriptor
451 { samplerWrapS = Repeat
452 , samplerWrapT = Nothing
453 , samplerWrapR = Nothing
454 , samplerMinFilter = Linear
455 , samplerMagFilter = Linear
456 , samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0)
457 , samplerMinLod = Nothing
458 , samplerMaxLod = Nothing
459 , samplerLodBias = 0.0
460 , samplerCompareFunc = Nothing
461 }
462 , textureBaseLevel = 0
463 , textureMaxLevel = 0
464 }
465 , TextureDescriptor
466 { textureType = Texture2D (FloatT RGBA) 1
467 , textureSize = VV2U (V2 256 256)
468 , textureSemantic = Color
469 , textureSampler =
470 SamplerDescriptor
471 { samplerWrapS = Repeat
472 , samplerWrapT = Nothing
473 , samplerWrapR = Nothing
474 , samplerMinFilter = Linear
475 , samplerMagFilter = Linear
476 , samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0)
477 , samplerMinLod = Nothing
478 , samplerMaxLod = Nothing
479 , samplerLodBias = 0.0
480 , samplerCompareFunc = Nothing
481 }
482 , textureBaseLevel = 0
483 , textureMaxLevel = 0
484 }
485 , TextureDescriptor
486 { textureType = Texture2D (FloatT Red) 1
487 , textureSize = VV2U (V2 256 256)
488 , textureSemantic = Depth
489 , textureSampler =
490 SamplerDescriptor
491 { samplerWrapS = Repeat
492 , samplerWrapT = Nothing
493 , samplerWrapR = Nothing
494 , samplerMinFilter = Linear
495 , samplerMagFilter = Linear
496 , samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0)
497 , samplerMinLod = Nothing
498 , samplerMaxLod = Nothing
499 , samplerLodBias = 0.0
500 , samplerCompareFunc = Nothing
501 }
502 , textureBaseLevel = 0
503 , textureMaxLevel = 0
504 }
505 , TextureDescriptor
506 { textureType = Texture2D (FloatT RGBA) 1
507 , textureSize = VV2U (V2 256 256)
508 , textureSemantic = Color
509 , textureSampler =
510 SamplerDescriptor
511 { samplerWrapS = Repeat
512 , samplerWrapT = Nothing
513 , samplerWrapR = Nothing
514 , samplerMinFilter = Linear
515 , samplerMagFilter = Linear
516 , samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0)
517 , samplerMinLod = Nothing
518 , samplerMaxLod = Nothing
519 , samplerLodBias = 0.0
520 , samplerCompareFunc = Nothing
521 }
522 , textureBaseLevel = 0
523 , textureMaxLevel = 0
524 }
525 , TextureDescriptor
526 { textureType = Texture2D (FloatT Red) 1
527 , textureSize = VV2U (V2 256 256)
528 , textureSemantic = Depth
529 , textureSampler =
530 SamplerDescriptor
531 { samplerWrapS = Repeat
532 , samplerWrapT = Nothing
533 , samplerWrapR = Nothing
534 , samplerMinFilter = Linear
535 , samplerMagFilter = Linear
536 , samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0)
537 , samplerMinLod = Nothing
538 , samplerMaxLod = Nothing
539 , samplerLodBias = 0.0
540 , samplerCompareFunc = Nothing
541 }
542 , textureBaseLevel = 0
543 , textureMaxLevel = 0
544 }
545 , TextureDescriptor
546 { textureType = Texture2D (FloatT RGBA) 1
547 , textureSize = VV2U (V2 256 256)
548 , textureSemantic = Color
549 , textureSampler =
550 SamplerDescriptor
551 { samplerWrapS = Repeat
552 , samplerWrapT = Nothing
553 , samplerWrapR = Nothing
554 , samplerMinFilter = Linear
555 , samplerMagFilter = Linear
556 , samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0)
557 , samplerMinLod = Nothing
558 , samplerMaxLod = Nothing
559 , samplerLodBias = 0.0
560 , samplerCompareFunc = Nothing
561 }
562 , textureBaseLevel = 0
563 , textureMaxLevel = 0
564 }
565 , TextureDescriptor
566 { textureType = Texture2D (FloatT Red) 1
567 , textureSize = VV2U (V2 256 256)
568 , textureSemantic = Depth
569 , textureSampler =
570 SamplerDescriptor
571 { samplerWrapS = Repeat
572 , samplerWrapT = Nothing
573 , samplerWrapR = Nothing
574 , samplerMinFilter = Linear
575 , samplerMagFilter = Linear
576 , samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0)
577 , samplerMinLod = Nothing
578 , samplerMaxLod = Nothing
579 , samplerLodBias = 0.0
580 , samplerCompareFunc = Nothing
581 }
582 , textureBaseLevel = 0
583 , textureMaxLevel = 0
584 }
585 , TextureDescriptor
586 { textureType = Texture2D (FloatT RGBA) 1
587 , textureSize = VV2U (V2 256 256)
588 , textureSemantic = Color
589 , textureSampler =
590 SamplerDescriptor
591 { samplerWrapS = Repeat
592 , samplerWrapT = Nothing
593 , samplerWrapR = Nothing
594 , samplerMinFilter = Linear
595 , samplerMagFilter = Linear
596 , samplerBorderColor = VV4F (V4 0.0 0.0 0.0 1.0)
597 , samplerMinLod = Nothing
598 , samplerMaxLod = Nothing
599 , samplerLodBias = 0.0
600 , samplerCompareFunc = Nothing
601 }
602 , textureBaseLevel = 0
603 , textureMaxLevel = 0
604 }
605 ] 205 ]
606 , samplers = [] 206 , samplers = []
607 , targets = 207 , targets =
@@ -673,126 +273,6 @@ Pipeline
673 } 273 }
674 ] 274 ]
675 } 275 }
676 , RenderTarget
677 { renderTargets =
678 [ TargetItem
679 { targetSemantic = Depth
680 , targetRef = Just (TextureImage 10 0 Nothing)
681 }
682 , TargetItem
683 { targetSemantic = Color
684 , targetRef = Just (TextureImage 11 0 Nothing)
685 }
686 ]
687 }
688 , RenderTarget
689 { renderTargets =
690 [ TargetItem
691 { targetSemantic = Depth
692 , targetRef = Just (TextureImage 12 0 Nothing)
693 }
694 , TargetItem
695 { targetSemantic = Color
696 , targetRef = Just (TextureImage 13 0 Nothing)
697 }
698 ]
699 }
700 , RenderTarget
701 { renderTargets =
702 [ TargetItem
703 { targetSemantic = Depth
704 , targetRef = Just (TextureImage 14 0 Nothing)
705 }
706 , TargetItem
707 { targetSemantic = Color
708 , targetRef = Just (TextureImage 15 0 Nothing)
709 }
710 ]
711 }
712 , RenderTarget
713 { renderTargets =
714 [ TargetItem
715 { targetSemantic = Depth
716 , targetRef = Just (TextureImage 16 0 Nothing)
717 }
718 , TargetItem
719 { targetSemantic = Color
720 , targetRef = Just (TextureImage 17 0 Nothing)
721 }
722 ]
723 }
724 , RenderTarget
725 { renderTargets =
726 [ TargetItem
727 { targetSemantic = Depth
728 , targetRef = Just (TextureImage 18 0 Nothing)
729 }
730 , TargetItem
731 { targetSemantic = Color
732 , targetRef = Just (TextureImage 19 0 Nothing)
733 }
734 ]
735 }
736 , RenderTarget
737 { renderTargets =
738 [ TargetItem
739 { targetSemantic = Depth
740 , targetRef = Just (TextureImage 20 0 Nothing)
741 }
742 , TargetItem
743 { targetSemantic = Color
744 , targetRef = Just (TextureImage 21 0 Nothing)
745 }
746 ]
747 }
748 , RenderTarget
749 { renderTargets =
750 [ TargetItem
751 { targetSemantic = Depth
752 , targetRef = Just (TextureImage 22 0 Nothing)
753 }
754 , TargetItem
755 { targetSemantic = Color
756 , targetRef = Just (TextureImage 23 0 Nothing)
757 }
758 ]
759 }
760 , RenderTarget
761 { renderTargets =
762 [ TargetItem
763 { targetSemantic = Depth
764 , targetRef = Just (TextureImage 24 0 Nothing)
765 }
766 , TargetItem
767 { targetSemantic = Color
768 , targetRef = Just (TextureImage 25 0 Nothing)
769 }
770 ]
771 }
772 , RenderTarget
773 { renderTargets =
774 [ TargetItem
775 { targetSemantic = Depth
776 , targetRef = Just (TextureImage 26 0 Nothing)
777 }
778 , TargetItem
779 { targetSemantic = Color
780 , targetRef = Just (TextureImage 27 0 Nothing)
781 }
782 ]
783 }
784 , RenderTarget
785 { renderTargets =
786 [ TargetItem
787 { targetSemantic = Depth
788 , targetRef = Just (TextureImage 28 0 Nothing)
789 }
790 , TargetItem
791 { targetSemantic = Color
792 , targetRef = Just (TextureImage 29 0 Nothing)
793 }
794 ]
795 }
796 ] 276 ]
797 , programs = 277 , programs =
798 [ Program 278 [ Program
@@ -1715,1846 +1195,6 @@ Pipeline
1715 } 1195 }
1716 """ 1196 """
1717 } 1197 }
1718 , Program
1719 { programUniforms = fromList [ ( "Time" , Float ) ]
1720 , programStreams =
1721 fromList
1722 [ ( "vi1" , Parameter { name = "position4" , ty = V4F } )
1723 , ( "vi2" , Parameter { name = "vertexUV" , ty = V2F } )
1724 ]
1725 , programInTextures = fromList [ ( "s0" , FTexture2D ) ]
1726 , programOutput = [ Parameter { name = "f0" , ty = V4F } ]
1727 , vertexShader =
1728 """
1729 #version 330 core
1730 vec4 texture2D(sampler2D s
1731 ,vec2 uv) {
1732 return texture(s,uv);
1733 }
1734 uniform float Time;
1735 in vec4 vi1;
1736 in vec2 vi2;
1737 smooth out vec2 vo1;
1738 vec4 r1_Float;
1739 vec4 r2_Float;
1740 vec4 r3_Float;
1741 vec4 ext0_Float_3(vec3 z0) {
1742 return vec4 ((z0).x
1743 ,(z0).y
1744 ,(z0).z
1745 ,0.0);
1746 }
1747 vec3 neg_VecSFloat3(vec3 z0) {
1748 return - (z0);
1749 }
1750 mat4 translateBefore4(vec3 z0) {
1751 return mat4 (r1_Float
1752 ,r2_Float
1753 ,r3_Float
1754 ,vec4 ((z0).x
1755 ,(z0).y
1756 ,(z0).z
1757 ,1.0));
1758 }
1759 mat4 lookat(vec3 z0
1760 ,vec3 z1
1761 ,vec3 z2) {
1762 return (transpose (mat4
1763 (ext0_Float_3 (normalize (cross
1764 (z2,normalize ((z0) - (z1)))))
1765 ,ext0_Float_3 (cross (normalize
1766 ((z0) - (z1))
1767 ,normalize (cross (z2
1768 ,normalize ((z0) - (z1))))))
1769 ,ext0_Float_3 (normalize
1770 ((z0) - (z1)))
1771 ,vec4 (0.0
1772 ,0.0
1773 ,0.0
1774 ,1.0)))) * (translateBefore4
1775 (neg_VecSFloat3 (z0)));
1776 }
1777 mat4 perspective(float z0
1778 ,float z1
1779 ,float z2
1780 ,float z3) {
1781 return mat4 (vec4
1782 (((2.0) * (z0)) / (((z3) * ((z0) * (tan
1783 ((z2) / (2.0))))) - ((0.0) - ((z3) * ((z0) * (tan
1784 ((z2) / (2.0)))))))
1785 ,0.0
1786 ,0.0
1787 ,0.0)
1788 ,vec4 (0.0
1789 ,((2.0) * (z0)) / (((z0) * (tan
1790 ((z2) / (2.0)))) - ((0.0) - ((z0) * (tan
1791 ((z2) / (2.0))))))
1792 ,0.0
1793 ,0.0)
1794 ,vec4 ((((z3) * ((z0) * (tan
1795 ((z2) / (2.0))))) + ((0.0) - ((z3) * ((z0) * (tan
1796 ((z2) / (2.0))))))) / (((z3) * ((z0) * (tan
1797 ((z2) / (2.0))))) - ((0.0) - ((z3) * ((z0) * (tan
1798 ((z2) / (2.0)))))))
1799 ,(((z0) * (tan
1800 ((z2) / (2.0)))) + ((0.0) - ((z0) * (tan
1801 ((z2) / (2.0)))))) / (((z0) * (tan
1802 ((z2) / (2.0)))) - ((0.0) - ((z0) * (tan
1803 ((z2) / (2.0))))))
1804 ,(0.0) - (((z1) + (z0)) / ((z1) - (z0)))
1805 ,-1.0)
1806 ,vec4 (0.0
1807 ,0.0
1808 ,(0.0) - ((((2.0) * (z1)) * (z0)) / ((z1) - (z0)))
1809 ,0.0));
1810 }
1811 mat4 rotMatrixY(float z0) {
1812 return mat4 (vec4 (cos (z0)
1813 ,0.0
1814 ,(0.0) - (sin (z0))
1815 ,0.0)
1816 ,vec4 (0.0,1.0,0.0,0.0)
1817 ,vec4 (sin (z0)
1818 ,0.0
1819 ,cos (z0)
1820 ,0.0)
1821 ,vec4 (0.0,0.0,0.0,1.0));
1822 }
1823 mat4 rotMatrix;
1824 mat4 rotMatrixX(float z0) {
1825 return mat4 (vec4 (1.0
1826 ,0.0
1827 ,0.0
1828 ,0.0)
1829 ,vec4 (0.0
1830 ,cos (z0)
1831 ,sin (z0)
1832 ,0.0)
1833 ,vec4 (0.0
1834 ,(0.0) - (sin (z0))
1835 ,cos (z0)
1836 ,0.0)
1837 ,vec4 (0.0,0.0,0.0,1.0));
1838 }
1839 vec4 scale(float z0,vec4 z1) {
1840 return (z1) * (vec4 (z0
1841 ,z0
1842 ,z0
1843 ,1.0));
1844 }
1845 void main() {
1846 r1_Float = vec4 (1.0
1847 ,0.0
1848 ,0.0
1849 ,0.0);
1850 r2_Float = vec4 (0.0
1851 ,1.0
1852 ,0.0
1853 ,0.0);
1854 r3_Float = vec4 (0.0
1855 ,0.0
1856 ,1.0
1857 ,0.0);
1858 rotMatrix = ((perspective (0.1
1859 ,100.0
1860 ,0.5235987755982988
1861 ,1.0)) * (lookat (vec3 (3.0
1862 ,1.3
1863 ,0.3)
1864 ,vec3 (0.0,0.0,0.0)
1865 ,vec3 (0.0
1866 ,1.0
1867 ,0.0)))) * (rotMatrixY
1868 ((0.1308996938995747) * (Time)));
1869 gl_Position =
1870 (rotMatrix) * (scale (0.4
1871 ,(rotMatrixX (0.5)) * (vi1)));
1872 vo1 = vi2;
1873 }
1874 """
1875 , geometryShader = Nothing
1876 , fragmentShader =
1877 """
1878 #version 330 core
1879 vec4 texture2D(sampler2D s
1880 ,vec2 uv) {
1881 return texture(s,uv);
1882 }
1883 uniform sampler2D s0;
1884 smooth in vec2 vo1;
1885 out vec4 f0;
1886 vec4 setAlpha(vec4 z0) {
1887 return ((z0) * (vec4 (1.0
1888 ,1.0
1889 ,1.0
1890 ,0.0))) + (vec4 (0.0
1891 ,0.0
1892 ,0.0
1893 ,1.0));
1894 }
1895 void main() {
1896 f0 = setAlpha
1897 (((((vo1).yyyx) * (0.5)) + (texture2D
1898 (s0,vo1))) * (0.7));
1899 }
1900 """
1901 }
1902 , Program
1903 { programUniforms = fromList [ ( "Time" , Float ) ]
1904 , programStreams =
1905 fromList
1906 [ ( "vi1" , Parameter { name = "position4" , ty = V4F } )
1907 , ( "vi2" , Parameter { name = "vertexUV" , ty = V2F } )
1908 ]
1909 , programInTextures = fromList [ ( "s0" , FTexture2D ) ]
1910 , programOutput = [ Parameter { name = "f0" , ty = V4F } ]
1911 , vertexShader =
1912 """
1913 #version 330 core
1914 vec4 texture2D(sampler2D s
1915 ,vec2 uv) {
1916 return texture(s,uv);
1917 }
1918 uniform float Time;
1919 in vec4 vi1;
1920 in vec2 vi2;
1921 smooth out vec2 vo1;
1922 vec4 r1_Float;
1923 vec4 r2_Float;
1924 vec4 r3_Float;
1925 vec4 ext0_Float_3(vec3 z0) {
1926 return vec4 ((z0).x
1927 ,(z0).y
1928 ,(z0).z
1929 ,0.0);
1930 }
1931 vec3 neg_VecSFloat3(vec3 z0) {
1932 return - (z0);
1933 }
1934 mat4 translateBefore4(vec3 z0) {
1935 return mat4 (r1_Float
1936 ,r2_Float
1937 ,r3_Float
1938 ,vec4 ((z0).x
1939 ,(z0).y
1940 ,(z0).z
1941 ,1.0));
1942 }
1943 mat4 lookat(vec3 z0
1944 ,vec3 z1
1945 ,vec3 z2) {
1946 return (transpose (mat4
1947 (ext0_Float_3 (normalize (cross
1948 (z2,normalize ((z0) - (z1)))))
1949 ,ext0_Float_3 (cross (normalize
1950 ((z0) - (z1))
1951 ,normalize (cross (z2
1952 ,normalize ((z0) - (z1))))))
1953 ,ext0_Float_3 (normalize
1954 ((z0) - (z1)))
1955 ,vec4 (0.0
1956 ,0.0
1957 ,0.0
1958 ,1.0)))) * (translateBefore4
1959 (neg_VecSFloat3 (z0)));
1960 }
1961 mat4 perspective(float z0
1962 ,float z1
1963 ,float z2
1964 ,float z3) {
1965 return mat4 (vec4
1966 (((2.0) * (z0)) / (((z3) * ((z0) * (tan
1967 ((z2) / (2.0))))) - ((0.0) - ((z3) * ((z0) * (tan
1968 ((z2) / (2.0)))))))
1969 ,0.0
1970 ,0.0
1971 ,0.0)
1972 ,vec4 (0.0
1973 ,((2.0) * (z0)) / (((z0) * (tan
1974 ((z2) / (2.0)))) - ((0.0) - ((z0) * (tan
1975 ((z2) / (2.0))))))
1976 ,0.0
1977 ,0.0)
1978 ,vec4 ((((z3) * ((z0) * (tan
1979 ((z2) / (2.0))))) + ((0.0) - ((z3) * ((z0) * (tan
1980 ((z2) / (2.0))))))) / (((z3) * ((z0) * (tan
1981 ((z2) / (2.0))))) - ((0.0) - ((z3) * ((z0) * (tan
1982 ((z2) / (2.0)))))))
1983 ,(((z0) * (tan
1984 ((z2) / (2.0)))) + ((0.0) - ((z0) * (tan
1985 ((z2) / (2.0)))))) / (((z0) * (tan
1986 ((z2) / (2.0)))) - ((0.0) - ((z0) * (tan
1987 ((z2) / (2.0))))))
1988 ,(0.0) - (((z1) + (z0)) / ((z1) - (z0)))
1989 ,-1.0)
1990 ,vec4 (0.0
1991 ,0.0
1992 ,(0.0) - ((((2.0) * (z1)) * (z0)) / ((z1) - (z0)))
1993 ,0.0));
1994 }
1995 mat4 rotMatrixY(float z0) {
1996 return mat4 (vec4 (cos (z0)
1997 ,0.0
1998 ,(0.0) - (sin (z0))
1999 ,0.0)
2000 ,vec4 (0.0,1.0,0.0,0.0)
2001 ,vec4 (sin (z0)
2002 ,0.0
2003 ,cos (z0)
2004 ,0.0)
2005 ,vec4 (0.0,0.0,0.0,1.0));
2006 }
2007 mat4 rotMatrix;
2008 mat4 rotMatrixX(float z0) {
2009 return mat4 (vec4 (1.0
2010 ,0.0
2011 ,0.0
2012 ,0.0)
2013 ,vec4 (0.0
2014 ,cos (z0)
2015 ,sin (z0)
2016 ,0.0)
2017 ,vec4 (0.0
2018 ,(0.0) - (sin (z0))
2019 ,cos (z0)
2020 ,0.0)
2021 ,vec4 (0.0,0.0,0.0,1.0));
2022 }
2023 vec4 scale(float z0,vec4 z1) {
2024 return (z1) * (vec4 (z0
2025 ,z0
2026 ,z0
2027 ,1.0));
2028 }
2029 void main() {
2030 r1_Float = vec4 (1.0
2031 ,0.0
2032 ,0.0
2033 ,0.0);
2034 r2_Float = vec4 (0.0
2035 ,1.0
2036 ,0.0
2037 ,0.0);
2038 r3_Float = vec4 (0.0
2039 ,0.0
2040 ,1.0
2041 ,0.0);
2042 rotMatrix = ((perspective (0.1
2043 ,100.0
2044 ,0.5235987755982988
2045 ,1.0)) * (lookat (vec3 (3.0
2046 ,1.3
2047 ,0.3)
2048 ,vec3 (0.0,0.0,0.0)
2049 ,vec3 (0.0
2050 ,1.0
2051 ,0.0)))) * (rotMatrixY
2052 ((0.1308996938995747) * (Time)));
2053 gl_Position =
2054 (rotMatrix) * (scale (0.4
2055 ,(rotMatrixX (0.6)) * (vi1)));
2056 vo1 = vi2;
2057 }
2058 """
2059 , geometryShader = Nothing
2060 , fragmentShader =
2061 """
2062 #version 330 core
2063 vec4 texture2D(sampler2D s
2064 ,vec2 uv) {
2065 return texture(s,uv);
2066 }
2067 uniform sampler2D s0;
2068 smooth in vec2 vo1;
2069 out vec4 f0;
2070 vec4 setAlpha(vec4 z0) {
2071 return ((z0) * (vec4 (1.0
2072 ,1.0
2073 ,1.0
2074 ,0.0))) + (vec4 (0.0
2075 ,0.0
2076 ,0.0
2077 ,1.0));
2078 }
2079 void main() {
2080 f0 = setAlpha
2081 (((((vo1).yyyx) * (0.5)) + (texture2D
2082 (s0,vo1))) * (0.7));
2083 }
2084 """
2085 }
2086 , Program
2087 { programUniforms = fromList [ ( "Time" , Float ) ]
2088 , programStreams =
2089 fromList
2090 [ ( "vi1" , Parameter { name = "position4" , ty = V4F } )
2091 , ( "vi2" , Parameter { name = "vertexUV" , ty = V2F } )
2092 ]
2093 , programInTextures = fromList [ ( "s0" , FTexture2D ) ]
2094 , programOutput = [ Parameter { name = "f0" , ty = V4F } ]
2095 , vertexShader =
2096 """
2097 #version 330 core
2098 vec4 texture2D(sampler2D s
2099 ,vec2 uv) {
2100 return texture(s,uv);
2101 }
2102 uniform float Time;
2103 in vec4 vi1;
2104 in vec2 vi2;
2105 smooth out vec2 vo1;
2106 vec4 r1_Float;
2107 vec4 r2_Float;
2108 vec4 r3_Float;
2109 vec4 ext0_Float_3(vec3 z0) {
2110 return vec4 ((z0).x
2111 ,(z0).y
2112 ,(z0).z
2113 ,0.0);
2114 }
2115 vec3 neg_VecSFloat3(vec3 z0) {
2116 return - (z0);
2117 }
2118 mat4 translateBefore4(vec3 z0) {
2119 return mat4 (r1_Float
2120 ,r2_Float
2121 ,r3_Float
2122 ,vec4 ((z0).x
2123 ,(z0).y
2124 ,(z0).z
2125 ,1.0));
2126 }
2127 mat4 lookat(vec3 z0
2128 ,vec3 z1
2129 ,vec3 z2) {
2130 return (transpose (mat4
2131 (ext0_Float_3 (normalize (cross
2132 (z2,normalize ((z0) - (z1)))))
2133 ,ext0_Float_3 (cross (normalize
2134 ((z0) - (z1))
2135 ,normalize (cross (z2
2136 ,normalize ((z0) - (z1))))))
2137 ,ext0_Float_3 (normalize
2138 ((z0) - (z1)))
2139 ,vec4 (0.0
2140 ,0.0
2141 ,0.0
2142 ,1.0)))) * (translateBefore4
2143 (neg_VecSFloat3 (z0)));
2144 }
2145 mat4 perspective(float z0
2146 ,float z1
2147 ,float z2
2148 ,float z3) {
2149 return mat4 (vec4
2150 (((2.0) * (z0)) / (((z3) * ((z0) * (tan
2151 ((z2) / (2.0))))) - ((0.0) - ((z3) * ((z0) * (tan
2152 ((z2) / (2.0)))))))
2153 ,0.0
2154 ,0.0
2155 ,0.0)
2156 ,vec4 (0.0
2157 ,((2.0) * (z0)) / (((z0) * (tan
2158 ((z2) / (2.0)))) - ((0.0) - ((z0) * (tan
2159 ((z2) / (2.0))))))
2160 ,0.0
2161 ,0.0)
2162 ,vec4 ((((z3) * ((z0) * (tan
2163 ((z2) / (2.0))))) + ((0.0) - ((z3) * ((z0) * (tan
2164 ((z2) / (2.0))))))) / (((z3) * ((z0) * (tan
2165 ((z2) / (2.0))))) - ((0.0) - ((z3) * ((z0) * (tan
2166 ((z2) / (2.0)))))))
2167 ,(((z0) * (tan
2168 ((z2) / (2.0)))) + ((0.0) - ((z0) * (tan
2169 ((z2) / (2.0)))))) / (((z0) * (tan
2170 ((z2) / (2.0)))) - ((0.0) - ((z0) * (tan
2171 ((z2) / (2.0))))))
2172 ,(0.0) - (((z1) + (z0)) / ((z1) - (z0)))
2173 ,-1.0)
2174 ,vec4 (0.0
2175 ,0.0
2176 ,(0.0) - ((((2.0) * (z1)) * (z0)) / ((z1) - (z0)))
2177 ,0.0));
2178 }
2179 mat4 rotMatrixY(float z0) {
2180 return mat4 (vec4 (cos (z0)
2181 ,0.0
2182 ,(0.0) - (sin (z0))
2183 ,0.0)
2184 ,vec4 (0.0,1.0,0.0,0.0)
2185 ,vec4 (sin (z0)
2186 ,0.0
2187 ,cos (z0)
2188 ,0.0)
2189 ,vec4 (0.0,0.0,0.0,1.0));
2190 }
2191 mat4 rotMatrix;
2192 mat4 rotMatrixX(float z0) {
2193 return mat4 (vec4 (1.0
2194 ,0.0
2195 ,0.0
2196 ,0.0)
2197 ,vec4 (0.0
2198 ,cos (z0)
2199 ,sin (z0)
2200 ,0.0)
2201 ,vec4 (0.0
2202 ,(0.0) - (sin (z0))
2203 ,cos (z0)
2204 ,0.0)
2205 ,vec4 (0.0,0.0,0.0,1.0));
2206 }
2207 vec4 scale(float z0,vec4 z1) {
2208 return (z1) * (vec4 (z0
2209 ,z0
2210 ,z0
2211 ,1.0));
2212 }
2213 void main() {
2214 r1_Float = vec4 (1.0
2215 ,0.0
2216 ,0.0
2217 ,0.0);
2218 r2_Float = vec4 (0.0
2219 ,1.0
2220 ,0.0
2221 ,0.0);
2222 r3_Float = vec4 (0.0
2223 ,0.0
2224 ,1.0
2225 ,0.0);
2226 rotMatrix = ((perspective (0.1
2227 ,100.0
2228 ,0.5235987755982988
2229 ,1.0)) * (lookat (vec3 (3.0
2230 ,1.3
2231 ,0.3)
2232 ,vec3 (0.0,0.0,0.0)
2233 ,vec3 (0.0
2234 ,1.0
2235 ,0.0)))) * (rotMatrixY
2236 ((0.1308996938995747) * (Time)));
2237 gl_Position =
2238 (rotMatrix) * (scale (0.4
2239 ,(rotMatrixX (0.7)) * (vi1)));
2240 vo1 = vi2;
2241 }
2242 """
2243 , geometryShader = Nothing
2244 , fragmentShader =
2245 """
2246 #version 330 core
2247 vec4 texture2D(sampler2D s
2248 ,vec2 uv) {
2249 return texture(s,uv);
2250 }
2251 uniform sampler2D s0;
2252 smooth in vec2 vo1;
2253 out vec4 f0;
2254 vec4 setAlpha(vec4 z0) {
2255 return ((z0) * (vec4 (1.0
2256 ,1.0
2257 ,1.0
2258 ,0.0))) + (vec4 (0.0
2259 ,0.0
2260 ,0.0
2261 ,1.0));
2262 }
2263 void main() {
2264 f0 = setAlpha
2265 (((((vo1).yyyx) * (0.5)) + (texture2D
2266 (s0,vo1))) * (0.7));
2267 }
2268 """
2269 }
2270 , Program
2271 { programUniforms = fromList [ ( "Time" , Float ) ]
2272 , programStreams =
2273 fromList
2274 [ ( "vi1" , Parameter { name = "position4" , ty = V4F } )
2275 , ( "vi2" , Parameter { name = "vertexUV" , ty = V2F } )
2276 ]
2277 , programInTextures = fromList [ ( "s0" , FTexture2D ) ]
2278 , programOutput = [ Parameter { name = "f0" , ty = V4F } ]
2279 , vertexShader =
2280 """
2281 #version 330 core
2282 vec4 texture2D(sampler2D s
2283 ,vec2 uv) {
2284 return texture(s,uv);
2285 }
2286 uniform float Time;
2287 in vec4 vi1;
2288 in vec2 vi2;
2289 smooth out vec2 vo1;
2290 vec4 r1_Float;
2291 vec4 r2_Float;
2292 vec4 r3_Float;
2293 vec4 ext0_Float_3(vec3 z0) {
2294 return vec4 ((z0).x
2295 ,(z0).y
2296 ,(z0).z
2297 ,0.0);
2298 }
2299 vec3 neg_VecSFloat3(vec3 z0) {
2300 return - (z0);
2301 }
2302 mat4 translateBefore4(vec3 z0) {
2303 return mat4 (r1_Float
2304 ,r2_Float
2305 ,r3_Float
2306 ,vec4 ((z0).x
2307 ,(z0).y
2308 ,(z0).z
2309 ,1.0));
2310 }
2311 mat4 lookat(vec3 z0
2312 ,vec3 z1
2313 ,vec3 z2) {
2314 return (transpose (mat4
2315 (ext0_Float_3 (normalize (cross
2316 (z2,normalize ((z0) - (z1)))))
2317 ,ext0_Float_3 (cross (normalize
2318 ((z0) - (z1))
2319 ,normalize (cross (z2
2320 ,normalize ((z0) - (z1))))))
2321 ,ext0_Float_3 (normalize
2322 ((z0) - (z1)))
2323 ,vec4 (0.0
2324 ,0.0
2325 ,0.0
2326 ,1.0)))) * (translateBefore4
2327 (neg_VecSFloat3 (z0)));
2328 }
2329 mat4 perspective(float z0
2330 ,float z1
2331 ,float z2
2332 ,float z3) {
2333 return mat4 (vec4
2334 (((2.0) * (z0)) / (((z3) * ((z0) * (tan
2335 ((z2) / (2.0))))) - ((0.0) - ((z3) * ((z0) * (tan
2336 ((z2) / (2.0)))))))
2337 ,0.0
2338 ,0.0
2339 ,0.0)
2340 ,vec4 (0.0
2341 ,((2.0) * (z0)) / (((z0) * (tan
2342 ((z2) / (2.0)))) - ((0.0) - ((z0) * (tan
2343 ((z2) / (2.0))))))
2344 ,0.0
2345 ,0.0)
2346 ,vec4 ((((z3) * ((z0) * (tan
2347 ((z2) / (2.0))))) + ((0.0) - ((z3) * ((z0) * (tan
2348 ((z2) / (2.0))))))) / (((z3) * ((z0) * (tan
2349 ((z2) / (2.0))))) - ((0.0) - ((z3) * ((z0) * (tan
2350 ((z2) / (2.0)))))))
2351 ,(((z0) * (tan
2352 ((z2) / (2.0)))) + ((0.0) - ((z0) * (tan
2353 ((z2) / (2.0)))))) / (((z0) * (tan
2354 ((z2) / (2.0)))) - ((0.0) - ((z0) * (tan
2355 ((z2) / (2.0))))))
2356 ,(0.0) - (((z1) + (z0)) / ((z1) - (z0)))
2357 ,-1.0)
2358 ,vec4 (0.0
2359 ,0.0
2360 ,(0.0) - ((((2.0) * (z1)) * (z0)) / ((z1) - (z0)))
2361 ,0.0));
2362 }
2363 mat4 rotMatrixY(float z0) {
2364 return mat4 (vec4 (cos (z0)
2365 ,0.0
2366 ,(0.0) - (sin (z0))
2367 ,0.0)
2368 ,vec4 (0.0,1.0,0.0,0.0)
2369 ,vec4 (sin (z0)
2370 ,0.0
2371 ,cos (z0)
2372 ,0.0)
2373 ,vec4 (0.0,0.0,0.0,1.0));
2374 }
2375 mat4 rotMatrix;
2376 mat4 rotMatrixX(float z0) {
2377 return mat4 (vec4 (1.0
2378 ,0.0
2379 ,0.0
2380 ,0.0)
2381 ,vec4 (0.0
2382 ,cos (z0)
2383 ,sin (z0)
2384 ,0.0)
2385 ,vec4 (0.0
2386 ,(0.0) - (sin (z0))
2387 ,cos (z0)
2388 ,0.0)
2389 ,vec4 (0.0,0.0,0.0,1.0));
2390 }
2391 vec4 scale(float z0,vec4 z1) {
2392 return (z1) * (vec4 (z0
2393 ,z0
2394 ,z0
2395 ,1.0));
2396 }
2397 void main() {
2398 r1_Float = vec4 (1.0
2399 ,0.0
2400 ,0.0
2401 ,0.0);
2402 r2_Float = vec4 (0.0
2403 ,1.0
2404 ,0.0
2405 ,0.0);
2406 r3_Float = vec4 (0.0
2407 ,0.0
2408 ,1.0
2409 ,0.0);
2410 rotMatrix = ((perspective (0.1
2411 ,100.0
2412 ,0.5235987755982988
2413 ,1.0)) * (lookat (vec3 (3.0
2414 ,1.3
2415 ,0.3)
2416 ,vec3 (0.0,0.0,0.0)
2417 ,vec3 (0.0
2418 ,1.0
2419 ,0.0)))) * (rotMatrixY
2420 ((0.1308996938995747) * (Time)));
2421 gl_Position =
2422 (rotMatrix) * (scale (0.4
2423 ,(rotMatrixX (0.8)) * (vi1)));
2424 vo1 = vi2;
2425 }
2426 """
2427 , geometryShader = Nothing
2428 , fragmentShader =
2429 """
2430 #version 330 core
2431 vec4 texture2D(sampler2D s
2432 ,vec2 uv) {
2433 return texture(s,uv);
2434 }
2435 uniform sampler2D s0;
2436 smooth in vec2 vo1;
2437 out vec4 f0;
2438 vec4 setAlpha(vec4 z0) {
2439 return ((z0) * (vec4 (1.0
2440 ,1.0
2441 ,1.0
2442 ,0.0))) + (vec4 (0.0
2443 ,0.0
2444 ,0.0
2445 ,1.0));
2446 }
2447 void main() {
2448 f0 = setAlpha
2449 (((((vo1).yyyx) * (0.5)) + (texture2D
2450 (s0,vo1))) * (0.7));
2451 }
2452 """
2453 }
2454 , Program
2455 { programUniforms = fromList [ ( "Time" , Float ) ]
2456 , programStreams =
2457 fromList
2458 [ ( "vi1" , Parameter { name = "position4" , ty = V4F } )
2459 , ( "vi2" , Parameter { name = "vertexUV" , ty = V2F } )
2460 ]
2461 , programInTextures = fromList [ ( "s0" , FTexture2D ) ]
2462 , programOutput = [ Parameter { name = "f0" , ty = V4F } ]
2463 , vertexShader =
2464 """
2465 #version 330 core
2466 vec4 texture2D(sampler2D s
2467 ,vec2 uv) {
2468 return texture(s,uv);
2469 }
2470 uniform float Time;
2471 in vec4 vi1;
2472 in vec2 vi2;
2473 smooth out vec2 vo1;
2474 vec4 r1_Float;
2475 vec4 r2_Float;
2476 vec4 r3_Float;
2477 vec4 ext0_Float_3(vec3 z0) {
2478 return vec4 ((z0).x
2479 ,(z0).y
2480 ,(z0).z
2481 ,0.0);
2482 }
2483 vec3 neg_VecSFloat3(vec3 z0) {
2484 return - (z0);
2485 }
2486 mat4 translateBefore4(vec3 z0) {
2487 return mat4 (r1_Float
2488 ,r2_Float
2489 ,r3_Float
2490 ,vec4 ((z0).x
2491 ,(z0).y
2492 ,(z0).z
2493 ,1.0));
2494 }
2495 mat4 lookat(vec3 z0
2496 ,vec3 z1
2497 ,vec3 z2) {
2498 return (transpose (mat4
2499 (ext0_Float_3 (normalize (cross
2500 (z2,normalize ((z0) - (z1)))))
2501 ,ext0_Float_3 (cross (normalize
2502 ((z0) - (z1))
2503 ,normalize (cross (z2
2504 ,normalize ((z0) - (z1))))))
2505 ,ext0_Float_3 (normalize
2506 ((z0) - (z1)))
2507 ,vec4 (0.0
2508 ,0.0
2509 ,0.0
2510 ,1.0)))) * (translateBefore4
2511 (neg_VecSFloat3 (z0)));
2512 }
2513 mat4 perspective(float z0
2514 ,float z1
2515 ,float z2
2516 ,float z3) {
2517 return mat4 (vec4
2518 (((2.0) * (z0)) / (((z3) * ((z0) * (tan
2519 ((z2) / (2.0))))) - ((0.0) - ((z3) * ((z0) * (tan
2520 ((z2) / (2.0)))))))
2521 ,0.0
2522 ,0.0
2523 ,0.0)
2524 ,vec4 (0.0
2525 ,((2.0) * (z0)) / (((z0) * (tan
2526 ((z2) / (2.0)))) - ((0.0) - ((z0) * (tan
2527 ((z2) / (2.0))))))
2528 ,0.0
2529 ,0.0)
2530 ,vec4 ((((z3) * ((z0) * (tan
2531 ((z2) / (2.0))))) + ((0.0) - ((z3) * ((z0) * (tan
2532 ((z2) / (2.0))))))) / (((z3) * ((z0) * (tan
2533 ((z2) / (2.0))))) - ((0.0) - ((z3) * ((z0) * (tan
2534 ((z2) / (2.0)))))))
2535 ,(((z0) * (tan
2536 ((z2) / (2.0)))) + ((0.0) - ((z0) * (tan
2537 ((z2) / (2.0)))))) / (((z0) * (tan
2538 ((z2) / (2.0)))) - ((0.0) - ((z0) * (tan
2539 ((z2) / (2.0))))))
2540 ,(0.0) - (((z1) + (z0)) / ((z1) - (z0)))
2541 ,-1.0)
2542 ,vec4 (0.0
2543 ,0.0
2544 ,(0.0) - ((((2.0) * (z1)) * (z0)) / ((z1) - (z0)))
2545 ,0.0));
2546 }
2547 mat4 rotMatrixY(float z0) {
2548 return mat4 (vec4 (cos (z0)
2549 ,0.0
2550 ,(0.0) - (sin (z0))
2551 ,0.0)
2552 ,vec4 (0.0,1.0,0.0,0.0)
2553 ,vec4 (sin (z0)
2554 ,0.0
2555 ,cos (z0)
2556 ,0.0)
2557 ,vec4 (0.0,0.0,0.0,1.0));
2558 }
2559 mat4 rotMatrix;
2560 mat4 rotMatrixX(float z0) {
2561 return mat4 (vec4 (1.0
2562 ,0.0
2563 ,0.0
2564 ,0.0)
2565 ,vec4 (0.0
2566 ,cos (z0)
2567 ,sin (z0)
2568 ,0.0)
2569 ,vec4 (0.0
2570 ,(0.0) - (sin (z0))
2571 ,cos (z0)
2572 ,0.0)
2573 ,vec4 (0.0,0.0,0.0,1.0));
2574 }
2575 vec4 scale(float z0,vec4 z1) {
2576 return (z1) * (vec4 (z0
2577 ,z0
2578 ,z0
2579 ,1.0));
2580 }
2581 void main() {
2582 r1_Float = vec4 (1.0
2583 ,0.0
2584 ,0.0
2585 ,0.0);
2586 r2_Float = vec4 (0.0
2587 ,1.0
2588 ,0.0
2589 ,0.0);
2590 r3_Float = vec4 (0.0
2591 ,0.0
2592 ,1.0
2593 ,0.0);
2594 rotMatrix = ((perspective (0.1
2595 ,100.0
2596 ,0.5235987755982988
2597 ,1.0)) * (lookat (vec3 (3.0
2598 ,1.3
2599 ,0.3)
2600 ,vec3 (0.0,0.0,0.0)
2601 ,vec3 (0.0
2602 ,1.0
2603 ,0.0)))) * (rotMatrixY
2604 ((0.1308996938995747) * (Time)));
2605 gl_Position =
2606 (rotMatrix) * (scale (0.4
2607 ,(rotMatrixX (0.9)) * (vi1)));
2608 vo1 = vi2;
2609 }
2610 """
2611 , geometryShader = Nothing
2612 , fragmentShader =
2613 """
2614 #version 330 core
2615 vec4 texture2D(sampler2D s
2616 ,vec2 uv) {
2617 return texture(s,uv);
2618 }
2619 uniform sampler2D s0;
2620 smooth in vec2 vo1;
2621 out vec4 f0;
2622 vec4 setAlpha(vec4 z0) {
2623 return ((z0) * (vec4 (1.0
2624 ,1.0
2625 ,1.0
2626 ,0.0))) + (vec4 (0.0
2627 ,0.0
2628 ,0.0
2629 ,1.0));
2630 }
2631 void main() {
2632 f0 = setAlpha
2633 (((((vo1).yyyx) * (0.5)) + (texture2D
2634 (s0,vo1))) * (0.7));
2635 }
2636 """
2637 }
2638 , Program
2639 { programUniforms = fromList [ ( "Time" , Float ) ]
2640 , programStreams =
2641 fromList
2642 [ ( "vi1" , Parameter { name = "position4" , ty = V4F } )
2643 , ( "vi2" , Parameter { name = "vertexUV" , ty = V2F } )
2644 ]
2645 , programInTextures = fromList [ ( "s0" , FTexture2D ) ]
2646 , programOutput = [ Parameter { name = "f0" , ty = V4F } ]
2647 , vertexShader =
2648 """
2649 #version 330 core
2650 vec4 texture2D(sampler2D s
2651 ,vec2 uv) {
2652 return texture(s,uv);
2653 }
2654 uniform float Time;
2655 in vec4 vi1;
2656 in vec2 vi2;
2657 smooth out vec2 vo1;
2658 vec4 r1_Float;
2659 vec4 r2_Float;
2660 vec4 r3_Float;
2661 vec4 ext0_Float_3(vec3 z0) {
2662 return vec4 ((z0).x
2663 ,(z0).y
2664 ,(z0).z
2665 ,0.0);
2666 }
2667 vec3 neg_VecSFloat3(vec3 z0) {
2668 return - (z0);
2669 }
2670 mat4 translateBefore4(vec3 z0) {
2671 return mat4 (r1_Float
2672 ,r2_Float
2673 ,r3_Float
2674 ,vec4 ((z0).x
2675 ,(z0).y
2676 ,(z0).z
2677 ,1.0));
2678 }
2679 mat4 lookat(vec3 z0
2680 ,vec3 z1
2681 ,vec3 z2) {
2682 return (transpose (mat4
2683 (ext0_Float_3 (normalize (cross
2684 (z2,normalize ((z0) - (z1)))))
2685 ,ext0_Float_3 (cross (normalize
2686 ((z0) - (z1))
2687 ,normalize (cross (z2
2688 ,normalize ((z0) - (z1))))))
2689 ,ext0_Float_3 (normalize
2690 ((z0) - (z1)))
2691 ,vec4 (0.0
2692 ,0.0
2693 ,0.0
2694 ,1.0)))) * (translateBefore4
2695 (neg_VecSFloat3 (z0)));
2696 }
2697 mat4 perspective(float z0
2698 ,float z1
2699 ,float z2
2700 ,float z3) {
2701 return mat4 (vec4
2702 (((2.0) * (z0)) / (((z3) * ((z0) * (tan
2703 ((z2) / (2.0))))) - ((0.0) - ((z3) * ((z0) * (tan
2704 ((z2) / (2.0)))))))
2705 ,0.0
2706 ,0.0
2707 ,0.0)
2708 ,vec4 (0.0
2709 ,((2.0) * (z0)) / (((z0) * (tan
2710 ((z2) / (2.0)))) - ((0.0) - ((z0) * (tan
2711 ((z2) / (2.0))))))
2712 ,0.0
2713 ,0.0)
2714 ,vec4 ((((z3) * ((z0) * (tan
2715 ((z2) / (2.0))))) + ((0.0) - ((z3) * ((z0) * (tan
2716 ((z2) / (2.0))))))) / (((z3) * ((z0) * (tan
2717 ((z2) / (2.0))))) - ((0.0) - ((z3) * ((z0) * (tan
2718 ((z2) / (2.0)))))))
2719 ,(((z0) * (tan
2720 ((z2) / (2.0)))) + ((0.0) - ((z0) * (tan
2721 ((z2) / (2.0)))))) / (((z0) * (tan
2722 ((z2) / (2.0)))) - ((0.0) - ((z0) * (tan
2723 ((z2) / (2.0))))))
2724 ,(0.0) - (((z1) + (z0)) / ((z1) - (z0)))
2725 ,-1.0)
2726 ,vec4 (0.0
2727 ,0.0
2728 ,(0.0) - ((((2.0) * (z1)) * (z0)) / ((z1) - (z0)))
2729 ,0.0));
2730 }
2731 mat4 rotMatrixY(float z0) {
2732 return mat4 (vec4 (cos (z0)
2733 ,0.0
2734 ,(0.0) - (sin (z0))
2735 ,0.0)
2736 ,vec4 (0.0,1.0,0.0,0.0)
2737 ,vec4 (sin (z0)
2738 ,0.0
2739 ,cos (z0)
2740 ,0.0)
2741 ,vec4 (0.0,0.0,0.0,1.0));
2742 }
2743 mat4 rotMatrix;
2744 mat4 rotMatrixX(float z0) {
2745 return mat4 (vec4 (1.0
2746 ,0.0
2747 ,0.0
2748 ,0.0)
2749 ,vec4 (0.0
2750 ,cos (z0)
2751 ,sin (z0)
2752 ,0.0)
2753 ,vec4 (0.0
2754 ,(0.0) - (sin (z0))
2755 ,cos (z0)
2756 ,0.0)
2757 ,vec4 (0.0,0.0,0.0,1.0));
2758 }
2759 vec4 scale(float z0,vec4 z1) {
2760 return (z1) * (vec4 (z0
2761 ,z0
2762 ,z0
2763 ,1.0));
2764 }
2765 void main() {
2766 r1_Float = vec4 (1.0
2767 ,0.0
2768 ,0.0
2769 ,0.0);
2770 r2_Float = vec4 (0.0
2771 ,1.0
2772 ,0.0
2773 ,0.0);
2774 r3_Float = vec4 (0.0
2775 ,0.0
2776 ,1.0
2777 ,0.0);
2778 rotMatrix = ((perspective (0.1
2779 ,100.0
2780 ,0.5235987755982988
2781 ,1.0)) * (lookat (vec3 (3.0
2782 ,1.3
2783 ,0.3)
2784 ,vec3 (0.0,0.0,0.0)
2785 ,vec3 (0.0
2786 ,1.0
2787 ,0.0)))) * (rotMatrixY
2788 ((0.1308996938995747) * (Time)));
2789 gl_Position =
2790 (rotMatrix) * (scale (0.4
2791 ,(rotMatrixX (1.0)) * (vi1)));
2792 vo1 = vi2;
2793 }
2794 """
2795 , geometryShader = Nothing
2796 , fragmentShader =
2797 """
2798 #version 330 core
2799 vec4 texture2D(sampler2D s
2800 ,vec2 uv) {
2801 return texture(s,uv);
2802 }
2803 uniform sampler2D s0;
2804 smooth in vec2 vo1;
2805 out vec4 f0;
2806 vec4 setAlpha(vec4 z0) {
2807 return ((z0) * (vec4 (1.0
2808 ,1.0
2809 ,1.0
2810 ,0.0))) + (vec4 (0.0
2811 ,0.0
2812 ,0.0
2813 ,1.0));
2814 }
2815 void main() {
2816 f0 = setAlpha
2817 (((((vo1).yyyx) * (0.5)) + (texture2D
2818 (s0,vo1))) * (0.7));
2819 }
2820 """
2821 }
2822 , Program
2823 { programUniforms = fromList [ ( "Time" , Float ) ]
2824 , programStreams =
2825 fromList
2826 [ ( "vi1" , Parameter { name = "position4" , ty = V4F } )
2827 , ( "vi2" , Parameter { name = "vertexUV" , ty = V2F } )
2828 ]
2829 , programInTextures = fromList [ ( "s0" , FTexture2D ) ]
2830 , programOutput = [ Parameter { name = "f0" , ty = V4F } ]
2831 , vertexShader =
2832 """
2833 #version 330 core
2834 vec4 texture2D(sampler2D s
2835 ,vec2 uv) {
2836 return texture(s,uv);
2837 }
2838 uniform float Time;
2839 in vec4 vi1;
2840 in vec2 vi2;
2841 smooth out vec2 vo1;
2842 vec4 r1_Float;
2843 vec4 r2_Float;
2844 vec4 r3_Float;
2845 vec4 ext0_Float_3(vec3 z0) {
2846 return vec4 ((z0).x
2847 ,(z0).y
2848 ,(z0).z
2849 ,0.0);
2850 }
2851 vec3 neg_VecSFloat3(vec3 z0) {
2852 return - (z0);
2853 }
2854 mat4 translateBefore4(vec3 z0) {
2855 return mat4 (r1_Float
2856 ,r2_Float
2857 ,r3_Float
2858 ,vec4 ((z0).x
2859 ,(z0).y
2860 ,(z0).z
2861 ,1.0));
2862 }
2863 mat4 lookat(vec3 z0
2864 ,vec3 z1
2865 ,vec3 z2) {
2866 return (transpose (mat4
2867 (ext0_Float_3 (normalize (cross
2868 (z2,normalize ((z0) - (z1)))))
2869 ,ext0_Float_3 (cross (normalize
2870 ((z0) - (z1))
2871 ,normalize (cross (z2
2872 ,normalize ((z0) - (z1))))))
2873 ,ext0_Float_3 (normalize
2874 ((z0) - (z1)))
2875 ,vec4 (0.0
2876 ,0.0
2877 ,0.0
2878 ,1.0)))) * (translateBefore4
2879 (neg_VecSFloat3 (z0)));
2880 }
2881 mat4 perspective(float z0
2882 ,float z1
2883 ,float z2
2884 ,float z3) {
2885 return mat4 (vec4
2886 (((2.0) * (z0)) / (((z3) * ((z0) * (tan
2887 ((z2) / (2.0))))) - ((0.0) - ((z3) * ((z0) * (tan
2888 ((z2) / (2.0)))))))
2889 ,0.0
2890 ,0.0
2891 ,0.0)
2892 ,vec4 (0.0
2893 ,((2.0) * (z0)) / (((z0) * (tan
2894 ((z2) / (2.0)))) - ((0.0) - ((z0) * (tan
2895 ((z2) / (2.0))))))
2896 ,0.0
2897 ,0.0)
2898 ,vec4 ((((z3) * ((z0) * (tan
2899 ((z2) / (2.0))))) + ((0.0) - ((z3) * ((z0) * (tan
2900 ((z2) / (2.0))))))) / (((z3) * ((z0) * (tan
2901 ((z2) / (2.0))))) - ((0.0) - ((z3) * ((z0) * (tan
2902 ((z2) / (2.0)))))))
2903 ,(((z0) * (tan
2904 ((z2) / (2.0)))) + ((0.0) - ((z0) * (tan
2905 ((z2) / (2.0)))))) / (((z0) * (tan
2906 ((z2) / (2.0)))) - ((0.0) - ((z0) * (tan
2907 ((z2) / (2.0))))))
2908 ,(0.0) - (((z1) + (z0)) / ((z1) - (z0)))
2909 ,-1.0)
2910 ,vec4 (0.0
2911 ,0.0
2912 ,(0.0) - ((((2.0) * (z1)) * (z0)) / ((z1) - (z0)))
2913 ,0.0));
2914 }
2915 mat4 rotMatrixY(float z0) {
2916 return mat4 (vec4 (cos (z0)
2917 ,0.0
2918 ,(0.0) - (sin (z0))
2919 ,0.0)
2920 ,vec4 (0.0,1.0,0.0,0.0)
2921 ,vec4 (sin (z0)
2922 ,0.0
2923 ,cos (z0)
2924 ,0.0)
2925 ,vec4 (0.0,0.0,0.0,1.0));
2926 }
2927 mat4 rotMatrix;
2928 mat4 rotMatrixX(float z0) {
2929 return mat4 (vec4 (1.0
2930 ,0.0
2931 ,0.0
2932 ,0.0)
2933 ,vec4 (0.0
2934 ,cos (z0)
2935 ,sin (z0)
2936 ,0.0)
2937 ,vec4 (0.0
2938 ,(0.0) - (sin (z0))
2939 ,cos (z0)
2940 ,0.0)
2941 ,vec4 (0.0,0.0,0.0,1.0));
2942 }
2943 vec4 scale(float z0,vec4 z1) {
2944 return (z1) * (vec4 (z0
2945 ,z0
2946 ,z0
2947 ,1.0));
2948 }
2949 void main() {
2950 r1_Float = vec4 (1.0
2951 ,0.0
2952 ,0.0
2953 ,0.0);
2954 r2_Float = vec4 (0.0
2955 ,1.0
2956 ,0.0
2957 ,0.0);
2958 r3_Float = vec4 (0.0
2959 ,0.0
2960 ,1.0
2961 ,0.0);
2962 rotMatrix = ((perspective (0.1
2963 ,100.0
2964 ,0.5235987755982988
2965 ,1.0)) * (lookat (vec3 (3.0
2966 ,1.3
2967 ,0.3)
2968 ,vec3 (0.0,0.0,0.0)
2969 ,vec3 (0.0
2970 ,1.0
2971 ,0.0)))) * (rotMatrixY
2972 ((0.1308996938995747) * (Time)));
2973 gl_Position =
2974 (rotMatrix) * (scale (0.4
2975 ,(rotMatrixX (1.1)) * (vi1)));
2976 vo1 = vi2;
2977 }
2978 """
2979 , geometryShader = Nothing
2980 , fragmentShader =
2981 """
2982 #version 330 core
2983 vec4 texture2D(sampler2D s
2984 ,vec2 uv) {
2985 return texture(s,uv);
2986 }
2987 uniform sampler2D s0;
2988 smooth in vec2 vo1;
2989 out vec4 f0;
2990 vec4 setAlpha(vec4 z0) {
2991 return ((z0) * (vec4 (1.0
2992 ,1.0
2993 ,1.0
2994 ,0.0))) + (vec4 (0.0
2995 ,0.0
2996 ,0.0
2997 ,1.0));
2998 }
2999 void main() {
3000 f0 = setAlpha
3001 (((((vo1).yyyx) * (0.5)) + (texture2D
3002 (s0,vo1))) * (0.7));
3003 }
3004 """
3005 }
3006 , Program
3007 { programUniforms = fromList [ ( "Time" , Float ) ]
3008 , programStreams =
3009 fromList
3010 [ ( "vi1" , Parameter { name = "position4" , ty = V4F } )
3011 , ( "vi2" , Parameter { name = "vertexUV" , ty = V2F } )
3012 ]
3013 , programInTextures = fromList [ ( "s0" , FTexture2D ) ]
3014 , programOutput = [ Parameter { name = "f0" , ty = V4F } ]
3015 , vertexShader =
3016 """
3017 #version 330 core
3018 vec4 texture2D(sampler2D s
3019 ,vec2 uv) {
3020 return texture(s,uv);
3021 }
3022 uniform float Time;
3023 in vec4 vi1;
3024 in vec2 vi2;
3025 smooth out vec2 vo1;
3026 vec4 r1_Float;
3027 vec4 r2_Float;
3028 vec4 r3_Float;
3029 vec4 ext0_Float_3(vec3 z0) {
3030 return vec4 ((z0).x
3031 ,(z0).y
3032 ,(z0).z
3033 ,0.0);
3034 }
3035 vec3 neg_VecSFloat3(vec3 z0) {
3036 return - (z0);
3037 }
3038 mat4 translateBefore4(vec3 z0) {
3039 return mat4 (r1_Float
3040 ,r2_Float
3041 ,r3_Float
3042 ,vec4 ((z0).x
3043 ,(z0).y
3044 ,(z0).z
3045 ,1.0));
3046 }
3047 mat4 lookat(vec3 z0
3048 ,vec3 z1
3049 ,vec3 z2) {
3050 return (transpose (mat4
3051 (ext0_Float_3 (normalize (cross
3052 (z2,normalize ((z0) - (z1)))))
3053 ,ext0_Float_3 (cross (normalize
3054 ((z0) - (z1))
3055 ,normalize (cross (z2
3056 ,normalize ((z0) - (z1))))))
3057 ,ext0_Float_3 (normalize
3058 ((z0) - (z1)))
3059 ,vec4 (0.0
3060 ,0.0
3061 ,0.0
3062 ,1.0)))) * (translateBefore4
3063 (neg_VecSFloat3 (z0)));
3064 }
3065 mat4 perspective(float z0
3066 ,float z1
3067 ,float z2
3068 ,float z3) {
3069 return mat4 (vec4
3070 (((2.0) * (z0)) / (((z3) * ((z0) * (tan
3071 ((z2) / (2.0))))) - ((0.0) - ((z3) * ((z0) * (tan
3072 ((z2) / (2.0)))))))
3073 ,0.0
3074 ,0.0
3075 ,0.0)
3076 ,vec4 (0.0
3077 ,((2.0) * (z0)) / (((z0) * (tan
3078 ((z2) / (2.0)))) - ((0.0) - ((z0) * (tan
3079 ((z2) / (2.0))))))
3080 ,0.0
3081 ,0.0)
3082 ,vec4 ((((z3) * ((z0) * (tan
3083 ((z2) / (2.0))))) + ((0.0) - ((z3) * ((z0) * (tan
3084 ((z2) / (2.0))))))) / (((z3) * ((z0) * (tan
3085 ((z2) / (2.0))))) - ((0.0) - ((z3) * ((z0) * (tan
3086 ((z2) / (2.0)))))))
3087 ,(((z0) * (tan
3088 ((z2) / (2.0)))) + ((0.0) - ((z0) * (tan
3089 ((z2) / (2.0)))))) / (((z0) * (tan
3090 ((z2) / (2.0)))) - ((0.0) - ((z0) * (tan
3091 ((z2) / (2.0))))))
3092 ,(0.0) - (((z1) + (z0)) / ((z1) - (z0)))
3093 ,-1.0)
3094 ,vec4 (0.0
3095 ,0.0
3096 ,(0.0) - ((((2.0) * (z1)) * (z0)) / ((z1) - (z0)))
3097 ,0.0));
3098 }
3099 mat4 rotMatrixY(float z0) {
3100 return mat4 (vec4 (cos (z0)
3101 ,0.0
3102 ,(0.0) - (sin (z0))
3103 ,0.0)
3104 ,vec4 (0.0,1.0,0.0,0.0)
3105 ,vec4 (sin (z0)
3106 ,0.0
3107 ,cos (z0)
3108 ,0.0)
3109 ,vec4 (0.0,0.0,0.0,1.0));
3110 }
3111 mat4 rotMatrix;
3112 mat4 rotMatrixX(float z0) {
3113 return mat4 (vec4 (1.0
3114 ,0.0
3115 ,0.0
3116 ,0.0)
3117 ,vec4 (0.0
3118 ,cos (z0)
3119 ,sin (z0)
3120 ,0.0)
3121 ,vec4 (0.0
3122 ,(0.0) - (sin (z0))
3123 ,cos (z0)
3124 ,0.0)
3125 ,vec4 (0.0,0.0,0.0,1.0));
3126 }
3127 vec4 scale(float z0,vec4 z1) {
3128 return (z1) * (vec4 (z0
3129 ,z0
3130 ,z0
3131 ,1.0));
3132 }
3133 void main() {
3134 r1_Float = vec4 (1.0
3135 ,0.0
3136 ,0.0
3137 ,0.0);
3138 r2_Float = vec4 (0.0
3139 ,1.0
3140 ,0.0
3141 ,0.0);
3142 r3_Float = vec4 (0.0
3143 ,0.0
3144 ,1.0
3145 ,0.0);
3146 rotMatrix = ((perspective (0.1
3147 ,100.0
3148 ,0.5235987755982988
3149 ,1.0)) * (lookat (vec3 (3.0
3150 ,1.3
3151 ,0.3)
3152 ,vec3 (0.0,0.0,0.0)
3153 ,vec3 (0.0
3154 ,1.0
3155 ,0.0)))) * (rotMatrixY
3156 ((0.1308996938995747) * (Time)));
3157 gl_Position =
3158 (rotMatrix) * (scale (0.4
3159 ,(rotMatrixX (1.2)) * (vi1)));
3160 vo1 = vi2;
3161 }
3162 """
3163 , geometryShader = Nothing
3164 , fragmentShader =
3165 """
3166 #version 330 core
3167 vec4 texture2D(sampler2D s
3168 ,vec2 uv) {
3169 return texture(s,uv);
3170 }
3171 uniform sampler2D s0;
3172 smooth in vec2 vo1;
3173 out vec4 f0;
3174 vec4 setAlpha(vec4 z0) {
3175 return ((z0) * (vec4 (1.0
3176 ,1.0
3177 ,1.0
3178 ,0.0))) + (vec4 (0.0
3179 ,0.0
3180 ,0.0
3181 ,1.0));
3182 }
3183 void main() {
3184 f0 = setAlpha
3185 (((((vo1).yyyx) * (0.5)) + (texture2D
3186 (s0,vo1))) * (0.7));
3187 }
3188 """
3189 }
3190 , Program
3191 { programUniforms = fromList [ ( "Time" , Float ) ]
3192 , programStreams =
3193 fromList
3194 [ ( "vi1" , Parameter { name = "position4" , ty = V4F } )
3195 , ( "vi2" , Parameter { name = "vertexUV" , ty = V2F } )
3196 ]
3197 , programInTextures = fromList [ ( "s0" , FTexture2D ) ]
3198 , programOutput = [ Parameter { name = "f0" , ty = V4F } ]
3199 , vertexShader =
3200 """
3201 #version 330 core
3202 vec4 texture2D(sampler2D s
3203 ,vec2 uv) {
3204 return texture(s,uv);
3205 }
3206 uniform float Time;
3207 in vec4 vi1;
3208 in vec2 vi2;
3209 smooth out vec2 vo1;
3210 vec4 r1_Float;
3211 vec4 r2_Float;
3212 vec4 r3_Float;
3213 vec4 ext0_Float_3(vec3 z0) {
3214 return vec4 ((z0).x
3215 ,(z0).y
3216 ,(z0).z
3217 ,0.0);
3218 }
3219 vec3 neg_VecSFloat3(vec3 z0) {
3220 return - (z0);
3221 }
3222 mat4 translateBefore4(vec3 z0) {
3223 return mat4 (r1_Float
3224 ,r2_Float
3225 ,r3_Float
3226 ,vec4 ((z0).x
3227 ,(z0).y
3228 ,(z0).z
3229 ,1.0));
3230 }
3231 mat4 lookat(vec3 z0
3232 ,vec3 z1
3233 ,vec3 z2) {
3234 return (transpose (mat4
3235 (ext0_Float_3 (normalize (cross
3236 (z2,normalize ((z0) - (z1)))))
3237 ,ext0_Float_3 (cross (normalize
3238 ((z0) - (z1))
3239 ,normalize (cross (z2
3240 ,normalize ((z0) - (z1))))))
3241 ,ext0_Float_3 (normalize
3242 ((z0) - (z1)))
3243 ,vec4 (0.0
3244 ,0.0
3245 ,0.0
3246 ,1.0)))) * (translateBefore4
3247 (neg_VecSFloat3 (z0)));
3248 }
3249 mat4 perspective(float z0
3250 ,float z1
3251 ,float z2
3252 ,float z3) {
3253 return mat4 (vec4
3254 (((2.0) * (z0)) / (((z3) * ((z0) * (tan
3255 ((z2) / (2.0))))) - ((0.0) - ((z3) * ((z0) * (tan
3256 ((z2) / (2.0)))))))
3257 ,0.0
3258 ,0.0
3259 ,0.0)
3260 ,vec4 (0.0
3261 ,((2.0) * (z0)) / (((z0) * (tan
3262 ((z2) / (2.0)))) - ((0.0) - ((z0) * (tan
3263 ((z2) / (2.0))))))
3264 ,0.0
3265 ,0.0)
3266 ,vec4 ((((z3) * ((z0) * (tan
3267 ((z2) / (2.0))))) + ((0.0) - ((z3) * ((z0) * (tan
3268 ((z2) / (2.0))))))) / (((z3) * ((z0) * (tan
3269 ((z2) / (2.0))))) - ((0.0) - ((z3) * ((z0) * (tan
3270 ((z2) / (2.0)))))))
3271 ,(((z0) * (tan
3272 ((z2) / (2.0)))) + ((0.0) - ((z0) * (tan
3273 ((z2) / (2.0)))))) / (((z0) * (tan
3274 ((z2) / (2.0)))) - ((0.0) - ((z0) * (tan
3275 ((z2) / (2.0))))))
3276 ,(0.0) - (((z1) + (z0)) / ((z1) - (z0)))
3277 ,-1.0)
3278 ,vec4 (0.0
3279 ,0.0
3280 ,(0.0) - ((((2.0) * (z1)) * (z0)) / ((z1) - (z0)))
3281 ,0.0));
3282 }
3283 mat4 rotMatrixY(float z0) {
3284 return mat4 (vec4 (cos (z0)
3285 ,0.0
3286 ,(0.0) - (sin (z0))
3287 ,0.0)
3288 ,vec4 (0.0,1.0,0.0,0.0)
3289 ,vec4 (sin (z0)
3290 ,0.0
3291 ,cos (z0)
3292 ,0.0)
3293 ,vec4 (0.0,0.0,0.0,1.0));
3294 }
3295 mat4 rotMatrix;
3296 mat4 rotMatrixX(float z0) {
3297 return mat4 (vec4 (1.0
3298 ,0.0
3299 ,0.0
3300 ,0.0)
3301 ,vec4 (0.0
3302 ,cos (z0)
3303 ,sin (z0)
3304 ,0.0)
3305 ,vec4 (0.0
3306 ,(0.0) - (sin (z0))
3307 ,cos (z0)
3308 ,0.0)
3309 ,vec4 (0.0,0.0,0.0,1.0));
3310 }
3311 vec4 scale(float z0,vec4 z1) {
3312 return (z1) * (vec4 (z0
3313 ,z0
3314 ,z0
3315 ,1.0));
3316 }
3317 void main() {
3318 r1_Float = vec4 (1.0
3319 ,0.0
3320 ,0.0
3321 ,0.0);
3322 r2_Float = vec4 (0.0
3323 ,1.0
3324 ,0.0
3325 ,0.0);
3326 r3_Float = vec4 (0.0
3327 ,0.0
3328 ,1.0
3329 ,0.0);
3330 rotMatrix = ((perspective (0.1
3331 ,100.0
3332 ,0.5235987755982988
3333 ,1.0)) * (lookat (vec3 (3.0
3334 ,1.3
3335 ,0.3)
3336 ,vec3 (0.0,0.0,0.0)
3337 ,vec3 (0.0
3338 ,1.0
3339 ,0.0)))) * (rotMatrixY
3340 ((0.1308996938995747) * (Time)));
3341 gl_Position =
3342 (rotMatrix) * (scale (0.4
3343 ,(rotMatrixX (1.3)) * (vi1)));
3344 vo1 = vi2;
3345 }
3346 """
3347 , geometryShader = Nothing
3348 , fragmentShader =
3349 """
3350 #version 330 core
3351 vec4 texture2D(sampler2D s
3352 ,vec2 uv) {
3353 return texture(s,uv);
3354 }
3355 uniform sampler2D s0;
3356 smooth in vec2 vo1;
3357 out vec4 f0;
3358 vec4 setAlpha(vec4 z0) {
3359 return ((z0) * (vec4 (1.0
3360 ,1.0
3361 ,1.0
3362 ,0.0))) + (vec4 (0.0
3363 ,0.0
3364 ,0.0
3365 ,1.0));
3366 }
3367 void main() {
3368 f0 = setAlpha
3369 (((((vo1).yyyx) * (0.5)) + (texture2D
3370 (s0,vo1))) * (0.7));
3371 }
3372 """
3373 }
3374 , Program
3375 { programUniforms = fromList [ ( "Time" , Float ) ]
3376 , programStreams =
3377 fromList
3378 [ ( "vi1" , Parameter { name = "position4" , ty = V4F } )
3379 , ( "vi2" , Parameter { name = "vertexUV" , ty = V2F } )
3380 ]
3381 , programInTextures = fromList [ ( "s0" , FTexture2D ) ]
3382 , programOutput = [ Parameter { name = "f0" , ty = V4F } ]
3383 , vertexShader =
3384 """
3385 #version 330 core
3386 vec4 texture2D(sampler2D s
3387 ,vec2 uv) {
3388 return texture(s,uv);
3389 }
3390 uniform float Time;
3391 in vec4 vi1;
3392 in vec2 vi2;
3393 smooth out vec2 vo1;
3394 vec4 r1_Float;
3395 vec4 r2_Float;
3396 vec4 r3_Float;
3397 vec4 ext0_Float_3(vec3 z0) {
3398 return vec4 ((z0).x
3399 ,(z0).y
3400 ,(z0).z
3401 ,0.0);
3402 }
3403 vec3 neg_VecSFloat3(vec3 z0) {
3404 return - (z0);
3405 }
3406 mat4 translateBefore4(vec3 z0) {
3407 return mat4 (r1_Float
3408 ,r2_Float
3409 ,r3_Float
3410 ,vec4 ((z0).x
3411 ,(z0).y
3412 ,(z0).z
3413 ,1.0));
3414 }
3415 mat4 lookat(vec3 z0
3416 ,vec3 z1
3417 ,vec3 z2) {
3418 return (transpose (mat4
3419 (ext0_Float_3 (normalize (cross
3420 (z2,normalize ((z0) - (z1)))))
3421 ,ext0_Float_3 (cross (normalize
3422 ((z0) - (z1))
3423 ,normalize (cross (z2
3424 ,normalize ((z0) - (z1))))))
3425 ,ext0_Float_3 (normalize
3426 ((z0) - (z1)))
3427 ,vec4 (0.0
3428 ,0.0
3429 ,0.0
3430 ,1.0)))) * (translateBefore4
3431 (neg_VecSFloat3 (z0)));
3432 }
3433 mat4 perspective(float z0
3434 ,float z1
3435 ,float z2
3436 ,float z3) {
3437 return mat4 (vec4
3438 (((2.0) * (z0)) / (((z3) * ((z0) * (tan
3439 ((z2) / (2.0))))) - ((0.0) - ((z3) * ((z0) * (tan
3440 ((z2) / (2.0)))))))
3441 ,0.0
3442 ,0.0
3443 ,0.0)
3444 ,vec4 (0.0
3445 ,((2.0) * (z0)) / (((z0) * (tan
3446 ((z2) / (2.0)))) - ((0.0) - ((z0) * (tan
3447 ((z2) / (2.0))))))
3448 ,0.0
3449 ,0.0)
3450 ,vec4 ((((z3) * ((z0) * (tan
3451 ((z2) / (2.0))))) + ((0.0) - ((z3) * ((z0) * (tan
3452 ((z2) / (2.0))))))) / (((z3) * ((z0) * (tan
3453 ((z2) / (2.0))))) - ((0.0) - ((z3) * ((z0) * (tan
3454 ((z2) / (2.0)))))))
3455 ,(((z0) * (tan
3456 ((z2) / (2.0)))) + ((0.0) - ((z0) * (tan
3457 ((z2) / (2.0)))))) / (((z0) * (tan
3458 ((z2) / (2.0)))) - ((0.0) - ((z0) * (tan
3459 ((z2) / (2.0))))))
3460 ,(0.0) - (((z1) + (z0)) / ((z1) - (z0)))
3461 ,-1.0)
3462 ,vec4 (0.0
3463 ,0.0
3464 ,(0.0) - ((((2.0) * (z1)) * (z0)) / ((z1) - (z0)))
3465 ,0.0));
3466 }
3467 mat4 rotMatrixY(float z0) {
3468 return mat4 (vec4 (cos (z0)
3469 ,0.0
3470 ,(0.0) - (sin (z0))
3471 ,0.0)
3472 ,vec4 (0.0,1.0,0.0,0.0)
3473 ,vec4 (sin (z0)
3474 ,0.0
3475 ,cos (z0)
3476 ,0.0)
3477 ,vec4 (0.0,0.0,0.0,1.0));
3478 }
3479 mat4 rotMatrix;
3480 mat4 rotMatrixX(float z0) {
3481 return mat4 (vec4 (1.0
3482 ,0.0
3483 ,0.0
3484 ,0.0)
3485 ,vec4 (0.0
3486 ,cos (z0)
3487 ,sin (z0)
3488 ,0.0)
3489 ,vec4 (0.0
3490 ,(0.0) - (sin (z0))
3491 ,cos (z0)
3492 ,0.0)
3493 ,vec4 (0.0,0.0,0.0,1.0));
3494 }
3495 vec4 scale(float z0,vec4 z1) {
3496 return (z1) * (vec4 (z0
3497 ,z0
3498 ,z0
3499 ,1.0));
3500 }
3501 void main() {
3502 r1_Float = vec4 (1.0
3503 ,0.0
3504 ,0.0
3505 ,0.0);
3506 r2_Float = vec4 (0.0
3507 ,1.0
3508 ,0.0
3509 ,0.0);
3510 r3_Float = vec4 (0.0
3511 ,0.0
3512 ,1.0
3513 ,0.0);
3514 rotMatrix = ((perspective (0.1
3515 ,100.0
3516 ,0.5235987755982988
3517 ,1.0)) * (lookat (vec3 (3.0
3518 ,1.3
3519 ,0.3)
3520 ,vec3 (0.0,0.0,0.0)
3521 ,vec3 (0.0
3522 ,1.0
3523 ,0.0)))) * (rotMatrixY
3524 ((0.1308996938995747) * (Time)));
3525 gl_Position =
3526 (rotMatrix) * (scale (0.4
3527 ,(rotMatrixX (1.4)) * (vi1)));
3528 vo1 = vi2;
3529 }
3530 """
3531 , geometryShader = Nothing
3532 , fragmentShader =
3533 """
3534 #version 330 core
3535 vec4 texture2D(sampler2D s
3536 ,vec2 uv) {
3537 return texture(s,uv);
3538 }
3539 uniform sampler2D s0;
3540 smooth in vec2 vo1;
3541 out vec4 f0;
3542 vec4 setAlpha(vec4 z0) {
3543 return ((z0) * (vec4 (1.0
3544 ,1.0
3545 ,1.0
3546 ,0.0))) + (vec4 (0.0
3547 ,0.0
3548 ,0.0
3549 ,1.0));
3550 }
3551 void main() {
3552 f0 = setAlpha
3553 (((((vo1).yyyx) * (0.5)) + (texture2D
3554 (s0,vo1))) * (0.7));
3555 }
3556 """
3557 }
3558 ] 1198 ]
3559 , slots = 1199 , slots =
3560 [ Slot 1200 [ Slot
@@ -3563,225 +1203,24 @@ Pipeline
3563 fromList [ ( "position4" , V4F ) , ( "vertexUV" , V2F ) ] 1203 fromList [ ( "position4" , V4F ) , ( "vertexUV" , V2F ) ]
3564 , slotUniforms = fromList [ ( "Time" , Float ) ] 1204 , slotUniforms = fromList [ ( "Time" , Float ) ]
3565 , slotPrimitive = Triangles 1205 , slotPrimitive = Triangles
3566 , slotPrograms = 1206 , slotPrograms = [ 0 , 1 , 2 , 3 , 4 ]
3567 [ 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 ]
3568 } 1207 }
3569 ] 1208 ]
3570 , streams = [] 1209 , streams = []
3571 , commands = 1210 , commands =
3572 [ SetRenderTarget 15 1211 [ SetRenderTarget 5
3573 , ClearRenderTarget
3574 [ ClearImage { imageSemantic = Depth , clearValue = VFloat 1.0 }
3575 , ClearImage
3576 { imageSemantic = Color , clearValue = VV4F (V4 0.0 0.5 0.5 1.0) }
3577 ]
3578 , SetRenderTarget 14
3579 , ClearRenderTarget 1212 , ClearRenderTarget
3580 [ ClearImage { imageSemantic = Depth , clearValue = VFloat 1.0 } 1213 [ ClearImage { imageSemantic = Depth , clearValue = VFloat 1.0 }
3581 , ClearImage 1214 , ClearImage
3582 { imageSemantic = Color , clearValue = VV4F (V4 0.0 0.5 0.5 1.0) } 1215 { imageSemantic = Color , clearValue = VV4F (V4 0.0 0.5 0.5 1.0) }
3583 ] 1216 ]
3584 , SetProgram 0
3585 , SetTexture 0 29
3586 , SetSamplerUniform "s0" 0
3587 , SetRasterContext
3588 (TriangleCtx CullNone PolygonFill NoOffset LastVertex)
3589 , SetAccumulationContext
3590 AccumulationContext
3591 { accViewportName = Nothing
3592 , accOperations =
3593 [ DepthOp Less True
3594 , ColorOp NoBlending (VV4B (V4 True True True True))
3595 ]
3596 }
3597 , RenderSlot 0
3598 , SetRenderTarget 13
3599 , ClearRenderTarget
3600 [ ClearImage { imageSemantic = Depth , clearValue = VFloat 1.0 }
3601 , ClearImage
3602 { imageSemantic = Color , clearValue = VV4F (V4 0.0 0.5 0.5 1.0) }
3603 ]
3604 , SetProgram 1
3605 , SetTexture 0 27
3606 , SetSamplerUniform "s0" 0
3607 , SetRasterContext
3608 (TriangleCtx CullNone PolygonFill NoOffset LastVertex)
3609 , SetAccumulationContext
3610 AccumulationContext
3611 { accViewportName = Nothing
3612 , accOperations =
3613 [ DepthOp Less True
3614 , ColorOp NoBlending (VV4B (V4 True True True True))
3615 ]
3616 }
3617 , RenderSlot 0
3618 , SetRenderTarget 12
3619 , ClearRenderTarget
3620 [ ClearImage { imageSemantic = Depth , clearValue = VFloat 1.0 }
3621 , ClearImage
3622 { imageSemantic = Color , clearValue = VV4F (V4 0.0 0.5 0.5 1.0) }
3623 ]
3624 , SetProgram 2
3625 , SetTexture 0 25
3626 , SetSamplerUniform "s0" 0
3627 , SetRasterContext
3628 (TriangleCtx CullNone PolygonFill NoOffset LastVertex)
3629 , SetAccumulationContext
3630 AccumulationContext
3631 { accViewportName = Nothing
3632 , accOperations =
3633 [ DepthOp Less True
3634 , ColorOp NoBlending (VV4B (V4 True True True True))
3635 ]
3636 }
3637 , RenderSlot 0
3638 , SetRenderTarget 11
3639 , ClearRenderTarget
3640 [ ClearImage { imageSemantic = Depth , clearValue = VFloat 1.0 }
3641 , ClearImage
3642 { imageSemantic = Color , clearValue = VV4F (V4 0.0 0.5 0.5 1.0) }
3643 ]
3644 , SetProgram 3
3645 , SetTexture 0 23
3646 , SetSamplerUniform "s0" 0
3647 , SetRasterContext
3648 (TriangleCtx CullNone PolygonFill NoOffset LastVertex)
3649 , SetAccumulationContext
3650 AccumulationContext
3651 { accViewportName = Nothing
3652 , accOperations =
3653 [ DepthOp Less True
3654 , ColorOp NoBlending (VV4B (V4 True True True True))
3655 ]
3656 }
3657 , RenderSlot 0
3658 , SetRenderTarget 10
3659 , ClearRenderTarget
3660 [ ClearImage { imageSemantic = Depth , clearValue = VFloat 1.0 }
3661 , ClearImage
3662 { imageSemantic = Color , clearValue = VV4F (V4 0.0 0.5 0.5 1.0) }
3663 ]
3664 , SetProgram 4
3665 , SetTexture 0 21
3666 , SetSamplerUniform "s0" 0
3667 , SetRasterContext
3668 (TriangleCtx CullNone PolygonFill NoOffset LastVertex)
3669 , SetAccumulationContext
3670 AccumulationContext
3671 { accViewportName = Nothing
3672 , accOperations =
3673 [ DepthOp Less True
3674 , ColorOp NoBlending (VV4B (V4 True True True True))
3675 ]
3676 }
3677 , RenderSlot 0
3678 , SetRenderTarget 9
3679 , ClearRenderTarget
3680 [ ClearImage { imageSemantic = Depth , clearValue = VFloat 1.0 }
3681 , ClearImage
3682 { imageSemantic = Color , clearValue = VV4F (V4 0.0 0.5 0.5 1.0) }
3683 ]
3684 , SetProgram 5
3685 , SetTexture 0 19
3686 , SetSamplerUniform "s0" 0
3687 , SetRasterContext
3688 (TriangleCtx CullNone PolygonFill NoOffset LastVertex)
3689 , SetAccumulationContext
3690 AccumulationContext
3691 { accViewportName = Nothing
3692 , accOperations =
3693 [ DepthOp Less True
3694 , ColorOp NoBlending (VV4B (V4 True True True True))
3695 ]
3696 }
3697 , RenderSlot 0
3698 , SetRenderTarget 8
3699 , ClearRenderTarget
3700 [ ClearImage { imageSemantic = Depth , clearValue = VFloat 1.0 }
3701 , ClearImage
3702 { imageSemantic = Color , clearValue = VV4F (V4 0.0 0.5 0.5 1.0) }
3703 ]
3704 , SetProgram 6
3705 , SetTexture 0 17
3706 , SetSamplerUniform "s0" 0
3707 , SetRasterContext
3708 (TriangleCtx CullNone PolygonFill NoOffset LastVertex)
3709 , SetAccumulationContext
3710 AccumulationContext
3711 { accViewportName = Nothing
3712 , accOperations =
3713 [ DepthOp Less True
3714 , ColorOp NoBlending (VV4B (V4 True True True True))
3715 ]
3716 }
3717 , RenderSlot 0
3718 , SetRenderTarget 7
3719 , ClearRenderTarget
3720 [ ClearImage { imageSemantic = Depth , clearValue = VFloat 1.0 }
3721 , ClearImage
3722 { imageSemantic = Color , clearValue = VV4F (V4 0.0 0.5 0.5 1.0) }
3723 ]
3724 , SetProgram 7
3725 , SetTexture 0 15
3726 , SetSamplerUniform "s0" 0
3727 , SetRasterContext
3728 (TriangleCtx CullNone PolygonFill NoOffset LastVertex)
3729 , SetAccumulationContext
3730 AccumulationContext
3731 { accViewportName = Nothing
3732 , accOperations =
3733 [ DepthOp Less True
3734 , ColorOp NoBlending (VV4B (V4 True True True True))
3735 ]
3736 }
3737 , RenderSlot 0
3738 , SetRenderTarget 6
3739 , ClearRenderTarget
3740 [ ClearImage { imageSemantic = Depth , clearValue = VFloat 1.0 }
3741 , ClearImage
3742 { imageSemantic = Color , clearValue = VV4F (V4 0.0 0.5 0.5 1.0) }
3743 ]
3744 , SetProgram 8
3745 , SetTexture 0 13
3746 , SetSamplerUniform "s0" 0
3747 , SetRasterContext
3748 (TriangleCtx CullNone PolygonFill NoOffset LastVertex)
3749 , SetAccumulationContext
3750 AccumulationContext
3751 { accViewportName = Nothing
3752 , accOperations =
3753 [ DepthOp Less True
3754 , ColorOp NoBlending (VV4B (V4 True True True True))
3755 ]
3756 }
3757 , RenderSlot 0
3758 , SetRenderTarget 5
3759 , ClearRenderTarget
3760 [ ClearImage { imageSemantic = Depth , clearValue = VFloat 1.0 }
3761 , ClearImage
3762 { imageSemantic = Color , clearValue = VV4F (V4 0.0 0.5 0.5 1.0) }
3763 ]
3764 , SetProgram 9
3765 , SetTexture 0 11
3766 , SetSamplerUniform "s0" 0
3767 , SetRasterContext
3768 (TriangleCtx CullNone PolygonFill NoOffset LastVertex)
3769 , SetAccumulationContext
3770 AccumulationContext
3771 { accViewportName = Nothing
3772 , accOperations =
3773 [ DepthOp Less True
3774 , ColorOp NoBlending (VV4B (V4 True True True True))
3775 ]
3776 }
3777 , RenderSlot 0
3778 , SetRenderTarget 4 1217 , SetRenderTarget 4
3779 , ClearRenderTarget 1218 , ClearRenderTarget
3780 [ ClearImage { imageSemantic = Depth , clearValue = VFloat 1.0 } 1219 [ ClearImage { imageSemantic = Depth , clearValue = VFloat 1.0 }
3781 , ClearImage 1220 , ClearImage
3782 { imageSemantic = Color , clearValue = VV4F (V4 0.0 0.5 0.5 1.0) } 1221 { imageSemantic = Color , clearValue = VV4F (V4 0.0 0.5 0.5 1.0) }
3783 ] 1222 ]
3784 , SetProgram 10 1223 , SetProgram 0
3785 , SetTexture 0 9 1224 , SetTexture 0 9
3786 , SetSamplerUniform "s0" 0 1225 , SetSamplerUniform "s0" 0
3787 , SetRasterContext 1226 , SetRasterContext
@@ -3801,7 +1240,7 @@ Pipeline
3801 , ClearImage 1240 , ClearImage
3802 { imageSemantic = Color , clearValue = VV4F (V4 0.0 0.5 0.5 1.0) } 1241 { imageSemantic = Color , clearValue = VV4F (V4 0.0 0.5 0.5 1.0) }
3803 ] 1242 ]
3804 , SetProgram 11 1243 , SetProgram 1
3805 , SetTexture 0 7 1244 , SetTexture 0 7
3806 , SetSamplerUniform "s0" 0 1245 , SetSamplerUniform "s0" 0
3807 , SetRasterContext 1246 , SetRasterContext
@@ -3821,7 +1260,7 @@ Pipeline
3821 , ClearImage 1260 , ClearImage
3822 { imageSemantic = Color , clearValue = VV4F (V4 0.0 0.5 0.5 1.0) } 1261 { imageSemantic = Color , clearValue = VV4F (V4 0.0 0.5 0.5 1.0) }
3823 ] 1262 ]
3824 , SetProgram 12 1263 , SetProgram 2
3825 , SetTexture 0 5 1264 , SetTexture 0 5
3826 , SetSamplerUniform "s0" 0 1265 , SetSamplerUniform "s0" 0
3827 , SetRasterContext 1266 , SetRasterContext
@@ -3841,7 +1280,7 @@ Pipeline
3841 , ClearImage 1280 , ClearImage
3842 { imageSemantic = Color , clearValue = VV4F (V4 0.0 0.5 0.5 1.0) } 1281 { imageSemantic = Color , clearValue = VV4F (V4 0.0 0.5 0.5 1.0) }
3843 ] 1282 ]
3844 , SetProgram 13 1283 , SetProgram 3
3845 , SetTexture 0 3 1284 , SetTexture 0 3
3846 , SetSamplerUniform "s0" 0 1285 , SetSamplerUniform "s0" 0
3847 , SetRasterContext 1286 , SetRasterContext
@@ -3861,7 +1300,7 @@ Pipeline
3861 , ClearImage 1300 , ClearImage
3862 { imageSemantic = Color , clearValue = VV4F (V4 0.0 0.5 0.5 1.0) } 1301 { imageSemantic = Color , clearValue = VV4F (V4 0.0 0.5 0.5 1.0) }
3863 ] 1302 ]
3864 , SetProgram 14 1303 , SetProgram 4
3865 , SetTexture 0 1 1304 , SetTexture 0 1
3866 , SetSamplerUniform "s0" 0 1305 , SetSamplerUniform "s0" 0
3867 , SetRasterContext 1306 , SetRasterContext