I’m trying to make a custom mouse interaction system using UserInputService. For some reason, FindPartOnRay
is registering something intersecting with the ray almost exactly 1 stud away from the ray’s origin.
Here’s my code:
UserInput.InputBegan:Connect(function(Input,GP)
if not GP then
if Input.UserInputType == Enum.UserInputType.MouseButton1 then
local Position = Input.Position
local PositionRay = Camera:ViewportPointToRay(Position.X,Position.Y)
local Target,TargetPosition = workspace:FindPartOnRay(PositionRay,Character)
print(Target,TargetPosition,(PositionRay.Origin-TargetPosition).Magnitude)
end
end
end)
Every time I click, it prints (split up for readability)
nil
2.08917713, 17.3768654, 6.52677774 (this varies)
1 (can have floating point inaccuracies)
What’s the issue here?
Thanks