Table of Contents

Namespace Framework.Systems.Camera

Classes

AimBehavior

Aim Behavior. 조준 시 FOV 축소 및 오프셋 이동. Enable/Disable로 조준 진입/해제.

BlendConfig
CameraAuthorityService

카메라 제어권(Authority) 중앙 관리 서비스.

CameraBlendService

카메라 Blend 서비스. Mode 전환 시 하드 컷 방지. Curve 기반 Position/Rotation/FOV 동시 보간.

CameraBrain

카메라 오케스트레이션 전용 단일 진입점. Update: Input 처리 → Mode Tick. LateUpdate: Pipeline 실행 → Camera 반영.

CameraCollisionSolver

카메라 충돌 해결기. SphereCast 기반 벽 관통 방지. LateUpdate 최종 단계에서 Pipeline이 호출.

CameraContext

카메라 파이프라인 컨텍스트. 파라미터 폭발 방지. Mode/Behavior/Pipeline 전 단계에서 공유.

CameraDebugger

카메라 디버그 시각화. Gizmo 및 GUI Overlay. Editor/Development Build에서만 활성화.

CameraInputAdapter

카메라 입력 어댑터 구현체. New Input System 기반. Mode/Behavior에서 Unity Input 직접 참조 금지. 감도/반전은 이 어댑터에서 처리.

CameraInstaller
CameraPipelineRunner

카메라 파이프라인 실행기. 고정 실행 순서: Mode Pose → Behavior → Motion → Collision → Modifier → Blend → Solver. 순서 변경 금지.

CameraRig

카메라 Rig Transform 참조 저장 전용. 규칙: Transform 참조 저장만 담당. 로직 구현 금지. 구조: CameraRoot └─ YawPivot └─ PitchPivot └─ CameraMount (Camera 위치)

CameraRuntimeState

카메라 핵심 실시간 상태. 프레임 간 지속되는 값 저장. Brain이 소유, Context를 통해 공유.

CameraSystem

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

CameraTargetGroup

여러 Transform을 하나의 카메라 추적 대상으로 묶어 중심/범위를 제공.

CinemachineBridge

Cinemachine 연결 브릿지. 연출 전용. 허용: Timeline/컷신/대화/Scripted Camera/보스 등장. 금지: TPS/FPS 핵심 플레이 카메라를 Cinemachine 의존 구조로 구현. Brain의 CinematicMode와 연동해서 사용.

CinematicMode

연출 전용 카메라 모드. 외부(Cinemachine 연동 등)에서 Pose를 직접 주입. 게임플레이 중에는 사용 금지. 컷씬/대화 연출은 Cinemachine 사용 권장.

CollisionConfig
FinalSolver

Pipeline 최종 단계. CameraPose를 Unity Camera에 반영. 이 클래스만 camera.transform을 수정할 수 있다.

FirstPersonCameraConfig

1인칭 카메라 설정 ScriptableObject.

FirstPersonCameraProfile

1인칭 카메라 설정 묶음. 생성: Create > Framework > Camera > Profiles > FirstPerson

FirstPersonMode

1인칭 카메라 Pose 계산기. 책임: 눈 위치 / 회전 / FOV 계산만. 금지: Shake/Collision/Blend/Zoom/HeadBob 내부 구현. Unity Input 직접 참조.

FollowBehavior

Follow Behavior. FollowTarget 위치 추적. Mode와 독립적으로 조합 가능.

FreeMoveBehavior

Spectator 카메라 자유 이동 Behavior. WASD + 수직 이동 + 부스트를 ICameraInputAdapter 경유로 처리.

HeadBobConfig

HeadBobModifier 설정 ScriptableObject.

HeadBobModifier

걷기/달리기 중 카메라 상하좌우 흔들림 Modifier. Priority 80 — NoiseModifier(90) 이전에 적용.

LockOnBehavior

LockOn Behavior. TPS/TopDown/QuarterView 어떤 Mode와도 조합 가능. 타겟 자동 탐색 및 추적. Mode 내부 구현 금지.

LockOnConfig
LookAtBehavior

LookAt Behavior. LookAtTarget 방향으로 카메라 회전 보정.

ModifierStack

Modifier 레이어 스택. Priority 순으로 정렬 후 순차 적용.

MotionProcessor

카메라 이동 보간 전담 처리기. SmoothDamp / Spring / AxisDamping 담당. 금지: Mode 내부에 직접 damping 로직 작성.

MotionSettings

Motion 보간 설정. Config에서 주입.

NoiseModifier

상시 Perlin Noise 카메라 흔들림 Modifier. 호흡감 연출 등에 사용.

OrbitBehavior

Orbit Behavior. ICameraInputAdapter 입력 기반 궤도 회전. 금지: Unity Input 직접 참조.

OrbitConfig
QuarterViewCameraConfig
QuarterViewCameraProfile

쿼터뷰 카메라 설정 묶음. 생성: Create > Framework > Camera > Profiles > QuarterView

QuarterViewMode

쿼터뷰 기본 Pose 계산기. 고정 Pitch/Yaw 각도에서 등각 시점 제공.

RecenterBehavior

Auto Recenter Behavior. 입력 없을 때 카메라를 FollowTarget 전방으로 자동 복귀. ICameraInputAdapter.IsRecenterRequested 기반.

RecoilModifier

반동 Modifier. 총기 발사 등 충격 후 복귀 처리.

ShakeConfig
ShakeModifier

카메라 Shake Modifier. Perlin Noise 기반 흔들림. Modifier Stack에 등록해서 사용.

SpectatorCameraProfile

관전/자유 카메라 설정 묶음. 생성: Create > Framework > Camera > Profiles > Spectator

SpectatorMode

자유 카메라 (Spectator) Pose 계산기. 회전만 담당. 이동은 FreeMoveBehavior에 위임.

ThirdPersonCameraConfig
ThirdPersonCameraProfile

TPS 카메라 설정 묶음. Inspector 에서 이 에셋 하나만 연결한다.

ThirdPersonMode

TPS 기본 Pose 계산기. 책임: 위치/회전/거리 계산만. 금지: Shake/LockOn/Collision/Blend/Zoom/Recoil 내부 구현. 금지: Unity Input 직접 참조.

TopDownCameraConfig
TopDownCameraProfile

탑뷰 카메라 설정 묶음. 생성: Create > Framework > Camera > Profiles > TopDown

TopDownMode

탑뷰 기본 Pose 계산기. 책임: 고정 높이/각도에서 위치 계산만.

ZoomBehavior

FOV 기반 줌 Behavior. 스크롤 입력 → CurrentFov 변경.

ZoomConfig

Structs

CameraPose

카메라 상태 스냅샷. 모든 시스템은 이 구조체만 계산한다. 금지: camera.transform.position = xxx 직접 수정.

Interfaces

ICameraBehavior

Mode와 독립적으로 조합 가능한 기능 단위. Unity Input 직접 참조 금지.

ICameraBlendService

Mode 전환 시 하드 컷 방지. 반드시 Blend 경유.

ICameraBrain

카메라 시스템 단일 진입점 계약.

ICameraInputAdapter

Mode/Behavior 내부에서 Unity Input 직접 참조 금지. 반드시 이 인터페이스 경유.

ICameraMode

기본 Pose 계산만 담당. Shake/LockOn/Collision/Blend 내부 구현 금지. Unity Input 직접 참조 금지.

ICameraModifier

Pipeline 후반부에서 Pose에 효과를 레이어 방식으로 적용. Shake/Noise/Recoil/Offset.

ICameraSystem

Camera System Gameplay 진입점 계약. Gameplay 코드는 이 인터페이스 하나만 주입받는다.

Enums

CameraAuthority

카메라 제어권 소유자 유형. 동시 제어 충돌 방지.

CameraModeType

카메라 모드 열거형.

CameraModifierPriority

Modifier 실행 우선순위. 낮은 값이 먼저 실행된다. [규칙] 매직 넘버 사용 금지. 이 enum 사용.