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
C-/C++-Quelltext |
|
1 2 3 4 5 |
//Sounds laden und abspielen. bool PlaySound(string Sound); // Zeiger für den Sound. Mix_Chunk* m_psound; |
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
bool CFramework::PlaySound(string Sound) { m_psound = Mix_LoadWAV(Sound.c_str()); if( m_psound != 0 ) { Mix_PlayChannel(0, m_psound, 0); return true; } else { return false; } } |
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
// PlayMusic // // Aufgabe: Musik abspielen. // bool CFramework::PlayMusic(string Music) { // Musik laden m_pmusic = Mix_LoadMUS(Music.c_str()); if( m_pmusic != 0 ) { Mix_PlayMusic(m_pmusic, -1); return true; } else { return false; } } |
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 |
// Init // // Aufgabe: Framework initialisieren // bool CFramework::Init (int ScreenWidth, int ScreenHeight, int ColorDepth, bool bFullscreen) { // Alle Systeme der SDL initialisieren if (SDL_Init (SDL_INIT_VIDEO | SDL_INIT_TIMER | SDL_INIT_AUDIO) == -1 ) { cout << "SDL konnte nicht initialisiert werden!" << endl; cout << "Fehlermeldung: " << SDL_GetError () << endl; Quit (); return (false); } // Vollbild oder Fenstermodus einstellen if (bFullscreen == true) { m_pScreen = SDL_SetVideoMode (ScreenWidth, ScreenHeight, ColorDepth, SDL_HWSURFACE | SDL_DOUBLEBUF | SDL_FULLSCREEN); } else { m_pScreen = SDL_SetVideoMode (ScreenWidth, ScreenHeight, ColorDepth, SDL_HWSURFACE | SDL_DOUBLEBUF); } // Prüfen, ob alles funktioniert hat if (m_pScreen == NULL) { cout << "Videomodus konnte nicht gesetzt werden!" << endl; cout << "Fehlermeldung: " << SDL_GetError () << endl; Quit (); return (false); } // Zeiger auf internes Array für Tastaturstatus ermitteln m_pKeystate = SDL_GetKeyState (NULL); // Alles ging glatt, also true zurückliefern return (true); } // Init // Quit // // Aufgabe: Framework (SDL) beenden // void CFramework::Quit () { // Musik wieder freigeben Mix_FreeMusic(m_pMusic); // Sound wieder freigeben Mix_FreeChunk(m_pSound); // Audio-Gerät wieder schließen Mix_CloseAudio(); // SDL beenden SDL_Quit (); } // Quit |
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
// PlayMusic // // Musik spielen // void CFramework::PlayMusic() { // Zeiger für die Musik. m_pMusic = NULL; // Zeiger für den Sound. m_pSound = NULL; // Zuerst das Audio-Greät öffnen, bevor Musik/Sound geladen und abgespielt werden können. Mix_OpenAudio(MIX_DEFAULT_FREQUENCY, MIX_DEFAULT_FORMAT, MIX_DEFAULT_CHANNELS, 4096); // Musik laden m_pMusic = Mix_LoadMUS("Data/Elch.mp3"); // Sound laden m_pSound = Mix_LoadWAV("Data/Elch.wav"); // Musik abspielen, der 2. Parameter gibt hierbei die Anzahl // der loops an, -1 steht für unendlich viele loops. Mix_PlayMusic(m_pMusic, -1); // Sound abspielen, der 1. Parameter gibt den Channel an, in dem // der Sound abgespielt werden soll. Mix_PlayChannel(0, m_pSound, -1); } // PlayMusic |
C-/C++-Quelltext |
|
1 2 3 |
#include <fmod.h> #include <windows.h> #include <iostream> |
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
FMOD::System *m_lpSystem; FMOD::Sound *m_lpSound; FMOD::Channel *m_lpChannel = 0; // PlayMusic // // Musik spielen // void CFramework::PlayMusic() { FMOD::System_Create(&m_lpSystem); m_lpSystem->init(32,FMOD_INIT_NORMAL,0); m_lpSystem->createSound("excellent.wav",FMOD_HARDWARE,0,&m_lpSound); m_lpSystem->playSound(FMOD_CHANNEL_FREE,m_lpSound,0,&m_lpChannel); m_lpSystem->update(); std::cin; } // PlayMusic |
Quellcode |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
c:\dokumente und einstellungen\eigene dateien\projekte\projekte\möp\framework.cpp(133): error C2065: 'FMOD_CHANNEL_FREE': nichtdeklarierter Bezeichner c:\dokumente und einstellungen\eigene dateien\projekte\projekte\möp\framework.cpp(132): error C2065: 'FMOD_HARDWARE': nichtdeklarierter Bezeichner c:\dokumente und einstellungen\eigene dateien\projekte\projekte\möp\framework.cpp(131): error C2065: 'FMOD_INIT_NORMAL': nichtdeklarierter Bezeichner c:\dokumente und einstellungen\eigene dateien\projekte\projekte\möp\framework.cpp(119): error C2143: Syntaxfehler: Es fehlt ';' vor '*' c:\dokumente und einstellungen\eigene dateien\projekte\projekte\möp\framework.cpp(120): error C2143: Syntaxfehler: Es fehlt ';' vor '*' c:\dokumente und einstellungen\eigene dateien\projekte\projekte\möp\framework.cpp(121): error C2143: Syntaxfehler: Es fehlt ';' vor '*' c:\dokumente und einstellungen\eigene dateien\projekte\projekte\möp\framework.cpp(132): error C2227: Der linke Teil von '->createSound' muss auf Klasse/Struktur/Union zeigen Typ ist 'int *' c:\dokumente und einstellungen\eigene dateien\projekte\projekte\möp\framework.cpp(131): error C2227: Der linke Teil von '->init' muss auf Klasse/Struktur/Union zeigen Typ ist 'int *' c:\dokumente und einstellungen\eigene dateien\projekte\projekte\möp\framework.cpp(133): error C2227: Der linke Teil von '->playSound' muss auf Klasse/Struktur/Union zeigen Typ ist 'int *' c:\dokumente und einstellungen\eigene dateien\projekte\projekte\möp\framework.cpp(134): error C2227: Der linke Teil von '->update' muss auf Klasse/Struktur/Union zeigen Typ ist 'int *' c:\dokumente und einstellungen\eigene dateien\projekte\projekte\möp\framework.cpp(121): error C2501: 'Channel': Fehlende Speicherklasse oder Typspezifizierer c:\dokumente und einstellungen\eigene dateien\projekte\projekte\möp\framework.cpp(121): error C2501: 'm_lpChannel': Fehlende Speicherklasse oder Typspezifizierer c:\dokumente und einstellungen\eigene dateien\projekte\projekte\möp\framework.cpp(120): error C2501: 'm_lpSound': Fehlende Speicherklasse oder Typspezifizierer c:\dokumente und einstellungen\eigene dateien\projekte\projekte\möp\framework.cpp(119): error C2501: 'm_lpSystem': Fehlende Speicherklasse oder Typspezifizierer c:\dokumente und einstellungen\eigene dateien\projekte\projekte\möp\framework.cpp(120): error C2501: 'Sound': Fehlende Speicherklasse oder Typspezifizierer c:\dokumente und einstellungen\eigene dateien\projekte\projekte\möp\framework.cpp(119): error C2501: 'System': Fehlende Speicherklasse oder Typspezifizierer c:\dokumente und einstellungen\eigene dateien\projekte\projekte\möp\framework.cpp(119): error C2653: 'FMOD': Keine Klasse oder Namespace c:\dokumente und einstellungen\eigene dateien\projekte\projekte\möp\framework.cpp(120): error C2653: 'FMOD': Keine Klasse oder Namespace c:\dokumente und einstellungen\eigene dateien\projekte\projekte\möp\framework.cpp(121): error C2653: 'FMOD': Keine Klasse oder Namespace c:\dokumente und einstellungen\eigene dateien\projekte\projekte\möp\framework.cpp(130): error C2653: 'FMOD': Keine Klasse oder Namespace c:\dokumente und einstellungen\eigene dateien\projekte\projekte\möp\framework.cpp(130): error C3861: 'System_Create': Bezeichner wurde auch mit einer argumentbezogenen Suche nicht gefunden |
Werbeanzeige