Awesome Movement Techniques in Unreal Engine 5 - Tutorial

แชร์
ฝัง
  • เผยแพร่เมื่อ 27 ส.ค. 2024

ความคิดเห็น • 79

  • @reede140
    @reede140 8 หลายเดือนก่อน +15

    Ah really cool to see. Not often do videos tend to go over the C++ side of things and seeing that with plugin creation is really cool.

    • @CobraCode
      @CobraCode  8 หลายเดือนก่อน +9

      Thank you :D
      Been getting a bit deeper with C++ myself recently, so might drop in a vid like this every once in a while

  • @gameformation2100
    @gameformation2100 13 วันที่ผ่านมา +1

    This is an incredibly useful node that should be a part of Unreal engine BP by default. Thank you for posting! Have you considered creating a pull request for this in Unreal engine source? If Epic approves it, it could be included in the next entire version!

  • @dracofells5390
    @dracofells5390 8 หลายเดือนก่อน +5

    Really nice stuff. Im using GAS in my project but the decoupling of this makes it very nice. I had no idea this existed either so this is super helpful

  • @penguindojo
    @penguindojo 3 หลายเดือนก่อน +1

    What an awesome video! Thanks so much for doing the legwork on this. It is super helpful for intermediate folks like myself who want to start customizing a bit beyond blueprints! You rock!

  • @BooneyTune
    @BooneyTune 8 หลายเดือนก่อน +5

    Thanks for putting in all the hard work and sharing!

  • @francescocampobasso8968
    @francescocampobasso8968 7 หลายเดือนก่อน +2

    This is exactly what i've been looking for, ty so much for sharing this. Awesome tutorial

  • @maiworld_
    @maiworld_ 8 หลายเดือนก่อน +4

    would love a tutorial on how to use it in games

  • @SimonSlav-GameMakingJourney
    @SimonSlav-GameMakingJourney 8 หลายเดือนก่อน +6

    This makes me curious what else are they hiding in the GAS

  • @TheTrueFriend.
    @TheTrueFriend. 3 หลายเดือนก่อน +1

    thank you so much

    • @CobraCode
      @CobraCode  3 หลายเดือนก่อน

      Thank you so much :)

  • @CobraCode
    @CobraCode  8 หลายเดือนก่อน +2

    Get the plugin and much more on Patreon:
    www.patreon.com/posts/essential-plugin-93262930
    Get my 12 hour course on how to make 2D games with Unreal Engine:
    tinyurl.com/Ultimate2D

  • @john-thejohn-johnson4403
    @john-thejohn-johnson4403 2 หลายเดือนก่อน +1

    i just disabled ground friction when the tech is active, works great

  • @deralufe9094
    @deralufe9094 3 หลายเดือนก่อน +1

    Oh this looks really interesting, but the GAS-System looks really cool too. Maybe I will use it, if its too bloated I use your plugin.

  • @IllyasArt
    @IllyasArt 8 หลายเดือนก่อน +3

    Very useful, thanks!

  • @bstr0ng
    @bstr0ng 8 หลายเดือนก่อน +3

    You rock brother!

    • @CobraCode
      @CobraCode  8 หลายเดือนก่อน +1

      :D

  • @wewillmodify8263
    @wewillmodify8263 8 หลายเดือนก่อน +3

    HI this is incredible well useful. I found i got a few error messages in how i used it so i added a bool for compleated failed and working so i could use branchs to stop trying to cancel a non active process.

    • @CobraCode
      @CobraCode  8 หลายเดือนก่อน +2

      Ahh I know what you mean, sorry about not going into detail on that.
      Before calling cancel, I always use an 'IsValid' check on the asyncAction.
      That will also work and is probably simpler than a bool.

  • @Storypaintings
    @Storypaintings 7 หลายเดือนก่อน +1

    This is awesome Thank you so much!

  • @RealVergilSparda
    @RealVergilSparda 6 หลายเดือนก่อน +1

    great ill just use your previous method cuz i aint doin allat just for some movement

  • @VeryTori
    @VeryTori 7 หลายเดือนก่อน +1

    Thanks for sharing and making this accessible! I tried the plugin out, and am super excited about it! I noticed though that when I did the setup you did as an example, the player has much more speed and distance if they jump while in this state vs just being on the ground. How would one go about making it consistent? I immediately felt like I was making Tracer's dash ability when testing this lol!

    • @CobraCode
      @CobraCode  7 หลายเดือนก่อน

      Hey, thank you for the support and nice feedback!
      I believe the distance of the controlled root movement itself should be the same on the ground and in the air since it should ignore ground friction.
      I believe what gives you more distance in the air is that the velocity after the movement ends is being kept, while on the ground, ground friction will kick in at that point and slow you down.
      On the node you can use the 'Velocity on Finish Mode' setting to get your desired result.
      You'd probably want to use 'Set Velocity on Finish' and just set it to 0, 0, 0 to keep the distance consistent between grounded and airborne!

    • @VeryTori
      @VeryTori 7 หลายเดือนก่อน

      Thanks for responding! I have it set to 0, 0, 0 for that setting, but I noticed that the player can go farther for slightly longer if they jump before pressing the button and even longer and farther if they do it mid-momentum.@@CobraCode

  • @hanharry6035
    @hanharry6035 7 หลายเดือนก่อน +1

    this gold for me

  • @simonvandenbroek6384
    @simonvandenbroek6384 8 วันที่ผ่านมา

    I have a behind the scenes question.
    Does this mean that the current frame's delta-velocity of the root bone is constantly applied and therefore linearly increase the speed? or is the previous frame's delta-velocity also removed? Because it says "constant force" but a constant force would mean that the velocity of the object keeps increasing? And what does additive do? Does that apply to other forces like gravity in the game? or does that mean that each frame's delta velocity stacks and creates a bigger force?

  • @MichaelEmbers
    @MichaelEmbers 8 หลายเดือนก่อน +1

    you are heaven sent my friend'

  • @BEPPEJHA
    @BEPPEJHA 3 หลายเดือนก่อน +1

    How can I slightly change the direction while I m in the movement with the joystick? Like to create a curvish motion?

    • @CobraCode
      @CobraCode  3 หลายเดือนก่อน +1

      Hey, this is something I haven't played around with much yet, but I think you want to check the 'Is Additive' boolean on the node.
      You should then be able to still apply regular movement through your button inputs with the "Add Movement Input" node we usually use for walking and steering.

    • @BEPPEJHA
      @BEPPEJHA 3 หลายเดือนก่อน

      @@CobraCode thank you I'm already trying to get the right result!

  • @Kamil_Horvath
    @Kamil_Horvath 7 หลายเดือนก่อน +2

    Hi there. I've tried building 2 diffrent projects with the plugin, but both keep showing the same error saying "Plugin 'RootMovement' failed to load because module 'RootMovement' could not be found."
    I'm not used to using plugins in my projects, so i dont know if this is common, but do you have any tips or ideas on how to fix it? 😅
    (Both games work just fine in the editor)

    • @CobraCode
      @CobraCode  7 หลายเดือนก่อน

      Hey, thanks for letting me know about this.
      I'll have to look into this further and see if I can reproduce the problem.
      This week is really busy, so it'll probably be some time next week, sorry!
      This seems to be quite the common problem though and might not be specific to my plugin.
      Apparently a fix is to create a dummy C++ class and convert the BP only project... however a big reason for turning this into a plugin in the first place was to make it easy to use in BP only projects, so that's not the greatest solution.
      I found this thread with many people facing the same issue and sharing solutions, so maybe this can be helpful until I figure things out on my end:
      forums.unrealengine.com/t/plugin-failed-to-load-because-module-could-not-be-found/472360/8

    • @Kamil_Horvath
      @Kamil_Horvath 7 หลายเดือนก่อน +1

      @@CobraCode Cool. Thank you so much 👍.

    • @CobraCode
      @CobraCode  7 หลายเดือนก่อน

      @@Kamil_Horvath
      Hey, I had the time to try this out myself.
      I built the 2D Action Platformer project from my Udemy course which also incorporates this plugin.
      I didn't have any issues when building or playing the game. The course also has about 500 students and I haven't had any reports so far of anybody facing the same issue :(
      So it seems this one is quite hard to debug and I'm not quite sure why it's happening on your end.
      You could join the discord (which you can find on my profile), create a thread there and @ me, so we can look into this more over time.
      I can also refund your patreon pledge if it doesn't work out!
      Just let me know.

    • @Kamil_Horvath
      @Kamil_Horvath 7 หลายเดือนก่อน +1

      @@CobraCode Hi there. I'll try joining the discord.
      It builds like normal. It's only when you try and play the build i makes an error

  • @RastoDM
    @RastoDM 8 หลายเดือนก่อน +2

    Thanks so much for this. I received a monolithic Engine.h Error and packaging fails. But realised it was still creating Folder with the Uproject.h and plugin. I made a test project and added it, and it seems to work. Would this cause any issues down the road?

    • @KevinRyborz
      @KevinRyborz 7 หลายเดือนก่อน

      I've got the same issue. It works in engine but as soon as I try to build it fails...

    • @RastoDM
      @RastoDM 7 หลายเดือนก่อน

      Thanks for the heads up. Ive been using it but i don't really build and test. But will know what to look out for.@@KevinRyborz

    • @tuwumuch
      @tuwumuch 5 หลายเดือนก่อน

      could you explain this in detail? About the Uproject.h

  • @gami2406
    @gami2406 4 หลายเดือนก่อน

    Hey, I love how you explained everything in detail, I learned a lot from that ! But I have one question, how would you go about using it in a C++ class ? I'm defining the AsyncRootMotion class in my OnBegin event, call the activate method but nothing is happening.. Could you explain why ?

  • @FrancoSerrao
    @FrancoSerrao 4 หลายเดือนก่อน

    what about the other Apply Root Motion GP Tasks?

    • @CobraCode
      @CobraCode  4 หลายเดือนก่อน

      You could recreate them in a similar way to the one featured here

    • @FrancoSerrao
      @FrancoSerrao 4 หลายเดือนก่อน +1

      @@CobraCode yeah I was thinking that with what you provided that it would be similar. I’m super grateful for this one btw though. I don’t know much cpp but I think if I really focus on it I could get it

  • @Kamil_Horvath
    @Kamil_Horvath 8 หลายเดือนก่อน +2

    Half of my brain is going "I want good thing for free" and the other half is going "This looks absolutely incredible how is he not charging more for this!". Safe to say, I'm a patron now 😅.
    I would however really like to know if there are any restrictions or conditions on what it's allowed to be used for. For example:
    Can i make money on a game where i've used the plugin?.
    Do I have to pay you a fee to you every time i make money off set game?.
    Am i allowed to back it up privately on a google drive?.
    Is a listing in my game's credits preferred or necessary?.
    What name should i put in the credits of my game?.

    • @CobraCode
      @CobraCode  8 หลายเดือนก่อน +2

      Hey, thank you so much!
      Thanks for mentioning all of this.
      I knew I wanted to create a license.txt to make all of this very clear, but totally forgot about it!
      Will try to add that to all of the plugins some time tomorrow to make it very clear and legally binding.
      It's gonna be something similar to what I have for my templates.
      ======================= Project File License ============================
      Created by @CobraCodeDev
      For Patreon supporters only.
      You can use this template for your commercial and non commercial projects.
      Credit is not required but appreciated.
      You can not share, redistribute or sell this template!

    • @Kamil_Horvath
      @Kamil_Horvath 8 หลายเดือนก่อน +1

      @@CobraCode What happens if i stopped my patreon subscription or downgraded to a lower one?

    • @Bloodyshinta1
      @Bloodyshinta1 8 หลายเดือนก่อน +1

      @@Kamil_Horvath i think he means as long as you aquired the plug in legally through the patreaon you're free to use it.

    • @CobraCode
      @CobraCode  8 หลายเดือนก่อน +1

      Hey, you can of course keep on using it.
      I added all of that to the license.txt the other day!@@Kamil_Horvath

    • @Kamil_Horvath
      @Kamil_Horvath 8 หลายเดือนก่อน +1

      @@CobraCode Cool. Thank you so much for your hard work 👍

  • @VeryTori
    @VeryTori 7 หลายเดือนก่อน +1

    I'm trying to build a game with this plugin, but it fails almost immediately with this exception:
    Unable to delete Plugins\RootMovement_5.3\Intermediate\Build\Win64\x64\UnrealGame\Shipping (Unable to delete \\?\Plugins\RootMovement_5.3\Intermediate\Build\Win64\x64\UnrealGame\Shipping\RootMovement)
    (part of the file location taken out for security reasons)
    Right before that, it says its cleaning binaries

    • @CobraCode
      @CobraCode  7 หลายเดือนก่อน

      Hey, sorry about that, not quite sure what's going on there.
      I managed to build a project with this before.
      I guess it might be a difference in operating systems and the built and intermediate files don't match.
      Can you try going into the RootMovement_5.3 folder and deleting the Intermediate and Binaries folder?
      This should trigger a recompile.

    • @VeryTori
      @VeryTori 6 หลายเดือนก่อน +1

      I eventually fixed it, but I don't remember how I fixed it. I probably deleted my project files and reconfigured it, if I had to guess.

    • @CobraCode
      @CobraCode  6 หลายเดือนก่อน

      @@VeryTori Thanks for the update!

  • @GameDevAraz
    @GameDevAraz 8 หลายเดือนก่อน

    ho to add this to my playlist?

  • @lawnmower16
    @lawnmower16 5 หลายเดือนก่อน +1

    Everything was working great until I tried packaging the plugin and then it just kept failing. Your videos have more than earned my patreon subscription at this point though haha so I guess I'll just do that

    • @CobraCode
      @CobraCode  5 หลายเดือนก่อน

      Thank yo so much :D
      Sorry but not quite sure what's going on there.
      When it comes to compiling C++ there can be a lot of issues with Visual Studio and if the class names don't match there's gonna be issues too.
      Might need some more trial and error.

  • @TheGreatKawaiiOne
    @TheGreatKawaiiOne 5 หลายเดือนก่อน

    I can't seem to package the plugin without getting a "Package Plugin Task failed" message. I've reinstalled Visual Studio several times over now to no avail. Is this a common issue?

    • @CobraCode
      @CobraCode  5 หลายเดือนก่อน

      Sorry to hear that.
      I'm not familiar with that error in particular... but yeah once visual studio gets involved there's a lot of potential for things going wrong :(

    • @TheGreatKawaiiOne
      @TheGreatKawaiiOne 5 หลายเดือนก่อน

      @@CobraCode Ah, I figured it'd be something along those lines. Love the tutorials, thank you for the response.

  • @AtificialSoulsGaming
    @AtificialSoulsGaming 6 หลายเดือนก่อน

    I'm not able to find "Apply root motion constant force"

    • @CobraCode
      @CobraCode  6 หลายเดือนก่อน

      The node is not available by default and in this video we actually create that node, so please watch again slowly and make sure you don't miss a step.

  • @KevinRyborz
    @KevinRyborz 7 หลายเดือนก่อน

    I followed the creation of the plugin and it works in engine, but when I try to build the plugin I get the error: "Monolithic headers should not be used by this module. Please change it to explicitly include the headers it needs."
    So I cant use it in any other project. Building the project also fails because of this. I tried to change "Engine.h" to "Engine/Engine.h" but same error...

    • @VinoVenitas
      @VinoVenitas 6 หลายเดือนก่อน

      I got the same error ... any solution?

    • @KevinRyborz
      @KevinRyborz 6 หลายเดือนก่อน

      sadly not..@@VinoVenitas

  • @tuwumuch
    @tuwumuch 5 หลายเดือนก่อน +1

    Hmm I'm getting packaging error :( any known fix? So I've also tried doing the external package thing
    th-cam.com/video/e3gXGP8hBgs/w-d-xo.html from this tutorial. Still says build failed.
    I wasted about 4 hours on trying to figure out and no luck lmfao fml.
    What version of Visual Studios are you using?

    • @CobraCode
      @CobraCode  5 หลายเดือนก่อน

      Hey, I'm sorry to hear that.
      Sadly once visual studio gets involved there's a high potential of bugs and errors specific to your machine that are gonna be hard for me to help with.
      I'm using Visual Studio Community 2022 version 17.9.2

    • @tuwumuch
      @tuwumuch 5 หลายเดือนก่อน

      @@CobraCode Damn I see, I've tried other versions of UE as well but no luck. I'm gonna have to try with a different PC.

  • @TUKMAK
    @TUKMAK 5 หลายเดือนก่อน +1

    bro why are you the best? why are you so handsome?

    • @CobraCode
      @CobraCode  5 หลายเดือนก่อน

      Thanks.... I guess xD

  • @klovvin
    @klovvin 8 หลายเดือนก่อน +1

    GAS is where it's at 💯 gotta bite the bullet and learn it

  • @hoodeez
    @hoodeez 6 หลายเดือนก่อน

    you chose c++ just to make everyone start completely over

    • @CobraCode
      @CobraCode  6 หลายเดือนก่อน

      What do you mean by that?
      Sadly the function to use the root motion movement isn't accessible in Blueprints, so doing it in C++ is the only way for this.

  • @mileshodge3477
    @mileshodge3477 8 หลายเดือนก่อน +2

    This video just to sell us a plugin?

    • @CobraCode
      @CobraCode  8 หลายเดือนก่อน +5

      No, you can create the plugin yourself if you just follow all of the steps in the video.
      Actually getting the packaged version of the plugin through patreon will only save you time, that's all.

    • @mileshodge3477
      @mileshodge3477 8 หลายเดือนก่อน +2

      @@CobraCode you knew what you were doing. No one came here to code a plugin.

    • @CobraCode
      @CobraCode  8 หลายเดือนก่อน +15

      ​@@mileshodge3477
      I was trying to teach actual problem solving skills. I'm even showing how to work with the UE source code and find what you're looking for.
      There is a huge misunderstanding in UE when it comes to plugins and your comment of 'nobody came here to code a plugin' shows that.
      Plugins in Unreal engine are THE WAY TO GO to actually make reusable and stable features. This is something that EVERYBODY should do and that was also part of what I wanted to teach here.
      I also provided all of the C++ code needed as a snippet.
      dev.epicgames.com/community/snippets/3Gdz/unreal-engine-exposing-root-movement-to-blueprints
      If my goal was to maximize patreon membership that would be a really stupid thing to do, wouldn't it?
      Many people have asked for project files on patreon and providing a nicely packaged version of this was just the cherry on top for people that want it a bit more convenient and WANT TO SUPPORT the channel.

    • @Kamil_Horvath
      @Kamil_Horvath 7 หลายเดือนก่อน +5

      " I want free stuff. Why you no give me free stuff 😤"

    • @benilapit
      @benilapit 7 หลายเดือนก่อน +5

      Dude he literally shows you 100% how to make it yourself. If not then cough up some money. You realize how much effort he put into not only decoding and creating a plugin but also creating a video to show YOU how to do it.