@@ -79,19 +79,23 @@ public override void UpdateRenderModel()
7979 {
8080 UpdateDefaultRenderModel ( false ) ;
8181
82- m_modelObj = new GameObject ( "Model" ) ;
83- m_modelObj . SetActive ( false ) ;
84- m_modelObj . transform . SetParent ( hook . transform , false ) ;
82+ if ( m_modelObj == null )
83+ {
84+ m_modelObj = new GameObject ( "Model" ) ;
85+ m_modelObj . transform . SetParent ( hook . transform , false ) ;
86+ m_modelObj . SetActive ( false ) ;
8587#if VIU_WAVEXR_ESSENCE_CONTROLLER_MODEL
8688#if VIU_WAVE_XRSDK_3_99_31_OR_NEWER
87- m_modelObj . transform . parent . gameObject . AddComponent < PoseMode > ( ) ;
89+ m_modelObj . transform . parent . gameObject . AddComponent < PoseMode > ( ) ;
8890#endif
89- m_modelObj . AddComponent < Wave . Essence . Controller . Model . RenderModel > ( ) ;
90- m_modelObj . AddComponent < Wave . Essence . Controller . Model . ButtonEffect > ( ) ;
91+ m_modelObj . AddComponent < Wave . Essence . Controller . Model . RenderModel > ( ) ;
92+ m_modelObj . AddComponent < Wave . Essence . Controller . Model . ButtonEffect > ( ) ;
9193#elif VIU_WAVEXR_ESSENCE_RENDERMODEL
92- m_modelObj . AddComponent < Wave . Essence . Controller . RenderModel > ( ) ;
93- m_modelObj . AddComponent < Wave . Essence . Controller . ButtonEffect > ( ) ;
94+ m_modelObj . AddComponent < Wave . Essence . Controller . RenderModel > ( ) ;
95+ m_modelObj . AddComponent < Wave . Essence . Controller . ButtonEffect > ( ) ;
9496#endif
97+ }
98+
9599 m_modelObj . SetActive ( true ) ;
96100 }
97101 }
@@ -112,24 +116,28 @@ public override void UpdateRenderModel()
112116 {
113117 UpdateDefaultRenderModel ( false ) ;
114118
115- m_modelObj = new GameObject ( "Model" ) ;
116- m_modelObj . SetActive ( false ) ;
117- m_modelObj . transform . SetParent ( hook . transform , false ) ;
119+ if ( m_modelObj == null )
120+ {
121+ m_modelObj = new GameObject ( "Model" ) ;
122+ m_modelObj . transform . SetParent ( hook . transform , false ) ;
123+ m_modelObj . SetActive ( false ) ;
118124#if VIU_WAVEXR_ESSENCE_CONTROLLER_MODEL
119125#if VIU_WAVE_XRSDK_3_99_31_OR_NEWER
120- var pm = m_modelObj . transform . parent . gameObject . AddComponent < PoseMode > ( ) ;
121- pm . WhichHand = XR_Hand . NonDominant ;
126+ var pm = m_modelObj . transform . parent . gameObject . AddComponent < PoseMode > ( ) ;
127+ pm . WhichHand = XR_Hand . NonDominant ;
122128#endif
123- var rm = m_modelObj . AddComponent < Wave . Essence . Controller . Model . RenderModel > ( ) ;
124- rm . WhichHand = XR_Hand . NonDominant ;
125- var be = m_modelObj . AddComponent < Wave . Essence . Controller . Model . ButtonEffect > ( ) ;
126- be . HandType = XR_Hand . NonDominant ;
129+ var rm = m_modelObj . AddComponent < Wave . Essence . Controller . Model . RenderModel > ( ) ;
130+ rm . WhichHand = XR_Hand . NonDominant ;
131+ var be = m_modelObj . AddComponent < Wave . Essence . Controller . Model . ButtonEffect > ( ) ;
132+ be . HandType = XR_Hand . NonDominant ;
127133#elif VIU_WAVEXR_ESSENCE_RENDERMODEL
128- var rm = m_modelObj . AddComponent < Wave . Essence . Controller . RenderModel > ( ) ;
129- rm . WhichHand = XR_Hand . NonDominant ;
130- var be = m_modelObj . AddComponent < Wave . Essence . Controller . ButtonEffect > ( ) ;
131- be . HandType = XR_Hand . NonDominant ;
134+ var rm = m_modelObj . AddComponent < Wave . Essence . Controller . RenderModel > ( ) ;
135+ rm . WhichHand = XR_Hand . NonDominant ;
136+ var be = m_modelObj . AddComponent < Wave . Essence . Controller . ButtonEffect > ( ) ;
137+ be . HandType = XR_Hand . NonDominant ;
132138#endif
139+ }
140+
133141 m_modelObj . SetActive ( true ) ;
134142 }
135143 }
@@ -437,14 +445,18 @@ public override void OnActivated()
437445 WaveVR_ButtonList . EControllerButtons . Grip ,
438446 WaveVR_ButtonList . EControllerButtons . Menu ,
439447 WaveVR_ButtonList . EControllerButtons . Touchpad ,
440- WaveVR_ButtonList . EControllerButtons . Trigger
448+ WaveVR_ButtonList . EControllerButtons . Trigger ,
449+ WaveVR_ButtonList . EControllerButtons . A_X ,
450+ WaveVR_ButtonList . EControllerButtons . B_Y
441451 } ;
442452 buttonList . NonDominantButtons = new List < WaveVR_ButtonList . EControllerButtons > ( )
443453 {
444454 WaveVR_ButtonList . EControllerButtons . Grip ,
445455 WaveVR_ButtonList . EControllerButtons . Menu ,
446456 WaveVR_ButtonList . EControllerButtons . Touchpad ,
447- WaveVR_ButtonList . EControllerButtons . Trigger
457+ WaveVR_ButtonList . EControllerButtons . Trigger ,
458+ WaveVR_ButtonList . EControllerButtons . A_X ,
459+ WaveVR_ButtonList . EControllerButtons . B_Y
448460 } ;
449461 }
450462 }
@@ -584,6 +596,9 @@ private void UpdateDeviceInput(uint deviceIndex, WaveVR_Controller.Device device
584596 var dpadUpPressed = deviceInput . GetPress ( WVR_InputId . WVR_InputId_Alias1_DPad_Up ) ;
585597 var dpadRightPressed = deviceInput . GetPress ( WVR_InputId . WVR_InputId_Alias1_DPad_Right ) ;
586598 var dpadDownPressed = deviceInput . GetPress ( WVR_InputId . WVR_InputId_Alias1_DPad_Down ) ;
599+ var buttonAPressed = deviceInput . GetPress ( WVR_InputId . WVR_InputId_Alias1_A ) ;
600+ var buttonBPressed = deviceInput . GetPress ( WVR_InputId . WVR_InputId_Alias1_B ) ;
601+
587602 currState . SetButtonPress ( VRModuleRawButton . System , systemPressed ) ;
588603 currState . SetButtonPress ( VRModuleRawButton . ApplicationMenu , menuPressed ) ;
589604 currState . SetButtonPress ( VRModuleRawButton . Touchpad , touchpadPressed || dpadLeftPressed || dpadUpPressed || dpadRightPressed || dpadDownPressed ) ;
@@ -593,6 +608,8 @@ private void UpdateDeviceInput(uint deviceIndex, WaveVR_Controller.Device device
593608 currState . SetButtonPress ( VRModuleRawButton . DPadUp , dpadUpPressed ) ;
594609 currState . SetButtonPress ( VRModuleRawButton . DPadRight , dpadRightPressed ) ;
595610 currState . SetButtonPress ( VRModuleRawButton . DPadDown , dpadDownPressed ) ;
611+ currState . SetButtonPress ( VRModuleRawButton . A , buttonAPressed ) ;
612+ currState . SetButtonPress ( VRModuleRawButton . ApplicationMenu , buttonBPressed ) ;
596613
597614 var systemTouched = deviceInput . GetTouch ( WVR_InputId . WVR_InputId_Alias1_System ) ;
598615 var menuTouched = deviceInput . GetTouch ( WVR_InputId . WVR_InputId_Alias1_Menu ) ;
@@ -616,7 +633,10 @@ private void UpdateDeviceInput(uint deviceIndex, WaveVR_Controller.Device device
616633
617634 var triggerAxis = deviceInput . GetAxis ( WVR_InputId . WVR_InputId_Alias1_Trigger ) ;
618635 var touchAxis = deviceInput . GetAxis ( WVR_InputId . WVR_InputId_Alias1_Touchpad ) ;
636+ var gripAxis = deviceInput . GetAxis ( WVR_InputId . WVR_InputId_Alias1_Grip ) ;
637+
619638 currState . SetAxisValue ( VRModuleRawAxis . Trigger , triggerAxis . x ) ;
639+ currState . SetAxisValue ( VRModuleRawAxis . CapSenseGrip , gripAxis . x ) ;
620640 currState . SetAxisValue ( VRModuleRawAxis . TouchpadX , touchAxis . x ) ;
621641 currState . SetAxisValue ( VRModuleRawAxis . TouchpadY , touchAxis . y ) ;
622642 }
0 commit comments