Within GDQuest's Node Essentials course, in the Camera article, it explains how to find the position of a mouseclick on 3D objects within the world, from the camera, with raycasting.
I also found an article by KidsCanCode the offers an alternative, using the input_event signal from CollisionObject3D. http://kidscancode.org/godot_recipes/3.x/3d/click_to_move/
What are the major differences in these two approaches? Are they essentially the same outcome?
Also, I'm having some trouble using this same signal to detect input events that are not InputEventMouseButton. I've tried to use if event is InputEventAction or if event is InputEventKey, but neither of them will trigger when I use keyboard input.
func _on_static_body_3d_input_event(camera, event, position, normal, shape_idx):
if event is InputEventMouseButton and event.pressed:
print("Key detected!")
The above code will print out when the either mouse button is pressed.