public static void DoPulseData(XRNode node, HapticPulseData dat) { if (dat.type != HapticPulseType.NONE) { pulseData[(int)node] = dat; } }
public HapticPulseData GetEndHitPulse(float relativeVelocity) { HapticPulseData dat = endHitPulse; dat.amplitude1 *= endHitVelocityCurve.Evaluate(relativeVelocity); dat.amplitude2 *= endHitVelocityCurve.Evaluate(relativeVelocity); return(dat); }
public HapticPulseData GetBeginTouchPulse(float relativeVelocity) { HapticPulseData dat = beginTouchPulse; dat.amplitude1 *= beginTouchVelocityCurve.Evaluate(relativeVelocity); dat.amplitude2 *= beginTouchVelocityCurve.Evaluate(relativeVelocity); return(dat); }
private void Start() { for (int i = 0; i < NODE_COUNT; ++i) { pulseData[i] = new HapticPulseData(); } GetDevices(); }
public static void FlatPulse(XRNode node, float amplitude, float length) { HapticPulseData dat = new HapticPulseData(); dat.type = HapticPulseType.FLAT; dat.length = length; dat.amplitude1 = amplitude; pulseData[(int)node] = dat; }
public static void LerpPulse(XRNode node, float startAmplitude, float endAmplitude, float length) { HapticPulseData dat = new HapticPulseData(); dat.type = HapticPulseType.LERP; dat.amplitude1 = startAmplitude; dat.amplitude2 = endAmplitude; dat.length = length; pulseData[(int)node] = dat; }
public static void CosinePulse(XRNode node, float troughAmplitude, float crestAmplitude, float cycles, float length) { HapticPulseData dat = new HapticPulseData(); dat.type = HapticPulseType.COSINE; dat.amplitude1 = troughAmplitude; dat.amplitude2 = crestAmplitude; dat.cycles = cycles; dat.length = length; pulseData[(int)node] = dat; }
private void OnCollisionExit(Collision collision) { if (onCollisionNode != XRNode.LeftEye) { HapticPulseData dat = material.GetEndHitPulse(collision.relativeVelocity.magnitude); if (dat.amplitude1 > 0f || dat.amplitude2 > 0f) { HapticHandler.DoPulseData(onCollisionNode, dat); } } }