Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

T-VIRUS

Alter Hase

Beiträge: 548

Wohnort: Göttingen(West)/Nordhausen(Ost)

Beruf: Schüler

  • Private Nachricht senden

11

08.05.2006, 12:48

Ich werde, wenn ich das alles mit directx oder mit einer fertigen Funktion kann, eine eigene Methode/Funktion schreiben die so in etwa läuft:

C-/C++-Quelltext

1
2
3
4
void CEngine::PlaySound(char* pFilename)
{
 //hier funktionsstuff für Sound :)

}


Den selbst ist der Programmierer ;D
Meine Blog:)

Wer Bugs im Text findet kann sie melden, fix erscheint irgendwann :D

MFG T-VIRUS

koschka

Community-Fossil

Beiträge: 2 862

Wohnort: Dresden

Beruf: Student

  • Private Nachricht senden

12

08.05.2006, 17:14

1.) DirectSound initalisieren (ein Klacks)
1a) LoadFunktion mit WinAPI für Waves (kaann auch in die Wave Klasse s.u.)
2.) Soundmanager schreiben (ebenfalls ein Klacks)
3.) Sound Grundklasse erstellen wo wichtige Methoden aller Soundbuffer drin sind (z.B. Play)
4.) Spezielle Klassen, erben von Sound Grundklasse (eine für Wave, die andere für Mp3 u.s.w. + Loader)

Arbeitumfaang: maximal einen Tag ;).

13

10.05.2006, 14:41

hm noch ne frage, wenn ich sounds überlappen möchte also z.b. ein hintergrundsound soll nicht durch nen effektsound unterbrochen werden, wie stell ich das dann an?

weil irgendwie funktioniert mits

SND_ASYNC&&NO_STOP bzw. SND_ASYNC&NO_STOP

nicht :(

was muss ich denn da anstellen?

Frede

Treue Seele

Beiträge: 259

Wohnort: Hameln

Beruf: Schüler

  • Private Nachricht senden

14

15.05.2006, 19:06

Du kannst sie mit | verbinden. Dann würd's so aussehen:
SND_ASYNC | NO_STOP

Überings: Heißt es nicht SND_NOSTOP??? NO_STOP kommt mir irgendwie spanisch vor...

john

Alter Hase

Beiträge: 786

Beruf: Schüler

  • Private Nachricht senden

15

15.05.2006, 19:24

Zitat von »"Frede"«

Überings: Heißt es nicht SND_NOSTOP??? NO_STOP kommt mir irgendwie spanisch vor...

Überings ja. :-D ;)
mfg
john

16

16.05.2006, 17:40

jojo heißt schon SND_NOSTOP habs nur vergessen hinzuschreiben :)

hm naja funktioniert leider irgendwie nicht, denn no_stop macht ja das, dass der bereitslaufende sound nicht gestoppt wird und so können die anderen sounds nicht "überlappT" werden.

und wenn ich das nostop weglass, dann beendet es den hintergrund sound :)

damn it^^

muss ich wohl warten, bis ich das dann mit directx beherrsche :)

außer einer von euch weiß ne schnelle lösung?

Anonymous

unregistriert

17

16.05.2006, 17:57

also ich kann dir nur davon abraten mit /a sounds zu erstellen, wenn ich dieses ****** gepiepse höre, dann könnt ich den pc zusammenkloppen ;) da ist kein sound auf jeden fall besser oder du versuchst mal wav datein zu laden oder so, gibt genug tutorials...

mfg darkraider...

18

17.05.2006, 08:01

aehm du weißt schon,dass ich mit sndplaysound WAVE dateien abspiele und nicht /a gepiepse erzeuge :D^^

mfg
Drac

Anonymous

unregistriert

19

17.05.2006, 08:55

Mh Sorry, ich hab soviel von Beep in diesem Thread gelesen ^^

Frede

Treue Seele

Beiträge: 259

Wohnort: Hameln

Beruf: Schüler

  • Private Nachricht senden

20

17.05.2006, 18:24

Und wie mach ich's wenn ich zwei Sounds abspielen möchte ohne das der eine unterbrochen wird???
Wenn ich SND_NOSTOP benutze, spielt er den Sound nicht .
Und falls ich NOSTOP weglasse, spielt er zwar ab, aber die Musik wird gestoppt.

z.B. die Hintergrundmusik wird abgespielt und dauerhaft geloopt :

C-/C++-Quelltext

1
PlaySound("Background.wav", NULL, SND_ASYNC | SND_LOOP | SND_NOSTOP);

Wenn ich dann irgendwo im Spiel einen Schusssound oder so abspiele passiert nichts. Die Musik läuft weiter aber der Schuss bleibt weg.

C-/C++-Quelltext

1
PlaySound("Shot.wav", NULL, SND_ASYNC);


---------------------------------
Und was ist der Unterschied zwischen sndPlaySound und PlaySound???

Werbeanzeige