#N canvas 50 151 946 464 10; #X declare -lib Gem; #N canvas 50 173 290 229 Gem.init 0; #X obj 71 191 outlet; #X obj 71 81 loadbang; #X msg 101 134 reset; #X obj 71 109 t b b; #X msg 71 164 lighting 1; #X msg 155 164 lighting 0; #X connect 1 0 3 0; #X connect 2 0 0 0; #X connect 3 0 4 0; #X connect 3 1 2 0; #X connect 4 0 0 0; #X connect 5 0 0 0; #X restore 48 98 pd Gem.init; #X obj 249 195 cube; #X msg 249 121 set \$1; #X floatatom 249 98 5 0 0 0 - - -; #X obj 249 169 translateXYZ 1 2 -3; #X obj 77 130 r view_mess; #N canvas 298 685 450 300 lighting 0; #X obj 214 196 world_light; #X obj 214 136 gemhead 1; #X obj 65 157 world_light; #X obj 65 105 gemhead 1; #X msg 278 97 0.5 0.8 0.6; #X obj 271 67 loadbang; #X obj 65 129 rotateXYZ -104 160 0; #X obj 214 164 rotateXYZ 104 -100 0; #X msg 137 98 1 1 1; #X obj 65 44 - 1; #X obj 65 18 inlet; #X msg 65 68 set \$1; #X connect 1 0 7 0; #X connect 3 0 6 0; #X connect 4 0 0 1; #X connect 5 0 8 0; #X connect 5 0 4 0; #X connect 6 0 2 0; #X connect 7 0 0 0; #X connect 8 0 2 1; #X connect 9 0 11 0; #X connect 10 0 9 0; #X connect 11 0 3 0; #X connect 11 0 1 0; #X restore 604 108 pd lighting; #X obj 271 291 translateXYZ 0 -2 -2; #X obj 271 265 gemhead -50; #X obj 550 108 gemhead; #X obj 550 131 model ../data/venus.obj; #X obj 249 145 gemhead -50; #X obj 271 315 text2d; #N canvas 6 51 381 205 textinit 0; #X obj 85 140 outlet; #X obj 94 63 loadbang; #X msg 100 107 text press left button and move mouse; #X msg 82 86 font ../data/vera.ttf; #X connect 1 0 3 0; #X connect 1 0 2 0; #X connect 2 0 0 0; #X connect 3 0 0 0; #X restore 469 297 pd textinit; #X obj 249 56 tgl 15 0 empty stay_cube empty 0 -6 0 8 -262144 -1 -1 0 100; #X obj 249 76 - 50; #X text 125 6 change the view-point \, but keep some objects at a fixed position; #X text 307 120 set the priority for rendering; #X text 431 188 a priority<0 will be rendered AFTER all other things \, and with viewpoint set to the origin! (objects will not be affected by a change of view); #X text 431 240 this is good for displaying logos \, help messages and cetera...; #X obj 588 282 gemhead -50; #N canvas 108 327 419 265 textinit 0; #X obj 82 198 outlet; #X obj 78 82 loadbang; #X msg 97 165 text occasionally press right button; #X obj 225 10 gemhead -1; #X obj 225 80 spigot; #X obj 225 39 t b b; #X obj 225 102 t b f; #X obj 264 60 f 1; #X msg 225 126 font ../data/vera.ttf; #X connect 1 0 2 0; #X connect 2 0 0 0; #X connect 3 0 5 0; #X connect 4 0 6 0; #X connect 5 0 4 0; #X connect 5 1 7 0; #X connect 6 0 8 0; #X connect 6 1 7 1; #X connect 7 0 4 1; #X connect 8 0 0 0; #X restore 786 389 pd textinit; #X obj 588 407 text3d; #X obj 588 380 rotateXYZ; #X obj 588 332 render_trigger; #X obj 634 353 i; #X obj 687 353 % 360; #X obj 660 353 - 5; #X obj 588 308 translateXYZ 0 -7 -10; #N canvas 231 652 445 426 mousemove 0; #X obj 129 8 gemmouse; #X obj 136 88 pack; #X obj 136 110 spigot; #X obj 136 131 unpack; #X obj 136 196 t f f; #X obj 36 16 gemkeyname; #X obj 36 39 pack 0 s; #X obj 36 62 route 1; #X msg 36 107 0; #X msg 136 365 view \$2 \$3 \$1 0 0 0 0 1 0; #X obj 136 173 +; #X obj 136 221 * -1; #X obj 201 237 t f f; #X obj 201 174 +; #X obj 201 262 * -1; #X obj 36 129 t f f f; #X obj 136 388 s view_mess; #X text 61 106 reset; #N canvas 292 198 304 356 coordinates 0; #X obj 89 52 inlet; #X obj 94 331 outlet; #X obj 193 62 atan; #X msg 193 41 1; #X obj 193 84 / 45; #X obj 193 20 loadbang; #X text 94 29 r phi theta; #X obj 89 78 unpack 0 0 0; #X obj 128 123 *; #X obj 168 123 *; #X obj 120 197 cos; #X obj 150 198 sin; #X obj 120 166 t f f; #X obj 183 198 cos; #X obj 213 199 sin; #X obj 183 167 t f f; #X obj 120 230 *; #X obj 150 231 *; #X obj 85 275 *; #X obj 125 275 *; #X obj 174 277 *; #X obj 66 242 t f f f; #X obj 91 308 pack 0 0 0; #X connect 0 0 7 0; #X connect 2 0 4 0; #X connect 3 0 2 0; #X connect 4 0 9 1; #X connect 4 0 8 1; #X connect 5 0 3 0; #X connect 7 0 21 0; #X connect 7 1 8 0; #X connect 7 2 9 0; #X connect 8 0 12 0; #X connect 9 0 15 0; #X connect 10 0 16 0; #X connect 11 0 17 0; #X connect 12 0 10 0; #X connect 12 1 11 0; #X connect 13 0 16 1; #X connect 13 0 17 1; #X connect 14 0 20 1; #X connect 15 0 13 0; #X connect 15 1 14 0; #X connect 16 0 18 1; #X connect 17 0 19 1; #X connect 18 0 22 0; #X connect 19 0 22 1; #X connect 20 0 22 2; #X connect 21 0 18 0; #X connect 21 1 19 0; #X connect 21 2 20 0; #X connect 22 0 1 0; #X restore 136 310 pd coordinates; #X obj 136 249 t b f; #X obj 136 289 pack 4 0 0; #X obj 177 46 t f f; #X obj 177 67 -; #X obj 136 45 t f f; #X obj 136 66 -; #X obj 278 57 s stay_cube; #X obj 278 35 select 1; #X obj 201 151 * 0.5; #X obj 136 153 * 0.5; #X obj 201 209 clip -90 90; #N canvas 20 394 450 300 space 0; #X obj 42 13 inlet; #X obj 42 35 symbol; #X obj 42 87 select space; #X obj 123 111 select space; #X obj 204 87 makefilename %c; #X msg 204 59 32; #X obj 42 57 t s b; #X obj 42 159 t b; #X obj 42 181 outlet; #X connect 0 0 1 0; #X connect 1 0 6 0; #X connect 2 0 7 0; #X connect 2 1 3 0; #X connect 3 0 7 0; #X connect 4 0 3 1; #X connect 5 0 4 0; #X connect 6 0 2 0; #X connect 6 1 5 0; #X connect 7 0 8 0; #X restore 36 85 pd space; #X connect 0 0 23 0; #X connect 0 1 21 0; #X connect 0 2 2 1; #X connect 0 4 26 0; #X connect 1 0 2 0; #X connect 2 0 3 0; #X connect 3 0 28 0; #X connect 3 1 27 0; #X connect 4 0 11 0; #X connect 4 1 10 1; #X connect 5 0 6 0; #X connect 5 1 6 1; #X connect 6 0 7 0; #X connect 7 0 30 0; #X connect 8 0 15 0; #X connect 9 0 16 0; #X connect 10 0 4 0; #X connect 11 0 19 0; #X connect 12 0 14 0; #X connect 12 1 13 1; #X connect 13 0 29 0; #X connect 14 0 20 2; #X connect 15 0 10 0; #X connect 15 1 10 1; #X connect 15 1 13 0; #X connect 15 2 13 1; #X connect 18 0 9 0; #X connect 19 0 20 0; #X connect 19 1 20 1; #X connect 20 0 18 0; #X connect 21 0 22 1; #X connect 21 1 22 0; #X connect 22 0 1 1; #X connect 23 0 24 1; #X connect 23 1 24 0; #X connect 24 0 1 0; #X connect 26 0 25 0; #X connect 27 0 13 0; #X connect 28 0 10 0; #X connect 29 0 12 0; #X connect 30 0 8 0; #X restore 731 34 pd mousemove; #X text 275 48 0...[cube] is rendered OSD; #X text 275 60 1...[cube] is rendered at "view"; #N canvas 340 107 682 322 gemwin 0; #X obj 102 122 tgl 15 0 \$0-gemstart \$0-gemstart empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 102 161 r \$0-gemstart; #X obj 102 182 select 1 0; #X msg 102 214 create \, 1; #X msg 177 215 destroy; #X obj 102 239 t a; #X obj 318 54 inlet; #X obj 318 255 gemwin; #X obj 318 100 t a a; #X obj 318 287 outlet; #X obj 350 128 route create destroy; #X obj 350 150 t b; #X msg 350 172 1; #X obj 390 150 t b; #X msg 390 172 0; #X obj 350 195 t f; #X msg 350 219 set \$1; #X text 118 122 rendering; #X connect 1 0 2 0; #X connect 2 0 3 0; #X connect 2 1 4 0; #X connect 3 0 5 0; #X connect 4 0 5 0; #X connect 5 0 8 0; #X connect 6 0 8 0; #X connect 7 0 9 0; #X connect 8 0 7 0; #X connect 8 1 10 0; #X connect 10 0 11 0; #X connect 10 1 13 0; #X connect 11 0 12 0; #X connect 12 0 15 0; #X connect 13 0 14 0; #X connect 14 0 15 0; #X connect 15 0 16 0; #X connect 16 0 0 0; #X coords 0 -1 1 1 85 40 1 100 100; #X restore 48 204 pd gemwin; #X obj 604 88 tgl 15 1 empty empty empty 17 7 0 10 -262144 -1 -1 2 2; #X text 632 87 <- should the view affect light position or not; #X obj 828 8 declare -lib Gem; #X connect 0 0 32 0; #X connect 2 0 11 0; #X connect 3 0 2 0; #X connect 4 0 1 0; #X connect 5 0 32 0; #X connect 7 0 12 0; #X connect 8 0 7 0; #X connect 9 0 10 0; #X connect 11 0 4 0; #X connect 13 0 12 0; #X connect 14 0 15 0; #X connect 15 0 3 0; #X connect 20 0 28 0; #X connect 21 0 22 0; #X connect 23 0 22 0; #X connect 24 0 23 0; #X connect 24 1 25 0; #X connect 25 0 27 0; #X connect 25 0 23 1; #X connect 26 0 25 1; #X connect 27 0 26 0; #X connect 28 0 24 0; #X connect 33 0 6 0;