Zettix.com
Graphics: Virtual Reality
Engine
This program used to run on Linux and Dos systems. Linux no
longer has the vga library, and the dos version uses
int 13h to get into vga mode. Hence, this code is more for
academic study now.
This VR engine uses a software algorithm to render triangles. While
seemingly obsolete since the introduction of consumer 3D hardware,
software
based engines are still useful for such things as cell phones and
refrigerators.
The algorithm, called a S-Buffer, uses a scan line based Z-buffer,
however, Z values are only stored for the endpoints of line segments on
a scan line. A single triangle occupying a 100x100 image buffer that
would require 10,000 Z-Buffer cells, would require only 200 cells using
an S-Buffer.
The program uses a unique model syntax called "rfs" to store
models. lexx and yacc are used to parse the model files, and the
Makefile should guess if you are using Dos or Linux and attempt to
compile.
Screen shots:
Angel island, in mesh and
solid modes:
Source Code: slistsrc.zip Contents
Source Directory: src/
Dos Executable: slist.zip Contents
Dos Directory: floppy/
Go Back