k3d: Experimenting with godliness

  • News
  • About

  • Tutorials
  • Information
  • Forum
  • References

          The Engine:
  • Docs
  • Screenshots
  • Downloads

  • Email:

  •    kilbert@inside3d.com
  • ICQ - 1200277

    Purpose: This site serves two purposes, one: promote my 3d engine that I'm currently working on, and two: to help you, the visitor, to either gain the knowledge to make your own engine or to assist me a little with mine. In the process, I hope I can learn from you, and you can learn from me some.

    The name: k3d stands for "Kilbert's 3D engine". I guess I forgot "engine" in the acronym, but oh, well. k3d sounds cool and can mean various things. For example: killer 3d, kool 3d, kewl 3d, krappy 3d, etc. This is going to be the working name for my 3d engine. It will probably be the release name too, unless I or someone comes up with something that I like 100% better.

    Myself: Now a little about myself. As you can guess, my handle is Kilbert. A merging of Dilbert, which I am a fan of, and killing, something I don't promote physically. My real name is Nolan Eakins. This is the first 3d engine that I have ever done. I don't have a lot of 3d programming or network programming under my belt, but that's the purpose of this site again, for us to learn. I do have at least a year and at most about 2 years of C, a few months of QuakeC, a few years of HTML, a little JavaScript, very little Java, and some C++ experience.

    That's the history of my programming experience. I have also messed with Doom editing, which got me hooked on games from id. I am a dedicated id Software addict. Went from Doom to Wolf3d to Commander Keen to Quake to Quake 2 and I also found a copy of Catacombs of the Abyss, I think that's what it was called, on a local BBS a while back. The last one was interesting. Picture Wolf3d running in EGA, sound only from the internal speaker, non-configuable controls, etc. It was quite impressive considering the time it was made and how id has kept the 3d shooter going through the years.

    From my addiction to games by id, it would be natural for me to want to match them. You only go and match the best right? While I was playing some older Apogee games that I got on a shareware CD, which introduced me to Wolf3d and Commander Keen, I saw a call for developers that knew C and assembly. So I then knew the programs I needed. I was looking around my local bookstore a few years ago, about the time I was getting into QuakeC, and found C for Dummies and a book on Linux that mentioned it had a free C compiler. I was set, got Linux up and working, read about half way through C for Dummies, realized it sucked, and got C in 21 Days along with a copy of Borland C++.

    I got the basic knowledge of C down. I latter got a book on game programming and that got me doing some graphics coding. The release of the Doom source was a god-send for me, and I found the DosDoom port of the Doom source code. It used Allegro and DJGPP which really propelled my programming forward. I messed with them for a few months, and then tried to make a 2d game. I eventually got bored with it due to lack of motivation and other things.

    Near the end and after that I toiled with Visual C++ 4.0 and MFC. I eventually got bored with that too and wasn't very productive. I was also getting horendisly sick of Windows too. Chose to uninstall Linux since my new 3d card didn't work with XFree86. I read about SuSE's distrubution and they had an X server for my video card which I got not to long ago. It has spurred me to jump into X programming, 3d/OpenGL programming, and perked me up some. That brings us pretty close to the present.

    After pouring over PC Gamer's preview of Q3A I really really wanted to learn OpenGL and make a 3d engine of my own that matched that of Q3A's. I started to do my OpenGL programming. I got a 3d cube up and going, but nothing super complex yet. I then got a hold of Next Generation's interview with John Carmack and that even added more to my drive. That got me with the idea of doing a real time ray tracer, but I'm putting that on the back burner for now. It also got me wanting to look for anthing on bezeir curves and surfaces. I found a page that had what I was looking for, the equations. I got a 2d bezier curve plotter working, but I have yet to try a 3d surface.

    So that brings up my goal for my engine. To match Q3A in graphics, speed, expandibility, etc. Maybe even exceed it since I currently have a 180mhz Pentium MMX overdrive chip with a Diamond Stealth S220(Rendtion v2100 chip) and I'm going to aiming for at least 10fps on my computer. That should translate into nothing but speed on a Pentium III.
      Copyright 1999 Nolan Eakins