1
$\begingroup$

If I have a bunch of shapekeys active at varying values, is there a faster way to reset every shape key's value back to 0 rather than do it one by one?

$\endgroup$

2 Answers 2

3
$\begingroup$

Yes, just click on the X button near the value field.

2.7:

enter image description here

and 2.8:

enter image description here

$\endgroup$
2
  • $\begingroup$ I can't believe I missed this, thanks. $\endgroup$
    – Pancakes
    Jun 16, 2019 at 10:05
  • $\begingroup$ I don't know what's worse. The fact that I have never even noticed this button's functionality before, or that its icon and position always made me think it would delete the selected shapekey.... Definitely not the best UX there! $\endgroup$
    – L0Lock
    Jul 6, 2023 at 22:08
2
$\begingroup$

You can run this line in the Python console to reset all shape key values of the active object to 0.0:

[setattr(x, 'value', 0) for x in bpy.context.object.data.shape_keys.key_blocks]

Basically, all shape keys of an object are accessible via the myObject.data.shape_keys.key_blocks list. From there you can manipulate all of the properties. The one-liner above is just an abbreviated way of writing the code below in the Script Editor of Blender and executing it:

import bpy

for skey in bpy.context.object.data.shape_keys.key_blocks:
    skey.value = 0.0
$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .