A few months ago I started developing a library to import and export 3D objects and scenes in my application. Having worked previously with the FilmBox SDK and with other 3D applications that need to import and export 3D data very often I realized that it would be a good idea to release this library as an Open Source project.
The main objective was to create a library to export and import ‘artist’ 3D data. By artist 3D data I mean that it was important to keep things like multiple mapping channels, render normals and/or smoothing groups, material ids, polygon structures and/or edge visibility for TriMeshes, all those things that make it easier to work with a model in a 3D application.
The initial idea was to add two file formats to this library: A binary format (SCB) and a text xml format (SCX), but after seeing the COLLADA file format I decided to use it instead of the SCX file format.
After developing the COLLADA in and out extension for SceneCarrier I realized that other extensions can be added to the library to import and export other common file formats. I am actually developing an exporter of .X files, and probably I will add also the importer.
Right now SceneCarrier supports hierarchy, instancing, mesh objects (triangular and polygonal meshes), lights, cameras, simple materials and bitmap textures. The library was designed so new types of data can be added easily.
As part of the examples I am including a 3dsmax plugin that imports and exports COLLADA files.
I hope that some of you find this library useful and it would be really great if someone would like to add new features to this library. I am open to any kind of comments or suggestions about this library.
The sourceforge.net sites are still empty!
Diego A. Castano