This is an old revision of the document!
Do you know how a Lego model or a real house is built from bricks? Invidividual, small bricks are combined to form a complex architectural structure. CaWE works principally in the same way, and thus if you can visualize how individual bricks form a model or a big building, you will find it easy to grasp the concepts behind CaWE.
In CaWE, the bricks are called brushes, and they come in several shapes: blocks, wedges, cylinders, pyramids etc. Moreover, you can modify the default brushes in many ways. They can be scaled, sheared, mirrored, cut in pieces, carved and so on. You can create an arbitrary big number of these brushes in any shape you like, and use and combine them for building the matter that forms your world: walls, floors, roofs, furniture, rocks, … . Brushes eventually get materials assigned that represent the surface properties of that brush, as for example rock, glass, concrete, sand or water. The creation of brushes is detailed at newbrush.
Modelling really complex surfaces can be difficult with brushes alone, especially if the surfaces should be curved, organic, or very big. Ca3DE and CaWE therefore provide two additional basic elements that complement brushes: Bezier patches are curved surfaces that you can imagine like bent or stamped metal plates. They can be used to model pipes, curves, smooth archs, and many other organic objects. The creation of bezier patches is detailed at newbezierpatch. Terrains are similar, but as their name suggests, aim at surfaces that are much bigger and more irregular. They're also treated specially by the engine and have very high performance. The creation of terrains is detailed at newterrain.
Entities define and represent all other interesting things in a world, and they come in two flavours:
The creation of entities is detailed at newentity.
While static detail models are really only a specific type of entity, they provide another powerful means to augment the detail in your world in a way that is not easy or even impossible to achieve with brushes, bezier patches and terrains alone. Such models can be imported from your favourite 3D modelling program, they can be arbitrarily complex, and they can for example be under the control of a level-of-detail system. Examples include models for furniture, statues, household inventory, vehicles, etc. A description of all available entity types is available at Entity Guide.
By combining these simple components, you can create stunningly virtual worlds whose number of variants is virtually unlimited. Starting with a rough outline of brushes and possibly terrains, you can fill in architectural detail with other brushes, patches and entities. Eventually you will populate your world with more entities that bring your creating to life.
The final step in making a world is compiling it so that it can be run with the Ca3D-Engine. This is a quite complex process that precomputes visibility, lighting and many other details. Future versions of CaWE will come with a great tool to make compiling much easier, but until then a little typing at the command-line must be done to run the compilers. It's still easy to manage, and discussed in detail in the articles cabsp, capvs, calight, cashl and ca3de.