Vincent Opengl-es


slygamer

Active Member
Joined
Sep 19, 2005
Messages
795
Location
Brisbane, Australia
Website
Visit site
I have tried porting Vincent OpenGL-ES to the GP2X, and have had some success.

vincent.png
The Dodge Viper from the example code supplied with Vincent.

It runs quite slowly (I'd guess at about 3-4fps), the texturing is not right, and the original code is the most horrid abuse of C++ I have ever seen. If I was to do OpenGL-ES properly on the GP2X, I would start from scratch in plain C.
 
OpenGL is a 3D engine used by SDL, which would be quite nice to see ported to the GP2X because it would make porting nice 3D games a whole lot easier.

EDIT: used by -> that uses
EDIT: that uses -> used by
 
No SDL used at all. SDL on other platforms can use OpenGL for 3D. OpenGL-ES is a subset of OpenGL designed for embedded systems.

I use Rlyeh's Minimal Library for the interfacing to the GP2X hardware.
 
note that the openGL architecture is a prime example of how to use the second core.

When you're done porting, I might take a look at writing some ASM fillers :)
 
Very impressive so far - Ive been looking at TinyGL/TinySDGL here mentioned on the dev wiki. I think it would be fairly easy and fun to switch it over to fixed point maths which would definatly speed it up. There are two reasons I havent done this already:
1. I've been busy porting LBA "secretly" but ive got bored of that at the moment because yaz0rs code needs a lot of cleaning up and fixing
2. I thought there would be loads of GL/GL-ES compatible libraries by now :)

Has anyone started work on vector and maths library which can run on the second cpu yet?? If not maybe we should start a thread in dev forum to find out what kind of things devs would expect.
 
Deleted User posted on Dec 11 2005 at 10:43 AM said:
really helpful
I though so :D To be a little more specific, I'm sure PSX/N64-level (maybe even Dreamcast) games could be made to run full speed on the GP2X with a good general purpose 3D library.
 
Last edited by a moderator:
Are you using the 2d acceleration to blit the triangles ? I haven't looked , but if the 2d acceleration can texture map triangles too, that would be ace ....

Of course you are now going to tell me there is no h/w accelerated 2d aren't you ..... and its just processing grunt of the 2nd processor :(
 
Lazrhog posted on Dec 11 2005 at 05:08 PM said:
Are you using the 2d acceleration to blit the triangles ? I haven't looked , but if the 2d acceleration can texture map triangles too, that would be ace ....

Of course you are now going to tell me there is no h/w accelerated 2d aren't you ..... and its just processing grunt of the 2nd processor :(

Noway! The 2D accelerate process is different from 2nd processor, I believe.

I have no idea it can texture map triangles or not, though.
 
Last edited by a moderator:
slygamer posted on Dec 11 2005 at 11:50 AM said:
If I was to do OpenGL-ES properly on the GP2X, I would start from scratch in plain C.

well, this is the wy to go. A plain C using the 940 would be fast, efficuent and off da hizzle. . .
 
Last edited by a moderator:
Inopia posted on Dec 11 2005 at 03:45 PM said:
note that the openGL architecture is a prime example of how to use the second core.

Which is exactly what I've spent the past two or three weeks doing :) I haven't been able to get an arm gcc cross compiler to build successfully so I've had to content myself with building up enough OpenGL support to run glQuake successfully. I've still got a fair way to go, but I think I'm making some good progress.

Currently the renderer runs on my pc as a multithreaded application, as soon as I get my arm cross compiler to build (I have submitted both a Gentoo crossdev bug and Open2x tool-chain bug) I'll released a spinning cube demo app or something.

Andrew

Edit: Oh, and it is written from scratch in pure C :p
 
Last edited by a moderator:
andrew_j_w posted on Dec 11 2005 at 08:21 PM said:
Inopia posted on Dec 11 2005 at 03:45 PM said:
note that the openGL architecture is a prime example of how to use the second core.

Which is exactly what I've spent the past two or three weeks doing :) I haven't been able to get an arm gcc cross compiler to build successfully so I've had to content myself with building up enough OpenGL support to run glQuake successfully. I've still got a fair way to go, but I think I'm making some good progress.

Currently the renderer runs on my pc as a multithreaded application, as soon as I get my arm cross compiler to build (I have submitted both a Gentoo crossdev bug and Open2x tool-chain bug) I'll released a spinning cube demo app or something.

Andrew

Edit: Oh, and it is written from scratch in pure C :p

hmmm,, strange, I've succefully built an arm crosscompiler with crossdev on my gentoo amd64..
 
Last edited by a moderator:
The port so far is just a "get it compiling and see if it runs" effort. It has been a two day effort. It does not use the 940T, nor does it use the 2D graphic accelerator.

andrew j w seems to be a lot further ahead with his own implementation. It will be nice to see that in action.

Edit: Dang! Why didn't I find TinyGL earlier? The code is so much simpler than Vincent.
 
Back
Top