Workaround for mergeBufferGeometries failure when loading Collada files with inconsistent attributes #139
Workaround for mergeBufferGeometries failure when loading Collada files with inconsistent attributes #139wxmerkt wants to merge 5 commits intomeshcat-dev:masterfrom
Conversation
The ColladaLoader fails for some DAE files that contain textures for some geometries but not for others. This workaround (currently deactivated) would remove all textures if this were to be the case. This prevents "non-loading" of geometries and falls back to loading them without textures
…thon Unclear why we need to specialise this type since the switch from msgpack-lite to msgpack - but without it the geometries do not get decoded.
|
In your case, are you loading the DAE using At the moment, I think the problem would still occur with |
|
Please see #170 for active work on having |
Currently
mergeBufferGeometriesfails when a Collada file is loaded that has an inconsistent set of attributes in the contained geometries. I noticed this when loading a mesh (anymal_base.dae) that containsuvattributes for some of the nodes but not for all of them. In those cases,mergeBufferGeometrieswould write an error to the console and then return anullobject resulting in a load failure.This PR is a workaround which simply removes all textures from the loaded and merged geometry if this failure would otherwise be triggered. It's not a pretty solution but is better than not showing any geometry at all. Open to hear about better suggestions on how to fix it :-)