I´m starting to get more familiar with sound in videogames and FMOD but , working in a project , i´ve come across some problems i´m unable to solve.
I have and event with 2 built-in parameters (event cone angle and elevation). This is because i want the sound to play differently depending on:
If the character (listener) is in the same floor as the emitter (or not).
If the angle created between emitter and the listener´s direction (is in a determined range of valors).
The problem is if i change the value of the event cone angle parameter, automatically it changes the elevation parameter too, as if they were -somehow- linked.
Thing is i don´t know why this is happening nor can figure it a way to solve it.
In the project there will be an option to save sound settings by the player. I thought about creating a snapshot so the player, via VCA groups, can easily manage the volume of different items like SFX, Music ,etc.
Problem is, i don´t know how to save the settings . Should it be done via code and then export (via code too) to the bank in Unity?
I´ve been told that memory usage is sort of crucial point in game design. So, is there any sign or signs that turn on the red lights for a sound designer? In that case, Is it possible, in FMOD, to check the correct use of memory usage (and fix it if it´s not correct).
First of all, “List item” is meant to be replaced! You can edit and correct your post afterwards.
Are you using the cone angle for that? It’s the opposite, the cone angle is the angle between the listener and the emitter’s direction.
They are linked. Reread carefully the documentation. However, directly changing the cone angle value doesn’t really make sense: in game, the event is going to move in some direction (thus changing its cone angle, elevation, and other built-in parameters), it’s probably not going to “change its cone angle” directly.
When saving, in the game code, get the VCA values and store them. When reloading, set the VCA values with those stored values. By “snapshot”, I guess you mean the general word? That’s confusing because of FMOD’s snapshots
a) I chose event cone angle, because the emitter (a TV) is in a room, while the character (listener) has to find it inside a building. This said, i wanted to produce a different feeling depending on the situation of the listener regarding the TV. I think i read in the documentation that event cone angle were the appropiate parameters for emitters like radios, TVs or similar, but, probably i´m mistaken.
IIn addition, i´d like the sound of TV to be audible in the floor above and below of the tv´s room but with a different eq and volume, that´s why i added the elevation parameter.
b) Yes, by snapshot i meant the property of FMOD of creating sheets of different valors related to faders, etc.
c) Nope, i haven´t met the profiler yet but i guess i´ll have to know and get along with him
Ok for the cone angle. Simply test the behavior in the event editor 3D preview panel, by moving the event relatively to the listener (which is on the center) to see if it works as you intend. Change the altitude by ctrl-dragging the event. The sandbox could also be useful, unfortunately you can’t simulate altitude, as opposed to 3D preview panel.
What’s the point in using snapshots for saving volume states ?
I chose snapshots because i want to offer the player the option to create different configurations regarding his/her play mode.
1 º configuration: Single player mode
2º configuration : Multiplayer Mode
3º configuration: Silent mode
On top of that i´d like to create default snapshots (not dependent of the user settings) for cinematics or dialogues ingame (once they are finished, game would go back to user settings).
So, in short, i´d like to have different sound configurations, some of them customizable by the player, some others not.
I came to the conclusion that the snapshots would do the work but maybe it´s not the right approach .
¿Any suggestion to provide the user of different and customizable sound configurations and -at the same time- switchable with preset sound configurations of the designer?
I want to save the snapshots because i want to the user to be able to save his sound settings of the different modes (single player, multiplayer, etc.) he can choose, and not to lose them when he´s finished playing.
In addition, i want the user to be able to switch between his sound settings fast without having to re-configurate them every time he starts the game.
I don´t know, but maybe there´s another way of doing this easier
Hum, snapshots are intended to call a preset of the mixer faders value (to make things simple). It can be played (it applies) or not (it doesn’t apply). But the preset state stored in the snapshot is fixed and cannot be modified by the user. So either I didn’t understand what you’re trying to do, either you didn’t understand snapshots
I try to store the different user sound settings in snapshots.
Every time the user changes his user sound settings ,the previous snapshot would be destroyed and a new one created with the new parameters.
In short, i want the user to customize his own sound settings depending on his playmode and also save his settings in order to :
Not lose them when he turns off the game
Switch quickly and intuitevely his sound settings ingame.
Thing is i don´t know if snapshots are the proper way to achieve this. I don´t know if this process of creation and destruction can be done via code in Unity and connecting later with FMOD via an event.
Another alternative i thought about was creating a file (and overwriting it every time the player change the valors of the different sound settings) and export these valors to FMOD as soon as the game is loaded, but i don´t know if this is possible as well.
Snapshots are absolutely not designed for this kind of things (if I said the opposite earlier, that’s because I didn’t understand what you were trying to do). The term “snapshot” is a bit misleading, I guess.
What you want is probably, as I suggested earlier, to save/load in the game code the values of some VCAs or busses which are controlled by the player. I can’t help with the Unity part, though (I’m more on the UE side).