Nodes with same mesh but different textures


I’m currently trying to improve the Collada export in the Irrlicht library and have for example 3 nodes which are all using the same mesh - in this case a simple cube. But each node uses a different texture.

What I thought would be correct on export is the following

  1. In the mesh I set a symbol with material=“symbol_name”
  2. Create 3 effects - one for each texture.
  3. Create 3 materials - each using one of those effects and put those materials into library_materials.
  4. For each of the nodes create an instance_geometry pointing to the same mesh and then using bind_material with different instance_material’s where I say symbol=“symbol_name” and target="#one_of_those_materials"

And well - maybe it is correct. My problem is just that the 2 tools I used for testing (Blender and Mitsuba) just use one of the textures (not the same one interestingly - each tool uses another) and none uses 3 different ones. So now I’m not sure if I wrote the export wrong or if the problem is in those tools.

What would help me:

  • Maybe you see the error in my description above.
  • Maybe you can even take a look at the .dae which I’m attaching to this thread.
  • Maybe you have access to more tools than me for testing Collada loading and can tell me if others also fail (or succeed).

Also if you have any other feedback on the .dae that is certainly also welcome.
Note1: Texture is currently set for everything like emission, ambient, specular, etc. just to make sure the tool uses it.
Note2: You can’t test this exact export with the official Irrlicht library, while some of my changes are already available in svn, those for exporting different materials for the same mesh are so far only on my hd because of the troubles I’m still having.

Thanks for any help

  • Michael

OK, I spend another day on this and by now I’m pretty certain the above was already correct, so it’s just a problem of the tools (and reported it to them).