Extensions

Type

Read Write Notes

.geo

Internal Houdini ASCII geometry format.

.bgeo

Internal Houdini binary geometry format.

.poly

Internal

Prisms ASCII format (polygons only).

This format only supports polygonal geometry types. It is included in the Geometry Editor to maintain compatibility with other, older, systems.

Tip

In a .poly file, the first point referred to by the polygons is point number 0.

.bpoly

Internal PRISMS binary format (polygons only).

.d

Internal PRISMS move/draw format (polygons only).

.rib

Internal RenderMan geometry.

.dxf

External

Uses gdxf - polygons only, no attributes.

.dxf was invented by Autodesk for use with AutoCAD. It is a common geometry exchange format. .dxf format only supports polygonal geometry types.

.dxf layers are mapped to groups when read into the SOP Editor. Texture and color information is lost if you save to a .dxf file.

.obj

External

Uses gwavefront - polygons only. Only texture and pointnormal attributes (groups are kept on read).

.obj was invented by Wavefront. It is a very common geometry exchange format. .obj supports polygons, textures, normals, and groups.

.pc Internal

Point cloud tile-based format, as written by pcwrite.

.sdl

External

Uses gsdl command.

.sdl was invented by Alias/Wavefront. It was traditionally used as input to a renderer.

Houdini can read .sdl files but cannot write them. Houdini only imports spline surface geometry (and instances of spline surfaces), and the name of each patch and shader is imported. It does not import colors and texture coordinates.

.eps

External

Uses geps command.

Houdini reads .eps files from Illustrator 5.5 as planar geometry. It does not import fills, patterns, or colors.

.med

External

Uses gmed command.

Houdini will read Meta Editor metaball files, although eccentric information is lost upon loading.

.lw

External

Uses glightwave command.

.lw was invented by NewTek for use with LightWave. Houdini supports objects from version 3.5 and earlier. Houdini only handles the following LightWave features:

  • points

  • polygons

  • surface names (as primitive groups)

  • surface color as primitive colors)

  • surface transparency as primitive alpha)

  • surface smoothing (as internal cusp operations)

Houdini will ignore all other features. It cannot load files saved with layer information. The file to be loaded must contain points. However, it need not contain any polygons.

Note

By default, LightWave objects are rendered as faceted (no smoothing) whereas in Houdini you must explicitly cusp polygons in order to achieve this. As a result, if you load an object that has no smoothing values set (all faceted) you will end up with all points in the resulting object being "unique-ed" - giving you a much larger data set. To get around this, manually convert the file using the glightwave utility with the -s option.

.ply

External

Uses gply command.

.ply was designed at Stanford University and UNC Chapel Hill, and is mostly used for academic research and with Cyberware scanners.

The .ply format is a polygonal format. It can handle very large data sets, and supports vertex normals and colors. Houdini can read and write .ply files using the gply standalone program.

.stl

External

Uses gstl command.

STL (and BSTL for binary) stands for Stereo Lithographic and is widely used in CAD software as well as many 3D scanners.

.off

External

Uses goff command.

OFF stands for Object File Format, but is not to be confused with OBJ format. It only supports closed polygons and positions for points.

.hclassic

Houdini 11 ASCII geometry format.

.bhclassic

Houdini 11 binary geometry format.

.json

Houdini 12 ASCII geometry format

.bjson

Houdini 12 binary geometry format

Note

Setting the environment variable HOUDINI_GEOMETRY_FORMAT to hclassic will set .geo/.bgeo to save as .hclassic/.bhclassic format. This will cause Houdini to save locked geometry in a format that can be read into older versions of Houdini. The older hclassic formats do not support all features of the newer geometry libraries, so use of the environment variable to override the format globally should be used with caution.

See also

Supported file formats