09 January 2020, 10:53 | #1 |
Banned
Join Date: Sep 2011
Location: Cardiff, UK
Age: 51
Posts: 2,871
|
Sprites are the weakest part of the Amiga specification (DEBUNKED)
As far as I can see, with only eight 3-colour sprites and 4 15-colour ones, with unlimited height but only 16 pixels wide, you really can see why the consoles wipe the floor with the Amiga OCS/ECS sprites.
I heard that AGA sprites were as much as 64 pixels wide, but in only 1 colour. If anything, I've noticed, after watching hundreds of high-end Amiga AGA demos, that the main use of the sprites is for titles and captions over HAM8 animations, because that's the only way to display moving text on that mode, although I've seen rotating coloured cubes using sprites on OCS, which were quite impressive. But most of the time, the sprite overlays will be simply white and just moving across or up and down or even "shaking", some trend of the time, I suppose. The Amiga is the natural successor to the Atari 8-bit family, and that system's sprites worked the exact same way, and even the C64 sprites were superior. I think it's most likely that Jay Miner never regarded hardware sprites that highly, which is probably why the Blitter was added. Is there any great specific sprite demos? If my info is wrong, feel free to correct me. It's hard to tell the sprites in games vs bobs, etc. Last edited by Foebane; 10 January 2020 at 21:07. |
09 January 2020, 11:06 | #2 |
Inviyya Dude!
Join Date: Sep 2016
Location: Amiga Island
Posts: 2,797
|
On OCS you can do some nice things with sprites, like those parallax backgrounds.
And when used with a multiplexer, you get a good amount of sprites on screen. Very useful with for instance games where you need many small objects, like bullets. And they don't have 1 colour, but 3 or 15 (but then you only have 4 sprites available) I think you just need to view sprites on OCS (and maybe AGA as well) a bit differently. They are not the "bug game objects pusher". They are more in the vein of "little helpers" that you use here and there.. Last edited by Tigerskunk; 09 January 2020 at 11:18. |
09 January 2020, 11:22 | #3 |
Ex nihilo nihil
Join Date: Oct 2017
Location: CH
Posts: 5,018
|
^ I may be wrong, but isn't it what ross has done on the Ziriax - Ultimate Edition's cracktro ?
|
09 January 2020, 11:44 | #4 |
Registered User
Join Date: Jul 2015
Location: The Netherlands
Posts: 3,436
|
Sprites are deceptive on the Amiga. The hardware allows for very easy multiplexing (it's literally baked in the hardware), which means that you can get quite a few objects out of those 8 (or 4) sprite channels.
Which has resulted in there being quite a few Amiga games that show a pretty large amount of objects using the sprite hardware. Hybris uses sprites for all enemies, SWIV shows around 30 or so player bullets using just sprites, St. Dragon shows up to 20 player bullets with sprites. The rain effect in Agony was created using just 2 sprites. Etc. There's also games that use the sprite hardware to create their background layers, which is a neat way of getting a Parallax background without needing Dual Playfield mode. If you push this, you can actually have a totally free-form background layer which doesn't care about sprite width (http://powerprograms.nl/amiga/spr-layer.html)*, though that is more of a trick than anything useful for games. However, all of these uses require some thought. It's nowhere near as easy to push tons of objects with Amiga sprites as it is using say console hardware. If you can manage to think it through though, you can have some pretty impressive results for hardware that seemingly allows very little. As for AGA: sprites are effectively identical to OCS sprites, except they can now be up to 64 pixels wide instead of 16. There are no additional colour limitations. This does change things a bit because that width is enough to cover quite a few pixels. AFAIK there's at least one AGA game that has a massive boss that is just sprites. A good example of AGA sprites in use is Rygar AGA, which does a lot with sprites. IIRC all (or at least most) enemies are actually hardware sprites. As I understand it, Reshoot and Reshoot-R create all the enemy bullets with sprites - apparently up to 100 of them. *) yeah, shameless plug alert Last edited by roondar; 09 January 2020 at 11:51. Reason: Clarified some things a bit |
09 January 2020, 11:59 | #5 |
Banned
Join Date: Sep 2011
Location: Cardiff, UK
Age: 51
Posts: 2,871
|
Thanks, Roondar, I'll check out those games.
|
09 January 2020, 12:01 | #6 | |
Defendit numerus
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 54
Posts: 4,491
|
Quote:
But I've also written other interesting effects using sprites (sine scroll, glenz vectors, parallax animated background..). C64 sprites are not x-multiplexable, on Amiga yes. So in the end they are not that bad |
|
09 January 2020, 12:13 | #7 |
Registered User
Join Date: Aug 2013
Location: Marseille / France
Posts: 1,510
|
At least Amiga got hardware sprites, which wasn't the case on Atari ST, MacIntosh or PCs that were the direct rivals of the Amiga when it was released (mid 1985).
And don't forget, as said, that the sprite theorical limitation could be surpassed using multiplexing or Bobs which weren't limitated in size, colors or number but only by memory. I don't know why the addition of Bobs shoudn't be considered as an advantage the Amiga had over other system at that time. If sprite for you is a moving object on screen, then the Amiga got, in my opinion, a pretty decent system with all the tricks that could be used to outpass the strict 8-objects-moving-on-screen-at-the-same-time limitations (and many many games obviously don't stick to the 8 eight HW sprite to animate many objects on screen on the Amiga) Last edited by sokolovic; 09 January 2020 at 13:55. |
09 January 2020, 12:22 | #8 |
Defendit numerus
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 54
Posts: 4,491
|
|
09 January 2020, 12:26 | #9 |
Registered User
Join Date: Jun 2009
Location: Dublin, then Glasgow
Posts: 6,379
|
Indeed, AGA sprites can be 3 or 15 colours deep in exactly the same was as OCS/ECS sprites, but up to 64 pixels wide. This means that they're wide enough for 5 sprites to cover an entire low-res screen, an effect that was often used for adding extra layers of parallax. Not sure where you got the 1-bit deep thing - even if you only use one colour in a sprite, it's still at least 3 colours deep. In addition, AGA sprites have more palette freedom, not being tied to pens 16-31 as their OCS/ECS counterparts are, which allows more direct, non-copper colours on screen, and allow sub-pixel positioning, which gives a supersmooth scrolling capability for a sprite background layer.
They do show their Atari 8-bit heritage in their implementation, but are far more advanced and accomplished than the old 8-bit sprites were. For a start, the old 8-bits didn't have a vertical position, meaning tricks were needed to move a sprite up and down. The Amiga fixes that issue, along with the issue of multicolour sprite palette handling and multiplexing. |
09 January 2020, 18:21 | #10 | ||||||
Banned
Join Date: Sep 2011
Location: Cardiff, UK
Age: 51
Posts: 2,871
|
Quote:
Quote:
Quote:
Like this example: [ Show youtube player ] All the captions and little graphics over the HAM8 stuff is all sprites, I gather. Quote:
Like this example: [ Show youtube player ] The superhires sprite is used for the scroll on the left at 4:26, but it seems that the YouTube videos can't capture such a high resolution, or was emulated that way. I have the same issue in WinUAE, unless I use the SuperHires option. But it's still cool! So how are the colours chosen in AGA sprites? Quote:
Quote:
|
||||||
09 January 2020, 20:50 | #11 |
This cat is no more
Join Date: Dec 2004
Location: FRANCE
Age: 52
Posts: 8,369
|
even OCS sprites aren't so bad, when porting old arcade games, the characters are often 16-bit wide and have ... 3 colors. Examples: PacMan, Bagman, ... I'm exploring this area now.
|
10 January 2020, 05:17 | #12 |
Coder/webmaster/gamer
Join Date: Oct 2001
Location: Canberra/Australia
Posts: 2,673
|
|
10 January 2020, 09:01 | #13 |
Banned
Join Date: Sep 2011
Location: Cardiff, UK
Age: 51
Posts: 2,871
|
|
10 January 2020, 10:04 | #14 |
Registered User
Join Date: Sep 2006
Location: New Sandusky
Posts: 944
|
The anemic number of hardware sprites has always been my big lament about the Amiga. It's why the Sharp X68000 could throw imagery around like crazy in a way the Amiga never could have hoped to.
Of course that system came out 2 years later. Still, the Amiga was so far ahead in 1985 in almost all respects, it's odd that its hardware sprites were on par (or SLIGHTLY better with hacks) with the 1982 Commodore 64, or comparable to the 1983 Famicom. If they'd just made the sprites 16 color by default (or allowed 16 4-color sprites per scanline), or just quadrupled the numbers, it would have made a big difference. A small 32k sprite cache to avoid constantly DMAing the sprites would have worked wonders (maybe allow sprites to DMA from chip memory or from cache, selectable) |
10 January 2020, 10:07 | #15 | |||
Registered User
Join Date: Jun 2009
Location: Dublin, then Glasgow
Posts: 6,379
|
Quote:
Quote:
Quote:
|
|||
10 January 2020, 10:26 | #16 | ||
Inviyya Dude!
Join Date: Sep 2016
Location: Amiga Island
Posts: 2,797
|
Quote:
Quote:
With 4 per scanline, you can go a long way in most "normal" games. |
||
10 January 2020, 11:02 | #17 | |
Banned
Join Date: Sep 2011
Location: Cardiff, UK
Age: 51
Posts: 2,871
|
Quote:
The C64 may have been limited in size (24x21 pixels hires 1-colour, 12x21 pixels lores 3-colour) but they were certainly more generous with the 3 bytes per scanline vs the Atari's 1 byte. I also wondered what the 21 pixel significance was, and that was so each of the 8 sprites could fit in exactly 64 bytes of memory. Nice and elegant, I thought. |
|
10 January 2020, 11:23 | #18 |
Registered User
Join Date: Aug 2013
Location: Marseille / France
Posts: 1,510
|
Here we go again with pointless comparison with the X68000 that was at least 5 time more expensive than the Amiga (3000$ VS 700$ for the A500. Even the A1000 in 1985 was released 2 years before at a price that was twice inferior : 1 300$).
I just don't understand why this hudge difference seems to be completely obliterated by people constantly comparing the 2 systems. I don't know for other system but is there also people comparing the first Macintosh or the Macintosh plus with the X68000 ? Because the price range for the Mac is much more closer to the X68000. And the Atari ST ? Does people compare this machine and it inexistent hardware sprite abilities with the X68000 ? For a system that was 5 time cheaper, keep being compared to the beast that was the X68000 maybe prove that the Amiga wasn't such a big shitty machine like we can read here and there. Last edited by sokolovic; 10 January 2020 at 13:10. |
10 January 2020, 11:31 | #19 |
Banned
Join Date: Sep 2011
Location: Cardiff, UK
Age: 51
Posts: 2,871
|
Agreed, Sokolovic.
EITHER these hardware oficionados just love to treat the X68000 as the Holy Grail of gaming hardware and compare it with everything else, despite it's lack of availability outside of Japan, OR we had a lot of Western gamers back in the day making lots of frequent trips back and forth to Japan. I think the former is much, much, much more likely. |
10 January 2020, 11:47 | #20 | ||||
Registered User
Join Date: Jul 2015
Location: The Netherlands
Posts: 3,436
|
Quote:
Quote:
Amiga hardware sprites, for all their faults, are actually significantly better than either Master System or NES sprites in many ways. They cover more pixels horizontally (up to 128 vs 64) and can display more pixels without tricks (up to about 32768 vs 8192). They can also be horizontally multiplexed, which is something that none of the systems you name can do. Similarly, Amiga sprites can actually cover way more pixels than the C64 sprites can - if no tricks are allowed. Depending on sprites being expanded or not, the Amiga can cover anywhere from 2x to 8x the number of pixels with sprites that the C64 can. That said, if tricks are allowed C64 sprites do indeed become much better than Amiga sprites, certainly for the purpose of displaying game objects. However, don't forget the C64 relies almost exclusively on sprites for objects in games, while the Amiga does not. Sprites and the Blitter are meant to work together to make graphics, not just one or the other. With the Amiga, always consider all parts of the puzzle Also... The C64 was pretty much the "outstanding outlier" in sprite abilities. No other 8 bit system of the early 1980's comes even close to what the C64 can do with sprites when well programmed. If it is pushed to extremes, it can actually pump out more sprite pixels in a frame than either the SNES or Mega Drive can without relying on trickery (though I should mention that doing so would not be useful in the slightest for games ) Quote:
Edit: Quote:
Last edited by roondar; 10 January 2020 at 11:51. Reason: Added my +1 to the whole X68000 discussion ;) |
||||
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Specification for A1200 Caps Lock LED? | rikbliz | support.Hardware | 7 | 20 January 2013 00:59 |
A1200 mechanical specification | whitebird | support.Hardware | 3 | 14 July 2011 00:46 |
resload_LoadFileDecrunch called with illegal file specification | rare_j | project.WHDLoad | 4 | 25 November 2009 22:31 |
Specification/docs/example code for A-Max .amhd drivers? | mark_k | Coders. General | 3 | 14 June 2007 17:52 |
|
|