

Sprite Tricks used in Amiga Games - mxfh
http://www.codetapper.com/amiga/sprite-tricks/
via https://twitter.com/photonstorm/status/289508176397746179
======
ANTSANTS
Very cool stuff. Trying to figure out how various classic (mostly Sega
Genesis, in my case) games pulled off their graphical effects was endlessly
entertaining as a teenager. It's a shame that the art of cycle-accurate raster
techniques had to die, but it's probably for the best that it no longer takes
a savant to make games with rotating sprites ;)

Here's a relevant explanation of some of the techniques that classic
"pseudo-3D" racers used:

<http://www.extentofthejam.com/pseudo/>

<https://news.ycombinator.com/item?id=5045756>

~~~
martinced
Indeed. But it wasn't that difficult. Actually I found it way easier with the
"fake 3D" and rotating sprite and even "full screen rotating" (but it's only
vertical columns of 8-pixels wide that are slightly shifted up and down) than
doing "real" 3D using OpenGL or DirectX ; )

Applied on the PC in the nineties, in "World Rally Fever", published by Team
17:

<http://www.youtube.com/watch?v=avurGEuocqo>

------
kayoone
Its amazing how much knowledge and skill was needed to do even simple computer
graphics in the 90ties.

Even today if you create a game, you will need to work alot more with Math and
complicated algorithms than in your typical web/mobile app where its much more
about architecture/design, getting data from X to Y and presenting it in a
good way instead of the complex algorithms needed in game development.

Its fascinating, but sadly doesnt pay the bills for most people.

------
wldlyinaccurate
Cached version:
[http://webcache.googleusercontent.com/search?q=cache:XgCJqd4...](http://webcache.googleusercontent.com/search?q=cache:XgCJqd4lmGYJ:www.codetapper.com/amiga/sprite-
tricks/+&cd=1&hl=en&ct=clnk&gl=uk)

------
mxfh
via <https://twitter.com/photonstorm/status/289508176397746179>

------
erickhill
Does anyone understand the usage of the term "copper" or "copperlists" as
referenced in the attached articles?

~~~
ANTSANTS
I'm not as knowledgeable about the Amiga as I am about other classic systems,
but the Copper was (according to Wikipedia) a component of the Amiga's
graphics coprocessor that took very simple commands that one could make
"programs" out of that would update video registers at times synchronized to
the rendering of the display.

Back in the day, most cool graphical effects were done by using the CPU to
update video memory at the precisely timed moments during the rendering of a
frame. For example, if you changed the "scrolling speed" of a background
between the drawing of every line, you could get a nifty "parallax scrolling"
effect out of a machine with only 1 background layer. Or, you could change a
color palette halfway through the screen to make it look like that part was
underwater.

Some systems had interrupts that would fire in-between the drawing of lines to
facilitate this. Other, simpler ones, like the NES and the C64, basically
required the programmer to write perfectly timed, cycle accurate code that
would poke the right values into video registers within a very small timing
window.

The Amiga had a number of custom chipsets to make it easier to produce effects
like this, and free the CPU from spinning idly and poking registers all the
time. Looking at the wikipedia summary of its capabilities, I imagine console
game programmers of the time would have killed for the ability to say "please
write this value here at this exact moment, thank you."

It reminds me a bit of the SNES's HDMA (horizontal interrupt DMA) function,
which allowed programmers to specify tables of data to be copied to certain
VRAM registers in between the rendering of scanlines. Pretty much every SNES
game with cool "mode 7" effects relied heavily on it.

~~~
kleiba
Slight correction: the C64 certainly had raster interrupts, see
<http://www.c64-wiki.com/index.php/Raster_interrupt>

~~~
ANTSANTS
Whoops, that's a pretty big oversight. I was aware that the C64 had vblank and
timer interrupts, but not that it could do hblank interrupts.

------
vyrotek
I was really hoping to see my favorite game Firepower covered here.
<http://www.youtube.com/watch?v=8G4ngPXGGgw> :)

~~~
martinced
oh man the memories.

Amazingly cool game... But from a "technological" standpoint it wasn't
anywhere near Shadow of the Beast or Agony.

But Firepower was quite arguably much better from the gameplay standpoint : )

------
tluyben2
Thanks for posting this; this is really great stuff and still relevant to a
lot of 2D indie devs.

