Hello Everyone, as a UI developer for 3 years I’ve tried around 4 or 5 times to replicate this effect on such a basic scale, and can’t seem to get it to work. The video below is a demonstration from a game named untitle fps, and while the UI is flat, it is moving with the character / 3D workspace instead of flat UI in the starterGUI.
I’ve tried using a billboardGUI with an adornee set to the head but then animations cause the head to move which in turn makes the UI move. Any help would be awesome!
The issue here is that this isn’t a BillboardGUI or an ScreenGUI. The way to replicate this is creating a viewmodel with a SurfaceGUI which could get a “sway” effect while the player is walking, that’s how games do it. (Even the ones outside Roblox with their own “SurfaceGui” equivalent)
Hello to anyone reading this in the future! I’ve made great progress in my development journey, and I can now say this type of UI setup isn’t much of a challenge anymore.
For this UI, I created a custom module to handle the sway and approached the UI like a viewmodel — the rest flowed from there. It’s really not difficult at all!
Side note: If you run it server-side, you can adjust the scripts so others can see your UI in real-time as well!