aboutsummaryrefslogtreecommitdiff
path: root/Gem/examples/10.glsl/13.panoramique.pd
blob: c0ccbd2e5e3b3a08a8a53a0dae1ba283598efa1e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
#N canvas 189 90 1107 660 10;
#X msg 17 91 create \, 1;
#X msg 30 114 0 \, destroy;
#X obj 160 405 pix_texture;
#X obj 169 165 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#N canvas 38 51 792 790 glsl 0;
#X obj 78 339 glsl_vertex;
#X msg 32 338 print;
#X obj 78 626 glsl_program;
#X obj 163 555 pack 0 0;
#X msg 30 476 print;
#X obj 163 511 change;
#X obj 150 358 change;
#X msg 163 579 link \$1 \$2;
#X msg 32 620 print;
#X obj 77 490 glsl_fragment;
#X floatatom 163 535 2 0 0 0 ID - -;
#X floatatom 150 381 2 0 0 0 ID - -;
#X obj 181 600 print linking;
#X obj 15 21 inlet;
#X obj 78 662 outlet;
#X obj 577 95 inlet;
#X obj 15 44 route bang;
#X obj 255 11 gemhead 1;
#X msg 255 33 1;
#X obj 255 57 change;
#X obj 255 81 t b;
#X obj 157 647 change;
#X obj 157 668 t b;
#X obj 158 690 outlet;
#X obj 90 426 symbol;
#X obj 90 401 t b;
#X msg 287 598 0;
#X obj 15 65 t b b b;
#X msg 118 307 open panoramique.vert;
#X msg 90 453 open panoramique.frag;
#X connect 0 0 9 0;
#X connect 0 1 6 0;
#X connect 1 0 0 0;
#X connect 2 0 14 0;
#X connect 2 1 21 0;
#X connect 3 0 7 0;
#X connect 4 0 9 0;
#X connect 5 0 10 0;
#X connect 6 0 11 0;
#X connect 6 0 25 0;
#X connect 7 0 2 0;
#X connect 7 0 12 0;
#X connect 8 0 2 0;
#X connect 9 0 2 0;
#X connect 9 1 5 0;
#X connect 10 0 3 0;
#X connect 11 0 3 1;
#X connect 13 0 16 0;
#X connect 15 0 2 0;
#X connect 16 0 27 0;
#X connect 16 1 0 0;
#X connect 17 0 18 0;
#X connect 18 0 19 0;
#X connect 19 0 20 0;
#X connect 20 0 28 0;
#X connect 21 0 22 0;
#X connect 22 0 23 0;
#X connect 24 0 29 0;
#X connect 25 0 24 0;
#X connect 26 0 21 0;
#X connect 27 0 10 0;
#X connect 27 1 28 0;
#X connect 27 2 26 0;
#X connect 28 0 0 0;
#X connect 29 0 9 0;
#X restore 160 182 pd glsl;
#X obj 175 245 loadbang;
#X obj 160 288 pix_image;
#X msg 174 379 rectangle 1;
#X obj 174 358 loadbang;
#X obj 160 317 pix_info 0 0 0;
#X msg 238 148 sizeX \$1;
#X msg 253 169 sizeY \$1;
#X obj 353 406 pix_texture;
#X obj 362 166 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#N canvas 38 51 792 790 glsl 0;
#X obj 78 339 glsl_vertex;
#X msg 32 338 print;
#X obj 78 626 glsl_program;
#X obj 163 555 pack 0 0;
#X msg 30 476 print;
#X obj 163 511 change;
#X obj 150 358 change;
#X msg 163 579 link \$1 \$2;
#X msg 32 620 print;
#X obj 77 490 glsl_fragment;
#X floatatom 163 535 2 0 0 0 ID - -;
#X floatatom 150 381 2 0 0 0 ID - -;
#X obj 181 600 print linking;
#X obj 15 21 inlet;
#X obj 78 662 outlet;
#X obj 577 95 inlet;
#X obj 15 44 route bang;
#X obj 255 11 gemhead 1;
#X msg 255 33 1;
#X obj 255 57 change;
#X obj 255 81 t b;
#X obj 157 647 change;
#X obj 157 668 t b;
#X obj 158 690 outlet;
#X obj 90 426 symbol;
#X obj 90 401 t b;
#X msg 287 598 0;
#X obj 15 65 t b b b;
#X msg 118 307 open panoramique.vert;
#X msg 90 453 open panoramique.frag;
#X connect 0 0 9 0;
#X connect 0 1 6 0;
#X connect 1 0 0 0;
#X connect 2 0 14 0;
#X connect 2 1 21 0;
#X connect 3 0 7 0;
#X connect 4 0 9 0;
#X connect 5 0 10 0;
#X connect 6 0 11 0;
#X connect 6 0 25 0;
#X connect 7 0 2 0;
#X connect 7 0 12 0;
#X connect 8 0 2 0;
#X connect 9 0 2 0;
#X connect 9 1 5 0;
#X connect 10 0 3 0;
#X connect 11 0 3 1;
#X connect 13 0 16 0;
#X connect 15 0 2 0;
#X connect 16 0 27 0;
#X connect 16 1 0 0;
#X connect 17 0 18 0;
#X connect 18 0 19 0;
#X connect 19 0 20 0;
#X connect 20 0 28 0;
#X connect 21 0 22 0;
#X connect 22 0 23 0;
#X connect 24 0 29 0;
#X connect 25 0 24 0;
#X connect 26 0 21 0;
#X connect 27 0 10 0;
#X connect 27 1 28 0;
#X connect 27 2 26 0;
#X connect 28 0 0 0;
#X connect 29 0 9 0;
#X restore 353 183 pd glsl;
#X obj 368 246 loadbang;
#X obj 353 289 pix_image;
#X msg 367 378 rectangle 1;
#X obj 367 359 loadbang;
#X obj 353 318 pix_info 0 0 0;
#X msg 431 144 sizeX \$1;
#X msg 446 170 sizeY \$1;
#X obj 552 407 pix_texture;
#X obj 561 167 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#N canvas 38 51 792 790 glsl 0;
#X obj 78 339 glsl_vertex;
#X msg 32 338 print;
#X obj 78 626 glsl_program;
#X obj 163 555 pack 0 0;
#X msg 30 476 print;
#X obj 163 511 change;
#X obj 150 358 change;
#X msg 163 579 link \$1 \$2;
#X msg 32 620 print;
#X obj 77 490 glsl_fragment;
#X floatatom 163 535 2 0 0 0 ID - -;
#X floatatom 150 381 2 0 0 0 ID - -;
#X obj 181 600 print linking;
#X obj 15 21 inlet;
#X obj 78 662 outlet;
#X obj 577 95 inlet;
#X obj 15 44 route bang;
#X obj 255 11 gemhead 1;
#X msg 255 33 1;
#X obj 255 57 change;
#X obj 255 81 t b;
#X obj 157 647 change;
#X obj 157 668 t b;
#X obj 158 690 outlet;
#X obj 90 426 symbol;
#X obj 90 401 t b;
#X msg 287 598 0;
#X obj 15 65 t b b b;
#X msg 118 307 open panoramique.vert;
#X msg 90 453 open panoramique.frag;
#X connect 0 0 9 0;
#X connect 0 1 6 0;
#X connect 1 0 0 0;
#X connect 2 0 14 0;
#X connect 2 1 21 0;
#X connect 3 0 7 0;
#X connect 4 0 9 0;
#X connect 5 0 10 0;
#X connect 6 0 11 0;
#X connect 6 0 25 0;
#X connect 7 0 2 0;
#X connect 7 0 12 0;
#X connect 8 0 2 0;
#X connect 9 0 2 0;
#X connect 9 1 5 0;
#X connect 10 0 3 0;
#X connect 11 0 3 1;
#X connect 13 0 16 0;
#X connect 15 0 2 0;
#X connect 16 0 27 0;
#X connect 16 1 0 0;
#X connect 17 0 18 0;
#X connect 18 0 19 0;
#X connect 19 0 20 0;
#X connect 20 0 28 0;
#X connect 21 0 22 0;
#X connect 22 0 23 0;
#X connect 24 0 29 0;
#X connect 25 0 24 0;
#X connect 26 0 21 0;
#X connect 27 0 10 0;
#X connect 27 1 28 0;
#X connect 27 2 26 0;
#X connect 28 0 0 0;
#X connect 29 0 9 0;
#X restore 552 184 pd glsl;
#X obj 567 247 loadbang;
#X obj 552 290 pix_image;
#X msg 566 379 rectangle 1;
#X obj 566 360 loadbang;
#X obj 552 319 pix_info 0 0 0;
#X msg 614 148 sizeX \$1;
#X msg 633 166 sizeY \$1;
#X obj 160 427 translateXYZ -3 0 0;
#X obj 352 426 translateXYZ -1 0 0;
#X obj 551 427 translateXYZ 1 0 0;
#X obj 747 408 pix_texture;
#X obj 756 168 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#N canvas 38 51 792 790 glsl 0;
#X obj 78 339 glsl_vertex;
#X msg 32 338 print;
#X obj 78 626 glsl_program;
#X obj 163 555 pack 0 0;
#X msg 30 476 print;
#X obj 163 511 change;
#X obj 150 358 change;
#X msg 163 579 link \$1 \$2;
#X msg 32 620 print;
#X obj 77 490 glsl_fragment;
#X floatatom 163 535 2 0 0 0 ID - -;
#X floatatom 150 381 2 0 0 0 ID - -;
#X obj 181 600 print linking;
#X obj 15 21 inlet;
#X obj 78 662 outlet;
#X obj 577 95 inlet;
#X obj 15 44 route bang;
#X obj 255 11 gemhead 1;
#X msg 255 33 1;
#X obj 255 57 change;
#X obj 255 81 t b;
#X obj 157 647 change;
#X obj 157 668 t b;
#X obj 158 690 outlet;
#X obj 90 426 symbol;
#X obj 90 401 t b;
#X msg 287 598 0;
#X obj 15 65 t b b b;
#X msg 118 307 open panoramique.vert;
#X msg 90 452 open panoramique.frag;
#X connect 0 0 9 0;
#X connect 0 1 6 0;
#X connect 1 0 0 0;
#X connect 2 0 14 0;
#X connect 2 1 21 0;
#X connect 3 0 7 0;
#X connect 4 0 9 0;
#X connect 5 0 10 0;
#X connect 6 0 11 0;
#X connect 6 0 25 0;
#X connect 7 0 2 0;
#X connect 7 0 12 0;
#X connect 8 0 2 0;
#X connect 9 0 2 0;
#X connect 9 1 5 0;
#X connect 10 0 3 0;
#X connect 11 0 3 1;
#X connect 13 0 16 0;
#X connect 15 0 2 0;
#X connect 16 0 27 0;
#X connect 16 1 0 0;
#X connect 17 0 18 0;
#X connect 18 0 19 0;
#X connect 19 0 20 0;
#X connect 20 0 28 0;
#X connect 21 0 22 0;
#X connect 22 0 23 0;
#X connect 24 0 29 0;
#X connect 25 0 24 0;
#X connect 26 0 21 0;
#X connect 27 0 10 0;
#X connect 27 1 28 0;
#X connect 27 2 26 0;
#X connect 28 0 0 0;
#X connect 29 0 9 0;
#X restore 747 185 pd glsl;
#X obj 762 248 loadbang;
#X obj 747 291 pix_image;
#X msg 761 380 rectangle 1;
#X obj 761 361 loadbang;
#X obj 747 320 pix_info 0 0 0;
#X msg 825 146 sizeX \$1;
#X msg 840 172 sizeY \$1;
#X obj 746 428 translateXYZ 3 0 0;
#X floatatom 199 68 5 0 0 0 - - -;
#X msg 199 87 dZ \$1;
#X obj 17 430 s shaders;
#X obj 206 205 s init_shader;
#X obj 399 204 s init_shader;
#X obj 600 204 s init_shader;
#X obj 794 206 s init_shader;
#X obj 399 124 r shaders;
#X obj 598 126 r shaders;
#X obj 793 127 r shaders;
#X obj 160 506 rectangle 1 0.75;
#X obj 352 507 rectangle 1 0.75;
#X obj 551 508 rectangle 1 0.75;
#X obj 746 509 rectangle 1 0.75;
#X obj 160 463 translateXYZ 0 0 0;
#X obj 201 446 nbx 5 14 -1e+37 1e+37 0 1 empty empty empty 0 -8 0 10
-262144 -1 -1 0.12 256;
#X obj 259 446 nbx 5 14 -1e+37 1e+37 0 1 empty empty empty 0 -8 0 10
-262144 -1 -1 -0.06 256;
#X obj 352 465 translateXYZ 0 0 0;
#X obj 393 448 nbx 5 14 -1e+37 1e+37 0 1 empty empty empty 0 -8 0 10
-262144 -1 -1 0 256;
#X obj 451 448 nbx 5 14 -1e+37 1e+37 0 1 empty empty empty 0 -8 0 10
-262144 -1 -1 0 256;
#X obj 551 466 translateXYZ 0 0 0;
#X obj 592 449 nbx 5 14 -1e+37 1e+37 0 1 empty empty empty 0 -8 0 10
-262144 -1 -1 -0.11 256;
#X obj 650 449 nbx 5 14 -1e+37 1e+37 0 1 empty empty empty 0 -8 0 10
-262144 -1 -1 -0.03 256;
#X obj 746 465 translateXYZ 0 0 0;
#X obj 787 448 nbx 5 14 -1e+37 1e+37 0 1 empty empty empty 0 -8 0 10
-262144 -1 -1 -0.18 256;
#X obj 845 448 nbx 5 14 -1e+37 1e+37 0 1 empty empty empty 0 -8 0 10
-262144 -1 -1 -0.05 256;
#X obj 160 -30 gemhead 10;
#X obj 353 -29 gemhead 20;
#X obj 552 -28 gemhead 30;
#X obj 747 -27 gemhead 40;
#X obj 160 104 alpha;
#X obj 353 103 alpha;
#X obj 552 99 alpha;
#X obj 747 102 alpha;
#X msg 256 113 ShadeL \$1;
#X obj 199 25 r init_shader;
#X obj 256 92 nbx 5 14 -1e+37 1e+37 0 1 empty empty empty 0 -8 0 10
-262144 -1 -1 0 256;
#X msg 447 93 ShadeL \$1;
#X obj 447 72 nbx 5 14 -1e+37 1e+37 0 1 empty empty empty 0 -8 0 10
-262144 -1 -1 39 256;
#X msg 634 95 ShadeL \$1;
#X obj 634 74 nbx 5 14 -1e+37 1e+37 0 1 empty empty empty 0 -8 0 10
-262144 -1 -1 35 256;
#X msg 831 93 ShadeL \$1;
#X obj 831 72 nbx 5 14 -1e+37 1e+37 0 1 empty empty empty 0 -8 0 10
-262144 -1 -1 23 256;
#X msg 212 486 -1;
#X msg 269 485 -0.75;
#X text 163 486 invert;
#X msg 406 485 -1;
#X msg 463 484 -0.75;
#X text 357 485 invert;
#X msg 605 488 -1;
#X msg 662 487 -0.75;
#X text 556 488 invert;
#X msg 800 489 -1;
#X msg 857 488 -0.75;
#X text 751 489 invert;
#X obj 17 218 gemwin;
#X obj 37 168 loadbang;
#X obj 160 -8 scaleXYZ 4 4 1;
#X obj 353 -8 scaleXYZ 4 4 1;
#X obj 552 -4 scaleXYZ 4 4 1;
#X obj 747 -5 scaleXYZ 4 4 1;
#X text 21 548 This patch allow multiples images to be assembled in
order to create a panoramic image.;
#X text 20 575 A shader distord the image to correct distance distortion
\, and allow a fade between 2 images;
#X text 17 602 "dz" depend on the angles between images.;
#X text 462 579 copyright cyrille Henry and iem.;
#X text 463 596 This development was supported by the COMEDIA project
;
#X floatatom 18 354 5 0 0 0 - - -;
#X msg 18 373 dZ \$1;
#X obj 18 311 r init_shader;
#X msg 18 333 1.62;
#X msg 199 47 1.38;
#X msg 37 192 dimen 1024 256;
#X msg 177 264 thread 0 \, open cam1.jpg;
#X msg 370 265 thread 0 \, open cam2.jpg;
#X msg 569 266 thread 0 \, open cam3.jpg;
#X msg 764 267 thread 0 \, open cam4.jpg;
#X connect 0 0 101 0;
#X connect 1 0 101 0;
#X connect 2 0 32 0;
#X connect 3 0 4 0;
#X connect 4 0 6 0;
#X connect 4 1 49 0;
#X connect 4 1 82 0;
#X connect 5 0 118 0;
#X connect 6 0 9 0;
#X connect 7 0 2 0;
#X connect 8 0 7 0;
#X connect 9 0 2 0;
#X connect 9 1 10 0;
#X connect 9 2 11 0;
#X connect 10 0 4 1;
#X connect 11 0 4 1;
#X connect 12 0 33 0;
#X connect 13 0 14 0;
#X connect 14 0 16 0;
#X connect 14 1 50 0;
#X connect 14 1 84 0;
#X connect 15 0 119 0;
#X connect 16 0 19 0;
#X connect 17 0 12 0;
#X connect 18 0 17 0;
#X connect 19 0 12 0;
#X connect 19 1 20 0;
#X connect 19 2 21 0;
#X connect 20 0 14 1;
#X connect 21 0 14 1;
#X connect 22 0 34 0;
#X connect 23 0 24 0;
#X connect 24 0 26 0;
#X connect 24 1 51 0;
#X connect 24 1 86 0;
#X connect 25 0 120 0;
#X connect 26 0 29 0;
#X connect 27 0 22 0;
#X connect 28 0 27 0;
#X connect 29 0 22 0;
#X connect 29 1 30 0;
#X connect 29 2 31 0;
#X connect 30 0 24 1;
#X connect 31 0 24 1;
#X connect 32 0 60 0;
#X connect 33 0 63 0;
#X connect 34 0 66 0;
#X connect 35 0 45 0;
#X connect 36 0 37 0;
#X connect 37 0 39 0;
#X connect 37 1 52 0;
#X connect 37 1 88 0;
#X connect 38 0 121 0;
#X connect 39 0 42 0;
#X connect 40 0 35 0;
#X connect 41 0 40 0;
#X connect 42 0 35 0;
#X connect 42 1 43 0;
#X connect 42 2 44 0;
#X connect 43 0 37 1;
#X connect 44 0 37 1;
#X connect 45 0 69 0;
#X connect 46 0 47 0;
#X connect 47 0 4 1;
#X connect 53 0 14 1;
#X connect 54 0 24 1;
#X connect 55 0 37 1;
#X connect 60 0 56 0;
#X connect 61 0 60 1;
#X connect 62 0 60 2;
#X connect 63 0 57 0;
#X connect 64 0 63 1;
#X connect 65 0 63 2;
#X connect 66 0 58 0;
#X connect 67 0 66 1;
#X connect 68 0 66 2;
#X connect 69 0 59 0;
#X connect 70 0 69 1;
#X connect 71 0 69 2;
#X connect 72 0 103 0;
#X connect 73 0 104 0;
#X connect 74 0 105 0;
#X connect 75 0 106 0;
#X connect 76 0 4 0;
#X connect 77 0 14 0;
#X connect 78 0 24 0;
#X connect 79 0 37 0;
#X connect 80 0 4 1;
#X connect 81 0 116 0;
#X connect 82 0 80 0;
#X connect 83 0 14 1;
#X connect 84 0 83 0;
#X connect 85 0 24 1;
#X connect 86 0 85 0;
#X connect 87 0 37 1;
#X connect 88 0 87 0;
#X connect 89 0 56 1;
#X connect 90 0 56 2;
#X connect 92 0 57 1;
#X connect 93 0 57 2;
#X connect 95 0 58 1;
#X connect 96 0 58 2;
#X connect 98 0 59 1;
#X connect 99 0 59 2;
#X connect 102 0 117 0;
#X connect 103 0 76 0;
#X connect 104 0 77 0;
#X connect 105 0 78 0;
#X connect 106 0 79 0;
#X connect 112 0 113 0;
#X connect 113 0 48 0;
#X connect 114 0 115 0;
#X connect 115 0 112 0;
#X connect 116 0 46 0;
#X connect 117 0 101 0;
#X connect 118 0 6 0;
#X connect 119 0 16 0;
#X connect 120 0 26 0;
#X connect 121 0 39 0;