Example #1
0
    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);
    }
Example #2
0
    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();
        }
    }