Table of Contents

Class CameraSystem

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

ICameraSystem 구현체. CameraBrain 위에 얹히는 Gameplay Facade.

public sealed class CameraSystem : ICameraSystem
Inheritance
object
CameraSystem
Implements

Remarks

[규칙] CameraBrain 은 Framework 내부 오케스트레이터. 이 클래스 밖으로 노출 금지. [규칙] 블렌드 기본값은 DefaultBlend(생성자 주입). 없으면 instant 처리. MonoBehaviour 가 아니므로 DI 컨테이너에서 Singleton 으로 관리. CameraBrain(MonoBehaviour) 은 씬에서 RegisterComponentInHierarchy 로 주입받는다.

Constructors

CameraSystem(CameraBrain, CameraAuthorityService, ICameraBlendService, CinemachineBridge)

public CameraSystem(CameraBrain brain, CameraAuthorityService authority, ICameraBlendService blend, CinemachineBridge cinemachineBridge = null)

Parameters

brain CameraBrain
authority CameraAuthorityService
blend ICameraBlendService
cinemachineBridge CinemachineBridge

Methods

DisableAim()

조준 모드 해제.

public void DisableAim()

EnableAim()

조준 모드 진입. FOV 축소 및 오프셋 적용.

public void EnableAim()

EnterCinematic()

연출 모드 진입. Authority 획득 → Gameplay 카메라 정지 → Cinemachine 활성화.

public void EnterCinematic()

ExitCinematic()

연출 모드 종료. Cinemachine 비활성 → Authority 반납 → 이전 모드 복귀.

public void ExitCinematic()

Initialize(SpectatorCameraProfile)

관전 프로파일 기반 초기화.

public void Initialize(SpectatorCameraProfile profile)

Parameters

profile SpectatorCameraProfile

Initialize(Transform, FirstPersonCameraProfile)

1인칭 프로파일 기반 초기화.

public void Initialize(Transform followTarget, FirstPersonCameraProfile profile)

Parameters

followTarget Transform
profile FirstPersonCameraProfile

Initialize(Transform, QuarterViewCameraProfile)

QuarterView 프로파일 기반 초기화.

public void Initialize(Transform followTarget, QuarterViewCameraProfile profile)

Parameters

followTarget Transform
profile QuarterViewCameraProfile

Initialize(Transform, ThirdPersonCameraProfile)

TPS 프로파일 기반 초기화. Start() 에서 1회 호출. 이후 SetMode 로 모드를 지정한다.

public void Initialize(Transform followTarget, ThirdPersonCameraProfile profile)

Parameters

followTarget Transform
profile ThirdPersonCameraProfile

Initialize(Transform, TopDownCameraProfile)

TopDown 프로파일 기반 초기화.

public void Initialize(Transform followTarget, TopDownCameraProfile profile)

Parameters

followTarget Transform
profile TopDownCameraProfile

LockOn()

자동 탐색으로 LockOn 활성화.

public void LockOn()

LockOn(Transform)

지정 타겟으로 LockOn 활성화.

public void LockOn(Transform target)

Parameters

target Transform

Recoil(Vector3)

반동 추가. 누적 가능.

public void Recoil(Vector3 recoil)

Parameters

recoil Vector3

SetFollowTarget(Transform)

추적 대상 런타임 교체. 차량 탑승 / 빙의 등.

public void SetFollowTarget(Transform target)

Parameters

target Transform

SetMode(CameraModeType)

기본 블렌드로 모드 전환.

public void SetMode(CameraModeType mode)

Parameters

mode CameraModeType

SetMode(CameraModeType, bool)

즉시 전환 (블렌드 없음) 또는 duration 오버라이드.

public void SetMode(CameraModeType mode, bool instant)

Parameters

mode CameraModeType
instant bool

SetMode(CameraModeType, float)

블렌드 지속 시간을 지정해 모드 전환.

public void SetMode(CameraModeType mode, float blendDuration)

Parameters

mode CameraModeType
blendDuration float

Shake(ShakeConfig)

카메라 흔들림 트리거.

public void Shake(ShakeConfig config)

Parameters

config ShakeConfig

Unlock()

LockOn 해제.

public void Unlock()