0
0

Hello :)
I have a several questions related to FMOD Designer generated event in the game client.

  1. I’ve loaded the event file generated by FMOD Designer and played it in my application. But there’s a problem. When I played a fire event(sound), while playing walking event(sound), walking sound is overwritten by a fire sound. So can’t hear a walking sound anymore.
    So I set the "Max Playbacks" property to the value of 10 to make it possible to be played simultaneously. But it’s also not working. Is there any way to play a multiple sound simultaneously just as playing a sound using previous version of FMOD.

2.
I just added "FMOD Lowpass" & "FMOD IT Lowpass" effect to my event. Is there any way in the application code that I can figure out what kind of effects are in the event?

please reply to my questions.
thanks.

  • You must to post comments
0
0

[quote="a1psx":9wl6x9uw]eventSystem->GetCategory
category->getChannelGroup
channelGroup->addDSP

That’s the current method I’m using.[/quote:9wl6x9uw]

Yep, that’s the way to do it.

  • You must to post comments
0
0

[quote="andrew":2acmen8l][quote="a1psx":2acmen8l]eventSystem->GetCategory
category->getChannelGroup
channelGroup->addDSP

That’s the current method I’m using.[/quote:2acmen8l]

Yep, that’s the way to do it.[/quote:2acmen8l]

Thanks for your help.

It’s a great help for me.
Have a good day.

  • You must to post comments
0
0
  1. "Max playbacks" is the wrong property to set. You just need to make sure you call EventSystem::init with the "maxchannels" parameter set to something reasonable for the amount of simultaneous sounds you want to play. Try 64 to begin with.

  2. Not easily. The whole idea behind the event system is that the programmer doesn’t need to know what’s in the event – that’s the sound designer’s job. The programmer should only interact with the event through its EventParameters.

  • You must to post comments
0
0

[quote="wonbear":29pwm7nn][quote="andrew":29pwm7nn][quote="a1psx":29pwm7nn]eventSystem->GetCategory
category->getChannelGroup
channelGroup->addDSP

That’s the current method I’m using.[/quote:29pwm7nn]

Yep, that’s the way to do it.[/quote:29pwm7nn]

Thanks for your help.

It’s a great help for me.
Have a good day.[/quote:29pwm7nn]

Sorry to bothering you continuously.
But I have another question.

I just succeeded to add a DSP effect to "Event Category". and it’s working so well.

But I want to add a same event to multiple event categories.

For example, assuming that there are two event categories in the Designer. One is "Fire", the other is "Footsteps". And I want to add "Pistol" event to either of these event categories. But when I add a "Pistol" event to one of these category, "Pistol" event can’t be included to other event category anymore.

Is there anyway that I can solve this problem?

  • You must to post comments
0
0

Thank you for the reply.

[quote="andrew":2rmlb4nl]1. "Max playbacks" is the wrong property to set. You just need to make sure you call EventSystem::init with the "maxchannels" parameter set to something reasonable for the amount of simultaneous sounds you want to play. Try 64 to begin with.
[/quote:2rmlb4nl]

This is the code I was written to play multiple event in my application.

The Init() function just initialize event system just as in the sample application installed with the FMOD Designer Installer.

and Run() function is to be executed every frame to play a sound.

I have abstracted the functions below to make it simple.
and I set the maximum number of channels to "64"

Could you give me some advice what’s wrong in the code? :)

[code:2rmlb4nl]
void Init()
{
result = FMOD::EventSystem_Create(&eventSystem);
if (Failed(result))
return S_FALSE;

result = eventSystem->getSystemObject(&soundSystem);
if (Failed(result))
    return S_FALSE;

result = eventSystem->init(64, (FMOD_INITFLAGS)(FMOD_INIT_NORMAL), 0, EVENT_INIT_NORMAL);
if (Failed(result))
    return S_FALSE;

result = eventSystem->setMediaPath("BF_Ref");
if (Failed(result))
    return S_FALSE;

result = eventSystem->load("BF_Ref.fev", 0, 0);
if (Failed(result))
    return S_FALSE;

result = eventSystem->getGroup("BF_Ref/untitled/Move", true, &eventGroup);
if (Failed(result))
    return S_FALSE;

result = soundSystem->createDSPByType(FMOD_DSP_TYPE_LOWPASS, &global_lowpass);
if (Failed(result))
    return S_FALSE;

result = global_lowpass->setBypass(false);
if (Failed(result))
    return S_FALSE;

result = soundSystem->addDSP(global_lowpass);
if (Failed(result))
    return S_FALSE;

}

void Run()
{
result = eventGroup->getEvent("Fire", EVENT_DEFAULT, &fire);
if (Failed(result))
return S_FALSE;

result = fire->start();
if (Failed(result))
    return S_FALSE;

result = eventGroup->getEvent("Walk", EVENT_DEFAULT, &move);
if (Failed(result))
    return S_FALSE;

result = move->start();
if (Failed(result))
    return S_FALSE;

}

[/code:2rmlb4nl]

Thanks.

  • You must to post comments
0
0

Not tried, but you could make a pistolTemplate, and then use it in Fire_Pistol and Footstep_Pistol. Changing the Pistol, should update the two new events.

Is that what you’re after, or are you trying to get the pistol events affected by the same DSP on the categories?

  • You must to post comments
0
0

Can you reproduce this problem outside of your application? For example, by modifying the simple_event example? And post the code here or send it to support@fmod.org.

  • You must to post comments
0
0

[quote="a1psx":2brx0h0l]Not tried, but you could make a pistolTemplate, and then use it in Fire_Pistol and Footstep_Pistol. Changing the Pistol, should update the two new events.

Is that what you’re after, or are you trying to get the pistol events affected by the same DSP on the categories?[/quote:2brx0h0l]

Yes, that’s what I want to do. But is it a sole method to solve this problem? making a template event and cloning those template for each Pistol event that I need to make?

  • You must to post comments
0
0

[quote="andrew":3fe771bm]Can you reproduce this problem outside of your application? For example, by modifying the simple_event example? And post the code here or send it to support@fmod.org.[/quote:3fe771bm]

Thank you for your help. I finally found out what is the problem while reproducing a sample program to send you. I think I made a mistake while I’m programming the application. Thanks.

And I have a one more question to ask you.

I want to add a DSP effect to event. such as "FMOD Lowpass".
But seeing the sample code, think it is only possible to add a DSP effect to "System" Object or "Channel" Object.

Is there any way to apply the effect to the event which is the only one I want to be affected.

Sincerely Yours.

  • You must to post comments
0
0

You still will not be able to put them through the same DSP, you’ll have to add 2 DSP’s, as they are on different branches of the category tree.

  • You must to post comments
0
0

Add the lowpass to the event using FMOD Designer, not using code.

You can also add dsp units to EventCategories, maybe this is what you’re after?

  • You must to post comments
0
0

a1psx is correct. An event can be in only one category.

  • You must to post comments
0
0

[quote="andrew":31om14b2]Add the lowpass to the event using FMOD Designer, not using code.

You can also add dsp units to EventCategories, maybe this is what you’re after?[/quote:31om14b2]

Yes. I can do that. But I also need the event without the lowpass filter. Because I’m going to play "Walking" event sound without lowpass in normal condition and gong to play "Walking" event sound with lowpass when it’s in urgent or some kind of special situations. In this case, do I have to manually generate each events? A one that has a lowpass filter and another one hasn’t lowpass filter. right?

and no way to do this in the application code? :)

  • You must to post comments
0
0

[quote="andrew":yhhoznzj]a1psx is correct. An event can be in only one category.[/quote:yhhoznzj]

Okay. Then I’m going to make a template event and cloning the template event to make a transformed event.

And one more question. :)

Is there any function to check some event is exist in the EventGroup in the code? or I have to check the result from the getEvent function to identify whether some event is exist or not?

Seeing that documentation comes with the FMODEx Installer doesn’t have any function similar to that I described in the above.

  • You must to post comments
0
0

[quote="wonbear":36vgq30q]and no way to do this in the application code? :)[/quote:36vgq30q]

Make a "footsteps" EventCategory and make your footsteps events members of this EventCategory (using FMOD Designer), add a lowpass dsp unit to this EventCategory using code.

  • You must to post comments
0
0

You could call eventGroup->getEvent with the eventmode set to EVENT_INFOONLY.

  • You must to post comments
0
0

[quote="andrew":35cbxkmd][quote="wonbear":35cbxkmd]and no way to do this in the application code? :)[/quote:35cbxkmd]

Make a "footsteps" EventCategory and make your footsteps events members of this EventCategory (using FMOD Designer), add a lowpass dsp unit to this EventCategory using code.[/quote:35cbxkmd]

I checked the EventCategory object in my code. But there’s no addDSP like function in the EventCategory.

How can I add DSP or lowpass filter to EventCategory object in the code?
Is there any sample code that I can reference?

For the reference, I’m using "FMOD Ex 4.06.22 (STABLE)" released in 22nd June 2007.

Thanks.

  • You must to post comments
0
0

You should be on our payroll Tony 😉

  • You must to post comments
0
0

eventSystem->GetCategory
category->getChannelGroup
channelGroup->addDSP

That’s the current method I’m using.

  • You must to post comments
Showing 19 results
Your Answer

Please first to submit.