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

Home > Supported File Formats > Maya to OBJ


How to convert Maya (.ma,.mb) to OBJ (Wavefront .obj,.mtl)?


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.

     

Maya

Maya is a well known and respected DCC/Animation system which had originally been developed by Alias Research in Canada then purchased by Autodesk in 2006 after Alias went bankrupt.

As is very little understood, no program on this planet can read or write Maya ".ma" (ASCII) or ".mb" (binary) files because the full geometry modifier stack of the Maya software, and its various plugin modules, are needed in order to properly evaluate the file before it can be rendered. This is what forced Okino to write its well known PolyTrans-for-Maya system, which allows for all Okino 3D converters to run within Maya itself. For example, if you want to convert to/from CINEMA 4D (.c4d files) then you would do so entirely inside of Maya.

Due to multi-decades history, Maya users are notorious for using the OBJ file format to convert files to/from other software packages just as 3ds Max users wrongly use the 1985-era .3ds file format. OBJ is an "okay" file format but there are much better or more preferred methods to convert the data.

     

OBJ

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.