[PD-dev] gem & 3dp/pf/pdp/pidip
Tom Schouten
doelie at zzz.kotnet.org
Wed Sep 8 22:08:24 CEST 2004
On Wed, Sep 08, 2004 at 03:40:49PM -0400, James Tittle II wrote:
> On Sep 8, 2004, at 2:51 PM, Tom Schouten wrote:
> >
> >i'm not sure which object you mean here.
>
> ...I'd guess pdp2gem/gem2pdp, which have worked in the past...
ok. of course. i was thinking about an internal gem object.
i plan to use yves' object as a template because it already solves
most gem<->pdp interface and build problems.
> they're
> slow, due to the "copy planar YUV to RGB or vice versa"
> loops...
yes. and the gem2pdp bridge uses glReadPixels, which is i think
slow for almost all video cards/drivers..
> something I've been meaning to look into would be adding
> support for just planar YUV to YUV 4:2:2, or also allowing straight
> planar YUV copies (there's recently been a planar YUV quicktime codec
> released 3rd party, IIRC)...
>
you mean as a pix buffer, or a texture?
> >what exactly is passed from one gem object to the next, looking from
> >the outside (i.e. pd messages)
>
> ...GemState is passed, which includes flags for dirty states,
> displaylists, lighting, smoothing, texture mapping, etc...and of course
> now vertex array versions of the similar...
>
so, basicly, if i wrap the gemstate object, i should be able to get
to everything. i think this might be what i'm looking for.
> >suppose i do this: just echo the render message and pass it on,
> >and then execute some direct GL code before passing it:
> >
> >[gem...]
> >|
> >[3dp ...]
> >|
> >[gem...]
> >
> >so if the 3dp object would echo anything that comes in,
> >but use the message just as a synchronization for when to
> >execute the GL code, would this work?
>
> ...seems like a place to start!
>
perfect.
> >one thing i don't understand is wether gem 'compiles' a pd network
> >into some other structure where a sequence of functions are executed,
> >or if the drawing happens at the moment the 'context' comes in the
> >left inlet.
>
> ...I don't think it's that complex, yet :-)
>
ok.
> >> I suppose you could
> >>insert other types of viewport, lighting and texture manipulation
> >>objects into the chain, but GEM has all of the basics covered.
> >
> >yes. this is supposed to be an addition, not a replacement.
> >
> >the thing i'm most interested in, is to keep one of the two (gem
> >or pdp) as the master 'sequencer', and plug in objects from the other
> >in the render chain. doing this with gem as the master seems easier
> >atm. i don't think it will be easy for 3dp objects to feed the
> >necessary
> >context to gem objects.
>
> ...the gemhead basically allows for sequencing the order of gl
> operations: don't forget that each gemhead can have a different
> "priority" via [set $1<, with 1 being highest priority and default
> being 50...so it sends out a render GemState for every [frame $1< slice
> (ie. fps)...I'd think the important files to check out are GemState.h
> and GemMan.h/GemMan.cpp...
>
thanks. this should keep me budy for a while.
> >so, where do i start? gem 0.90, cvs, some branch?
> >i tried gem cvs yesterday but the default branch did not compile..
>
> ...what platform were you trying?
linux.
> CVS head is slightly garbled atm,
> because of an accidental (yet unfortunately incomplete) commit of some
> vertex array stuff...I'd try again with the "vertex_array" tag, tho it
> also has it's problems (osx project files aren't up-to-date plus it was
> merged from a not-quite-up-to-date HEAD)...
>
hmm. maybe it's a better idea if i use the stable version of GEM,
(which is 0.90, right?)
so it can be tested by more people. i don't think i can get this right and
forget about it in a couple of hours, so it would be best to aim at
easy testability instead of hot features for now.
> hop on board! I know I'm following what you're doing with
> pf/pdp/whatever!
>
thanks :)
tom
More information about the Pd-dev
mailing list