In Collada the <texture> has a <param name=“xxx” type=“float3” flow=“OUT”/> which we use to determine which input of the material the texture is defining.
e.g. <texture><param name=“DIFFUSE” type=“float3” flow=“OUT”/></texture> defines the diffuse texture of a material.
We rely on these names so we can setup our own materials for our engine.
We have a problem where the max/maya plugins use a different param name for the same input (SPECULAR vs SPECULAR_LEVEL).
I have looked at the specification and it doesn’t mention what these define. I was expecting something like ‘an r,g,b texture with the channels averaged to produce an intensity , or a single channel texture defining the intensity’.
The problem I see is that this is defined in the common material profile, and if other tools rely on the naming they will not import the materials from other dcc tools correctly.
I was thinking that if it was well defined then dcc tool can read the common material parameters and translate it to their own structure if required.
e.g. if ‘specular’ is meant to specify a specular color texture, but the dcc tool requires seperate color and level textures, then these would be setup by the dcc tool from the data defined by collada.
And, the exact behaviour required by a dcc can always be done in a dcc specific profile.
Did that make sense?