gbadev.org forum archive

This is a read-only mirror of the content originally found on forum.gbadev.org (now offline), salvaged from Wayback machine copies. A new forum can be found here.

DS development > Bitmap modes are not for gaming

#130017 - monster - Wed May 30, 2007 7:00 am

Being a newbie in the world of GBA/NDS development. I thought I would first cut my teeth on some GBA documents/tutorials and having found the TONC series of documents to be really helpful. I would now like to move to some NDS development, however something from the TONC lingers in my mind.

Bitmap modes are not for gaming
Do not get too comfortable with bitmap modes. They're nice for GBAdev introductory sections because they are easier to work with than tile modes, they are not suitable for most types of games because the GBA simply can't push pixels fast enough. Tinker with them to get a feel for IO registers and the like, then move on.

Is this comment still valid with the specs of the NDS. Are all NDS games writiten using Tiles? Can the NDS push pixels fast enough?

Any help/advice/information would be appreciated.

#130019 - OOPMan - Wed May 30, 2007 7:51 am

Er, far as I can tell the NDS is quite happy pushing bitmaps around. It's got a pretty powerful 2d engine under the hood :-)

But, last time I checked, it wasn't exactly an either/or situation. You can use tiles and bitmaps all at once on the NDS, I think...
_________________
"My boot, your face..." - Attributed to OOPMan, Emperor of Eroticon VI

You can find my NDS homebrew projects here...

#130046 - xrl - Wed May 30, 2007 2:13 pm

You're right. Why coding games when you can code demos?

#130056 - FireSlash - Wed May 30, 2007 4:08 pm

It comes down to what makes more sense for games. Most 2D games will ideally use a large number of tiles. The GBA/DS already have a tiling system in place, which is faster than manually painting tiles in bitmap modes.

However, the comment that they are not used at all for games is a bit misleading. I'm using it for one as a layer for my game.
_________________
FireSlash.net

#130060 - Cearn - Wed May 30, 2007 4:59 pm

FireSlash wrote:
However, the comment that they are not used at all for games is a bit misleading. I'm using it for one as a layer for my game.

The comment says most games, not all games. And for the GBA this was definitely true: the bitmap modes there
  1. Could use only one background,
  2. had no wrap-around scrolling support, meaning that to scroll you'd have to redraw the whole buffer,
  3. cut the Object VRAM in half,
  4. Took most of the VBlank for even a full-screen wipe.
DS-wise, 1,2 and 3 aren't an issue anymore. 4 may still be a problem, but thanks to the faster CPU, caching and faster memory instructions things should be much better no the DS.

It would be nice to hear from the more knowledgeable people on this, though. What's the score on bitmaps vs tilemaps in (commercial) NDS games?

#130061 - Dwedit - Wed May 30, 2007 5:19 pm

Does VBLANK time even matter anymore? You can still write graphics out to the screen outside the vblank period, and as long as the write cursor is below the raster, you'd never notice.
_________________
"We are merely sprites that dance at the beck and call of our button pressing overlord."

#130083 - tepples - Wed May 30, 2007 9:12 pm

Dwedit wrote:
as long as the write cursor is below the raster

But can a graphics engine guarantee this? It can for a simple copy from SLOT-2, as seen in a TV tuner, but for anything else?

A 2D game on DS can use either the 2D hardware or the 3D hardware. Sure, something like Tetris can use the 2D hardware in bitmap mode, but anything more complicated should use 2D tiles or 3D quads or both.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.

#130095 - mml - Wed May 30, 2007 10:58 pm

tepples wrote:
Sure, something like Tetris can use the 2D hardware in bitmap mode, but anything more complicated should use 2D tiles or 3D quads or both.


I would've thought if any game was an obvious one to learn tile mode with, it'd be a tetris clone. :P

I can see bitmap modes being very useful for point-and-click adventure games, like the ScummVM-type stuff (Day of the Tentacle, et al). If you wanted to write your own, native, point-and-click adventure, which DS does seem particularly well suited to, I believe the bitmap modes would work well.

But then you could also achieve the same thing with a more "modern" look by doing it in 3D with a variety of fixed camera locations.

#130116 - josath - Thu May 31, 2007 1:30 am

mml wrote:
tepples wrote:
Sure, something like Tetris can use the 2D hardware in bitmap mode, but anything more complicated should use 2D tiles or 3D quads or both.


I would've thought if any game was an obvious one to learn tile mode with, it'd be a tetris clone. :P

I can see bitmap modes being very useful for point-and-click adventure games, like the ScummVM-type stuff (Day of the Tentacle, et al). If you wanted to write your own, native, point-and-click adventure, which DS does seem particularly well suited to, I believe the bitmap modes would work well.

But then you could also achieve the same thing with a more "modern" look by doing it in 3D with a variety of fixed camera locations.


someone started writing a point&click adventure from scratch, but only made the first dozen screens or so. he also made a custom level builder i think, but i forget who it was, or what happened to it. it had a nice clean mspaint-style gfx.

#130134 - thegamefreak0134 - Thu May 31, 2007 6:15 am

I think we're missing an obvious point here. Any game requiring you to draw on-screen at all (lost magic, brain age, etc) is most easily pulled off in a bitmap mode. For that matter, the bitmap modes are also nice if you have an in-game effects engine (think golden sun, on a DS scale) that can't be faked with the 3D engine, or if you need to display splash screens easily. I don't see much use for gaming purposes, other than drawing. However, being flexible, they seem to work for all sorts of things. Plus, you use them as a framebuffer to get 3D on two screens, don't you?

I see their potential.

-gamefreak
_________________
What if the hokey-pokey really is what it's all about?

[url=http:/www.darknovagames.com/index.php?action=recruit&clanid=1]Support Zeta on DarkNova![/url]

#130167 - mml - Thu May 31, 2007 12:21 pm

josath wrote:
someone started writing a point&click adventure from scratch, but only made the first dozen screens or so. he also made a custom level builder i think, but i forget who it was, or what happened to it. it had a nice clean mspaint-style gfx.


heh, yeah, I guess the trouble with that type of game is that you *really* need a real artist and writer pretty much right from the word go, because without it once you've got enough engine code written to support your own "programmer art" or whatever, the inspiration dries up pretty quickly.

#130271 - tepples - Fri Jun 01, 2007 8:36 pm

mml wrote:
tepples wrote:
Sure, something like Tetris can use the 2D hardware in bitmap mode, but anything more complicated should use 2D tiles or 3D quads or both.

I would've thought if any game was an obvious one to learn tile mode with, it'd be a tetris clone. :P

True, Lockjaw uses 8x8 pixel tiles in tile mode. But apparently, Tetris DS uses 9x9 pixel tiles (standard or mission) or 10x10 pixel tiles (push).
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.