How can I attach a SurfaceGui to follow a player's camera?


Hi, I’m trying to create a 3D interface based off SurfaceGuis, similar to this

Here’s my issue:

I’ve attempted to put a part with a SurfaceGui inside of a ViewportFrame, only to figure out that there are currently no possible ways for SurfaceGuis of any kind to be displayed within a ViewportFrame.

Could anybody possibly give advice on what to do?


Using RunService, you can position the part that has the SurfaceGui based on the camera’s CFrame, something like this:

UI.CFrame = workspace.CurrentCamera.CFrame

Note that you will have to fix the orientation and position of the GUI itself

Changing the pivot positioning should make this a lot easier as well.