View Single Post
Old 04 September 2015, 06:22   #62
Code Kitten

Join Date: Aug 2015
Location: Montreal/Canadia
Age: 46
Posts: 1,015
I must correct myself since I was too clearly too hasty when I wrote the replies below:

Originally Posted by ReadOnlyCat View Post
Oh, interesting. But they use a trick not accessible to the Amiga. (Cf below.)
There are plenty of reasons actually:
- the game seems to make very smart use of tiled graphics: if you look carefully you will notice jaggies (especially on surfaces almost perpendicular to the line of sight) which would not be there if they used proper per pixel texture mapping. This means that they probably have pre rendered tiles containing the various angles and depths of the walls and just choose the most suited tile for each group of 8x8 pixels. This makes updating the screen much faster than a bitmap of the equivalent size.
Urgh, so many suppositions with so little data. I am feeling a bit ashamed of myself there. Let's just say that they *might* have use pre rendered tiles but this is in no way certain.

Originally Posted by ReadOnlyCat View Post
- the MD is not slowed down by display DMA so the CPU roams free while the whole display is rendered by the VDP, on the Amiga the CPU can only access memory during the cycles not taken by display, copper and blitter. They might be using that free time to generate some of the tiles displayed.
- the MD has chunky-ish pixel definitions so it probably is simpler to do live texture mapping than on planar architecture like the miggy, I am not excluding the possibility that planar texture mapping might be made efficient but for now I certainly have no idea how to do it.
I made two errors here:
  • First, the MD has other limitations, with only 64 KB of VRAM it is frequent to need to do DMA transfers from the 68k RAM or ROM and both do stall the CPU significantly. This is a trade off quite similar to the one between use of the blitter and CPU on the Amiga and from what I understand of the MD's hardware, this might actually deprive the 68k from all bus access which not even the blitter does.
  • Second, the MD might have chunky type pixels in tiles but tiles are not organized in a way which makes texture mapping necessarily easy. It might not be as impractical as planar architectures seem to be but still not perfectly suited to the task (cf this fantastically interesting thread on sega-16 about StarFox like polygon rendering on the MegaDrive/Genesis).

Originally Posted by ReadOnlyCat View Post
Which would probably take enormous amounts of memory, which is why I think they probably render some of the tiles on the fly from a pre-calculated set of reference depths and angles.
This, ladies and gentlemen of the Amiga-friendly category, is a perfect illustration of me being out of my mind. Speculating that a method might have been used when you have yourself no idea if said method even makes sense is just ludicrous. I am not sure who was in control of my brain at that time but it was definitely not the person I am at this moment.

Originally Posted by waldiamiga View Post
Soon to reveal the source code and the last demo created by author.
I cannot wait!
A note in passing: the textures clearly have been modified a lot, they contain a lot less high frequency information than the original ones: more flat surfaces and less variation. I guess the source code will reveal whether this is a factor in the impressive rendering speed but I would guess it is.
ReadOnlyCat is offline  
Page generated in 0.05500 seconds with 9 queries