#N canvas 125 98 896 632 10; #X declare -lib Gem; #X obj 465 39 cnv 15 420 570 empty empty empty 20 12 0 14 -228992 -66577 0; #X obj 472 323 cnv 15 300 60 empty empty empty 20 12 0 14 -191407 -66577 0; #X obj 474 48 cnv 15 400 250 empty empty empty 20 12 0 14 -24198 -66577 0; #X obj 477 71 gemhead 20; #X obj 664 336 gemhead; #X msg 615 136 dimen 320 240; #X obj 477 498 rotateXYZ; #X floatatom 794 457 5 0 0 0 - - -; #X msg 762 144 color 0 0 1 0; #X msg 602 117 dimen 1024 1024; #X msg 751 104 color 0 0 0 0; #X obj 477 452 t a b; #X floatatom 717 499 5 0 0 0 - - -; #X msg 549 262 rectangle \$1; #X obj 549 244 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1; #X msg 509 131 type FLOAT; #X obj 664 304 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1; #X obj 477 412 translateXYZ 0 0 -4; #X obj 477 328 gemframebuffer; #X obj 664 361 pix_texture; #X obj 664 388 t a b; #X msg 531 217 texunit \$1; #X msg 495 92 type BYTE; #X msg 503 112 type INT; #X msg 658 209 format YUV; #X msg 649 188 format RGB; #X msg 668 230 format RGBA; #X msg 680 250 format RGB32; #X obj 664 517 square 2; #X obj 664 479 rotateXYZ -40 0 200; #X floatatom 707 459 5 0 0 0 - - -; #X obj 477 517 pqtorusknots; #N canvas 0 50 450 300 rotation 0; #X obj 33 19 inlet; #X obj 33 110 % 360; #X obj 33 62 i; #X obj 33 88 + 5; #X obj 33 136 outlet; #X obj 84 111 % 360; #X obj 84 63 i; #X obj 84 137 outlet; #X obj 134 112 % 360; #X obj 134 64 i; #X obj 134 138 outlet; #X obj 84 89 + 3; #X obj 134 90 + 7; #X connect 0 0 2 0; #X connect 0 0 6 0; #X connect 0 0 9 0; #X connect 1 0 2 1; #X connect 1 0 4 0; #X connect 2 0 3 0; #X connect 3 0 1 0; #X connect 5 0 6 1; #X connect 5 0 7 0; #X connect 6 0 11 0; #X connect 8 0 9 1; #X connect 8 0 10 0; #X connect 9 0 12 0; #X connect 11 0 5 0; #X connect 12 0 8 0; #X restore 509 473 pd rotation; #X floatatom 531 197 5 0 0 0 - - -; #N canvas 125 50 450 300 rotation 0; #X obj 112 29 inlet; #X obj 112 105 % 360; #X obj 112 57 i; #X obj 112 131 outlet; #X obj 112 83 + 1; #X connect 0 0 2 0; #X connect 1 0 2 1; #X connect 1 0 3 0; #X connect 2 0 4 0; #X connect 4 0 1 0; #X restore 794 432 pd rotation; #X obj 762 123 loadbang; #X obj 477 432 color 1 0 0; #X obj 649 275 t a; #X obj 585 154 t a; #X obj 751 165 t a; #X obj 495 160 t a; #X floatatom 563 391 5 0 0 0 - - -; #X floatatom 607 392 5 0 0 0 - - -; #X floatatom 520 391 5 0 0 0 - - -; #X obj 495 184 t a; #X obj 470 544 cnv 15 410 60 empty empty empty 20 12 0 14 -195568 -66577 0; #X msg 757 574 color 0 0 0 0; #X msg 746 552 color 0 1 1 0; #X msg 637 555 lighting \$1; #X obj 615 556 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1; #N canvas 0 50 450 300 gemwin 0; #X obj 132 136 gemwin; #X obj 67 89 outlet; #X obj 67 10 inlet; #X msg 67 70 set destroy; #X msg 142 68 set create; #X msg 198 112 destroy; #X msg 132 112 create \, 1; #X obj 67 40 route create destroy; #X obj 20 217 gemhead 1; #X obj 20 237 world_light; #X connect 2 0 7 0; #X connect 3 0 1 0; #X connect 4 0 1 0; #X connect 5 0 0 0; #X connect 6 0 0 0; #X connect 7 0 3 0; #X connect 7 0 6 0; #X connect 7 1 4 0; #X connect 7 1 5 0; #X connect 7 2 0 0; #X connect 8 0 9 0; #X restore 473 584 pd gemwin; #X msg 473 559 destroy; #X text 471 543 Create window:; #X obj 637 582 t a; #X text 476 52 Example:; #X text 699 10 GEM object; #X obj 7 71 cnv 15 450 130 empty empty empty 20 12 0 14 -233017 -66577 0; #X obj 7 238 cnv 15 450 370 empty empty empty 20 12 0 14 -233017 -66577 0; #X text 10 244 Inlets:; #X obj 7 205 cnv 15 450 30 empty empty empty 20 12 0 14 -195568 -66577 0; #X text 14 204 Arguments:; #X text 28 263 Inlet 1: gemlist; #X text 15 553 Outlets:; #X text 31 569 Outlet 1: gemlist; #X text 60 217 ; #X text 102 29 Synopsis: [gemframebuffer]; #X text 122 45 Class: framebuffer object; #X text 12 80 Description: Renders a scene in a texture \, for later use.; #X text 12 98 this example renders a scene (pqtorusknots) into a framebuffer \, which is then used as a texture onto a square.; #X text 13 128 you need framebuffer support (and its driver) on your gfx-card; #X text 28 277 Inlet 1: message: type [BYTE | INT | FLOAT]; #X text 27 345 Inlet 1: message: dimen ; #X text 27 379 Inlet 1: message: color ; #X text 26 460 Inlet 1: message: texunit ; #X text 27 310 Inlet 1: message: format [RGB|RGBA|RGB32|YUV]; #X text 26 415 Inlet 1: message: rectangle [0|1]; #X text 103 292 (type of the framebuffer data); #X text 102 360 (dimension of the framebuffer texture); #X text 106 495 (useful only with shader); #X text 106 478 (change texunit of the texture); #X text 104 432 (texturing mode \; rectangle (1) or normalized (0)) ; #X text 100 326 (color format of the framebuffer); #X text 102 395 (background color of the framebuffer); #X obj 556 71 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X floatatom 493 353 5 0 0 0 - - -; #X obj 477 372 scaleXYZ; #X floatatom 563 356 5 0 0 0 - - -; #X floatatom 528 355 5 0 0 0 - - -; #X msg 585 60 perspec -1 1 -1 1 1 20; #X msg 593 86 perspec -1 1 -1 1 3 75; #X text 98 527 (frustum of the framebuffer); #X text 752 59 default; #X text 11 160 NOTE: the default view-point of [gemframebuffer] is at the origin 0/0/0 \, unlike [gemwin] where it is at 0/0/4. You might want to manually insert a [translateXYZ 0 0 -4].; #X text 23 512 Inlet 1: message: perspec ; #X text 428 512 ; #X text 31 587 Outlet 2: texture info : <0.>; #X obj 778 8 declare -lib Gem; #X connect 3 0 18 0; #X connect 4 0 19 0; #X connect 5 0 38 0; #X connect 6 0 31 0; #X connect 7 0 29 3; #X connect 8 0 39 0; #X connect 9 0 38 0; #X connect 10 0 39 0; #X connect 11 0 6 0; #X connect 11 1 32 0; #X connect 12 0 28 1; #X connect 13 0 18 0; #X connect 14 0 13 0; #X connect 15 0 40 0; #X connect 16 0 4 0; #X connect 17 0 36 0; #X connect 18 0 85 0; #X connect 18 1 19 1; #X connect 19 0 20 0; #X connect 20 0 29 0; #X connect 20 1 34 0; #X connect 21 0 18 0; #X connect 22 0 40 0; #X connect 23 0 40 0; #X connect 24 0 37 0; #X connect 25 0 37 0; #X connect 26 0 37 0; #X connect 27 0 37 0; #X connect 29 0 28 0; #X connect 30 0 29 1; #X connect 32 0 6 1; #X connect 32 1 6 2; #X connect 32 2 6 3; #X connect 33 0 21 0; #X connect 34 0 7 0; #X connect 35 0 8 0; #X connect 36 0 11 0; #X connect 37 0 18 0; #X connect 38 0 44 0; #X connect 39 0 44 0; #X connect 40 0 44 0; #X connect 41 0 17 2; #X connect 42 0 17 3; #X connect 43 0 17 1; #X connect 44 0 18 0; #X connect 46 0 53 0; #X connect 47 0 53 0; #X connect 48 0 53 0; #X connect 49 0 48 0; #X connect 50 0 51 0; #X connect 51 0 50 0; #X connect 53 0 50 0; #X connect 83 0 3 0; #X connect 84 0 85 1; #X connect 85 0 17 0; #X connect 86 0 85 3; #X connect 87 0 85 2; #X connect 88 0 38 0; #X connect 89 0 38 0;