28 Mar

Playstation 3 vs. Atari VCS

More demoscene stuff: a very recent PS3 demo (a real-time animation for you not in the know) and a very recent Atari VCS demo. The Atari VCS (redubbed Atari 2600) was pretty much the first game console for the masses and it was released in 1977. The Playstation 3 was released in 2006.


Atari VCS

Sony Playstation 3

Linger In Shadows by Plastic is the first home brew production I have seen for Playstation 3. You can also download a high quality version of the Youtube video shown below.

Next, a demo (or intro, since most VCS demos are so tiny) by Simon Quernhorst called 4K4U. The author has announced that he’ll be selling cartridges of this later. In the mean time, you can download the rom for your emulator over here. A good VCS emulator would be Stella.

Again, I merely found the videos so a big thank you to the people who saw the trouble uploading the videos (it’s surprisingly hard to find a good screen capture tool as opposed to commercial crud!).

25 Mar

Some Cool Demoscene Stuff

Here are some of my favorite demoscene products with a short review of each.

Matt Current (The Shitfaced Clowns/Breakpoint 2007)

Gameboy Advance

You could say Matt Current features two demos in one. The first part features 3D stuff very familiar to anyone who has seen mid-1990s demos and the second half is a complete change in style with one of the best tracks I have heard in a demo (with lyrics), effects with more focus on the presentation than the technology and hip hop. I love the short flashes of video captured footage of skateboarders in synch with the music and the 2D parallax field of graffiti.

Atrium (TBC & Loonies/Breakpoint 2008)

4KB/PC/Win

There are a lot of very impressive 4K intros that have come out in the last few years but this one caught my attention. It is funny how the pacing — the single most important thing outside the content itself — is much better than of those in many multi-megabyte demos. The growing building effect also is pretty much equal to the 2006 Assembly demo by Fairlight shown below.

The Secret Life of Mr. Black (Orange/Assembly 1997)

PC/DOS

Orange demos have a very distinct style. Even simple things like fade ins and fade outs are tweaked, mainstream effects are avoided (notice the complete lack of Phong shaded polys and other common stuff) and the demo generally has a weird atmosphere (just listen to the soundtrack).

Inside (CNCD/The Gathering 1996)

PC/DOS

CNCD’s Inside has one of my favorite soundtracks, the fat track suits the demo well. While some of the 3D stuff in Inside is a bit out of place (how do you segue from rappers to spaceships is beyond me) and looks dated, the remainder of the effects still look absolutely fantastic.

And now for the best of the bunch…

9 Fingers (Spaceballs/The Party 1993)

Amiga

Take a look at Spaceballs’ 9 Fingers and think about the fact it was done on the Amiga and that it features streaming video of sorts. The demo came on two 800 KB floppies and only lasts for less than three minutes, which was unheard of (well, Spaceballs already did the same with State of the Art but I bet you know what I mean). Ironically, the demo takes far more data when converted to an inferior quality Youtube video.

The captured video footage is converted into a polygon mesh which allows for good compression ratio (you need to store only the mesh points and the polygon color). Of course, the more important thing is that it allows sufficiently fast decoding the video and other effects such as the rotating cube with “texture mapping”. The Atari ST demo shown below employs a similar trick as it streams the precalculated polygon data (or rather the horizontal line data) from disk.

You might also want to take a look at the making of 9 Fingers.

09 Mar

Dev Stories from the Past

A bit of nostalgy can never hurt anyone. To me, weird tales about old software are a source of inspiration — they are essentially war stories for nerds. Here are some cool software stories from the past told by the developers themselves.

Donkey Kong and Me

The aptly named DadHacker writes about his past at Atari Corp. and more specifically about his experiences on porting the Donkey Kong coin-op on Atari. Includes gory descriptions of 8-bit graphics modes.

… most of the game sources I saw in the consumer division were crap, just absolute garbage: almost no comments, no insight as to what was going on, just pages of LDA/STA/ADD and alphabet soup, and maybe the occasional label that was meaningful. But otherwise, totally unmaintainable code.

Sounds familiar…

Tim Follin Interview about Video Game Music

Here is a great video interview with Tim Follin, a composer of game music on the Commodore 64, Atari ST and many other platforms. Wikipedia has a surprisingly extensive biography but the below video has the same information told much better.

Be sure to watch the second part as well.

Macintosh Stories

The development of the Apple Macintosh is the source of many mythical stories. This site dedicated to Macintosh folklore contains probably most of them. I like the fact there is a lot of stories about both the people and the inner workings of the Mac.

Llamasoft

Jeff Minter is a legendary character with the distinctive style of his games. Personally, Minter is in my all time Top 5. One of my first memories about computers is not understanding Colourspace at all back when I was about 8. Below is a really interesting and funny presentation by the man itself including game footage from his old games (I think the presentation is promotion for his latest effort, Space Giraffe). He has written an extensive history of his company Llamasoft.

An Interview with Rob Northen

Rob Northen was responsible for copy protecting many games on the Amiga and Atari ST platforms. Considering publisher giants like Ocean, Microprose and US Gold used his services, I’d say a majority of games used a version of his protection. This interview gives some insight into how he came up with his software Copylock and how it worked.

20 Feb

Let’s make a planet

For the last few days, I have been working on a planet generator. I originally got the idea from the method how you can easily tessellate sphere into triangles. This results in a spherical map instead of a cylindrical map.

The usual way of rendering a planet as a a sphere with cylindrical texture map (or height field) looks quite bad in places because the map is stretched on the equator and pinched near the poles. The method described below takes a different approach and generates a map of vertices connected by triangles.

The vertices contain the terrain information such as terrain type (sea, land, mountain) and height. More detail is introduced by subdividing the triangles into smaller triangles.

The starting shape is an octahedron. We then subdivide each side into four triangles, normalize the new vertices and apply simple physics to move all the vertices away from the others (reverse gravity) – this eventually settles the vertices quite evenly (it won’t be a perfect shape but it is good enough for most purposes). We don’t even need to start from a symmetrical shape, using a naive repulsion algorithm eventually makes the shape symmetric as long as it is possible.

The number of subdivisions can be variable and dynamic. I’m planning to make the generator subdivide triangles on demand. In a game, you would see approximate shapes from the orbit but when flying close to the surface, the shorelines etc. would have a lot more detail. You can subdivide infinitely which means there will be infinite detail.

Dragon curve

I use a very simple algorithm to decide the terrain type on each vertex, simply the first point of the triangle decides the terrain type on the new triangle. This results into the Dragon curve fractal. A more sophisticated algorithm would change the subdivision rules according to the subdivision depth. For example, the same rules shouldn’t apply when subdividing on a continental scale versus to a scale of a few kilometers.

Next, I’m going to model a very simple simulation of atmosphere including prevailing winds, cloud formation and temperature.

Links