Accelerated Movement (also version display)
3D Movement
What a fun little misery. My earliest founding memory of 3D movement in games would be Banjo Kazooie, and Spyro. In those games (old as they are) there were fundamentals of 3d navigation in video games. 1: Make the camera direction influence the input -> character direction, and 2: Provide realistic weight by dampening the input (acceleration). As the technology progressed special animations were able to inserted, further representing to the player that they cannot turn full-speed in the opposing direction. They must first decelerate with a scooting animation, then resume travel with a "stepping in" animation.
The last week or so of commits to my project have been diagnosing this. At first I was going to ignore acceleration and allow the game-like charm of non-realistic immediate movement. It could even blend in well with the low-poly aesthetic. I then encountered the issue with the Wolf Dodge feature. I wanted to be able to accurately provide a dodge pose depending on what direction the player dodges in, in comparison to the direction they were traveling/facing. So a wolf running straight forward would have an arched "c" shape when suddenly jumping to the side. In retrospect, I could force this easier by recapturing a fresh input direction, and comparing it to the last frames velocity direction. For reasons I cannot now remember I decided instead to implement Turning Speed; as well as Deceleration from sharp turns and Acceleration for recovering from stopped positions and the newly imposed Deceleration.
`var x = too much`
`x` time later, I now have accelerated movement that only partially works (probably something about angles) and I didn't even originally need/want it. It was a fun learning process at minimum, and it could still have uses in some cases... Also there are now on screen visuals for representing the input direction, velocity, acceleration, and deceleration/drag. Those are kind of fun to learn from and look at.
Version Display
Since this project is `so so so * x` early, I'm not bothering with managing a version number. I found a great plugin that finds the latest git sha and tosses it into project-settings Git SHA Project Settings - IceFlower S . I also updated my push all script to set the version number on itch to the latest commit sha. That looks like this for those who want to set it up themselves.
``` #! /usr/bin/bash VERSION=$(cat '/home/matthew/Projects/Godot4/druid/.git/refs/heads/master') echo $VERSION butler push '/home/matthew/Projects/Godot4/druid-exports/project-druid-dev.apk' lettucepie/project-druid:android --if-changed --userversion $VERSION butler push '/home/matthew/Projects/Godot4/druid-exports/html' lettucepie/project-druid:html --if-changed --userversion $VERSION butler push '/home/matthew/Projects/Godot4/druid-exports/linux' lettucepie/project-druid:linux --if-changed --userversion $VERSION butler push '/home/matthew/Projects/Godot4/druid-exports/windows' lettucepie/project-druid:win --if-changed --userversion $VERSION ```
Also, thanks to bots becoming insanely advanced, I slapped the repo link with the commit version onto the bottom of the display. Not to function as a "this is mine" watermark, but more of a "this is where this came from", and a "yep that's right this is foss".
Files
Get project druid - in development
project druid - in development
Action/Adventure game inspired by Druid Character class. Targeted for Low End devices.
Status | In development |
Author | lettucepie |
Genre | Action |
Tags | Animals, druid, Fantasy, Magic, nature, Open Source, transform |
Languages | English |
More posts
- Let's try devlogging too (Wolf Run)Apr 27, 2024
Leave a comment
Log in with itch.io to leave a comment.