3rd Person Controller - Unity's New Input System

  Рет қаралды 80,412

One Wheel Studio

One Wheel Studio

Күн бұрын

Using Unity's new input system, C# events, blend trees with animations, and Cinemachine create a basic 3rd person controller in Unity. Create basic movement, jumping, melee attack (animation only).
Tutorial Files: github.com/onewheelstudio/Adv...
Assets Used in the Video (Affiliate)
************************************
Low Poly Megapolis: assetstore.unity.com/packages...
Toony Tiny People: assetstore.unity.com/packages...
Want to support the Channel?
*******************************
Shop the Unity Asset Store (affiliate): assetstore.unity.com/top-asse...
Become A Channel Member: / @onewheelstudio
Or a Patron: / onewheelstudio
Grab a T-Shirt: onewheelstudio.com/merch/
My video and streaming kit: kit.co/onewheelstudio/tutoria...
Buy a Game Design Books: kit.co/onewheelstudio/game-de...
Other Links
************
Discord: discord.onewheelstudio.com
Twitter: / onewheelstudio
Devlog: onewheelstudio.com/
Twitch: / onewheelstudio
Timestamps
*************
0:00 Intro
0:24 Scene Setup
0:47 Input Action Asset
4:14 Generating C# Code
4:59 Creating 3rd Person Controller Code
7:54 Jump Code
11:55 Movement Code
19:00 Character Object Setup
23:20 Movement Animation
26:33 Movement Animation Code
28:45 Melee Attack Animation
31:55 Melee Attack Code
33:50 Cinemachine Camera
37:40 Input System + Cinemachine
39:07 Other Useful Settings
39:58 THE END
#unityinputsytem #GameDevelopment #Unity3D #indiedeveloper

Пікірлер: 314
@sakrefunholy
@sakrefunholy 2 жыл бұрын
Amazing video and helped me understand how the new input system works, but i'm having some issues with my player character constantly going up in the air. I can move around and turn but it seems like he is constantly jumping up into the sky. what could be the issue?
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
At 16:31 there was an error with on-screen text pointing it out. The error does effect the jump. Could that be the issue?
@sakrefunholy
@sakrefunholy 2 жыл бұрын
@@OneWheelStudio well, I saw it and already made the change but that still makes the character float upwards constantly. I even tried copy paste the one from your github, but it still has the issue.
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
Is it possible you have gravity turned off on the rigidbody?
@sakrefunholy
@sakrefunholy 2 жыл бұрын
@@OneWheelStudio nevermind, I found out what the issue was. the issue was that I had the capsule collider as a trigger. which for some reason made it the character go up into the air.
@centauriboy
@centauriboy 2 жыл бұрын
For anyone using Unity version 2021.2.4f1 or higher, in order to select "Add 2D Vector Composite", you need to change the Action Type to "Value" and the Control Type to "Vector 2" in the Action Properties, then you can press the plus sign and it will be called "Add Up/Down/Left/Right Composite".
@ifladog
@ifladog 2 жыл бұрын
Thank you
@littledindin3299
@littledindin3299 2 жыл бұрын
thanks so much i was so confused :)
@macmonk7
@macmonk7 2 жыл бұрын
Thanks man!
@infomatics_
@infomatics_ 2 жыл бұрын
Thank you
@elissteiner4319
@elissteiner4319 2 жыл бұрын
thanks
@zparklyztars
@zparklyztars 2 жыл бұрын
I love this style of videos, keep up the great work! It feels like a one on one tutoring session and that makes walking through the codes and around Unity all that much easier! Thank you for making great videos!
@99darkprince
@99darkprince Жыл бұрын
I have been watching a lot of Unity tutorial videos trying to get a better understanding of both the new Input System as well as being able to better understand Unity with creating my game and I have to say this has to be the most helpful and beginner friendly tutorial I have seen, and it really allowed me to better understand how to work with creating a character controller. Thank you so much for making this video it has helped me tremendously get better at making my own games!
@muhammadumair6306
@muhammadumair6306 2 жыл бұрын
There's always, like ALWAYS something new to learn in your videos. Love your content. ❤
@hawkgamedev
@hawkgamedev Жыл бұрын
You are by far the best instructor I've ever seen, thanks for the hours you take to make and upload these videos, you make my life so much better after dealing with learning frustration as a noob in Unity. THANK YOU!
@SirOnionKnight
@SirOnionKnight Ай бұрын
I appreciate you for putting this out. I've been stuck in a lot of weird/bad habits for making controllers, using animator and barely understand the input system and this made it all so much clearer for me, even without following along directly.
@jeremylamy6456
@jeremylamy6456 2 жыл бұрын
This video is what I have been looking for for a week. Thanks a lot, great content !
@goodsonguitars
@goodsonguitars Жыл бұрын
I have been trying to wrap my head around this new input system and thanks to you, I think I about have a grasp on it. Thank you for your time and effort. Liked and subbed.
@jameshenderson1826
@jameshenderson1826 Жыл бұрын
Excellent tutorial! Thanks very much. I don't normally comment on many tutorials but felt I had to in this case. I really like your approach and feel that you've helped me take my understanding of Unity character controlling and physics to the next level. Cheers and keep up the great work. ;-)
@EricWilliamsCG
@EricWilliamsCG Жыл бұрын
24:37 You can find the animation inside the objects. So click drop down for the object, fbx or whatever it is, and drag the animation from inside of it into the inspector. Great tutorial!
@markuskankare2911
@markuskankare2911 2 жыл бұрын
Thank you so much! You helped me a lot. I'm new with Unity and C# but after this video I made big steps forward with my project and skills. One step at a time :) More videos like this and I would like to see long video where we could make full game from start to finish.
@eddyrc7
@eddyrc7 2 жыл бұрын
For anyone not finding creating "input actions", you need to install the input system from your package manager before the first step in this tutorial.
@conservativestrawman9837
@conservativestrawman9837 2 жыл бұрын
THANK YOU
@joefacenda3034
@joefacenda3034 Жыл бұрын
Thank you for your clear explanation of why we normalize the camera look vectors. I finally understand.
@umapessoa6051
@umapessoa6051 2 жыл бұрын
Hi, thank you for this video, love the video style, keep up with the good work.
@Jarzykk
@Jarzykk Жыл бұрын
Thank you! It was a pleasure to look at clean code. Subscribed.
@morningforeststudio8596
@morningforeststudio8596 2 жыл бұрын
Awesome video about third person controller! Thanks!
@SacWebDeveloper
@SacWebDeveloper 5 ай бұрын
Thank you for making this! I've tried so many character controllers and they all felt wrong. This is perfect for PS2 style or highly stylized games.
@fess1024
@fess1024 2 жыл бұрын
Thanks a lot for the video! Very informative and understandable.
@Hoglet.Interactive
@Hoglet.Interactive 2 жыл бұрын
Another great tutorial from O.W.S. Cool!
@4real04
@4real04 2 жыл бұрын
THANK YOU , im a newbie and ive been trying to do this exact motion and movement for 3 days
@nosh247
@nosh247 2 жыл бұрын
Excellent tutorial! thank you!
@legomanacm8402
@legomanacm8402 2 жыл бұрын
This video helped me a lot. Thanks!
@FrozenWell
@FrozenWell 2 жыл бұрын
Cheers for this, great tutorial
@johnshields_
@johnshields_ 2 жыл бұрын
Best Player controller tutorial ever! no more spider web animators!
@mikelangford5964
@mikelangford5964 5 ай бұрын
This was a good start. The code needs some modifications to handle any sort of hill or stairs, but not a bad intro.
@sepehr2371
@sepehr2371 11 ай бұрын
Nice video, you could probably use some comments on methods you create so that it is more understandable for future use
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
Do you like this style of video? Longer, less scripted, and admittedly less concise? Or would shorted scripted videos be more helpful?
@_Garm_
@_Garm_ 2 жыл бұрын
i like this style :)
@VirtusH
@VirtusH 2 жыл бұрын
this was a decent vid, but shorter scripted videos are definitely better IMO
@allanl5511
@allanl5511 2 жыл бұрын
This is great! So far the best video I found showing how to implenment the new Input System, Cinemachine, Animation and putting it altogether. Instead of a series of videos in a long tutorial, I really dig this relatively short form. p.s. the timestamps are really helpful too, thank you.
@alexstankovic2947
@alexstankovic2947 2 жыл бұрын
This type of videos where you can actually see the bigger picture and the architecture of making games, but at the same time you cover every component and technique that makes up that bigger picture. Big thanks!
@davidReyGD
@davidReyGD 2 жыл бұрын
Great video! thank's a lot for your work ;)
@nayansinha7216
@nayansinha7216 2 жыл бұрын
Very good video explained everything nicely
@joseluisRueda
@joseluisRueda Жыл бұрын
great tutorial , thanks
@TechWrathTV
@TechWrathTV 2 жыл бұрын
You are a LIFE SAVER mate :D
@cecilloki
@cecilloki 2 жыл бұрын
Hey @One Wheel Studio I dont know how to get when the mouse button down for example, could you help me, because I need set an animation for an action that need hold the button down
@addisonjacoby
@addisonjacoby Жыл бұрын
Why do we only multiply the jump descent by Time.fixedDeltaTime isn't everything in FixedUpdate frame rate independent? Also, curious why you choose not to use a CharacterController?
@princessoscar3089
@princessoscar3089 2 жыл бұрын
Okay I fixed the missing thirdpersonactionsasset by RENAMING my inupt settings thingy, but I still don't know what to rename RIGIDBODY? I'm using a different unity asset character than yours called Insect4_Green. Do I rename that character to RIGIDBODY? It also has a sub thingy called Body_LP.
@MrTaziz
@MrTaziz 2 жыл бұрын
Hey really liked this kind of style of video, very informative, learned a lot. But when you were explaining the movement physics was a bit confusing, maybe do a separate video where you explain this better ?
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
That’s a fair critique! My day job is a physics teacher so easy to gloss over bits when I’m focused on the code. Was there something in particular about the physics that was unclear? Or all of it? 😛
@MrTaziz
@MrTaziz 2 жыл бұрын
@@OneWheelStudio This video was was about unity new Input System and boy it delivered. I think it's more a request/suggestion than a critique :D yeah to me physics and math is unity is the bigger hurtle. I do understand them when I get explained, but figure this out by my self or where to start is what melts my brain. Cheers
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
Totally get that. Always happy to try and answer questions - pop over to the OWS discord any time I can help.
@tdr7481
@tdr7481 Жыл бұрын
for me there is no mouse delta showing up, I tried pass through and vector2 also value and vector2, any ideas how to solve this?
@pranjaldevstuff8395
@pranjaldevstuff8395 Жыл бұрын
How can I make my character run only when i am pressing the shift key? It always transitions into run animation just by pressing the W key...
@sakrefunholy
@sakrefunholy 2 жыл бұрын
I have a different question. If I wanted to use a 2d directional animator (for example to make the character able to strafe to the sides with animations) then how would I use that with the new input system?
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
I'm not sure it's any different with the new input system. Maybe I'm wrong. So here's my first thought on the problem: You would need to separate out the side to side velocity and the forward/backward velocity - these would need to be relative to the camera's direction. You could look up "vector projections" to project the character velocity onto the camera's direction to get the velocity in the s/s or f/b direction. From there you could then send the magnitude (with sign) of each of those velocity to the animator as parameters.
@aliceintini8900
@aliceintini8900 10 күн бұрын
This tutorial is amazing! Can I ask how to add an animation to the jump?
@ivancarranza2473
@ivancarranza2473 Жыл бұрын
Hey, After watching some other videos on movement and rotation on a rigid body character this is probably the best and more to the point. Everything works good for me, the only question I have is ('cause i tried to research but couldn't find anywhere) around 14:20 where you copy paste the GetCameraForward function to the GetCameraRight and you replace the highlighted text from 'forward' to 'right' only in the highlighted text, how is that done? is there shortcut? i've tried Ctrl+F2 and other ways but I can't figure it out. Obviously no rush on this but I think for those like me that don't know would be a great help. Thanks again for this video.
@OneWheelStudio
@OneWheelStudio Жыл бұрын
Glad the video was useful! To rename variables I generally use CTRL + R +R ( press R twice). I believe pressing F2 also works.
@sgruhier
@sgruhier Жыл бұрын
Thanks a lot for that video. Any idea why I don't see that blue/rect rectangle on game view for the cinematic camera? May be a setting to activate?
@OneWheelStudio
@OneWheelStudio Жыл бұрын
This deeply frustrated me too. It seemed inconsistent - i did finally figure it out but now I can’t remember what it was. Do make sure that you have gizmos enabled in the sceneview.
@sgruhier
@sgruhier Жыл бұрын
@@OneWheelStudioYes all gizmos with a checkbox are enabled. But a lot of Cinemachine entries don't have a check box.
@sgruhier
@sgruhier Жыл бұрын
I reply to myself, you need to have "aim" section expanded on CinemachineFreeLook !!
@zivv1147
@zivv1147 Жыл бұрын
Great video. You should do the same for touch input for mobile devices.
@T_D_E_V
@T_D_E_V 2 жыл бұрын
Amazing video and helped me understand how the new input system works, and can u make tutorial how to make so that when i click control when player moves this player slows down and goes on walk animation
@NewYorkNixDa
@NewYorkNixDa Жыл бұрын
Really awesome tutorials, you made! 🙂 Little question: How can i change / blend the animations for crouching / proning? im a bit struggling to get it 😞
@OneWheelStudio
@OneWheelStudio Жыл бұрын
Thanks! ☺️ the blending is handled in the transition. Unity will usually do a good job for you but in the transition you can tweak the settings.
@NewYorkNixDa
@NewYorkNixDa Жыл бұрын
@@OneWheelStudio Youre just awesome 🙂Ive found out how to implement other animations, my only problem is: if i change the maxSpeed it causes into slower animationspeed. 😞
@user-wo3ym4bj8e
@user-wo3ym4bj8e 2 жыл бұрын
How would it be the solving for slope in 2/3D while having same code for movement as in your example ? After checking the normal of the ray how should I move the player and also let him jump ?
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
I'm not sure exactly what you are trying to do. Might be an easier conversation on Discord? Feel free to come by the OWS discord (link in the description).
@HeartWulf
@HeartWulf 2 жыл бұрын
Hey! Thank you for the video, it's been really helpful. How would you go about smoothing out the character rotation in this code? Look rotation is giving me very snappy results.
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
I haven't played with that myself, but you could add a scaling processer to the binding. It will give you x and y values or 1, make that 0.5 and I'd guess your rotation will be slower and maybe smoother?
@Smokey-A
@Smokey-A 2 жыл бұрын
Quaternion toRotate = Quaternion.LookRotation(direction, Vector3.up); this.rb.rotation = Quaternion.RotateTowards(rb.rotation, toRotate, 10f);
@epicdoggames9667
@epicdoggames9667 2 жыл бұрын
Can you create a menu system with the new input system? Specifically with drop down menus and sliders using a game pad. There is like nothing out there showing how to do this.
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
This is definitely on my list! Can’t promise if or when it’ll get done but it’s definitely on my list.
@joekraphel5113
@joekraphel5113 2 жыл бұрын
Question - I have terrain that is uneven and when my character runs/walks across it hills, it remain in air and gravity isn't applied. Might the rigidbody mass be too low? Something I need to add in code?
@joekraphel5113
@joekraphel5113 2 жыл бұрын
Oh, and gravity is already enabled on the rigidbody
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
At 16:31 there is an error and on screen text to point it out. For lots of folks this has been the cause of jump issues. If that's not the issue you're more than welcome to jump over to the OWS discord server and we can try and figure out a solution.
@brandons1433
@brandons1433 2 жыл бұрын
Great video! Got one question how would you go up stairs and slopes?
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
Slopes should be okay if you use a capsule collider. Stairs!?! That's another issue altogether. I couldn't tell you the best way to do that. I might fake it! Have it look like stairs, but keep it smooth.
@Cadaverine1990
@Cadaverine1990 2 жыл бұрын
Stairs are a bit of a mess, I have played with several controllers and most of them seem to offset the collider to be on the top of the mesh having the bottom of the collider where the stair height should be. However, once you offset the collider, the mesh will fall into the ground, you will then need adjust the height of your character based on Raycast distances and then lerp your character's position to keep smooth movement. This works quite well for 90% of applications. Just have to keep in mind when moving the player on Platforms that the movement of the platform might occur after the Raycast of the player thus having the player fall up to the collider for a frame or two.
@johnpotesta3744
@johnpotesta3744 Жыл бұрын
Hello, thanks for the video! I got through it but am having issues with gameplay where the camera is very choppy.... I think it is within the animator somewhere since I turned it off and then gameplay looked normal and not choppy/stuttering. any suggestions?
@OneWheelStudio
@OneWheelStudio Жыл бұрын
I'm not really sure what that's about. I know a few other folks have commented about it, but never saw it on my end. It does seem weird that the animator would effect the camera. Might be worth playing with the camera target - the base object vs. the animated object?
@itsmillertyme
@itsmillertyme Жыл бұрын
@@OneWheelStudio Turning on Interpolate on the Rigidbody fixed the issue for me :)
@bonse2000
@bonse2000 Жыл бұрын
what does it mean this ?where can i get ThirdPersonActionsAsset ? Assets\Scripts\ThirdPersonController.cs(10,13): error CS0246: The type or namespace name 'ThirdPersonActionsAsset' could not be found (are you missing a using directive or an assembly reference?)
@OneWheelStudio
@OneWheelStudio Жыл бұрын
That means it can't find the class/script in your project. Did you generate the C# class from your input action asset? If you have other errors that are preventing compilation that could be a problem too - if there aren't any other errors then don't worry about this.
@LasaventurasdeSaldi
@LasaventurasdeSaldi 2 жыл бұрын
I loke how in 3:22 you're correcting yourself when you said it right xD
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
Ha! I go a bit cross eyed editing these long videos.
@masterpirates1497
@masterpirates1497 Жыл бұрын
Thank you for such an impressive material and explanation! But I had a problem, even two, 1 this character just flies away although the collider and rigidbody are installed and configured exactly like you have, 2 moment is that the animations are not played and the character is in place in the idle pose. What could be the reason? These artifacts?
@OneWheelStudio
@OneWheelStudio Жыл бұрын
Does this happen when jumping? There was an error in the code that I pointed out via on screen text. This has caused issues for other folks.
@OneWheelStudio
@OneWheelStudio Жыл бұрын
As for the animation, sounds like the animation parameter is not getting set correctly? Are there any errors in the console?
@sainteven8181
@sainteven8181 2 жыл бұрын
One point to square roots calculation in general. This isn't slower anymore most compiler these day can do it in 1 cpu clock cycle. It cant get any faster then this. :)
@juliaalder2007
@juliaalder2007 2 жыл бұрын
This is very cool. Would you please do a tutorial to show how to combine melee animation with the third person from the starter assets? The code seems to be different. Thanks for this video! :)
@Guacamakis
@Guacamakis 2 жыл бұрын
Have you found anything on this? Cause I'm struggling too
@juliaalder2007
@juliaalder2007 2 жыл бұрын
No, not really. But I think you can combine Mixamo animations and the starter assets. So you could parent a sword to the hand? But I'm not sure about this.
@pranjaldevstuff8395
@pranjaldevstuff8395 Жыл бұрын
@@juliaalder2007 If you find anything on that then please tell here. And also in this tutorial when I press the W key , the player directly runs from idle when he should just walk. Can you tell how to fix it?
@CodenTheSynth
@CodenTheSynth 5 ай бұрын
whenever my player goes idle, the next time it moves the animation stays on the first frame. :(
@user-wo3ym4bj8e
@user-wo3ym4bj8e 2 жыл бұрын
I would like to be able to move the char up and down and when having that, not moving on x. How should be the velocity scripted in that case ? ty
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
Up and down as in along the y-axis? Rather than use a function like get camera forward you would want a function that returns the upward direction or just use (0,1,0). This would cause the y-input to apply a force along the up/down axis. You'll likely need to turn off gravity or account for it in some way.
@user-wo3ym4bj8e
@user-wo3ym4bj8e 2 жыл бұрын
@@OneWheelStudio solved it like this: if up down pressed i put vector2.up or down as forcedirection || after this if else i do this if (verticalVelocity.sqrMagnitude > maxSpeed * maxSpeed) rb.velocity = verticalVelocity.normalized * maxSpeed * Time.fixedDeltaTime; /// hope this will help others :) cheers!
@kozmobotgames
@kozmobotgames 9 ай бұрын
Amazing video, but when I press Space on my keyboard, the player does not jump. How can I fix it?
@tarriochu95
@tarriochu95 8 ай бұрын
18:57 im big dumb and still have no idea why you square root the magnitude of the vector, anyone know where to find an explanation to this?
@HoneyBoySoSweet
@HoneyBoySoSweet 2 жыл бұрын
Excuse me, I want to know how to connect the gamepad for PC Building Game in Unity?
@neozoid7009
@neozoid7009 Жыл бұрын
awesome video but you didn't show the look direction at mouse and controller right stick
@daberechiukoha-kalu356
@daberechiukoha-kalu356 2 жыл бұрын
THANK UUU
@kylershahalami6453
@kylershahalami6453 2 ай бұрын
I found out how to get the jump to work for me! I created a new private float at the top and named it "RayRange" and set it to 1.25f After that, I went down to the private bool IsGrounded() function and changed it to the following: private bool IsGrounded() { Vector3 direction = Vector3.down; Ray ray = new Ray(this.transform.position, transform.TransformDirection(direction * RayRange)); if(Physics.Raycast(ray, out RaycastHit hit, RayRange)) { return true; } else { Debug.Log("not grounded"); return false; } } Hope this helps some folks!
@Hassanali-jr4yb
@Hassanali-jr4yb Жыл бұрын
First of all thanks for such an amazing content, But I am really confused as there are 4 ways to use with new input system like you said in your first video about new input system. As the best ways are only 2 through Messages or by using Unity Events. But in this video your not using Invoke Using Unity Events?
@OneWheelStudio
@OneWheelStudio Жыл бұрын
My favorite method is to generate a C# class and using C# action/events. That's the approach that I've used here. It's a work flow I'm comfortable with - but at the end of the day use whatever method works best for you.
@Hassanali-jr4yb
@Hassanali-jr4yb Жыл бұрын
@@OneWheelStudio thanks
@BlenderSV
@BlenderSV 2 жыл бұрын
Great video, very helpful!! Is there a part 2 related to the zombies? (can't find it, lol)
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
No there isn’t but if you check the links in the description you should be able to get the code used for them - it’s pretty basic though.
@BlenderSV
@BlenderSV 2 жыл бұрын
@@OneWheelStudio thank you so much!!
@guillaumemercier3536
@guillaumemercier3536 Жыл бұрын
I am looking to use the new input system to change weapon with the d-pad buttons. But everything I do don't work.
@OneWheelStudio
@OneWheelStudio Жыл бұрын
Are the events getting invoked? Are any functions getting called?
@lumzalum8863
@lumzalum8863 2 жыл бұрын
Thank you for bit on Input System + Cinemachine, but I'm getting jittery movement with the camera now as compared with when I used Mouse X/Y
@Shir0dev_
@Shir0dev_ 2 жыл бұрын
Idk if youre still having this problem but using interpolate on the rigidbody fixed this issue for me
@SacWebDeveloper
@SacWebDeveloper 5 ай бұрын
Interpolate + continuous
@S4von
@S4von 2 жыл бұрын
Wait, doesn't the current melee code let player spam attack? Animation will play fine but if we were to put damage mechanic, player would be able to do damage several times during animation just by pressing attack constantly.
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
Not exactly, but the solution shown also isn't pefect. As shown the player can press the button once and the animation will run and if they press the button again the trigger will get set and when the melee animation finishes it will immediately play again. To resolve this you could check the which animation is playing. You could also dive in to Animation State Behaviors which allow really good control/knowlege of the animation state. Check Animation: www.reddit.com/r/unity_tutorials/comments/owryhj/3rd_person_controller_new_input_system/ Unity Animatin State Behavior: docs.unity3d.com/ScriptReference/StateMachineBehaviour.html
@souravsvc1486
@souravsvc1486 2 жыл бұрын
Can you please make a video how this work's in with mobile input. Please.
@hawkgamedev
@hawkgamedev Жыл бұрын
Quick question, is there a reason my character stays in the air when jumping or going off cliffs?
@OneWheelStudio
@OneWheelStudio Жыл бұрын
Yes. There was an error in the code with a on screen notification - wasn’t super obvious. Can’t remember exactly where in the video (on mobile) but if you check the comments there should be solutions and time stamps.
@hawkgamedev
@hawkgamedev Жыл бұрын
@@OneWheelStudio thanks will check it out!
@davidespigolon8170
@davidespigolon8170 2 жыл бұрын
can you make a video for a climb system?
@bhautikranpara7664
@bhautikranpara7664 2 жыл бұрын
Hello sir, Can we make videos on 3rd person shooter with different type of gun using Animation rigging ?
@johnorfanos6287
@johnorfanos6287 11 ай бұрын
Cool vid. I like how well each function is explained. One question though, why not use a Quaternion.Slerp instead of Quaternion.LookRotation in the LookAt() function? LookRotation makes it feel too 2d and snappy when the character rotates. Slerp just adds that smooth feel and you can adjust the rotation speed in the command to a higher value if you want to get a faster rotation etc... The reason I ask, is because I notice a trend in these thirdperson controller tutorials when it comes to this approach. Am I overlooking something by using Slerp instead of LookRotation?
@OneWheelStudio
@OneWheelStudio 11 ай бұрын
I think the honest answer is that Slerp never made it into my toolbox so to speak. Probably the same for other content creators so we just don't think about it and go with what we've always used.
@SacWebDeveloper
@SacWebDeveloper 5 ай бұрын
Personally, I like the immediate change in direction, it feels more arcade-like. I'm interested in games like Chinatown Wars where the 2.5D characters were made with sprites, but I think there's a happy medium that can be struck with full 3D models, you just have to make things move more like a cartoon, fast "poses." If you want realism, use root motion and start with Unity Starter Asset Third Person Controller.
@patek2385
@patek2385 Жыл бұрын
How can I initiate Jump action? It doesnt do anything when I press spacebar. Also there seems to be a problem with the gravity script. My player doesn't fall down, it just moves in the same plane.
@OneWheelStudio
@OneWheelStudio Жыл бұрын
The issue with the gravity is at 16:31. I made a mistake in the code and put an text based message on the screen pointing it out. I should have made it more obvious. Oops.
@patek2385
@patek2385 Жыл бұрын
@@OneWheelStudio I'm gonna check it today, thank you for pointing this out
@charlieratcliffe7294
@charlieratcliffe7294 9 ай бұрын
this has exactly what i need! i just cant get the jump to work. Ive read through the comments to find a solution, and increasing the raycast distance doesnt fix it. ive tested it without the bool and it works fine, with my own animation! could there be something else im missing? I dont think you mentioned anything about tags or layers
@OneWheelStudio
@OneWheelStudio 9 ай бұрын
It’s possible there are some settings on the animation that aren’t correct. I usually have to just tinker until I find the right setting - it’s not something I do often. But maybe check the root motion. It’s possible the animation is trying to hold the character in place.
@Magma-uw7yo
@Magma-uw7yo 2 жыл бұрын
I ve got somme problems I want to fix, First, the cam go to right when I moove the mouse to the left and left for right, how can I fix that ? Secondly I want to block my camera to only the "front view" like fps with just one view behind him. When I turn, the camera turn too fast so we can't see where we watch
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
The left/right issue can be fixed by inverting the controls or by adding a negative sign to the horizontal inputs. As for the second issue, sounds like you want a different aim algorithm - I made a video covering the basics of the aim options. kzfaq.info/get/bejne/e5ejaKuItt_dqJs.html
@sahpdude
@sahpdude 2 ай бұрын
you cannot drag those animations because they have meshes included those are full animation files with mesh pieces included if you opened the animation that you said "I can't drag these into the animation slots" and you selected the animation file specifically then dragged it into the blend slot it would work. I had the same question I was like why can you not drag this into the blend state but that is because that is the entire mesh and not just the animation data
@angrypug9841
@angrypug9841 4 күн бұрын
The NEW way to set up the 2d Vector is as follows :( Click on Move Go to Binding Properties and select "Action Type: Value" then "Control Type: Vector 2" THEN you can right click Move and Add Up/Down/Left/Right Composite will show up. It will then add a 3d vector to your drop down for WASD. So stupid of them to switch that up
@Omnivoid22
@Omnivoid22 Жыл бұрын
would this be the same for a character controller? would i just replace rigidbody with character controller?
@OneWheelStudio
@OneWheelStudio Жыл бұрын
I honestly have explored the character controller much, but what’s shown in the video should be adaptable to the character controller component.
@Omnivoid22
@Omnivoid22 Жыл бұрын
@@OneWheelStudio I'll give it a shot
@KotobaProject-KOTOBA
@KotobaProject-KOTOBA 11 ай бұрын
HEY! Thanks for the Tutorial! i had an issue with the character, one that made her fly as soon i started the game. It wasnt the code error in 16:32 and it wasn't a capsule collider issue, i find out that this is a problem with the Animator component... to fix this, just disable Apply Root Motion. Hope someone find this useful, thanks for the video
@Warp_Speed_Studios
@Warp_Speed_Studios 8 ай бұрын
lol
@Coldsteak
@Coldsteak Жыл бұрын
why do all these tutorials use cinemachine? What if I don't want to add some bloated camera library to my project?
@generichuman_
@generichuman_ 3 ай бұрын
Then get out a pencil and paper and figure out the trig to do it yourself...
@018FLP
@018FLP 2 жыл бұрын
I'm commenting before following the video, but just by passing my eyes on it, it seens that this is the perfect tutorial for everything i planned to use, so thanks a lot in advance
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
I hope it lives up to expectations 😉
@018FLP
@018FLP 2 жыл бұрын
​@@OneWheelStudio Yeah, there are a some tweaks to make (e.g., my move is 2d simple directional, with backwards and sideways specifics animations), but in general a very very solid tutorial, i learned a lot! =DD
@oliverhuber4578
@oliverhuber4578 Жыл бұрын
How would you add a jump animation to this setup?
@OneWheelStudio
@OneWheelStudio Жыл бұрын
There would be a lot of steps to do that! I would suggest researching "triggers" in the animator and "avatar masks." The trigger will let you transition to a new animation - you will need to add a jump animation. Then you can use an avatar mask to have the jump animation only apply to the legs - this allows the arms to still hold a weapon or what ever.
@X7373Z
@X7373Z 2 жыл бұрын
Is it just me or does the video at 38:40 start doing a weird skip/stutter for the rest of that segment? (up to ~39:07 )
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
Hmm. I don’t see it happening. I’d definitely be interested if others see seeing it too.
@javiebeats759
@javiebeats759 2 жыл бұрын
@@OneWheelStudio it does.
@sparky634
@sparky634 2 жыл бұрын
my charecter will move but it will only move up or down even A and D make me go ,up and down and my jump does not work
@migueldc6845
@migueldc6845 2 жыл бұрын
For the movement: Are you sure BOTH Vector3 GetCameraRight/Forward are set to .y? right.y = 0; forward.y = 0;
@fongaming101
@fongaming101 4 ай бұрын
I like
@jroc6745
@jroc6745 2 жыл бұрын
Thank you for your time. I have a problem. When I press play I can move in all directions and the animations work but when I press jump the character stays in the air.
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
This happened to someone else who accidently added a "Character Controller" component. Any chance you did that? If not, something in one of the component is likely not set right. Feel free to jump over to the OWS discord - it's easier to help there. Add in some screenshots of the inspector for the player object.
@jroc6745
@jroc6745 2 жыл бұрын
@@OneWheelStudio Thanks for the reply. I only added Rigidbody and CapsuleCollider like you did. Seems like there is no gravity as the chracter wont fall off a ledge either. Maybe I missed a part of the video that addressed this.
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
Gravity should be turned on by default on the rigidbody. Check that.
@jroc6745
@jroc6745 2 жыл бұрын
@@OneWheelStudio Yes "Use Gravity" on the Rigidbody is checked.
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
Hmm. That’s weird. I would lift the character up so it would fall and start turning components off until you can figure out what is preventing it from falling.
@kperezapolla
@kperezapolla 2 жыл бұрын
Great tutorial, im habing some issues but is because me i dont understand at all your code!
@targeto12
@targeto12 Жыл бұрын
hi first of all really great video tutorial but I am having a issue the left and right movement do not seem to be working
@OneWheelStudio
@OneWheelStudio Жыл бұрын
Are there any errors being thrown? Are the events for the left/right inputs getting invoked?
@targeto12
@targeto12 Жыл бұрын
@@OneWheelStudio WOW!, I didn't expect to get a reply on such a old video, turns out unity was just being unity and restarting the project fixed the issue thx
@gamedevarchive614
@gamedevarchive614 2 жыл бұрын
I keep getting camera jitter as well as I'm completely frozen in y space. I don't go up or down.
@johnpotesta3744
@johnpotesta3744 Жыл бұрын
any resolution to this? my gameplay is really jittery and was thinking it has to do with the animator.
@threydrey328
@threydrey328 2 жыл бұрын
What is the point of the keyboard movement if you can't walk. If you play keyboard you will only be able to run. Where is the simple shift run?
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
You would need to add that functionality. My first thought to do that would be to use the shift button to toggle the max speed. Shouldn't be too hard to add in.
@mdaltaf5020
@mdaltaf5020 2 жыл бұрын
Can you please make a third person tutorial for bolt 🙂
@samchristian9149
@samchristian9149 Жыл бұрын
how could i stop moving during my attack animation?
@OneWheelStudio
@OneWheelStudio Жыл бұрын
I'm not sure there is a super simple answer, but learning to use Unity's "StateMachineBehavior" is a really good start. It allows you a good way to know what's going on with an animation and run code accordingly. Animation triggers, unless something has changed, are often held up as a good (and much simpler) solution but they are buggy and non reliable. With the StateMachinceBehavior you could set the players velocity to zero while the particular animation plays. You might also be able to ignore player input while an attack animation plays. Here's the documentation: docs.unity3d.com/ScriptReference/StateMachineBehaviour.html
@user-ee1jz5nl6c
@user-ee1jz5nl6c 2 жыл бұрын
Thank you for video! Can you make video about Touch input for mobile divice?
@OneWheelStudio
@OneWheelStudio 2 жыл бұрын
I have almost zero experience with mobile, but I do get a lot of requests. So maybe some day. Can't promise it'll happen soon.
@juliaalder2007
@juliaalder2007 2 жыл бұрын
In the third person controller from the starter assets mobile is implemented.
@rdragon587
@rdragon587 2 жыл бұрын
cool )
@jmunozve
@jmunozve Жыл бұрын
Hi, congratulatión for your video, i Have a questión, I have an animatión of Jump, Where do i can write in the code the instruccion "_animplayerSetTrigger("Jump") ?
@jmunozve
@jmunozve Жыл бұрын
greeting, ready I made it
@aliceintini8900
@aliceintini8900 10 күн бұрын
@@jmunozve Can you explain how you did that please?
@vj711
@vj711 3 ай бұрын
I have this error. I have done everything as the video. No i didnt type the code in ondisable to onenable. Null reference exception: Object reference not set to an instance of an object ThirdPersonController.FixedUpdate()
@Seshua87
@Seshua87 3 ай бұрын
NRE: Object ref is normally because something is not being linked together, go through your code, and your hierarchy and make sure you link everything that should be, i.e make sure your camera is linked. Small tip, it's really hard for someone to help you when we can't see your code, 98% of the time it's a typo. Try pasting your code into a reply message and someone might be able to spot the problem.
@erngkmn
@erngkmn Жыл бұрын
Hi it was a very usefull tutorial. But I have some problems I used codes exacly same but my character animation did not well it's acted very strange. And my character lookAt code works only when I use update if ı use fixedUpdate the code does not worked. Also same problem with animation codes
@erngkmn
@erngkmn Жыл бұрын
Note : I fixed that issue if your character animation is wiggle too just select Animate Physics on Animator component.
@crowbartwisted8738
@crowbartwisted8738 3 ай бұрын
For anyone who couldn't get the jumping to work , modify your isGrounded function as follows , and create a layer of your choosing and give it to the object you're using as floor , and it should work private bool IsGrounded() { float rayLength = 0.3f; Ray ray = new Ray(transform.position + Vector3.up * 0.1f, Vector3.down); int layerMask = LayerMask.GetMask("INSERT LAYER NAME HERE"); if (Physics.Raycast(ray, out RaycastHit hit, rayLength, layerMask)) { return true; } else { return false; } }
@Adamthegeek70
@Adamthegeek70 Жыл бұрын
I start this and my model changes to lay flat on his back. Any Ideas?
@OneWheelStudio
@OneWheelStudio Жыл бұрын
Is it possible the rigidbody constraints aren't set right?
@Adamthegeek70
@Adamthegeek70 Жыл бұрын
@@OneWheelStudio I think youtube is deleting my comment. I think its an animation issue. with the animation I am using, I switched to mixamo and I am faring a little better though I lost jump in my rewrite. :D I doubt it is your code, that seems spot on.
@OneWheelStudio
@OneWheelStudio Жыл бұрын
@@Adamthegeek70 Mmmm. Yeah, animations stuff can be a bit tricky to debug. Pop over to the OWS discord if you continue to get stuck. It's fairly quiet but there's folks (myself included) who might be able to help.
Unity's "NEW" Input System with C# Events
16:46
One Wheel Studio
Рет қаралды 86 М.
MOM TURNED THE NOODLES PINK😱
00:31
JULI_PROETO
Рет қаралды 18 МЛН
I Built a Shelter House For myself and Сat🐱📦🏠
00:35
TooTool
Рет қаралды 15 МЛН
WHY DOES SHE HAVE A REWARD? #youtubecreatorawards
00:41
Levsob
Рет қаралды 38 МЛН
Unity Playmaker - 3rd Person Controller and New Input System
13:55
The INSTANT Unity Character Controller for first and 3rd Person Games
13:53
Unity's New Input System:  The Definitive Guide
32:07
DmanGames
Рет қаралды 21 М.
Key Rebinding with Unity's New Input System and Generated C# Code
51:03
One Wheel Studio
Рет қаралды 20 М.
Unity's NEW input system in 13 minutes
13:02
BiteMe Games
Рет қаралды 10 М.
Use Unity's Input System Like a Pro
24:48
Paridot
Рет қаралды 23 М.
THIRD PERSON MOVEMENT in Unity
21:05
Brackeys
Рет қаралды 1,4 МЛН
10 Unity Tips You (Probably) Didn't Know About
6:47
Sasquatch B Studios
Рет қаралды 33 М.
MOM TURNED THE NOODLES PINK😱
00:31
JULI_PROETO
Рет қаралды 18 МЛН