LDraw is a popular system of free software tools for modeling LEGO creations in 3D. The LDraw file format and original program were written by James Jessiman. He also modeled many of the parts in the parts library that is central to the program. Since then, a variety of programs have been written that use the LDraw parts library and file format. LDraw models are frequently raytraced in POV-Ray, a free 3D renderer.

The LDraw format divides a model into steps so that the building instructions can be incorporated into the design, and also allows for steps that rotate the camera and even (primitively) move parts around. It also allows for models to be used as pieces in larger models to make design easier.

All of these tools, as well as information about LDraw and other resources, are available from the LDraw website:

Table of contents
1 Modeling
2 Viewing
3 Converting

Modeling

It is possible, but difficult, to generate a LEGO creation solely by entering the piece "part numbers" and their positions. Usually, the following tools will be used to put them together.

  • ldraw and ledit are the original MS-DOS programs that were written by James Jessiman. It has not been updated since 1997, and is considered obsolete.
  • LDraw-mode is an EMACS major mode for editing LDraw files as text.
  • MLCad, an orthographic editor with a wizards for generating minifigs, hoses, belts, and springs. It is availible for Windows, but is known to work in WINE.
  • LeoCAD, an editor with a perspective camera. It is availble for Windows and Linux.

Viewing

Converting

  • L2P and L3P, two similarly-named but independent programs that convert LDraw files to files that can be rendered with POV-Ray. Both of these programs use Lutz Uhlmann's LGEO library, which contains LDraw parts hand-converted to POV-Ray CSGs for better-looking parts. They run under MS-DOS and Linux. (NOTE: The LGEO library does not use semicolons after #declare statements, so "#version 3.1;" must be added to the beginning of the file to make it render in POV-Ray 3.5)
  • LDraw2LWS is a Windows program that converts LDraw files to Lightwave Objects and Lightwave Scenes.
  • Ld2vr converts LDraw files to VRML. It uses Java, so it should work with any operating system.