@@ -2603,22 +2603,20 @@ Public Class UCVirtualMotionTrackerItem
26032603 End Sub
26042604
26052605 Class STRUC_HEPTIC_FEEDBACK_DATA
2606- Public mRumbleLastTimeSendValid As Boolean
26072606 Public mRumbleLastTimeSendTicks As Long
26082607
26092608 Public Sub New ()
2610- mRumbleLastTimeSendValid = False
2611- mRumbleLastTimeSendTicks = ClassHighPrecisionTimer.GetTicks()
2609+ mRumbleLastTimeSendTicks = 0
26122610 End Sub
26132611 End Class
26142612
26152613 Private Sub InternalHepticFeedbackLogic( ByRef bEnableHepticFeedback As Boolean ,
26162614 ByRef mServiceClient As ClassServiceClient,
26172615 ByRef mData As STRUC_HEPTIC_FEEDBACK_DATA)
26182616
2619- Dim iNowTicks As Long = ClassHighPrecisionTimer.GetTicks()
2620-
26212617 If (bEnableHepticFeedback) Then
2618+ Dim iNowTicks As Long = ClassHighPrecisionTimer.GetTicks()
2619+
26222620 Const MAX_RUMBLE_UPODATE_RATE As Single = 33.0F
26232621 Const MAX_PULSE_MICROSECONDS As Single = 5000.0F
26242622
@@ -2631,16 +2629,9 @@ Public Class UCVirtualMotionTrackerItem
26312629 End SyncLock
26322630
26332631 Dim fHapticPulseDurationMicroSec As Single = (fHepticDuraction * 1000000.0F )
2632+ Dim iElapsedMs = ClassHighPrecisionTimer.ElapsedMilliseconds(iNowTicks, mData.mRumbleLastTimeSendTicks)
26342633
2635- Dim bTimoutElapsed As Boolean = True
2636-
2637- If (mData.mRumbleLastTimeSendValid) Then
2638- Dim iElapsedMs = ClassHighPrecisionTimer.ElapsedMilliseconds(iNowTicks, mData.mRumbleLastTimeSendTicks)
2639-
2640- bTimoutElapsed = (iElapsedMs > MAX_RUMBLE_UPODATE_RATE)
2641- End If
2642-
2643- If (bTimoutElapsed) Then
2634+ If (mData.mRumbleLastTimeSendTicks = 0 OrElse iElapsedMs > MAX_RUMBLE_UPODATE_RATE) Then
26442635 Dim fRumble As Single = (fHapticPulseDurationMicroSec / MAX_PULSE_MICROSECONDS) * fHelpticAmplitude
26452636
26462637 If (fHepticDuraction > 0.0F ) Then
@@ -2660,7 +2651,6 @@ Public Class UCVirtualMotionTrackerItem
26602651 mServiceClient.SetControllerRumble(g_iIndex, fRumble)
26612652
26622653 mData.mRumbleLastTimeSendTicks = iNowTicks
2663- mData.mRumbleLastTimeSendValid = True
26642654
26652655 SyncLock g_mThreadLock
26662656 g_mHeptic.Clear()
0 commit comments