Introduction | Command Line & Usage | Detail Brushes | Direct & Face Mode | Extrusions

Extrusions
OBJ2MAP extrusions allow you to easily create terrains, arches, or even domed ceilings. Like face mode, extrusions create a brush out of every polygon in a model, but extruded edges are usually shared between multiple brushes which means they'll be consumed in the BSP process, resulting in more efficient geometry.

OBJ2MAP always extrudes polygons away from the surface normal. This is done to maintain the contour of the model when viewed from the "proper" side (that is, with the surface normals facing the viewer). There are three different types of extrusions available:

Heightmap Extrusions:
Extrudes all polygons in the specified direction, and caps the brushes to produce a uniform end cap. The -hoffset command line option can be used to globally adjust the distance of the end cap from the main geometry. The default -hoffset value is 0, and heightmaps can accept negative values to achieve "clipped" effects (note that negative values above a meshes maximum point coordinate will result in no brushes however).

Important: Polygons perpendicular to the extrusion axis will fail to convert properly if the offset value lies exactly on the same plane (like a terrain with a plateau at the base and using on offset value of 0).

Name Flag: Description:
_HFC_ Heightmap Floor/Ceiling. Extrudes along Quake's Z axis (up and down).
_HEW_ Heightmap East/West. Extrudes along Quake's X axis (side to side).
_HNS_ Heightmap North/South. Extrudes along Quake's Y axis (forward and backward).
Note: When viewing a Map from the top view, North is up.

Heightmap extrusions will not work properly on closed volumes. Models with polygons perpendicular to the extrusion axis, or with normals facing in opposite directions will also cause problems. (Read those two sentences again till they makes sense). Heightmap extrusions are the natural choice for terrains.
Axial Extrusions:
This is essentially identical to a Heightmap Extrusion but the end caps are a duplicate of the original polygon rather than a shared plane resulting in contours on either end. The -aoffset command line option can be used to globally adjust the thickness of the resulting brushes. Axial extrusions require an offset value greater than zero. The default -aoffset value is 16.

Name Flag: Description:
_AFC_ Axial Floor/Ceiling. Extrudes along Quake's Z axis (up and down).
_AEW_ Axial East/West. Extrudes along Quake's X axis (side to side).
_ANS_ Axial North/South. Extrudes along Quake's Y axis (forward and backward)
Note: When viewing a Map from the top view, North is up.

Axial extrusions have the same limitations as Heightmap extrusions.
This brush group would be next to impossible to create without OBJ2MAP's Axial Extrusion

(Quiver Screenshot)
Normal Extrusions:
This is sometimes referred to as a "smooth shift" in 3D packages, Normal extrusions essentially create a "shell" of the original model. A more appropriate description of this extrusion method would be "Smoothed Vertex Normal Extrusion". The -noffset command line option can be used to globally adjust the thickness of the resulting brushes. Normal extrusions require an offset value greater than zero. The default -noffset value is 16.

Name Flag: Description:
_NEX Extrudes along a model's averaged vertex normals.

Normal extrusions may seem like the best way to go in many situations, but they can easily result in bad brushes due to rounding errors. They will always maintain the contours of the original polygon faces, but the extruded edges may not always meet up perfectly on oddly oriented polygons.
Try designing geometry to take advantage of Heightmap or Axial extrusions instead of Normal extrusions or Face Mode as they are more robust. Currently, Normal extrusions will often give poor results with triangulated geometry, or quads that aren't aligned to at least one major axis. Normal extrusions are a good choice for simple, aligned archways however (as illustrated below).
Illustrated Extrusion Examples:
Original OBJ models, showing
facet normal direction.
Side view of the final brushes - Starting from the left: _NEX_, _AFC_, _HFC_


Same as above, overlaid with the original polygons & normals

Introduction | Command Line & Usage | Detail Brushes | Direct & Face Mode | Extrusions