[GEM-dev] gem port to opengl-es - initial developments..

dmotd inaudible at simplesuperlativ.es
Fri Feb 3 09:32:46 CET 2012


i have [random] colour cycling the gemwin.. 

[color $1 $2 $3(--->[gemwin] 

so we have a render context albeit a pretty rudimentary one.

i think i could watch it for hours ;)

i am however getting a repeated "invalid enumeration" error.. not sure
where that's from but it doesn't seem to effect operation, then again
there's no objects in the rendering chain.. it must be somewhere in the
rendering context though or else it would be cleared.

i guess i better add some primitives then... 


On Thu, 2012-02-02 at 03:30 +1000, dmotd wrote:
> hi gem folks,
> 
> i've had a bit of free time to begin porting gem to opengl-es. 
> 
> i'm building and testing with a nokia-n900/RX51 tablet - a debian based
> arm arch which supports both opengl-es 1.1 common and opengl-es 2.0.
> 
> initial hacking is concentrated on opengl-es 1.1, which is generally
> compatible to the opengl 1.0 spec. opengl-es 2.0 uses shaders to replace
> fixed functions so there is a lot more work involved in replacing core
> gem functions.
> 
> i'm using the egl spec for windowing/surface/buffer support, it is cross
> platform (although afaik apple uses its own modification 'aegl'). it
> provides basic functionality for reading and writing gl functions to
> buffer (along the lines of glx), and like glx still relies on operating
> system apis to supply other interfaces (keyboard / mouse etc).
> 
> so far: 
> --
> cloned gem git, checkout 0.93 tag, created es branch.
> 
> using glues for basic (incomplete) glu functionality
> 
> using libglutes for basic (incomplete) glut functionality 
> 
> added additional autoconf tricks to find and test libraries
> 
> merged the latest git ES branch of GLEW which has experimental support
> for GLES/EGL 
> 
> added egl drop in for GemWinCreate
> 
> successful build against pd-0.43 using enable-Controls and others
> disabled.
> --
> 
> reports: 
> --
> libxxf86vm doesn't seem to work properly on the tablet, so for the time
> being the window modelines are hard coded. there are some other window
> manager hints that are specific to the device too.
> 
> gemwin successfully creates the egl window buffer and rendering context.
> 
> gem crashes when glClearDepthf and glFrustumf are called (both are
> floating-point variations to the base GL functions and part of the GL-ES
> spec). furthermore looking at the output of 'nm -C Gem.pd_linux' shows
> that these functions are not present in the compiled lib, what does this
> mean?
> 
> commenting these functions out allows the gemwin to complete init and
> create successfully. a call to render causes a crash somewhere in the
> rendering chain (GemMan::render), but i have had little success
> debugging this issue.
> --
> 
> notes:
> --
> i'm developing with an eye on the raspberry pi project which should
> bring affordable opengl-es architecture to a small form factor, perfect
> for installations of (audio)visual artwork - but there's no reason why
> any recent (jailbroken) mobile/tablet technologies wouldn't be
> applicable for creative repurposing. 
> 
> before anyone get's excited, the apple 'app store' is still afaik not
> compatible with gpl code, so it is unlikely there will be a 'rjdj' style
> app using gem, or likewise any gem based vj app, i don't think the same
> can be said for google's android platform, but i'm not a user or
> developer of said platform (or the fruit for that matter).
> 
> i am coding on a linux-amd64 pc, cross-compiling in scratchbox and
> testing on the device, using git/scp as a go-between.. this is a bit
> cumbersome/inefficient - can anyone suggest a virtual machine image
> (linux based) that provides a graphical gl-es environment and a minimal
> editor/ide to build and test with? 
> --
> 
> i'll keep everyone up to speed as i make developments, and if anyone can
> replicate my dev environment and wants to contribute i'll happily push
> to a public git sooner rather than later.
> 
> cheers,
> dmotd
> 
> 
> _______________________________________________
> GEM-dev mailing list
> GEM-dev at iem.at
> http://lists.puredata.info/listinfo/gem-dev





More information about the GEM-dev mailing list