I've been having trouble exporting collada objects from blender, so I stripped everything back and textured a single cube, and exported it.
This is a completely trivial model, one cube, with one material assigned to it, the material has a single 'g.png' texture assigned to it.
The exported collada data looks like this:
<library_materials>
<material id="Material-material" name="Material">
<instance_effect url="#Material-effect"/>
</material>
</library_materials>
Where:
<library_effects>
<effect id="Material-effect">
<profile_COMMON>
<technique sid="common">
<phong>
<emission>
<color sid="emission">0.2879998 0.2879998 0.2879998 1</color>
</emission>
<ambient>
<color sid="ambient">0 0 0 1</color>
</ambient>
<diffuse>
<color sid="diffuse">0.2163267 0.1845119 0.2121569 1</color>
</diffuse>
<specular>
<color sid="specular">0.5 0.5 0.5 1</color>
</specular>
<shininess>
<float sid="shininess">50</float>
</shininess>
<index_of_refraction>
<float sid="index_of_refraction">1</float>
</index_of_refraction>
</phong>
</technique>
<extra>
<technique profile="GOOGLEEARTH">
<double_sided>1</double_sided>
</technique>
</extra>
</profile_COMMON>
<extra><technique profile="MAX3D"><double_sided>1</double_sided></technique></extra>
</effect>
</library_effects>
This seems to be missing the texture data associated with the object.
By comparsion, exporting a wavefront object generates this .mtl file:
# Blender MTL File: 'basic.blend'
# Material Count: 1
newmtl Material
Ns 96.078431
Ka 0.000000 0.000000 0.000000
Kd 0.790000 0.790000 0.790000
Ks 0.500000 0.500000 0.500000
Ni 1.000000
d 1.000000
illum 0
map_Kd g.png <----- ie. Blender is aware of this texture
So... is the collada exporter for blender just broken, or does it require some kind of special config in order to function correctly?
If the latter, how/what is required to make this work?
(NB for what it's worth, the UV coordinates are exported in the .dae, abit they obviously are completely useless without a texture assigned to them; I've also tried adding two different textures to see if the exporter needs that because it naively assumes 'one texture = don't bother, it's one texture for the whole model'. That didn't work either)