I'm pretty determined to work through this! :-)

I thought I'd write a workaround to keep this conversation moving: My plan was to write the video to a buffer with [pix_buffer], then read one frame later and apply [pix_rtx]. I've done this workaround before for similar situations.

But I got stuck before I even got to [pix_rtx]. Please see the attached patch.

In the patch you'll see 3 toggles, all of which I would have expected to show a rotated image textured onto a rectangle. Only one of them does. They are numbered right to left.

Box 1 shows the output of [pix_buffer_write]. That shows a rotated image. Fine so far.

Box 2 shows the output of [rotateXYZ] before [pix_buffer_write]. That shows a rotated white box with no image textured. Why?

Box 3 shows the output of [pix_buffer_read]. That shows an image but no rotation. Why? This one is especially troublesome to me.

I'm trying to make my questions as specific as possible. Please understand I have looked at plenty of examples of [rotateXYZ] and I understand the object and have made full use of it. And I have previously read about [pix_separator] and know the archives that refer to it. There's something else going on here about dataflow with Gem that I don't get. I can make up 10 other examples with 10 other objects if I have to.

-John

John Harrison wrote:
Thanks Hans. I know the example patch already and I have [pix_rtx] working fine inasfar as I can get it to do what the example patch already shows. I think my question is more about data flow and Gem. My patch and [pix_rtx} are just an example of a more basic misunderstanding I believe I have which has not been cleared up despite many hours of work in Gem.

Could somebody explain to me my [pix_rtx] in my example patch appears to be processed before the rotation instead of after?

-John

On Tue, Mar 24, 2009 at 9:33 PM, Hans-Christoph Steiner <h...@eds.org <mailto:h...@eds.org>> wrote:


    I think this is an appropriate place to discuss gem.  In the Help
    browser, check out:

    examples -> Gem -> 04.video -> 04.videoRTX.pd

    I had to do some trickery to get it working OK.  Check the
    archives for details, I remember some discussion about all the
    separators.

    .hc


    On Mar 24, 2009, at 3:35 PM, John Harrison wrote:

        Attached is a small example patch of how I just don't get
        Gem...still...

        [pix_rtx] has a steady wave that normally flows from left to
        right.

        I would have thought that the attached patch shows me rotating
        the image first, then applying [pix_rtx]. So it would stand to
        reason in my mind I would see a rotated image with [pix_rtx]
        flowing from left to right.

        But that isn't the result I see. The patch has [pix_rtx]
        flowing from right to left now. It is as if [pix_rtx] is
        applied *before* the rotation instead of *after* as I would
        have expected.

        Grasping at straws, I have tried [pix_separator] between just
        about every object, but that makes no difference.

        What am I misunderstanding that makes the behavior of the
        patch make sense? And...how would I get [pix_rtx] to flow from
        left to right on a mirrored image?

        -John

        P.S. Are questions like this better on the Gem-dev list?
        That's a developer list but at the same time I feel a bit
        awkward putting too many Gem questions on a Pd list

        #N canvas 962 171 305 227 10;
        #X obj 29 -58 gemhead;
        #X obj 29 -35 pix_video;
        #X obj 29 44 pix_texture;
        #X obj 28 72 rectangle 4 3;
        #X obj 159 9 gemwin;
        #X msg 136 -34 create \, 1;
        #X msg 214 -33 destroy;
        #X obj 135 -57 loadbang;
        #X obj 29 17 pix_rtx;
        #X obj 29 -10 rotateXYZ 0 180 0;
        #X connect 0 0 1 0;
        #X connect 1 0 9 0;
        #X connect 2 0 3 0;
        #X connect 5 0 4 0;
        #X connect 6 0 4 0;
        #X connect 7 0 5 0;
        #X connect 8 0 2 0;
        #X connect 9 0 8 0;
        _______________________________________________
        Pd-list@iem.at <mailto:Pd-list@iem.at> mailing list
        UNSUBSCRIBE and account-management ->
        http://lists.puredata.info/listinfo/pd-list




    ----------------------------------------------------------------------------

    There is no way to peace, peace is the way.       -A.J. Muste




--
John Harrison
http://alumni.media.mit.edu/~harrison


#N canvas 373 161 758 508 10;
#X obj 472 38 gemhead;
#X obj 472 61 pix_video;
#X obj 59 322 pix_texture;
#X obj 59 352 rectangle 4 3;
#X obj 48 12 gemwin;
#X msg 25 -31 create \, 1;
#X msg 103 -30 destroy;
#X obj 24 -54 loadbang;
#X obj 625 -6 + 1;
#X floatatom 649 60 5 0 0 0 - - -;
#X floatatom 369 111 5 0 0 0 - - -;
#X obj 27 47 pix_buffer depot 3;
#X obj 370 83 % 3;
#X obj 625 21 % 3;
#X obj 506 123 pix_buffer_write depot;
#X obj 238 135 pix_buffer_read depot;
#X obj 369 32 int 0;
#X obj 414 -1 t b b;
#X obj 408 -51 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 237 106 gemhead;
#X obj 441 -55 loadbang;
#X floatatom 555 46 5 0 0 0 - - -;
#X obj 413 -26 metro 50;
#X obj 370 56 + 1;
#X obj 625 -29 int 1;
#X obj 61 289 spigot 0;
#X obj 531 227 spigot 0;
#X obj 235 347 spigot 0;
#X obj 281 324 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 105 263 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 584 201 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 504 88 rotateXYZ 60 60 0;
#X text 609 200 1 expected behavior;
#X text 302 326 2 no image;
#X text 130 258 3 no rotation;
#X obj 235 304 pix_separator;
#X connect 0 0 1 0;
#X connect 1 0 31 0;
#X connect 2 0 3 0;
#X connect 5 0 4 0;
#X connect 6 0 4 0;
#X connect 7 0 5 0;
#X connect 8 0 13 0;
#X connect 12 0 10 0;
#X connect 12 0 15 1;
#X connect 12 0 16 1;
#X connect 13 0 9 0;
#X connect 13 0 14 1;
#X connect 13 0 24 1;
#X connect 14 0 26 0;
#X connect 15 0 25 0;
#X connect 16 0 23 0;
#X connect 17 0 16 0;
#X connect 17 1 24 0;
#X connect 18 0 22 0;
#X connect 19 0 15 0;
#X connect 20 0 18 0;
#X connect 21 0 31 2;
#X connect 21 0 31 1;
#X connect 21 0 31 3;
#X connect 22 0 17 0;
#X connect 23 0 12 0;
#X connect 24 0 8 0;
#X connect 25 0 2 0;
#X connect 26 0 2 0;
#X connect 27 0 2 0;
#X connect 28 0 27 1;
#X connect 29 0 25 1;
#X connect 30 0 26 1;
#X connect 31 0 14 0;
#X connect 31 0 35 0;
#X connect 35 0 27 0;
_______________________________________________
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management -> 
http://lists.puredata.info/listinfo/pd-list

Reply via email to