dont remember
[vg.git] / vg_audio.h
index 5b65ccbd0dc040bf03be9559cb8f8b5ec2e5e4d7..279b7f4ea57316c6c9680cf5fdf9be631ee0c8e0 100644 (file)
@@ -836,28 +836,29 @@ static void audio_channel_mix( audio_channel *ch, float *buffer )
          framevol_l = 0.0f;
          framevol_r = 0.0f;
       }
+      else{
+         v3f delta;
+         v3_sub( ch->_.spacial_falloff, vg_audio.listener_pos, delta );
 
-      v3f delta;
-      v3_sub( ch->_.spacial_falloff, vg_audio.listener_pos, delta );
+         float dist = v3_length( delta ),
+               vol  = vg_maxf( 0.0f, 1.0f - ch->_.spacial_falloff[3]*dist );
 
-      float dist = v3_length( delta ),
-            vol  = vg_maxf( 0.0f, 1.0f - ch->_.spacial_falloff[3]*dist );
+         v3_muls( delta, 1.0f/dist, delta );
+         float pan  = v3_dot( vg_audio.listener_ears, delta );
+         vol = powf( vol, 5.0f );
 
-      v3_muls( delta, 1.0f/dist, delta );
-      float pan  = v3_dot( vg_audio.listener_ears, delta );
-      vol = powf( vol, 5.0f );
+         framevol_l *= (vol * 0.5f) * (1.0f - pan);
+         framevol_r *= (vol * 0.5f) * (1.0f + pan);
 
-      framevol_l *= (vol * 0.5f) * (1.0f - pan);
-      framevol_r *= (vol * 0.5f) * (1.0f + pan);
+         v3_muls( delta, 1.0f/dist, delta );
 
-      v3_muls( delta, 1.0f/dist, delta );
-
-      const float vs = 100.0f;
-      float doppler = (vs+v3_dot(delta,vg_audio.listener_velocity))/vs;
-            doppler = vg_clampf( doppler, 0.6f, 1.4f );
-            
-      if( fabsf(doppler-1.0f) > 0.01f )
-         frame_samplerate *= doppler;
+         const float vs = 100.0f;
+         float doppler = (vs+v3_dot(delta,vg_audio.listener_velocity))/vs;
+               doppler = vg_clampf( doppler, 0.6f, 1.4f );
+               
+         if( fabsf(doppler-1.0f) > 0.01f )
+            frame_samplerate *= doppler;
+      }
    }
 
    u32 buffer_length = AUDIO_MIX_FRAME_SIZE;