// Use this for initialization void Start() { Type = "constant"; setIntPtr(); PluginImport.SetEffect(_type, effect_index, gain, magnitude, duration, frequency, _position, _direction); PluginImport.StartEffect(effect_index); InvokeRepeating("ChangeForce", 2.0f, 0.5f); }
public static void SetEnvironmentForce(string nType, int index, float[] positionEffect, float[] directionEffect, float gain, float magnitude, float duration, float frequency) { //convert String to IntPtr IntPtr type = ConverterClass.ConvertStringToByteToIntPtr(nType); //Convert float[3] to intptr IntPtr position = ConverterClass.ConvertFloat3ToIntPtr(positionEffect); //Convert float[3] to intptr IntPtr direction = ConverterClass.ConvertFloat3ToIntPtr(directionEffect); //Set the effect PluginImport.SetEffect(type, index, gain, magnitude, duration, frequency, position, direction); PluginImport.StartEffect(index); }
void ChangeForce() { Vector3 vec = transform.position - target.position; magnitude = (vec.magnitude) / 1000; directionEffect[0] = vec[0]; directionEffect[1] = vec[1]; directionEffect[2] = vec[2]; setIntPtr(); PluginImport.StopEffect(effect_index); //Set the effect PluginImport.SetEffect(_type, effect_index, gain, magnitude, duration, frequency, _position, _direction); PluginImport.StartEffect(effect_index); }
public void SetTangentialForce() { myTangentialForceScript = transform.GetComponent <TangentialForce>(); /***************************** * Tangential Force Example *****************************/ //convert String to IntPtr IntPtr type = ConverterClass.ConvertStringToByteToIntPtr(myTangentialForceScript.Type); //Convert float[3] to intptr IntPtr position = ConverterClass.ConvertFloat3ToIntPtr(myTangentialForceScript.positionEffect); //Convert float[3] to intptr IntPtr direction = ConverterClass.ConvertFloat3ToIntPtr(myTangentialForceScript.directionEffect); //Set the effect PluginImport.SetEffect(type, myTangentialForceScript.effect_index, myTangentialForceScript.gain, myTangentialForceScript.magnitude, myTangentialForceScript.duration, myTangentialForceScript.frequency, position, direction); PluginImport.StartEffect(myTangentialForceScript.effect_index); }
/******************************************************************************************************************************************************************/ //Haptic Effects generic functions public void SetEnvironmentViscosity() { //Get data from script myViscosityScript = transform.GetComponent <ViscosityEffect>(); /***************************** * Viscous Force Example *****************************/ //convert String to IntPtr IntPtr type = ConverterClass.ConvertStringToByteToIntPtr(myViscosityScript.Type); //Convert float[3] to intptr IntPtr position = ConverterClass.ConvertFloat3ToIntPtr(myViscosityScript.positionEffect); //Convert float[3] to intptr IntPtr direction = ConverterClass.ConvertFloat3ToIntPtr(myViscosityScript.directionEffect); //Set the effect PluginImport.SetEffect(type, myViscosityScript.effect_index, myViscosityScript.gain, myViscosityScript.magnitude, myViscosityScript.duration, myViscosityScript.frequency, position, direction); PluginImport.StartEffect(myViscosityScript.effect_index); }
public void StartFriction() { myFrictionScript = transform.GetComponent <FrictionEffect>(); PluginImport.StartEffect(myFrictionScript.effect_index); }