|
JLI Spieleprogrammierung
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
The Lord of Programming Living Legend
Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 17.03.2003, 18:03 Titel: Soundeffekte in Echtzeit |
|
|
Wisst ihr zufällig, wie man in VC++ Soundeffekte in Echtzeit anwendet, d.h. nicht ne wav-Datei mit Effekten verändert und dann abspeichert, sondern Programmintern verändert? Oder kennt ihr vielleicht irgendwelche tuts zu diesem Thema? Ich hab des glaub ich scho mal in nem Quellcode gesehn, aber ich versteh da nur Bahnhof. Da kamen auch ganz andere Variablen vor; nicht, wie's in Christians Buch(IDirectMusicLoader8, IDirectMusicPerformance8, IDirectMusicSegment8)
Wie zum ****** macht man so Effekte??? Ich würd sie gerne meine Spiele einbinden.
Ich würde mich über eure Hilfe freuen! _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
|
Hazel JLI MVP
Alter: 39 Anmeldedatum: 19.07.2002 Beiträge: 1761
Medaillen: Keine
|
Verfasst am: 17.03.2003, 18:20 Titel: |
|
|
Gugg dir mal die Libraries FMod und/oder BASS an. Da belegt jeder Sound einen "Channel" und man kann meines Wissens nach verschiedene Effekte darauf anwenden...
Jupp, hab grad nachgeguggt. Aus den BASS dokus:
Zitat: |
HFX WINAPI BASS_ChannelSetFX(
DWORD handle,
DWORD type
);
Parameters
handle The channel handle... a HMUSIC or HSTREAM.
type One of the following types of effect.
BASS_FX_CHORUS Chorus. Use BASS_FXCHORUS structure to set/get parameters.
BASS_FX_COMPRESSOR Compression. Use BASS_FXCOMPRESSOR structure to set/get parameters.
BASS_FX_DISTORTION Distortion. Use BASS_FXDISTORTION structure to set/get parameters.
BASS_FX_ECHO Echo. Use BASS_FXECHO structure to set/get parameters.
BASS_FX_FLANGER Flanger. Use BASS_FXFLANGER structure to set/get parameters.
BASS_FX_GARGLE Gargle. Use BASS_FXGARGLE structure to set/get parameters.
BASS_FX_I3DL2REVERB I3DL2 (Interactive 3D Audio Level 2) reverb. Use BASS_FXI3DL2REVERB structure to set/get parameters.
BASS_FX_PARAMEQ Parametric equalizer. Use BASS_FXPARAMEQ structure to set/get parameters.
BASS_FX_REVERB Reverb. Use BASS_FXREVERB structure to set/get parameters. This effect can only be used with 16-bit channels.
|
Außerdem kann man EAX Effekte nutzen. _________________ *click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
|
|
Nach oben |
|
|
The Lord of Programming Living Legend
Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 18.03.2003, 16:15 Titel: |
|
|
Danke scho mal so weit!!!
Weißt du auch, wie man die einsetzt? Geht des auch mit ner DirectXAudio-Initialisierung wie in Christians Buch?
PS: Hab in der MDSN nix darüber gefunden. _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
|
Hazel JLI MVP
Alter: 39 Anmeldedatum: 19.07.2002 Beiträge: 1761
Medaillen: Keine
|
Verfasst am: 18.03.2003, 16:25 Titel: |
|
|
Nope ist viel einfacher, sind nur ein paar Funktionsaufrufe und alles läuft. Um den Sound zum funzen zu bringen hab ich insgesamt nur 5min gebraucht. _________________ *click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
|
|
Nach oben |
|
|
The Lord of Programming Living Legend
Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 18.03.2003, 16:41 Titel: |
|
|
Hazel hat Folgendes geschrieben: | Nope ist viel einfacher, sind nur ein paar Funktionsaufrufe und alles läuft. |
Was is Nope
Kannst du vielleicht einen Beispielcode posten? _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
|
Hazel JLI MVP
Alter: 39 Anmeldedatum: 19.07.2002 Beiträge: 1761
Medaillen: Keine
|
Verfasst am: 18.03.2003, 18:52 Titel: |
|
|
Nope heißt Nein.
Beispiel Codes... hmm, hier sind Auszüge aus meiner alten Sound-Engine:
Code: |
BOOL CSoundSystem::Init(DWORD freq, HWND hWnd)
{
if(!BASS_Init(-1, freq, /*BASS_DEVICE_NOSYNC*/0, hWnd))
return FALSE;
if(!BASS_Start())
return FALSE;
return TRUE;
}
void CSoundSystem::SetVolume(int sound, int music)
{
BASS_SetGlobalVolumes(music, sound, -1);
}
BOOL CSoundSystem::PlaySample(int index, int pan)
{
CSample * pSample = m_Samples[index];
if(!pSample)
return FALSE;
if(!BASS_SamplePlayEx(pSample->GetHandle(), 0, -1, 50, pan, false))
return FALSE;
return TRUE;
}
|
Code: |
BOOL CSample::Load(char * name)
{
m_Handle = BASS_SampleLoad(FALSE, name, 0, 0, 3, BASS_SAMPLE_OVER_POS);
if(!m_Handle)
return FALSE;
else
return TRUE;
}
|
Code: |
BOOL CMusic::Load(char * name)
{
m_Handle = BASS_MusicLoad(FALSE, name, 0, 0, BASS_MUSIC_LOOP | BASS_MUSIC_RAMPS);
if(!m_Handle)
return FALSE;
else
return TRUE;
}
|
Leider unkommentiert, sorry. Lad dir am besten die Library(->Google) runter und gugg in die Dokus. _________________ *click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
|
|
Nach oben |
|
|
LeeDiGer Super JLI'ler
Anmeldedatum: 31.08.2003 Beiträge: 366 Wohnort: Duisburg Medaillen: Keine
|
Verfasst am: 26.04.2008, 08:46 Titel: |
|
|
Ich hab mir auch mal FMOD runtergeladen und mir die Doku dazu angeschaut. Alles Nötige für 3D Sound habe ich auch in mein Testprojekt implementieren können. Jedoch konnte ich in der Doku und auch sonst nirgends kein Beispiel für die Anwendung von EAX bzw. den Reverbfunktionen von FMOD finden. Hat jemand ein Codeschnipsel, wie man einen einfachen Reverb anwendet? _________________ Kein Rückzug! Kein Aufgeben! |
|
Nach oben |
|
|
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
Powered by phpBB © 2001, 2005 phpBB Group Deutsche Übersetzung von phpBB.de
|