- Edited
I'm trying to figure out how to do this in godot 4.
So far it's not working, a new pair of eyes might find the issue
var raycast_length = 1000
var space_state = get_world_3d().get_direct_space_state()
var mouse_position = get_viewport().get_mouse_position()
var params = PhysicsRayQueryParameters3D.new()
params.from = camera.project_ray_origin(mouse_position)
params.to = params.from + camera.project_ray_origin(mouse_position) * raycast_length
params.collision_mask = 1
var result = space_state.intersect_ray(params)
if result:
print("colliding!")
mouse_select.global_transform.position = result.global_transform.origin
PS:There is no error, it just doesn't print anything.