Joystick
行为类似操纵杆的模拟控件。属性
type - “joystick”
axis - object 或 array。描述此操纵杆控件映射关系的单个轴或轴数组。
action - object,可选。除轴映射外要调用的操作。
actionThreshold - number,可选。调用操作所需的最小归一化操纵杆值(径向)。默认值为 0。
enabled - boolean,可选。默认为 true。将控件的可视状态设置为启用/禁用。禁用的控件仍会接收玩家的输入,但不会根据输入更改其可视样式。
expand - boolean,可选。默认值为 true。当放置在中央控件位置时,扩展操纵杆的范围以匹配用户的人体工程学偏好。设置为 false 可使用标准化的固定操纵杆大小。
relative - boolean,可选。
默认情况下 (true),操纵杆将根据用户的初始触摸位置进行相对计算得出其值。将此值设置为 false 则会根据控件的中心点计算其值。
visible - boolean,可选。默认为 true。确定该控件是否显示给玩家进行交互。要在游戏过程中更改,请参阅使用游戏状态更改触控布局。
styles - object,可选。控件视觉表示的自定义。样式表示为每个可样式化状态对应的一个对象。
按钮控件可以为以下状态设置样式:
default- 基本样式。disabled- 控件被禁用时的样式。如果未指定,控件被禁用时将对默认样式应用一个变换以使其显得已禁用。idle- 玩家未与控件交互时应用。moving- 无论定义的死区如何,操纵杆旋钮正在被交互时应用。activated- 定义了action且旋钮被移动到超出执行该操作的阈值时应用。
opacity - number,可选。应用于控件的不透明度。除 disabled 外的所有状态默认为 1.0。
background - object,可选。可以是颜色或图像资源。
knob - object,可选。knob 对象指定了操纵杆上供玩家交互的类似按钮部分的样式。
outline - object,可选。outline 对象指定了在操纵杆被交互时呈现的轮廓和指示器的样式。
资源尺寸
对于接受图像资源的每个样式对象,给定的资源以基础分辨率提供,并以该基础分辨率的 1.5x、2.0x、3.0x 和 4.0x 缩放提供。给定图像的分辨率必须小于或等于以下最大分辨率:
备注
joystick 控件可用于提供映射到各种物理手柄操纵杆的模拟控制。
如果 joystick 是移动的主要方式,建议将其放置在左中央位置并将 expand 设置为 true,以为玩家提供最佳体验。
考虑自定义 faceImage 以提示玩家操纵杆将控制什么(如果你的游戏使用多个操纵杆,这一点尤其重要)。
对于仅依赖 1 个轴的动作,使用单轴操纵杆以最大化可玩性。
样式备注
如果使用 background 资源且 expand 为 true,background 资源不会缩放到完整的中央位置尺寸。
默认情况下,outline 仅在玩家与控件交互时显示。
如果使用自定义 background 资源且 expand 设置为 true,请注意该资源不会随玩家的控件自定义扩展。
示例
示例 1:简单操纵杆
一个具有轻微死区的、与操纵杆 1:1 映射的基本示例。物理手柄上的拇指杆通过旋转计算其值。 图 1. 操纵杆控件
示例 2:通过阈值时从走路切换到冲刺的操纵杆。
当超过阈值 (0.75) 时,会随操纵杆移动一起发送 leftTrigger。图标将从 ‘walk’ 变为 ‘sprint’。 图 1. 具有操作阈值的操纵杆控件
示例 3:外观类似方向盘的单轴(水平)操纵杆
图 1. 水平方向盘操纵杆控件
示例 4:具有自定义颜色的操纵杆
图 1. 自定义操纵杆控件
