Interface ISceneSystem
씬 로드/언로드/현재 씬 조회/이벤트 계약.
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
sceneNamestring로드할 씬 이름. SceneNames 상수 사용.
ctCancellationToken로드 취소 신호.
Returns
- UniTask
UnloadAsync(string, CancellationToken)
씬 비동기 언로드.
UniTask UnloadAsync(string sceneName, CancellationToken ct = default)
Parameters
sceneNamestring언로드할 씬 이름.
ctCancellationToken언로드 취소 신호.
Returns
- UniTask
Events
OnSceneLoadComplete
씬 로드 완료 시 발행. 인자: 로드된 씬 이름.
event Action<string> OnSceneLoadComplete
Event Type
- Action<string>
OnSceneLoadStart
씬 로드 시작 시 발행. 인자: 로드 대상 씬 이름.
event Action<string> OnSceneLoadStart
Event Type
- Action<string>