public static string AliasToControlString(AxisAlias Alias, Handedness Hand) { if (Hand == Handedness.LEFT) { switch (Alias) { case AxisAlias.X: return("VR_Primary2DAxis_X_Left"); case AxisAlias.Y: return("VR_Primary2DAxis_InvY_Left"); default: return(""); } } else // RIGHT HAND { switch (Alias) { case AxisAlias.X: return("VR_Primary2DAxis_X_Right"); case AxisAlias.Y: return("VR_Primary2DAxis_InvY_Right"); default: return(""); } } }
public static float GetAxis(AxisAlias alias, Handedness hand, bool ignoreSDKSpecific = false) { if (ignoreSDKSpecific) { return(Input.GetAxis(AliasToControlString(alias, hand))); } else { return(Input.GetAxis(AliasToControlStringSDKSpecific(alias, hand))); } }
public static string AliasToControlStringSDKSpecific(AxisAlias Alias, Handedness Hand) { // For daydream, you hold the controller sideways. if (XRSettings.loadedDeviceName == "daydream") { if (Hand == Handedness.LEFT) { switch (Alias) { case AxisAlias.X: return("VR_Primary2DAxis_Y_Left"); case AxisAlias.Y: return("VR_Primary2DAxis_X_Left"); default: return(""); } } else // RIGHT HAND { switch (Alias) { case AxisAlias.X: return("VR_Primary2DAxis_InvY_Right"); case AxisAlias.Y: return("VR_Primary2DAxis_InvX_Right"); default: return(""); } } } else // Non-daydream platforms { return(AliasToControlString(Alias, Hand)); } }