#N canvas 961 309 728 710 10; #X declare -path . -path .. -path data -path ../data -path ev-in -path ../ev-in -path ev-main -path ../ev-main -path ev-pano -path ../ev-pano -path ev-pro -path ../ev-pro -path libs/gil -path ../libs/gil -path libs/kollabs -path ../libs/kollabs -path media -path ../media -path ev-glsl -path ../ev-glsl; #X obj 8 218 cnv 15 300 310 empty empty OUTPUT_MODULES 20 12 0 14 -204800 -66577 0; #X obj 7 13 cnv 15 300 130 empty empty FRAMEBUFFER 20 12 0 14 -262130 -66577 0; #X obj 313 13 cnv 15 160 50 empty empty INITIALISATIONS 20 12 0 14 -261234 -66577 0; #N canvas 396 134 535 539 init 0; #X obj 56 92 loadbang; #X obj 44 -23 cnv 15 400 100 empty empty IMPORTANT 20 12 0 14 -261234 -66577 0; #X text 49 -3 Such a declare object should always be in the main patch of your project \, to set the pathes to the abstractions.; #X text 159 160 load the preset file on startup:; #X obj 56 134 t b b; #X obj 83 158 del 1000; #X obj 56 221 del 3000; #X text 127 93 The DATA STORAGE SYSTEM will be explained in a later example.; #X obj 158 43 ev-main/ev_declare; #X text 177 213 (pathes relative to "./libs/kollabs"); #X obj 34 94 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X msg 56 285 \; /0/ds/scene 0; #X text 66 262 Recall scene '0' from the loaded preset file; #X msg 83 180 \; /0/ds/loadfile ../../uki; #X connect 0 0 4 0; #X connect 4 0 6 0; #X connect 4 1 5 0; #X connect 5 0 13 0; #X connect 6 0 11 0; #X connect 10 0 4 0; #X restore 409 39 pd init; #X text 330 37 look inside:; #X obj 20 246 gemhead 50; #X obj 20 35 gemhead 20; #X obj 20 55 ev_buf 0; #X obj 318 178 cnv 15 400 350 empty empty empty 20 12 0 14 -261682 -66577 0; #X obj 327 223 ev_gemwin; #X text 546 197 click "create" to start; #X obj 347 330 ev_storage; #X obj 283 274 t a; #X obj 283 333 t a; #X obj 283 394 t a; #X text 345 477 Presets are located in the "./data" folder. This example uses scene "0" of "ev_example_panoramic_preset.txt".; #N canvas 664 190 612 832 pano 0; #X obj 12 201 ev_grid 0; #X obj 7 31 inlet; #X obj 105 710 pix_gain; #X msg 188 709 1 1 \$1; #X floatatom 221 702 5 0 0 0 - - -, f 5; #X obj 11 145 t a a a; #X obj 174 122 rotateXYZ 0 0 90; #X obj 495 167 translateXYZ; #X floatatom 471 124 5 0 0 0 - - -, f 5; #X obj 492 263 circle 0.5 100; #X floatatom 423 111 5 0 0 0 - - -, f 5; #X obj 234 220 part_head; #X obj 234 274 part_color; #X text 335 312 set the size; #X obj 396 199 loadbang; #X obj 234 724 part_killold 35; #X obj 234 312 part_size 0.8; #X obj 234 455 part_gravity 0.07 0 0; #X obj 234 599 part_color; #X obj 287 521 loadbang; #X msg 311 559 0.4 0.4 0.4; #X msg 263 558 1 0 0; #X obj 234 415 part_source 5; #X obj 234 635 part_source 5; #X obj 234 675 part_gravity -0.01 -0.02 0; #X obj 234 490 part_velocity sphere 0 0.2 0 0.05; #X msg 360 234 0.4 0.4 0.4; #X msg 459 234 0 1 0; #X obj 234 358 part_velocity sphere -0.2 0 0 0.1; #X obj 411 557 metro 1000; #N canvas 0 50 450 300 tripleRand 0; #X obj 94 71 inlet; #X obj 94 252 outlet; #X obj 94 221 pack 0 0 0; #X obj 94 104 t b b b; #X obj 94 134 random 1000; #X obj 94 154 / 1000; #X obj 94 175 * 0.1; #X obj 194 134 random 1000; #X obj 194 154 / 1000; #X obj 294 134 random 1000; #X obj 294 154 / 1000; #X obj 194 175 * 0.2; #X obj 294 175 * 0; #X connect 0 0 3 0; #X connect 2 0 1 0; #X connect 3 0 4 0; #X connect 3 1 7 0; #X connect 3 2 9 0; #X connect 4 0 5 0; #X connect 5 0 6 0; #X connect 6 0 2 0; #X connect 7 0 8 0; #X connect 8 0 11 0; #X connect 9 0 10 0; #X connect 10 0 12 0; #X connect 11 0 2 1; #X connect 12 0 2 2; #X restore 411 591 pd tripleRand (0.1 0.2 0); #N canvas 0 50 450 300 v* 0; #X obj 90 62 unpack 0 0 0; #X obj 90 42 inlet; #X obj 90 137 pack 0 0 0; #X obj 90 156 outlet; #X obj 90 90 * -1; #X obj 127 110 * -1; #X obj 165 90 * -1; #X connect 0 0 4 0; #X connect 0 1 5 0; #X connect 0 2 6 0; #X connect 1 0 0 0; #X connect 2 0 3 0; #X connect 4 0 2 0; #X connect 5 0 2 1; #X connect 6 0 2 2; #X restore 411 621 pd v* (-1); #N canvas 0 50 450 300 tripleLine 0; #X obj 94 71 inlet; #X obj 94 252 outlet; #X obj 94 104 unpack 0 0 0; #X obj 94 221 pack 0 0 0; #X obj 94 176 line; #X msg 94 153 \$1 1000; #X obj 164 176 line; #X msg 164 153 \$1 1000; #X obj 234 176 line; #X msg 234 153 \$1 1000; #X connect 0 0 2 0; #X connect 2 0 5 0; #X connect 2 1 7 0; #X connect 2 2 9 0; #X connect 3 0 1 0; #X connect 4 0 3 0; #X connect 5 0 4 0; #X connect 6 0 3 1; #X connect 7 0 6 0; #X connect 8 0 3 2; #X connect 9 0 8 0; #X restore 411 643 pd tripleLine (1000); #X obj 411 530 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 234 758 part_render; #X obj 394 795 circle 0.5 100; #X obj 399 774 scaleXYZ 1 0.14 1; #X obj 495 232 rotateXYZ 0 0 0; #X connect 1 0 5 0; #X connect 3 0 2 1; #X connect 4 0 3 0; #X connect 5 1 0 0; #X connect 5 2 7 0; #X connect 7 0 37 0; #X connect 8 0 7 2; #X connect 10 0 7 1; #X connect 11 0 12 0; #X connect 12 0 16 0; #X connect 14 0 27 0; #X connect 14 0 26 0; #X connect 15 0 34 0; #X connect 16 0 28 0; #X connect 17 0 25 0; #X connect 18 0 23 0; #X connect 19 0 20 0; #X connect 19 0 21 0; #X connect 20 0 18 2; #X connect 21 0 18 1; #X connect 22 0 17 0; #X connect 23 0 24 0; #X connect 24 0 15 0; #X connect 25 0 18 0; #X connect 26 0 12 1; #X connect 27 0 12 2; #X connect 28 0 22 0; #X connect 29 0 30 0; #X connect 30 0 31 0; #X connect 31 0 32 0; #X connect 32 0 24 1; #X connect 33 0 29 0; #X connect 34 0 36 0; #X connect 36 0 35 0; #X connect 37 0 9 0; #X restore 196 171 pd pano; #X obj 20 269 t a a a a; #X obj 283 454 t a; #X msg 206 34 color \$1 \$1 \$1; #X obj 206 15 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 560 359 tgl 15 0 /ev/mouse/select_radius empty mouseover 17 7 0 10 -262144 -1 -1 0 0.05; #X msg 328 194 color \$1 \$1 \$1; #X obj 331 173 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 37 411 ev_pro_22 l; #X obj 20 471 ev_pro_22 b; #X obj 54 350 ev_pro_22 c; #X obj 71 291 ev_pro_22 r; #N canvas 459 391 450 300 snap 0; #X obj 103 58 t a b; #X msg 135 79 snap; #X obj 103 127 t a b; #X msg 317 132 1; #X obj 107 233 pix_share_write b 2048 4096 Grey; #X obj 144 38 inlet; #X obj 109 182 pix_grey; #X obj 103 103 pix_snap 0 0 1024 2048; #X connect 0 0 7 0; #X connect 0 1 1 0; #X connect 1 0 7 0; #X connect 2 0 6 0; #X connect 2 1 3 0; #X connect 5 0 0 0; #X connect 6 0 4 0; #X connect 7 0 2 0; #X restore 20 196 pd snap; #N canvas 1068 257 423 293 uki 0; #N canvas 59 328 960 699 bloodcells 0; #X obj 32 -4 gemhead; #X obj 317 64 r boidParam; #X obj 92 102 spigot; #X obj 92 220 translateXYZ 0 0 0; #X obj 77 350 s bloodcell-render; #X obj 92 127 separator; #X obj 317 115 s bloodcell-pos; #N canvas 1455 388 450 300 bloodcell-pool 0; #X obj 20 20 bloodcell 0; #X obj 20 20 bloodcell 1; #X obj 20 20 bloodcell 2; #X obj 20 20 bloodcell 3; #X obj 20 20 bloodcell 4; #X obj 20 20 bloodcell 5; #X obj 20 20 bloodcell 6; #X obj 20 20 bloodcell 7; #X obj 20 20 bloodcell 8; #X obj 20 20 bloodcell 9; #X obj 20 20 bloodcell 10; #X obj 20 20 bloodcell 11; #X obj 20 20 bloodcell 12; #X obj 20 20 bloodcell 13; #X obj 20 20 bloodcell 14; #X obj 20 20 bloodcell 15; #X obj 20 20 bloodcell 16; #X obj 20 20 bloodcell 17; #X obj 20 20 bloodcell 18; #X obj 20 20 bloodcell 19; #X obj 20 20 bloodcell 20; #X obj 20 20 bloodcell 21; #X obj 20 20 bloodcell 22; #X obj 20 20 bloodcell 23; #X obj 20 20 bloodcell 24; #X obj 20 20 bloodcell 25; #X obj 20 20 bloodcell 26; #X obj 20 20 bloodcell 27; #X obj 20 20 bloodcell 28; #X obj 20 20 bloodcell 29; #X obj 20 20 bloodcell 30; #X obj 20 20 bloodcell 31; #X obj 20 20 bloodcell 32; #X obj 20 20 bloodcell 33; #X obj 20 20 bloodcell 34; #X obj 20 20 bloodcell 35; #X obj 20 20 bloodcell 36; #X obj 20 20 bloodcell 37; #X obj 20 20 bloodcell 38; #X obj 20 20 bloodcell 39; #X obj 20 20 bloodcell 40; #X obj 20 20 bloodcell 41; #X obj 20 20 bloodcell 42; #X obj 20 20 bloodcell 43; #X obj 20 20 bloodcell 44; #X obj 20 20 bloodcell 45; #X obj 20 20 bloodcell 46; #X obj 20 20 bloodcell 47; #X obj 20 20 bloodcell 48; #X obj 20 20 bloodcell 49; #X obj 20 20 bloodcell 50; #X obj 20 20 bloodcell 51; #X obj 20 20 bloodcell 52; #X obj 20 20 bloodcell 53; #X obj 20 20 bloodcell 54; #X obj 20 20 bloodcell 55; #X obj 20 20 bloodcell 56; #X obj 20 20 bloodcell 57; #X obj 20 20 bloodcell 58; #X obj 20 20 bloodcell 59; #X obj 20 20 bloodcell 60; #X obj 20 20 bloodcell 61; #X obj 20 20 bloodcell 62; #X obj 20 20 bloodcell 63; #X obj 20 20 bloodcell 64; #X obj 20 20 bloodcell 65; #X obj 20 20 bloodcell 66; #X obj 20 20 bloodcell 67; #X obj 20 20 bloodcell 68; #X obj 20 20 bloodcell 69; #X obj 20 20 bloodcell 70; #X obj 20 20 bloodcell 71; #X obj 20 20 bloodcell 72; #X obj 20 20 bloodcell 73; #X obj 20 20 bloodcell 74; #X obj 20 20 bloodcell 75; #X obj 20 20 bloodcell 76; #X obj 20 20 bloodcell 77; #X obj 20 20 bloodcell 78; #X obj 20 20 bloodcell 79; #X restore 537 100 pd bloodcell-pool; #X msg 469 274 \; pd-bloodcell-pool obj 20 20 bloodcell \$1; #X obj 469 219 until 40; #X obj 469 147 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X obj 127 158 r boidParam; #X obj 128 179 route attractpt; #X obj 129 200 unpack f f f; #X obj 138 99 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 92 251 triangle 0.1; #N canvas 1310 137 561 869 boids-help 0; #X msg 47 -33 dump; #X msg 51 78 neighbors \$1; #X floatatom 51 63 5 0 4 0 - neighbors -, f 5; #X floatatom 51 98 5 0 0 0 - maxspeed -, f 5; #X msg 51 113 maxspeed \$1; #X floatatom 51 133 5 0 0 0 - minspeed -, f 5; #X msg 51 148 minspeed \$1; #X floatatom 51 168 5 0 0 0 - center -, f 5; #X msg 51 183 center \$1; #X floatatom 51 203 5 0 0 0 - attract -, f 5; #X msg 51 218 attract \$1; #X floatatom 51 238 5 0 0 0 - match -, f 5; #X msg 51 253 match \$1; #X floatatom 51 273 5 0 0 0 - avoid -, f 5; #X msg 51 288 avoid \$1; #X floatatom 51 308 5 0 0 0 - repel -, f 5; #X msg 51 323 repel \$1; #X floatatom 51 343 5 0 0 0 - edgedist -, f 5; #X msg 51 358 edgedist \$1; #X floatatom 51 378 5 0 0 0 - speed -, f 5; #X msg 51 393 speed \$1; #X floatatom 51 413 5 0 0 0 - inertia -, f 5; #X msg 51 428 inertia \$1; #X floatatom 51 448 5 0 0 0 - accel -, f 5; #X msg 51 463 accel \$1; #X floatatom 51 483 5 0 0 0 - prefdist -, f 5; #X msg 51 498 prefdist \$1; #X msg 47 -14 reset; #X text 142 113 maximum speed of speed range; #X text 144 147 minimum speed of speed range; #X text 141 182 strength of centering instinct; #X text 143 393 overall speed; #X text 144 464 speed of acceleration; #X text 144 495 preferred distance from neighbors; #X floatatom 52 521 5 0 0 0 - flyrect[0] -, f 5; #X floatatom 91 521 5 0 0 0 - flyrect[1] -, f 5; #X floatatom 130 521 5 0 0 0 - flyrect[2] -, f 5; #X floatatom 169 521 5 0 0 0 - - -, f 5; #X floatatom 51 580 5 0 0 0 - - -, f 5; #X floatatom 91 580 5 0 0 0 - - -, f 5; #X floatatom 51 28 5 0 0 0 - - -, f 5; #X msg 51 43 number \$1; #X text 142 41 number of boids; #X floatatom 47 -67 5 0 0 0 - - -, f 5; #X msg 47 -52 mode \$1; #X text 111 -52 output mode; #X obj 45 688 s boidParam; #X obj 47 7 s boidParam; #X text 111 -33 parameter dump; #X text 110 -13 reset boids randomly inside flyrect; #X text 142 76 number of neighbors each boid consults when flocking ; #X text 141 253 strength of neighbor speed matching instinct; #X text 141 288 strength of neighbor avoidance instinct; #X text 141 320 strength of wall avoidance instinct; #X text 143 356 distance of vision for avoiding wall edges; #X text 144 427 willingness to change speed and direction; #X text 140 216 strength of attraction to 'attractpt'; #X msg 51 557 flyrect \$1 \$2 \$3 \$4 \$5 \$6; #X text 177 540 bounding box (walls) in which to fly (l/t/r/b/f/b) ; #X text 174 579 point to which boids are attracted (x/y/z); #X obj 51 539 pack 0 0 0 0 0 0; #X floatatom 208 521 5 0 0 0 - - -, f 5; #X floatatom 247 521 5 0 0 0 - - -, f 5; #X msg 45 664 attractpt \$1 \$2 \$3; #X obj 45 644 pack 0 0 0; #X floatatom 130 580 5 0 0 0 - - -, f 5; #X obj 83 608 t b f; #X obj 352 663 gemhead; #X obj 352 685 alpha; #X obj 352 729 scale; #X obj 352 751 cube; #X obj 352 707 color 1 0 0 0.5; #X connect 0 0 47 0; #X connect 1 0 46 0; #X connect 2 0 1 0; #X connect 3 0 4 0; #X connect 4 0 46 0; #X connect 5 0 6 0; #X connect 6 0 46 0; #X connect 7 0 8 0; #X connect 8 0 46 0; #X connect 9 0 10 0; #X connect 10 0 46 0; #X connect 11 0 12 0; #X connect 12 0 46 0; #X connect 13 0 14 0; #X connect 14 0 46 0; #X connect 15 0 16 0; #X connect 16 0 46 0; #X connect 17 0 18 0; #X connect 18 0 46 0; #X connect 19 0 20 0; #X connect 20 0 46 0; #X connect 21 0 22 0; #X connect 22 0 46 0; #X connect 23 0 24 0; #X connect 24 0 46 0; #X connect 25 0 26 0; #X connect 26 0 46 0; #X connect 27 0 47 0; #X connect 34 0 60 0; #X connect 35 0 60 1; #X connect 36 0 60 2; #X connect 37 0 60 3; #X connect 38 0 64 0; #X connect 39 0 66 0; #X connect 40 0 41 0; #X connect 41 0 46 0; #X connect 43 0 44 0; #X connect 44 0 47 0; #X connect 57 0 46 0; #X connect 60 0 57 0; #X connect 61 0 60 4; #X connect 62 0 60 5; #X connect 63 0 46 0; #X connect 64 0 63 0; #X connect 65 0 64 2; #X connect 66 0 64 0; #X connect 66 1 64 1; #X connect 67 0 68 0; #X connect 68 0 71 0; #X connect 69 0 70 0; #X connect 71 0 69 0; #X restore 317 42 pd boids-help; #X msg 547 219 \; pd-bloodcell-pool clear; #X obj 30 -29 inlet; #N canvas 770 182 178 480 init 0; #X obj 34 21 loadbang; #X obj 94 21 r reset; #X msg 15 78 \; neighbors 4; #X msg 15 168 \; center 1; #X msg 15 228 \; match 1; #X msg 15 318 \; edgedist 1; #X msg 15 348 \; speed 3; #X obj 16 49 b; #X obj 17 21 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X msg 15 258 \; avoid 2; #X msg 15 288 \; repel 2; #X msg 15 378 \; inertia 8; #X msg 15 138 \; minspeed 1; #X msg 15 108 \; maxspeed 3; #X msg 15 198 \; attract 3; #X msg 15 408 \; accel 2; #X msg 15 438 \; prefdist 1.5; #X connect 0 0 7 0; #X connect 1 0 7 0; #X connect 7 0 2 0; #X connect 7 0 13 0; #X connect 7 0 12 0; #X connect 7 0 3 0; #X connect 7 0 14 0; #X connect 7 0 4 0; #X connect 7 0 9 0; #X connect 7 0 10 0; #X connect 7 0 6 0; #X connect 7 0 11 0; #X connect 7 0 15 0; #X connect 7 0 16 0; #X connect 8 0 7 0; #X restore 316 17 pd init; #X obj 105 -35 loadbang; #X msg 103 -16 0; #N canvas 659 248 534 416 boids_uki 0; #X obj 35 -17 r /bloodcells; #X obj 37 4 pipe 20; #X obj 39 28 route 0 1 2; #X msg 89 62 \; boidParam neighbors 1 \, minspeed 1 \, maxspeed 1.5 \, center 10 \, attract 10 \, match 1 \, avoid 0 \, repel 0 \, edgedist 1 \, speed 10 \, inertia 5 \, accel 4 \, prefdist 1.5 \, flyrect -2 13 2 -13 2 -2 \, attractpt 0 -16 0; #X msg 72 149 \; boidParam neighbors 1 \, minspeed 1 \, maxspeed 1.5 \, center 0 \, attract 0 \, match 1 \, avoid 3 \, repel 0 \, edgedist 1 \, speed 10 \, inertia 5 \, accel 10 \, prefdist 1.5 \, flyrect -2 13 2 -13 2 -2 \, attractpt 0 0 0; #X msg 47 274 \; boidParam neighbors 1 \, minspeed 1 \, maxspeed 1.5 \, center 0.1 \, attract 1.2 \, match 0.5 \, avoid 0.73 \, repel 3 \, edgedist 1 \, speed 1.24 \, inertia 5 \, accel 0.97 \, prefdist 1.5 \, flyrect -2 20 2 -10 2 -2 \, attractpt 0 0 0; #X connect 0 0 1 0; #X connect 1 0 2 0; #X connect 2 0 5 0; #X connect 2 1 4 0; #X connect 2 2 3 0; #X restore 429 30 pd boids_uki; #X obj 284 384 line; #X obj 287 212 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1 1; #X msg 383 246 0; #X msg 404 64 reset; #X msg 447 67 dump; #X obj 432 116 print; #X msg 279 423 \; boidParam attractpt 0 \$1 0; #X obj 32 72 t a a a a a b; #X obj 77 307 separator; #X obj 383 478 translateXYZ 0 6 0; #X obj 317 89 boids/boids3d 80 0; #X msg 469 188 80; #X obj 310 155 r /bloodcells; #X msg 309 197 1; #X obj 309 175 route 0; #X msg 377 216 0; #X obj 349 196 t b b; #X floatatom 213 465 5 0 0 0 - - -, f 5; #X obj 221 206 print; #X obj 28 28 colorRGB; #X obj 293 274 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 293 294 route 1 0; #X obj 382 297 alternate; #X obj 469 248 cyclone/counter; #X floatatom 213 144 5 0 0 0 - - -, f 5; #X floatatom 180 309 5 0 0 0 - - -, f 5; #X obj 99 329 translateXYZ 0 -15 0; #X obj 297 250 metro 30000; #X msg 291 346 50 20000; #X msg 339 367 -50 20000; #X obj 469 166 t b b b; #X obj 563 163 s /bloodcell-init; #X connect 0 0 42 0; #X connect 1 0 33 0; #X connect 2 0 5 0; #X connect 3 0 15 0; #X connect 5 0 3 0; #X connect 9 0 46 0; #X connect 10 0 53 0; #X connect 11 0 12 0; #X connect 12 0 13 0; #X connect 13 0 3 1; #X connect 13 1 3 2; #X connect 13 2 3 3; #X connect 14 0 2 1; #X connect 18 0 0 0; #X connect 20 0 21 0; #X connect 21 0 0 0; #X connect 23 0 29 0; #X connect 23 0 40 0; #X connect 24 0 50 0; #X connect 25 0 23 0; #X connect 26 0 33 0; #X connect 27 0 33 0; #X connect 30 3 31 0; #X connect 30 4 2 0; #X connect 30 5 33 0; #X connect 31 0 49 0; #X connect 33 0 6 0; #X connect 33 1 28 0; #X connect 34 0 9 0; #X connect 35 0 37 0; #X connect 36 0 50 0; #X connect 37 0 36 0; #X connect 37 1 39 0; #X connect 38 0 50 0; #X connect 39 0 25 0; #X connect 39 1 38 0; #X connect 42 0 30 0; #X connect 43 0 44 0; #X connect 44 0 51 0; #X connect 44 1 52 0; #X connect 46 0 8 0; #X connect 48 0 49 2; #X connect 49 0 4 0; #X connect 50 0 43 0; #X connect 51 0 23 0; #X connect 52 0 23 0; #X connect 53 0 54 0; #X connect 53 1 34 0; #X connect 53 2 17 0; #X connect 53 2 46 2; #X restore 43 80 pd bloodcells; #X obj 194 83 world_light; #X obj 194 62 gemhead; #N canvas 1121 402 744 634 players 0; #N canvas 1262 901 267 135 players-pool 0; #X obj 20 20 player 1 7; #X obj 20 20 player 2 7; #X obj 20 20 player 3 7; #X obj 20 20 player 4 7; #X obj 20 20 player 5 7; #X obj 20 20 player 6 7; #X obj 20 20 player 7 7; #X restore 552 31 pd players-pool; #X msg 470 122 \; pd-players-pool clear; #X obj 413 120 until 6; #X obj 422 296 gemhead; #X obj 422 390 pix_texture; #X obj 485 409 s /player/circle/texid; #X obj 43 74 gemhead; #X obj 43 117 gemframebuffer; #X obj 43 331 s /player/framebuffer; #X obj 43 310 t b; #X obj 60 487 gemhead; #X obj 61 544 pix_texture; #X obj 61 564 square 4; #X obj 43 143 translateXYZ 0 0 -4; #X floatatom 171 170 5 0 0 0 - - -, f 5; #X obj 61 506 alpha; #X msg 100 96 dimen 1000 1000 \, format RGBA; #X obj 413 166 + 1; #X obj 46 49 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1 ; #X msg 370 30 6; #X obj 413 187 pack f f; #X obj 43 95 alpha; #X floatatom 443 76 5 0 0 0 - - -, f 5; #X obj 413 31 r /game/players; #X msg 440 229 \; pd-players-pool obj 20 20 player \$1 \$2; #X obj 413 98 t f b f b f; #X obj 422 346 pix_image ./media/circle_6.png; #X msg 476 316 open ./media/circle_\$1.png; #X obj 422 321 alpha; #X obj 453 368 pix_coloralpha; #X floatatom 215 174 5 0 0 0 - - -, f 5; #X floatatom 116 295 5 0 0 0 - - -, f 5; #X obj 60 367 inlet; #X obj 75 428 loadbang; #X msg 75 447 0; #X floatatom 135 493 5 0 0 0 - - -, f 5; #X obj 267 434 gemhead; #X obj 268 565 square 4; #X obj 268 453 alpha; #X floatatom 343 453 5 0 0 0 - - -, f 5; #X obj 60 388 t b b; #X obj 61 524 translateXYZ 0 24 0; #X obj 100 74 loadbang; #X text 166 59 construction framebuffer; #X text 201 74 players; #X text 85 586 affichage gauche; #X text 284 588 affichage droite; #X text 490 295 choix image cercle / nbre players; #X obj 481 62 hradio 15 1 0 8 empty empty empty 0 -8 0 10 -262144 -1 -1 4; #X obj 482 81 + 2; #X obj 60 265 s /player/framebuffer/rot/x; #X obj 43 221 gemlist_info; #X obj 60 244 unpack f f f; #X obj 268 544 pix_texture; #X floatatom 189 115 5 0 0 0 - - -, f 5; #X obj 43 162 translateXYZ 0 1 -5; #X floatatom 279 176 5 0 0 0 - - -, f 5; #X obj 413 144 cyclone/counter; #X obj 413 209 t b a; #X obj 386 265 s /player/initbang; #X floatatom 426 64 5 0 0 0 - - -, f 5; #X obj 43 290 scale 1.06; #X obj 43 198 rotateXYZ -20.8 0 0; #X obj 268 495 rotateXYZ; #X floatatom 340 503 5 0 0 0 - - -, f 5; #X obj 268 524 scaleXYZ -1 -3 1; #X obj 268 473 translateXYZ 0 -14 0; #X connect 2 0 57 0; #X connect 3 0 28 0; #X connect 4 1 5 0; #X connect 6 0 21 0; #X connect 7 0 13 0; #X connect 7 1 11 1; #X connect 7 1 53 1; #X connect 9 0 8 0; #X connect 10 0 15 0; #X connect 11 0 12 0; #X connect 13 0 55 0; #X connect 14 0 62 1; #X connect 15 0 41 0; #X connect 16 0 7 0; #X connect 17 0 20 0; #X connect 18 0 6 0; #X connect 19 0 25 0; #X connect 20 0 58 0; #X connect 21 0 7 0; #X connect 22 0 25 0; #X connect 23 0 25 0; #X connect 23 0 60 0; #X connect 25 0 2 0; #X connect 25 1 57 2; #X connect 25 2 20 1; #X connect 25 3 1 0; #X connect 25 4 27 0; #X connect 26 0 4 0; #X connect 27 0 26 0; #X connect 28 0 26 0; #X connect 30 0 62 2; #X connect 31 0 61 1; #X connect 32 0 40 0; #X connect 33 0 34 0; #X connect 34 0 10 0; #X connect 34 0 36 0; #X connect 35 0 41 2; #X connect 36 0 38 0; #X connect 38 0 66 0; #X connect 39 0 66 2; #X connect 40 1 36 0; #X connect 41 0 11 0; #X connect 42 0 16 0; #X connect 48 0 49 0; #X connect 49 0 25 0; #X connect 51 0 61 0; #X connect 51 1 52 0; #X connect 52 0 50 0; #X connect 53 0 37 0; #X connect 54 0 55 2; #X connect 55 0 62 0; #X connect 56 0 62 3; #X connect 57 0 17 0; #X connect 58 0 59 0; #X connect 58 1 24 0; #X connect 61 0 9 0; #X connect 62 0 51 0; #X connect 63 0 65 0; #X connect 64 0 63 1; #X connect 65 0 53 0; #X connect 66 0 63 0; #X restore 24 117 pd players; #X obj 24 9 inlet; #X obj 292 40 world_light; #X obj 292 19 gemhead; #X obj 243 62 world_light; #X obj 243 41 gemhead; #X obj 24 32 t b b b; #N canvas 120 444 1722 537 game_events 0; #X obj -14 85 gemhead; #X obj -13 195 pix_texture; #X obj -13 335 square 4; #X obj -13 104 alpha; #X obj -14 -35 inlet; #X floatatom 61 91 5 0 0 0 - - -, f 5; #X obj 193 62 gemhead; #X obj 194 335 square 4; #X obj 194 81 alpha; #X floatatom 269 81 5 0 0 0 - - -, f 5; #X obj 194 194 pix_texture; #X floatatom 114 417 5 0 0 0 - - -, f 5; #X text 244 -19 sur-affichage score; #X obj 488 -5; #X obj 437 61 gemhead; #X obj 438 80 alpha; #X obj 438 264 model ./media/BloodCell_MODEL_0810.obj; #X obj 438 244 color 1 0 0; #X obj 438 213 scale; #X obj 549 -3 r /game/end; #X obj 549 18 route 0 1; #X obj 646 -3 r /game/start; #X msg 646 23 0; #X obj 697 57 gemhead; #X obj 698 76 alpha; #X obj 698 260 model ./media/BloodCell_MODEL_0810.obj; #X obj 698 240 color 1 0 0; #X obj 698 219 scale; #X obj 698 186 scaleXYZ 1 0.08 1; #X obj 698 164 rotateXYZ 90 0 0; #X obj 698 98 translateXYZ 0 24.6 0; #X obj 13 39 loadbang; #X obj 13 21 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X msg 13 60 0; #X obj 574 62 line; #X msg 574 39 0.7 3000; #X obj -14 -14 t b b b b b b; #X obj 993 67 gemhead; #X obj 994 86 alpha; #X obj 1107 -17 loadbang; #X obj 1107 -35 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X msg 1107 4 0; #X obj 1182 255 loadbang; #X obj 1241 223 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X obj 1169 79 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 1166 170 random 2; #X obj 1418 87 gemhead; #X obj 1419 106 alpha; #X obj 1419 154 rotateXYZ 0 0 0; #X obj 1419 389 text3d; #X floatatom 1585 127 5 0 0 0 - - -, f 5; #X obj 1166 146 metro 40; #X floatatom 1283 92 5 0 0 0 - - -, f 5; #X obj 1268 162 random 100; #X obj 1282 190 / 1000; #X obj 1282 221 + 0.02; #X obj 1183 121 line; #X obj 1181 99 pack 0 100; #X obj 1259 -33 r /game/level_sync; #X obj 1259 -13 t b f b; #X obj 1259 40 delay; #X msg 1259 17 5000; #X msg 1298 16 1; #X msg 1256 62 0; #X obj 1418 242 text3d; #X obj 1417 291 translateXYZ 0 0.3 0; #X obj 992 529 text3d; #X obj 991 322 text3d; #X obj 992 234 rotateXYZ 0 0 180; #X msg 1182 280 font media/FreeSansBold.ttf \, justify center base ; #X obj -13 166 pix_image ./media/game_over.png; #X obj 194 166 pix_image ./media/game_over.png; #X obj -13 125 translateXYZ 0 24 0.1; #X obj -13 308 colorRGB 1 1 1 0; #X obj 194 308 colorRGB 1 1 1 0; #X obj 1419 186 colorRGB 1 0 0 0; #X obj 1419 326 colorRGB 0 1 0 0; #X obj 77 195 r /game/end; #X obj 77 216 route 0 1; #X obj 173 215 r /game/start; #X msg 173 241 0; #X obj 101 280 line; #X msg 101 257 1 3000; #X obj 1419 356 scaleXYZ -0.1 0.1 1; #X obj 1419 128 translateXYZ -0 24.3 0; #X obj 1380 -16 r /game/start; #X msg 1368 28 0; #X obj 1374 6 pipe 15; #X obj 44 255 delay; #X msg 43 233 5000; #X msg 41 274 0 3000; #X floatatom 561 122 5 0 0 0 - - -, f 5; #X obj 638 89 delay; #X msg 637 67 5000; #X msg 635 108 0 3000; #X obj 1211 341 r /game/score; #X msg 1211 407 text \$1; #X obj 1211 367 - 11; #X obj 1166 192 list-abs/last-x 25; #X obj 194 124 scaleXYZ -1 -3 1; #X obj 194 103 translateXYZ 0 -15 0.1; #X obj 438 190 scaleXYZ 1 1 1; #X obj 438 102 translateXYZ 0 -16 0; #X obj 438 158 rotateXYZ 70 0 0; #X obj 903 312 print; #X obj 1166 213 list prepend text; #X obj 1166 235 list trim; #X msg 1230 469 text test; #X obj 994 198 translateXYZ 0 -16 0; #X obj 992 288 scaleXYZ 0.3 1 1; #X msg 921 283 text 2; #X floatatom 1043 343 5 0 0 0 - - -, f 5; #X msg 1125 514 40; #X obj 992 266 colorRGB 1 0 0 1; #X floatatom 933 415 5 0 0 0 - - -, f 5; #X obj 1282 242 * 5; #X obj 992 406 colorRGB 0 1 0 1; #X obj 990 371 translateXYZ 0 -2 0; #X obj 991 463 scaleXYZ 1 0.5 1; #X msg 1200 306 30; #X connect 0 0 3 0; #X connect 1 0 73 0; #X connect 3 0 72 0; #X connect 4 0 36 0; #X connect 5 0 72 2; #X connect 6 0 8 0; #X connect 8 0 100 0; #X connect 9 0 100 2; #X connect 10 0 74 0; #X connect 11 0 73 4; #X connect 11 0 74 4; #X connect 14 0 15 0; #X connect 15 0 102 0; #X connect 17 0 16 0; #X connect 18 0 17 0; #X connect 19 0 20 0; #X connect 20 1 35 0; #X connect 20 1 93 0; #X connect 21 0 22 0; #X connect 22 0 34 0; #X connect 23 0 24 0; #X connect 24 0 30 0; #X connect 26 0 25 0; #X connect 27 0 26 0; #X connect 28 0 27 0; #X connect 29 0 28 0; #X connect 30 0 29 0; #X connect 31 0 33 0; #X connect 33 0 0 0; #X connect 33 0 6 0; #X connect 33 0 14 0; #X connect 33 0 23 0; #X connect 34 0 18 1; #X connect 34 0 27 1; #X connect 35 0 34 0; #X connect 36 1 6 0; #X connect 36 2 14 0; #X connect 36 3 23 0; #X connect 36 4 37 0; #X connect 36 5 46 0; #X connect 37 0 38 0; #X connect 38 0 108 0; #X connect 39 0 41 0; #X connect 41 0 37 0; #X connect 41 0 46 0; #X connect 42 0 119 0; #X connect 42 0 69 0; #X connect 44 0 51 0; #X connect 44 0 57 0; #X connect 45 0 98 0; #X connect 46 0 47 0; #X connect 47 0 84 0; #X connect 48 0 75 0; #X connect 50 0 75 4; #X connect 51 0 45 0; #X connect 51 0 53 0; #X connect 53 0 54 0; #X connect 54 0 55 0; #X connect 55 0 83 1; #X connect 55 0 115 0; #X connect 56 0 75 4; #X connect 56 0 76 4; #X connect 56 0 113 4; #X connect 56 0 116 4; #X connect 57 0 56 0; #X connect 58 0 59 0; #X connect 59 0 61 0; #X connect 59 2 62 0; #X connect 60 0 63 0; #X connect 61 0 60 0; #X connect 62 0 44 0; #X connect 63 0 44 0; #X connect 64 0 65 0; #X connect 65 0 76 0; #X connect 67 0 117 0; #X connect 68 0 113 0; #X connect 69 0 49 0; #X connect 69 0 64 0; #X connect 69 0 67 0; #X connect 69 0 66 0; #X connect 70 0 1 0; #X connect 71 0 10 0; #X connect 72 0 70 0; #X connect 73 0 2 0; #X connect 74 0 7 0; #X connect 75 0 64 0; #X connect 76 0 83 0; #X connect 77 0 78 0; #X connect 78 0 82 0; #X connect 78 0 89 0; #X connect 79 0 80 0; #X connect 80 0 81 0; #X connect 81 0 73 4; #X connect 81 0 74 4; #X connect 82 0 81 0; #X connect 83 0 49 0; #X connect 85 0 87 0; #X connect 86 0 44 0; #X connect 87 0 86 0; #X connect 88 0 90 0; #X connect 89 0 88 0; #X connect 90 0 81 0; #X connect 91 0 103 3; #X connect 92 0 94 0; #X connect 93 0 92 0; #X connect 94 0 34 0; #X connect 95 0 97 0; #X connect 96 0 64 0; #X connect 96 0 67 0; #X connect 97 0 96 0; #X connect 98 0 105 0; #X connect 99 0 71 0; #X connect 100 0 99 0; #X connect 101 0 18 0; #X connect 102 0 103 0; #X connect 103 0 101 0; #X connect 105 0 49 0; #X connect 105 0 106 0; #X connect 106 0 66 0; #X connect 107 0 66 0; #X connect 107 0 49 0; #X connect 108 0 68 0; #X connect 109 0 67 0; #X connect 110 0 67 0; #X connect 111 0 117 2; #X connect 112 0 66 1; #X connect 113 0 109 0; #X connect 114 0 118 1; #X connect 115 0 118 1; #X connect 116 0 118 0; #X connect 117 0 116 0; #X connect 118 0 66 0; #X connect 119 0 49 1; #X connect 119 0 64 1; #X connect 119 0 66 1; #X connect 119 0 67 1; #X restore 63 56 pd game_events; #X obj 245 16 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 269 7 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1 ; #X obj 146 195 gemhead; #X obj 219 164 loadbang; #X msg 217 183 0; #X obj 146 217 translateXYZ; #X obj 146 259 circle 0.5; #X floatatom 225 207 5 0 0 0 - - -, f 5; #X obj 146 239 scaleXYZ 1 4 1; #X connect 2 0 1 0; #X connect 4 0 9 0; #X connect 6 0 5 0; #X connect 8 0 7 0; #X connect 9 0 0 0; #X connect 9 1 3 0; #X connect 9 2 10 0; #X connect 11 0 8 0; #X connect 12 0 6 0; #X connect 13 0 16 0; #X connect 14 0 15 0; #X connect 15 0 13 0; #X connect 16 0 19 0; #X connect 18 0 16 2; #X connect 19 0 17 0; #X restore 74 197 pd uki; #X obj 47 175 t b b; #X obj 47 154 scaleXYZ 1 0.14 1; #X obj 20 135 t a a; #N canvas 568 616 1347 403 OSC 0; #X obj 24 27 import mrpeach; #X obj 45 62 udpreceive 8000; #X obj 109 248 print; #X obj 45 87 unpackOSC; #X msg 45 179 \; /player/\$1 \$3 \$2; #X obj 146 139 s /game/level_sync; #X floatatom 185 51 5 0 0 0 - - -, f 5; #X obj 931 13 r /game/end; #X obj 935 130 metro 3000; #X obj 934 186 + 1; #X obj 934 209 s /game/sleep; #X obj 1114 82 s /game/end; #X obj 1117 61 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X msg 931 102 1; #X obj 974 92 r /game/start; #X msg 976 111 0; #X obj 1107 152 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X obj 1102 180 s /game/start; #X obj 935 156 random 3; #X floatatom 849 180 5 0 0 0 - - -, f 5; #X obj 932 66 delay 5000; #X msg 932 40 5000; #X floatatom 185 222 5 0 0 0 - - -, f 5; #X obj 45 115 route /player/scaled /game/level_sync /game/players; #X msg 428 212 \; /bloodcells 0; #X obj 649 84 s /bloodcells; #X obj 643 46 hradio 15 1 0 8 empty empty empty 0 -8 0 10 -262144 -1 -1 2; #X obj 347 142 route /game/end /game/start /game/score; #X floatatom 615 175 5 0 0 0 - - -, f 5; #X obj 559 211 s /game/score; #X msg 212 265 \; /bloodcells 1; #X msg 259 303 10000; #X obj 259 325 delay 10000; #X msg 257 345 \; /bloodcells 0; #X obj 404 266 route 1; #X msg 404 291 \; /bloodcells 2; #X obj 233 214 r /game/players; #X obj 347 173 r /game/end; #X obj 436 172 r /game/start; #X connect 1 0 3 0; #X connect 3 0 23 0; #X connect 6 0 5 0; #X connect 7 0 21 0; #X connect 8 0 18 0; #X connect 9 0 10 0; #X connect 9 0 19 0; #X connect 12 0 11 0; #X connect 13 0 8 0; #X connect 14 0 15 0; #X connect 15 0 8 0; #X connect 16 0 17 0; #X connect 18 0 9 0; #X connect 20 0 13 0; #X connect 21 0 20 0; #X connect 23 0 4 0; #X connect 23 1 5 0; #X connect 23 2 22 0; #X connect 23 2 30 0; #X connect 23 2 31 0; #X connect 23 3 27 0; #X connect 26 0 25 0; #X connect 27 0 34 0; #X connect 27 1 24 0; #X connect 27 2 28 0; #X connect 27 2 29 0; #X connect 31 0 32 0; #X connect 32 0 33 0; #X connect 34 0 35 0; #X connect 36 0 30 0; #X connect 36 0 31 0; #X connect 37 0 34 0; #X connect 38 0 24 0; #X restore 321 114 pd OSC; #X msg 572 54 \; pd dsp 1; #X obj 572 33 loadbang; #X obj 130 21 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 123 628 ev_pro_22 mask; #X obj 253 545 gemhead; #X obj 253 567 pix_set 1 1; #X obj 253 589 pix_texture; #X msg 331 564 rectangle 1; #X obj 332 541 loadbang; #X obj 476 78 r /game/start; #X obj 476 100 print; #X connect 5 0 17 0; #X connect 6 0 7 0; #X connect 7 0 32 0; #X connect 7 1 12 0; #X connect 12 0 13 0; #X connect 12 0 27 1; #X connect 13 0 14 0; #X connect 13 0 26 1; #X connect 14 0 24 1; #X connect 14 0 18 0; #X connect 17 0 25 0; #X connect 17 1 27 0; #X connect 17 2 37 0; #X connect 17 3 26 0; #X connect 18 0 25 1; #X connect 19 0 7 1; #X connect 20 0 19 0; #X connect 22 0 9 0; #X connect 23 0 22 0; #X connect 30 1 29 0; #X connect 31 0 30 0; #X connect 32 1 31 0; #X connect 35 0 34 0; #X connect 36 0 6 0; #X connect 38 0 39 0; #X connect 39 0 40 0; #X connect 40 1 37 1; #X connect 41 0 40 0; #X connect 42 0 41 0; #X coords 0 710 1 709 85 60 0;