This is my fourth year participating in National Game Design Month. It's become an annual tradition that my family and I anticipate. I was actually a little disappointed that there are some other coincident events happening, such as Go Godot Jam 2 and GitHub's GameOff 2021. I suspect both of these will be more popular than NaGaDeMon, since they are backed by larger, established communities and organizations. I wish them the best in their events, but there's something about the ideological purity of NaGaDeMon that calls to me. NaGaDeMon doesn't care how you version your code, what engine you use, or if you use an engine or code at all. The elegance of make, talk, play is a wonderful framework on which to inspire people. Maybe we need NaGaDeMon evangelists participating in those other events to help them see that there's a bigger tent that we're all in.
I came into November with just a few scattered ideas. One of them was that I had never made a 3D game in Godot Engine, and this might be fun to do. A recent GDQuest video pointed me to the KayKit asset collections. Looking at these inspired my son as well as me. I had assumed, since they were given GDQuest's blessing, that they would be straightforward to incorporate into Godot Engine. After some time, I was able to put together an integration of Kay's animation pack and dungeon pack as described in an earlier blog post. Unfortunately, after several more hours of tinkering, I ran into several more problems, which I've documented in an issue in my test repo.
Now along the way, I did get a playable toy working. I recently introduced my kids to Rogue Legacy, and so I was thinking about action platform games with powerups and procedural generation—not that I would necessarily get that far, but that's where my mind was. Here was my first test:
It is pretty basic GodotEngine KinematicBody stuff there, but look closely and you can also see that there's smooth blending between the idle and running animations. Continuing to work along these lines, I was able to get a skeleton that could be knocked down.
The next logical step was to work on jumping, which resulted in the following results.
Behind the scenes here, I had several surprises, not even counting the trickiness of getting the models and animations to work well together. I've made dozens of games, most of them being very small, and I've never made a 3D-rendered platformer before. It's not even clear that I was actually making that, really: I was just messing around. However, I found myself surprised at what I did not account for intuitively. Here are two particulars:
- I originally was using a jump animation that included a little crouch before lifting off. It looked great, but how exactly will this interact with the attack animation? Should the player not be able to attack while crouching? If they can still attack, will they still launch upward at the same time they would if they did not? Does it make sense to blend just the arms' attack animation while using the body's jump animation, even though the result would be that the sword doesn't have the same reach as when attacking on the ground?
- What exactly happens when you go left? In 2D, you can get away with just flipping the sprite, but with 3D models, you really need to turn them. What happens if you start a jump or attack in the middle of turning? Or are these not allowed?
No comments:
Post a Comment