Help getting a object to move with the camera in a Viewport

I am making an fps and wanted to use a viewport because idk.
It’s hard to move the camera and the viewmodel the same.
So what I want is a way to be able to see the light from different angles from the viewframe on my gun.

RunService.RenderStepped:Connect(function(step)
	local ammoVAL = script.Parent.Server.Ammo.Value
	script.Parent.Parent.Parent.Parent.Ammo.Text = ammoVAL
	if script.Parent:FindFirstChild("MainCamera") then
		local cam = script.Parent:FindFirstChild("MainCamera")
	else
		local cam = Instance.new("Camera", script.Parent)
		cam.Name = "MainCamera"
		cam.CFrame = script.Parent.FakeCamera.CFrame
		script.Parent.Parent.Parent.CurrentCamera = cam
	end
end)