Son de bump (bosse) au roulage
118/03/2019 par Stephane
En utilisant lua et Prosim audio j’ai ajouté le son de bump lors du roulage avec une frequence variable en fonction de la vitesse sol.
J’utilise pour cela un bit d’un offset libre de FSUIPC, dans mon cas il s’agit de l’offset 5713 et du bit 1.
La première chose à faire est d’ajouter notre son dans Prosim
Ensuite aller dans la partie config et combined config sous la partie audio, il faut repérer l’entrée input active du son. On indique ensuite que le son se déclenchera avec le bit 1 de l’offset 5713 comme ceci:
Dans un instance Prosim audio il faut activer le son (c’est normalement fait par défait) et au besoin ajuster son volume:
Dans le répertoire Modules de P3D ou FSX on enregistrera notre script lua que j’ai appelé bump.lua
function Bump(off, val)
ground = ipc.readUW(0x0366)
gnd_spd_meters_per_sec = ipc.readUD(0x02B4)/65536 –ground speed as meters/sec
gs = gnd_spd_meters_per_sec * 1.9438 –convert to knots
gs = math.floor(gs + 0.5) — round to NO decimal places (nearest integer)
if ground == 1 and gs > 0 then
ipc.clearbitsUB(0x5713, 2)
if gs > 5 and gs <=10 then
ipc.sleep(4000)
ipc.setbitsUB(0x5713, 2) — 0x5713 bit 1
ipc.clearbitsUB(0x5713, 2) — 0x5713 bit 1
end
if gs > 10 and gs <=15 then
ipc.sleep(3000)
ipc.setbitsUB(0x5713, 2) — 0x5713 bit 1
ipc.clearbitsUB(0x5713, 2)
end
if gs > 15 and gs <=20 then
Ipc.sleep(2000)
ipc.setbitsUB(0x5713, 2) — 0x5713 bit 1
ipc.clearbitsUB(0x5713, 2) — 0x5713 bit 1
end
if gs > 20 then
ipc.sleep(1500)
ipc.setbitsUB(0x5713, 2) — 0x5713 bit 1
ipc.clearbitsUB(0x5713, 2) — 0x5713 bit 1
end
end
end
event.offset(0x02B4, « UD », « Bump ») — Read ground speed
Le script va s’exécuter à chaque changement de la vitesse sol, ensuite en fonction de la vitesse on fait une pause plus ou moins longue entre chaque son bump.
L’avantage d’utiliser Prosim audio est de pouvoir bénéficier des fonctions réseau de Prosim si l’on veut déclencher le son sur un autre PC et/ou une autre carte son.
Au départ j’ai essayé d’utiliser la librairie sound de lua mais ne suis pas parvenu à changer la carte son sur laquelle envoyer le son même en utilisant le paramètre devnum. Pour info, ci dessous la fonction play sound de lua
function playSound (path)
ref = sound.play(path,3)
while sound.query(ref) do
ipc.sleep(1000)
end
end
Bonjour,
je vois que tu a essayer le devnum audio sans succès, dommage, mais en effet la possibilité de déporté les sons prosim en réseau est une fonctionnalité bien sympa.
Merci pour ton partage, je vais m’en inspirer.
Philippe (domelecq forum flight pilote)