Another missing feature in Collada (v1.3 & 1.4) exported materials:
the amount of map applied to the material is not exported [in 3dsMax you find it in the MaterialEditor under MapTab].
It is required especially for Reflection-Maps; we need to specify at which percentage the reflection map is applied, otherwise objects are reflecting too much (mirror-like). And it can be usefull for other maps as well.
hopefully this parameter will be included in next version?
I’ll take the time, this week, to investigate the possibility of exporting/importing both the texture map’s amount parameter value and the “BackfaceCull” property for geometric objects. These would be added as extra, non-standard parameters, but they would be present and imported/exported.
I’m not too sure about animations on the texture map amount parameter: is that something that you are interested in?
I think, correct me if I am wrong, that by default everything is considered single sided (BackFaceCull is ON). There is no ‘double sided’ attribute on the geometry. In 1.4, it was decided that this attribute was a material attribute, not a geometry attribute.
That’s right. you can specify single/double-sided for each material, and it’s a good way to deal with it too. But current version of colladaExporter for 3DSMax doesn’t export it neither.
We only need one way to specifiy single/double-side: either through backfaceCull or through material option, both are equivalent for me. You can choose whichever you prefer.
Hi Remi: that’s correct, double-sidedness is considered a material attribute in COLLADA 1.4. Although I haven’t checked the most recent specs, there was still no “standard” way to express this information, in the most recent schema that I have.
Mirouille: in 3dsMax, we already export the material flag: “Faceted”. Adding the “2-sided” flag shouldn’t be a big deal. The fact that the “BackfaceCull” flag is in the “Display” panel tells me that this is a node property and not a geometry property. I have no problem with exporting it as a extra element in the scene graph, but I doubt it’s usefulness.
So, I’ll only add the export/import of the 2-sided flag for now. Is this good enough for your application?
About the texture map amount, the value is readily available for import/export, so I’ll implement that. The animation of this value, though, is not available through the IGame export, so it will have to wait until more under-lying work is done.
In COLLADA 1.4 all the materials are defined in terms of effects. There are effects for different profiles: GLSL, Cg, and GLES. Each of these represents the rendering pipeline state for those implementations. The GLSL profile, as an example, includes the OpenGL pipeline state and this includes CULL_FACE.
The COLLADA 1.4 common profile for FX includes the material definitions from COLLADA 1.3 and that is a very simple definition compared to actual commercial rendering software like DirectX or OpenGL. The common profile includes the <newparam> element so it can be extended, but I think the better approach is to export to the GLSL profile (for example).