Is Gp2x Really Not Good At 3d?


deepesh

Still Fresh
Joined
Nov 7, 2007
Messages
4
Hi,
I get the impression reading forums that GP2x in not good for 3d as it doesn't provide h/w support for it. I was surprised as after playing duke on gp2x, I thought it must be good at it.
I don't have thorough knowledge on this stuff, but can someone please enlighten.
Deepesh
PS: I hope this is the right forum to post this, but if not please don't kill me.
 
Hi,

Duke3D was in fact an isometric 2D game, like was Doom. The first real 3D FPS was Quake I think, and it runs fine on the GP2X too :)
GP2X can run 3D games, but lacking 3D hardware acceleration, it only relies on software acceleration mode, which is slower and power demanding.

Bye !

Magic Sam
 
And let's not forget Payback, which - at least from the demo vids - looks amazing.

But in terms of being good at doing 3D *easily* (e.g. using OpenGL and having results that don't crawl), no, it's not exactly fantastic.
 
Without any technical explanation, one way to see that 3d is fake in duke is to look upward or downward. Vertical lines stay parallel, which looks wrong.

There is often some confusion about what can / cannot be done in 3D without 3D hardware. To make it simple, the main problem is the polygon rendering engine. Basically, you have a texture, and you want to "morph" it to make it fit to some polygon on your screen.

The 3D hardware does that for you, and it does it immensely faster that the most optimized program running on your main processor.

So, you can code a 3D game on your GP2X, but it involves much more work, and will never, ever match in look and performance even the most basic 3D hardware.

Quake, and Tomb Raider, for example, were coded and optimized to run without 3D hardware. They had their own rendering engine. However, when the first 3D card where released, some patch were released to replace this internal rendering engine with the hardware rendering, and the games instantly looked immensely better.
 
Tobriand said:
And let's not forget Payback, which - at least from the demo vids - looks amazing.

But in terms of being good at doing 3D *easily* (e.g. using OpenGL and having results that don't crawl), no, it's not exactly fantastic.
Ok so it's not easy to do 3D. It's hard for whome?
1) Programmer
2) Device

If it's hard for programmer, I am sure geek souls out there will find a way to wrap the hard bits and make it easy for lesser mortals (and themselves).
If it is hard for Device, why would anyone care as long as it is smooth enough.

Deepesh
 
Last edited by a moderator:
Deepesh Garg said:
If it's hard for programmer, I am sure geek souls out there will find a way to wrap the hard bits and make it easy for lesser mortals (and themselves).
It exists. GPU940, used by Egoboo.

Deepesh Garg said:
If it is hard for Device, why would anyone care as long as it is smooth enough.
Smooth with which graphic quality?

Let's make it clear: even with the greatest optimisations, GP2X will always be stuck for the 3D at the Quake / PSX generation.

About PayBack, it is a great engine, but the fact that it's top-down helps a lot. Nothing is too close (things look ugly when they are close in 3D), nothing is too far (so it looks nice with a small number of objects). And 3D computations are easier, too.
 
Last edited by a moderator:
3d art generation alone is a major stumbling block and a huge mountain to climb. My penguin still looks like a bowling pin. More intuitive tools like Art of Illusion may help. Compared to working in 3d 2d is just a fancy slide show. Almost never seen done by a team of one which is how I think most 2d games are developed.
 
There is no 3D hardware and the 2D hardware is pretty weak on the gp2x. So 3D apps all have to render in software which is extremely slow ..... Wolf3D and doom etc. run pretty fast, ~30 fps or higher with some overclocking, but they aren't 'true' 3D, they use raycasting to create a 3D appearance with what are essentially scaled sprites. It's a clever trick.

But since there's no real 3D support games like Quake run slowly, you can expect to get around 20 fps with the 920T CPU overclocked to 300 MHz (if you can get there) and closer to 10-14 FPS at stock speed. Quake 2 runs at about 1 FPS and so is pretty much unplayable, and lack of 3D hardware is the reason PSX emulation is so slow. The fact even simple games can approach playability is a miracle really. Good coding but there's only so much you can do for hardware not made for it....

Like using the 940T to act like a GPU, due to how it's connected and how bottlenecked the bus is, it's pretty sluggish. Even the DS manages better 3D performance, ~60 fps most of the time in well designed games and 2000 polys displayed at one time, though the main CPU (arm9) is only 67 mhz compared to the gp2x's 200 (stock). So even a low end 3D accelerator would work wonders but it just isn't there.
 
I agree the 3D aspect just isn't going to happen. 2D where slowly getting there just got some more tweaks to make thats if devs continue to optimize their code in their work.

I'm surprised the 2D is considered that bad...I figured what we had was a halfway decent 2d acceleration. But I guess I'm wrong.

and about the DS vs the gp2x cmon man what'd you expect you know nintendo never goes the I have the biggest baddest hardware on the market route. but still they at least gave the DS some type of 3d hardware acceleration...

and last but not least don't give all the credit to the programmers when it comes down to 3d remember there are the artists who have to make all those 3D models...and thats not all that easy either if you don't know how to work a 3d app at all. Unless you plan on borrowing someone elses work.
 
I know that the gp2x is quite similar to the psx when it comes to 3d, both had no 3d hardware (couldn't generate a Z coordinate, only X and Y) so they both rely on tricks for 3d games, this is the reason why payback looks a little sloppy and weird in places. Anyways Nintendo 64 was the first console to generate true 3d graphics with a Z coordinate. Somebody with much more knowledge could probably elaborate on this and correct my mistakes

also, I'm pretty experienced with 3ds max, I've worked a lot with film but not much on games (optimized models, etc.), I have some free time now and if there are any devs that are experienced in getting models into games and you want my help on the modeling end (for gp2x or even a future project for the craiginator), get at me.
 
i think the big issue is that it takes a lot of work, and considering what was done as a hobby or for free, there are a few nice 3d things. many are tech demos.

payback has a really nice engine and is a good (visual) demonstration of how powerful these little arm chips can be. but those guys made a large investment in porting their game over to gp2x. only they know if it was worth it for them to do so.

ds could have a couple of gerbils in there, but it has nintendo behind it, and even if they couldn't get any third-party support, they still have all their inside programmers to push around.

also, psx did do a lot of stuff in hardware, it was well beyond something like doom where it's all software. one big architectural difference between psx and n64 was fixed vs floating point (i think? pretty sure n64 wasn't purely fixed point maths).

egoboo looks gorgeous, if any of you haven't seen it, download it already, and you will see what the gp2x can do. again, i think the issue is more of, you can't expect someone to crank out a totally original 3d game for free. if they do, it's great, but just don't expect it. and 3d games for linux on pc are much harder to port to gp2x, not like many of the sdl games where you could port some in a week or two, or maybe a really sweaty weekend :p

1st person shooters suck anyway. *duck*
 
One of the major problems with 3D games, from a programmer's perspective is finding suitable, low poly models that can be used.
There are sites that offer 3D models, but many of them will be an obscene number of polys and even then if you get a low poly model, it will still be too high for the 2X :)

I think some people are a little harsh on what can be done using a software renderer, with some rather conservative fps estimates... Quake II runs about 6fps for me, no overclocking and 10fps at 280MHz, the GPU940 based port may bring this into being playable, but I've not heard anything about that recently.

PS: Rest assured you will get something original and 3D from the likes of me at some point. But I have other little projects that needs finishing first (CromoZome, etc)
 
Back
Top