Page MenuHome

Crash when clicking bones in pose mode with specific custom shapes
Closed, ResolvedPublicBUG

Description

System Information
Operating system: Windows 8.1 64-bit
Graphics card: GeForce GTX 860M - Driver Version: 416.94

Blender Version
Broken: 2.80, 196dbc0f314e, 2019-15-10 09:55

Short description of error
In the attached blend file, the crash is triggered by left clicking the 3D viewport in Pose mode.

Exact steps for others to reproduce the error
Click anywhere in the 3D viewport of the attached blend file.

It happens only in Pose mode in all shading modes, except for Wireframe view.

I isolated the 2 offending bones in the armature (eye.lookAt.L and .R) of the blend file, but left other bones as well for tests. They are using a custom shape object which seems to trigger the crash when used in a certain combination.

The bones can be selected in pose mode without producing a crash only from the outliner, or by changing to wireframe display, or in Edit mode.

Once the custom object (shape.eyeTarget) of any of the 2 offending bones is removed in the bone's Viewport Display by selecting each bone from the Outliner or in Edit mode and then switching back to Pose mode, the crash does not happen, even when the other bone still displays that custom shape.

Once the custom shape is removed from all bones as mentioned above, and the crash stops happening, it can be re-introduced by following these steps:

  1. First, add "shape.eyeTarget" as custom object in any of these bones: eye.lookAt.L, eye.lookAt.L.R, ARM.L or ARM.R
  1. Second, add "shape.eyeTarget" as custom object in the opposite "eye.lookAt.L/R," opposite "ARM.L/R," or in "eye.lookAt.Both," "ARM.pole.IK.R," "KNEE.pole.IK.R," or "KNEE.pole.IK.L"
  1. click anywhere in the 3D viewport in Pose mode

But the crash is not triggered if the custom shape is also added to any of the following bones before Step 2: ROOT, NECK, SHOULDER.R/L, SPINE.01/02, ARM.pole.IK.L.

The crash is not triggered either if before Step 2 you remove the custom object "shape.IK_sphere" from 3 of the 4 bones using it (KNEE.pole.IK.L/R, ARM.pole.IK.L/R).

The crash happens again if you only remove "shape.IK_sphere" from 2 of these bones, and then reintroduce "shape.eyeTarget" in any ARM or eye.lookAt bone.

Appending the problematic shape from another file can stop the crash if used only in a specific order mentioned below.

Crash does not happen if you:
A. Append the problematic shape from the bug_shape.blend while still in Pose mode
B. Remove the custom object shape.eyeTarget from both eye.lookAt.L/R bones (select them from the outliner so that it doesn't crash) (*)
C. Switch to Object mode
D. Select shape.eyeTarget.001
E. Switch to Edit mode, select 2 edges and bridge them with F or the Edge menu. Just moving or removing vertices will not work. A face must be created somehow.
F. Switch to Object mode
G. Select the armature
H. Switch to Pose mode
I. Add shape.eyeTarget.001 as custom object in both eye.lookAt.L/R or ARM.L/R bones
J. Click anywhere in the 3D viewport
(*) Step B can be avoided, as long as shape.eyeTarget is replaced with the edited shape.eyeTarget.001 before clicking in the Viewport.

But, if after step J you go back to Object mode, and try to edit the shape.eyeTarget.001 object again, the crash is triggered as soon as you switch to Edit mode.

Crash still happens if you do not edit shape.eyeTarget.001:
A. Append the problematic shape from the bug_shape.blend while still in Pose mode
B. Replace shape.eyeTarget with shape.eyeTarget.001 in both of the bones mentioned in Step 1
C. Click anywhere in the 3D viewport

Another related crash happens when you:
A. Append the problematic shape from the bug_shape.blend while still in Pose mode
B. Replace shape.eyeTarget with shape.eyeTarget.001 in one or both eye.lookAt.L/R bones (select in outliner to avoid previously mentioned crash) (*)
C. Switch to Object mode
D. Select shape.eyeTarget.001
E. Switch to Edit mode

(*) If shape.eyeTarget is merely removed and not replaced in step B, the crash does not happen in step E.

If you need any other information I might have left out please let me know.

Thank you

Event Timeline

I just realized the crash is also produced by just following these steps:

  1. Start a new File
  2. Add an armature
  3. Switch to pose mode
  4. Go to Bone > Viewport Display and select the default Cube as the Custom Object
  5. Switch to object mode
  6. Select the cube, and enter edit mode

This is an example file with a plane as the custom object of a bone. When you try to enter edit mode to edit the plane there is a crash.

I confirm, it crashes in Ubuntu 18.04.2

Philipp Oeser (lichtwerk) lowered the priority of this task from 90 to 30.May 14 2019, 10:45 AM

Pretty sure this has been fixed?

Cant get it to crash here, can you confirm this is solved with todays build?

The second file I uploaded custom_object_bug.blend is not crashing anymore in today's version (2.80, a5b5bd2c24e0 win64) when following the 6 steps, and I cannot reproduce the crash anymore when starting a new file.

The first file still crashes when clicking on the Viewport as described in the first post:

Something is different in today's version though, when you switch to Object mode, if the armature is still selected, it also crashes when you click on the Viewport. This does not happen in Edit mode or if you deselect the armature in Object mode, and you can click somewhere else on the viewport. But as long as the armature is selected, or if you click on it to select it again, the crash is back.

Appending that armature into a new file in today's Blender version does not fix the problem. The crash is also produced as soon as you click on Viewport with the appended Object.

As Brecht mentioned, it does indeed look very much like T64512, sorry I couldn't find that one when searching existing bugs. I tried with that file submitted by that user and it also crashes when clicking the Viewport unless Wireframe display mode is selected.

I will keep trying to see if it can be reproduced starting with a new file in this version, but so far it only happens with the old armatures.

Thank you

Philipp Oeser (lichtwerk) raised the priority of this task from 30 to 90.

I just tested with the file I uploaded on T64512 and it doesn't crash anymore, all my files that were crashing due to this issue seem to be fine as well.
I haven't tested with files from this task and from T64648

Edit:
I tested with this version: 2.80 (sub 71), branch: master, commit date: 2019-05-23 08:33, hash: rB49593a2c38f0

Brecht Van Lommel (brecht) changed the task status from Unknown Status to Resolved.May 23 2019, 1:13 PM

I can confirm the latest test file from this report crashed a few days ago, but is working now.