/// <summary> /// Check whether the blendshape already exists /// </summary> internal bool BlendShapeAlreadyExists(SkinnedMeshRenderer smr, BlendShapeController.BlendShape blendShape) { var shapeIndex = smr.sharedMesh.GetBlendShapeIndex(blendShape.name); //If the shape exists then true return(shapeIndex >= 0); }
/// <summary> /// Convert a BlendShape to MeshBlendShape, used for storing to character card data /// </summary> internal MeshBlendShape ConvertToMeshBlendShape(string smrName, BlendShapeController.BlendShape blendShape) { if (blendShape == null) { return(null); } var meshBlendShape = new MeshBlendShape(smrName, blendShape, blendShape.vertexCount); return(meshBlendShape); }
public BlendShapeController.BlendShape BlendShape; //Just a single Frame for now, though its possible to have multiple frames public MeshBlendShape(string meshName, BlendShapeController.BlendShape blendShape, int vertCount) { MeshName = meshName; BlendShape = blendShape; VertCount = vertCount; }