Seek Modulator on VCA Gain is ignored when changing volume through VCA.setVolume()

Hi,

I’m using FMOD Studio 2.03 with the Unity integration and I’ve run into what seems like an inconsistency regarding Seek Modulators on VCAs.

I have several VCAs (Master, Music, SFX, Ambience, Voices) and I’ve added a Seek Modulator to the Gain control of each VCA. When I adjust the VCA volume directly inside FMOD Studio, the Seek behaves as expected and the volume changes smoothly.

However, when changing the VCA volume from Unity using VCA.setVolume(), the volume change appears to happen immediately and the Seek Modulator is not applied.

My code is essentially:

_vca = RuntimeManager.GetVCA("vca:/Ambience");

float volume = GetSliderVolume(); //value from 0 to 1
_vca.setVolume(volume);

The VCA is valid and the volume change itself works correctly.

My question is:

Is this expected behavior?

If so, is there currently any way to change a VCA volume through the API while respecting the Seek Modulator configured on the VCA Gain control?

From a user perspective, it would be very useful if VCA.setVolume() could optionally respect Seek Modulators, similar to how parameters can be changed with or without seek behavior.

If this is not currently supported, would it be possible to consider adding support for it in a future version?

Thanks!

Hi,

Thank you for sharing the information!

I have checked this with the development team, and this is expected behavior.

VCA.setVolume() / Bus.setVolume() are direct runtime volume controls, separate from the fader property shown in FMOD Studio. Because of this, the Seek Modulator on the fader is not applied when using setVolume().

To achieve the behavior you are looking for, the recommended approach is to automate the fader level with a parameter, then drive that parameter from Unity.

Hello,

Thank you for your quick reply, I’ll do it as you say!
However, I would love to know then what would be the use of adding a Seek modulator in the VCA parameter? Which is the intended use or where would it be useful in a real videogame implementation example?

Maybe I’m missing in an unknown mechanic that I could use on following works!

Thank you!

Sorry for the confusion.

What I meant is that the Seek Modulator on the VCA/Bus fader can still be useful. The important distinction is what is changing that fader.

To use the authored Seek behavior from Unity, the workflow would be to create a global parameter, automate the VCA/Bus fader with that parameter in FMOD Studio, and then set that parameter from Unity via Studio::System::setParameterByName.

In that setup, Unity is not directly setting the VCA volume. Instead, Unity drives the parameter, the parameter changes the fader property in FMOD Studio, and the Seek Modulator on that fader can be applied.

A practical example would be a game state parameter that controls a music, ambience, or SFX mix level, where you want the transition behavior to be authored in FMOD Studio rather than smoothed manually in Unity.

Hope this helps clarify the intended workflow. Let me know if you have any more questions.

Hello!

Sorry for the confusion, I explained myself incorrectly!
I did understand what you ment. Creating a parameter which controls the VCA volume, and adding the seek modulator to the VCA Knob as well. And of course I know that the practical example in a videogame would be a slider volume in the game’s settings.

That wasn’t my question, sorry for the confusion, I frame it the wrong way.

My real question was: “What’s de difference then between modulating directly the parameter with the seek modulator and then automating the gain VCA knob, versus doing it as you say?”

I guess maybe that I can use that parameter elsewhere without having the Seek Modulator, but it doesn’t seem reason enough. I can expect the same behaviour from this two options?

  1. Continuous Parameter → Modulate Seek on Parameter → Create Automation in the VCA Gain
  2. Continuous Parameter → Create Automation in the VCA Gain → Modulate Seek on the Gain

Thank you for your attention and sorry for the confusion!

Thank you for clarifying.

The difference is where the Seek Modulator is applied.

If the Seek Modulator is added to the parameter, it smooths the parameter value before that value drives the VCA Gain automation.

If the Seek Modulator is added to the VCA Gain, the parameter drives the automation normally, and the resulting Gain property is smoothed instead.

Yes, that is one reason to place the Seek Modulator on the Gain. It allows the Seek behavior to apply only to that specific property, while the parameter can still be used for other automation without that same Seek Modulator being applied there.

In a simple setup, you can expect a similar result from both approaches. The main practical difference is whether the Seek behavior is applied to the parameter itself or only to the VCA Gain.

Hope this helps clarify the difference!

Solved!

Thank you so much!!