AttenuationModelInverse QML Type

Defines a non-linear attenuation curve for a Sound . 更多...

import 语句: import QtAudioEngine 1.15
Since: Qt 5.0
继承:

Item

特性

详细描述

AttenuationModelInverse must be defined inside AudioEngine or be added to it using AudioEngine.addAttenuationModel() if AttenuationModelInverse is created dynamically.

Rectangle {
    color:"white"
    width: 300
    height: 500
    AudioEngine {
        id:audioengine
        AttenuationModelInverse {
           name:"linear"
           start: 20
           end: 500
           rolloff: 1.5
        }
        AudioSample {
            name:"explosion"
            source: "explosion-02.wav"
        }
        Sound {
            name:"explosion"
            attenuationModel: "linear"
            PlayVariation {
                sample:"explosion"
            }
        }
    }
}
					

Attenuation factor is calculated as below:

distance: distance from sound to listener d = min(max(distance, start), end); attenuation = start / (start + (d - start) * rolloff);

特性文档编制

end : real

This property holds the end distance. There will be no further attenuation if the distance from sound to listener is larger than this. The default value is 1000.

name : string

This property holds the name of AttenuationModelInverse , must be unique among all attenuation models and only defined once.

rolloff : real

This property holds the rolloff factor. The bigger the value is, the faster the sound attenuates. The default value is 1.

start : real

This property holds the start distance. There will be no attenuation if the distance from sound to listener is within this range. The default value is 1.