views:

83

answers:

1

Hello!

Does someone know any C++ library / interface to handle 3d-model data in common formats (.obj, .3ds, .ply, ...)?

There are some libraries that I can find, like lib3ds or libobj, but if I want to handle different object formats, I would really need to get used to API of them all and write a bunch of my own wrappers so that my code doesn't turn into a mess.

So, I'm interested if there are some alternatives (even commercial), but which act like a swiss knife for a big army of different 3d model formats?

Thank you.

+4  A: 

Check out 'Open Asset Import Library' (AssImp)

It supports these formats:

  • Collada ( .dae )
  • 3ds Max 3DS ( .3ds )
  • 3ds Max ASE ( .ase )
  • Wavefront Object ( .obj )
  • Stanford Polygon Library ( .ply )
  • AutoCAD DXF ( .dxf )
  • LightWave ( .lwo )
  • Modo ( .lxo )
  • Stereolithography ( .stl )
  • AC3D ( .ac )
  • Milkshape 3D ( .ms3d )
  • TrueSpace ( .cob,.scn )
  • Valve Model ( .smd,.vta )
  • Quake I ( .mdl )
  • Quake II ( .md2 )
  • Quake III ( .md3 )
  • Return to Castle Wolfenstein ( .mdc )
  • Doom 3 ( .md5)
  • Biovision BVH ( *.bvh )
  • CharacterStudio Motion ( *.csm )
  • DirectX X ( .x ).
  • BlitzBasic 3D ( .b3d ).
  • Quick3D ( .q3d,.q3s ).
  • Ogre XML ( .mesh.xml ).
  • Irrlicht Mesh ( .irrmesh ).
  • Irrlicht Scene ( .irr ).
  • Neutral File Format ( .nff )
  • Sense8 WorldToolKit ( .nff )
  • Object File Format ( .off )
  • PovRAY Raw ( .raw )
  • Terragen Terrain ( .ter )
  • 3D GameStudio ( .mdl )
  • 3D GameStudio Terrain ( .hmp )
MattFu