Page MenuHome

The ghost bones do not appear
Closed, ArchivedPublic

Description

System Information
Windows 7 Home Premium
GeForce GTX 750 ti

Blender Version
Blender 2.80, 2826c2be545e, 2019-01-12

Short description of error
The ghost bones do not appear when the "Frame Range" field changes.

Exact steps for others to reproduce the error
1 - Create an armature with 2 or more bones.
2 - Make an animation with the bones.
3 - Select the armature and change the "Frame Range" field in Properties -> Object data -> Ghost -> Around Frame

Details

Type
Bug

Event Timeline

Jacques Lucke (JacquesLucke) triaged this task as Confirmed, Medium priority.

To me it looks like this Ghost feature is not working at all currently? Is there any reason why you need "2 or more bones" to reproduce this bug?
Do the other Ghost modes ("In Range" and "On Keyframes") work for you?

Hi! To me both modes are with bugs. I said in 2 bones or more because I tested it in Blender 2.79b and with only one bone it did not show the ghost.

Ah I see, maybe there was a bug in 2.79b as well then. Could you prepare a simple .blend file that shows the issue? Just to make it easier to reproduce the issue for others.

Of course! But I did in linux, where I am there is no Windows.

Looking at the code it seems like this property is deprecated since 6 years at least.
@Brecht Van Lommel (brecht), do you know why e.g. the ghost_step property still exists even though the comments say it is deprecated for such a long time already?

@Jacques Lucke (JacquesLucke), indeed, ghost_step should be removed since it has done nothing for many years. I guess this comment was added during 2.5 development with the intent of updating/replacing it, but that never happened.

@Brecht Van Lommel (brecht), actually, in Blender 2.79b, ghost_step is still doing something...

Should the whole "Ghost" panel be removed? Looks like all the properties are deprecated..

I'm not sure it's really deprecated, since those are comments from 10 years ago. @Joshua Leung (aligorith) would know what the status is here I think. Maybe ghost drawing needs to be restored in 2.8, and the comments updated?

The plan here was initially that we'd move all the ghosting settings out of armature into the bAnimViz ones, so that, like Motion Paths, we could have the same set of functionality available for both Objects and Armatures/Bones. That is why they were marked as deprecated. (Unfortunately, within about a month of doing that, "Life" (TM) happened and I didn't get around to putting in place the necessary changes then)

In practical terms though, I'm under the impression that the armature ghosting feature hasn't proved to be quite as useful as we'd initially envisioned. Specifically, the problem is that most modern Blender rigs aren't really set up in such a way that showing the ghosts is really of much benefit, as they mostly only show wireframe controllers (i.e. at the endpoints of bodyparts, instead of being crude representations of the bodyparts themselves), making the ghosting not that useful for visualising how the silhouettes change over time. Geometry-based ghosting however would be nice (and is indeed something we'd love to do at some point - animators like/want it, we want it, and we were discussing how it could be done during codequest), but poses a whole bunch of interesting problems.

Perhaps the animators in the studio can offer a bit more insight into whether the bone-only ghosting had any use at all?

No one seems to be using the ghosting currently, or really considered it. Performance is really poor and it doesn't work correctly with the depsgraph, so difficult to judge.

Since it's really broken in 2.8 and even 2.7 for non-trivial rigs, I suggest to remove it from the UI entirely.

Honestly, I use more in 2d animations, it's not an essential tool for me, but it helps in a few moments. Really, ghosts based on geometry would be interesting! I adapted using custom shapes to help in the silhouette, because my focus is to use sprites in the bones on Unity3D. Another thing, I think it would be interesting to have an option to recursively show the ghost bones, for example: with the "Selected Only" and "Recursive" options activated, selecting only the shoulder bone, you would see the ghost silhouette of the whole arm. But I understand if this tool needs to be removed. Thank you!

I'm not sure it's really deprecated, since those are comments from 10 years ago. @Joshua Leung (aligorith) would know what the status is here I think. Maybe ghost drawing needs to be restored in 2.8, and the comments updated?

I guess its cleaner to have this ghost feature as an addon.
It would be easy to implement using the new draw api.

The drawing is the easy part, it's efficiently evaluating the pose at many frames that is complicated.

The animator doesn't need to see the whole path all the time, its like onion skin, so this could be solved by limiting the number of frames evaluated, adding a start_clip and end_clip, maybe even with a pretty fading gradient.

I guess evaluating F-curves is not that slow but evaluating an object/rig with constraints may require a complete scene update, but since most of the time animators use this feature on IK controls we can add an toggle for disabling constraints evaluation and only evaluate the f-curve during the path drawing.

Brecht Van Lommel (brecht) closed this task as Archived.Mar 8 2019, 5:14 PM
Brecht Van Lommel (brecht) claimed this task.

Ghosting functionality was removed.