我正在尽力在godot游戏引擎中构建手机游戏。而且我遇到了一个问题。在3D游戏中,我如何检测鼠标单击特定对象或该对象在屏幕上的位置。我不明白如何使用控制节点来做到这一点。
答案 0 :(得分:0)
使3D对象可点击的最简单方法是给它一个CollisionObject
(例如StaticBody
)并连接到input_event
信号。例如,要检测左键单击:
extends StaticBody
func _ready():
connect("input_event", self, "on_input_event")
func on_input_event(camera, event, click_position, click_normal, shape_idx):
var mouse_click = event as InputEventMouseButton
if mouse_click and mouse_click.button_index == 1 and mouse_click.pressed:
print("clicked")
docs提到触摸事件类似于点击事件。
请注意,input_ray_pickable
必须是true
上的CollisionObject
(默认设置)。