nesdev.com
http://forums.nesdev.com/

SNES Pixel Art
http://forums.nesdev.com/viewtopic.php?f=21&t=12238
Page 2 of 3

Author:  TmEE [ Sun Jan 18, 2015 1:24 am ]
Post subject:  Re: SNES Pixel Art

That looks better.
It seems really big for first frame of an explosion though...

Author:  Espozo [ Sun Jan 18, 2015 8:57 am ]
Post subject:  Re: SNES Pixel Art

It isn't much bigger than the one I was looking at when I created it: (my explotion is going to be 64x64 pixels, like the one I was looking at. I might shrink the first frame latter, though.)

Attachment:
explotion.png
explotion.png [ 410 Bytes | Viewed 1549 times ]

Attachment:
explotion 2x.png
explotion 2x.png [ 455 Bytes | Viewed 1549 times ]

Attachment:
explotion 4x.png
explotion 4x.png [ 507 Bytes | Viewed 1549 times ]

Author:  psycopathicteen [ Sun Jan 18, 2015 10:16 am ]
Post subject:  Re: SNES Pixel Art

How is that going to fit into VRAM? 4 64x64 sprites take up half the available memory for sprite patterns. You can fit a couple more frames by trimming metasprites around the frames, but you're going to run into problems if you plan on using 10 frames. Gunstar Heroes on the Sega Genesis, only uses 4 frames of explosion animation, so it can't be that bad.

Author:  Espozo [ Sun Jan 18, 2015 12:46 pm ]
Post subject:  Re: SNES Pixel Art

It could but it would be difficult. say regular enemies explode with a 32x32 explosion, but when bosses do, they'll explode with a 64x64 explosion. Since large enemies aren't going to be present through out the entire level and only specific areas, it could work then if you change the frames in the explosion by using DMA. (can't DMA change about 8 64x64 sprites in one frame?) So the explotion wouldn't fit in vram, but it could still work in specially scripted areas.

Author:  tepples [ Sun Jan 18, 2015 12:54 pm ]
Post subject:  Re: SNES Pixel Art

A DMA copy takes 8 master clocks per byte, and there are 341*4-40 = 1324 usable clocks per scanline and 262-224 = 38 vblank scanlines (minus one if there's some restriction on the last blanking line that I'm not aware of). Then 38 lines * 1324 clocks per line / 8 clocks per byte = about 6 KiB that can be copied per vblank, which needs to include the 544-byte OAM display list plus any updates to nametables, sprite tiles, and background tiles. A single 64x64 pixel sprite cel is 64*64/2 = 2 KiB.

Author:  Espozo [ Sun Jan 18, 2015 1:27 pm ]
Post subject:  Re: SNES Pixel Art

I don't know why, but I wasn't thinking that other things affected how much you could DMA to VRAM... Anyway, I already know that the first frame of the explosion fits in a 40x40 box, but I plan to use 16x16 and 32x32 sized sprites, you would put it in a 48x48 box. With that being said, you could put 5 of the first frame explosions on a scan line and have 32 pixels left over, I decided to make this as an example of what I want to do. (The explosions will spread apart when they get bigger to avoid overdraw problems and for awesomeness. :P )

This is saying how it will work:

Attachment:
Big Explotion Lines.png
Big Explotion Lines.png [ 3.87 KiB | Viewed 1513 times ]


This is how it will look:

Attachment:
Big Explotion.png
Big Explotion.png [ 3.7 KiB | Viewed 1513 times ]


Edit: Oh yeah, so at absolute best circumstances, you can only update 3 64x64 sprites? How is Final Fight 3 able to display 2 characters and 3 enemies that look to use almost about 16 8x8 tiles, which would be about 5 64x64 sprites? Or am I just crazy? :wink: (I know the game uses giant black bars to make it look like the sprites are bigger though.)

Author:  tepples [ Sun Jan 18, 2015 2:54 pm ]
Post subject:  Re: SNES Pixel Art

Espozo wrote:
Edit: Oh yeah, so at absolute best circumstances, you can only update 3 64x64 sprites? How is Final Fight 3 able to display 2 characters and 3 enemies that look to use almost about 16 8x8 tiles, which would be about 5 64x64 sprites?

Probably by loading new cels in at less than 60 fps. Consider that traditionally animated films run at 12 fps.

Author:  Espozo [ Sun Jan 18, 2015 3:01 pm ]
Post subject:  Re: SNES Pixel Art

I had no idea that you could "freeze" VRAM like that. I thought the only way to upload that much VRAM was to freeze the entire screen, which would effect scrolling. (I think I can settle for 20fps animation.)

Author:  psycopathicteen [ Sun Jan 18, 2015 4:02 pm ]
Post subject:  Re: SNES Pixel Art

Basically what you need to do is only use DMA when there is an animation frame update. Have the game logic predict how much time is going to be spent on DMA during next v-blank period, and if there is not going to be enough time left for a sprite animation update, update it the next frame.


http://wiki.superfamicom.org/snes/show/ ... ffectively

Author:  Espozo [ Sun Jan 18, 2015 5:23 pm ]
Post subject:  Re: SNES Pixel Art

Alright, I shrunk the first frame of the explosion and was wondering if this looks any better. (It is 32x32 pixels.)

1x:
Attachment:
explosion small.png
explosion small.png [ 452 Bytes | Viewed 1474 times ]

2x:
Attachment:
explosion small 2x.png
explosion small 2x.png [ 568 Bytes | Viewed 1474 times ]

4x
Attachment:
explosion small 4x.png
explosion small 4x.png [ 730 Bytes | Viewed 1474 times ]

I'm sure there's no real answer to this question except "just do it", but do you know a good way to animate something like this, while still keeping it pretty consistent with the other frames? I currently darken the picture a bit, increase the size of the picture, then I just make it a bit more gnarled looking. I use Gimp and I have each layer be a separate frame of animation.

Author:  tokumaru [ Sun Jan 18, 2015 6:04 pm ]
Post subject:  Re: SNES Pixel Art

Animating explosions is one of the hardest things you can do in pixel art, IMO. Sure you can go the cheap way and just change the size or something if your game has heavily stylized graphics (Mega Man got away with plain circles, for crying out loud), but if you want more natural explosions you'll have to work a little harder.

One type of explosion that I think works really well is to start with a sudden burst, with spike-like shapes coming from the center. That has to be quick, so maybe only 2 frames until the burst reaches its full size. After that, the tips of the spikes slow down and disappear, and a big portion of the center quickly burns and starts turning into smoke, going from yellow/red to gray/brown. Then the smoke gets darker and moves outwards and up, dissipating completely after a few frames.

Author:  Espozo [ Sun Jan 18, 2015 6:12 pm ]
Post subject:  Re: SNES Pixel Art

Something along the lines of this? Except, you know, not green? :wink: (I'm only talking about one of the explosions in the explosion.)

Attachment:
Spiky Explosion.png
Spiky Explosion.png [ 41.76 KiB | Viewed 1464 times ]

Author:  tokumaru [ Sun Jan 18, 2015 6:33 pm ]
Post subject:  Re: SNES Pixel Art

Yeah, I really like explosions that start that way, like a sudden burst of spiky fire, which then burns into smoke (the frame you've been drawing would probably be at the beginning of this transition) and dissipates.

I would like to someday compile a list of games with nice explosions, because they aren't that easy to find. Also, explosions can be an easily ignored aspect of a game, people just don't pay much attention to them. I surely can't remember what explosions were like in most games I played.

Author:  Espozo [ Sun Jan 18, 2015 6:35 pm ]
Post subject:  Re: SNES Pixel Art

Then in that case, I should probably use the bigger explosion, because having a 64x64 explosion starting off with something less than 32x32 will probably look really weird. (While I guess you're here, I feel like asking if your profile picture is supposed to be an Atari 2600 rendition of Sonic The Hedgehog.)

Edit: (I didn't even see you write this for some reason.)
Quote:
I would like to someday compile a list of games with nice explosions, because they aren't that easy to find. Also, explosions can be an easily ignored aspect of a game, people just don't pay much attention to them. I surely can't remember what explosions were like in most games I played.

Well, I have two games for the list already:

1. Any of the Metal Slug Games (except Metal Slug Advance of course :wink: )
2. Gunforce 2. I really don't know why I like that game so much, but I really do like the explosions. Fun Fact: to make it seem like there are more sprites then there really are, the game actually crams something crazy like 10 64x64 explotions in a 128x128 sprite. (Its basically pre rendered, if that makes scene.) The thing (128x128 sprite or metasprite) also gets animated for 20+ frames. (Obviously VRAM wasn't an issue...)
3. Also, as a bonus, the explosions in DKC 2 and 3 looked nice, but they were a bit small, so I'm not sure if they really belong on the list. The explosions in DKC1 are actually different, and they look really weird to me. They're also surprisingly low colored because they share a palette with the oil drum I think (which makes absolutely no scene, as they're only in Oil Drum Alley and not every level with a TNT barrel Edit: correction, they are also in torchlight trouble (and I call myself a DKC fan :roll: )) unlike the ones in DKC2 and 3 that have their own designated color palette.

Author:  tokumaru [ Sun Jan 18, 2015 6:55 pm ]
Post subject:  Re: SNES Pixel Art

Espozo wrote:
because having a 64x64 explosion starting off with something less than 32x32 will probably look really weird.

I think it would be fine, but it should probably be that small for the first frame only, while the second frame is a full blown outburst, occupying the whole area you have. The center will still have some space to grow, because only the "spikes" reached the edges by this point. The center can grow while becoming less fire-like and more smoke-like.

Quote:
(While I guess you're here, I feel like asking if your profile picture is supposed to be an Atari 2600 rendition of Sonic The Hedgehog.)

Yup. I made some sprites and animations a while ago and played with the idea of making an actual game, but there was too much to overcome in order to achieve the kind of gameplay I wanted and I didn't have much time to spend on writing and rewriting kernels.

Page 2 of 3 All times are UTC - 7 hours
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/