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 > [newbe] technical question for new project

#70423 - mlequim - Mon Feb 06, 2006 10:24 am

Hi,

I apologize because I will ask basic questions. The reason is that I have found graphists and game designers for a new amator games we will create, they need technical information quickly so they can begin to draw meanwhile I study the DS. I don't want them to be demotivated by waiting my informations,...

Here are my questions
1) We will create a shoot them up, what is the best graphic mode to display various graphics in the two screens ? I have think of tiles mode and the resolution is 256x192.
=>
0: Mode 0 (4 text layers)
1: Mode 1 (2 text layers, 1 rot/scale)
2: Mode 2 (2 rot/scale)

2) what is the size of the video memory to store tiles ? There was not many place for tiles in the memory in GBA, is there more memory for tiles in DS ?

3) If the DS has no more memory for tiles, is it possible to refresh all the memory of tiles each frames for the two screens ? or must I load only somes new tiles in place of not used tiles on the screens ?

4) I have found in NDSwiki that we can have 4 palettes, two per display. But I have also found that we can use an extension of 16 palettes ? is it possible with tiles mode ?

5) DS speek about an extension mode, what it is ? something to do with the palettes ? Can I program the tiles mode in DS like the one in GBA ?

6) Has the DS enough power to refresh the sprite memory each frames In order to allow many animated sprites ? Or must all frames of an animation be present in the sprite memory ?

6) Can I use the two 2d cores mixed up with 3D ? in order to simulate more sprites ?

7) if the refresh of tiles memory and sprites memory each frames are possible, has the DS enough power to do the two in the same time ?

8) if 7) is correct can I mix it up with 3D ?

9) what is the maximal size of an official DS cartridge ? 128 Mo like metroid ?

10) to do a shoot them up with muti layers and batiment who can be destroyed, and add more variety in the decors that I can put in the tiles memory, is it not more easy to do it with not a tiles mode but a pixel mode ? (I want the action on two screens).

Wow ! that is a lot of questions, I hope somebody can help us because we are highly motivated for our shoot them up ;O),

#70513 - tepples - Mon Feb 06, 2006 11:52 pm

mlequim wrote:
1) We will create a shoot them up, what is the best graphic mode to display various graphics in the two screens ?

What kind of "shoot them up"? A horizontal scrolling shooter (Gradius or Contra), vertical scrolling shooter (Star Force or Ikari), forward scrolling shooter on rails (Star Fox), first-person shooter on rails (Time Crisis), or first-person shooter with free motion (Quake)?

Quote:
4) I have found in NDSwiki that we can have 4 palettes, two per display. But I have also found that we can use an extension of 16 palettes ? is it possible with tiles mode ?

If you don't use "extended palettes", you have four palettes: main screen background, main screen top, sub screen background, and sub screen sprites. Each is 256 colors in size; if you use 16-color tiles, you can divide them into 16-color tiles.

Quote:
Can I program the tiles mode in DS like the one in GBA ?

I've been told that it's pretty much the same, modulo some differences to do with the expanded VRAM in the Nintendo DS.

Quote:
6) Has the DS enough power to refresh the sprite memory each frames In order to allow many animated sprites ?

Even the GBA had that much power.

Quote:
6) Can I use the two 2d cores mixed up with 3D ? in order to simulate more sprites ?

The 3D output will show up as a background layer on one of the screens.

Quote:
9) what is the maximal size of an official DS cartridge ? 128 Mo like metroid ?

Depends on how much your publisher is willing to pay compared to the ROM prices in effect at any given time.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.

#70573 - mlequim - Tue Feb 07, 2006 1:21 pm

Quote:

mlequim wrote:
1) We will create a shoot them up, what is the best graphic mode to display various graphics in the two screens ?

What kind of "shoot them up"? A horizontal scrolling shooter (Gradius or Contra), vertical scrolling shooter (Star Force or Ikari), forward scrolling shooter on rails (Star Fox), first-person shooter on rails (Time Crisis), or first-person shooter with free motion (Quake)?


it is a vertical shoot them up with action on the two screens.

Thank's for your answers ! you have help me much. I have now my answer for question 4), 6) 7) 8) 9).

perhaps someone can help for the others ? the most important for me and the graphists is now the question 3) , so they know if they can use unlimitted number of tiles or only the tiles that fit in memory, and 10) the framebuffer mode is appealing (more colors), but maybe it is not possible to simulate all what we want on two screens hand keeping descent framerate (multi layers, many sprites, great variety in screens).

#70785 - mlequim - Wed Feb 08, 2006 7:26 pm

for the question 3, my idea is to do something like a memory management for tiles. Before the scrolling change, if I see if after the change in the scrolling I need tiles not in the tiles memory then I begin to draw the new tiles in not used tiles. To do this I must know which tiles are not used at this time but this information can be precalculated.

What do you think of this method ?

#70787 - genfish - Wed Feb 08, 2006 7:32 pm

what do u mean? flag each tile so it only gets updated if its been changed?

#70895 - mlequim - Thu Feb 09, 2006 12:03 pm

Something like that, there is more tiles than the tiles displayed to the screen, so it should be possible to do something like a memory management for tiles. With by example a linked list for free tiles (not used to display graphics on the screen), and when I need another graphics I can pick up in this list.