Sound3D Funktion gesucht
Übersicht

![]() |
PucciniBetreff: Sound3D Funktion gesucht |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi!
Ich suche eine ersatzfunktion für die EmitSound und Load3DSound funktion in B3D! Ich hab gehört das diese auf manchen rechnern Probleme machen und auch bei mir kommt ab und zu ein fehler-ton einfach mal so raus ^^ daher hatte ich mal eine funktion hier im forum gefunden die geeigent schin, leider aber nicht vollständig ist! ich hab die versucht zu erweitern, aber nich ganz so hinbekommen wie ich das wollte! :< mir fehlt da glaub ich etwas verständniss ^^ sooorry! hier mal meine abgeänderte Version: Code: [AUSKLAPPEN] Type MusikDaten
Field Platz Field Lied Field Channel Field Weite Field Vol# End Type Graphics3D 1024,768,16,2 SetBuffer BackBuffer() S = CreateSphere(16) Global Cam = CreateCamera() CameraRange Cam,1,10000 Global pan# PositionEntity cam,0,0,-50 Musik.MusikDaten = New MusikDaten Musik\Lied = LoadSound("Musik.mp3") Musik\Channel = PlaySound(Musik\Lied) Musik\Platz = CreatePivot() Musik\Weite = 100 Musik\Vol = 0 While Not KeyHit(1) Cls If KeyDown(200) Then MoveEntity Cam,0,0,-1 If KeyDown(208) Then MoveEntity Cam,0,0,1 If KeyDown(203) Then TurnEntity Cam,0,1,0 If KeyDown(205) Then TurnEntity Cam,0,-1,0 UpdateMusik() Delay 10 RenderWorld Text 0,0,pan#+" "+EntityYaw#(cam) Flip Wend End Function UpdateMusik() For Musik.MusikDaten = Each MusikDaten Dis# = EntityDistance(cam,Musik\Platz) If Dis<>0.0 Then Musik\Vol = 1.0 - (Dis#/(Musik\Weite)) ChannelVolume Musik\Channel,Musik\Vol x#=EntityX(cam)-EntityX(Musik\Platz) z#=EntityZ(cam)-EntityZ(Musik\Platz) ;Hier weis ich nicht wie ich die 2 Winkel unter einen Hut bekomme pan# = (ATan2(x#,z#)+360+EntityRoll(cam)) Mod 360 pan# = (EntityYaw#(cam))/90 ;Leider ist das auch noch nich das gelbe vom Ei! ChannelPan Musik\Channel,Pan# EndIf Next End Function wenn sich damit einer mehr auskennt kann er mir ja bitte mal nen tipp geben ![]() ![]() MfG Puccini |
||
-=Achtung=-
Suche Hobby-Modelliere der hin und wieder bock hat ein kleines Objekt zu erstellen. Bei Interesse PM www.ragesoft.de Passwortmanager: http://ragesoft.de/index.php?o...;Itemid=39 |
Krümel |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Auf die Schnelle würd ichs mit "DeltaYaw" machen:
Code: [AUSKLAPPEN] Function UpdateMusik() For Musik.MusikDaten = Each MusikDaten Dis# = EntityDistance(cam,Musik\Platz) If Dis<>0.0 Then Musik\Vol = 1.0 - (Dis#/(Musik\Weite)) ChannelVolume Musik\Channel,Musik\Vol x#=EntityX(cam)-EntityX(Musik\Platz) z#=EntityZ(cam)-EntityZ(Musik\Platz) ;Hier weis ich nicht wie ich die 2 Winkel unter einen Hut bekomme pan# = -Sin(DeltaYaw(cam,Musik\platz)) ChannelPan Musik\Channel,Pan# EndIf Next End Function |
||
![]() |
Puccini |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi!
danke! genau das hab ich gesucht ![]() ![]() ![]() klappt soweit hervorragend! |
||
-=Achtung=-
Suche Hobby-Modelliere der hin und wieder bock hat ein kleines Objekt zu erstellen. Bei Interesse PM www.ragesoft.de Passwortmanager: http://ragesoft.de/index.php?o...;Itemid=39 |
Omenaton_2Betreff: Wozu Winkel ? |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich habe auch gerade meine eigene Erfahrungen mit EmitSound und was dazugehört gemacht. Sehr schade, daß man diese 3D Sound Befehle nicht vernünftig nutzen kann. Bei mir war es so, daß das extrem auf die Performance ging und manchmal hat der 3D Sound den anderen, ambienten Sound ausgeschaltet.
Ich frage mich nur, welchen Sinn macht es die Lautstärke von dem Winkel abhängig zu machen ? Ich habe beispielsweise einen "Generator" im Weltraum und wenn ich mich dem mit meinem Raumschiff nähere, dann soll es lauter werden. Wenn ich davor stehe dann ganz laut. Ob ich mich dabei drehe sollte egal sein. Ich kann es schon verstehen, daß der Mensch ein klein wenig (minimal) besser hören kann, wenn man sein Ohr in die Richtung wendet, aus der der Schall kommt, aber das ist absolut zu vernachlässigen. |
||
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Es wär aber manchmal ganz günstig zu wissen, woher ein Geräusch kommt, besonders wenn ein unangenehmes Wesen dir ins Ohr Atmet ![]() Weniger die Lautstärke, sondern die Links/Rechts Verteilung auf die Boxen ist da wichtig, und da braucht man den Winkel zwischen Ohr und Quelle. |
||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
![]() |
Puccini |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich hab den Code im Codearchive gepostet, also wenn du ihn benutzen willst kannste ihn dir da rauskopieren ![]() Nich die Lautstärke wird vom winkel abhänging gemacht sonder die Balance! Somit kannste hören von wo der Sound kommt und anhand der lautstärke (welche mittels entfernung berechnet wird) kannste hören wie weit weg er ist ![]() |
||
-=Achtung=-
Suche Hobby-Modelliere der hin und wieder bock hat ein kleines Objekt zu erstellen. Bei Interesse PM www.ragesoft.de Passwortmanager: http://ragesoft.de/index.php?o...;Itemid=39 |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group