[Algorithms] Ellipsoid Engine used in game "Ecstatica": how its done?
Brought to you by:
vexxed72
|
From: Andre K. <po...@an...> - 2007-09-07 09:15:57
|
hello, i recently re-discovered the game ecstatica from andrew spencer productions: http://www.gamespot.com/pc/action/ecstatica2/images.html my question is - how did he draw those ellipsoids that fast ? (ecstatica 1 was from 1994 and was quite impressive as compared with those low-poly non-textured models in for example alone in the dark) i can somehow imagine how to render fast, axis-aligned ellipsoids including some z-buffer, but i cant imagine how those ellipsoids could be rendered with a free long axis. wouldn't this require a full matrix multiplication per pixel? even with lookup tables for sin/cos i can imagine it would have been too slow on 1994 hardware. another question: how is collision detection done int alone-in-the-dark style games with pre-rendered 3d-backgrounds? ok, visibilty check is easy - just store a z-buffer. but how is collision with the pre-rendered background done? did they store some kind 3d-z-buffer ? maybe with voxels twice or 4 times the size of the pixel resolution? or did they just define a bunch of bounding boxes? third question/idea: would it be cool to make some pixelshader on modern graphics card, implementing those ellipsoids and making a modern variant of ecstatica? this would give some nice organic look. and with todays hardware, one could maybe literally spit out millions of those ellipsoids.. |