コード例 #1
0
ファイル: Tagarela.cs プロジェクト: wiplug/tagarela
    public void BuildTimeline()
    {
        timeline = new Timeline[settings.keyframes.values.Length + 1];

        morphOriginal = new float[smrTotalBlendShapesCount];
        morphTargets  = new blendTarget[smrTotalBlendShapesCount];
        int indexCounter = 0;

        for (int i = 0; i < smrTotal.Count; i++)
        {
            for (int j = 0; j < smrTotal[i].sharedMesh.blendShapeCount; j++)
            {
                morphOriginal[indexCounter] = smrTotal[i].GetBlendShapeWeight(j);
                morphTargets[indexCounter]  = new blendTarget();
                morphTargets[indexCounter].skinnedMeshRenderer = smrTotal[i];
                morphTargets[indexCounter].blendShapeIndex     = j;
                indexCounter++;
            }
        }

        for (int i = 0; i < settings.keyframes.values.Length; i++)
        {
            float[] slider = settings.keyframes.sliderSettings[i];
            timeline[i] = new Timeline(settings.keyframes.values[i], slider);
        }

        //float[] neutralSliders = new float[smrTotalBlendShapesCount];
        timeline[settings.keyframes.values.Length] = new Timeline(settings.animationTime, morphOriginal);
    }
コード例 #2
0
ファイル: Tagarela.cs プロジェクト: Lumennes/tagarela
    public void BuildTimeline()
    {
        timeline = new Timeline[settings.keyframes.values.Length + 1];

        morphOriginal = new float[smrTotalBlendShapesCount];
        morphTargets = new blendTarget[smrTotalBlendShapesCount];
        int indexCounter = 0;
        for (int i = 0; i < smrTotal.Count; i++)
        {
            for (int j = 0; j < smrTotal[i].sharedMesh.blendShapeCount; j++)
            {
                morphOriginal[indexCounter] = smrTotal[i].GetBlendShapeWeight(j);
                morphTargets[indexCounter] = new blendTarget();
                morphTargets[indexCounter].skinnedMeshRenderer = smrTotal[i];
                morphTargets[indexCounter].blendShapeIndex = j;
                indexCounter++;
            }
        }

        for (int i = 0; i < settings.keyframes.values.Length; i++)
        {
            float[] slider = settings.keyframes.sliderSettings[i];
            timeline[i] = new Timeline(settings.keyframes.values[i], slider);
        }

        //float[] neutralSliders = new float[smrTotalBlendShapesCount];
        timeline[settings.keyframes.values.Length] = new Timeline(settings.animationTime, morphOriginal);
    }