예제 #1
0
        private void DynamicLoader_OnDynamicLoad(DynamicLoadingState state, DynamicLoader loader, Node node)
        {
            // Locked in edit or render (render) by caller

            if (state == DynamicLoadingState.LOADED || state == DynamicLoadingState.UNLOADED)
            {
                pendingLoaders.Add(new NodeLoadInfo(state, loader, node));
            }
            else
            {
                loader?.ReleaseNoDelete();      // Same here. We are getting refs to objects in scene graph that we shouldnt release in GC
                node?.ReleaseNoDelete();
            }
        }
예제 #2
0
        private void DynamicLoader_OnDynamicLoad(DynamicLoadingState state, DynamicLoader loader, Node node)
        {
            // Locked in edit or render (render) by caller

            if (state == DynamicLoadingState.LOADED || state == DynamicLoadingState.UNLOADED)
            {
                //if(node != null && node.IsValid())
                //    Message.Send("Unity", MessageLevel.DEBUG, state + " " + node.GetName());
                //else if (loader != null && loader.IsValid())
                //    Message.Send("Unity", MessageLevel.DEBUG, state + " " + loader.GetName());

                pendingLoaders.Add(new NodeLoadInfo(state, loader, node));
            }
            else
            {
                loader?.ReleaseNoDelete();      // Same here. We are getting refs to objects in scene graph that we shouldnt release in GC
                node?.ReleaseNoDelete();
            }
        }
예제 #3
0
 public NodeLoadInfo(DynamicLoadingState _state, DynamicLoader _loader, Node _node)
 {
     state  = _state;
     loader = _loader;
     node   = _node;
 }
예제 #4
0
 private static void OnDynamicLoad_callback(DynamicLoadingState state, IntPtr loader_reference, IntPtr node_reference)
 {
     OnDynamicLoad?.Invoke(state, CreateObject(loader_reference) as DynamicLoader, CreateObject(node_reference) as Node);
 }
예제 #5
0
 private static void MessageHandler(DynamicLoadingState state, IntPtr loader_reference, IntPtr node_reference)
 {
     OnDynamicLoad?.Invoke(state, CreateObject(loader_reference) as DynamicLoader, CreateObject(node_reference) as Node);
 }