public void RegisterInputReceiver(AirVRInputReceiver receiver) { Assert.IsFalse(initialized); if (receivers.ContainsValue(receiver) == false) { receivers.Add(receiver.name, receiver); } }
public float GetAxis(AirVRInputReceiver receiver, byte controlID) { float result = 0.0f; if (receiver.isRegistered) { if (GetInputFloatImpl((byte)receiver.deviceID, controlID, ref result) == false) { result = 0.0f; } } return(result); }
public Vector2 GetVector2D(AirVRInputReceiver receiver, byte controlID) { Vector2 result = Vector2.zero; if (receiver.isRegistered) { if (GetInputFloat2Impl((byte)receiver.deviceID, controlID, ref result) == false) { result = Vector2.zero; } } return(result); }
public Quaternion GetQuaternion(AirVRInputReceiver receiver, byte controlID) { Vector4 result = new Vector4(0.0f, 0.0f, 0.0f, 1.0f); if (receiver.isRegistered) { if (GetInputFloat4Impl((byte)receiver.deviceID, controlID, ref result) == false) { result = new Vector4(0.0f, 0.0f, 0.0f, 1.0f); } } return(new Quaternion(result.x, result.y, result.z, result.w)); }
public void GetTouch(AirVRInputReceiver receiver, byte controlID, out Vector2 position, out bool touch) { Vector2 resultPosition = Vector2.zero; float resultTouch = 0.0f; if (receiver.isRegistered) { if (GetInputTouchImpl((byte)receiver.deviceID, controlID, ref resultPosition, ref resultTouch) == false) { resultPosition = Vector2.zero; resultTouch = 0.0f; } } position = resultPosition; touch = resultTouch != 0.0f; }
public void GetTrackedDeviceFeedback(AirVRInputReceiver receiver, byte controlID, out Vector3 rayOrigin, out Vector3 hitPosition, out Vector3 hitNormal) { Vector3 resultRayOrigin = Vector3.zero; Vector3 resultHitPosition = Vector3.zero; Vector3 resultHitNormal = Vector3.zero; if (receiver.isRegistered) { if (GetTrackedDeviceFeedbackImpl((byte)receiver.deviceID, controlID, ref resultRayOrigin, ref resultHitPosition, ref resultHitNormal) == false) { resultRayOrigin = resultHitPosition = resultHitNormal = Vector3.zero; } } rayOrigin = resultRayOrigin; hitPosition = resultHitPosition; hitNormal = resultHitNormal; }
public void GetTransform(AirVRInputReceiver receiver, byte controlID, out double timeStamp, out Vector3 position, out Quaternion orientation) { Vector3 pos = Vector3.zero; Quaternion rot = Quaternion.identity; double ts = 0.0; if (receiver.isRegistered) { if (GetInputTransformImpl((byte)receiver.deviceID, controlID, ref ts, ref pos, ref rot) == false) { pos = Vector3.zero; rot = Quaternion.identity; ts = 0.0; } } position = pos; orientation = rot; timeStamp = ts; }
public void UnregisterInputReceiver(AirVRInputReceiver receiver) { receivers.Remove(receiver.name); }
public bool CheckIfInputReceiverAvailable(AirVRInputReceiver receiver) { return(receivers.ContainsValue(receiver) && receiver.isRegistered); }
public float GetButton(AirVRInputReceiver receiver, byte controlID) { return(GetAxis(receiver, controlID)); }
public Vector2 GetAxis2D(AirVRInputReceiver receiver, byte controlID) { return(GetVector2D(receiver, controlID)); }