Page 1 of 1

GapiDraw and DirectDraw roadmap

PostPosted: Jul 22, 2002 @ 2:15pm
by Johan
Hi,

As you are probably aware of, there are new PocketPC devices available on the market with built in graphics acceleration. It is not uncommon to reason "as soon as DirectDraw becomes available, why should anyone want to use GapiDraw?" I will try to outline some of these reasons below.

(1) The availability of DirectDraw does not make it any easier to write games than with the current availability of GAPI (gx.dll). On the contrary, DirectDraw introduces issues such as lost surfaces and COM interface programming. DirectDraw is a bare bones blit library, nothing more. Several of its features are also poorly supported by current hardware manufacturers (such as masked stretch blit for example, which is unsupported by NVidia).

(2) GapiDraw will support hardware surfaces in an upcoming release. It will be implemented as a simple flag in the call to CreateSurface. To check if a surface is stored in video memory or not, a surface flag will be set. Since the interface of GapiDraw (Blt and BltFast) is identical to DirectDraw, GapiDraw will use the hardware versions of Blt and BltFast (if available) for maximum performance.

(3) If you build your game using GapiDraw today, your game will automatically be accelerated by the hardware blitter as soon as support for it is available from either Microsoft or the hardware provider.

(4) Since DirectDraw only contains some of the Blt and BltFast operations offered by GapiDraw, all other features such as creating surfaces from BMP, JPG, GIF and PNG, emulator support, CGapiApplication, Bitmapped fonts (with and without kerning), Surface intersections, Collision masks, High performance timers, Animated mouse cursors, Animated alpha blends, Surface tint, Surface colorization, Rotozoom are not available and would have to be implemented as well. If you use GapiDraw, most of these functions (such as bitmapped fonts) will be fully accelerated by DirectDraw once hardware support is available.

(5) If you build your game using GapiDraw today, not only will it be fully accelerated by the new hardware blitters, but it will also be one of the fastest on devices without the proper graphics hardware (such as all 12-bit and 16-bit Pocket PCs on the market today). The game will also work in both accelerated windowed and full screen mode on Windows 98/ME, 2000, and XP.

To summarize: a possible introduction of DirectDraw for Pocket PCs will only make GapiDraw even faster on those devices that support it. The forthcoming introduction of hardware surface support on Stationary PCs as well makes it possible to build really advanced 2D games such as DiabloII with GapiDraw.

/Johan

PostPosted: Jul 30, 2002 @ 5:31am
by efortier
PocketPCs and DirectDraw!

Damn, that one slipped by me!

Is there a web site that offers a better coverage of what's new in the PocketPC world than Microsoft's site?

Most site I check out are archives and such, and do not have a lot of news.

Thanks!

PostPosted: Aug 4, 2002 @ 9:43am
by DillRye

PostPosted: Aug 14, 2002 @ 11:16pm
by Blacky

PostPosted: Aug 15, 2002 @ 10:41am
by Sam Nova
eh, how would your game benefit from it, when there are no PocketPC devices yet with DirectDraw ?
Or are you talking about the PC version using GapiDraw ?

PostPosted: Aug 15, 2002 @ 11:08am
by Guest
Sure, I mean Win32 version.

Have you seen GapiDraw @ 800x600 with a hell lot of sprites ? ;) It's running almost smooth on my comp, but tested on a 933 P3, it's not that smooth. And I think you can't tell the people, they need 2 Ghz CPUs for a 2D Game.

Sure, it's possible to tweak here and there, limit sprites. And as I said elsewhere, GapiDraw roxx. But would be great to know when we could calculate with a DirectDraw capable version, so we know if it will be available at our scheduled release date.

Greets,

Michael Ritter

PostPosted: Aug 15, 2002 @ 11:14am
by Hosed
GapiDraw on the PC already is optimized using DirectDraw.

PostPosted: Aug 15, 2002 @ 11:55am
by Blacky
Is it ?

The upper text reads as follow:"The forthcoming introduction of hardware surface support on Stationary PCs as well makes it possible to build really advanced 2D games such as DiabloII with GapiDraw."

So it's actualy not optimized for DirectDraw.

I've seen, if you scale the window, it looks that GapiDraw is using DirectDraw for smooth scaling ! But not for the blitting.

Greets,

Michael Ritter