XGameStreamingGamepadPhysicality

标准 Xbox 无线控制器上的每个按钮、摇杆和扳机的物理映射。 对于任何给定的按钮/摇杆/扳机,物理性可以未知,也可以是物理和/或虚拟的。

语法

enum class XGameStreamingGamepadPhysicality  : uint64_t  
{  
    None = 0x0000000000000000,  
    DPadUpPhysical = 0x0000000000000001,  
    DPadDownPhysical = 0x0000000000000002,  
    DPadLeftPhysical = 0x0000000000000004,  
    DPadRightPhysical = 0x0000000000000008,  
    MenuPhysical = 0x0000000000000010,  
    ViewPhysical = 0x0000000000000020,  
    LeftThumbstickPhysical = 0x0000000000000040,  
    RightThumbstickPhysical = 0x0000000000000080,  
    LeftShoulderPhysical = 0x0000000000000100,  
    RightShoulderPhysical = 0x0000000000000200,  
    APhysical = 0x0000000000001000,  
    BPhysical = 0x0000000000002000,  
    XPhysical = 0x0000000000004000,  
    YPhysical = 0x0000000000008000,  
    LeftTriggerPhysical = 0x0000000000010000,  
    RightTriggerPhysical = 0x0000000000020000,  
    LeftThumbstickXPhysical = 0x0000000000040000,  
    LeftThumbstickYPhysical = 0x0000000000080000,  
    RightThumbstickXPhysical = 0x0000000000100000,  
    RightThumbstickYPhysical = 0x0000000000200000,  
    ButtonsPhysical = 0x000000000000F3FF,  
    AnalogsPhysical = 0x00000000003F0000,  
    AllPhysical = 0x00000000003FF3FF,  
    DPadUpVirtual = 0x0000000100000000,  
    DPadDownVirtual = 0x0000000200000000,  
    DPadLeftVirtual = 0x0000000400000000,  
    DPadRightVirtual = 0x0000000800000000,  
    MenuVirtual = 0x0000001000000000,  
    ViewVirtual = 0x0000002000000000,  
    LeftThumbstickVirtual = 0x0000004000000000,  
    RightThumbstickVirtual = 0x0000008000000000,  
    LeftShoulderVirtual = 0x0000010000000000,  
    RightShoulderVirtual = 0x0000020000000000,  
    AVirtual = 0x0000100000000000,  
    BVirtual = 0x0000200000000000,  
    XVirtual = 0x0000400000000000,  
    YVirtual = 0x0000800000000000,  
    LeftTriggerVirtual = 0x0001000000000000,  
    RightTriggerVirtual = 0x0002000000000000,  
    LeftThumbstickXVirtual = 0x0004000000000000,  
    LeftThumbstickYVirtual = 0x0008000000000000,  
    RightThumbstickXVirtual = 0x0010000000000000,  
    RightThumbstickYVirtual = 0x0020000000000000,  
    ButtonsVirtual = 0x0000F3FF00000000,  
    AnalogsVirtual = 0x003F000000000000,  
    AllVirtual = 0x003FF3FF00000000,  
}  

常量

常量 说明
没有游戏板按钮
DPadUpPhysical 物理游戏板方向键向上按钮
DPadDownPhysical 物理游戏板方向键向下按钮
DPadLeftPhysical 物理游戏板方向键向左按钮
DPadRightPhysical 物理游戏板方向键向右按钮
MenuPhysical 物理游戏板“菜单”按钮
ViewPhysical 物理游戏板“视图”按钮
LeftThumbstickPhysical 物理游戏板左摇杆凹槽按钮
RightThumbstickPhysical 物理游戏板右摇杆凹槽按钮
LeftShoulderPhysical 物理游戏板左侧肩按钮
RightShoulderPhysical 物理游戏板右侧肩按钮
APhysical 物理游戏板 A 按钮
BPhysical 物理游戏板 B 按钮
XPhysical 物理游戏板 X 按钮
YPhysical 物理游戏板 Y 按钮
LeftTriggerPhysical 物理游戏板左扳机键
RightTriggerPhysical 物理游戏板右扳机键
LeftThumbstickXPhysical 物理游戏板左摇杆水平位置
LeftThumbstickYPhysical 物理游戏板左摇杆垂直位置
RightThumbstickXPhysical 物理游戏板右摇杆水平位置
RightThumbstickYPhysical 物理游戏板右摇杆垂直位置
ButtonsPhysical 所有按钮都是物理的
AnalogsPhysical 所有模拟输入都是物理的
AllPhysical 所有输入都是物理的
DPadUpVirtual 虚拟游戏板方向键向上按钮
DPadDownVirtual 虚拟游戏板方向键向下按钮
DPadLeftVirtual 虚拟游戏板方向键向左按钮
DPadRightVirtual 虚拟游戏板方向键向右按钮
MenuVirtual 虚拟游戏板“菜单”按钮
ViewVirtual 虚拟游戏板“视图”按钮
LeftThumbstickVirtual 虚拟游戏板左摇杆凹槽按钮
RightThumbstickVirtual 虚拟游戏板右摇杆凹槽按钮
LeftShoulderVirtual 虚拟游戏板左侧肩按钮
RightShoulderVirtual 虚拟游戏板右侧肩按钮
AVirtual 虚拟游戏板 A 按钮
BVirtual 虚拟游戏板 B 按钮
XVirtual 虚拟游戏板 X 按钮
YVirtual 虚拟游戏板 Y 按钮
LeftTriggerVirtual 虚拟游戏板左扳机键
RightTriggerVirtual 虚拟游戏板右扳机键
LeftThumbstickXVirtual 虚拟游戏板左摇杆水平位置
LeftThumbstickYVirtual 虚拟游戏板左摇杆垂直位置
RightThumbstickXVirtual 虚拟游戏板右摇杆水平位置
RightThumbstickYVirtual 虚拟游戏板右摇杆垂直位置
ButtonsVirtual 所有按钮都是虚拟的
AnalogsVirtual 所有模拟输入都是虚拟的
AllVirtual 所有输入都是虚拟的

备注

游戏可使用 XGameStreamingGamepadPhysicality 来了解 IGameInputReading 是否包含来自物理控制器和/或虚拟触摸控制器的输入。

目前只支持用于游戏板读取。

可组合标志来表示多个值。

AllPhysicalAllVirtual 可用来确定所有输入是否都属于特定类型,以便用于作出游戏决定,例如向玩家提供哪些视觉提示。

要求

头文件:xgamestreaming.h

支持平台:Windows、Xbox One 系列主机和 Xbox Series 主机

另请参阅

XGameStreamingGetGamepadPhysicality
XGameStreaming