07_ev_example_framebuffers.pd 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249
  1. #N canvas 35 22 1100 747 10;
  2. #X declare -path . -path .. -path data -path ../data -path ev-in -path
  3. ../ev-in -path ev-main -path ../ev-main -path ev-pano -path ../ev-pano
  4. -path ev-pro -path ../ev-pro -path libs/gil -path ../libs/gil -path
  5. libs/kollabs -path ../libs/kollabs -path media -path ../media -path
  6. ev-glsl -path ../ev-glsl;
  7. #X obj 383 698 world_light;
  8. #X obj 383 671 gemhead;
  9. #X obj 11 14 cnv 15 910 30 empty empty Example:_multiple_framebuffers
  10. 20 12 0 14 -233017 -66577 0;
  11. #N canvas 518 150 548 468 init 0;
  12. #X obj 56 92 loadbang;
  13. #X obj 94 -23 cnv 15 400 100 empty empty IMPORTANT 20 12 0 14 -261234
  14. -66577 0;
  15. #X text 99 -3 Such a declare object should always be in the main patch
  16. of your project \, to set the pathes to the abstractions.;
  17. #X text 159 170 load the preset file on startup:;
  18. #X text 66 272 Recall scene '0' from the loaded preset file \, and
  19. load the still image files.;
  20. #X obj 18 2 inlet;
  21. #X msg 56 308 \; /ds/0/scene 0 \;;
  22. #X obj 56 241 del 3000;
  23. #X obj 83 168 del 1000;
  24. #X obj 56 144 t b b;
  25. #X obj 158 43 ev-main/ev_declare;
  26. #X msg 83 190 \; /ds/0/loadfile ../../data/ev_example_framebuffers_preset.txt
  27. ;
  28. #X text 160 226 (pathes relative to "./libs/kollabs");
  29. #X connect 0 0 9 0;
  30. #X connect 5 0 9 0;
  31. #X connect 7 0 6 0;
  32. #X connect 8 0 11 0;
  33. #X connect 9 0 7 0;
  34. #X connect 9 1 8 0;
  35. #X restore 23 96 pd init;
  36. #X text 477 14 (c)2011 Peter Venus & Marian Weger \; /part of EXTENDED
  37. VIEW toolkit/ gpl v3;
  38. #X text 826 616 "ev_example_framebuffers_preset.txt";
  39. #X text 826 605 This example uses scene 0 of;
  40. #X obj 11 169 cnv 15 450 350 empty empty framebuffer_0 20 12 0 14 -204800
  41. -66577 0;
  42. #X obj 471 169 cnv 15 450 350 empty empty framebuffer_1 20 12 0 14
  43. -204786 -66577 0;
  44. #X obj 23 194 gemhead 20;
  45. #X obj 16 326 cnv 15 130 70 empty empty simple_3d-object 20 12 0 10
  46. -233017 -66577 0;
  47. #X obj 23 372 teapot;
  48. #N canvas 0 22 450 300 teapot-movement 0;
  49. #X obj 25 14 inlet;
  50. #X obj 19 263 outlet;
  51. #X obj 41 119 translateXYZ 0 0 0;
  52. #X obj 41 159 rotateXYZ 0 0 0;
  53. #X floatatom 158 121 5 0 0 0 - - -;
  54. #X obj 158 -10 line;
  55. #X obj 137 -52 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
  56. -1 -1;
  57. #X obj 158 -52 metro 10000;
  58. #X obj 41 181 scaleXYZ 0.6 0.6 0.6;
  59. #X msg 158 -30 0 \, 1 10000;
  60. #X obj 158 99 * 360;
  61. #X obj 160 -149 loadbang;
  62. #X obj 69 -50 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
  63. -1;
  64. #X msg 91 -52 1;
  65. #X obj 76 25 *;
  66. #X obj 76 47 cos;
  67. #X obj 76 69 * 4;
  68. #X floatatom 76 93 5 0 0 0 - - -;
  69. #X obj 91 -30 atan;
  70. #X obj 91 -10 * 8;
  71. #X obj 41 203 color 1 1 1;
  72. #X connect 0 0 2 0;
  73. #X connect 2 0 3 0;
  74. #X connect 3 0 8 0;
  75. #X connect 4 0 3 2;
  76. #X connect 4 0 3 1;
  77. #X connect 4 0 3 3;
  78. #X connect 5 0 10 0;
  79. #X connect 5 0 14 0;
  80. #X connect 6 0 7 0;
  81. #X connect 7 0 9 0;
  82. #X connect 8 0 20 0;
  83. #X connect 9 0 5 0;
  84. #X connect 10 0 4 0;
  85. #X connect 11 0 13 0;
  86. #X connect 11 0 7 0;
  87. #X connect 12 0 13 0;
  88. #X connect 13 0 18 0;
  89. #X connect 14 0 15 0;
  90. #X connect 15 0 16 0;
  91. #X connect 16 0 17 0;
  92. #X connect 17 0 2 1;
  93. #X connect 18 0 19 0;
  94. #X connect 19 0 14 1;
  95. #X connect 20 0 1 0;
  96. #X restore 23 349 pd teapot-movement;
  97. #X obj 11 529 cnv 15 350 350 empty empty projection_planes 20 12 0
  98. 14 -262130 -66577 0;
  99. #X obj 23 628 gemhead 50;
  100. #X obj 23 660 t a a a;
  101. #X obj 23 603 tgl 15 1 empty planes toggle_projection_planes 17 7 0
  102. 10 -260097 -1 -1 1 1;
  103. #X obj 477 329 cnv 15 120 180 empty empty simple_3d-object 20 12 0
  104. 10 -233017 -66577 0;
  105. #X obj 605 329 cnv 15 220 170 empty empty empty 2 8 0 10 -191407 -66577
  106. 0;
  107. #X obj 612 452 pix_texture;
  108. #X obj 612 475 rectangle 3 3;
  109. #X obj 612 381 tgl 15 0 empty empty show_content_of_frambuffer_1 17
  110. 7 0 10 -260097 -1 -1 1 1;
  111. #X obj 469 530 cnv 15 350 300 empty empty projection_planes 20 12 0
  112. 14 -262130 -66577 0;
  113. #X obj 482 609 tgl 15 1 empty empty toggle_projection_planes 17 7 0
  114. 10 -260097 -1 -1 1 1;
  115. #N canvas 615 136 450 300 cube-movement 0;
  116. #X obj 18 -37 inlet;
  117. #X obj 19 263 outlet;
  118. #X obj 41 159 rotateXYZ 0 0 0;
  119. #X floatatom 158 121 5 0 0 0 - - -;
  120. #X obj 158 -10 line;
  121. #X obj 137 -52 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
  122. -1 -1;
  123. #X obj 158 -52 metro 10000;
  124. #X msg 158 -30 0 \, 1 10000;
  125. #X obj 158 99 * 360;
  126. #X obj 160 -149 loadbang;
  127. #X obj 41 203 color 1 1 1;
  128. #X obj 41 181 scaleXYZ 1.2 1.2 1.2;
  129. #X connect 0 0 2 0;
  130. #X connect 2 0 11 0;
  131. #X connect 3 0 2 2;
  132. #X connect 3 0 2 1;
  133. #X connect 3 0 2 3;
  134. #X connect 4 0 8 0;
  135. #X connect 5 0 6 0;
  136. #X connect 6 0 7 0;
  137. #X connect 7 0 4 0;
  138. #X connect 8 0 3 0;
  139. #X connect 9 0 6 0;
  140. #X connect 10 0 1 0;
  141. #X connect 11 0 10 0;
  142. #X restore 484 352 pd cube-movement;
  143. #X obj 484 434 cube 2;
  144. #X obj 507 383 loadbang;
  145. #X obj 484 207 gemhead 21;
  146. #X obj 482 634 gemhead 51;
  147. #X msg 507 409 draw line;
  148. #X obj 612 407 gemhead 102;
  149. #X obj 484 456 cube 1.75;
  150. #X obj 482 656 t a a;
  151. #X obj 23 76 bng 15 250 50 0 empty empty reset 17 7 0 10 -262144 -1
  152. -1;
  153. #X obj 23 219 ev_buf 0;
  154. #X obj 23 809 ev_pro_22 l;
  155. #X obj 42 748 ev_pro_22 c;
  156. #X obj 62 689 ev_pro_22 r;
  157. #X obj 482 755 ev_pro_22 w1;
  158. #X obj 509 694 ev_pro_22 w2;
  159. #X obj 484 232 ev_buf 1;
  160. #X obj 837 635 ev_storage;
  161. #X obj 518 74 ev_gemwin;
  162. #X obj 23 559 loadbang;
  163. #X msg 23 581 1;
  164. #X obj 482 563 loadbang;
  165. #X msg 482 585 1;
  166. #X obj 612 335 loadbang;
  167. #X msg 612 357 0;
  168. #X obj 155 326 cnv 15 220 170 empty empty empty 2 8 0 10 -191407 -66577
  169. 0;
  170. #X obj 162 449 pix_texture;
  171. #X obj 162 472 rectangle 3 3;
  172. #X obj 162 378 tgl 15 0 empty empty show_content_of_frambuffer_0 17
  173. 7 0 10 -260097 -1 -1 0 1;
  174. #X obj 162 404 gemhead 102;
  175. #X obj 162 332 loadbang;
  176. #X msg 162 354 0;
  177. #X obj 328 284 s /ev/buf/0/color;
  178. #X msg 328 259 0.9 0.6 0.1 1;
  179. #X obj 328 214 loadbang;
  180. #X obj 328 236 del 3000;
  181. #X obj 784 293 s /ev/buf/1/color;
  182. #X msg 784 268 0.2 0.2 0.7 1;
  183. #X obj 784 223 loadbang;
  184. #X obj 784 245 del 3000;
  185. #X text 767 203 Set background color:;
  186. #X text 370 645 Light source:;
  187. #X text 719 56 click "create" to start;
  188. #X text 317 194 set background color:;
  189. #X obj 216 579 r /ev/buf/0/texture_id;
  190. #X obj 225 427 r /ev/buf/0/texture_id;
  191. #X text 833 789 Presets are located in the \; "./data" folder;
  192. #X obj 675 561 r /ev/buf/1/texture_id;
  193. #X obj 675 429 r /ev/buf/1/texture_id;
  194. #X obj 484 478 cube 1.5;
  195. #X obj 100 68 cnv 15 360 75 empty empty empty 20 12 0 14 -261234 -66577
  196. 0;
  197. #X text 109 86 This example shows how to project several scenes simultaneously
  198. \, using multiple framebuffers.;
  199. #X connect 1 0 0 0;
  200. #X connect 9 0 34 0;
  201. #X connect 12 0 11 0;
  202. #X connect 14 0 15 0;
  203. #X connect 15 0 35 0;
  204. #X connect 15 1 36 0;
  205. #X connect 15 2 37 0;
  206. #X connect 16 0 14 0;
  207. #X connect 19 0 20 0;
  208. #X connect 21 0 30 0;
  209. #X connect 23 0 28 0;
  210. #X connect 24 0 25 0;
  211. #X connect 25 0 31 0;
  212. #X connect 26 0 29 0;
  213. #X connect 27 0 40 0;
  214. #X connect 28 0 32 0;
  215. #X connect 29 0 25 0;
  216. #X connect 29 0 31 0;
  217. #X connect 30 0 19 0;
  218. #X connect 31 0 73 0;
  219. #X connect 32 0 38 0;
  220. #X connect 32 1 39 0;
  221. #X connect 33 0 3 0;
  222. #X connect 34 0 12 0;
  223. #X connect 40 0 24 0;
  224. #X connect 43 0 44 0;
  225. #X connect 44 0 16 0;
  226. #X connect 45 0 46 0;
  227. #X connect 46 0 23 0;
  228. #X connect 47 0 48 0;
  229. #X connect 48 0 21 0;
  230. #X connect 50 0 51 0;
  231. #X connect 52 0 53 0;
  232. #X connect 53 0 50 0;
  233. #X connect 54 0 55 0;
  234. #X connect 55 0 52 0;
  235. #X connect 57 0 56 0;
  236. #X connect 58 0 59 0;
  237. #X connect 59 0 57 0;
  238. #X connect 61 0 60 0;
  239. #X connect 62 0 63 0;
  240. #X connect 63 0 61 0;
  241. #X connect 68 0 35 1;
  242. #X connect 68 0 36 1;
  243. #X connect 68 0 37 1;
  244. #X connect 69 0 50 1;
  245. #X connect 71 0 38 1;
  246. #X connect 71 0 39 1;
  247. #X connect 72 0 19 1;
  248. #X coords 0 0 1 1 85 60 0;