1 registered members (TipmyPip),
18,449
guests, and 6
spiders. |
Key:
Admin,
Global Mod,
Mod
|
|
|
3D Sound without z-axis
#205442
05/06/08 16:50
05/06/08 16:50
|
Joined: Jul 2005
Posts: 1,930 Austria
Dark_samurai
OP
Serious User
|
OP
Serious User
Joined: Jul 2005
Posts: 1,930
Austria
|
Hi! I want to program my own 3D sounds which ignore the z-axis and the angles by using snd_play/loop. The sound get quieter in the distance correctly. But I don't get the balance thing right. Does anybody know how to calculate the correct balance of the sound, depending on the relativ position to the camera?
Thanks for your help!
ANet - A stable and secure network plugin with multi-zone, unlimited players, voip, server-list features,... (for A7/A8)! get free version
|
|
|
Re: 3D Sound without z-axis
[Re: Dark_samurai]
#206417
05/13/08 12:19
05/13/08 12:19
|
Joined: Jul 2005
Posts: 1,930 Austria
Dark_samurai
OP
Serious User
|
OP
Serious User
Joined: Jul 2005
Posts: 1,930
Austria
|
Eine weitere Frage, diesmal in Deutsch da ich nicht weiß wie man das in Englisch formuliert: Momentan nimmt die Lautstärke meines Sounds linear mit der Distanz ab. Ist das so überhaupt richtig? Könnte mir bitte jemand eine Formel zeigen, mit der man die Lautstärke ausrechnen kann?
Danke für eure Hilfe!
ANet - A stable and secure network plugin with multi-zone, unlimited players, voip, server-list features,... (for A7/A8)! get free version
|
|
|
Re: 3D Sound without z-axis
[Re: Dark_samurai]
#206418
05/13/08 12:46
05/13/08 12:46
|
mercuryus
Unregistered
|
mercuryus
Unregistered
|
1. Frage Ich würde dies über ein Dummy-Entity (und ent_playsound) an der x/y-Position der Schallquelle und einem festen Abstand zur Camera lösen. Allerdings funktioniert dann der Dopplereffekt nicht mehr richtig!
2. Frage (verhält sich wie bei Explosionen [erinnerst Du Dich?]) (Schalldruck)/(4 PI r²) = Schalldruck der wirkt im Abstand r
|
|
|
Re: 3D Sound without z-axis
[Re: ]
#206449
05/13/08 16:30
05/13/08 16:30
|
Joined: Jul 2005
Posts: 1,930 Austria
Dark_samurai
OP
Serious User
|
OP
Serious User
Joined: Jul 2005
Posts: 1,930
Austria
|
2. Frage (verhält sich wie bei Explosionen [erinnerst Du Dich?]) (Schalldruck)/(4 PI r²) = Schalldruck der wirkt im Abstand r Kann ich den Schalldruck der im Abstand r wirkt direkt als Lautstärke verwenden? Irgend etwas mache ich mit dieser Formel falsch, denn bei ent_playsound ist wenn ich 100 als lautstärke übergebe nach 700 Quants nichts mehr zu hören. Nun rechne ich mit dieser Formel aber folgendes mit 700 Quants aus: 100/(4*pi*700²) = 0.00001624 und bei 350 Quants: 100/(4*pi*350²) = 0.000064961 Wenn man einmal anschaulichere Zahlen daraus macht: 0.1624 bzw. 0.6496 Da gibts doch irgend etwas nicht... wie kann das bei der halben Distanz noch immer fast nicht lauter geworden sein? 1. Frage Ich würde dies über ein Dummy-Entity (und ent_playsound) an der x/y-Position der Schallquelle und einem festen Abstand zur Camera lösen. Allerdings funktioniert dann der Dopplereffekt nicht mehr richtig! Genau dieser Dopplereffekt stört mich auch, und den kann ich leider nicht einfach ausstellen... Außerdem ist es sowieso fast kein Aufwand so etwas zu schreiben, nur die Formeln muss ich noch richtig hin bekommen... Dark_Samurai
ANet - A stable and secure network plugin with multi-zone, unlimited players, voip, server-list features,... (for A7/A8)! get free version
|
|
|
Re: 3D Sound without z-axis
[Re: Dark_samurai]
#206452
05/13/08 16:40
05/13/08 16:40
|
mercuryus
Unregistered
|
mercuryus
Unregistered
|
Wenn Du sowieso schon "ent_playsound" verwendest, brauchst Du Dich um die Lautstärkenberechnung nicht kümmern. (siehe im Handbuch, dorst steht, wie viele Quants der Sound zu hören ist - hier sind Lautstärkewerte >100 notwendig!Um die Z-Achste zu ignorieren, verwende ein DummyEntity: in etwa so:
ENTITY* myObj;
myObj = ent_create(NULL, nullvector, NULL);
vec_set(myObj, vector(my.x, my.y, camera.z));
ent_playsound(myObj, snd_burp, 5000);
ent_remove(myObj);
Den Dopplereffekt kannst Du abstellen mit: doppler_factor = 0;
|
|
|
Re: 3D Sound without z-axis
[Re: ]
#206459
05/13/08 17:05
05/13/08 17:05
|
Joined: Jul 2005
Posts: 1,930 Austria
Dark_samurai
OP
Serious User
|
OP
Serious User
Joined: Jul 2005
Posts: 1,930
Austria
|
Wenn Du sowieso schon "ent_playsound" verwendest, brauchst Du Dich um die Lautstärkenberechnung nicht kümmern. Das war eigentlich so gemeint, dass ich ent_playsound als Vergleichswert verwenden wollte. Egal, wenn man den doppler-effekt ausstellen kann, werde ich doch ent_playsound verwenden. Danke für deine Hilfe! Dark_Samurai
ANet - A stable and secure network plugin with multi-zone, unlimited players, voip, server-list features,... (for A7/A8)! get free version
|
|
|
|