IDirectSound3DBuffer::SetVelocity
The IDirectSound3DBuffer::SetVelocity method sets the sound buffer's current velocity.
HRESULT SetVelocity(
D3DVALUE x,
D3DVALUE y,
D3DVALUE z,
DWORD dwApply
);
Parameters
x, y, and z
Values whose types are D3DVALUE and that represent the coordinates of the new velocity vector. Note that Directsound may adjust these values to prevent floating-point overflow.
dwApply
Value indicating when the setting should be applied. This value must be one of the following:
DS3D_DEFERRED | Settings are not applied until the application calls the IDirectSound3DListener::CommitDeferredSettings method. This allows the application to change several settings and generate a single recalculation. |
DS3D_IMMEDIATE | Settings are applied immediately, causing the system to recalculate the 3-D coordinates for all 3-D sound buffers. |
Return Values
If the method succeeds, the return value is DS_OK.
If the method fails, the return value may be DSERR_INVALIDPARAM.
Remarks
Velocity is used for Doppler effects only. It does not actually move the buffer. For additional information, see Doppler Factor.
The default unit of measurement is meters per second, but this can be changed by using the IDirectSound3DListener::SetDistanceFactor method.
See Also
IDirectSound3DBuffer::SetPosition, IDirectSound3DBuffer::GetVelocity