Example #1
0
        public void Update()
        {
            var spectrumData = LoopbackAudio.GetAllSpectrumData(AudioVisualizationStrategy);

            for (int i = 0; i < _currentPose.RagdollParts.Length; i++)
            {
                var ragdollPart = _currentPose.RagdollParts[i];
                var maintainPos = ragdollPart.GameObject.GetComponent <RigidbodyMaintainPosition>();

                if (!maintainPos.IsInitialized)
                {
                    continue;
                }

                float min = -RealtimeAudio.MaxAudioValue * ragdollPart.PullDown;
                float max = RealtimeAudio.MaxAudioValue * ragdollPart.PullUp;

                if (ragdollPart.DoEffect)
                {
                    float   amount = normalizeToRange(spectrumData[ragdollPart.SpectrumIndex], min, max) * ragdollPart.BumpAmountScale;
                    Vector3 amountWithDirection = ragdollPart.BumpDirection * amount;

                    var cooledAmountWithDirection = doCooldown(ragdollPart, i, amountWithDirection);

                    maintainPos.IsCooling = ragdollPart.IsInCooldownX || ragdollPart.IsInCooldownY || ragdollPart.IsInCooldownZ;

                    // Direction
                    maintainPos.DesiredPosition = maintainPos.OriginalDesiredPosition + cooledAmountWithDirection;
                }
                else
                {
                    if (maintainPos.DesiredPosition != maintainPos.OriginalDesiredPosition)
                    {
                        maintainPos.DesiredPosition = maintainPos.OriginalDesiredPosition;
                        maintainPos.PullForce       = maintainPos.OriginalPullForce;
                    }
                }
            }
        }
 public virtual void Start()
 {
     // References and setup
     _loopbackAudio = FindObjectOfType <LoopbackAudio>();
 }
Example #3
0
 // Start is called before the first frame update
 void Start()
 {
     _loopbackAudio = FindObjectOfType <LoopbackAudio>();
 }
Example #4
0
 private void Awake()
 {
     loopbackAudio = FindObjectOfType <LoopbackAudio>();
 }
Example #5
0
 // Start is called before the first frame update
 void Start()
 {
     audioSource   = GetComponent <AudioSource>();
     loopBackAudio = GetComponent <LoopbackAudio>();
 }