I've created a texture mapping demo for a German Amstrad CPC 10th anniversary demo called Jubilee Joy in 1994. The texture mapping wasn't of course a "real" texture mapping. It was precalculated and the cube was only able to rotate around the y-axis, but it was meant to demonstrate that a texture mapping is doable on the CPC.
Texture Mapping on a regular CPC
|
But I wasn't fully satisfied with the texture mapping. In the original version was a lightsource in form of a yellow ball included that moved around the cube and illuminated its surfaces. Unfortunately a regular CPC doesn't have this many colors available and so the illumination looked very bad on a regular CPC.
The green screen version was a lot better since I had 26 different hues available, but the color version was horrible. So once I got my CPC 6128+ I enhanced the texture mapping with more colors and different textures. Unfortunately only CPC Plus owners were able to see those, but with all those CPC plus emulators nowadays everybody can take a look at this enhanced version.
In the first version the demo took quite a while before it revealed the true nature. At first you just saw a vector cube that was rotating around the y-axis and after some minutes and lots of text the vector surfaces were replaced by textures.
I've changed this approach in the updated version, because I felt that I cannot bore people again with so much fuss and talk over nothing. Also since I just changed the textures and added the plus colors there wasn't really anything new about this demo. So in the new version you'll see the "full monty" right from the beginning.
For all those users who like to press keys during a presentation I've included a user input mode. To get to it you have to press the "c" key so that the border turns red. Then you can use the following keys:
Texture Mapping on a green screen
|
key | function |
return | Start rotation of cube |
shift | Stop rotation of cube |
keypad enter | De/ activate light source |
del | Start/ Stop music |
cursor left | Move light source clockwise around the cube |
cursor right | Move light source counterclockwise around the cube |
Also there's a cheat part hidden in this demo. If you press the keys "M", "I", "L", "K" and "O" at the same time you'll get to see a never before released demo with some balls moving around the screen. Unfortunately I haven't been able to start this cheat part on any Emulation (I've tried WinAPE, CPE, No$CPC, Arnimedes and Arnold, but I have this cheat part as individual file somewhere...).
The texture mapping is one of the few demos where I didn't just have a new effect on the screen, but also a nice frame around it. Usually I don't create a frame or surface around my demos, because I'm not really good with drawing graphics (and fancy fonts).
Using the extended color palette of the CPC+
|
For this demo I already had an idea for the general look long before I started programming it. My brother had a submarine game on the Amiga that was based on Jules Vernes book "20.000 leagues under the sea". The submarine in that game had a very dignified look with mahagonay walls and leather covered couches and armchairs.
I wanted to create a frame around my texture cube so that it appeared like you were looking through a porthole into the sea and the rotating cube was floating in the water. The porthole was supposed to be in a maghagonay wall with a distinct wooden texture.
I spent some time looking for a wooden table, desk or shelf im my parents' house that I could scan with my hand-scanner. But it turned out that none of that had a surface that was rich enough in contrast to yield a good scan.
I was about to quit when I saw the fake wood veneer layer on my brothers desk. I scanned it and it looked good enough to be converted to the CPC. I put parts of the scanned picture above and beneath the porthole and voilá, the frame for my texture cube was ready.
Sometimes you find the best ideas in strange places...