I’d just mess around with it. Usually I just use RunService.RenderStepped and that works for me.
It might have to do with the Motor6s updating. It might be a good idea to just clone the arms when in first person and directly set their CFrame.
Edit:
Here is an article about view models:
1 Like