-
Notifications
You must be signed in to change notification settings - Fork 57
Description
Most of the details can be found here: RobotLocomotion/drake#24133 (comment).
Ultimately, meshcat blindly merges all geometric pieces from a parsed file into a single geometry. As noted in the Drake issue above, not every mesh component will have the same attributes. In that case, some had texture coordinates, some did not. When there is a mismatch in merged geometries, three.js complains because it can't create a single coherent buffer object.
Meshcat should examine the attributes of the various geometries and only merge where the match up. If it needs to be handled is multiple sets, then we'll need to add multiple geometries.
To resolve this robustly, we'll need to look into the set of all geometry attributes that can trigger the error (noted in the drake issue).