void OnUpdateAudio() { if (lastPlaying) { lastPlaying.UpdateDistanceAndVolume(); } else { EditorApplication.update -= OnUpdateAudio; } }
void UpdateSoundPosition() { if (!listener) { listener = Object.FindObjectOfType <AudioListener>(); } if (listener) { var soundPosition = pointPosition; soundPosition.y = -soundPosition.y; soundPosition *= previewSoundSource.maxDistance; soundPosition = listener.transform.rotation * ((Vector3)soundPosition) + listener.transform.position; previewSoundSource.transform.position = soundPosition; listenerDistance = soundPosition.magnitude; previewSoundSource.UpdateDistanceAndVolume(); } }