Skip to content

SceneManager

29thnight edited this page Nov 27, 2025 · 1 revision

SceneManager

간단 설명: 씬의 생성/로드/활성화, 프레임 단계 처리(입력/물리/게임로직/렌더), DDOL 관리, 이벤트 브로드캐스트를 담당하는 싱글턴.

주요 루프 단계

단계 설명
ManagerInitialize/Initialization 각 서브시스템 초기화
Physics(delta) 물리 업데이트
InputEvents(delta) 입력 처리 브로드캐스트
GameLogic(delta) 게임 로직 업데이트
SceneRendering(delta) 렌더링 단계 호출
OnDrawGizmos/GUIRendering/EndOfFrame 기즈모, GUI, 프레임 종료 처리
Pausing/DisableOrEnable/Decommissioning 일시정지/활성/비활성/종료

씬 관리

메서드 설명
Create/Save/LoadScene(Immediate/Async) 씬 생성/저장/로드(동기/비동기)
ActivateScene(scene, isOldSceneDelete) 활성화 및 이전 씬 정리
BeforeAwakeSceneLoad() 로드 전 처리
IsSceneLoading()/WaitForSceneLoad() 로딩 상태 조회/대기
GetActiveScene()/SetActiveScene(scene/index) 활성 씬 조회/설정

DDOL 관리

메서드 설명
Add/RemoveDontDestroyOnLoad(objPtr) DDOL 등록/제거
RebindEventDontDestroyOnLoadObjects(scene) 새 씬에 이벤트 재바인딩

이벤트

  • 에디터: PlayModeEvent
  • 입력: InputEvent
  • 렌더: SceneRenderingEvent, OnDrawGizmosEvent, GUIRenderingEvent
  • 애니메이션: InternalAnimationUpdateEvent
  • 씬 생명주기: activeSceneChangedEvent, sceneLoadedEvent, sceneUnloadedEvent, newSceneCreatedEvent
  • 선택/프레임/리소스: resetSelectedObjectEvent, endOfFrameEvent, resourceTrimEvent

기타 필드

  • 스레딩/풀: ThreadPool, 로딩용 future
  • 입력 매니저: m_inputActionManager
  • 렌더 씬 포인터, 에디터 씬 로드 플래그 등

전역: SceneManagers 및 이벤트 레퍼런스 별칭 제공.

CreatorEngine

API Docs

API Reference
Main
PhysicsSystem
RenderEngine
ScriptBinder
Utility_Framework

etc

Clone this wiki locally