#animationtree
Explore tagged Tumblr posts
omeletcat · 2 months ago
Text
ALlright i'm coding again!! I'm trying to finally fix this stupid ass animation system i have, because it is FILLED with stupid glitches.
When going up a ramp there is sometimes a glitch, not even always!? which makes it very weird Going up ramps feels stiff, going down them feels stiff and the whole thing is run through a bunch of if statements, its awfull SO IM FIXING IT
by first using an animationtree to make all the curved animations work and move smoothly between!! thats the most important thing right now.
7 notes · View notes
jil-hue · 9 months ago
Text
Tumblr media
Update on untitled goblin game
Inventories are hell. I have basically no idea what I'm doing. And I don't trust arrays and resources because my brain is not built for them.
For now it's working, but there's so much I need to figure out before expanding into crafting, gathering etc.
I decided to do something else and set up version control. Now I feel like I just discovered a lovecraftian horror and the experience is burned into my soul, slowly affecting me with it's tenebrous state of devouring my innermost knowledge.
Oh and the other day I rearranged my project folder and broke all animations. ALL. Redid them in the same animationplayer, fiddled with the animationtree, deleted both nodes and created them new. Redid all animations again. But now everythings neat and tidy and I'll never touch it again.
16 notes · View notes
dmonet-macitan · 1 year ago
Text
by separating your camera and view model animations in blender, you can blend them back in godot with an animationtree. you can easily filter out the camera animations for accessibility this way
7 notes · View notes
20mice · 5 months ago
Text
Boss Rush Jam 2025! Devlog #1
We've got a bit of progress!
I think I'm making 'behaviour trees' here. Got midway through writing my own buggy state machine logic when I remembered godot has the animationtree. Seeing as state machines are so visual I think this is easier. I set up a state machine that transitions on animation end, or immediately if a condition is met. Then I have a script change condition variables. It's pretty simple and elegant so far!
Tumblr media Tumblr media Tumblr media
3 notes · View notes
xtekker · 2 years ago
Text
Godot Game Development
Well, guys and girls, ladies and gentlemen of all ages, We did it.
We fixed the Animation problem completely.
Tumblr media
This is what the characters look like now, minus the AnimatedSprite2D. The animation player holds all the animations and controls their duration and some other stuff and the AnimationTree holds everything else. Including this bad boy:
Tumblr media
Which, on first glance looks like a cluster fuck and it does take some deconstructing to understand, here's whats happening here:
Idle is our default begining animation, it plays on load of the player model, from Idle you can do one of the following: Idle > Walking, Running, Jumping and back again so: Walking, Jumping, Running > Idle and this just means the animations will return to the idle state when animation has ended or player has stopped trigging it. From any of the movement animations, you can move to the attack animation, which can also return to one of the animations based on player action, for example, If I went from attacking to walking, the tree would return to walking after the animation for attacking has ended.
and after setting up the conditions for the animations, this is how we tell the state machine what state the player is in
Tumblr media
Initally, I did run into a bug with the if velocity statement triggering conditions when attacking/hurt/dying and thats because at that point they have no velocity so that idle statement is true, I solved this by creating an is_animated variable, which (edit at 2am now I've thought a about it some more: Turns out to be a waste of time, it worked as intended that isnt the issue but i could of used input is action released and got the same result.)
I honestly had a blast doing this, it was challenging, there were issues that needed a solution and I still accomplished what I set out to do.
11 notes · View notes
nine-nine-lines · 1 year ago
Text
Ark of Corruption Dev Blog 1
This'll be the first development blog post for my new programming project, Ark of Corruption (name pending)! How exciting!
This'll be the first development blog post for my new programming project, Ark of Corruption (name pending)! How exciting!
Project Description:
Ark of Corruption is going to be my attempt at a NSFW furry p*rn game (I obviously won't be able to post the naughtier parts here). It'll star a dingo paladin who has to navigate lusty, corrupting enemies on their way to face off against an invading alien presence.
Progress Thus Far:
Even though this is the first dev blog post for the project I've been working on it on and off for about two weeks. I've been following the Action RPG Tutorial by Heartbeast on Youtube to get off the ground with Godot (I'm using 3.5 right now). It includes a lot of features I was already planning on including so was a perfect find for my project.
As of today I've officially finished up that Youtube series and have begun to work on my own sprites, code, and design! That's whats getting me to post about my own progress from here on out!
Things I Learned from the Tutorial Series: -Displaying animations with AnimationPlayers/AnimationTrees/AnimatedSprites -Setting up hitboxes and hurtboxes with prefab scenes that can be attached to anything -Learned about state machines and how to keep the player and enemies in discrete states -Coded a detection radius prefab scene that can be attached to any enemy -Created an enemy unit that has soft collision to push other enemies out of its way -Used tilemaps to set up level design of visual and collision elements on a scene -Used animation tracks to call functions, edit properties, and make sounds
Progress Today:
Today I managed a lot! Very productive day.
Tumblr media
On a coding level I made the dodge roll deactivate the collision hitbox, effectively making the player immune to damage during it. I also managed to create a placeholder image for the Holy Blast ability, code its instantiation, and make it move properly across the screen. The player can now use Holy Blast to damage enemies from range! It also is properly incorporated into the FSort so it doesn't show from behind objects. I ran into some issues making it collide with the environment, but I learned to use enter_body signals when dealing with non-Area2D collision elements.
Art-wise I spent a lot of time iterating on some pixel art that I worked on last week. I had originally designed the pixel art of the main character based off of some art that @Switchbit did for me. Today I started animating some that original idea into the four-way walk cycle (with all armor still on). I still need to animate the sword swing, dodge roll, and holy blast.
Tumblr media Tumblr media
I also knocked out a simple set of slime animations--one for movement and one for idling. I used the tutorial's code for Bat enemies as a base, made some adjustments and included a slime enemy into the game! It has slow movement, low friction, and should make a great first enemy.
Ultimately, I'm very happy with progress today. Looking forward to doing more next week. But Destiny 2's new update is going to put my free time to the test hahah.
1 note · View note
doggo-game · 2 years ago
Text
30/03/2023
I finally started using godot 4 but before i jump into Doggo World and converting that I’ve been trying to make a smaller game for it for once just to get used to it let alone godot itself again
1 note · View note
codedhis · 5 years ago
Text
Cat #2
My code was a mess, so I decided to do a fresh start. 
First of all, I used a different state machine, this time made by Game Endeavor
youtube
My states would be:
Idle
Walk
Sit
Attack
Jump
Fall
Wall slide
Wall climb
Animations
I re-did the animations. The cause of the glitches was that when changing keyframes, the collision shape changed sizes, so when it hit the wall and transitioned to the climb animation, the new shape didn’t touch the wall and so on. I still need no work in this because sometimes it jumps through things or gets stuck.
youtube
I also used an AnimationTree, which is explained in this video:
youtube
It allows me to create states machines like this one (it doesn’t have to match the character state machine)
Tumblr media
(Note: I added states for the example, I don’t have all of these). It allows you to pass a direction vector and the AnimationTree sets the animation for you (for instance, you can setup an animation for walking to the right and another for walking to the left). It also handles transitions, If I’m playing Idle animation and I ask it to play the attack animation, it will first sit, then attack. 
New features
Prepared jump
Now if I hold the jump button while standing, it will start charging a more powerful jump that allows him to jump further or higher on release. For this I made a class that stores the players old jump variables and replaces for them by the buff (which is depends on how long you press the jump button), then I use another method to restore the original values after exiting the jump state.
Tumblr media
Wall sliding and wall jump
This isn’t new, but now it works :P
I added small raycasts to detect walls (is_on_wall has problems, it requires to constantly push against the wall or it returns false sometimes, it is only helpful in the first collision)
Tumblr media
When it hits a wall while jumping or falling, I move to a wall_slide state. 
Note: I only have the raycasts enabled in the states I use them, and they only check for objects in the walls layer. I have a layer for the player, another for the items, one for the climbable stuff and one for the furniture.
As long as it is in contact with the wall, it will play the slide animation and descent, but at a slower speed (decreased gravity 6 times).
When pressing the jump button and the button oposite to the wall, it will perform a wall jump, which is the same as a normal jump but I added more speed and height (not as much as the prepared jump) to it because it wasn’t enough.
youtube
2 notes · View notes
omeletcat · 1 year ago
Text
ALRIGHT this is th new way i will be using the animations in my game! i will create the animations within an animatedsprite2d then play those animations through an animationplayer and then access those animations with an animationtree!! this is WAY easier then what i used to do... i can't even explain it thats how much it sucked.
9 notes · View notes
20mice · 5 months ago
Text
Using Expression Condition in Godot AnimationTree
Tumblr media
Godot AnimationTree can change animation based on an 'advance' condition, and or an advance expression.
To use Advance expressions:
create a script on your AnimationTree node
create a variable in that script, eg. var x = 3
'Expression' can now use that variable in a true false expression, eg. x == 3
conditions can be set like so:
$animation_tree.set("parameters/conditions/name_of_condition", true)
There doesn't seem to be much documentation yet, but shoutout to Robin Lamb for explaining this so succinctly!
In retrospect these expressions are very simple, but still stumped me for a while, so I'm leaving breadcrumbs for next time.
youtube
1 note · View note