Proper multitexturing with Collada


I am wondering, how proper multitexturing is done with Collada.

For testing, I made a multitextured cube in 3ds max and exported it to collada. What I did see is, that two textures are assigend to the diffuse field in the material section. But regarding the specification, only one entry is allowed. Also, 3ds max crashes when importing this exported file.

Can someone explain or send a simple example, how to do proper multitexturing in Collada?

Regards Norbert

Multitexturing is not supported by the profile_COMMON in COLLADA.
We do allow different textures for different channels, ie diffuse, ambient, specular, etc. But not multiple textures per channel.

The best way to do multitexturing is with a more advanced profile. The profile_CG and profile_GLSL can define the state of any more advanced technique. It doesn’t have to be a programmable pipeline since you can specify the renderstates needed and not specify shaders to use.

Currently, 3DSMax’s plugin doesn’t support CG so it most likely won’t export what I suggested. But Maya does have the ability to do COLLADA FX and you may be able to specify this there.

You can also send a feature request to FeelingSoftware. You aren’t the first person who has asked for this.


I understand the current COLLADA Max plugin is able, through a specific profile, to export HLSL FX, in which you can most probably use both textures.


now I get a clearer understanding. Actually I would prefer the profile_GLES.
Is it supported by the 3ds max exporter? If yes, how do I set it?

As far as I did understand the documentation right, this profile can contain the newparam element which finally can contain texture_pipeline, where I can exactly set what I want. Still have to find out where to set the textures but I will find that out :wink:
Is it possible to define multi-texturing with this profile?

A reference sample would be great!

Regards Norbert

I do not know of any DCC tool providing support for the GLES profile. I know it is used by some developers in the mobile industry, but through their own tools/converters.

Maya and XSI COLLADA exporters have support for the Cg profile.
Max until recently did not have support for Cg, but did support HLSL through some special COLLADA extension.

For more information about 3dsMax exporter, please go to the feeling software forum.