#N canvas 584 161 745 692 10; #X declare -lib Gem; #X obj 482 415 cnv 15 90 40 empty empty empty 20 12 0 14 -257985 -66577 0; #X obj 175 337 cnv 15 90 60 empty empty empty 20 12 0 14 -257985 -66577 0; #X obj 174 147 cnv 15 180 25 empty empty pre 2 12 0 14 -4032 -1 0; #X obj 174 257 cnv 15 180 25 empty empty post 2 12 0 14 -4032 -1 0 ; #X obj 20 571 cnv 15 600 30 empty empty empty 20 12 0 14 -260097 -66577 0; #X obj 27 92 cnv 15 100 60 empty empty empty 20 12 0 14 -195568 -66577 0; #N canvas 234 575 448 300 gemwin 0; #X obj 67 89 outlet; #X obj 67 10 inlet; #X msg 67 70 set destroy; #X msg 271 113 destroy; #X msg 146 71 set create; #X obj 67 41 route create; #X msg 311 80 lighting \$1; #X obj 311 56 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X msg 198 32 dimen 1024 768; #X msg 190 10 dimen 1280 1024; #X msg 132 112 create \, 1 \, view 0 0 3; #X obj 86 132 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 342 29 inlet; #X obj 132 149 gemwin; #X obj 3 11 loadbang; #X obj 217 197 gemhead 80; #X obj 217 224 world_light; #X connect 1 0 5 0; #X connect 2 0 0 0; #X connect 3 0 13 0; #X connect 4 0 0 0; #X connect 5 0 2 0; #X connect 5 0 10 0; #X connect 5 1 4 0; #X connect 5 1 3 0; #X connect 6 0 13 0; #X connect 7 0 6 0; #X connect 8 0 13 0; #X connect 9 0 13 0; #X connect 10 0 13 0; #X connect 11 0 13 0; #X connect 12 0 13 0; #X connect 14 0 4 0; #X connect 15 0 16 0; #X restore 32 131 pd gemwin; #X msg 32 109 create; #X obj 174 225 cnv 15 180 30 empty empty empty 20 12 0 14 -4034 -66577 0; #X obj 184 24 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 184 68 alpha; #N canvas 974 317 450 481 draw_6_faces 0; #X msg 177 365 face \$1; #X obj 75 18 inlet; #X obj 177 276 t f f; #X obj 75 217 t a b; #X msg 104 241 0; #X obj 90 190 t a b; #X obj 105 155 t a b; #X obj 120 127 t a b; #X obj 135 100 t a b; #X obj 150 78 t a b; #X msg 118 211 1; #X msg 132 174 2; #X msg 147 147 3; #X msg 162 125 4; #X obj 75 56 t a a a a a a; #X msg 177 100 5; #X obj 75 419 outlet; #X obj 204 341 outlet num_face_to_rot_scene; #X connect 0 0 16 0; #X connect 1 0 14 0; #X connect 2 0 0 0; #X connect 2 1 17 0; #X connect 3 0 16 0; #X connect 3 1 4 0; #X connect 4 0 2 0; #X connect 5 0 16 0; #X connect 5 1 10 0; #X connect 6 0 16 0; #X connect 6 1 11 0; #X connect 7 0 16 0; #X connect 7 1 12 0; #X connect 8 0 16 0; #X connect 8 1 13 0; #X connect 9 0 16 0; #X connect 9 1 15 0; #X connect 10 0 2 0; #X connect 11 0 2 0; #X connect 12 0 2 0; #X connect 13 0 2 0; #X connect 14 0 3 0; #X connect 14 1 5 0; #X connect 14 2 6 0; #X connect 14 3 7 0; #X connect 14 4 8 0; #X connect 14 5 9 0; #X connect 15 0 2 0; #X restore 211 152 pd draw_6_faces; #N canvas 788 152 450 372 rotate_scene 0; #X obj 81 190 unpack f f; #X obj 81 78 sel 0 1 2 3 4 5; #X msg 81 131 0 90; #X msg 114 131 0 -90; #X msg 153 131 90 0; #X msg 188 131 -90 0; #X msg 234 131 0 0; #X msg 263 131 0 180; #X obj 81 47 inlet num_face; #X obj 50 9 inlet head; #X obj 50 304 outlet head; #X floatatom 163 186 5 0 0 0 - - -; #X floatatom 89 245 5 0 0 0 - - -; #X floatatom 148 250 5 0 0 0 - - -; #X floatatom 57 253 5 0 0 0 - - -; #X obj 50 216 rotateXYZ 0 90 0; #X obj 50 280 rotateXYZ -90 0 90; #X connect 0 0 15 1; #X connect 0 1 15 2; #X connect 1 0 2 0; #X connect 1 1 3 0; #X connect 1 2 4 0; #X connect 1 3 5 0; #X connect 1 4 6 0; #X connect 1 5 7 0; #X connect 2 0 0 0; #X connect 3 0 0 0; #X connect 4 0 0 0; #X connect 5 0 0 0; #X connect 6 0 0 0; #X connect 7 0 0 0; #X connect 8 0 1 0; #X connect 9 0 15 0; #X connect 11 0 15 3; #X connect 12 0 16 2; #X connect 13 0 16 3; #X connect 14 0 16 1; #X connect 15 0 16 0; #X connect 16 0 10 0; #X restore 211 263 pd rotate_scene; #X obj 211 231 gemcubeframebuffer; #X obj 225 177 loadbang; #X obj 184 107 t a a; #N canvas 620 313 360 553 shader 0; #X obj 72 166 glsl_vertex; #X obj 72 269 glsl_fragment; #X obj 72 449 glsl_program; #X obj 138 387 pack 0 0; #X obj 156 357 t b f; #X obj 156 300 change; #X obj 138 191 change; #X msg 138 409 link \$1 \$2; #X floatatom 156 324 2 0 0 0 ID - -; #X floatatom 138 214 2 0 0 0 ID - -; #X obj 120 60 tgl 15 0 \$0-shadOn-snd \$0-shadOn-rcv on/off 17 7 0 10 -262144 -1 -1 1 1; #X obj 21 59 inlet gemlist; #X obj 21 489 outlet gemlist; #X msg 87 139 open \$1.vert; #X msg 152 238 open \$1.frag; #X obj 120 14 loadbang; #X msg 120 36 1; #X obj 152 69 inlet loadShader; #X obj 229 408 inlet variables; #N canvas 85 80 450 300 demux 0; #X obj 52 33 inlet; #X obj 308 37 inlet select; #X obj 52 55 t a a; #X obj 52 148 outlet; #X obj 105 105 == 0; #X obj 52 126 spigot 1; #X obj 122 148 outlet; #X obj 175 105 == 1; #X obj 122 126 spigot 0; #X obj 308 59 t f f; #X connect 0 0 2 0; #X connect 1 0 9 0; #X connect 2 0 5 0; #X connect 2 1 8 0; #X connect 4 0 5 1; #X connect 5 0 3 0; #X connect 7 0 8 1; #X connect 8 0 6 0; #X connect 9 0 4 0; #X connect 9 1 7 0; #X restore 21 108 pd demux; #X obj 152 91 symbol; #X obj 152 113 t s s; #X connect 0 0 1 0; #X connect 0 1 6 0; #X connect 1 0 2 0; #X connect 1 1 5 0; #X connect 2 0 12 0; #X connect 3 0 7 0; #X connect 4 0 3 0; #X connect 4 1 3 1; #X connect 5 0 8 0; #X connect 6 0 9 0; #X connect 7 0 2 0; #X connect 8 0 4 0; #X connect 9 0 3 0; #X connect 10 0 19 1; #X connect 11 0 19 0; #X connect 13 0 0 0; #X connect 14 0 1 0; #X connect 15 0 16 0; #X connect 16 0 10 0; #X connect 17 0 20 0; #X connect 18 0 2 0; #X connect 19 0 12 0; #X connect 19 1 0 0; #X connect 20 0 21 0; #X connect 21 0 13 0; #X connect 21 1 14 0; #X restore 184 369 pd shader; #X obj 184 343 pix_texture; #X obj 184 310 separator; #X obj 211 130 separator; #X obj 276 343 loadbang; #X obj 184 576 rectangle 2.8 1.4; #X obj 355 63 gemframebuffer; #X obj 326 532 translateXYZ 0 0 -4; #X obj 184 553 spigot; #X obj 326 575 sphere 4 50; #X obj 223 530 == 1; #X obj 39 553 translateXYZ 0 0 -7; #X obj 33 184 vradio 20 1 0 4 empty empty empty 0 -8 0 10 -257985 -1 -1 3; #X text 55 185 scene; #X text 55 204 equirectangular; #X text 55 224 mapped to sphere; #X obj 223 506 r \$0-show; #X obj 33 269 s \$0-show; #X obj 379 460 r \$0-show; #X obj 92 486 r \$0-show; #X obj 92 508 == 0; #X obj 39 531 spigot 1; #X obj 379 483 == 2; #X obj 326 508 spigot 0; #X obj 211 288 s \$0-sceneHead; #X obj 39 575 s \$0-sceneHead; #X msg 92 51 lighting \$1; #X obj 92 27 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1 ; #X text 28 88 1:Create window; #X obj 404 259 cnv 15 120 60 empty empty empty 20 12 0 14 -257985 -66577 0; #N canvas 801 163 632 578 draw_scene 0; #X obj 243 285 rotateXYZ; #X obj 402 84 f; #X obj 402 109 + 1; #X obj 402 61 metro 50; #X obj 63 314 cube 0.75; #X obj 63 283 rotateXYZ 45 0 0; #X obj 62 434 sphere 0.75 30; #X obj 63 179 separator; #X obj 243 181 separator; #X obj 62 346 separator; #X obj 242 348 separator; #X obj 63 255 translateXYZ 3 3 0; #X obj 243 243 translateXYZ 3 -3 0; #X obj 62 411 translateXYZ -3 3 0; #X obj 242 410 translateXYZ -3 -3 0; #X obj 243 316 cylinder 0.75; #X obj 242 436 cube 0.75; #X obj 402 315 / 180; #X obj 402 334 * 3.14159; #X obj 402 358 cos; #X obj 402 276 * 10; #X obj 390 414 f; #X obj 390 386 + 1; #X obj 418 387 * -1; #X obj 418 414 + 1; #X floatatom 320 341 5 0 0 0 - - -; #X obj 63 218 color 0.8 0.2 0.2; #X obj 243 218 color 0.2 0.8 0.2; #X obj 242 385 color 0.8 0.8 0.2; #X obj 62 385 color 0.2 0.2 0.8; #X obj 402 16 loadbang; #X obj 402 40 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1 1; #X floatatom 156 320 5 0 0 0 - - -; #X obj 185 34 inlet; #X obj 185 88 rotateXYZ 0 0 0; #X obj 488 187 separator; #X obj 488 211 color 0.2 0.8 0.8; #X msg 504 261 draw line; #X obj 185 112 t a a; #X obj 185 139 t a; #X obj 504 239 loadbang; #X obj 253 54 * 0.5; #X obj 402 133 mod 720; #X obj 488 295 sphere 6 20; #X msg 466 95 0; #X connect 0 0 15 0; #X connect 1 0 2 0; #X connect 2 0 42 0; #X connect 3 0 1 0; #X connect 5 0 4 0; #X connect 7 0 26 0; #X connect 8 0 27 0; #X connect 9 0 29 0; #X connect 10 0 28 0; #X connect 11 0 5 0; #X connect 12 0 0 0; #X connect 13 0 6 0; #X connect 14 0 16 0; #X connect 17 0 18 0; #X connect 18 0 19 0; #X connect 19 0 22 0; #X connect 19 0 23 0; #X connect 20 0 17 0; #X connect 21 0 14 3; #X connect 21 0 11 3; #X connect 22 0 21 0; #X connect 23 0 24 0; #X connect 24 0 13 3; #X connect 24 0 12 3; #X connect 25 0 15 1; #X connect 26 0 11 0; #X connect 27 0 12 0; #X connect 28 0 14 0; #X connect 29 0 13 0; #X connect 30 0 31 0; #X connect 31 0 3 0; #X connect 32 0 5 3; #X connect 33 0 34 0; #X connect 34 0 38 0; #X connect 35 0 36 0; #X connect 36 0 43 0; #X connect 37 0 43 0; #X connect 38 0 39 0; #X connect 38 1 35 0; #X connect 39 0 7 0; #X connect 39 0 9 0; #X connect 39 0 8 0; #X connect 39 0 10 0; #X connect 40 0 37 0; #X connect 41 0 34 1; #X connect 42 0 1 1; #X connect 42 0 0 3; #X connect 42 0 5 3; #X connect 42 0 0 2; #X connect 42 0 20 0; #X connect 42 0 34 3; #X connect 42 0 34 2; #X connect 42 0 41 0; #X connect 44 0 42 0; #X restore 409 294 pd draw_scene; #X obj 409 265 r \$0-sceneHead; #X text 30 165 Show:; #X obj 553 178 hsl 128 15 0 1 0 0 empty empty background_opacity -2 -8 0 10 -262144 -1 -1 0 1; #X msg 550 199 color 0 0.1 0.2 \$1; #X msg 225 199 dimen 512 512 \, format RGBA \, color 0 0.1 0.2 1; #X text 14 630 Antoine Rousseau nov 2015; #X text 316 64 See:; #X text 467 64 for more messages.; #X text 309 39 Renders a scene to faces of a GL cubemap texture.; #X msg 276 366 cubemaptosphere; #N canvas 624 251 360 553 shader 0; #X obj 72 166 glsl_vertex; #X obj 72 269 glsl_fragment; #X obj 72 449 glsl_program; #X obj 138 387 pack 0 0; #X obj 156 357 t b f; #X obj 156 300 change; #X obj 138 191 change; #X msg 138 409 link \$1 \$2; #X floatatom 156 324 2 0 0 0 ID - -; #X floatatom 138 214 2 0 0 0 ID - -; #X obj 120 60 tgl 15 0 \$0-shadOn-snd \$0-shadOn-rcv on/off 17 7 0 10 -262144 -1 -1 1 1; #X obj 21 59 inlet gemlist; #X obj 21 489 outlet gemlist; #X msg 87 139 open \$1.vert; #X msg 152 238 open \$1.frag; #X obj 120 14 loadbang; #X msg 120 36 1; #X obj 152 69 inlet loadShader; #X obj 229 408 inlet variables; #N canvas 85 80 450 300 demux 0; #X obj 52 33 inlet; #X obj 308 37 inlet select; #X obj 52 55 t a a; #X obj 52 148 outlet; #X obj 105 105 == 0; #X obj 52 126 spigot 1; #X obj 122 148 outlet; #X obj 175 105 == 1; #X obj 122 126 spigot 0; #X obj 308 59 t f f; #X connect 0 0 2 0; #X connect 1 0 9 0; #X connect 2 0 5 0; #X connect 2 1 8 0; #X connect 4 0 5 1; #X connect 5 0 3 0; #X connect 7 0 8 1; #X connect 8 0 6 0; #X connect 9 0 4 0; #X connect 9 1 7 0; #X restore 21 108 pd demux; #X obj 152 91 symbol; #X obj 152 113 t s s; #X connect 0 0 1 0; #X connect 0 1 6 0; #X connect 1 0 2 0; #X connect 1 1 5 0; #X connect 2 0 12 0; #X connect 3 0 7 0; #X connect 4 0 3 0; #X connect 4 1 3 1; #X connect 5 0 8 0; #X connect 6 0 9 0; #X connect 7 0 2 0; #X connect 8 0 4 0; #X connect 9 0 3 0; #X connect 10 0 19 1; #X connect 11 0 19 0; #X connect 13 0 0 0; #X connect 14 0 1 0; #X connect 15 0 16 0; #X connect 16 0 10 0; #X connect 17 0 20 0; #X connect 18 0 2 0; #X connect 19 0 12 0; #X connect 19 1 0 0; #X connect 20 0 21 0; #X connect 21 0 13 0; #X connect 21 1 14 0; #X restore 493 429 pd shader; #X obj 575 364 loadbang; #X obj 493 385 spigot; #X obj 532 338 r \$0-show; #X msg 575 387 cubemaptocube; #X obj 532 362 == 3; #X obj 493 542 accumrotate; #X obj 493 489 t a b; #X obj 520 521 0.5; #X obj 551 520 0.7; #X obj 493 462 translateXYZ 0 0 -4; #X obj 686 677 separator; #X obj 493 578 cube 3; #X msg 623 423 3; #X msg 587 424 -4; #X msg 456 498 3; #X msg 420 499 -4; #X obj 184 46 gemhead; #X text 55 245 mapped to cube; #X obj 608 8 declare -lib Gem; #X connect 6 0 7 0; #X connect 7 0 6 0; #X connect 9 0 74 0; #X connect 10 0 15 0; #X connect 11 0 13 0; #X connect 11 1 12 1; #X connect 12 0 40 0; #X connect 13 0 12 0; #X connect 13 1 17 1; #X connect 14 0 51 0; #X connect 15 0 18 0; #X connect 15 1 19 0; #X connect 16 0 24 0; #X connect 16 0 39 0; #X connect 17 0 16 0; #X connect 17 0 59 0; #X connect 18 0 17 0; #X connect 18 0 37 0; #X connect 19 0 11 0; #X connect 20 0 56 0; #X connect 23 0 25 0; #X connect 24 0 21 0; #X connect 26 0 24 1; #X connect 27 0 41 0; #X connect 28 0 33 0; #X connect 32 0 26 0; #X connect 34 0 38 0; #X connect 35 0 36 0; #X connect 36 0 37 1; #X connect 37 0 27 0; #X connect 38 0 39 1; #X connect 39 0 23 0; #X connect 42 0 6 1; #X connect 43 0 42 0; #X connect 47 0 46 0; #X connect 49 0 50 0; #X connect 50 0 13 0; #X connect 51 0 13 0; #X connect 56 0 16 1; #X connect 57 0 67 0; #X connect 58 0 61 0; #X connect 59 0 57 0; #X connect 60 0 62 0; #X connect 61 0 57 1; #X connect 62 0 59 1; #X connect 63 0 69 0; #X connect 64 0 63 0; #X connect 64 1 65 0; #X connect 64 1 66 0; #X connect 65 0 63 1; #X connect 66 0 63 2; #X connect 67 0 64 0; #X connect 70 0 67 3; #X connect 71 0 67 3; #X connect 72 0 23 3; #X connect 73 0 23 3; #X connect 74 0 10 0;