Auto-Merging keyframes in the Driver Editor has unappropriate threshold (merges keyframes that shouldnt) #112316

Open
opened 2023-09-13 09:41:28 +02:00 by jeroenb · 6 comments

System Information
Operating system: windows 10 & Linux ubuntu
Graphics card: GTX 1070

Blender Version
Broken: 3.6.2
Worked: unknown

See att. blendfile and pictures; moving the base of the armature in the Y direction drives the shapekey of the torus.
If you edit a driver keyframe by just slightly moving it to the right, the keyframe next to it is removed

Exact steps for others to reproduce the error
Try editing keyframes in the driver f-curve editor

Note
Drivers editor has the driver value as the x-axis (this can be arbitrary low, e.g. in the report, this was the x location [in meters] so handling quite small values where "keyframes" where ~0.01 apart

BKE_fcurve_merge_duplicate_keys acts with a threshold of BEZT_BINARYSEARCH_THRESH 0.01f

**System Information** Operating system: windows 10 & Linux ubuntu Graphics card: GTX 1070 **Blender Version** Broken: 3.6.2 Worked: unknown See att. blendfile and pictures; moving the base of the armature in the Y direction drives the shapekey of the torus. If you edit a driver keyframe by just slightly moving it to the right, the keyframe next to it is removed **Exact steps for others to reproduce the error** Try editing keyframes in the driver f-curve editor **Note** Drivers editor has the driver value as the x-axis (this can be arbitrary low, e.g. in the report, this was the x location [in meters] so handling quite small values where "keyframes" where ~0.01 apart `BKE_fcurve_merge_duplicate_keys` acts with a threshold of `BEZT_BINARYSEARCH_THRESH 0.01f`
jeroenb added the
Priority
Normal
Type
Report
Status
Needs Triage
labels 2023-09-13 09:41:29 +02:00
Member

Can confirm, will check.
Assume BKE_fcurve_merge_duplicate_keys does its job here (but probably shouldnt in the context of the drivers editor)

Can confirm, will check. Assume `BKE_fcurve_merge_duplicate_keys` does its job here (but probably shouldnt in the context of the drivers editor)
Philipp Oeser added
Status
Confirmed
Module
Animation & Rigging
and removed
Status
Needs Triage
labels 2023-09-13 09:56:30 +02:00
Author

Thank you Philipp for your respons.
Is there something that I can do myself, for instance editing something in the Blender data files on my PC that has to do with "BKE_fcurve_merge_duplicate_keys" that you mention?

Thank you Philipp for your respons. Is there something that I can do myself, for instance editing something in the Blender data files on my PC that has to do with "BKE_fcurve_merge_duplicate_keys" that you mention?
Blender Bot added
Status
Archived
and removed
Status
Confirmed
labels 2023-09-13 20:37:12 +02:00
jeroenb reopened this issue 2023-09-13 20:37:20 +02:00
Blender Bot added
Status
Needs Triage
and removed
Status
Archived
labels 2023-09-13 20:37:22 +02:00
Author

Sorry, accidently closed this issue

Sorry, accidently closed this issue
Germano Cavalcante added
Status
Confirmed
and removed
Status
Needs Triage
labels 2023-09-13 21:03:02 +02:00
Member

Thank you Philipp for your respons.
Is there something that I can do myself, for instance editing something in the Blender data files on my PC that has to do with "BKE_fcurve_merge_duplicate_keys" that you mention?

Well, for now, you can just turn this OFF
image

(I still think this should be OFF by default for the Drivers Editor, or we should be smarter about the threshold, for timebased fcurves this might make sense BEZT_BINARYSEARCH_THRESH 0.01f but for the drivers editor -- which can have arbitrary low values to handle as this report shows -- this should either be dynamic, or we should turn it OFF completely)

> Thank you Philipp for your respons. > Is there something that I can do myself, for instance editing something in the Blender data files on my PC that has to do with "BKE_fcurve_merge_duplicate_keys" that you mention? Well, for now, you can just turn this OFF ![image](/attachments/7209d7aa-42aa-4f60-b1d5-8ad208678343) (I still think this should be OFF by default for the Drivers Editor, or we should be smarter about the threshold, for timebased fcurves this might make sense `BEZT_BINARYSEARCH_THRESH 0.01f` but for the drivers editor -- which can have arbitrary low values to handle as this report shows -- this should either be dynamic, or we should turn it OFF completely)
Philipp Oeser changed title from Editing driver f-curve results in losing keyframes to Auto-Merging keyframes in the Driver Editor has unappropriate threshold (merges keyframes that shouldnt) 2023-09-15 10:33:20 +02:00
Author

Wow!
I convinced myself before reporting this issue that there was nothing in the UI that could switch off this behaviour!
And it is right there in front of my face!
I must be getting senile (I admit I'm turning into a rather old blender monkey) LOL

Thanks for pointing this out to me Philipp.

About auto-merging keyframes; it would make more sence to me if (when enabled) it would show an adjustable margin setting or something like that.

Wow! I convinced myself before reporting this issue that there was nothing in the UI that could switch off this behaviour! And it is right there in front of my face! I must be getting senile (I admit I'm turning into a rather old blender monkey) LOL Thanks for pointing this out to me Philipp. About auto-merging keyframes; it would make more sence to me if (when enabled) it would show an adjustable margin setting or something like that.
Christoph Lendenfeld added
Type
Bug
and removed
Type
Report
labels 2023-10-06 17:10:47 +02:00
Christoph Lendenfeld added
Type
Known Issue
and removed
Type
Bug
labels 2024-02-06 16:36:28 +01:00

putting this down as a known issue. I wanted to set the default of that setting to be enabled for the Graph Editor, but disabled for the driver editor.

Turns out they are the same thing so you can't modify one without modifying the other.

putting this down as a known issue. I wanted to set the default of that setting to be enabled for the Graph Editor, but disabled for the driver editor. Turns out they are the same thing so you can't modify one without modifying the other.
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
3 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#112316
No description provided.