Distance Factor

DirectSound uses meters as the default unit of distance measurements. If your application does not use meters, it can set a distance factor. For information about distance factors, see Units of Measure and Distance Factors.

To set a distance factor for an application that uses feet, for example, call the IDirectSound3DListener::SetDistanceFactor, specifying .30480006096 as the flDistanceFactor parameter. (This value is the number of meters in a foot.) After an application sets the distance factor, it can call any methods that apply to that listener, using the application's native distance unit.

Consequently, an application can retrieve the current distance factor set for a listener by using the IDirectSound3DListener::GetDistanceFactor method. The default value is DS3D_DEFAULTDISTANCEFACTOR (1.0), meaning that one distance unit corresponds to 1 meter. At the default value, a position vector of (3.0,7.2,-20.9) means that the object is 3.0 m right, 7.2 m above, and 20.9 m behind the origin. If the distance factor were changed to 2.0, the same position vector would mean that the object is 6.0 m right, 14.4 m above, and 41.8 m behind the origin.