Ultimate 2D Platformer Controller in Unity (source code provided)

Source & game: github.com/Matthew-J-Spencer/...
Extended source: / tarodev
Learn how to build an amazing player controller.
This Unity character controller is built using custom physics and incorporates all the hidden tricks to make it feel amazing. 2D player controllers can be difficult to get right, so hopefully this helps you along your way and gives your game a boost in productivity.
Features:
Variable jump height
Apex modifiers
Jump buffering
Coyote time
Clamped fall speed
Ledge detection
❤️ Become a Tarobro on Patreon: / tarodev
=========
🔔 SUBSCRIBE: bit.ly/3eqG1Z6
🗨️ DISCORD: / discord
✅ MORE TUTORIALS: / tarodev

Пікірлер: 704

  • @LeGentleMentlegen
    @LeGentleMentlegen2 жыл бұрын

    Hey! I watched your video about a week ago, I was desperately searching for a good 2D character controller whilst trying to learn Unity, and after some work I've managed to implement all the features you showed in your video using your code as an inspiration when I needed to, thank you so much for uploading this!

  • @YOSFP
    @YOSFP2 жыл бұрын

    I have seen many platformer scripts and plugins, but this seems to be the best one I have seen yet. Going to try it out later, thanks so much like always :)

  • @crtus2444
    @crtus24442 жыл бұрын

    I don't need something like that at the moment but dude, it is perfect for 2D player controller. Keep up the good work!

  • @drkr
    @drkr2 жыл бұрын

    Short, straight to the point, open source and with a very nice prototype : Perfect !

  • @RaidenHeaven

    @RaidenHeaven

    5 ай бұрын

    Yeah but there is no source. Do you have it ?? That one has Rigidbody and a Capsule Collider in

  • @Lededev
    @Lededev9 ай бұрын

    This gave me a lot of insight on platformer polishement. You'r making great material, keep it up!

  • @orwellwasright9604
    @orwellwasright96042 жыл бұрын

    The level of quality (video itself, presentation, quality of work, your humor) and the speed you’ve been putting content out is incredible. Thank you my fine sir.

  • @RaidenHeaven

    @RaidenHeaven

    5 ай бұрын

    Does that mean you have the source code? Because what's in the description is a different one that uses Rigidbody and a Capsule Collider instead of a box.

  • @Mr_BetaMax
    @Mr_BetaMax2 жыл бұрын

    This is incredible! Thanks so much for making this. I just got into Unity and just could'nt get the character jumps feeling good at all. Amazing!

  • @tommallama9663
    @tommallama96632 жыл бұрын

    Beautiful! Thank you so much for sharing this! And for those who would rather make your own, try to look into some of the key words mentioned and making those mechanics one by one. It's a great way to learn character controllers but physics and other things as well.

  • @JBtheWARVillain
    @JBtheWARVillain2 жыл бұрын

    Quickly and easily you've become my main channel to watch on KZread above anything else. I'm going to learn so much heading into my 2nd year as a Game Dev, so much more to learn but am just getting started. All your content is amazing, much thanks :)

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    Much appreciated 🙏

  • @RaidenHeaven

    @RaidenHeaven

    5 ай бұрын

    Do you have the code? Because @Tarodev switch the code to use Rigidbody and Capsule Collider.

  • @IceForgeOfficial
    @IceForgeOfficial2 ай бұрын

    This is so perfect! The controls looks smooth and perfect

  • @bwulf
    @bwulf2 жыл бұрын

    I'm building a fully packed metroidvania and it already has almost everything you've implemented on this package, except for the ledge detection when jumping. So, I'm going to download it and give it a try! Thank you for your content, it's really great!

  • @good1742

    @good1742

    Жыл бұрын

    What's it called? Or did u give up after 6 months

  • @bwulf

    @bwulf

    Жыл бұрын

    @@good1742 It's called WIZ and I'm still working on the project. Since I'm solo developing it, it's taking a while lol But you can wishlist it on steam

  • @kepler1175

    @kepler1175

    Жыл бұрын

    ​@@bwulf wishlisted. looks cool

  • @Firebunny26

    @Firebunny26

    Жыл бұрын

    ​@@bwulf your game looks amazing

  • @kenneth5095

    @kenneth5095

    2 ай бұрын

    Did you manage to implement the ledge detection? I have been trying and I cannot use the code used here to nudge the player up when they barely missed the platform's ledge could you please help me?

  • @bakor111
    @bakor1112 жыл бұрын

    I recommended your channel to so many friends, and I won't stop! Great videos!

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    I appreciate the love, thank you 🙏

  • @AkioJunichiro
    @AkioJunichiro2 жыл бұрын

    It's great to explain all concept you can find in a controller, I used to use Sebastian Lague Platformer Controller implementation like base to implement my own and I found thoose tricks by myself later. And you give me some tricks I didn't have yet like vertical edge detection to correct movement. Thank you.

  • @mayankbhaisora2699
    @mayankbhaisora26992 жыл бұрын

    Man… controls look perfect. Thank you bro. 🖤 Will help me a lot.

  • @mertvanlioglu
    @mertvanlioglu2 жыл бұрын

    These contents are real unique and important to know. I hope you keep creating them.

  • @sohrabhamza3805
    @sohrabhamza38052 жыл бұрын

    Thank you! I'm always trying to learn what makes movement more satisfying.

  • @backbenchgamedev4117
    @backbenchgamedev41172 жыл бұрын

    You channel is one of the finest in game dev tutorial now - short, precise and easy to understand. I have followed some of your older tutorials - and you have improved a lot as a creator - over time. Also would like to thank you for providing - all the resources and links in descriptions - and not creating a paywall for people to get your code. Appreciate it.👌

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    Thank you for saying that. I like watching some of my older videos to see how I'm progressing. Glad somebody else noticed too

  • @RaidenHeaven

    @RaidenHeaven

    5 ай бұрын

    Do you have the code?? @Tarodev has switch it out

  • @ObitoUchiha-id1nq
    @ObitoUchiha-id1nq Жыл бұрын

    Subscribed. Excellent video. Frewt movement. That cude felt so smooth so proffesional.

  • @MellioMusic
    @MellioMusic2 жыл бұрын

    I actually logged into both my accounts to sub twice. This is a perfect tutorial. Short, sweet and resources provided with concise explanations. Thank you so much!

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    Lol damn bro, thanks

  • @RaidenHeaven

    @RaidenHeaven

    5 ай бұрын

    Yeah it would be a perfect tutorial if he had the source code and not something else

  • @fuzzy-02
    @fuzzy-022 жыл бұрын

    Bro I really needed something like this (and not made like 7years ago), as I am studying an tinkering with Unity. This is both extremely good for me to use and focus on other aspects or treat as research material. +Subbed

  • @jqmichael13
    @jqmichael132 жыл бұрын

    Happened upon this video by chance and so glad that I did. Concise, to the point and the fact that you're sharing this source code is very cool. +1 sub

  • @RaidenHeaven

    @RaidenHeaven

    5 ай бұрын

    Do you have the source code? Because the code he has right now is not the code he is using on the video

  • @Rovsau
    @Rovsau2 жыл бұрын

    Dude. That's some awesome community service. Kudos.

  • @rafa_guitar
    @rafa_guitar2 жыл бұрын

    Awesome, well done! Thank you so much for sharing!

  • @francescagreetham1804
    @francescagreetham18042 жыл бұрын

    This is really cool. Great quick explanation

  • @Ironlionm4n
    @Ironlionm4n2 жыл бұрын

    2:03 LMAO!! Fantastic video once again and this just inspired me to create a game

  • @xianead18
    @xianead182 жыл бұрын

    Great content! I hope you never stop doing these stuffs :< Your other more intermediate lessons are really helpful for those who are having a hard time understanding them

  • @RaidenHeaven

    @RaidenHeaven

    5 ай бұрын

    He never started. The code he talking about in this video is not there..

  • @ianrash4944
    @ianrash49442 жыл бұрын

    Dude this is an amazing resource, I've played platformers for years and I never knew what "coyote time" was but the second you said the words I knew what you were talking about.

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    Tricks of the trade 😉

  • @mrstruijk
    @mrstruijk2 жыл бұрын

    This looks awesome! Thanks man!

  • @thesilentwisp
    @thesilentwisp2 жыл бұрын

    Wow. Just wow. Definitely sharing this.

  • @TccKaiCi
    @TccKaiCi2 жыл бұрын

    Great! This is what i was looking for

  • @filipe_lopes
    @filipe_lopes2 жыл бұрын

    I just subbed from a different video and I gotta say thank you for this one as well, but I just can't get over that squishy sound when it lands after a jump, it is vile how absolutely sloopy it sounds😆

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    Especially the slow mo splat :D

  • @DANtheTANK
    @DANtheTANK2 жыл бұрын

    This looks awesome, thank you for this!

  • @megacharizardx2386
    @megacharizardx23862 жыл бұрын

    You my friend, is making the world a better place. Thank you!

  • @onem0repixel
    @onem0repixel2 жыл бұрын

    Everything is good on this video. Like everything. Not only the thing I was searching for.

  • @notDiru
    @notDiru2 жыл бұрын

    Even the most basic scenario it's fun with those controls!

  • @devegram
    @devegram2 жыл бұрын

    People like you drives the community further keep up the good work

  • @MUN-Development
    @MUN-Development18 күн бұрын

    I love your video, smooth, simple, and straight to the point.

  • @MUN-Development

    @MUN-Development

    18 күн бұрын

    I'd highly integrate your creation to the game we are making. If you would'nt mind, we'd love you to try it oneday when its finish.

  • @morneerasmus1789
    @morneerasmus1789 Жыл бұрын

    Absolutely brilliant, the most important mechanic being the wet splat sound ofcourse.

  • @Tarodev

    @Tarodev

    Жыл бұрын

    Oh yes 😉

  • @frederickfreund1957
    @frederickfreund1957 Жыл бұрын

    wow this is amazingly informative. And in just under three minutes! thanks so much :)

  • @Dylen
    @Dylen2 жыл бұрын

    Dude thanks, this is exactly what I was looking for

  • @sfuperman56
    @sfuperman562 жыл бұрын

    This is incredibly helpful, thank you so much!

  • @raymondcox2291
    @raymondcox22912 жыл бұрын

    Thank you so much for the awesome, and concise examples. Extra kudos for sharing the source code. What a god 💯

  • @PixelbugStudio
    @PixelbugStudio2 жыл бұрын

    Woww😳. Awesome dude. Keep it up and Thanks for making this.

  • @21leowheeler
    @21leowheeler2 жыл бұрын

    Very new to unity, thanks for the gift, should help me get motivated to do and learn more.

  • @TylerLarson
    @TylerLarson2 жыл бұрын

    OMG the unity 2d controller that is ACTUALLY worth downloading. Nice work, good research, and thank you.

  • @svendpai
    @svendpai2 жыл бұрын

    actually insane, great resource!

  • @zaidmermam2524
    @zaidmermam25242 жыл бұрын

    what a fricking amazing channel !! so happy my friend told me about this

  • @ast3077
    @ast30778 ай бұрын

    Bro much appreciated, Been on my journey as a solo dev and this is an invalubale source, amound others. Thank you

  • @Tarodev

    @Tarodev

    8 ай бұрын

    I just now updated the free version of the controller. Go check it out :)

  • @limbo1n
    @limbo1n2 жыл бұрын

    Got the controller up and running in minutes. Feels great! I have to dig in a little as I'm finding he doesn't like slopes too much just yet.

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    Indeed, zero slope detection right now :P

  • @bobbville

    @bobbville

    2 жыл бұрын

    It makes it easier to handle slopes of you use ray casts to check for ground🍻🍻

  • @pabloalves
    @pabloalves Жыл бұрын

    Its incredible how much info can fit in a 3min video.. congrats

  • @papaalex4961
    @papaalex49612 жыл бұрын

    This is an incredible resource (and also the Celeste 101 haha), both for actual usage or just studying it. Thank you so much for providing this! Keep doing amazing stuff :)

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    Hopefully it can help some people out :)

  • @mayankbhaisora2699

    @mayankbhaisora2699

    2 жыл бұрын

    @@Tarodev It will help so many people bro… Thank you. 🖤

  • @ItsTheAlex

    @ItsTheAlex

    Жыл бұрын

    hey papa alex, do you know if this code would work if i just straight up copied it into my unity project?

  • @RaidenHeaven

    @RaidenHeaven

    5 ай бұрын

    Do you have the code that doesn't uses Rigidbody and a Capsule Collider like he said in the video?

  • @This-Was-Sparta
    @This-Was-Sparta2 жыл бұрын

    I almost don't want to go download this just to try constructing it myself... Good stuff Taro, loving the content.

  • @RaidenHeaven

    @RaidenHeaven

    5 ай бұрын

    Too bad if you didn't downloaded it because I'm looking for it. He switch the code of the video with another.

  • @abdelbarimessaoud242
    @abdelbarimessaoud2422 жыл бұрын

    Incredible video just subbed hope to see more tricks !

  • @luigidreemurr6034
    @luigidreemurr6034 Жыл бұрын

    I love this!! If I don't just outright use this I know I'll learn a lot. Thank you so much!!

  • @QuietBenchZen-om8um
    @QuietBenchZen-om8um3 ай бұрын

    This was a big help to me, thanks!

  • @deathcatthor
    @deathcatthor11 ай бұрын

    Thanks for the controller, very helpful video and well made!

  • @sanghyuncho473
    @sanghyuncho473 Жыл бұрын

    This guy is legend himself. Finally an reliable advanced tutorial/resource to watch after Brackeys.

  • @Tarodev

    @Tarodev

    Жыл бұрын

    Thanks for saying that, brother 🙏

  • @daka.notatp
    @daka.notatp2 жыл бұрын

    short, effective and USEFULL perfect video 10/10

  • @soverain
    @soverain2 жыл бұрын

    Man this is invaluable resources, thank you very much for that! Keep up the good work!

  • @RaidenHeaven

    @RaidenHeaven

    5 ай бұрын

    "invaluable resources" ? He replaced the code with another

  • @arieltheartist3161
    @arieltheartist31612 жыл бұрын

    Omg, this is some god tier mechanics. Saved and Subbed

  • @ravd123
    @ravd123 Жыл бұрын

    Wow that looks awesome!

  • @vaa33nn65
    @vaa33nn65Ай бұрын

    Thank you for the video! no nonsense and to the point. Thanks for the source code as well!

  • @skippythemagnificent8103
    @skippythemagnificent81032 жыл бұрын

    Have to take the time to echo whats said before such an excellent video, to the point and... and a free quality learning resource.. wow..., thank you :)

  • @textingedits9419
    @textingedits9419 Жыл бұрын

    2:02 sus doodle. Fantastic resource! Just found your channel today and I'll be deep diving through all of this fantastic content.

  • @RaidenHeaven

    @RaidenHeaven

    5 ай бұрын

    Do you have the source? Because he changed the code

  • @PauloHSousa237
    @PauloHSousa2372 жыл бұрын

    I'm showing your channel to all my friends, keep it up

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    Appreciate it Paulo

  • @vishalkhombare
    @vishalkhombare2 жыл бұрын

    Awesome Work!! Awesome share!!

  • @jitsmapper4438
    @jitsmapper44385 ай бұрын

    Good shit. Became a patron for the extended controller (worth it)

  • @jessecooley530
    @jessecooley530 Жыл бұрын

    Wow I've been working on platformer games for yyyyeeeearsss and am hearing some of this for the first time tysm

  • @coolblasterb4066
    @coolblasterb4066Ай бұрын

    Brilliant video! Really excited to give this a go! You’ve done an amazing job continuously contributing to this until today (I can see you’re still active in the comments)

  • @Tarodev

    @Tarodev

    Ай бұрын

    I do my best 😅 Enjoy the controller!

  • @random_precision_software
    @random_precision_software2 жыл бұрын

    Ill love to check that out!

  • @DylanGreene9
    @DylanGreene92 жыл бұрын

    Yo thanks dude this is awesome, subbing.

  • @feifan19
    @feifan19 Жыл бұрын

    this is amazing, very appereciated

  • @howdy9517
    @howdy95172 жыл бұрын

    Woah, Props to you to decide to give us a source for free. While you could easily sell this for some money. Mad respect.

  • @adamcervenec6897
    @adamcervenec68972 жыл бұрын

    Dude this is just a huge amount of work you gave away for free. Thanks so much

  • @visclo4782
    @visclo47822 жыл бұрын

    wow that guy is building a portfolio haha ^^ nice project and thank you very much! this is such a great resource for starting game dev!

  • @relentingVids
    @relentingVids2 жыл бұрын

    Fantastic! Thanks for sharing!

  • @arcuny.8680
    @arcuny.86802 жыл бұрын

    Simply awesome. Thank you :)

  • @datablob
    @datablob2 жыл бұрын

    Now I am hyped to revisit my paused astro platformer project! 🙏

  • @omniclause4986
    @omniclause49862 жыл бұрын

    This is awesome and I definitely plan on testing out this code soon but at 2:04 that has to be intentional that that arrow looks like a particular part of the male anatomy haha.

  • @millerbyte5579
    @millerbyte5579 Жыл бұрын

    2:02 I see you. Yes, I'm burning through all your videos. Thanks again!!

  • @lost.250
    @lost.2502 жыл бұрын

    I'm becoming a fan of this channel. Awesome stuff! :D

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    Slowly winning you over?

  • @lost.250

    @lost.250

    2 жыл бұрын

    ​@@Tarodev Yes, stuff that you are doing is high quality and well explained. Thank you, keep up doing great stuff :)

  • @ItsLeopard_
    @ItsLeopard_2 жыл бұрын

    this is amazing, thank you so much!

  • @mrmixedvideomaker9767
    @mrmixedvideomaker97672 жыл бұрын

    my favorite of all these invisible tricks is clamped fall speed, it just feels so great to be able to land more precisely when your fall speed is clamped

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    It's one of the lesser loved ones, that's for sure. But remove it and it's absolute chaos.

  • @moviemaker310
    @moviemaker3102 жыл бұрын

    That's really cool! Thank you for publishing this. Also a really important thing in platformers is being able to see what's coming. I know this video is about the character controller but I just wanted to note it because it's important and that this has been a thing since the first Mario. Basically create some invisible barriers where the camera will catch up to the player on the opposite side of it. If the player is moving to the right, place the character on the left side of the screen so the players know what's coming. In Mario I think they put you more in the centre of the screen, but it's pretty much all up to you.

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    Great tips. The camera was lacking a bit in this demo for sure. Especially on the drop zone.

  • @suuunly

    @suuunly

    2 жыл бұрын

    May I recommend the Cinemachines plugin :) It can exactly what you are asking for any significantly more. It is a free asset that Unity provide :)

  • @Muskar2

    @Muskar2

    Жыл бұрын

    Camera controllers are a science of their own - often underappreciated

  • @LennoxParsec
    @LennoxParsec Жыл бұрын

    This is an invaluable resource, thank you!

  • @Tarodev

    @Tarodev

    Жыл бұрын

    You're most welcome

  • @GexTendies
    @GexTendies2 жыл бұрын

    That's a top notch resource right there

  • @dfadir
    @dfadir2 жыл бұрын

    This is gold, Taro!

  • @AzuriumOfficial
    @AzuriumOfficial2 жыл бұрын

    Actual poggers. Thanks!

  • @maiconsansao1
    @maiconsansao12 жыл бұрын

    great content, thank you so much for this

  • @Betruet
    @Betruet2 жыл бұрын

    This is epic thanks!

  • @kubstoff1418
    @kubstoff14182 жыл бұрын

    Dude, this is awesome

  • @eznogamee3704
    @eznogamee37042 жыл бұрын

    this is a true legend, thank you for providing the tutorial

  • @Tarodev

    @Tarodev

    2 жыл бұрын

    You're welcome brother

  • @RaidenHeaven

    @RaidenHeaven

    5 ай бұрын

    He doesn't even give the source like he says he does. It's different code.

  • @neozoid7009
    @neozoid70092 жыл бұрын

    Awesome work

  • @hiteshsharma6522
    @hiteshsharma65222 жыл бұрын

    wow awesome work

  • @timothymakesgames
    @timothymakesgames2 жыл бұрын

    beautiful content, love ya work

  • @styxrakash4639
    @styxrakash4639 Жыл бұрын

    This is S+ tier man keep it up

  • @tamertamertamer4874
    @tamertamertamer48742 жыл бұрын

    Great video ! I’m not going to use the character controller but it has nice things to hear Per example for variable jump height in my game I just divided the vertical speed which makes it feel really different than just adding downward momentum

  • @realn8zone
    @realn8zone2 жыл бұрын

    I've just found your channel and have been watching a few of your tutorials and they're honestly super useful and coherent, keep up the good work man.

  • @I-OMusic
    @I-OMusic2 жыл бұрын

    Great video! I'm gonna sink my teeth into making this myself and see what I can learn.

  • @HombreRus
    @HombreRus2 жыл бұрын

    Awesome thing. Thanks, Man ✌️