public virtual void OnHapticFeedbackPlayed(HapticFeedbackEventArgs e)
 {
     if (HapticFeedbackPlayed != null)
     {
         HapticFeedbackPlayed(this, e);
     }
 }
        private void HapticDevice_HapticFeedbackPlayed(object sender, HapticFeedbackEventArgs e)
        {
            if (bodyPartToCoordinate.ContainsKey(e.bodyPart))
            {
                // Calculate the position of the hit
                Vector3 hitPosition = bodyPartToCoordinate[e.bodyPart].CalculatePositionFromBodyCoordinateHit(e.hitLocation);

                Matrix4x4 matrixTRS = new Matrix4x4();
                matrixTRS.SetTRS(hitPosition, Quaternion.identity, new Vector3(MESH_SCALE, MESH_SCALE, MESH_SCALE));

                Graphics.DrawMesh(hapticPatternVisualMesh, matrixTRS, hapticPatternVisualMaterial, 0);
            }
        }