Soundverzögerung bei BB3d
Übersicht

![]() |
AxeBetreff: Soundverzögerung bei BB3d |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo,
ich habe ein kleines Problem mit dem Sound bei BB3d. Ich habe bereits einiges in 2d programmiert. Nun bin ich auch 3d umgestiegen. Jedoch habe ich das Problem, dass die Sounds erst nach einer kurzen Verzögerung ausgegeben haben. Wenn ich denselben Quellcode mit BB2d abspiele tritt das Problem nicht auf. Woran kann das liegen:?: Ich lade den Sound mit LoadSound und spiele ihn mit PlaySound ab. Es wird auch nur die Tonasugabe verzögert, nicht auch das gesamte Spiel. |
||
Projekte:
Ping Pong 2D Version 2.1 Weitere Infos: axesite.de |
![]() |
Christoph |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zitat: ...Es wird auch nur die Tonausgabe verzögert, nicht auch das gesamte Spiel...
Du könntest vielleicht mit Delay nach den Befehlen mit Playsound eine Programmverzögerung einleiten, damit Sound und Programmrest wieder zusammenpassen. |
||
![]() |
Jan_Ehemaliger Admin |
![]() Antworten mit Zitat ![]() |
---|---|---|
hast du die aktuelle version? | ||
between angels and insects |
![]() |
D2006Administrator |
![]() Antworten mit Zitat ![]() |
---|---|---|
~VERSCHOBEN~ Dieser Thread passte nicht in das Forum, in dem er ursprünglich gepostet wurde. MfG D2006 |
||
Intel Core i5 2500 | 16 GB DDR3 RAM dualchannel | ATI Radeon HD6870 (1024 MB RAM) | Windows 7 Home Premium
Intel Core 2 Duo 2.4 GHz | 2 GB DDR3 RAM dualchannel | Nvidia GeForce 9400M (256 MB shared RAM) | Mac OS X Snow Leopard Intel Pentium Dual-Core 2.4 GHz | 3 GB DDR2 RAM dualchannel | ATI Radeon HD3850 (1024 MB RAM) | Windows 7 Home Premium Chaos Interactive :: GoBang :: BB-Poker :: ChaosBreaker :: Hexagon :: ChaosRacer 2 |
![]() |
AxeBetreff: Version |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich benutze die Demoversion von BB3d.
Das mit der Pause ist problematisch, da die bewegt Objekte ja angehalten werden müssten. Das sieht dann nicht wirklich gut aus. |
||
Projekte:
Ping Pong 2D Version 2.1 Weitere Infos: axesite.de |
![]() |
Christoph |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich dachte das ist nur beim Start so. Wenn du mittendrin die Sounds abspielst
und meine Taktik anwendest sieht das ehrlich nicht so gut aus!!! ![]() |
||
![]() |
Axe |
![]() Antworten mit Zitat ![]() |
---|---|---|
Die Verzögerung beim Start (wenn die Sachen in den Speicher geladen werden) ist ja normal. Aber der Fehler passiert wirklich erst dann, wenn die Töne ausgegeben werden. | ||
Projekte:
Ping Pong 2D Version 2.1 Weitere Infos: axesite.de |
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Könntest du den Code mal posten ? | ||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
![]() |
Axe |
![]() Antworten mit Zitat ![]() |
---|---|---|
Auszug aus dem Quellcode (den ganzen Quellcode will ich nicht freigeben)
Code: [AUSKLAPPEN] ... ;Sounds Global wallhit=LoadSound("gfx\wallhit.wav") Global teleport=LoadSound("gfx\teleport.wav") Global bathit=LoadSound("gfx\bathit.wav") Global win=LoadSound("gfx\cool.wav") LoopSound win If wallhit=0 Then RuntimeError "Sound nicht gefunden" If teleport=0 Then RuntimeError "Sound nicht gefunden" If bathit=0 Then RuntimeError "Sound nicht gefunden" If win=0 Then RuntimeError "Sound nicht gefunden" ... ;Kollisionsabfrage If xkugel<60 And winkel>90 And winkel<270 Then winkel=180-winkel channel4=PlaySound (wallhit) EndIf Mit den anderen Sounds verfahre ich gleich. |
||
Projekte:
Ping Pong 2D Version 2.1 Weitere Infos: axesite.de |
![]() |
Markus2 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Vieleicht ist einfach nur leere am Anfang der Wave Datei !? | ||
![]() |
Axe |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das merkwüdige ist dann, dass es in BB2d funktioniert und in 3d nicht (selber Quellcode). | ||
Projekte:
Ping Pong 2D Version 2.1 Weitere Infos: axesite.de |
![]() |
Markus2 |
![]() Antworten mit Zitat ![]() |
---|---|---|
![]() If xkugel<60 And winkel>90 And winkel<270 Then winkel=180-winkel channel4=PlaySound (wallhit) EndIf Kann es sein das PlaySound mehrmals aufgerufen wird und darum das Sample immer von vorne angespielt wird bis die Bedingungen nicht mehr zutreffen ? |
||
![]() |
Axe |
![]() Antworten mit Zitat ![]() |
---|---|---|
Die Abfrage ist so formuliert, dass ein Wiederaufruf nicht sofort möglich ist. Ich habs trotzdem mal ausprobiert und eine If Anweisung ergänzt:
If Not ChannelPlaying(channel4) Then channel4=PlaySound (wallhit) Aber das Problem besteht weiterhin. |
||
Projekte:
Ping Pong 2D Version 2.1 Weitere Infos: axesite.de |
![]() |
Markus2 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Versuch mal so :
Wenn dein Objekt in dem Bereich kommt wo ein Ton abgespielt werden soll setzte ein Flag z.B. Hit=1 wenn Hit=0 Wenn Hit=1 dann spielste den Ton und setzt Hit=2 und wenn es den Rand Bereich verläßt setzt du Hit=0 Vieleicht geht es so besser . Das Flag dann im Fenster anzeigen . Das es in BB2D geht wundert mich ![]() |
||
![]() |
Jan_Ehemaliger Admin |
![]() Antworten mit Zitat ![]() |
---|---|---|
Axe hat Folgendes geschrieben: Code: [AUSKLAPPEN] ;Sounds Global wallhit=LoadSound("gfx\wallhit.wav") Global teleport=LoadSound("gfx\teleport.wav") Global bathit=LoadSound("gfx\bathit.wav") Global win=LoadSound("gfx\cool.wav") LoopSound win Ich hoffe, das ist nicht in der SChleife! |
||
between angels and insects |
![]() |
Axe |
![]() Antworten mit Zitat ![]() |
---|---|---|
Nein, sonst würde das Spiel ja garnicht flüssig laufen. Ich habe beim Posten nur den Zwischenteil weggelassen.
Vieleicht kann man das Problem mit den Sounds auch so lösen, dass man im Voraus berechnet, ob eine Kollision stattfinden wird und den Ton dann schon vorher ausgeben, damit er dann zum richtigen Zeitpunkt aus dem Lautsprecher kommt. Das Problem ist dann aber wieder, dass es in der 2d Version ja auch so schon geht, d.h. dort würde der Sound zu früh erklingen. |
||
Projekte:
Ping Pong 2D Version 2.1 Weitere Infos: axesite.de |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group