PROJECT 0 ENGINE |
PROJECT 0 ENGINE
Project 0 was a test engine I developed in between 1997/98 to show to possible investors the potentialities of a BSP technology I was researching at that time.
These are two screenshots of the actual engine:
INTRODUCTION
At the end of 1997, through reverse engineering of the .BSP format of the Quake maps (at that time there were however a lot of other people around the web interested in the same thing (i.e. knowing the format of the .BSP files) so my research, at least in this case, benefited from this) I was able to write this software/glide renderer whose output graphics quality can be compared to the original game.
Before this engine, I wrote 3 or 4 other engines (including a perfect Wolfenstein clone some years before) which used third-party editors (as in the case of this Project 0) for creating the three dimensional content for the renderer. This version is the most evolute non-professional engine I have written during that time. Its purpose was to show my skills to several potential investors in order to obtain the money and support for developing a full-fledged, professional quality technology.
FEATURES
|
Implemented in C with portions (i.e. texture mapping routines) written in Assembler. |
|
|
BSP rendering of Quake 1 maps. |
|
|
Use of PVS information for speeding up rendering. |
|
|
DirectDraw support (software mode). |
|
|
Glide support (hardware mode). |
|
|
Perspective texture mapping routines with software gouraud shading support (software mode). |
|
|
Gouraud shading (hardware and software mode). |
|
|
BSP-compliant collision detection routines. |
|
|
DirectSound (mixing) support (the game plays when started the "incipit" of the Beethoven's 5th piano concert. Additionally several ambient and event sound effects are included.) |
|
|
Mip texturing (4 lods). |
|
|
4 maps included. |
|
|
Gravity effect support. |
DOWNLOAD
Download Project 0 (binaries only) from here (534KB).
N.B. Due to an hard disk crash in 1998, I lost the source codes of this program (along with the sources of many other works and applications I created before that time). The crash was caused by a complete-idiot technician who tried to install DOS on the harddrive where my Windows 95 partition was installed (overwriting both copies of the FAT on that disk). Besides these details, the problem is that today I am unable to recompile Project 0 and thus to fix an annoying display bug that comes out when launching the program with newer versions of DirectX and video hardwares. Since the program writes directly into a DirectDraw surface, specifically I guess that the problem is caused by my application not taking into account correctly the "stride in bytes" value that needs to be added when writing to the framebuffer for addressing each scan line. This causes that several screen modes of the ones that are available in the program are not managed correctly by the renderer resulting in a compromised and messed up drawing. In order to resolve this problem, please try one by one each screen mode available for discovering which one is compatible with your video card and framebuffer layout.
|
|
|
|
|
|
|
|
Photos |
Various images from italian conferences and events (keep the mouse
on a thumbnail for a short description):
|
|
|
|
|
|
|
|
|
Site
login |
NOTE: Actually the login feature is used only for
administrative and content management purposes.
|
|
|
|
|
|
|
Everything here (code, binaries, text, graphics, design, html) is © 2010 Vito
Plantamura and VPC Technologies SRL (VATID: IT06203700965).
If you download something (compilable or not) from the site, you should read
the license policy file.
If you want to contact me via email, write at this
address. |
|
|