Not logged in, Join Here! or Log In Below:  
News Articles Search    

Submitted by Malte Weiß, posted on July 18, 2001

Image Description, by Malte Weiß

I'm a seventeen year old student from Germany approaching the 12th grade. In March 2000 I decided to design a real 3D computer game after I have had spent the time before writing smaller games and database applications to earn some money. Fortunatly my school gave me the opportunity to get a higher score in my A-levels next year if I present and illustrate my project in an oral test. That's given me another motivation to work harder:-)

Because of my philosophy not to use "foreign" programs I have attempted to do everything myself. And it has worked until now ...

In March 2000 I started to write a 3D level editor called 'Worldbuild' (image at top left). I have worked with several editors before so I followed the aim to create an easy-to-use but highly effective editor. The work space is seperated into three 2D views and one 3D view. The user inserts primitives into the 2D view. These can be modified by cutting, moving, rotation etc. Additional objects like lights, lens-flares and sprites can also be created here. All these elements are directly rendered in the 3D view. It is responsible for all texturing operations as-well. The most important actions can be done by mouse and/or a few keys.

It needed nine months to get the editor into the beta stage. After that I began to implement special functions like a landscape-generator, a texture interpolation function (to correct smaller texturing errors) etc. The program interacts with DirectX. The 2D view uses the DirectDraw components of DirectX7, the 3D view renders using DirectGraphics of DirectX8.

In November 2000 I decided to create my own texture format to be independant from standard formats. So I developed the 'Texture container'. It is used to create a container of imported bitmaps. A special function of this program is the possibilty to do image animation.

A compiler (image top right) is integrated into Worldbuild which converts the maps into a format which is faster to read. Moreover it pre-creates an OcTree structure which is used by the game.

Some other programs followed like a file container (to group and contain files) and an updater program called 'Phalanx Updater' which can be used to download the newest components of the project. This was designed and created for the beta-testers.

On June 22nd I started with the core game: the 'Racer' (I'm sorry about that stupid name. I'm still searching for a better one.) It is (or will be) an action racing game: you will fly races with small futuristic space-ships, armed with several weapons you can shoot your enemys. I think, I'll write this part of the game in Autumn :-) At the moment I'm writing my own 3D engine. The first screenshots are shown in the image above (images bottom left and right).

The progress of my project can be "viewed" on the homepage: I'm sorry that it's mostly in German. But the screenshot and statistic sections might be of some interest for you:-)

I'm still searching for a better name for my game ... I welcome every idea ;-)

Malte Weiß

Image of the Day Gallery


Message Center / Reader Comments: ( To Participate in the Discussion, Join the Community )
Archive Notice: This thread is old and no longer active. It is here for reference purposes. This thread was created on an older version of the flipcode forums, before the site closed in 2005. Please keep that in mind as you view this thread, as many of the topics and opinions may be outdated.

July 19, 2001, 03:40 PM

Here is my opinion ( you may obviously disagree ) :

Writing your tools is very good for learning purpose. When time is critical, you MUST NOT do everything by yourself, use existing tools. Rewriting parts of an application is just doing another version, making your code better. Design specs is a mandatory step of any project building.

That's all.. bye.


Rectilinear Cat

July 19, 2001, 04:14 PM

Rewriting code is for the purpose of personal fulfillment, not so much a rejection of everybody elses code. I think the only tools I have really used are sound tools and lib3ds (opengl/win32 sdk are granted here!). ANd those are just temporary solutions until I get time to really investigate my options in those areas (DirectSound, 3D model format). All this talk of "efficiency" and "meeting those deadlines and not reinventing the wheel" is for those who put food on the table with their code. For the rest of us, we are free to learn as much as we want.

I did some basic 3D stuff in Turbo C++ 3.0, abd I could have gone on to write my own super collosal software engine, but instead I decided to use OpenGL, like so many others, because, while I have time, I don't have _that_ much time. Anyway, enough ranting. VERY nice IOTD! This is exactly the sort of the thing on my TODO list :)


July 19, 2001, 04:42 PM

Ok, now you're making assumptions about what my coding practices are. Newsflash - I do this for a living, I can't afford to write sloppy code, and I can't afford to write code that will warrant a rewrite. I said I'm lazy, I didn't say I'm dumb or masochistic.



July 19, 2001, 06:19 PM

Not, it's more related to sun which thinks it has 2000 rays, but has no rays at all.

Sebastian Sylvan

July 19, 2001, 06:50 PM

You're not God either.

Newsflash: Nobody writes perfect code all the time. Nobody. Not John Carmack, not Tim Sweeney, and not even you.
If you're working on a semi-large project some code will be sub-standard. Not all code will be of the same quality, which must mean that some code will have lower quality than other code. Rewriting this code to make it more clean, robust and easy-to-read can (and will) do wonders for your bug-list at the end of the project.

I also gather (incorrectly perhaps?) that you don't believe in the mertits of prototyping for the purpose of early feasability tests, well I guess that's your (potentially multi-million-dollar-) loss.



July 20, 2001, 11:47 AM

I think you might be confused. Yes, nobody writes perfect code, but no, it's not that hard to follow good OOD, comment your code and make sure that others can read it. You mentioned earlier that you (you were referring to me, but let's pretend that you weren't that presumptious) couldn't wait to see the results so you coded in a hurry. Well guess what. Most of us have an attention span exceeding that of a five year old, and can cope with waiting to see the results for an extra few minutes.

In every company I've ever worked at, everyone conformed to the same programming style, which was outlined at the beginning of the project. I don't see why you insist on claiming that I sometimes write ugly code, in order to justify your equally ridiculous claim that it's somehow a good idea to write code that will warrant a rewrite later on. You have no idea what my code looks like.

And.. "my potentially multi-million dollar loss" ? What, the HELL, are you smoking?



July 20, 2001, 12:20 PM


This thread contains 67 messages.
First Previous ( To view more messages, select a page: 0 1 2 ... out of 2) Next Last
Hosting by Solid Eight Studios, maker of PhotoTangler Collage Maker.