#86990 - saxman - Sun Jun 11, 2006 6:17 am
Hi everyone! I've been working on a Sonic the Hedgehog replica game engine for some time now. I recently have been interested in ports. I don't know much about the Nintendo DS, but I was wondering if I give some information on my engine (called ProSonic) if you guys could give me an idea what I'm looking at...
- I'm using the Allegro library. I realize this doesn't have GBA support, but that doesn't necessarily mean it couldn't be added.
- My engine as of recent can run in multiple resolutions. Originally it was designed for 320x200, but now it'll run in resolutions higher and lower. In fact, here's a screen shot of it in the GBA resolution -- http://www.comprosoftware.com/saxman/256x192.png
- It currently uses 8-bit color, but I am planning to add optional support for 15-bit and 16-bit color.
If you'd like more information, I have many different posts about it on my blog -- http://dgrove.blogspot.com/
So, what are my possibilities guys? Is this enough information, or? Please excuse my ignorance, again I'm not too familiar with the DS except that it's a handheld system.
_________________
My blog -- http://dgrove.blogspot.com/
#86998 - LiraNuna - Sun Jun 11, 2006 9:35 am
First of all you are mixing up :)
GBA has the resolution of 240x160
NDS has the resolution of 256x192
Also, you posted on the DS section of the forums, so I guess you want to port it to the DS...
The porting will require you to learn a bit from the DS's tile engine (piece of cake ;) or simply use Framebuffer mode (not recommended!)
The screenshot shows me that you actually use a tiled system. Are the tiles sized 8x8? if not - is it possible to resize them?
The usge of 8bit (256col) is also perfect to the DS's tile system
#87037 - zzo38computer - Sun Jun 11, 2006 5:43 pm
Another thing is put the numbers and FPS and everything on one screen and the game on the other screen so the numbers doesn't cover it up the game. You can do it whatever buttons you want (for example arrow=Move, A=Jump, Start=Pause) or use touch-screen, or both. Also you should put music and sound effects as well. And if it needs saver, make sure it supports saver on CF card.
_________________
Important: Please send messages about FWNITRO to the public forum, not privately to me.
#87048 - tepples - Sun Jun 11, 2006 6:55 pm
zzo38computer wrote: |
Also you should put music and sound effects as well. |
What music, specifically? If someone writes music for this game, how can he or she know whether or not it was inadvertently copied from some major label recording? I seem to remember someone named George Harrison getting in big trouble about this.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#87061 - saxman - Sun Jun 11, 2006 7:32 pm
Oh shoot, I didn't realize I used GBA and DS interchangeably like that XD I have a habbit of talking about one, but calling it the other for some reason. But yes, the DS is what I'm interested in porting to here.
I'm kind of amazed the DS uses 8x8 tiles. I thought with today's systems they did away with the use of small tiles like that and simply blitted images to the entire screen. My engine uses a bunch of 16x16 blocks and assembles them into 128x128 tiles. The original Sonic engine on the Sega Genesis did this too, but there was an extra step to it because of hardware limits -- it assembled 8x8 sprites to form the 16x16 blocks. I skipped that step because I thought it was pointless for what I was doing, but if that's how the DS works, then maybe I should include that step??... or is there another way?
Oh I should mention also that my engine uses effects that will skew the graphics (under water for example). Will this have any conflicts with the tile system used by the DS?
And it probably would be a good idea to move some of those counters to the other screen. I don't know anything about DS programming yet, so they might be there for a while =)
_________________
My blog -- http://dgrove.blogspot.com/
#87066 - HyperHacker - Sun Jun 11, 2006 7:42 pm
You can just blit images to the screen, but they kept the tiled mode for a few reasons. It's faster, it uses less memory, it's just better for some things, and it's necessary for GBA support. You can do transformations and the like; you might do a wavy underwater effect by shifting the layer back and forth in the hblank interrupt, which runs after each scanline is drawn.
Really the only thing I don't understand about DS's graphic system is that you can't have layer X above layer Y, but still have one of layer Y's tiles show above layer X. Even Game Boy Color could do that. O_o
_________________
I'm a PSP hacker now, but I still <3 DS.
#87081 - LiraNuna - Sun Jun 11, 2006 9:25 pm
Quote: |
Oh I should mention also that my engine uses effects that will skew the graphics (under water for example). Will this have any conflicts with the tile system used by the DS? |
HBlank! \o/
Quote: |
My engine uses a bunch of 16x16 |
Exelent! 16x16 tiles are 4 x 8x8 tiles! seems like the DS is screaming for a port now :)
#87098 - saxman - Sun Jun 11, 2006 10:49 pm
Interesting stuff
Well here's another question then. If I use tiles... and right now my engine allows up to 1024 of the 16x16 level tiles which would be 4096 if they were divided into 8x8 tiles... then would the DS have enough memory to story them all? Plus I have to have space to hold many of the other images like sprites and stuff. I guess what I'm wondering is how many tiles can the DS actually hold at a time.
_________________
My blog -- http://dgrove.blogspot.com/
#87100 - gladius - Sun Jun 11, 2006 10:58 pm
The DS has a lot of VRAM. Up to 512kb for tiles/tilemaps. A more common scenario might be 256kb though. But at 8 bit that's 4096 tiles right there. More commonly the tiles in the backgrounds are 4 bit which gives you 8192 tiles which should be more than enough :).