As this is still a problem, I have to figure out a way to fake the display of SurfaceGuis inside of ViewportFrames. Turning the SurfaceGui into a Decal is not a solution as the SurfaceGuis will be dynamically edited.
Getting the face I want to display the SurfaceGui, and making a fake overlaying UI is a solution
(in the image above there is a decal replacing the SurfaceGui, imagine it was an overlaying UI over the ViewportFrame)
but what if the part is rotated a bit, the face would be distorted and I doubt it’s very possible to make that the face into a UI
(again, this is a decal, how would an overlaying UI represent that face?)
Another possible solution is using actual parts to represent the object inside of the ViewportFrame, but this is complicated as I’d need to make the fake parts in front of the UI, meaning the UI has to become a BillboardGui, coming up with calculations to perfectly place these is easy, but I doubt it will be perfect nor simple.
Are there any ideas to how one should approach this problem? It will be great if someone had a way to do this.