0
0

Hi there forum reading types,

I am currently working on integrating FMOD into our PC World Builder and game client. I am using VS 8.0, FModEx 4.06.22 and FMod Designer 1.7.19.

I have got it to the stage where I can add sounds in the World Builder and hear them correctly. This is working great and was fairly straight forward to implement.

Now I have reached the point where I want to be able to use the network editing facilities so that I can use the FMod Designer and get the changes to effect the program.

My understanding is that I should be using "fmod_event_net" to achieve this (Since there is no "setProperty" or "setPropertyByIndex")

In order to do this I did the following:

  • Included "fmod_event_net.h"

  • Added "fmod_event_net.dll" to the application directory ("fmodex.dll" and "fmod_event.dll" were already there).

  • Added "fmod_event_net.lib" to the project "Additional Dependancies" ("fmod_event.lib" were already there).

  • Added the following code to the initialisation:
    FMOD_RESULT result = FMOD::NetEventSystem_Init( eventSystem_ );
    Where "eventSystem_" is an FMOD::EventSystem* and has already been initialised.

  • Added:
    FMOD_RESULT result = FMOD::NetEventSystem_Update();
    To our update method (just after "eventSystem_->update()")

My problems are the following:

1) I get 497 Link warnings:
X is already defined in fmod_event_net.lib (fmod_event_net.dll); second definition ignored.
If I change the order of the libs in the "Additional Dependancies" this is the same but with "fmod_event.lib" instead.

2) When I run the program I get one of the two following crashes:

* If "fmod_event_net.lib" is the first (or only) in the "Additional Dependancies" I get a "Buffer Overrun" crash when I call:

FMOD_RESULT result = FMOD::EventSystem_Create( &eventSystem_ );

* If "fmod_event.lib" is the first (or only) in the "Additional Dependancies" I get a "Buffer Overrun" crash when I call (after "EventSystem_Create" and "eventSystem_->init"):

FMOD_RESULT result = FMOD::NetEventSystem_Init( eventSystem_ );

I have scoured the net, these forums and the API doco but haven’t found any examples of the correct usage of the network API.

What am I doing wrong? This is some very important functionality for our workflow and would like to resolve this issue as quickly as possible.

Many thanks in advance,
Igor Dopita
Microforte Lead Tools Programmer

PS. Sorry for the epic post but I wanted to be very clear ๐Ÿ˜›

  • You must to post comments
0
0

Doh ๐Ÿ˜ณ

Totally my fault…

I missed updating the DLLs and was out of synch between libs and DLLS.

Once I fixed that everything was hunky-dory and works great.

Yay !!!

So the post above is actually the correct integration process for others to use.

Also I found the:
"FMOD Programmers API Win32\fmoddesignerapi\examples\realtime_tweaking"
example… Not sure how I missed it before ๐Ÿ˜ณ

Thanks again for your great product,
Igor Dopita
Microforte Lead Tools Programmer

  • You must to post comments
0
0

So finally, here is the process to change from fmod_event to fmod_event_net:

  • Include "fmod_event_net.h"

  • Add "fmod_event_net.dll" (Program Files\FMOD SoundSystem\FMOD Programmers API Win32\fmoddesignerapi\api) to the application directory and remove "fmod_event.dll" ("fmodex.dll" should already there).

  • Add "fmod_event_net.lib" (Program Files\FMOD SoundSystem\FMOD Programmers API Win32\fmoddesignerapi\api\lib) and remove "fmod_event.lib" from the project "Additional Dependancies".

  • Add the following code to the initialisation:
    FMOD_RESULT result = FMOD::NetEventSystem_Init( eventSystem_ );
    Where "eventSystem_" is an FMOD::EventSystem* and has already been initialised.

  • Add:
    FMOD_RESULT result = FMOD::NetEventSystem_Update();
    To your update method (just after "eventSystem_->update()")

Hope this help someone :roll:

  • You must to post comments
Showing 2 results
Your Answer

Please first to submit.