#N canvas 2 533 728 551 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 declare -lib mrpeach;
#X obj 11 -107 cnv 15 300 310 empty empty OUTPUT_MODULES 20 12 0 14
-204800 -66577 0;
#X obj 10 -312 cnv 15 300 130 empty empty FRAMEBUFFER 20 12 0 14 -262130
-66577 0;
#X obj 316 -312 cnv 15 160 50 empty empty INITIALISATIONS 20 12 0 14
-261234 -66577 0;
#N canvas 400 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 412 -286 pd init;
#X text 333 -288 look inside:;
#X obj 23 -79 gemhead 50;
#X obj 23 -290 gemhead 20;
#X obj 23 -270 ev_buf 0;
#X obj 321 -147 cnv 15 400 350 empty empty empty 20 12 0 14 -261682
-66577 0;
#X obj 330 -102 ev_gemwin;
#X text 549 -128 click "create" to start;
#X obj 350 5 ev_storage;
#X obj 286 -51 t a;
#X obj 286 8 t a;
#X obj 286 69 t a;
#X text 348 152 Presets are located in the "./data" folder. This example
uses scene "0" of "ev_example_panoramic_preset.txt".;
#N canvas 668 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 - - -;
#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 - - -;
#X obj 492 263 circle 0.5 100;
#X floatatom 423 111 5 0 0 0 - - -;
#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 22 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 22 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 22 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 199 -154 pd pano;
#X obj 23 -56 t a a a a;
#X obj 286 129 t a;
#X msg 209 -291 color \$1 \$1 \$1;
#X obj 209 -310 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1
0 1;
#X obj 563 34 tgl 15 0 /ev/mouse/select_radius empty mouseover 17 7
0 10 -262144 -1 -1 0 0.05;
#X msg 331 -131 color \$1 \$1 \$1;
#X obj 334 -152 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1
0 1;
#X obj 40 86 ev_pro_22 l;
#X obj 23 146 ev_pro_22 b;
#X obj 57 25 ev_pro_22 c;
#X obj 74 -34 ev_pro_22 r;
#N canvas 463 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 103 103 pix_snap 0 0 2048 4096;
#X obj 107 233 pix_share_write b 2048 4096 Grey;
#X obj 144 38 inlet;
#X obj 109 182 pix_grey;
#X connect 0 0 4 0;
#X connect 0 1 1 0;
#X connect 1 0 4 0;
#X connect 2 0 7 0;
#X connect 2 1 3 0;
#X connect 4 0 2 0;
#X connect 6 0 0 0;
#X connect 7 0 5 0;
#X restore 23 -129 pd snap;
#N canvas 569 166 423 143 uki 1;
#N canvas 249 358 960 699 bloodcells 1;
#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 1463 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 166 t b b;
#X obj 469 248 counter;
#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 1181 136 561 777 boids-help 0;
#X msg 47 -33 dump;
#X msg 51 78 neighbors \$1;
#X floatatom 51 63 5 0 4 0 - neighbors -;
#X floatatom 51 98 5 0 0 0 - maxspeed -;
#X msg 51 113 maxspeed \$1;
#X floatatom 51 133 5 0 0 0 - minspeed -;
#X msg 51 148 minspeed \$1;
#X floatatom 51 168 5 0 0 0 - center -;
#X msg 51 183 center \$1;
#X floatatom 51 203 5 0 0 0 - attract -;
#X msg 51 218 attract \$1;
#X floatatom 51 238 5 0 0 0 - match -;
#X msg 51 253 match \$1;
#X floatatom 51 273 5 0 0 0 - avoid -;
#X msg 51 288 avoid \$1;
#X floatatom 51 308 5 0 0 0 - repel -;
#X msg 51 323 repel \$1;
#X floatatom 51 343 5 0 0 0 - edgedist -;
#X msg 51 358 edgedist \$1;
#X floatatom 51 378 5 0 0 0 - speed -;
#X msg 51 393 speed \$1;
#X floatatom 51 413 5 0 0 0 - inertia -;
#X msg 51 428 inertia \$1;
#X floatatom 51 448 5 0 0 0 - accel -;
#X msg 51 463 accel \$1;
#X floatatom 51 483 5 0 0 0 - prefdist -;
#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] -;
#X floatatom 91 521 5 0 0 0 - flyrect[1] -;
#X floatatom 130 521 5 0 0 0 - flyrect[2] -;
#X floatatom 169 521 5 0 0 0 - - -;
#X floatatom 51 580 5 0 0 0 - - -;
#X floatatom 91 580 5 0 0 0 - - -;
#X floatatom 51 28 5 0 0 0 - - -;
#X msg 51 43 number \$1;
#X text 142 41 number of boids;
#X floatatom 47 -67 5 0 0 0 - - -;
#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 - - -;
#X floatatom 247 521 5 0 0 0 - - -;
#X msg 45 664 attractpt \$1 \$2 \$3;
#X obj 45 644 pack 0 0 0;
#X floatatom 130 580 5 0 0 0 - - -;
#X obj 83 608 t b f;
#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 restore 317 42 pd boids-help;
#X msg 547 219 \; pd-bloodcell-pool clear;
#X obj 30 -29 inlet;
#N canvas 1309 259 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 1261 672 450 397 boids_uki 1;
#X obj 35 -17 r /bloodcells;
#X obj 37 4 pipe 20;
#X obj 35 22 route 0 1 2;
#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 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 24.5 0;
#X msg 47 274 \; boidParam neighbors 1 \, minspeed 1 \, maxspeed 1.5
\, center 0.6 \, attract 1.5 \, match 1 \, avoid 0.72 \, repel 10 \,
edgedist 1 \, speed 1.24 \, inertia 5 \, accel 0.97 \, prefdist 1.5
\, flyrect -2 10 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 3 0;
#X connect 2 2 4 0;
#X restore 429 30 pd boids_uki;
#X obj 284 344 line;
#X obj 299 224 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 294 272 alternate;
#X obj 297 250 metro 15000;
#X msg 383 286 0;
#X msg 404 64 reset;
#X msg 447 67 dump;
#X obj 432 116 print;
#X msg 279 383 \; boidParam attractpt 0 \$1 0;
#X obj 62 420 s bloodcell-render;
#X obj 32 72 t a a a a a b;
#X obj 47 520 s bloodcell-render;
#X obj 27 610 s bloodcell-render;
#X obj 26 570 translateXYZ 0 8 0;
#X obj 27 590 scaleXYZ 1 1 -1;
#X obj 77 307 separator;
#X obj 62 377 separator;
#X obj 47 457 separator;
#X obj 26 550 separator;
#X obj 47 500 scaleXYZ -1 -1 1;
#X obj 77 331 translateXYZ 0 -8 0;
#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 - - -;
#X obj 221 206 print;
#X obj 28 28 colorRGB;
#X obj 62 400 scaleXYZ -1 -1 1;
#X msg 330 340 -15 30000;
#X msg 291 306 15 30000;
#X connect 0 0 56 0;
#X connect 1 0 47 0;
#X connect 2 0 5 0;
#X connect 3 0 17 0;
#X connect 5 0 3 0;
#X connect 9 0 11 0;
#X connect 10 0 48 0;
#X connect 10 1 11 2;
#X connect 10 1 19 0;
#X connect 11 0 8 0;
#X connect 12 0 10 0;
#X connect 13 0 14 0;
#X connect 14 0 15 0;
#X connect 15 0 3 1;
#X connect 15 1 3 2;
#X connect 15 2 3 3;
#X connect 16 0 2 1;
#X connect 20 0 0 0;
#X connect 22 0 23 0;
#X connect 23 0 0 0;
#X connect 25 0 33 0;
#X connect 25 0 54 0;
#X connect 26 0 28 0;
#X connect 27 0 59 0;
#X connect 27 1 58 0;
#X connect 28 0 27 0;
#X connect 29 0 25 0;
#X connect 30 0 47 0;
#X connect 31 0 47 0;
#X connect 35 2 41 0;
#X connect 35 3 40 0;
#X connect 35 4 2 0;
#X connect 35 5 47 0;
#X connect 38 0 39 0;
#X connect 39 0 37 0;
#X connect 40 0 4 0;
#X connect 41 0 57 0;
#X connect 42 0 44 0;
#X connect 43 0 38 0;
#X connect 44 0 36 0;
#X connect 47 0 6 0;
#X connect 47 1 32 0;
#X connect 48 0 9 0;
#X connect 49 0 51 0;
#X connect 50 0 28 0;
#X connect 51 0 50 0;
#X connect 51 1 53 0;
#X connect 52 0 28 0;
#X connect 53 0 29 0;
#X connect 53 1 52 0;
#X connect 56 0 35 0;
#X connect 57 0 34 0;
#X connect 58 0 25 0;
#X connect 59 0 25 0;
#X restore 43 80 pd bloodcells;
#X obj 194 83 world_light;
#X obj 194 62 gemhead;
#N canvas 859 208 664 576 players 1;
#X obj 329 -268 counter;
#N canvas 1284 621 267 48 players-pool 1;
#X obj 20 20 player 1 4;
#X obj 20 20 player 2 4;
#X obj 20 20 player 3 4;
#X obj 20 20 player 4 4;
#X restore 468 -381 pd players-pool;
#X msg 386 -290 \; pd-players-pool clear;
#X obj 329 -292 until 6;
#X obj 338 -116 gemhead;
#X obj 338 -22 pix_texture;
#X obj 401 -3 s /player/circle/texid;
#X obj -41 -338 gemhead;
#X obj -41 -295 gemframebuffer;
#X obj -41 -81 s /player/framebuffer;
#X obj -41 -102 t b;
#X obj -24 75 gemhead;
#X obj -23 132 pix_texture;
#X obj -23 152 square 4;
#X obj -41 -269 translateXYZ 0 0 -4;
#X floatatom 87 -242 5 0 0 0 - - -;
#X obj -23 94 alpha;
#X msg 16 -316 dimen 1000 1000 \, format RGBA;
#X obj 329 -246 + 1;
#X obj -38 -363 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1
0 1;
#X msg 286 -382 6;
#X obj 329 -225 pack f f;
#X obj -41 -317 alpha;
#X floatatom 359 -336 5 0 0 0 - - -;
#X obj 329 -381 r /game/players;
#X msg 329 -205 \; pd-players-pool obj 20 20 player \$1 \$2;
#X obj 329 -314 t f b f b f;
#X obj 338 -66 pix_image ./media/circle_6.png;
#X msg 392 -96 open ./media/circle_\$1.png;
#X obj 338 -91 alpha;
#X obj 369 -44 pix_coloralpha;
#X floatatom 131 -238 5 0 0 0 - - -;
#X floatatom 32 -117 5 0 0 0 - - -;
#X obj -24 -45 inlet;
#X obj -9 16 loadbang;
#X msg -9 35 0;
#X floatatom 51 81 5 0 0 0 - - -;
#X obj 183 52 gemhead;
#X obj 184 153 square 4;
#X obj 184 71 alpha;
#X floatatom 259 71 5 0 0 0 - - -;
#X obj -24 -24 t b b;
#X obj 184 112 scaleXYZ -1 -1 1;
#X obj 184 91 translateXYZ 0 -24 0;
#X obj -23 112 translateXYZ 0 24 0;
#X obj 16 -338 loadbang;
#X text 82 -353 construction framebuffer;
#X text 117 -338 players;
#X text 1 174 affichage gauche;
#X text 200 176 affichage droite;
#X text 406 -117 choix image cercle / nbre players;
#X obj 397 -350 hradio 15 1 0 8 empty empty empty 0 -8 0 10 -262144
-1 -1 3;
#X obj 398 -331 + 2;
#X obj -24 -147 s /player/framebuffer/rot/x;
#X obj -41 -191 gemlist_info;
#X obj -24 -168 unpack f f f;
#X obj 184 132 pix_texture;
#X floatatom 105 -297 5 0 0 0 - - -;
#X obj -41 -250 translateXYZ 0 1 -5;
#X obj -41 -122 scale 1.4;
#X floatatom 195 -236 5 0 0 0 - - -;
#X obj -41 -214 rotateXYZ 0 0 0;
#X connect 0 0 18 0;
#X connect 3 0 0 0;
#X connect 4 0 29 0;
#X connect 5 1 6 0;
#X connect 7 0 22 0;
#X connect 8 0 14 0;
#X connect 8 1 12 1;
#X connect 8 1 56 1;
#X connect 10 0 9 0;
#X connect 11 0 16 0;
#X connect 12 0 13 0;
#X connect 14 0 58 0;
#X connect 15 0 61 1;
#X connect 16 0 44 0;
#X connect 17 0 8 0;
#X connect 18 0 21 0;
#X connect 19 0 7 0;
#X connect 20 0 26 0;
#X connect 21 0 25 0;
#X connect 22 0 8 0;
#X connect 23 0 26 0;
#X connect 24 0 26 0;
#X connect 26 0 3 0;
#X connect 26 1 0 2;
#X connect 26 2 21 1;
#X connect 26 3 2 0;
#X connect 26 4 28 0;
#X connect 27 0 5 0;
#X connect 28 0 27 0;
#X connect 29 0 27 0;
#X connect 31 0 61 2;
#X connect 32 0 59 1;
#X connect 33 0 41 0;
#X connect 34 0 35 0;
#X connect 35 0 11 0;
#X connect 35 0 37 0;
#X connect 36 0 44 2;
#X connect 37 0 39 0;
#X connect 39 0 43 0;
#X connect 40 0 43 2;
#X connect 41 0 11 0;
#X connect 41 1 37 0;
#X connect 42 0 56 0;
#X connect 43 0 42 0;
#X connect 44 0 12 0;
#X connect 45 0 17 0;
#X connect 51 0 52 0;
#X connect 52 0 26 0;
#X connect 54 0 59 0;
#X connect 54 1 55 0;
#X connect 55 0 53 0;
#X connect 56 0 38 0;
#X connect 57 0 58 2;
#X connect 58 0 61 0;
#X connect 59 0 10 0;
#X connect 60 0 61 3;
#X connect 61 0 54 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 140 495 1722 486 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 - - -;
#X obj 193 62 gemhead;
#X obj 194 335 square 4;
#X obj 194 81 alpha;
#X floatatom 269 81 5 0 0 0 - - -;
#X obj 194 124 scaleXYZ -1 -1 1;
#X obj 194 194 pix_texture;
#X floatatom 114 417 5 0 0 0 - - -;
#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 438 190 scaleXYZ 1 0.08 1;
#X obj 438 102 translateXYZ 0 -24.6 0;
#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 242 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 213 pp list;
#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 859 381 5 0 0 0 - - -;
#X obj 1166 146 metro 40;
#X floatatom 1283 92 5 0 0 0 - - -;
#X obj 1264 242 * -1;
#X obj 1166 192 last-x 25;
#X obj 1238 162 random 100;
#X obj 1252 190 / 1000;
#X obj 1264 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 379 text3d;
#X obj 992 346 scaleXYZ 0.1 0.1 1;
#X obj 991 232 text3d;
#X obj 992 144 rotateXYZ 0 0 180;
#X msg 1182 267 font media/FreeSansBold.ttf \, justify center base
;
#X obj 994 108 translateXYZ 0 -24.3 0;
#X obj 990 281 translateXYZ 0 0.3 0;
#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 194 103 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 992 176 colorRGB 1 0 0 0;
#X obj 1419 186 colorRGB 1 0 0 0;
#X obj 1419 326 colorRGB 0 1 0 0;
#X obj 992 316 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 msg 1200 293 16;
#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 - - -;
#X obj 438 158 rotateXYZ 90 0 0;
#X obj 638 89 delay;
#X msg 637 67 5000;
#X msg 635 108 0 3000;
#X obj 1189 354 r /game/score;
#X msg 1189 420 text \$1;
#X obj 1189 380 - 11;
#X connect 0 0 3 0;
#X connect 1 0 83 0;
#X connect 3 0 81 0;
#X connect 4 0 39 0;
#X connect 5 0 81 2;
#X connect 6 0 8 0;
#X connect 8 0 82 0;
#X connect 9 0 82 2;
#X connect 10 0 80 0;
#X connect 11 0 84 0;
#X connect 12 0 83 4;
#X connect 12 0 84 4;
#X connect 15 0 16 0;
#X connect 16 0 21 0;
#X connect 18 0 17 0;
#X connect 19 0 18 0;
#X connect 20 0 19 0;
#X connect 21 0 105 0;
#X connect 22 0 23 0;
#X connect 23 1 38 0;
#X connect 23 1 107 0;
#X connect 24 0 25 0;
#X connect 25 0 37 0;
#X connect 26 0 27 0;
#X connect 27 0 33 0;
#X connect 29 0 28 0;
#X connect 30 0 29 0;
#X connect 31 0 30 0;
#X connect 32 0 31 0;
#X connect 33 0 32 0;
#X connect 34 0 36 0;
#X connect 35 0 34 0;
#X connect 36 0 0 0;
#X connect 36 0 6 0;
#X connect 36 0 15 0;
#X connect 36 0 26 0;
#X connect 37 0 19 1;
#X connect 37 0 30 1;
#X connect 38 0 37 0;
#X connect 39 0 0 0;
#X connect 39 1 6 0;
#X connect 39 2 15 0;
#X connect 39 3 26 0;
#X connect 39 4 40 0;
#X connect 39 5 50 0;
#X connect 40 0 41 0;
#X connect 41 0 77 0;
#X connect 42 0 44 0;
#X connect 43 0 42 0;
#X connect 44 0 40 0;
#X connect 44 0 50 0;
#X connect 45 0 96 0;
#X connect 45 0 76 0;
#X connect 46 0 45 0;
#X connect 47 0 55 0;
#X connect 47 0 63 0;
#X connect 48 0 53 0;
#X connect 48 0 72 0;
#X connect 49 0 58 0;
#X connect 50 0 51 0;
#X connect 51 0 97 0;
#X connect 52 0 86 0;
#X connect 54 0 86 4;
#X connect 55 0 49 0;
#X connect 55 0 59 0;
#X connect 57 0 73 1;
#X connect 58 0 48 0;
#X connect 59 0 60 0;
#X connect 60 0 61 0;
#X connect 61 0 57 0;
#X connect 61 0 95 1;
#X connect 62 0 85 4;
#X connect 62 0 86 4;
#X connect 62 0 87 4;
#X connect 62 0 88 4;
#X connect 63 0 62 0;
#X connect 64 0 65 0;
#X connect 65 0 67 0;
#X connect 65 2 68 0;
#X connect 66 0 69 0;
#X connect 67 0 66 0;
#X connect 68 0 47 0;
#X connect 69 0 47 0;
#X connect 70 0 71 0;
#X connect 71 0 87 0;
#X connect 73 0 72 0;
#X connect 74 0 78 0;
#X connect 75 0 85 0;
#X connect 76 0 53 0;
#X connect 76 0 70 0;
#X connect 76 0 74 0;
#X connect 76 0 72 0;
#X connect 77 0 75 0;
#X connect 78 0 88 0;
#X connect 79 0 1 0;
#X connect 80 0 11 0;
#X connect 81 0 79 0;
#X connect 82 0 10 0;
#X connect 83 0 2 0;
#X connect 84 0 7 0;
#X connect 85 0 74 0;
#X connect 86 0 70 0;
#X connect 87 0 95 0;
#X connect 88 0 73 0;
#X connect 89 0 90 0;
#X connect 90 0 94 0;
#X connect 90 0 102 0;
#X connect 91 0 92 0;
#X connect 92 0 93 0;
#X connect 93 0 83 4;
#X connect 93 0 84 4;
#X connect 94 0 93 0;
#X connect 95 0 53 0;
#X connect 96 0 53 1;
#X connect 96 0 70 1;
#X connect 96 0 72 1;
#X connect 96 0 74 1;
#X connect 97 0 52 0;
#X connect 98 0 100 0;
#X connect 99 0 47 0;
#X connect 100 0 99 0;
#X connect 101 0 103 0;
#X connect 102 0 101 0;
#X connect 103 0 93 0;
#X connect 104 0 105 3;
#X connect 105 0 20 0;
#X connect 106 0 108 0;
#X connect 107 0 106 0;
#X connect 108 0 37 0;
#X connect 109 0 111 0;
#X connect 110 0 70 0;
#X connect 110 0 74 0;
#X connect 111 0 110 0;
#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 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 restore 77 -128 pd uki;
#X obj 50 -150 t b b;
#X obj 50 -171 scaleXYZ 1 0.14 1;
#X obj 23 -190 t a a;
#N canvas 342 127 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 - - -;
#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 - - -;
#X obj 932 66 delay 5000;
#X msg 932 40 5000;
#X obj 236 159 s /game/players;
#X floatatom 185 222 5 0 0 0 - - -;
#X obj 45 115 route /player/scaled /game/level_sync /game/players;
#X obj 347 173 s /game/end;
#X obj 426 173 s /game/start;
#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 - - -;
#X obj 559 211 s /game/score;
#X msg 250 204 \; /bloodcells 1;
#X msg 262 248 10000;
#X obj 262 270 delay 10000;
#X msg 260 290 \; /bloodcells 0;
#X obj 404 266 route 1;
#X msg 404 291 \; /bloodcells 2;
#X connect 1 0 3 0;
#X connect 3 0 24 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 24 0 4 0;
#X connect 24 1 5 0;
#X connect 24 2 22 0;
#X connect 24 2 23 0;
#X connect 24 2 33 0;
#X connect 24 2 34 0;
#X connect 24 3 30 0;
#X connect 29 0 28 0;
#X connect 30 0 25 0;
#X connect 30 0 37 0;
#X connect 30 1 26 0;
#X connect 30 1 27 0;
#X connect 30 2 31 0;
#X connect 30 2 32 0;
#X connect 34 0 35 0;
#X connect 35 0 36 0;
#X connect 37 0 38 0;
#X restore 324 -211 pd OSC;
#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 24 0;
#X connect 17 2 26 0;
#X connect 17 3 27 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 0 28 0;
#X connect 32 1 31 0;
#X coords 0 551 1 550 85 60 0;
