This saved my game! And just in time, too! I was working on a game jam and couldn't get wwise working so I had to switch to FMOD and I wasn't familiar. I had 2 days to learn it and this was the only material I could find that was so thorough! Thank you so much! And please, make more of these. More info on waking surface changing step sounds would be amazing.
I'm really glad to hear the video helped and thank you so much for the kind words! 🙂 It may be a bit before I get around to it, but I definitely plan on making more videos for specific sounds, like the 'surface changing footsteps' sound you mentioned as well as some others!
Absolutely legendary tutorial with insane production value and works absolutely perfectly. I was tearing out my hair trying to get Unity's audio system to function correctly, so I turned to looking for other audio solutions, and lo and behold, this video saves me. Thank you so much
The FMOD tutorial is great. I am a complete newbie to both FMOD and Unity but know a bit about digital audio. I installed the newest Unity (2022.3.20f1) and this didn't work until I also installed 2021.3.11f1. Now I'm back with your tutorial. Thanks for the content.
This video was quite helpful, thanks! Just a suggestion: instead of adding logic that's not essential for the character movement (like sound) or other script, add some observable delegates that are invoked when the player do the actions you need. Then create a script just to handle the audio related to the player audio (PlayerSoundController) and inside that you can assign those delegates from the player to call the sound methods of the audio system, separating the logic that manages the sound itself and the player. This is called the Observable Pattern and it's quite handy in such cases
This is the most useful tutorial and the only one I cound find which explains background music smooth transition. I had been searching for two hours before I have found this.
Finally a programmer who is going in depth with FMOD implementation and can explain things clearly! I just have a question, sorry if it’s a little trivial but I don’t have much experience with coding. At 17:02 you said “when the instance is null”, but shouldn’t it be not-null?
Hey there and glad to hear! 🙂 That's my bad and you are correct. I meant to say "when the instance *isn't* null" since that's what we're checking for there. Sorry for the confusion! If that bit of code is a bit confusing still (for you or others reading), watching a couple videos on the 'Singleton Design Pattern' should help clear up what's happening there - since I really didn't go into much detail for this video. I hope that helps a bit and best of luck!
@@ShapedByRainStudios absolutely, thank you. And yes I found your singleton video, which I need to watch a couple more times, because there's so much to unpack. This stuff is gold! Please keep doing these videos, no one else is making content like it. Except maybe Scott Games Sound, but his style is more conversational, while you're definitely more focused and have a clear way to explain complex concepts.
Hey thanks for the Tutorial! A small tip for people who'll use this for a WebGL jam game like I did: Even though maybe not too great for performance, get the Bus directly in Update, not in Awake if your AudioManager will be in the first loaded scene. Assigning the busses in Awake will lead to timing issues in the build and the volume sliders will not work. Took me a while to figure that out, since it will work in the editor - just not in the build. Edit: I had that problem somewhere else, too when I assigned EventInstances for the music directly in Start(). That also lead to timing issues and the music not playing in-build.
Outstanding tutorial. Assuming you have some teaching experience as this was a breeze to follow. FMOD should be working with you as this is far and above the best way to learn integration!
Another excellent tutorial! Definitely going to add this to my project. The audio manager I replicated from one of Brackeys videos just doesn't cut it, and the audio is constantly freaking out despite doing exactly what he did.
FMOD should be chasing you down to add this tutorial with the complete Unity Project files to their website, because it is the next logical building-block knowledge-wise after watching a practicing what they have to offer on the site.
LoL, thanks for the tutorial, I was looking for a more flexible audio system in Unity. You just created a good system for my project, well explained from start to finish. Thanks again cheers.
Thanks again on the videos and the upcoming game release! I'm having issues with latency where sounds play just slightly after they should, especially noticeable with player landing I play a oneshot event. It's playing on the right frame but the sound I'm hearing is a bit late. Any suggestions to help fix?
Hey, thank you so much for the kind words! :) This is a tough one. I haven't encountered latency issues myself using FMOD, but it's certainly an issue I've seen other people have. Here are some thoughts that will hopefully help. 1. You've likely already done this, but make sure the event in FMOD plays immediately when you press the play button. If the audio clip has silence in the beginning (which is very common), crop off the beginning so that it starts immediately. I've seen others run into an issue thinking that it was latency, but the audio clip just had silence in the beginning. So rule that out first. 2. Preload the events to avoid delay. If this is relevant, you might also see a warning in the Unity console like below: [FMOD] EventInstance::update : Event {275351b8-616d-437c-8515-6c5cea1c1900} waited 210 milliseconds for sample data to load. Preload sample data to avoid this delay. If so, this thread has some good info about preloading sample data, but I haven't really done much of that myself and you might need to Google search around a bit to accomplish exactly what you need. I would recommend starting with loading ALL sample data on startup, just to see if it fixes the latency issue or not. qa.fmod.com/t/bank-preloading/17249 3. If neither of the above work, it could be an issue with audio drivers (make sure they're up to date on your machine) or something else within the FMOD Unity engine settings. Here's some info on the settings, it could be worth clicking around through different options to see if any effect your issue. www.fmod.com/docs/2.00/unity/settings.html I also found someone mention an issue about having an instrument marked as a Stream causing some latency on this thread: qa.fmod.com/t/event-playback-latency/17950 There are unfortunately a lot of reasons latency could happen, but I hope this at least helps get you started with finding a solution! Best of luck! - Trever
@@ShapedByRainStudios This means so much to me that you took time to respond, I'm going to look into all of these tips! Thanks for keeping me motivated with my own game as well.
At 33:53 the line "...CreateInstance" appears me underlined in red... and it says that the name "CreateInstance" does not exist in the current context... what did I do wrong or what part could I have missed??
I got this error too. I found that it should be: using FMODUnity; //also making sure this is imported at the top since RuntimeManager is part of the FMODUnity library RuntimeManager.CreateInstance(AmbienceEventInstance);
You are the best game dev tutorial maker there is on the entirety of the internet!!! I really mean it, once more you have helped me introducing something to my game that I would spend literally weeks trying to, in an optimized and functional way! I can't thank you enough, and I hope that, when my game is ready, I can support you and your amazing work and I hope it reaches ever more game developers across the globe. You really are gifting everyone with valuable knowledge that isn't easy to find and still you are not charging anything for it, and so I am sure that you must and will be recognized for it 😁
Thanks so much for the kind words! It's been a lot of looking through the docs and trial/error, haha. There's another TH-cam channel, called @ScottGameSounds , which was a huge help with learning my way around FMOD + Unity.
3D Timeline does not provide me any audio for some reason on my 3d Game within unity, it works in FMOD and i saved & built it. I have debugged it within UNITY and it is playing the entire time but i have no audio. I switched to 2D Timeline (for my 3d game) and it works perfectly. I have no issue with the 3d Action OneShot, as that works flawlessly. Does this have anything to do with the FMOD listener and the 3D Event being called on the same object (my Player) and like the attenuation portion?
Thanks for tutorial. How to make a transition on trigger to change normal to reverb or another effect, like cave effect or underwater for all sfx's? And how to make the music continue to play in changing scenes?
I am not sure what you will answer after so much time, but I will still ask - how do I get the music to play continuously even after switching between scenes? In my platformer, each room is a separate scene, so should I use DontDestroyOnLoad() or something like that to keep the music playing even after the transition? And then how not to run it twice (It's probably just necessary to check whether she's already playing or not, but I'm not sure how to do it correctly without unnecessary if) And thanks for this video, it's insanely useful
Hey there and thank you for the kind words! I'm really glad to hear the video was useful! Correct, I would use DontDestroyOnLoad for the Audio Management GameObjects in the scene so that they aren't destroyed with the scene transitions. As you mentioned though, this may cause some issues and require some small adjustments to the system. I haven't played around enough with scene transitions in this system enough to know exactly what you'll run into, but here's the main thing I believe you'll run into: For objects that exist in multiple scenes (let's say the AudioManager class), when you transition scenes and using DontDestroyOnLoad, you want to ensure that you don't have multiple. We can do this by Destroying the newest AudioManager gameobject. This is a small change since the AudioManager is already a Singleton class. Check out this video, by Samyam, on Singletons. Specifically the 'PersistentSingleton DontDestroyOnLoad' section of the video. That'll give you an idea of how to go about it so that you don't end up with multiple AudioManagers. - th-cam.com/video/Ova7l0UB26U/w-d-xo.html&t I hope that helps and best of luck!
what do i do if i don't have an '' if(disablemovement) '' function in my player controller. How do I handle the stopping of footsteps? Using a topdown 2d game if relevant!
another thing ive noticed, not sure if because of the isometric and 4 directional movement of the player (of topdown 2d). The footstep sounds are only playing when player moves Left/right and not for up/down movement. Any help is appreciated!!
Hey there! My best guess is that it may have to do with how the isGrounded boolean is being handled in your character controller. I would start debugging by checking if that is true when colliding with a coin. Assuming it is, you'll need something to differentiate the coin colliders from ground colliders. In the example project used for this video, ground colliders are in a Ground Layer and the player controller uses a layer mask when raycasting to set the isGrounded variable. With that setup, isGrounded is only true when colliding with colliders in the ground layer of the game. Hence, since coins don't have the ground layer, isGrounded remains false. If you need a bit more guidance, be sure to check out the project code on Github to see how that's set up. - github.com/trevermock/fmod-audio-system/blob/2-audio-system-implemented/audio-system-unity-project/Assets/Scripts/Player/CharacterController2D.cs I hope that helps a bit and best of luck!
I've just opened it but all the sound are already implemented ! have you a version of the project to implement along your video ? cause the one on github is already full...
Hey there! The starting point for the video can be found on the '1-starting-point' branch for that Github project. You can use that to follow along with the video. Hope that helps and best of luck! Here's a link for convenience to that branch - github.com/trevermock/fmod-audio-system/tree/1-starting-point
For the section on Cross Fading Between Music Tracks, I was able to get it to work with Song A switching to Song B and back and forth, just like in the video. The problem I'm having is that I tried to set this up with a new song using a new parameter, but now it won't work for the new song. My setup with the nested events in FMOD is: HubMusic >HubMusic > Zone1Music ~~ Zone1Level1Music > Level1Music >VictoryMusic ~~~~ I have a parameter set on each of this songs, but now my enum in C# looks like this: HUB = 0, ZONE1 = 1, LEVELMUSIC = 0, VICTORYMUSIC = 1, ~~~ Any ideas on how to resolve this issue?
I’m working on this but because of turning off in game audio I found out the audio dialogue made from the audio video doesn’t work anymore. Do you know a way to make it work with that tutorial and enable dialogue noise again?
hello there! I was wondering, how could i make it so when my player has multiple footstep events (walking and running) i could change between these two when a key is held? I tried doing it on my own but only one event plays no matter what
If you're using the new Input System, I would assume you check to make sure that your running action and your walking action are separate and apply the sound cues to the events. That's just a guess though.
[SOLVED] hi so i have a question that cant really find answer anywhere if i start my game (build version) from the game scene everything works fine but if i start my game (build version) from the main menu scene (as it should be) and then i click "play" button which moves me to the game scene sound emitters (footsteps) doesn't work. the thing is if i leave to menu and then enter the game scene again eveything works fine from there so i think the problem is with assigning these emitters to the list or something? thanks for help edit: or should i maybe add (copy) that audio manager component with both scripts to the main menu scene either edit 2: yeah that was the fix for anyone reading this in the future. Just copy that "audio manager" component across every scene. If there is a simpler or more efficient way to fix this comment below. But it worked for me so... yeah :))
Thank you so much for sharing your solution, I'm sure this will help some others in the future! :) This is more or less what I would do as well. Here's a couple of extra things to consider: 1. Make that AudioManager a prefab, so that way you can more easily maintain it across scenes. 2. If you wanted to take this a step further, you can also use DontDestroyOnLoad (DDOL) so that the Audio Manager persists through scene transitions. However, this will likely require some additional setup to what's been done in the video and could be a bit tricky if you're not familiar with how DDOL works in Unity. Here's the docs for anyone reading this that might be interested in that approach - docs.unity3d.com/6000.0/Documentation/ScriptReference/Object.DontDestroyOnLoad.html
Is there a risk of FMOD messing your project up completely if I install it? Only asking because I tried to implement a Unity based audio manager in similar fashion to your GameData manager, i.e. doNotDestroyOnLoad approach, but for some reason it breaks the save game function completely, cannot even start a new game if AudioManager is enabled. Was thinking of trying FMOD instead, but I'm afraid it breaks the project and I lose hundreds of hours of project development :D
Hey there! 🙂 I personally haven't heard of any issues with FMOD messing up a Unity project, but there's always some risk when integrating new technologies into a project. I HIGHLY recommend using *version control* , so that way if things do break, you can roll back those changes and not loose your progress. If you (or anyone reading this in the future) is new to the concept of version control, this looked like an excellent introduction to the topic, in the context of a Unity project, done by Dapper Dino - th-cam.com/video/Is1rHR2wzpU/w-d-xo.html I hope that helps and best of luck to you!
Feel free to come by my Discord server and ask questions, suggest a video topic, or just hang out! ➔ 📱discord.gg/99gcnaHFf9
This saved my game! And just in time, too! I was working on a game jam and couldn't get wwise working so I had to switch to FMOD and I wasn't familiar. I had 2 days to learn it and this was the only material I could find that was so thorough! Thank you so much! And please, make more of these. More info on waking surface changing step sounds would be amazing.
I'm really glad to hear the video helped and thank you so much for the kind words! 🙂 It may be a bit before I get around to it, but I definitely plan on making more videos for specific sounds, like the 'surface changing footsteps' sound you mentioned as well as some others!
Absolutely legendary tutorial with insane production value and works absolutely perfectly. I was tearing out my hair trying to get Unity's audio system to function correctly, so I turned to looking for other audio solutions, and lo and behold, this video saves me. Thank you so much
Clear, concise, no BS, to the point... Man, you are saving me so many hours of frustration! Ty so much!
I wish all the unity tutorials out there could hit this quality!!!! Great job SIR! Plz do more.
Worked along to this video and it worked like a charm! Thank you so much - I'm excited to play your game soon too!
Thanks so much for the kind words! I'm really glad to hear the video was helpful! :)
Please add more FMOD tutorials. I wishlisted your game on steam. It looks fun!
Thanks so much for the kind words! It may be a ways out, but I'll most likely make some more FMOD tutorials at some point in the future.
What a GREAT tutorial! I've never seen FMOD before and now I'm confident I can deal with at least the basics. Thank you! :)
The FMOD tutorial is great. I am a complete newbie to both FMOD and Unity but know a bit about digital audio. I installed the newest Unity (2022.3.20f1) and this didn't work until I also installed 2021.3.11f1. Now I'm back with your tutorial. Thanks for the content.
This video was quite helpful, thanks! Just a suggestion: instead of adding logic that's not essential for the character movement (like sound) or other script, add some observable delegates that are invoked when the player do the actions you need. Then create a script just to handle the audio related to the player audio (PlayerSoundController) and inside that you can assign those delegates from the player to call the sound methods of the audio system, separating the logic that manages the sound itself and the player. This is called the Observable Pattern and it's quite handy in such cases
This is really a very high quality video packed with tons of useful info. I hope more people can see your videos
This is the most useful tutorial and the only one I cound find which explains background music smooth transition. I had been searching for two hours before I have found this.
Finally a programmer who is going in depth with FMOD implementation and can explain things clearly!
I just have a question, sorry if it’s a little trivial but I don’t have much experience with coding.
At 17:02 you said “when the instance is null”, but shouldn’t it be not-null?
Hey there and glad to hear! 🙂 That's my bad and you are correct. I meant to say "when the instance *isn't* null" since that's what we're checking for there.
Sorry for the confusion! If that bit of code is a bit confusing still (for you or others reading), watching a couple videos on the 'Singleton Design Pattern' should help clear up what's happening there - since I really didn't go into much detail for this video.
I hope that helps a bit and best of luck!
@@ShapedByRainStudios absolutely, thank you. And yes I found your singleton video, which I need to watch a couple more times, because there's so much to unpack. This stuff is gold! Please keep doing these videos, no one else is making content like it. Except maybe Scott Games Sound, but his style is more conversational, while you're definitely more focused and have a clear way to explain complex concepts.
Hey thanks for the Tutorial! A small tip for people who'll use this for a WebGL jam game like I did: Even though maybe not too great for performance, get the Bus directly in Update, not in Awake if your AudioManager will be in the first loaded scene. Assigning the busses in Awake will lead to timing issues in the build and the volume sliders will not work. Took me a while to figure that out, since it will work in the editor - just not in the build.
Edit: I had that problem somewhere else, too when I assigned EventInstances for the music directly in Start(). That also lead to timing issues and the music not playing in-build.
Outstanding tutorial. Assuming you have some teaching experience as this was a breeze to follow. FMOD should be working with you as this is far and above the best way to learn integration!
Thanks so much for the kind words! Really glad to hear all of that! 🙂
This is so much more helpful than any other FMod tutorial, thank you so much
This tutorial is incredible. Thank you for taking the time to make this!
I'm really glad to hear the video helped! Thank you for taking the time to comment! 😀
This tutorial was the best I've ever found here on TH-cam. Thank you very much, you deserve a world of good things ♥
Another excellent tutorial! Definitely going to add this to my project.
The audio manager I replicated from one of Brackeys videos just doesn't cut it, and the audio is constantly freaking out despite doing exactly what he did.
Really glad to hear the tutorial helped and good luck implementing it into your project! 🙂
This helped me beyond words - thank you for being so clear & giving such a comprehensive deep dive. You're awesome!
I'm really glad to hear that and thank you so much for the kind words! 🙂
@@ShapedByRainStudios You earned them! Looking forward to your Wwise walkthrough... *crosses fingers*
When in doubt, loop the whole thing :D
Fantastic tutorial, liked and subscribed and everything. Keep up the good work!
Haha, thank you for the kind words! It's very much appreciated and I'm really glad the tutorial helped! 🙂
FMOD should be chasing you down to add this tutorial with the complete Unity Project files to their website, because it is the next logical building-block knowledge-wise after watching a practicing what they have to offer on the site.
thanks man ,this will make life so much easier , keep doing the good work.
This is an excellent tutorial - exactly what I needed. Keep up the great quality!
Great work. Would love to see how to go further with scriptable objects and all. I'm working on a weather system and will use that for sure.
watching this gave my instant apnea 🙂
I've never even thought to touch it, since I've seen a price list. But if it can be free... I probably should give it a try.
Best tutorial about FMOD.
This is incredible and you are a legend
LoL, thanks for the tutorial, I was looking for a more flexible audio system in Unity. You just created a good system for my project, well explained from start to finish.
Thanks again cheers.
wow. What a great tutorial. The pace is perfect.
thank you sou much, beautiful and clean tutorials!
awesome video, thank you so so much for helping us :)
Thanks again on the videos and the upcoming game release! I'm having issues with latency where sounds play just slightly after they should, especially noticeable with player landing I play a oneshot event. It's playing on the right frame but the sound I'm hearing is a bit late. Any suggestions to help fix?
Hey, thank you so much for the kind words! :)
This is a tough one. I haven't encountered latency issues myself using FMOD, but it's certainly an issue I've seen other people have. Here are some thoughts that will hopefully help.
1. You've likely already done this, but make sure the event in FMOD plays immediately when you press the play button. If the audio clip has silence in the beginning (which is very common), crop off the beginning so that it starts immediately. I've seen others run into an issue thinking that it was latency, but the audio clip just had silence in the beginning. So rule that out first.
2. Preload the events to avoid delay. If this is relevant, you might also see a warning in the Unity console like below:
[FMOD] EventInstance::update : Event {275351b8-616d-437c-8515-6c5cea1c1900} waited 210 milliseconds for sample data to load. Preload sample data to avoid this delay.
If so, this thread has some good info about preloading sample data, but I haven't really done much of that myself and you might need to Google search around a bit to accomplish exactly what you need. I would recommend starting with loading ALL sample data on startup, just to see if it fixes the latency issue or not. qa.fmod.com/t/bank-preloading/17249
3. If neither of the above work, it could be an issue with audio drivers (make sure they're up to date on your machine) or something else within the FMOD Unity engine settings.
Here's some info on the settings, it could be worth clicking around through different options to see if any effect your issue. www.fmod.com/docs/2.00/unity/settings.html
I also found someone mention an issue about having an instrument marked as a Stream causing some latency on this thread: qa.fmod.com/t/event-playback-latency/17950
There are unfortunately a lot of reasons latency could happen, but I hope this at least helps get you started with finding a solution! Best of luck!
- Trever
@@ShapedByRainStudios This means so much to me that you took time to respond, I'm going to look into all of these tips! Thanks for keeping me motivated with my own game as well.
Excellent tutorial thank you very much 👍
really thanks man, this help me a lot
Thank you very much! You helped me vey much!
thanks! perfect tutorial
underrated!
Hey, great vid! do you also link the videogame it self?
At 33:53 the line "...CreateInstance" appears me underlined in red... and it says that the name "CreateInstance" does not exist in the current context... what did I do wrong or what part could I have missed??
I got this error too. I found that it should be:
using FMODUnity; //also making sure this is imported at the top since RuntimeManager is part of the FMODUnity library
RuntimeManager.CreateInstance(AmbienceEventInstance);
You are the best game dev tutorial maker there is on the entirety of the internet!!! I really mean it, once more you have helped me introducing something to my game that I would spend literally weeks trying to, in an optimized and functional way! I can't thank you enough, and I hope that, when my game is ready, I can support you and your amazing work and I hope it reaches ever more game developers across the globe. You really are gifting everyone with valuable knowledge that isn't easy to find and still you are not charging anything for it, and so I am sure that you must and will be recognized for it 😁
Thank you so much for the kind words! That really means a lot and I'm really glad to hear you're finding the videos to be useful! 🙂
Ваши уроки это чистое удовольствие. Я смог насладится FMOD благодаря вам. Большое спасибо!
Sorry, I don't understand how to import the downloaded files from GitHub into Unity or FMOD; con someone explain?
amazing tutorial!!!!!!
I can't open your Unity project. Could you help me please
How did you learn FMOD dude?
Great vid BTW
Thanks so much for the kind words! It's been a lot of looking through the docs and trial/error, haha.
There's another TH-cam channel, called @ScottGameSounds , which was a huge help with learning my way around FMOD + Unity.
3D Timeline does not provide me any audio for some reason on my 3d Game within unity, it works in FMOD and i saved & built it. I have debugged it within UNITY and it is playing the entire time but i have no audio. I switched to 2D Timeline (for my 3d game) and it works perfectly. I have no issue with the 3d Action OneShot, as that works flawlessly. Does this have anything to do with the FMOD listener and the 3D Event being called on the same object (my Player) and like the attenuation portion?
Thanks for tutorial. How to make a transition on trigger to change normal to reverb or another effect, like cave effect or underwater for all sfx's? And how to make the music continue to play in changing scenes?
I am not sure what you will answer after so much time, but I will still ask - how do I get the music to play continuously even after switching between scenes? In my platformer, each room is a separate scene, so should I use DontDestroyOnLoad() or something like that to keep the music playing even after the transition? And then how not to run it twice (It's probably just necessary to check whether she's already playing or not, but I'm not sure how to do it correctly without unnecessary if)
And thanks for this video, it's insanely useful
Hey there and thank you for the kind words! I'm really glad to hear the video was useful!
Correct, I would use DontDestroyOnLoad for the Audio Management GameObjects in the scene so that they aren't destroyed with the scene transitions.
As you mentioned though, this may cause some issues and require some small adjustments to the system. I haven't played around enough with scene transitions in this system enough to know exactly what you'll run into, but here's the main thing I believe you'll run into:
For objects that exist in multiple scenes (let's say the AudioManager class), when you transition scenes and using DontDestroyOnLoad, you want to ensure that you don't have multiple.
We can do this by Destroying the newest AudioManager gameobject. This is a small change since the AudioManager is already a Singleton class. Check out this video, by Samyam, on Singletons. Specifically the 'PersistentSingleton DontDestroyOnLoad' section of the video. That'll give you an idea of how to go about it so that you don't end up with multiple AudioManagers. - th-cam.com/video/Ova7l0UB26U/w-d-xo.html&t
I hope that helps and best of luck!
@@ShapedByRainStudios Thank you so much for such a detailed answer! My game comes alive
That helped a lot thanks :D
Hi, great tutorial ! Is it possible when we change between music tracks to not start from the start but from where it left??
Will this tutorial work for a 3D game in Unity too? I'm a complete beginner to game audio.
how do you do this with event triggers on buttons for example?
I have no Game Events Manager, what should i do
How to stop the game music?
Thank you.
what do i do if i don't have an
'' if(disablemovement) ''
function in my player controller. How do I handle the stopping of footsteps?
Using a topdown 2d game if relevant!
another thing ive noticed, not sure if because of the isometric and 4 directional movement of the player (of topdown 2d). The footstep sounds are only playing when player moves Left/right and not for up/down movement. Any help is appreciated!!
amazing....!
I tried following your tutorial and now keep getting the error Missing the class attribute ‘ExtensionOfNativeClass' from my audio manager
There is a bug with the footstep sound, when i jump into a spot where a coin is or was it also plays the footstep sound. You know why?
Hey there! My best guess is that it may have to do with how the isGrounded boolean is being handled in your character controller. I would start debugging by checking if that is true when colliding with a coin.
Assuming it is, you'll need something to differentiate the coin colliders from ground colliders. In the example project used for this video, ground colliders are in a Ground Layer and the player controller uses a layer mask when raycasting to set the isGrounded variable. With that setup, isGrounded is only true when colliding with colliders in the ground layer of the game. Hence, since coins don't have the ground layer, isGrounded remains false.
If you need a bit more guidance, be sure to check out the project code on Github to see how that's set up. - github.com/trevermock/fmod-audio-system/blob/2-audio-system-implemented/audio-system-unity-project/Assets/Scripts/Player/CharacterController2D.cs
I hope that helps a bit and best of luck!
@@ShapedByRainStudios thank you very much for your answer! I will try to figure it out, also when im not great with c# :P
Hello, I'm having trouble importing the Unity project from Github to Unity, could someone explain it to me pls ?
I've just opened it but all the sound are already implemented ! have you a version of the project to implement along your video ? cause the one on github is already full...
Hey there! The starting point for the video can be found on the '1-starting-point' branch for that Github project. You can use that to follow along with the video. Hope that helps and best of luck!
Here's a link for convenience to that branch - github.com/trevermock/fmod-audio-system/tree/1-starting-point
For the section on Cross Fading Between Music Tracks, I was able to get it to work with Song A switching to Song B and back and forth, just like in the video. The problem I'm having is that I tried to set this up with a new song using a new parameter, but now it won't work for the new song. My setup with the nested events in FMOD is:
HubMusic
>HubMusic
> Zone1Music
~~
Zone1Level1Music
> Level1Music
>VictoryMusic
~~~~
I have a parameter set on each of this songs, but now my enum in C# looks like this:
HUB = 0,
ZONE1 = 1,
LEVELMUSIC = 0,
VICTORYMUSIC = 1,
~~~
Any ideas on how to resolve this issue?
I’m working on this but because of turning off in game audio I found out the audio dialogue made from the audio video doesn’t work anymore. Do you know a way to make it work with that tutorial and enable dialogue noise again?
i want to ask you , is FMOD part of unity ? or FMOD another software , + i have bank fmod file how i can edited
hello there! I was wondering, how could i make it so when my player has multiple footstep events (walking and running) i could change between these two when a key is held? I tried doing it on my own but only one event plays no matter what
If you're using the new Input System, I would assume you check to make sure that your running action and your walking action are separate and apply the sound cues to the events. That's just a guess though.
Is FMOD necessary when all I want to do is accurately sync the game to songs that have tempo changes? Thanks.
[SOLVED]
hi so i have a question that cant really find answer anywhere
if i start my game (build version) from the game scene everything works fine
but if i start my game (build version) from the main menu scene (as it should be) and then i click "play" button which moves me to the game scene sound emitters (footsteps) doesn't work.
the thing is if i leave to menu and then enter the game scene again eveything works fine from there
so i think the problem is with assigning these emitters to the list or something? thanks for help
edit: or should i maybe add (copy) that audio manager component with both scripts to the main menu scene either
edit 2: yeah that was the fix for anyone reading this in the future. Just copy that "audio manager" component across every scene. If there is a simpler or more efficient way to fix this comment below. But it worked for me so... yeah :))
Thank you so much for sharing your solution, I'm sure this will help some others in the future! :)
This is more or less what I would do as well. Here's a couple of extra things to consider:
1. Make that AudioManager a prefab, so that way you can more easily maintain it across scenes.
2. If you wanted to take this a step further, you can also use DontDestroyOnLoad (DDOL) so that the Audio Manager persists through scene transitions. However, this will likely require some additional setup to what's been done in the video and could be a bit tricky if you're not familiar with how DDOL works in Unity. Here's the docs for anyone reading this that might be interested in that approach - docs.unity3d.com/6000.0/Documentation/ScriptReference/Object.DontDestroyOnLoad.html
Is there a risk of FMOD messing your project up completely if I install it? Only asking because I tried to implement a Unity based audio manager in similar fashion to your GameData manager, i.e. doNotDestroyOnLoad approach, but for some reason it breaks the save game function completely, cannot even start a new game if AudioManager is enabled. Was thinking of trying FMOD instead, but I'm afraid it breaks the project and I lose hundreds of hours of project development :D
Hey there! 🙂 I personally haven't heard of any issues with FMOD messing up a Unity project, but there's always some risk when integrating new technologies into a project. I HIGHLY recommend using *version control* , so that way if things do break, you can roll back those changes and not loose your progress.
If you (or anyone reading this in the future) is new to the concept of version control, this looked like an excellent introduction to the topic, in the context of a Unity project, done by Dapper Dino - th-cam.com/video/Is1rHR2wzpU/w-d-xo.html
I hope that helps and best of luck to you!
Does this cost?
Instead of singleton you could use a static class.
I have no 2D/3D event, just event in the event menu. New version it must be.
but Specializer makes the trick I need.
I love you.
13:35 I can see that you are expirienced Unity user
Dejah Turnpike
Otilia Tunnel
Arvel Streets