Seite 2 von 2

Verfasst: 07.09.2006 20:42
von Jilocasin
*thread ausgrab* :oops: :oops:

gibt es dazu ne dokumentation?

Verfasst: 07.09.2006 23:14
von Froggerprogger
Bei der fmod ist eine .chm-Hilfe dabei, in der jeder Befehl erklärt wird.

Bei fmodex sind die Programmierer allerdings auf objektorientierte C++-interfaces umgestiegen, die man so erstmal nicht mit PB nutzen könnte. Allerdings bieten sie zusätzlich auch eine C-Schnittstelle an.

Wenn man also in C++ beispielsweise schreibt:
myFmodSystem.createStream(param1, param2, ...)
ruft man in PB stattdessen per CallFunction auf:
FMOD_SYSTEM_CreateStream(myFmodSystem, param1, param2, ...)

analog bswp. für Channel-Objekte:
C++: myChannel.getSpectrum(param1, param2, ...)
PB: FMOD_Channel_GetSpectrum(myChannel, param1, param2, ...)

(In PB natürlich immer per CallFunction(...))

Die C-Funktionen heißen also etwas anders und haben immer einen Parameter mehr, nämlich den ersten, der eine Referenz auf das "Objekt" hält.
Ist ein bißchen tricky, aber wenn das erstmal verinnerlicht ist, kein Problem mehr.

Als kleine Übersicht führe einfach mal folgendes Progrämmchen aus:

Code: Alles auswählen

Debug OpenLibrary(0, "fmodex.dll")

ExamineLibraryFunctions(0)

While NextLibraryFunction()
  Debug LibraryFunctionName()
Wend
Das listet alle Funktionen der fmodex.dll. Die ganzen kryptischen mit "?" beginnenden sind die C++-Funktionen, danach folgen alle von PB aufrufbaren.

Verfasst: 08.09.2006 13:24
von Jilocasin
8) cool, thx

*probiert das sooofort aus* :lol: