VOXEL²SPACE

Voxel2Space is the title of the concept for making a voxel engine for the TI-89 calculator.

I have now three programs under this topic. The first one is Voxel2Space – Technology Demo. It was originally created for experimental purposes, only to see how I can reach my aim of a fast voxel engine.

The other two products are V2, the realtime engine improved through the knowledge gathered from its predecessor, and VX.Studio the voxel map editor for making maps in the easiest way directly on the calc.

 
V2 is featuring:

  • Full scale texture mapping
  • 8 gray levels
  • Maps without borders
  • Realistic lighting and shadows
  • In-game surface deforming
  • And all this in realtime!


Where came the idea from to make a voxel engine for a calculator?

At first I must say, I made some complexer voxel processors earlier for my movies and I wanted all the time making such an engine for games too, but i thought there were already too many games out there for PC. Additional, I never liked Windows programming and Direct-X has become so damn complex and makes so many problems on multiple levels for a single programmer like me, that I decided not to do (try) it.

but some day in the end of 2003, don’t ask for the reasons, but I tried the first comanche game on my very, very old B/W-laptop with a 20 MHz 386 CPU (SX). It ran pretty slowly but still playable! I thought about the processor of my TI-89 compared to the laptop and the idea was alive.

Yes, the TI-89 has only 12 MHz but you must consider, you don’t need to fill a whole 320×200 screen resolution but only 160×100. Together with some other Ideas I had, I knew it could be possible and as you can see today, I was right!


What is V2 exactly and what’s the difference to Voxel2Space – Techdemo?

V2 is based on the Z-Plotter rendering method used in Voxel2Space Technology Demo, that’s the only similarity between both voxel processors. The most other technical details are different to the original Voxel2Space demo.

For best performance and to optimize it for fastest possible RAM access, the renderer was completely reprogrammed.

Against to its predecessor, if V2 want to get the informations of an individual voxel from memory, it now can take the coordinates of the voxel directly as memory adress. In this way the processor don’t even need to calculate voxel memory adresses anymore, that gives an enormous speed improvement and makes this engine finally possible.


What about the ’2′ in Voxel2Space?

If you think the 2 is the accronym for “to”, then you are totally wrong! Let me explain what my first thoughts was:

There are two different types of voxels. At first we have voxels based on 2-D bitmaps, which were used only to generate surfaces. The second type voxel is a real filled 3-D cell, with them you are able to create any real object in virtual space. So this number 2 in the name indicates just the base of my voxel engine, let’s say the number of coordinates you need for each voxel.

As you can see, Voxel2Space is primarily for displaying landscapes, I need only 2 coordinates X and Y.


Do you plan to create a full game with V2?

Good question, as I said above I ever wanted it and, like many other programmers does, I don’t want to say: “Maybe, sometimes…”

I will definitly make a game using V2, but I’m not yet sure what exactly. I want to make something of pure gaming fun, such as Magic Carpet. On the other hand I guess, the most people want to have comanche for the calc. Of course, MC is much more complicated to realize, especially the AI, but it would be simply more fun and longer entertaining.

 
Latest Releases:

Voxel2Space – V2 Demo v1.5 | Source
(2006-07-31)

VX.Studio v1.4 | Source
(Check the Reference Manual included in this package.
And here you can find a map import plugin for Blender.)
(2006-07-31)

Voxel2Space – Technology Demo v1.2 | Source
(2004-09-05)

VX.Studio Video Tutorials:

VX.Studio – The First Map – AVI (XviD) – 3,89 MB
(It’s intended that there is no audio.)


Voxel2Space – Techdemo:

voxel04 voxel03

voxel02 voxel01


Voxel2Space – V2:

v2_32 v2_31

v2_30 v2_05

v2_03 v2_02

v2_01


VX.Studio and V2:

vx-st_31 vx-st_30

vx-st_21 vx-st_20

vx-st_13 vx-st_12

vx-st_11 vx-st_10

vx-st_09 vx-st_07

vx-st_06 vx-st_05

vx-st_04 vx-st_03

vx-st_02 vx-st_01

VX.Studio - The First Map