Issue: https://gyazo.com/6efc14af53f2cefc9c0c7b75d2e4f77a

Script:

local Char = game:GetService("Players").LocalPlayer.CharacterAdded:Wait();
local Waist = Char:FindFirstChild("Waist", true);
local C0 = Waist.C0;

game:GetService("RunService").RenderStepped:Connect(function()
     Waist.C0 = C0*CFrame.Angles(math.atan(Char.Humanoid.MoveDirection.Z), 0, math.atan(Char.Humanoid.MoveDirection.X));
end)