private Vector3 GetPositionFromTexture(int index) { Vector2Int pixelCoord = BakeBlendShapeAnimation.GetPixelCoordByIndex(index, _texture.width); Color color = _texture.GetPixel(pixelCoord.x, pixelCoord.y); float x = BakeBlendShapeAnimation.Remap(color.r, 0f, 1f, _minMax[0].x, _minMax[1].x); float y = BakeBlendShapeAnimation.Remap(color.g, 0f, 1f, _minMax[0].y, _minMax[1].y); float z = BakeBlendShapeAnimation.Remap(color.b, 0f, 1f, _minMax[0].z, _minMax[1].z); Vector3 pos = new Vector3(x, y, z); return(pos); }
public override void OnInspectorGUI() { BakeBlendShapeAnimation script = (BakeBlendShapeAnimation)target; base.OnInspectorGUI(); GUILayout.Space(10); if (GUILayout.Button("Choose Save Path")) { script.path = GetSavePath(); Debug.Log("Save path: " + script.path); } GUILayout.Space(10); if (GUILayout.Button("Bake Frames")) { script.BakeFrames(); } }