예제 #1
0
        public void ApplyHighPassFilter(IALFilter filter, float lfGain)
        {
            uint handle = (filter as OpenALFilter).Handle;

            EFX.alFilteri(handle, EFX.AL_FILTER_TYPE, EFX.AL_FILTER_HIGHPASS);
            EFX.alFilterf(handle, EFX.AL_HIGHPASS_GAINLF, lfGain);
        }
예제 #2
0
        public void ApplyLowPassFilter(IALFilter filter, float hfGain)
        {
            uint handle = (filter as OpenALFilter).Handle;

            EFX.alFilteri(handle, EFX.AL_FILTER_TYPE, EFX.AL_FILTER_LOWPASS);
            EFX.alFilterf(handle, EFX.AL_LOWPASS_GAINHF, hfGain);
        }
예제 #3
0
        public void ApplyBandPassFilter(IALFilter filter, float hfGain, float lfGain)
        {
            uint handle = (filter as OpenALFilter).Handle;

            EFX.alFilteri(handle, EFX.AL_FILTER_TYPE, EFX.AL_FILTER_BANDPASS);
            EFX.alFilterf(handle, EFX.AL_BANDPASS_GAINHF, hfGain);
            EFX.alFilterf(handle, EFX.AL_BANDPASS_GAINLF, lfGain);
        }
예제 #4
0
 public void SetSourceHighPassFilter(IALSource source, float lfGain)
 {
     EFX.alFilteri(INTERNAL_alFilter, EFX.AL_FILTER_TYPE, EFX.AL_FILTER_HIGHPASS);
     EFX.alFilterf(INTERNAL_alFilter, EFX.AL_HIGHPASS_GAINLF, lfGain);
     AL10.alSourcei(
         (source as OpenALSource).Handle,
         EFX.AL_DIRECT_FILTER,
         (int)INTERNAL_alFilter
         );
 }
예제 #5
0
 public void SetSourceLowPassFilter(IALSource source, float hfGain)
 {
     EFX.alFilteri(INTERNAL_alFilter, EFX.AL_FILTER_TYPE, EFX.AL_FILTER_LOWPASS);
     EFX.alFilterf(INTERNAL_alFilter, EFX.AL_LOWPASS_GAINHF, hfGain);
     AL10.alSourcei(
         (source as OpenALSource).Handle,
         EFX.AL_DIRECT_FILTER,
         (int)INTERNAL_alFilter
         );
 }
예제 #6
0
        public void SetSourceHighPassFilter(IALSource source, float lfGain)
        {
            EFX.alFilteri(INTERNAL_alFilter, EFX.AL_FILTER_TYPE, EFX.AL_FILTER_HIGHPASS);
            EFX.alFilterf(INTERNAL_alFilter, EFX.AL_HIGHPASS_GAINLF, lfGain);
            AL10.alSourcei(
                (source as OpenALSource).Handle,
                EFX.AL_DIRECT_FILTER,
                (int)INTERNAL_alFilter
                );
#if VERBOSE_AL_DEBUGGING
            CheckALError();
#endif
        }
예제 #7
0
 public void ApplyBandPassFilter(uint source, float hfGain, float lfGain)
 {
     EFX.alFilteri(Handle, EFX.AL_FILTER_TYPE, EFX.AL_FILTER_BANDPASS);
     EFX.alFilterf(Handle, EFX.AL_BANDPASS_GAINHF, hfGain);
     EFX.alFilterf(Handle, EFX.AL_BANDPASS_GAINLF, lfGain);
 }
예제 #8
0
 public void ApplyHighPassFilter(uint source, float lfGain)
 {
     EFX.alFilteri(Handle, EFX.AL_FILTER_TYPE, EFX.AL_FILTER_HIGHPASS);
     EFX.alFilterf(Handle, EFX.AL_HIGHPASS_GAINLF, lfGain);
 }
예제 #9
0
 public void ApplyLowPassFilter(uint source, float hfGain)
 {
     EFX.alFilteri(Handle, EFX.AL_FILTER_TYPE, EFX.AL_FILTER_LOWPASS);
     EFX.alFilterf(Handle, EFX.AL_LOWPASS_GAINHF, hfGain);
 }