Should you use the STEP file format?
Should you use the STEP/STP 3D file format? As is the case with all 3D file formats, it depends on what you're trying to do. In this article, we'll discuss the strengths and weaknesses of the STEP file format so you can decide if it's right for the task at hand.
|Ben Houston's Ultimate Guide to 3D File Formats|
|Part 1: glTF||Part 2: USD/USDZ||Part 3: FBX 3D||Part 4: OBJ 3D||Part 5: STEP||Part 6: glTF v. FBX 3D|
The STEP 3D file format (.step, .stp) is a data exchange format applied in the computer aided design (CAD) industry. It is primarily used to transfer real-world mechanical and architecture designs between different CAD software tools. Common CAD software tools that support STEP files include AutoCAD, Fusion, SolidWorks, OnShape, PTC Creo, CATIA and ArchiCAD.
A major reason for its popularity as a data exchange format is that it is an official international standard (STEP stands for Standard for the Exchange of Product Data). It was standardized by ISO committee in 1994 under the official name “ISO 10303-21.” Being a standard makes it easier for the various CAD software tools to implement support for it.
Wide Support by CAD Tools
No other CAD format has such wide adoption among professional CAD tools as STEP. In addition, no CAD tool that we know of has significant usage that does not support the STEP file format. Therefore, if your goal to achieve wide interoperability with a large variety of CAD systems, this is by far the best format to use.
Mathematically Perfect Surface Definition
The STEP 3D file format stores its data using a mathematical representation of curves referred to as NURBS. The NURBs curve specification is capable of storing data with exact precision. This level of precision can not be achieved using the polygon and triangle representations utilized by visualization-oriented OBJ, FBX, glTF and USDZ. The NURBS representation is used by CAD files because it allows for the final manufactured creations to have perfectly smooth curves, like nicely rounded iPhone cases or beautiful sweeps on car bodies.
No Materials or Textures
The STEP file format is focused on the transfer of shape and form and not on visual appearance. This is partly because of its historical roots back in the mid-1990s when CAD systems were simpler. In the last decade, CAD software tools have invested a significant amount of effort to support material on the CAD designed objects. For example, in an architectural design, the CAD tool may allow you to specify different surfaces to be concrete, painted, or stonework. In a mechanical CAD design, the CAD tool may allow you to specify surfaces as rubber, brass, steel, or a colored plastic. This material data is unfortunately not supported by the STEP format. Thus, when using STEP to transfer data between CAD tools these rich material and texture assignments are lost.
No Lighting or Cameras
By the same reasoning that STEP does not contain material and texture data, it also contains neither lighting nor camera information. Again, this is because when the STEP file format was designed in the mid-1990s, CAD software tools focused solely on representing and transferring the shape of the objects being designed. This means that you can not represent camera or lighting setups in CAD files, whereas you can in FBX and USDZ files.
Can’t be Directly Rendered
NURBS, the mathematical surface representation used by STEP 3D files, cannot be directly rendered using a GPU, nor can it be loaded by most renderers. Rather, it needs to be processed by a software algorithm that converts the mathematical surface representation into a series of triangles. These surface “tessellation” algorithms are very complex, especially if you want efficient results. People often license these algorithms, rather than writing them from scratch.
Complex Format Requirements
The STEP file format is relatively complex. Its data representation is very similar to a software programming language, with an order set of procedural calls that can reference other procedural calls specified earlier. The specification, while complex, is open and well documented. This means that while it can take a lot of work to implement, it is possible to implement if given sufficient time and attention.
The STEP 3D file format is a very useful file format for data transfer between CAD tools and from CAD tools to other 3D tools for the purpose of visualization. Its ability to represent perfect mathematical surfaces means that it meets the needs of engineers who want their designs to be manufactured. However, its inability to represent materials, textures, lighting means that when transferring to a visualization tool, a model will have to be reworked in order to be usable.
Threekit provides product visualization software that creates photorealistic images, interactive 3D and augmented reality experiences that help businesses sell more. To learn more, please schedule a demo with one of our teammates.