public void OnTransformChanged(Transform transform)
        {
            var pitch     = MathUtility.EulerAngleToLinear(transform.eulerAngles.x);
            var freq      = MathUtility.MidiToFrequency(57f + pitch * 24f); // 2 octaves
            var waveform  = MathUtility.EulerToUnipolar(transform.rotation.eulerAngles.z);
            var resonance = MathUtility.EulerAngleToReson(transform.rotation.eulerAngles.y);

            pureDataFacade_.SendMessage("car_freq", freq);
            pureDataFacade_.SendMessage("car_waveform", waveform);
            pureDataFacade_.SendMessage("car_reson", resonance);

            if (FreqChanged != null)
            {
                FreqChanged.Invoke(freq);
            }
            if (ResonanceChanged != null)
            {
                ResonanceChanged.Invoke(resonance);
            }
        }
        public void OnTransformChanged(Transform transform)
        {
            var linear    = MathUtility.EulerAngleToLinear(transform.eulerAngles.x);
            var freq      = Mathf.Pow(linear, 2.6f) * 1760f;
            var waveform  = MathUtility.EulerToUnipolar(transform.rotation.eulerAngles.z);
            var resonance = MathUtility.EulerAngleToReson(transform.rotation.eulerAngles.y);

            pureDataFacade_.SendMessage("mod_freq", freq);
            pureDataFacade_.SendMessage("mod_waveform", waveform);
            pureDataFacade_.SendMessage("mod_reson", resonance);

            if (FreqChanged != null)
            {
                FreqChanged.Invoke(freq);
            }
            if (ResonanceChanged != null)
            {
                ResonanceChanged.Invoke(resonance);
            }
        }