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

Toxic

Frischling

  • »Toxic« ist der Autor dieses Themas

Beiträge: 53

Wohnort: Niedersachsen

Beruf: Ingenieur

  • Private Nachricht senden

11

01.04.2009, 15:41

Also ich erweitere ja das kleine SDL-Spiel.
Die Variable wird in Player.hpp deklariert.
In der Klasse CPlayer im private Bereich.

C-/C++-Quelltext

1
CSound  *m_pSound;               // Sound-Instanz 


Dann wird in Player.cpp im Konstruktor CPlayer() die Adresse auf NULL gesetzt.

C-/C++-Quelltext

1
m_pSound = NULL;


Naja und schließlich erfolgt dann aus der privaten Funktion ProcessShooting () heraus der Aufruf von Load()

C-/C++-Quelltext

1
m_pSound->Load();


Probeweise habe ich natürlich den Aufruf auch schon mal aus anderen Stellen des Programmes heraus versucht, der Fehler bleibt leider derselbe.
Wenn Architekten ihre Häuser so bauen würden wie Programmierer ihre Programme, könnte ein einziger Specht ganze Städte zerstören !

12

01.04.2009, 15:42

Oh. :oops:

Was ist mit

C-/C++-Quelltext

1
m_pSound = new CSound;


:?: :?: :?:
fka tm

physX

Treue Seele

Beiträge: 119

Wohnort: Dresden

  • Private Nachricht senden

13

01.04.2009, 15:50

hallo, eventuell macht der buffer-wert Probleme. versuch mal die werte die hier unten angegeben sind bzw. 512/1024/2048 etc....
Weiss nicht ob es das Problem löst aber versuchen kann man es ja mal.
Gruss

Mix_OpenAudio(frequency, format, channels, chunksize)
Open the mixer with a certain audio format.
Parameters:
frequency (int) - Samples per second. Typical values are 22050, 44100, 44800.
format (int) - Audio format; one of AUDIO_U8, AUDIO_S8, AUDIO_U16LSB, AUDIO_S16LSB, AUDIO_U16MSB or AUDIO_S16MSB
channels (int) - Either 1 for monophonic or 2 for stereo.
chunksize (int) - Size of the audio buffer. Typical values are 4096, 8192.

14

01.04.2009, 15:53

physX

Manchmal hilft es ungemein, auch die anderen Posts zu lesen. :roll:
fka tm

physX

Treue Seele

Beiträge: 119

Wohnort: Dresden

  • Private Nachricht senden

15

01.04.2009, 15:56

ups... :oops: sorry

die postgeschwindigkeit von euch war für mich einfach zu schnell :D

Toxic

Frischling

  • »Toxic« ist der Autor dieses Themas

Beiträge: 53

Wohnort: Niedersachsen

Beruf: Ingenieur

  • Private Nachricht senden

16

01.04.2009, 16:01

Was ist mit

C-/C++-Quelltext

1
m_pSound = new CSound;


Stimmt du hast recht...
Habe ich geändert, es läuft...

Ich habe m_pSound also keinen Adressbereich auf dem heap zugeordnet, so war das doch oder :D ?

Auf jeden Fall vielen Dank, der Fehler war jetzt doch sehr einfach, aber ich habe ihn irgendwie komplett woanders vermutet. Ist das den normal das bei soetwas auch überhaupt kein Compilerfehler auftritt. Mich wundert es auch ein bisschen das Load() überhaupt ausgeführt worden ist.
Wenn Architekten ihre Häuser so bauen würden wie Programmierer ihre Programme, könnte ein einziger Specht ganze Städte zerstören !

17

01.04.2009, 16:07

Dem Compiler ist das afaik wurscht (kann aber auch von der Warnstufe abhängen).
Hast ja den Pointer brav initialisiert (mit NULL).

delete nicht vergessen!
fka tm

Toxic

Frischling

  • »Toxic« ist der Autor dieses Themas

Beiträge: 53

Wohnort: Niedersachsen

Beruf: Ingenieur

  • Private Nachricht senden

18

01.04.2009, 16:12

Habe an delete gedacht :D Das das ganz übel ist, ist irgendwie bei mir hängengeblieben...Die Reservierung des Speicherplatzes werde ich jetzt hoffentlich in Zukunft auch nicht wieder vergessen, solche Ereignisse haben ja den Vorteil das sie sehr einprägsam sind :)

Mal sehen wenn ich meine SDL_Mixer Klasse fertig habe, schreibe ich hier vielleicht mal ein kleines Tutorial dazu. Man sieht ja doch an den threads das die Ausgabe von Sounds häufig Probleme bereitet. :D
Wenn Architekten ihre Häuser so bauen würden wie Programmierer ihre Programme, könnte ein einziger Specht ganze Städte zerstören !

19

01.04.2009, 16:25

Ja, lass mal buchstäblich was hören, wenn du durch bist.
Wo bei mich eher das Produkt als das Tutorial interessiert.
fka tm

Werbeanzeige