private UnityInstance() { m_World = DefaultWorldInitialization.Initialize("Default World"); m_BootPhase = BootPhase.Booting; m_RunState = RunState.Resuming; m_EntityManager = m_World.EntityManager; m_StartTimeInSeconds = 0; m_ElapsedTimeInSeconds = 0; m_PreviousElapsedTimeInSeconds = 0; m_SceneSystemGroup = m_World.GetOrCreateSystem <SceneSystemGroup>(); m_SceneSystem = m_World.GetOrCreateSystem <SceneSystem>(); m_TimeData = (TimeData *)UnsafeUtility.Malloc( UnsafeUtility.SizeOf <TimeData>(), 0, Collections.Allocator.Persistent); }
private UnityInstance() { m_World = DefaultWorldInitialization.Initialize("Default World"); m_BootPhase = BootPhase.Booting; m_RunState = RunState.Resuming; m_EntityManager = m_World.EntityManager; m_StartTimeInSeconds = 0; m_ElapsedTimeInSeconds = 0; m_PreviousElapsedTimeInSeconds = 0; // try to find SceneSystemGroup in worlds foreach (var w in World.All) { m_SceneSystemGroup = w.GetExistingSystem <SceneSystemGroup>(); m_SceneSystem = w.GetExistingSystem <SceneSystem>(); if (m_SceneSystemGroup != null) { break; } } // if cannot find - create in the default world if (m_SceneSystemGroup == null) { m_SceneSystemGroup = m_World.GetOrCreateSystem <SceneSystemGroup>(); m_SceneSystem = m_World.GetOrCreateSystem <SceneSystem>(); } m_TimeData = (TimeData *)UnsafeUtility.Malloc( UnsafeUtility.SizeOf <TimeData>(), 0, Collections.Allocator.Persistent); }