private void OnEnable() { if (mapping.type == AxisMapping.MappingType.NamedAxis) { m_SteerAxis = new RG_CrossPlatformInputManager.VirtualAxis(mapping.axisName); RG_CrossPlatformInputManager.RegisterVirtualAxis(m_SteerAxis); } }
void OnDisable() { if (RG_CrossPlatformInputManager.AxisExists(horizontalAxisName)) { RG_CrossPlatformInputManager.UnRegisterVirtualAxis(horizontalAxisName); } if (RG_CrossPlatformInputManager.AxisExists(verticalAxisName)) { RG_CrossPlatformInputManager.UnRegisterVirtualAxis(verticalAxisName); } }
void OnEnable() { if (!RG_CrossPlatformInputManager.AxisExists(axisName)) { // if the axis doesnt exist create a new one in cross platform input m_Axis = new RG_CrossPlatformInputManager.VirtualAxis(axisName); RG_CrossPlatformInputManager.RegisterVirtualAxis(m_Axis); } else { m_Axis = RG_CrossPlatformInputManager.VirtualAxisReference(axisName); } FindPairedButton(); }
void CreateVirtualAxes() { // set axes to use m_UseX = (axesToUse == AxisOption.Both || axesToUse == AxisOption.OnlyHorizontal); m_UseY = (axesToUse == AxisOption.Both || axesToUse == AxisOption.OnlyVertical); // create new axes based on axes to use if (m_UseX) { m_HorizontalVirtualAxis = new RG_CrossPlatformInputManager.VirtualAxis(horizontalAxisName); RG_CrossPlatformInputManager.RegisterVirtualAxis(m_HorizontalVirtualAxis); } if (m_UseY) { m_VerticalVirtualAxis = new RG_CrossPlatformInputManager.VirtualAxis(verticalAxisName); RG_CrossPlatformInputManager.RegisterVirtualAxis(m_VerticalVirtualAxis); } }
private void Update() { float angle = 0; if (Input.acceleration != Vector3.zero) { switch (tiltAroundAxis) { case AxisOptions.ForwardAxis: angle = Mathf.Atan2(Input.acceleration.x, -Input.acceleration.y) * Mathf.Rad2Deg + centreAngleOffset; break; case AxisOptions.SidewaysAxis: angle = Mathf.Atan2(Input.acceleration.z, -Input.acceleration.y) * Mathf.Rad2Deg + centreAngleOffset; break; } } float axisValue = Mathf.InverseLerp(-fullTiltAngle, fullTiltAngle, angle) * 2 - 1; switch (mapping.type) { case AxisMapping.MappingType.NamedAxis: m_SteerAxis.Update(axisValue); break; case AxisMapping.MappingType.MousePositionX: RG_CrossPlatformInputManager.SetVirtualMousePositionX(axisValue * Screen.width); break; case AxisMapping.MappingType.MousePositionY: RG_CrossPlatformInputManager.SetVirtualMousePositionY(axisValue * Screen.width); break; case AxisMapping.MappingType.MousePositionZ: RG_CrossPlatformInputManager.SetVirtualMousePositionZ(axisValue * Screen.width); break; } }
void CreateVirtualAxes() { // set axes to use m_UseX = (axesToUse == AxisOption.Both || axesToUse == AxisOption.OnlyHorizontal); m_UseY = (axesToUse == AxisOption.Both || axesToUse == AxisOption.OnlyVertical); // create new axes based on axes to use if (m_UseX) { // m_HorizontalVirtualAxis = new RG_CrossPlatformInputManager.VirtualAxis(horizontalAxisName); // RG_CrossPlatformInputManager.RegisterVirtualAxis(m_HorizontalVirtualAxis); if (!RG_CrossPlatformInputManager.AxisExists(horizontalAxisName)) { // if the axis doesnt exist create a new one in cross platform input m_HorizontalVirtualAxis = new RG_CrossPlatformInputManager.VirtualAxis(horizontalAxisName); RG_CrossPlatformInputManager.RegisterVirtualAxis(m_HorizontalVirtualAxis); } else { m_HorizontalVirtualAxis = RG_CrossPlatformInputManager.VirtualAxisReference(horizontalAxisName); } } if (m_UseY) { //m_VerticalVirtualAxis = new RG_CrossPlatformInputManager.VirtualAxis(verticalAxisName); //RG_CrossPlatformInputManager.RegisterVirtualAxis(m_VerticalVirtualAxis); if (!RG_CrossPlatformInputManager.AxisExists(verticalAxisName)) { // if the axis doesnt exist create a new one in cross platform input m_VerticalVirtualAxis = new RG_CrossPlatformInputManager.VirtualAxis(verticalAxisName); RG_CrossPlatformInputManager.RegisterVirtualAxis(m_VerticalVirtualAxis); } else { m_VerticalVirtualAxis = RG_CrossPlatformInputManager.VirtualAxisReference(verticalAxisName); } } }
private void AddButton(string name) { // we have not registered this button yet so add it, happens in the constructor RG_CrossPlatformInputManager.RegisterVirtualButton(new RG_CrossPlatformInputManager.VirtualButton(name)); }
public void HandleInput(float value) { RG_CrossPlatformInputManager.SetAxis(axis, (value * 2f) - 1f); }
public void SetDownState() { RG_CrossPlatformInputManager.SetButtonDown(Name); }
public void SetAxisNegativeState() { RG_CrossPlatformInputManager.SetAxisNegative(Name); }
public void SetAxisNeutralState() { RG_CrossPlatformInputManager.SetAxisZero(Name); }
public void SetUpState() { RG_CrossPlatformInputManager.SetButtonUp(Name); }