コード例 #1
0
        public override CurveChangeType UpdateExternalChanges(ref ulong curveVersion)
        {
            if (m_CurvesProxy.targetTrack == null)
            {
                return(CurveChangeType.None);
            }

            var changeType = sourceAnimationClip.GetChangeType(ref curveVersion);

            if (changeType != CurveChangeType.None)
            {
                m_CurvesProxy.ApplyExternalChangesToProxy();
            }
            // track property has changed externally, update the curve proxies
            else if (m_TrackDirtyVersion != m_CurvesProxy.targetTrack.DirtyIndex)
            {
                if (changeType == CurveChangeType.None)
                {
                    changeType = CurveChangeType.CurveModified;
                }
                m_CurvesProxy.UpdateProxyCurves();
            }
            m_TrackDirtyVersion = m_CurvesProxy.targetTrack.DirtyIndex;
            return(changeType);
        }
コード例 #2
0
        public override CurveChangeType UpdateExternalChanges(ref ulong curveVersion)
        {
            if (m_ClipGUI == null || m_ClipGUI.clip == null)
            {
                return(CurveChangeType.None);
            }

            var changeType = sourceAnimationClip.GetChangeType(ref curveVersion);

            if (changeType != CurveChangeType.None)
            {
                m_CurvesProxy.ApplyExternalChangesToProxy();
            }
            else if (m_ClipDirtyVersion != m_ClipGUI.clip.DirtyIndex)
            {
                m_CurvesProxy.UpdateProxyCurves();
                if (changeType == CurveChangeType.None)
                {
                    changeType = CurveChangeType.CurveModified;
                }
            }
            m_ClipDirtyVersion = m_ClipGUI.clip.DirtyIndex;
            return(changeType);
        }