Example #1
0
//----------------------------------------------------------------------------------------------------------------------

#region IPlayableBehaviour interfaces

        public override void OnPlayableCreate(Playable playable) {
#if UNITY_EDITOR            
            m_editorUpdateTask = new SISPlayableMixerEditorUpdateTask(this);
            EditorUpdateManager.AddEditorUpdateTask( m_editorUpdateTask);
#endif //UNITY_EDITOR          
           
        }
Example #2
0
        public override void OnPlayableDestroy(Playable playable) {
            
            var clipAssets = GetClipAssets();
            foreach (KeyValuePair<TimelineClip, StreamingImageSequencePlayableAsset> kv in clipAssets) {
                StreamingImageSequencePlayableAsset sisAsset = kv.Value;
                sisAsset.OnPlayableDestroy(playable);
            }
            
            base.OnPlayableDestroy(playable);
            
#if UNITY_EDITOR            
            EditorUpdateManager.RemoveEditorUpdateTask( m_editorUpdateTask);        
#endif //UNITY_EDITOR          
        }
        static void InitImageLoaderInEditor()
        {
            for (int i = 0; i < StreamingImageSequenceConstants.MAX_IMAGE_TYPES; ++i)
            {
                if (null != m_imageLoadEditorUpdateTasks[i])
                {
                    //Just in case: Elements of m_imageLoadEditorUpdateTasks should be back to null after entering edit mode
                    continue;
                }

                ImageLoadEditorUpdateTask task = new ImageLoadEditorUpdateTask();
                EditorUpdateManager.AddEditorUpdateTask(task);
                m_imageLoadEditorUpdateTasks[i] = task;
            }
        }