Table of Contents

虚拟按钮

中级 程序员

你可以不把控件绑定到物理按键和按钮,而是绑定到虚拟按钮(Virtual Button)。这样玩家就可以把物理按钮分配给虚拟按钮,从而创建自己的操控方案。

例如,假设你在开发一款第一人称射击游戏,需要为 UseMedkit(使用医疗包)功能指定一个按键。你可以不把该功能绑定到特定按键,而是创建一个名为 UseMedkit 的虚拟按钮,然后把虚拟按钮绑定到(比如)F 键。如果愿意,玩家还可以在运行时把虚拟按键绑定到其他按键。

虚拟按钮

使用虚拟按钮

  1. 将按键、按钮或指针绑定到虚拟按钮(例如 MyButton)。
  2. 创建虚拟按钮列表。
  3. 将 MyButton 添加到虚拟按钮列表中。
  4. 为 MyButton 分配一个功能。
  5. 创建更多虚拟按钮。
  6. 将这些按钮添加到同一个列表中,或创建其他列表。

示例代码

public override void Start()
{
    base.Start();

    // 如果不存在,则创建新的 VirtualButtonConfigSet
    Input.VirtualButtonConfigSet = Input.VirtualButtonConfigSet ?? new VirtualButtonConfigSet();
    
    //将 "M" 键、GamePad "Start" 按钮和左键绑定到虚拟按钮 "MyButton"
    VirtualButtonBinding b1 = new VirtualButtonBinding("MyButton", VirtualButton.Keyboard.M);
    VirtualButtonBinding b2 = new VirtualButtonBinding("MyButton", VirtualButton.GamePad.Start);
    VirtualButtonBinding b3 = new VirtualButtonBinding("MyButton", VirtualButton.Mouse.Left);

    VirtualButtonConfig c = [b1, b2, b3];

    Input.VirtualButtonConfigSet.Add(c);
}

public override void Update() {
    float button = Input.GetVirtualButton(0, "MyButton");
}

另请参阅