kludge3d Sourceforge page


  About kludge3d

Kludge3d is a simple 3d polygonal modeler, based on code harvested from several other (presumably abandoned) projects. Kludge3d is released under the GPL, and requires GTK2 and gtkglext to work.

Kludge3d, as the name implies, is a kludge. An ugly hack. It will never be the next 3d Studio MAX, or even the next Milkshape. I set out to fashion a usable GPL'ed level modeler, similar to AC3d, for creating game levels. Rather than re-invent the wheel, I based my efforts on several existing editors, and kludge3d is the result. I hope you will find it useful.

What it does:
  • loads and saves several file formats.
  • creates vertices and polygons. No NURBS, splines, etc.
  • organizes polygons into groups (aka meshes)
  • applies textures to polygon meshes

In writing kludge3d, I took code from the following projects:
Most of the interface was taken from G3D. The opengl-preview was taken from ME3D. Orbit provided much of the AC3D loading code.

Over the course of development, most of the code has been re-written. Very little of the code from G3D remains. Vestiges of ME3D remain in certain parts of the document-loading code. At this point, I consider kludge3d to be very much my own project.


q) Why bother with another 3d editor? Haven't you heard of AC3D, or Blender, or PrettyPoly, or [insert name here]?
a) AC3D costs money. Blender is impossible to use. PrettyPoly uses FLTK, which I don't really like. Why not start a new project? One that is (1) GPL'ed, (2) based on GTK, and (3) easy to use?

q) What can kludge3d do?
a) It can load geometry files, place and manipulate vertices, link vertices together to form polygons, apply textures to those polygons, and save the results back to a file. Lots of new features will be added with each release, so you might want to check out the latest version before jumping to any conclusions. My intention is to eventually be able to create complete game levels from within kludge3d. UPDATE - I've done exactly that. Please see my CityBuilder project.

q) What file formats are supported?
a) As of July 2003, kludge3d can load AC3d, Wavefront, and 3ds files. It can write AC3d, Wavefront, and Quake (.map) files.

q) Have you given any thought at all to the design or structure of the code?
a) In a word, no. The philosophy behind this project is to do things the Fast Way, rather than the Right Way. I really don't care if kludge3d is extensible, or has a strong, object-oriented design. UPDATE - Kludge3d has progressed quite a bit since this FAQ was originally written. A lot more thought has gone into the design. Oh, and kludge3d is extensible now, by way of embedded python.

q) How do you pronounce "kludge"?
a) I used to pronounce it like "sludge", but I've heard it pronounced by programmers more venerable than I, and they pronounce it "kloodge". See the jargon file for more on this.

SourceForge Logo