You are here:   Home »  Products »  PolyTrans|CAD+DCC  

Home > Supported File Formats > OBJ to VRML

How to convert OBJ (Wavefront .obj,.mtl) to VRML (VRML2, VRML97, X3D)?

PolyTrans|CAD+DCC performs mathematically precise CAD, DCC/Animation, GIS and BIM 3D file conversions into all key downstream 3D packages and file formats. Okino software is used and trusted throughout the world by many tens of thousands of 3D professionals in mission & production critical environments, backed by respectable personal support directly from our core development team.



Wavefront OBJ is a little understood but highly used and prevalent 3D "polygonal mesh" file format used throughout the 3D graphics world. Okino, Alias Research and McNeel made it popular in the early to mid 1990s as a general purpose, simple-to-read, storage and transmission 3D file format, especially for the then-new companies who began to sell 3D mesh models via the Internet.

Relatively speaking, OBJ is a rather simple file format but a bit better than STL although similar to the more modern 3MF format.The OBJ format allows for 1 or more unique polygonal mesh objects to be defined, each with optional UV texture coordinates and vertex colors. Material definitions can be linked to the mesh geometry as defined in the separate 'MTL' file. The material definitions are rather simple (ie. no PBR material support) but acceptable, and with varied levels of texture mapping support. OBJ format does not provide support for object hierarchy, local transformations, meta data, lights, cameras, skinning or animation. Most notably, OBJ does not allow for 'object instancing' and hence 1000 copies of a screw would be saved to OBJ as 1000 explicit copies, rather than 1000 references to one master object.

A short history: In the 1980s there was a program called Wavefront Visualizer which ran on UNIX and ran its early rendering pipeline as a series of tee'd command line 'applets'. The data flowed from one applet to another via various ASCII based files - OBJ for geometry, MTL for materials and other ASCII files for animation, skinning, deformation, etc.

Okino knows of the Wavefront OBJ file very well as it provides the one and only full implementation of the OBJ file format and with the ability to consume exceedingly large OBJ files quickly and efficiently. This includes the only known implementation of OBJ-centric 'NURBS geometry' (surfaces and curves) within the OBJ file format (which is little or not used) other than that from the McNeel Rhino-3D software.



VRML2 ("Virtual Reality Markup Language") is one of the very best of non-MCAD file formats, little appreciated and lost (mainly) to the annals of time. Many people (wrongly) believe that FBX is the primary "translation file format" but VRML2 pre-dated it by at least 10+ years and has equally good or better functionality (and in an open, non-proprietary specification). It was supplemented or augmented by the X3D (XML-based) file format in the mid 2000s. The Web3D Consortium supports the evolution of VRML2/X3D and of its acceptance as ISO and IEC standards.

Without getting into specifics, VRML2 can be considered a "rich file format" in terms of its functionality and capabilities, yet few software programs fully utilize all of that functionality. It could have, and should have, become the defacto "universal 3D file format" for data translation and long term storage but it did not have the clout nor marketing dollars that other newer formats had such as from Autodesk (FBX, DWF), Sony (COLLADA), Adobe+Intel (U3D), Dassault Systemes (3DXML) and others.

VRML1 and VRML2 are 3D file formats with a long and complex history. They were originally developed in the mid 1990s to define 'interactive 3D worlds' on the then-new World Wide WEB. However, statistically speaking, VRML2 became more well known as a high quality "data translaton and storage" file format, partly due to Okino pushing it as such a standard in the industry. It was implemented by a good number of 3D software packages and hence became a "reliable back door" to convert 3D assets out of those packages before FBX, DWF, COLLADA, U3D and other similar file formats came along in the mid to late 2000s, or glTF in the late 2010's.

It is also known as VRML2, X3D, Classic VRML, VRML97, VRML1 and Inventor2.