1Updated OpenCOLLADA tools [here](https://github.com/KhronosGroup/OpenCOLLADA/wiki/OpenCOLLADA-Tools).
2
3OpenCOLLADA
4===========
5
6COLLADAMax and COLLADAMaya are new implementation of a 3ds Max or Maya plug-ins to export scene or parts of it to a COLLADA file, released under an MIT-license.
7
8In contrast to other existing COLLADA exporters, these new plug-ins do not store the COLLADA document in an intermidiate data model but writes it directly to file. This leads to a dramatic reduction of memory consumption and to much better performance.
9
10For more information about the plug-ins and how to build them, please read the README files in COLLADAMax and COLLADAMaya directories.
11
12For information about how to build OpenCOLLADA under linux and mac OSX usings SCons, please read the BUILD file.
13
14NOTE: The COLLADA.sln solution, contained in this directory, exists only for development purposes. To build the NextGen plug-ins, please use the solutions in the COLLADAMax and COLLADAMaya directories.
15
16Building with CMake
17-------------------
18
19### Mac OS X *(tested with Lion and Mountain Lion)*
20
211. Install [cmake](http://www.cmake.org/cmake/resources/software.html) with command line links.
222. some packages are required, they can be easily installed using a terminal with [brew](http://mxcl.github.com/homebrew/) type:
23 * ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
24 * brew install pkgconfig
25 * brew install pcre
264. When using recent Xcode, install the command line tools in Prereferences -> Download -> Command Line Tools. (otherwise cmake will not be able to find out what is the compiler)
275. Open Terminal
286. Within the OpenCOLLADA folder (if you want to override projects in place)
29Type in a terminal:
30 * cmake -G Xcode -DWITH_IN_SOURCE_BUILD=ON
31 * If you don't want to override the projects, just type cmake -G Xcode OpenCOLLADA  (Assuming your current directory is OpenCOLLADA's parent directory).
32
33You should end up with a ready to be used OPENCOLLADA.xcodeproj.
34
35### Windows
36
371. Install [CMake](http://cmake.org/cmake/resources/software.html).
382. Create a new folder alongside this repository (not inside it), called `OpenCOLLADA-cmake`
393. `cd OpenCOLLADA-cmake`
404. `cmake ../OpenCOLLADA`
415. Open `OPENCOLLADA.sln` from the new folder, and build the default startup project, `ALL_BUILD`.
42
43### Linux *todo*
44
45Recent changes requires having C++11 enabled, thus GCC 4.7 must be installed.
46As an example, for Ubuntu please check [this](http://askubuntu.com/questions/113291/how-do-i-install-gcc-4-7) and [this]( http://charette.no-ip.com:81/programming/2011-12-24_GCCv47/)
47
48### Available build options and their default values
49
50* `USE_STATIC` (ON) - Build static libraries, mutually exlusive with USE_SHARED.
51* `USE_SHARED` (OFF) - Build shared libraries, available currently only on Unix-like environments.
52* `USE_LIBXML` (ON) - Use LibXml2 parser.
53* `USE_EXPAT` (OFF) - Use expat parser. **Unsupported currently. Do not use.**
54* `USE_STATIC_MSVC_RUNTIME` (OFF) - Use static version of the MSVC run-time library, Windows/MSVC-only.
55Increases the size of the binaries, but is useful e.g. when wanting to build a standalone application that
56uses OpenCOLLADA with no runtime dependencies. Requires that all dependencies in the project use the
57same run-time library option.
58
59Directories
60-----------
61* [COLLADABaseUtils](https://github.com/KhronosGroup/OpenCOLLADA/tree/master/COLLADABaseUtils) -- Utils used by many of the other projects
62* [COLLADAFramework](https://github.com/KhronosGroup/OpenCOLLADA/tree/master/COLLADAFramework) -- Datamodel used to load COLLADA files
63* [COLLADAMax](https://github.com/KhronosGroup/OpenCOLLADA/tree/master/COLLADAMax) -- COLLADAMax NextGen plug-in sources
64* [COLLADAMaya](https://github.com/KhronosGroup/OpenCOLLADA/tree/master/COLLADAMaya) -- COLLADAMaya NextGen plug-in sources
65* [COLLADASaxFrameworkLoader](https://github.com/KhronosGroup/OpenCOLLADA/tree/master/COLLADASaxFrameworkLoader) -- Library that loads COLLADA files in a sax like manner into the framework data model
66* [COLLADAStreamWriter](https://github.com/KhronosGroup/OpenCOLLADA/tree/master/COLLADAStreamWriter) -- COLLADAStreamWriter sources (Library to write COLLADA files)
67* [COLLADAValidator](https://github.com/KhronosGroup/OpenCOLLADA/tree/master/COLLADAValidator) -- XML validator for COLLADA files, based on the COLLADASaxFrameworkLoader. Limited/partial COLLADA validation. Should be replaced by DAEValidator.
68* [DAEValidator](https://github.com/KhronosGroup/OpenCOLLADA/tree/master/DAEValidator) -- XML validator + coherency tests for COLLADA files based on LibXml2. Aims for replacing COLLADAValidator.
69* [dae2ogre](https://github.com/KhronosGroup/OpenCOLLADA/tree/master/dae2ogre) -- Demo project that converts COLLADA files to OGRE meshes
70* [Externals](https://github.com/KhronosGroup/OpenCOLLADA/tree/master/Externals) -- Third party projects required to build the NextGen plug-ins
71* [GeneratedSaxParser](https://github.com/KhronosGroup/OpenCOLLADA/tree/master/GeneratedSaxParser) -- Library used to load xml files in the way used by COLLADASaxFrameworkLoader
72
73OpenCOLLADA Tools
74You may download binaires of OpenCOLLADA tools [here](https://github.com/KhronosGroup/OpenCOLLADA/wiki/OpenCOLLADA-Tools).
75
76Version/Revision
77----------------
78Plugin version number and Plugin Revision information have been added in <authoring_tool> element
79