Thank you so much for these great insights about footstep integrations and more the hacks you are doing here, they help a lot!!!!
@abru86993 жыл бұрын
You just save my life, once again, I love you man.
@GlitchSound Жыл бұрын
super super useful! Thank you
@DenBestAudio5 жыл бұрын
Haha! "They don't hack in AAA... oh, yes, we do!" I love it. Fantastic trick on using an RTPC volume fade to mask the blend zone triggers! We're still using GameBryo & Miles for Wizard101, and struggle with the blend zone all the time; so much that flags just won't even trigger in the blend zone. That's where we have to get really creative with workarounds. Anyway, I'll remember this one for our Mobile projects in Unity though!
@CujoSound5 жыл бұрын
Haha.. yea.. all the projects I have been on had massive hacks.. :D
@johnyang87933 жыл бұрын
Love the video! I wonder why not get the CharacterSpeed value in the char_animation_events script and use something like if (CharacterSpeed > 9) {return;} in the fs_char_run_* functions so that the event won't trigger at all.
@CujoSound3 жыл бұрын
Oh that's an excellent solution for sure. :) Finding the speed of the character is definitely a solution to filter out unwanted events.
@zenithholistichealing51394 жыл бұрын
Love your work
@flippinmangoose11 ай бұрын
hi, love all your vids. im trying to replicate this on a model without a rigid body and im having some trouble. The velocity cant be calculated without one but when adding a rigid body it breaks the model and locomotion system entirely. Any ideas? (using the mix and jam pathless gameplay project).
@CujoSound11 ай бұрын
Good question, so if there is no rigidbody, then the game doesn't know in "physics" how it is moving and speed, precalculated, but you should be able to do the math manually and just vector math your way out of it .
@flippinmangoose11 ай бұрын
@@CujoSound thanks for the fast reply, i did exactly that and used characterController instead of rigid body. Simple displacement/time, and then i let AI fix my code :P. I feel like openAI is an insane tool for implementing sound, im afraid of becoming reliant on it for implementation though.
@primebrown74742 жыл бұрын
Thank you Cujo for all the tutorial .this means a lot to me . I wonder is that possible to get a same scene as you using in tutorials . I download the Unity 3D Controller Kit as free package but since I import other prefabs from other Kit, I got some problem. Then I try a total different kit named"3D Game Kit" and remove all sounds and sound object that included in component. Try to start by my own with fresh new project but follow your step. Good thing is it works ,but for the most part. 3D-Game-Kit like that ,I find out some default random sound player is actually placed in some scripts And I'm afraid to change it by causing some issues. If you could make a tutorial about "how to replace sound in any original game kit&scene template " and show some 'once for all' progression that could most of the situation . It would be great!! And I can PAY FOR WHATEVER IT COST!!!!!!!
@CujoSound2 жыл бұрын
That's a great idea. Could take a look for sure.
@primebrown74742 жыл бұрын
@@CujoSound wow, I'm surprised that you actually reply this quick . I think I find it. And what's more than that is , You actually did it for us long time ago . kzbin.info/www/bejne/o5uldIuGisiUf6M Again, Thank you so much ,truly !!!
@laiflis45076 жыл бұрын
how would you go about running on different surfaces?
@CujoSound6 жыл бұрын
That could be done in MANY ways. One way would be to mark the areas manually with a collider that controls a bool or a value which then sends a different event. Meaning you would have fs_char_run_sand, fs_char_run_concrete, fs_char_run_water, etc. per element. You could also have the same collider set the value of a switch on the gameobject that plays the sound - but that still requires quite a few amount of colliders around. You could also split your event into several parts - so that the "shoe" is always constant and only the "material" is changing with the switch, or have the event trigger both "footstep" and some sort of sweetener sound at the same time. But the best option would most likely be to have a raycast before each step check the tag of the material below the player and return that value and then have your switch be controlled by that. Did that make any sense? I would actually use a combination, the raycast to check the material for the ordinary steps, but then a collider for added details where I want specifically.. like, in the corner of one of the houses some extra dust would be cool or a little water puddle could make a tiny splash and so.
@CujoSound6 жыл бұрын
Video about this specifically coming on Saturday, in the morning. :)
@CujoSound6 жыл бұрын
Check the latest video. It's a small step into how it could be done.
@samycolombano98326 жыл бұрын
Hey. How would you go about the blending of forward walk + left / right walk ? I have this issue now. For diagonal move, they blended forward and directional walking to make it work. So I of course have a double trigger when we walk diagonally. And a speed value cannot save me. And limiting also does not work since it is two animations so two event calls, therefore not happening at the exact same frame. When working on hacks like this I often go "yeah I could set this up and... wait... if the original coding/animation was clean I would not have to do that. Is it overkill ? I should maybe ask the concerned people to clean up their work". But yeah hacks everywhere most of the time since it's faster than the person fixing their stuff, or sometimes they just can't. I was going to ask you "don't you think sometimes that you are working too much on a hack" but you said that it happens in AAA as well...
@CujoSound6 жыл бұрын
Sometimes they cannot be cleaned or there isn't time. You could code your way out of it and track if both forward and left is run at the same time then a bool controls that only one of them plays or even plays a special diagonal version.
@AndyGBass6 жыл бұрын
You could work around it in Wwise. One way which isn't very sophisticated but quick is to voice limit ( if you're using two foot emitters). Or, the better way, is to use a sort of Cooldown RTPC where any other FS trigger is muted for x amount of time after the last trigger was posted.
@CujoSound6 жыл бұрын
@@AndyGBass that depends. Because if you have two different containers playing, then voice limiting is really tricky. As you don't know which one gets killed. But yes, that is one way of doing it.
@CujoSound6 жыл бұрын
But, as much as this is a "hack" and someone else should clean up their work, then actually there are lots of situations where they can't. If the animations work because they blend, then it's actually out problem that two events are sent because of the blending,. We all need to adapt to the information we can get. The best way would definitely be to have some code on our side ignore the duplicate event, but depending on the way the animations work it may just as well be the sound designer or the sound coder to solve this and not the animators who are not working properly.
@AndyGBass6 жыл бұрын
@@CujoSound Yep, we do this at Supermassive. We have a 'cooldown' RTPC. It doesn't stop the event posting, the event still comes in the Wwise, it just doesn't play anything (well, technically it does, the but the player doesn't hear it). When an event comes in, we have an RTPC that sets the voice volume of the master FTS actor-mixer to -200dB and after x amount of time it will go back to 0dB. Our programmer has also set up different bands, also, so it's more reliable for different movement speeds e.t.c