SurfaceGuis don’t properly render within ViewportFrames. More specifically, they still render, but they render within the data model where the model is located in the ViewportFrame.
This issue is preventing any meaningful use of ViewportFrames for 3D UIs.
Here’s a video demonstrating the issue:
A link to the place in the video. Please note that you will have to assign the CurrentCamera to the ViewportFrame because that property does not serialize: ViewportFrameBug.rbxl (21.9 KB)
I don’t think that viewport frames are supposed to render screen guis, however the fact that it renders even though the part isn’t parented to the workspace is probably a bug.
I am going to bump this because surface guis still render in the workspace even when its adornee is parented to a viewport frame. I just encountered this bug in my game and spent a long time looking for the cause. This bug should really be fixed