Welcome, Guest. Please login or register.

Author Topic: So how did they code...  (Read 4059 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline CymricTopic starter

  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 1031
    • Show all replies
So how did they code...
« on: January 24, 2005, 04:42:08 PM »
So let's try to talk about something serious again (apparently, my contributions were slacking a bit of late...)

Ever since I saw and played games on the old Amiga, I wondered how certain effects were achieved. Take for example the faster-than-the-eye-can-follow, move-every-which-way-you-damned-well-please type-of scrolling found in games such as Zool, James Pond, or Turrican 2. Certain popular magazines offered an oversized bitmap as explanation, but that is of course limited to perhaps three or four times the visible screen size, and with those games I mentioned you had to battle through tens, even hundreds of separate screens. So that won't work.

I vaguely recall an article in a magazine (Amiga Format?) written by the programmer of Blood Money who used a neato trick to create a horizontal scroller. It boiled down to having only two screens in memory, and using some simple manipulation via the Copper to shift the 'view' slowly from left to right. However, at the same time you were building up a copy of the screen you were scrolling into in the part of the screen which wasn't visible, so by the time you reached the border of the right screen, you could reset the pointers to the left one, and start anew. The author encouragingly stated that other scrollers were just a matter of sitting down with pencil and paper and working out the details. Well, try as I might, I never got something elegant to work in the 2D-variant. Can someone explain how that was done?

The second thing which always bugged me were letter transformation tricks in the greetings of demos (and of course, cracks). Letters would be positioned along a sine wave, or bump, stretch and be mangled in various other ways. Nowadays, I would just define the letter as a 3D-shape and let the 3D API of my gfx-card handle it; CPU power is cheap. However, in those days we just had a 68000 and a Blitter. (And a Copper). How do you do a sine scroller with that kind of hardware?

Pseudo-M68K code is allowed in your answer, but if you resort to $DFF000-addresses make sure to indicate what these babies where all about. I forgot what most of them did, save for $DFF096 :-).
Some people say that cats are sneaky, evil and cruel. True, and they have many other fine qualities as well.
 

Offline CymricTopic starter

  • Hero Member
  • *****
  • Join Date: Nov 2002
  • Posts: 1031
    • Show all replies
Re: So how did they code...
« Reply #1 on: January 25, 2005, 10:31:13 AM »
Many thanks to all who replied, that Aminet-file was indeed the thing I was looking for. It's so simple once you see it... But that is usually the case. The guys who developed this way back when must have felt like a million dollars when their first game/demo came out employing these techniques. (And unless I'm mistaken, it made sure that John Carmack can now drive around in Ferrari's and has the luxury to create games which are done when he thinks they are done.)

However, one thing still intruiges me: Karlos, what are voxels? At some point, in the early 90's, German magazines were aflame with them. They would be the Next Big Thing, but apart from two games, the concept never took off. I know a pixel---picture element---and the texel---texture element, usually triangular. Voxel implies something with volume, but volume rendering is a slow and painstaking process. (At leaat, on the data visualisation programs I use.) Could you be so kind as to elaborate?
Some people say that cats are sneaky, evil and cruel. True, and they have many other fine qualities as well.