示例#1
0
        /// <summary>
        /// Revives instance.
        /// </summary>
        private void Revive()
        {
            // Return if already revive.
            if (IsRevived)
            {
                return;
            }


            // Return if revive isn't possible.
            if (!CanRevive)
            {
                return;
            }


            // Revive unmanaged model.
            TaskableModel = new CubismTaskableModel(Moc);


            // Revive proxies.
            Parameters = GetComponentsInChildren <CubismParameter>();
            Parts      = GetComponentsInChildren <CubismPart>();
            Drawables  = GetComponentsInChildren <CubismDrawable>();

            Parameters.Revive(TaskableModel.UnmanagedModel);
            Parts.Revive(TaskableModel.UnmanagedModel);
            Drawables.Revive(TaskableModel.UnmanagedModel);

            CanvasInformation = new CubismCanvasInformation(TaskableModel.UnmanagedModel);

            _parameterStore = GetComponent <CubismParameterStore>();
        }
示例#2
0
        /// <summary>
        /// Refreshes the controller. Call this method after adding and/or removing <see cref="CubismFadeParameter"/>s.
        /// </summary>
        public void Refresh()
        {
            _animator = GetComponent <Animator>();

            // Fail silently...
            if (_animator == null)
            {
                return;
            }

            DestinationParameters = this.FindCubismModel().Parameters;
            DestinationParts      = this.FindCubismModel().Parts;
            _motionController     = GetComponent <CubismMotionController>();
            _parameterStore       = GetComponent <CubismParameterStore>();

            // Get cubism update controller.
            HasUpdateController = (GetComponent <CubismUpdateController>() != null);

            _fadeStates = (ICubismFadeState[])_animator.GetBehaviours <CubismFadeStateObserver>();

            if ((_fadeStates == null || _fadeStates.Length == 0) && _motionController != null)
            {
                _fadeStates = _motionController.GetFadeStates();
            }

            if (_fadeStates == null)
            {
                return;
            }
            _isFading = new bool[_fadeStates.Length];
        }