Wallace Software

Download

demo.zip (1MB)

Inspiration specs

Specs:

  • 32 bit colour
  • FAST alpha blending routines
  • Dynamic lights of any size and colour
  • Dynamic sound (Open AL)
  • Non-orthogonal walls
  • Bump mapped floors/ceilings
  • True and False 3d sprites
  • Dynamic environment
  • 128x128x24bit textures
  • Super-Advanced Game building software

Once finished, Inspiration will be the base for all my FPS for a long time to come.  I currently have three uses planned for it:

  • Contact 2 - the continuation of the original Contact
  • Contact - Contact will be re-released using Inspiration, while Contact was very good, the Inspiration engine would move it up from good to top-of-the-line
  • Inferno - "Lasciate ogne speranza, voi ch'intrate" - a walk through Dante's version of hell, you will fight demons and try to escape as you examine your own soul

Screenshots

 

Newest Screenshots (05/12/05)

About 3d engines

There are basically four types of 3d engines written in Qbasic: The raycaster, BSP, voxel, and polygon.

Raycaster - The raycaster is the most popular, it is fairly fast, allows for large levels and is easy to work with.  But it only allows you to have cubes for walls. 

BSP - The BSP engine is not very popular.  As far as I know there was only one ever written in qbasic by M/K.  It is not textured, you cna have walls intersecting at whatever angle you like, and they can be any height that you want.  It also isn't very fast.  M/K has to do calculations for every single face in the world.  In a world suitable for a game there could be thousands of faces, it is right now too slow.

Voxel - These are popular because they look great.  They are not textured but usually don't have to be.  They can have round rolling hills.  This is great for fields, but as for large worlds it still isn't very good.  It works like a raycaster reaching out until it finds a block, then draws it, but since it goes out in three dimensions it could get slow, especially if there is a lot of sky where it will never find a block.  The blocks are also very small so there must be thousands of them to make a world, and Qbasic doesn't have the memory for that.

Polygon - The polygon engine is gaining some attention.  It uses polygons, which can be textured, but again the engine must be able to do calculations for every node in every polygon.  While small demos seem fast once the worlds get large and more complicated they start to slow down.

Bumpmapping - This engine is similar to a voxel engine, but works like the floor texturing system of the raycaster.  You figure which texture to draw, them use the texturing sub to draw the correct colour, then use the bumpmap to see how high to draw it.  With it you can create perfect arches, rolling hills.  This engine has never been used in Qbasic as far as I know, but Inpsiration will.

 

Insiration is an combination of raycaster, bumpmapping, BSP.  It takes some characteristics of all of them and puts them together in to what I believe to be the most powerful 3d engine ever created in FreeBASIC