Page 1 of 1

Gapi/Mobidraw + GDI and TomTom

PostPosted: Jun 24, 2008 @ 5:09am
by sedwo
I am at a crossroad with my design choices as I architect and code my Windows Mobile application.

The preliminary code (Win32 C/C++, VS2008) is working, but as I look towards the .NET apps and the iPhone apps, my programs seem to lack the eye-candy and spicy animations that sell the application and exhibit greater usability.

And while Gapidraw is great for games, my goal is to find such a framework for purposes of developing other types of programs for Windows Mobile, that look and act more graphical and modern. Much like the iPhone apps. Which is also a targeted platform for me to eventually try. But for now, Windows Mobile is key.

Briefly reviewing the Gapidraw features, I don't see it containing it's own graphical versions of various fonts, and more importantly, common Win32 controls (scroll list boxes, edit boxes, buttons, graphing, etc.).

So I assume then that it is up to the user to develop their own versions of these common GDI controls. Because once you go Gapidraw, it seems you can't go GDI for any other GUI stuff.

And so here I stand, like many before me, wondering, "do I use the library, or just reinvent certain parts of the wheel and code the stuff myself" ?

I would like to use Gapidraw for animations (like scrolling and panning dialog screens, graphing data too), but if I have to be coding my very own low-level custom controls like combo boxes, and list boxes, owner-draw buttons, etc., then it makes me wonder if it's worth the trouble to reinvent another GUI library on top of a graphics library.

So I guess my question is, are there any completed widgets that could help me decide?

A perfect example of this is for Windows Mobile. It is purely graphical and I have no idea what they used except to guess that they coded the whole thing themselves.

How can I use Gapidraw to create an application like TomTom?

Warmest regards,


PostPosted: Jun 24, 2008 @ 9:33pm
by Johan
Hello Sedwo,

GapiDraw is used for many applications that are not games. One example is <a href="">Nero Mobile Pro</a> built with GapiDraw. Download it and play around with it, it's probably close to what you are looking for.

GapiDraw does not feature common Win32 controls. Reasons are that they are ugly and require a device context surface to draw upon. You therefore have to create your own UI widgets. This is however much easier than it might sound.

What GapiDraw and similar toolkits give you instead of developing your own custom graphics code are:
* Image loaders with low memory overhead to load images
* Rotation support. GapiDraw can due to advanced transformations render graphics in any display orientation with the same performance
* Advanced blitters. Support for fast transparent blits, rotation, zooming, alpha blends, and much more. If you want iPhone-style graphics, GapiDraw can provide it.
* Wide device support. GapiDraw works on any device out there. And believe me, there are many devices not conforming to standard protocols. If you try to develop the graphics middleware yourself you are in for many hours of testing and debugging.
* And much more

If you want good looking graphics, "like Tom-Tom" you have to create your own UI widgets. You cannot use GDI. You draw these widgets with variable alpha using GapiDraw's advanced shaders using technologies such as RGBA shaders. Sure you can write this code yourself, but why spend many months developing this middleware when you can get started writing content now?


Any available widgets out there?

PostPosted: Jun 25, 2008 @ 3:12am
by sedwo
Thanks Johan,

Would you know of any available widgets out there for Gapidraw?

Coding my own GUI controls is interesting, but unfortunately time doesn't permit to write all of the controls I need.

I'm obviously not the only one with this challenge and wonder if people out there might have already written such common controls for Gapidraw and would release them.




Re: Any available widgets out there?

PostPosted: Jun 25, 2008 @ 9:41am
by Johan