Editing the basis affects other shape keys

(slawek382) #1

I edit the basis and it changes some of the shape keys. Every shape key in the file has a driver, but only few are affected by changing the basis, and i can’t figure out why precisely those shape keys and not the others.

Sorry for no file, but it’s kinda secret project, plus somehow i can not recreate the bug (or whatever rule that is) on an alternative model, because i simply don’t know what am i doing wrong. Besides i do can exclude vertices from a shape key by “blend from shape” option, so broken shape keys aren’t my problem. The problem is what can cause this affectedness, so i won’t do this mistake in the future. Any ideas please? It’s 2.78.4 version.

(slawek382) #2

Ok, it looks like any serious editing a basis’ geometry like adding new vertices and then moving those vertices gives a changes to every shape key in a file. The shape keys which were unaffected by basis’ change were created after the basis’ change, not before.

(Safetyman) #3

All the shapekeys are based on the Basis key, so naturally anything you do to the base geometry will affect all the keys. Adding/deleting geometry could have unknown consequences so be careful when doing that.

(alf0) #4

about shape keys,
i did stumbeld into this once , and i found that if changed the base, the only keys that will be effectd are the ones wher uses the same verts you just changed on the base,

and also does nyone knows if its possibole to export shape keys to 3ds max ?
sorry if this bothers you !!!

(helluvamesh) #5

Export to fbx.

(alf0) #6

is it just that simpel ?

(helluvamesh) #7

Blender can export shape key animation to fbx and 3ds max must have good fbx support so I guess it’s that simple.

(alf0) #8

oh this is great !!!

(alf0) #9

oh this is great !!!

(Minju Du) #10

I have question. I create several shape keys & it work fine. However after I amend the basis shape key, all other shape keys are not deforming from the amended basis shape key. It still use old basis shape key. I don’t add new or remove vertices and I change the basis shape key after created all other shape key. Can somebody please help on this? I’ve been struggling so long for this. I’m using 2.79.

(slawek382) #11

I’m not sure what do you mean by

So when you e.g. are setting a value of 1 in these shape keys, then places which were changed by editing the basis are becoming like they were before changing the basis? Is that what you mean?

(slawek382) #12

Always if you are changing the basis do this in new shape key, then apply this shape key into basis like this:

  1. Make a backup of the file, to save the work if something goes wrong.
  2. Go to edit mode of the mesh with shape keys.
  3. Make sure all shape keys have a value of zero (or mute them by pressing an eye icon next to the value).
  4. click on “basis”, go to vertex mode, make sure all vertices are visible by pressing alt+H, select all vertices of your model, press ctrl+V and “blend from shape”.
  5. Then a new panel appears on the left. In the place where “basis” is select the shape key with changes you want to apply into basis, make sure you have “add” checked and value 1.
  6. Apply by go to object mode. Then you can delete the shape key. Its changes are in the basis already.

(Minju Du) #13

For example, I have a basis and smile left & smile right shape key. When I try to make the basis mesh fatter, the other 2 keys (smile left & right) don’t have that “fatter” basis mesh that I just created. It still use “slimmer” version (original basis shape key). I tried to use blend from shape as well, & it works fine if I only apply smile left or right. But if I apply value:1 to both smile left & smile right, the “fatter” becomes double (superimpose the shape key), which I don’t want.

However, I have tweaked around & found the solution on this at here Shape Keys+. Thanks a lot for the advice given anyway :slight_smile:

(SkpFX) #14

I do this…

  1. Make sure all shapes have influence of 0 or are muted.
  2. From the black triangle drop down menu choose New Shape From Mix. That makes a copy of the basis. Name it NewBase.
  3. Move it to the top slot where the basis was. Leave the old basis shape key(now in slot two) at 0 influence.
  4. Make changes to NewBase as desired.

It tricks the system. All of the existing shape keys are based on the “basis” shape, and contain vertex offsets from that shape. Dialing up the influence of the existing shape keys just adds their offsets from the old basis without actually applying the old basis shape(unless you dial up it’s influence)

The only downsides are, you’ve got to pay attention to what key any new shapes are based on, they’ll default to the NewBase, and the old basis shape is always there in the list just staring at you.

If you haven’t got a lot of keys or drivers it’s a simple, if tedious, process to move them over to be based on the NewBase shape. Just individually dial up their influences and choose New Shape From Mix, then delete the old shape.

(RNavega) #15

A quick / safe way to do that is pressing the X button on the shape keys panel:

It took me a while to pay attention to that button

(Minju Du) #16

Exactly, I also found the same solution after tweaking here & there. I think that trick solve the problem better than using “blend from shape”, well, at least for me. :smile:

Thanks anyway for the reply. Hope it can help other people needed in the future.

Yup, that is the quickest & safest way to make sure no shape key applied. Your screenshot will help other newbies out there. :sunny:

(SkpFX) #17

The X will not clear out shape keys with drivers active. They have to be muted with the eyeball icon next to them.

(slawek382) #18

Precisely what i was going to write…

(SkpFX) #19

Also, if you’ve got the pin set to always show current shape and the basis isn’t the currently selected shape the X won’t clear it out. The X has been there for god knows how long, and it isn’t some kind of secret sauce.