Beta Gles Convienience Framework


chris_c

Member
Joined
Jun 25, 2010
Messages
393
Age
56
Certainly for a new user the complexity of egl and on top of that xlib is like looking up at a shear cliff thinking how'm I getting up that before high tide!

While libSDL is tempting, I've encountered HARD lockups from just simple seg faults, far from ideal!
(we can only hope that the next firmware gets a pandora optimised version of sdl - that can be abused without locking the machine!)

This might also be useful for more experienced coders as you can just extract a fresh copy - drop your GLES test code / idea into the render loop and away you go!

Here's whats in the framework so far....

(paste of readme.txt)
This is an initial version - there are a number of things need improving!
I would welcome code contributions.

This frame work intends to hide from the end user the complexity of
both EGL and Xlib.

This way the end user can just drop in their test GLES code into
the main render loop and away...

libSDL had been rejected completely as (with v1.2) I've found it possible
to completely lock up the machine when a vanila seg fault happens... ggrrr


The framework provides a number of routines to make life easier.


int initDisplay();

This sets up GLES creating a fullscreen window and hiding the cursor
etc etc, you should imediatly quit if it does not return 0


GLuint loadImage(const char *filename);

This loads a PNG file and returns a GLES texture name


int* getKeysPointer();
int* getMousePointer();

These get pointers to arrays for mouse and key states mouse[0]/[1] is
the last x,y coordinates mouse[2] is true if the screen is being touched.
The keyboard array is and array of key states corresponding to key states
for example the raw code for the q button is 24, if key[24] is true then
the q key is currently down...


void set3dMode();
void set2dMode();

The framework must be in 2d "mode" to use glPrintf...


void glPrintf(float x, float y,const char *fmt, ...);

This works just like a normal printf except it prints to x,y coordinates
on the screen you can have any number of parameters providing the end
resulting string is less than 255 characters - control characters are
NOT supported.

void setSwapInterval(int iv);
void swapBuffers();

As Egl is hidden from the end user these equivilent routines use the pointers
kept internally so the end user doesn't need to care about them...


void processEvents();

Call this once a frame just to update the mouse and key states from
the xlib event queue


void closeGLES();

Use this to free close down GLES gracefully...
 
authoreyes said:
Any apps/games that currently implement the framework...
...well I just this second finished writing the first version of it... and no one has bothered to download it so what do you think...
 
Last edited by a moderator:
chris_c said:
authoreyes said:
Any apps/games that currently implement the framework...
...well I just this second finished writing the first version of it... and no one has bothered to download it so what do you think...

Wow...ok...and I was supposed to know when you finished it how?

Just lost interest in downloading this...
 
Last edited by a moderator:
Woah. Calm down, give it a go, you've got more chance of using it than me. But I appreciate your work chris_c, anything that can help out and encourage more devs.
 
authoreyes said:
chris_c said:
authoreyes said:
Any apps/games that currently implement the framework...
...well I just this second finished writing the first version of it... and no one has bothered to download it so what do you think...

Wow...ok...and I was supposed to know when you finished it how?

Just lost interest in downloading this...
OH stroll on! if that got your nose out of joint try this - Please don't bother downloading it.

Your initial reaction was great can't wait to leach this into my own code base - not lets take a look at this
and see how I can help improve it for the benefit of others...
 
Last edited by a moderator:
My initial reaction was great??

I was genuinely interested in using your code, which, I would assume you want people to do at some point right? Or is using your precious code leeching it?

All I wanted to know was how you tested this - I am assuming you did, right?

You were the one who threw a hissy fit because no one downloaded your framework.
 
Come on guys, nobody is having hissy fits. Authoreyes: chris_c *just* released this, so no .. there won't be anyone using it yet. Feel free to use it yourself and see if it fits your needs for what you need to do!

From my perspective, this is great! :) I'll be leaching it and using it in my own code soon enough ... well actually I've already got most of this functionality already in Wakebreaker {http://w1xer.at/pandora/} but I'm more than interested in helping get this all smoothed out into a nice library that anyone can use to get their projects started sooner ..

Please guys, calm down. Relax. Enjoy each others work. Authoreyes, it'd be great to hear what you do with this and what you would fix ..
 
well no hissy fit here more than enough people have already downloaded it to make it worthwhile - even if one person finds it useful...

gonna look into integrating this with some of my stuff...
no word of I'll look at it and see if I can contribute something
instead you didn't even bother looking at it and asked a dumb question. And I'm supposed to be over the moon?
 
Gruso said:
Authoreyes gave you a compliment, then asked a perfectly valid question. Why so cranky? Isn't it good that someone is immediately interested in your work?

Returning to what torpor said:

Relax. Enjoy each others work.

:)
no he immediately said he was putting the code in his own framework without hint of helping to improve it for others, and then asked a dumb question to which he could have found the answer for himself...

ornery me? why yes certainly! enjoy....
 
Last edited by a moderator:
chris_c said:
no he immediately said he was putting the code in his own framework without hint of helping to improve it for others, and then asked a dumb question to which he could have found the answer for himself...

ornery me? why yes certainly! enjoy....

Ok -

I apologize to the more rational people here, as I said I was done with this topic, but apparently this person is a little off.

I will recount the events as facts for you, so you can possibly understand something from another point of view. At around 8 pm (you can derive that from my initial post time stamp), I saw your thread. I figured I'd drop in and say good job (big mistake), and, since no one else had said a word to you (I might know why now...), give a friendly nod of encouragement/express interest to in horrifyingly LEECH (spelled like so. Leaching, as you say, is a different concept. You can learn all about it.) your software!!

Now, it may be hard for you to understand this, but not everyone here who can program is here to help your projects (as I see you are advertising it in other threads, yet make me an ego maniac for not wanting to drop everything I am doing and help improve it.) Let me ask you, are you contributing to every tool being developed here? If not, why aren't you helping to make every piece of pandora software better??? I have NO interest in helping you, end of story. Never did. And I am sure there are many others here who, amazingly, have other development interests than encouraging chris_c's dalliances.

And again, if you don't want developers using it, why the hell are you writing it?

Finally, how is asking if you have a test or example app a dumb question? I have no clue when you finished this. Might have been 2 weeks ago and you are just getting around to uploading it. So, again, did you test it? I mean, is it so hard to give a working, example app? When I download SDL, do I get chastised by the developers for asking for sample apps and not contributing back?? Are you contributing back to Linux? OpenOffice? MySql? etc...

You are one arrogant, delusion cat.
 
Last edited by a moderator:
Back
Top