aboutsummaryrefslogtreecommitdiff
path: root/Gem/examples/14.multiple_windows
diff options
context:
space:
mode:
Diffstat (limited to 'Gem/examples/14.multiple_windows')
-rw-r--r--Gem/examples/14.multiple_windows/01.basic_example.pd29
-rw-r--r--Gem/examples/14.multiple_windows/02.switch_context.pd28
-rw-r--r--Gem/examples/14.multiple_windows/03.texture_sharing.pd38
3 files changed, 95 insertions, 0 deletions
diff --git a/Gem/examples/14.multiple_windows/01.basic_example.pd b/Gem/examples/14.multiple_windows/01.basic_example.pd
new file mode 100644
index 0000000..078ca67
--- /dev/null
+++ b/Gem/examples/14.multiple_windows/01.basic_example.pd
@@ -0,0 +1,29 @@
+#N canvas 602 711 828 296 10;
+#X obj 88 241 gemwin 20 a;
+#X obj 295 79 square;
+#X obj 295 49 color 1 0 0 1;
+#X obj 94 77 square;
+#X obj 94 47 color 0 0 1 1;
+#X obj 94 25 gemhead a;
+#X msg 88 199 title a \, create \, 1;
+#X msg 268 199 title b \, create \, 1;
+#X obj 223 158 b;
+#X obj 223 138 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
+-1 -1;
+#X text 240 136 create window;
+#X text 405 85 You can have multiple window and display diffenrents
+things on each.;
+#X obj 268 241 gemwin 20 b;
+#X text 405 119 Basically \, use [gemwin fps context_name] to create
+a named context then use [gemhead context_name] to render to this context
+only.;
+#X obj 295 27 gemhead b;
+#X connect 2 0 1 0;
+#X connect 4 0 3 0;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 7 0 12 0;
+#X connect 8 0 6 0;
+#X connect 8 0 7 0;
+#X connect 9 0 8 0;
+#X connect 14 0 2 0;
diff --git a/Gem/examples/14.multiple_windows/02.switch_context.pd b/Gem/examples/14.multiple_windows/02.switch_context.pd
new file mode 100644
index 0000000..ac8f1c3
--- /dev/null
+++ b/Gem/examples/14.multiple_windows/02.switch_context.pd
@@ -0,0 +1,28 @@
+#N canvas 625 735 655 237 10;
+#X obj 33 129 gemwin 20 a;
+#X obj 396 181 square;
+#X obj 396 159 color 0 0 1 1;
+#X msg 33 87 title a \, create \, 1;
+#X obj 168 46 b;
+#X obj 168 26 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
+-1;
+#X obj 168 129 gemwin 20 b;
+#X obj 396 137 gemhead a;
+#X msg 466 52 context b;
+#X msg 396 52 context a;
+#X text 185 24 1 create windows;
+#X text 411 24 2 switch between rendering context;
+#X msg 475 106 set \$1;
+#X floatatom 475 88 5 0 0 0 - - -, f 5;
+#X msg 168 87 title b \, create \, 1 \, view 1 1 6;
+#X connect 2 0 1 0;
+#X connect 3 0 0 0;
+#X connect 4 0 3 0;
+#X connect 4 0 14 0;
+#X connect 5 0 4 0;
+#X connect 7 0 2 0;
+#X connect 8 0 7 0;
+#X connect 9 0 7 0;
+#X connect 12 0 7 0;
+#X connect 13 0 12 0;
+#X connect 14 0 6 0;
diff --git a/Gem/examples/14.multiple_windows/03.texture_sharing.pd b/Gem/examples/14.multiple_windows/03.texture_sharing.pd
new file mode 100644
index 0000000..6c5fd71
--- /dev/null
+++ b/Gem/examples/14.multiple_windows/03.texture_sharing.pd
@@ -0,0 +1,38 @@
+#N canvas 224 736 1147 233 10;
+#X obj 33 169 gemwin 20 a;
+#X obj 396 181 square;
+#X msg 33 87 title a \, create \, 1;
+#X obj 168 46 b;
+#X obj 168 26 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
+-1;
+#X obj 396 37 gemhead a;
+#X text 185 24 1 create windows;
+#X obj 396 104 pix_texture;
+#X obj 596 181 square;
+#X obj 596 155 pix_texture;
+#X obj 396 72 pix_image ../data/fractal.JPG;
+#X obj 596 59 translateXYZ 2 0 0;
+#X obj 596 37 gemhead b;
+#X msg 168 87 title b \, create \, 1;
+#X obj 168 169 gemwin 20 b;
+#X msg 596 4 context a;
+#X msg 669 4 context b;
+#X msg 90 118 destroy;
+#X text 729 90 on Linux \, this is only supported by [gemglxwindow]
+and [gemglutwindow].;
+#X connect 2 0 0 0;
+#X connect 3 0 2 0;
+#X connect 3 0 13 0;
+#X connect 4 0 3 0;
+#X connect 5 0 10 0;
+#X connect 7 0 1 0;
+#X connect 7 1 9 1;
+#X connect 9 0 8 0;
+#X connect 10 0 7 0;
+#X connect 11 0 9 0;
+#X connect 12 0 11 0;
+#X connect 13 0 14 0;
+#X connect 15 0 12 0;
+#X connect 16 0 12 0;
+#X connect 17 0 14 0;
+#X connect 17 0 0 0;