godotengine / godotengine/godot
AnimationNode.blend_input time parameter is ignored when not seeking.
- Dominant language
- C++
- Stars
- 117k
- Forks
- 26.8k
- PR merge metrics
- PR metrics pending
Description
### Tested versions
- Reproducible in `4.3.dev6`, `4.3.beta1`, `4.3.beta3`, `4.3.rc1`, `4.3.stable`, `4.4.dev3`
- Even more broken in `4.1.4**`, `4.2.1.stable**`, `4.2.2**`
- Not reproducible in `4.2.stable`, `4.3-dev4`, `4.3-dev5`
- Not reproducible in `4.1.3.stable*`, `4.1.4-rc1*`, `4.1.4-rc2*`, `4.1.4-rc3*`
`*`: Mesh is broken in this version.
`**`: This version is even more broken, animation reverses when not seeking. Mesh is also broken
### System information
Godot v4.3.stable - Ubuntu 24.04.1 LTS 24.04 - X11 - Vulkan (Forward+)
### Issue description
AnimationNode.blend_input has a time parameter which advance the connected input node when passing seek == true.
When connected to an AnimationNodeAnimation, passing seek == false, the time parameter is ignored, the connected node not only does not advance, but the time parameter has no effect.
https://github.com/user-attachments/assets/ba88b9b3-cc3a-42c1-9396-f1cb8a32b13c
### Steps to reproduce
In the MRP:
- Open Main.tscn - Select the AnimationTree - Tab into the AnimationTree editor - Select AnimationNodePass
- In the inspector, uncheck `force_seek`, and modify `additional_blend_input_time` to observe that the `time` parameter has no effect.
### Minimal reproduction project (MRP)
[mrp-non-seeking-blend_input.zip](https://github.com/user-attachments/files/17293916/mrp-non-seeking-blend_input.zip)
Contributor guide
Research direction
Start by opening the attached MRP and following the steps in Main.tscn: inspect the AnimationTree, AnimationNodePass, force_seek, and additional_blend_input_time settings. Reproduce the non-seeking case and trace the AnimationNode.blend_input behavior; done means the time parameter affects the connected AnimationNodeAnimation when force_seek is unchecked.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- game-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100