Quick note that I forgot to include in the video. Set the "Default Blend TIme" in the Animation Player to 0.1 to get smooth transitions between states.
Just like you say in your channel description: Your videos are straight forward and to the point! Great for Godot Beginners like me. First time I did not need to speed up a video tutorial. And please keep your cool accent, it gives your Channel an individual touch.
Thank you for the kind words! I am doing speech excercises to improve my voice quality in general, but I love my accent and agree about the unique touch it brings to the channel, so no worries. It's here to stay. :D
Simple and precise with animations. Point of fact with complication to the bone structure but simple feature's for Animation and thankyou Game Endeavor ✔
Yo man thanks for the snappy little tutorial, very well done and I appreciate how you shared all of the aspects of how you got to where you did [using the square to line things up, that's kind of background stuff that I think other people leave out of their tutorials/systems when explaining without really realizing it.]
I came across this channel a few days back while looking for some support for building a State Machine. Really love the videos and the detailed way you explain why you do what you do. Going back through and watching them all. Looking forward to more Godot tutorials in the future :)
Thanks. :D Yeah, the state machine video did quite well. My goal with it was to help people understand state machines in as simple yet practical way as I possibly could. Given how well the community has taken to it, I'd say I succeeded. :) It's one of my favorite videos so far. I'm glad you like the channel and that you find them useful! More will be coming very soon. I have some very good ones I've been working on over the past few weeks. :)
Thank you! You're the second person to say that I speak clearly. I figured my accent would be too thick for people to effectively understand me. Good to know that isn't the case. Thank you for subscribing.
Wow! Some of the most information packed 6 minutes and 36 seconds on the Internet! :) Definitely subbed. New to Godot, and art. Bit of experience as a junior dev (intern) and about 4 years training in C/C++ (and 40 years as a prof before that). This method you show is fascinating and effective and I'm definitely going to take the time to slow play/pause through the whole video to get the full value. Even if I don't go with this particular technique for animating, this seems like an excellent exercise to learn more about how Godot's animation features function and make digging through the documentation more engaging. However, with all that said, a couple questions: (1) Would this method be effective for a top-down 2d pixel art game along the lines of Stardew Valley (in terms of game mechanics and look and feel, not content or themes); (2) Are there other methods I might want to consider? For example, with respect to (2): Aseprite has fairly rich animating functionalities, and I have not yet determined whether aseprite files can be imported in some way (although I have impored .png texture files for 2d sprites.
Oh, so much to learn, I see that I need an AnimationPlayer Node, but how do U add an animation there... let's look at a tutorial. And.... you just jumped it. Somehow you managed to create a tutorial for people who don't need one.
Can you link to where the artwork for the bear is found? Can you do a tutorial on how to create a character in the cut out animation style? I tried searching the net but didn't find how's to create that kind of art.
always great, thanks for the video. I think it would be cool if Godot had a character hub tool like RPG Maker. You basically choose parts to make up the character.
Thank you for watching. :) That kind of thing works with RPG Maker because most games made with RPG Maker have a similar style. Such a thing would be impossible with Godot seeing as how there's not one targeted genre or style. The possibilities are far too expansive for such a thing to be practical with Godot. That said, doesn't mean such a thing couldn't be a non-engine related tool. In fact I'd almost guarantee that such things already exists, and I seem to recall GameFromScratch doing a video on a community driven one. I don't recall the name though.
@@GameEndeavor Thanks for the extended feedback, I would think it's possible to create a plugin that does such a thing, even if much effort. I will check on GamesFromScratch, there probably is a tool out there. I think I remember seeing one at one point.
Helpful hint: If you scaled your player, you have to set the scaling this way: if(starting_point.x < path[0].x): $Torso.scale.x = abs($Torso.scale.x) if(starting_point.x > path[0].x): $Torso.scale.x = -abs($Torso.scale.x) $Torso is the parent-node of my character.
Any ideas how you might add a squash and stretch to this? I can think of using the transform property, but I cant think of any "warp" like property in godot analogous to Photoshop or whatever.
I don't, no. :) I don't use squash and stretch that often unless it's part of the animation or as placeholder for telegraphing. Personally not keen on the style.
@@GameEndeavor thanks GE! i was able to do it but the game crashes when i try to move forward. after adding $animationplayer.play("run") its tells me node not found (relative to root/world/player) my previous movement actions were scripted in a previous scene. do they need to be all in the same scene to be found? thanks for your time!
By setting scale.x to the sign() of the direction the player is moving. I plan to do a video on my player controller in the next couple of videos where I'll show exactly how.
By flipping the scale.x of the rig node. You can find an example of this in my player controller video: ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-7JCRpY3biZg.html
Is there any reason why you don't just use the 'is_on_floor' function (inherited from KinematicBody2D) instead of ray-casting to avoid the initiate-jump-in-air case?
When this video was made, using `is_on_floor()` didn't work with slopes. This was my attempt at addressing that. Now that we have `move_and_slide_with_snap()` I no longer use the raycast method. In fact I advise against it as there's a bug where you get extra jump height if you jump then jump again, due to being grounded before hitting the ground.
How did you make the character run to the left? From what I see you only do animation for running to the right. Is there a best way to make mirrored animation?
I just scale the rig on the x axis to -1, it inverts the sprites. :) You can see this done here if you need it: ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-7JCRpY3biZg.html
@@GameEndeavor I guess I don't quite understand how to do that. I have a scene that is just a single 2D node with polygon and skeleton children I made watching this tutorial. I have a separate scene with physics and a level, but I need to replace my placeholder sprite of that scene with the rigged character and I don't know how to do that. I can't simply copy the nodes from one scene to another and I can't find a way to import the character rigging scene into another one. Edit: I just found the "merge from scene" button. Should be good now.
Nice tutorial! Can you please help me? I've ran into a problem when trying to animate my character like you did - when I open the AnimatePlayer menu and then click on the sprite I want to move/rotate etc, the AnimatePlayer window disappears and any changes I do to the sprite while the window is not present revert as soon as I select the AnimatePlayer object again.
That sounds familiar. There used to be an issue where the animation window would hide while you were animating, but I never had issues with it reverting unless you click the time in the animation window. However I haven't noticed this issue in a long time, or I've gotten used to it. Try clicking the `Animation` tab at the bottom of the editor when it happens? It should bring the window back up. Beyond that I wouldn't know. I suggest you join Godot's Discord server and ask there, perhaps there will be someone there more knowledgable as to what's going on.
@@GameEndeavor Thank you for a quick answer. The window indeed stopped disappearing after I clicked on the animation button, but even with it active if i do not change the parameters manually in the inspector, any changes I make while dragging or rotating sprites with my mouse reset as soon as I try to play the animation. (Yes, those parameters are in the animation track and yes, the keyframes are there as well) I will try and talk to someone on their discord server, thank you.
@@elgatodelamuerte Any time. :) Hope you get it sorted out. Just to be sure, when you modify the rotation or position of the sprite, you have to rekey the property. Unless you're using the auto-insert feature (car icon at the top in the toolbar).
Yes, but I've found it to be a little tricky. For example it doesn't work so well with blending in my experience. The frame lags a little. I really like blending though because it makes the cutout animation look so much smoother. Also you have to deal with making sure your frames are consistent from animation to animation. ie if you use a frame in the idle animation, but change it in the run animation, then when you change back to the idle animation you need to make sure that the frame changes back, otherwise it'll have the frame used in the running animation. This may be easy to achieve with the AnimationTree's StateMachine, but I'm not well versed enough in it yet to say for sure. Still studying that node.
@@GameEndeavor Okay thanks, when I have the limbs as a child of the torso, the torso is on top of everything. How can I still keep the torso as a parent while changing the depth of the limbs?
I can't find it either. So what I did was work with bezier curves... but boy did that make my life hell! Whenever I added a key in between or had to move keys (e.g. when trying to make the arms swing before the legs) everything got messed up and it would take me tweaking the curve over and over again. EDIT just realised it's still there. you have to select a key (when not using bezier curves) and check the inspector on the right. there is an easing window with a curve
I don´t get how I kan make body parts like the right arm or leg be behind the body. The link in the deskription says with "RemoteTransform2D" but when I use it that way I understand it, it make nothing rotade in a circle or make othe strange things but it don´t go behid the body. Can someone help me with my problem?
With the sprite selected, under CanvasItem Visibility, there's a checkbox for "Show Behind Parent". Select that. The link in the description is for how to set up inverse kinematics, so that joints move with each other when you reposition them. So it's not related to that.
@@esben181 That won't work if you have two of these rigs overlap. Say Rig1 is in front of Rig2. Rig1's arm and leg would go behind the body of Rig2, because their bodies are on the same z-index but both of their arms and legs are on the layer behind.
@@GameEndeavor, yeah. That's what I figured. But, the rectangle should follow the body movement, right? This means we're kind of manually moving a KinematicBody2D object without using native physics functions like move_and_slide. I wonder how that would break collisions with other physics bodies you happen to collide with along your way as this "hard-coded" movement implies infinite inertia.
@@rafaelgpontes if you're referring to the up and down movement then no, the collision doesn't move with that. The collision stays on the ground and just the sprites move up and down. Even if you were to move the shape, it'd just fall back to the ground.