main.pd 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356
  1. #N canvas 551 140 1120 796 10;
  2. #X declare -path ../externals/rc-patches/extra -path ../externals/rc-patches/rc
  3. -path ../externals/rc-patches/rc-patches;
  4. #X declare -path ../externals/rjlib/rj -path ../externals/pd;
  5. #X obj 8 9 cnv 15 360 180 empty empty Setup 5 12 0 14 -233017 -66577
  6. 0;
  7. #X msg 92 123 reset;
  8. #X text 135 122 reset the window;
  9. #N canvas 0 22 386 154 externals 0;
  10. #X text 14 16 add search paths to local libraries here;
  11. #X obj 16 47 declare -path ../externals/rc-patches/extra -path ../externals/rc-patches/rc
  12. -path ../externals/rc-patches/rc-patches;
  13. #X obj 15 106 declare -path ../externals/rjlib/rj -path ../externals/pd
  14. ;
  15. #X restore 275 20 pd externals;
  16. #X msg 49 391 print;
  17. #X obj 99 391 change;
  18. #X msg 99 418 link \$1;
  19. #X obj 99 293 loadbang;
  20. #X text 154 423 link the fragment shader id;
  21. #X text 115 360 load the fragment shader;
  22. #X text 111 624 run the shader program;
  23. #X text 257 47 2015 Dan Wilcox;
  24. #X obj 22 147 gemwin;
  25. #X obj 22 46 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1
  26. ;
  27. #X text 35 652 shader affects things below it in render chain;
  28. #X floatatom 421 122 5 0 0 0 - - -, f 5;
  29. #X obj 420 27 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
  30. 1;
  31. #X obj 441 27 loadbang;
  32. #X obj 448 75 + 1;
  33. #X text 417 502 2016 Sofy Yuditskaya;
  34. #X obj 421 259 gemmouse;
  35. #X floatatom 421 285 5 0 0 0 - - -, f 5;
  36. #X floatatom 457 283 5 0 0 0 - - -, f 5;
  37. #X obj 439 316 t b a;
  38. #X obj 421 336 pack f f;
  39. #X msg 433 407 iChannel0 3;
  40. #X msg 421 146 iTime \$1;
  41. #X obj 24 360 glsl_fragment;
  42. #X obj 123 445 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
  43. -1 -1;
  44. #X msg 322 515 SPHERE_DENSITY \$1;
  45. #X floatatom 287 514 5 0 0 0 - - -, f 5;
  46. #X floatatom 285 469 5 0 0 0 - - -, f 5;
  47. #X msg 320 471 NOISE_SCALE \$1;
  48. #X floatatom 285 434 5 0 0 0 - - -, f 5;
  49. #X msg 320 436 SPHERE_RADIUS \$1;
  50. #X obj 420 51 metro 40;
  51. #X obj 420 75 f;
  52. #X msg 485 49 0;
  53. #X floatatom 267 115 5 0 0 0 - - -, f 5;
  54. #X msg 190 155 view \$1 0 4 0 0 0 0 1 0;
  55. #X floatatom 71 667 5 0 0 0 - - -, f 5;
  56. #X obj 204 704 translateXYZ 0 0 0;
  57. #X obj 24 242 gemhead;
  58. #X obj 275 220 gemhead;
  59. #X obj 275 251 pix_texture;
  60. #X obj 32 682 gemframebuffer;
  61. #X msg 311 198 rectangle 1;
  62. #X obj 32 703 translateXYZ 0 0 -4;
  63. #X obj 275 302 rotateXYZ;
  64. #X floatatom 238 208 5 0 0 0 - - -, f 5;
  65. #X obj 275 272 translateXYZ 0 0 4;
  66. #X obj 275 332 sphere 10 50;
  67. #X floatatom 361 316 5 0 0 0 - - -, f 5;
  68. #X obj 692 277 pix_film;
  69. #X obj 771 169 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
  70. -1 -1;
  71. #X obj 771 195 openpanel;
  72. #X msg 759 238 0;
  73. #X obj 692 318 pix_mask;
  74. #X obj 692 237 alpha;
  75. #X obj 692 339 alpha;
  76. #X obj 692 369 pix_coloralpha;
  77. #X msg 421 356 iMouse \$1 \$2 0 0;
  78. #X floatatom 572 381 5 0 0 0 - - -, f 5;
  79. #X msg 572 403 iMouse \$1 \$1 0 0;
  80. #X msg 648 611 print;
  81. #X obj 698 611 change;
  82. #X msg 698 638 link \$1;
  83. #X obj 698 513 loadbang;
  84. #X text 714 580 load the fragment shader;
  85. #X text 761 814 run the shader program;
  86. #X text 634 872 shader affects things below it in render chain;
  87. #X obj 722 665 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
  88. -1 -1;
  89. #X floatatom 670 887 5 0 0 0 - - -, f 5;
  90. #X obj 620 945 pix_texture;
  91. #X obj 621 923 translateXYZ 0 0 -4;
  92. #X msg 699 542 open fogBlack.frag;
  93. #X obj 692 428 pix_texture;
  94. #X floatatom 75 19 5 0 0 0 - - -, f 5;
  95. #X floatatom 801 655 5 0 0 0 - - -, f 5;
  96. #X floatatom 817 700 5 0 0 0 - - -, f 5;
  97. #X msg 852 702 NOISE_SCALE \$1;
  98. #X obj 623 580 glsl_fragment;
  99. #X obj 624 840 glsl_program;
  100. #X msg 126 33 color 1 0 0;
  101. #X obj 529 879 scale 0.5;
  102. #X obj 623 485 alpha;
  103. #X obj 623 462 gemhead 50;
  104. #X obj 692 196 gemhead 2;
  105. #X msg 827 245 auto 0;
  106. #X obj 23 814 cnv 15 250 130 empty empty empty 20 12 0 14 -233017 -66577
  107. 0;
  108. #X obj 30 828 t a b;
  109. #X msg 62 849 snap;
  110. #X obj 30 897 t a b;
  111. #X msg 244 902 1;
  112. #X text 78 826 later usage;
  113. #X text 77 811 snapshot and store image for;
  114. #X obj 615 987 cnv 15 250 130 empty empty empty 20 12 0 14 -233017
  115. -66577 0;
  116. #X obj 622 1001 t a b;
  117. #X msg 654 1022 snap;
  118. #X obj 622 1090 t a b;
  119. #X msg 836 1095 1;
  120. #X text 670 999 later usage;
  121. #X text 669 984 snapshot and store image for;
  122. #X obj 622 1115 pix_buffer_write \$0-framebuffer2;
  123. #X obj 39 1068 t a b;
  124. #X msg 94 1069 1;
  125. #X text 191 1030 fetch framebuffer-pix;
  126. #X obj 304 1028 t a b;
  127. #X msg 359 1029 1;
  128. #X text 456 1030 fetch framebuffer-pix;
  129. #X obj 39 1027 t a a;
  130. #X obj 34 740 pix_texture;
  131. #X obj 35 775 square 4;
  132. #X obj 327 886 gemhead 30;
  133. #X obj 621 902 gemframebuffer;
  134. #X msg 669 736 iResolution 256 256 0 \, MARCH_DIST 2.5 \, MARCH_COUNT
  135. 20 \, SCATTER_DEPTH 10 \, SCATTER_DIST 2.5 \, SPHERE_RADIUS 2 \, SPHERE_DENSITY
  136. 3 \, LIGHT_COLOR_SCALE 1.2 \, ABSORPTION_COLOR_SCALE 1 \, VOLUME_COLOR_SCALE
  137. 0.045 \, NOISE_SCALE 1.2;
  138. #X obj 621 1046 pix_snap;
  139. #X obj 840 1143 pix_buffer \$0-framebuffer2 2;
  140. #X obj 39 974 gemhead;
  141. #X obj 39 997 alpha;
  142. #X obj 872 974 pix_buffer_read \$0-framebuffer2;
  143. #X obj 819 906 random 4;
  144. #X obj 819 929 - 2;
  145. #X obj 776 902 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
  146. -1 -1;
  147. #X obj 621 970 square 4;
  148. #X obj 621 1069 pix_motionblur;
  149. #X floatatom 747 1044 5 0 0 0 - - -, f 5;
  150. #X msg 336 732 iResolution 256 256 0 \, SPHERE_DENSITY 3;
  151. #X msg 836 657 SPHERE_DENSITY \$1;
  152. #X obj 350 915 pix_gain;
  153. #X floatatom 418 858 5 0 0 0 - - -, f 5;
  154. #X msg 413 888 \$1 \$1 \$1 \$1;
  155. #X obj 990 536 vsl 15 128 0.1 10 0 0 empty empty empty 0 -9 0 10 -262144
  156. -1 -1 0 1;
  157. #X obj 349 937 pix_texture;
  158. #X obj 692 449 rectangle 6 4;
  159. #X msg 772 214 open \$1 \, auto 1;
  160. #X msg 866 186 open C:UsersDLermiteVideosRLab_SEQ DEF HD;
  161. #X obj 421 169 s iTime;
  162. #X obj 53 546 r iTime;
  163. #X obj 373 1120 testdraw;
  164. #X msg 32 71 dimen 800 600 \, create \, 1;
  165. #X msg 100 101 0 \, destroy;
  166. #X obj 304 1053 pix_buffer_read test;
  167. #X msg 99 322 open extra/fog.frag;
  168. #X msg 207 948 allocate 512 512 4;
  169. #X obj 30 922 pix_buffer_write \$0-framebuffer;
  170. #X obj 68 1168 pix_mask;
  171. #X obj 31 951 pix_buffer \$0-framebuffer 2;
  172. #X obj 304 1096 pix_invert;
  173. #X obj 304 1076 pix_separator;
  174. #X obj 39 1093 pix_buffer_read \$0-framebuffer;
  175. #X msg 140 678 dimen 512 512;
  176. #X obj 30 871 pix_snap 512 512;
  177. #X floatatom 835 291 5 0 0 0 - - -, f 5;
  178. #X obj 573 776 r iTime;
  179. #X msg 733 566 open extra/fogBase.frag;
  180. #X msg 573 799 \$1;
  181. #X msg 573 845 iTime \$1;
  182. #X obj 573 822 * 20;
  183. #X obj 755 950 s foxtex;
  184. #X msg 55 49 dimen 1280 800 \, offset 1680 0 \, border 0 \, create
  185. \, 1 \, cursor 1;
  186. #X obj 349 965 square 6;
  187. #X msg 88 1115 horizontal;
  188. #X obj 39 1136 pix_flip;
  189. #X obj 421 101 / 800;
  190. #X floatatom 282 535 5 0 0 0 - - -, f 5;
  191. #X msg 317 536 LIGHT_COLOR_SCALE \$1;
  192. #X floatatom 287 494 5 0 0 0 - - -, f 5;
  193. #X msg 322 495 MARCH_COUNT \$1;
  194. #X floatatom 68 486 5 0 0 0 - - -, f 5;
  195. #X msg 134 495 xMove \$1;
  196. #X obj 22 603 glsl_program;
  197. #X msg 182 453 \$1 1000;
  198. #X obj 182 476 line;
  199. #X floatatom 218 401 5 0 0 0 - - -, f 5;
  200. #X floatatom 78 518 5 0 0 0 - - -, f 5;
  201. #X msg 144 527 zMove \$1;
  202. #X msg 272 556 iResolution 512 512 0 \, MARCH_DIST 2.5 \, MARCH_COUNT
  203. 36 \, SCATTER_DEPTH 10 \, SCATTER_DIST 2.5 \, SPHERE_RADIUS 14 \, SPHERE_DENSITY
  204. 1 \, LIGHT_COLOR_SCALE 0.82 \, ABSORPTION_COLOR_SCALE 0.004 \, VOLUME_COLOR_SCALE
  205. 0.055 \, NOISE_SCALE 18 \, xMove 1 \, yMove 0 \, zMove 0.5;
  206. #X connect 1 0 12 0;
  207. #X connect 4 0 171 0;
  208. #X connect 5 0 6 0;
  209. #X connect 6 0 28 0;
  210. #X connect 6 0 171 0;
  211. #X connect 7 0 143 0;
  212. #X connect 13 0 12 0;
  213. #X connect 15 0 26 0;
  214. #X connect 16 0 35 0;
  215. #X connect 17 0 16 0;
  216. #X connect 18 0 36 1;
  217. #X connect 20 0 21 0;
  218. #X connect 20 1 22 0;
  219. #X connect 21 0 24 0;
  220. #X connect 22 0 23 0;
  221. #X connect 23 0 24 0;
  222. #X connect 23 1 24 1;
  223. #X connect 24 0 61 0;
  224. #X connect 26 0 82 0;
  225. #X connect 26 0 137 0;
  226. #X connect 26 0 171 0;
  227. #X connect 27 0 171 0;
  228. #X connect 27 1 5 0;
  229. #X connect 29 0 171 0;
  230. #X connect 30 0 29 0;
  231. #X connect 31 0 32 0;
  232. #X connect 32 0 171 0;
  233. #X connect 33 0 34 0;
  234. #X connect 34 0 171 0;
  235. #X connect 35 0 36 0;
  236. #X connect 36 0 18 0;
  237. #X connect 36 0 164 0;
  238. #X connect 37 0 36 1;
  239. #X connect 38 0 39 0;
  240. #X connect 39 0 12 0;
  241. #X connect 42 0 27 0;
  242. #X connect 44 0 50 0;
  243. #X connect 45 0 47 0;
  244. #X connect 46 0 44 0;
  245. #X connect 47 0 111 0;
  246. #X connect 49 0 48 1;
  247. #X connect 50 0 48 0;
  248. #X connect 52 0 48 3;
  249. #X connect 53 0 76 0;
  250. #X connect 53 2 56 0;
  251. #X connect 54 0 55 0;
  252. #X connect 55 0 135 0;
  253. #X connect 56 0 53 1;
  254. #X connect 58 0 53 0;
  255. #X connect 62 0 63 0;
  256. #X connect 63 0 171 0;
  257. #X connect 64 0 82 0;
  258. #X connect 65 0 66 0;
  259. #X connect 66 0 71 0;
  260. #X connect 66 0 82 0;
  261. #X connect 67 0 75 0;
  262. #X connect 73 0 124 0;
  263. #X connect 74 0 73 0;
  264. #X connect 75 0 81 0;
  265. #X connect 76 0 134 0;
  266. #X connect 77 0 83 0;
  267. #X connect 78 0 128 0;
  268. #X connect 79 0 80 0;
  269. #X connect 80 0 82 0;
  270. #X connect 81 0 82 0;
  271. #X connect 81 1 65 0;
  272. #X connect 82 0 114 0;
  273. #X connect 83 0 12 0;
  274. #X connect 85 0 81 0;
  275. #X connect 86 0 85 0;
  276. #X connect 87 0 58 0;
  277. #X connect 88 0 53 0;
  278. #X connect 90 0 152 0;
  279. #X connect 90 1 91 0;
  280. #X connect 91 0 152 0;
  281. #X connect 92 0 145 0;
  282. #X connect 92 1 93 0;
  283. #X connect 93 0 145 1;
  284. #X connect 97 0 116 0;
  285. #X connect 97 1 98 0;
  286. #X connect 98 0 116 0;
  287. #X connect 99 0 103 0;
  288. #X connect 99 1 100 0;
  289. #X connect 100 0 103 1;
  290. #X connect 104 0 150 0;
  291. #X connect 104 1 105 0;
  292. #X connect 105 0 150 1;
  293. #X connect 107 0 142 0;
  294. #X connect 107 1 108 0;
  295. #X connect 108 0 142 1;
  296. #X connect 110 0 104 0;
  297. #X connect 110 1 107 0;
  298. #X connect 111 0 112 0;
  299. #X connect 112 0 90 0;
  300. #X connect 114 0 74 0;
  301. #X connect 114 1 159 0;
  302. #X connect 115 0 82 0;
  303. #X connect 116 0 125 0;
  304. #X connect 118 0 119 0;
  305. #X connect 119 0 110 0;
  306. #X connect 121 0 122 0;
  307. #X connect 122 0 74 1;
  308. #X connect 123 0 121 0;
  309. #X connect 124 0 97 0;
  310. #X connect 125 0 99 0;
  311. #X connect 126 0 125 1;
  312. #X connect 127 0 82 0;
  313. #X connect 128 0 82 0;
  314. #X connect 129 0 133 0;
  315. #X connect 130 0 131 0;
  316. #X connect 131 0 129 2;
  317. #X connect 132 0 78 0;
  318. #X connect 133 0 161 0;
  319. #X connect 135 0 53 0;
  320. #X connect 138 0 171 0;
  321. #X connect 140 0 12 0;
  322. #X connect 140 0 25 0;
  323. #X connect 141 0 12 0;
  324. #X connect 142 0 149 0;
  325. #X connect 143 0 27 0;
  326. #X connect 144 0 147 0;
  327. #X connect 146 0 133 0;
  328. #X connect 148 0 146 1;
  329. #X connect 149 0 148 0;
  330. #X connect 150 0 163 0;
  331. #X connect 151 0 45 0;
  332. #X connect 152 0 92 0;
  333. #X connect 153 0 53 1;
  334. #X connect 154 0 156 0;
  335. #X connect 155 0 81 0;
  336. #X connect 156 0 158 0;
  337. #X connect 157 0 82 0;
  338. #X connect 158 0 157 0;
  339. #X connect 160 0 12 0;
  340. #X connect 162 0 163 0;
  341. #X connect 163 0 146 0;
  342. #X connect 164 0 15 0;
  343. #X connect 165 0 166 0;
  344. #X connect 166 0 171 0;
  345. #X connect 167 0 168 0;
  346. #X connect 168 0 171 0;
  347. #X connect 169 0 170 0;
  348. #X connect 170 0 171 0;
  349. #X connect 171 0 45 0;
  350. #X connect 172 0 173 0;
  351. #X connect 173 0 170 0;
  352. #X connect 174 0 172 0;
  353. #X connect 175 0 176 0;
  354. #X connect 176 0 171 0;
  355. #X connect 177 0 171 0;