0
$\begingroup$

I'm pretty new to Blender. I know how to do a lot of things in theory, but am unable to apply them. I'm not sure if it's my insufficient knowledge or Blender's deficiencies.

For starters, I'm using a .VRM model I exported from vroid studio to be used for vtuber type stuff, so I can't just go in and animate things separately or anything, as I need to export it to an .FBX file, and have them usable for facial expressions in programs such as VRchat, luppet, etc.

I changed the shape of the teeth on the model, and the only way to do that properly without it taking me literal hours to select each and every single vertex with tons of difficulty since the mesh/object is only split into three parts [face/head, body, and hair] I separated the teeth from the original mesh and altered them for each shape key to match the facial expression shape keys. I thought I'd be able to just re-merge the objects, but it seems you can't do that with anything that has shapekeys.. so that route is out the window.

So my second thought was to "connect" shape keys so that they objects activate a shape key with the same name at the same time, so when I export my model the facial expressions register as one single "animation"/expression opposed to separate ones for the teeth and face, but have been unable to figure out a way to implement this

Is it possible to have two completely unrelated/different shaped objects activate shape keys at the same time that will continue over when exported? OR a way for me to be able to somehow re-merge my objects without losing all the editing I did to the shape keys and teeth mesh?


Things I have tried in place of what I want to do.. but with failed results.

-- Separating the mesh but keeping it the same object, and altering it while separated and then moving it back.. Remerging the mesh ruins the shape of teeth & face and the basis shapekey does not affect other shape keys when I used this method.

-- Duplicating the mesh as new mesh/duplicating and separating as a linked object. All of my attempts do not alter the original mesh of the teeth when I alter the secondary teeth mesh.

-- Editing the teeth while still connected and inside the mouth. This is extremely tedious, and for some reason no matter how many times I tried, the edits to the base shape key would not transfer to any other keys unless I separated the teeth mesh from the head/face mesh.


Odd workaround fix was found after a lot of trial and error. I'm hoping there is a better way to do it, but for now I'm at least able to get done what I want to. I answered this myself in case anyone else has any issues regarding exporting shape keys and such.

$\endgroup$
  • $\begingroup$ So, is this about animating shapekey slider inside Blender or in some other app? $\endgroup$ – Serge L Aug 13 at 14:17
  • $\begingroup$ If shapekeys has the same names, then you can create animation for one object's shapekeys. Then in Dope Sheet switch to Shapekey Editor and choose this animation for other objects you want. They all will share same piece of data. $\endgroup$ – Serge L Aug 13 at 14:55
  • $\begingroup$ Yes, it is for internal purpose only. What format are you using for exporting? I am not familiar with shapekeys exporting, so can't help really. $\endgroup$ – Serge L Aug 13 at 15:25
  • $\begingroup$ Added clarification/context to my question as to not clog up the comments. $\endgroup$ – Nickromancer Aug 13 at 20:54
1
$\begingroup$

Not quite the answer I was looking for, but I've figured out a way to get things to work once exported. You do not need to be able to activate them at the same time within blender, you just need to make sure that all of them are named the same thing, and that you can re-export your .FBX file to a .VRM file once imported to unity. This seems to be the only way to get your shapes/expressions to work properly if they are not all within one object.

Things needed:


First things first, This works better if your objects are linked and you've assigned parent and child bones. [How to parent/child bones: https://docs.blender.org/manual/en/2.79/editors/3dview/object/properties/relations/parents.html ]

You want to make sure that all of your shape keys that "connect" and you want to go together are named the same thing and line up properly. Both for ease of access and to make sure things export/import correctly for blendshapes in unity. Then you want to "Fix" your model with the CATS extension, under the "Model" category. All default settings should be fine except for the "Join Meshes" option. Because my mesh and objects are separated with their own keyshapes, joining the meshes here will get rid of or ruin the shapes. enter image description here

Once your model is fixed, check your shape keys to see if any of them got altered. At this point you are free to go through and delete any shape keys that were transferred over when you separated your mesh/objects with your original vroid model, that are unneeded or do not affect your object. If everything is fine and once you've removed or added any extra shapes you need, then you want to export your model to a .fbx file. Make sure to select the embed textures option under settings in the CATS menu.

I'm going to skip over a bit of this final process as it's regarding unity entirely at this point, but essentially you want to import your .fbx model, make sure all the textures and materials are correct, and then you want to export your model to a .vrm model within unity. From there you should be able to find a folder titled blendshapes and be able to alter the animations inside with sliders to create a "full" facial expression, pose, etc, as long as you exported and fixed everything correctly within blender. enter image description here

| improve this answer | |
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.