GFTouchJoystick¶
API Reference / Standard / 类索引
- 路径:
addons/gf/standard/input/touch/gf_touch_joystick.gd - 模块:
Standard - 继承:
Node2D - API:
public - 类别:运行时服务 (
runtime_service) - 首次版本:
3.17.0
通用触屏虚拟摇杆节点。 可直接发出方向信号,也可选择映射到 Godot InputMap 动作。
成员概览¶
| 类型 | 名称 | 签名 |
|---|---|---|
| 信号 | direction_changed |
signal direction_changed(direction: Vector2) |
| 信号 | joystick_pressed |
signal joystick_pressed |
| 信号 | joystick_released |
signal joystick_released |
| 枚举 | PositionMode |
enum PositionMode |
| 属性 | radius |
var radius: float = 64.0: |
| 属性 | knob_radius_ratio |
var knob_radius_ratio: float = 3.0: |
| 属性 | color |
var color: Color = Color(1.0, 1.0, 1.0, 0.35): |
| 属性 | draw_interaction_zone |
var draw_interaction_zone: bool = false: |
| 属性 | deadzone |
var deadzone: float = 0.1 |
| 属性 | position_mode |
var position_mode: PositionMode = PositionMode.FIXED: |
| 属性 | interaction_radius |
var interaction_radius: float = 160.0: |
| 属性 | action_left |
var action_left: StringName = &"" |
| 属性 | action_right |
var action_right: StringName = &"" |
| 属性 | action_up |
var action_up: StringName = &"" |
| 属性 | action_down |
var action_down: StringName = &"" |
| 属性 | emit_joypad_motion |
var emit_joypad_motion: bool = false |
| 属性 | joypad_device_id |
var joypad_device_id: int = -2 |
| 属性 | joy_axis_x |
var joy_axis_x: JoyAxis = JOY_AXIS_LEFT_X |
| 属性 | joy_axis_y |
var joy_axis_y: JoyAxis = JOY_AXIS_LEFT_Y |
| 方法 | get_direction |
func get_direction() -> Vector2: |
| 方法 | release |
func release() -> void: |
信号¶
direction_changed¶
- API:
public
摇杆方向变化时发出。方向已归一化并应用死区。
参数:
| 名称 | 说明 |
|---|---|
direction |
已归一化并应用死区后的摇杆方向。 |
joystick_pressed¶
- API:
public
摇杆按下时发出。
joystick_released¶
- API:
public
摇杆释放时发出。
枚举¶
PositionMode¶
- API:
public
摇杆定位模式。
属性¶
radius¶
- API:
public
摇杆半径。
knob_radius_ratio¶
- API:
public
摇杆手柄半径比例。
color¶
- API:
public
摇杆颜色。
draw_interaction_zone¶
- API:
public
是否绘制相对摇杆交互范围。
deadzone¶
- API:
public
输入死区,范围 0 到 1。
position_mode¶
- API:
public
摇杆定位模式。
interaction_radius¶
- API:
public
相对模式下允许开始触控的交互半径。
action_left¶
- API:
public
左方向动作名。为空则不映射。
action_right¶
- API:
public
右方向动作名。为空则不映射。
action_up¶
- API:
public
上方向动作名。为空则不映射。
action_down¶
- API:
public
下方向动作名。为空则不映射。
emit_joypad_motion¶
- API:
public
是否额外发送虚拟手柄轴事件。
joypad_device_id¶
- API:
public
虚拟手柄设备 ID。建议使用负数以避开真实手柄。
joy_axis_x¶
- API:
public
X 轴对应的手柄轴。
joy_axis_y¶
- API:
public
Y 轴对应的手柄轴。
方法¶
get_direction¶
- API:
public
获取当前方向。
返回:当前摇杆方向。
release¶
- API:
public
手动释放摇杆并清理动作状态。