1
1
Fork 0
mirror of https://github.com/QB64-Phoenix-Edition/QB64pe.git synced 2024-07-03 14:41:21 +00:00
QB64-PE/internal/help/_SNDBAL.txt

37 lines
1.6 KiB
Plaintext

The {{KW|_SNDBAL}} statement attempts to set the balance or 3D position of a sound.
{{PageSyntax}}
:{{KW|_SNDBAL}} {{Parameter|handle&}}[, {{Parameter|x!}}][, {{Parameter|y!}}][, {{Parameter|z!}}]
{{PageDescription}}
*Attempts to position a sound in 3D space, or as close to it as the underlying software libraries allow. In some cases, this will be true 3D positioning, in others, a mere volume adjustment based on distance alone.
:::*x distance values go from left(negative) to right(positive).
:::*y distance values go from below(negative) to above(positive).
:::*z distance values go from behind(negative) to in front(positive).
*Omitted x, y or z {{KW|SINGLE}} values are set to 0.
*By setting the x value to -1 or 1 it plays the sound at full volume from the appropriate speaker.
*Sounds at a distance of 1 or -1 are played at full volume. Sounds further than a distance of 1000 cannot be heard.
*The volume decreases linearly (at a constant gradient) over distance. Half volume = 500.
* Opened sound files must have the "VOL" capability to use this statement.
* The sound file should have the "SYNC" capability when more than one sound is being used at the same time!
* An "'''ILLEGAL FUNCTION CALL'''" error can occur if another sound is using the primary or same channel position.
{{PageExamples}}
{{CodeStart}} '' ''
h& = {{Cl|_SNDOPEN}}("LOL.wav", "SYNC,VOL")
{{Cl|_SNDBAL}} h&, 1
{{Cl|_SNDPLAY}} h& '' ''
{{CodeEnd}}
{{PageSeeAlso}}
*{{KW|_SNDOPEN}}, {{KW|_SNDVOL}}, {{KW|_SNDLIMIT}}
{{PageNavigation}}