Maybe I did not understand, but you should create small meshes that correspond to the boxes in your picture and make the glasses not collisionable, only the boxes.
Those small boxes are created by creating large boxes and then using CSG to intersect with the original mesh (like the PG I posted).
This works very well on some meshes (like the one you mentioned) but very poorly on other meshes, so I’m trying to find another more reliable method of creating the small boxes