Table of Contents

Interface ISceneSystem

Namespace
Framework.Systems.Scene
Assembly
Assembly-CSharp.dll

씬 로드/언로드/현재 씬 조회/이벤트 계약.

public interface ISceneSystem

Examples

await _sceneSystem.LoadAsync(SceneNames.Play, ct);

Remarks

[금지] 씬 전환 조건 판단. 조건 판단은 StateMachine 또는 Controller 책임. [금지] SceneManager 직접 호출. 반드시 이 인터페이스를 통해서만 접근. OperationCanceledException 발생 시 정상 취소로 처리(catch 불필요).

Properties

CurrentScene

현재 활성 씬 이름.

string CurrentScene { get; }

Property Value

string

Methods

LoadAsync(string, CancellationToken)

씬 비동기 로드. OnSceneLoadStart/OnSceneLoadComplete 이벤트 발행.

UniTask LoadAsync(string sceneName, CancellationToken ct = default)

Parameters

sceneName string

로드할 씬 이름. SceneNames 상수 사용.

ct CancellationToken

로드 취소 신호.

Returns

UniTask

UnloadAsync(string, CancellationToken)

씬 비동기 언로드.

UniTask UnloadAsync(string sceneName, CancellationToken ct = default)

Parameters

sceneName string

언로드할 씬 이름.

ct CancellationToken

언로드 취소 신호.

Returns

UniTask

Events

OnSceneLoadComplete

씬 로드 완료 시 발행. 인자: 로드된 씬 이름.

event Action<string> OnSceneLoadComplete

Event Type

Action<string>

OnSceneLoadStart

씬 로드 시작 시 발행. 인자: 로드 대상 씬 이름.

event Action<string> OnSceneLoadStart

Event Type

Action<string>