#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;