Table of Contents

Class CameraBrain

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

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

public sealed class CameraBrain : MonoBehaviour, ICameraBrain
Inheritance
object
Object
Component
Behaviour
MonoBehaviour
CameraBrain
Implements

Remarks

허용: 입력 수집, Mode/Behavior/Modifier/Pipeline 호출, 상태 전환. 금지: 충돌/Blend/Motion/Shake/LookAt/LockOn 직접 계산.

Properties

CurrentPose

public CameraPose CurrentPose { get; }

Property Value

CameraPose

Methods

AddBehavior(ICameraBehavior)

public void AddBehavior(ICameraBehavior behavior)

Parameters

behavior ICameraBehavior

ClearModifiers()

등록된 모든 Modifier를 제거한다.

public void ClearModifiers()

Construct(ITimeSystem, ICameraInputAdapter, ICameraBlendService, CameraCollisionSolver, MotionProcessor, ModifierStack, FinalSolver, CollisionConfig)

public void Construct(ITimeSystem timeSystem, ICameraInputAdapter input, ICameraBlendService blend, CameraCollisionSolver collision, MotionProcessor motion, ModifierStack modifierStack, FinalSolver solver, CollisionConfig collisionConfig)

Parameters

timeSystem ITimeSystem
input ICameraInputAdapter
blend ICameraBlendService
collision CameraCollisionSolver
motion MotionProcessor
modifierStack ModifierStack
solver FinalSolver
collisionConfig CollisionConfig

DisableBehavior<T>()

타입 T의 Behavior를 비활성화한다.

public void DisableBehavior<T>() where T : class, ICameraBehavior

Type Parameters

T

EnableBehavior<T>()

타입 T의 Behavior를 활성화한다.

public void EnableBehavior<T>() where T : class, ICameraBehavior

Type Parameters

T

HasBehavior<T>()

타입 T의 Behavior가 등록되어 있는지 반환.

public bool HasBehavior<T>() where T : class, ICameraBehavior

Returns

bool

Type Parameters

T

Initialize(Camera, CameraRig, Transform)

public void Initialize(Camera unityCamera, CameraRig rig, Transform followTarget)

Parameters

unityCamera Camera
rig CameraRig
followTarget Transform

RegisterBehavior(ICameraBehavior)

Behavior를 등록한다. 중복 등록 방지. Priority 기준으로 자동 정렬.

public void RegisterBehavior(ICameraBehavior behavior)

Parameters

behavior ICameraBehavior

RegisterMode(CameraModeType, ICameraMode)

public void RegisterMode(CameraModeType type, ICameraMode mode)

Parameters

type CameraModeType
mode ICameraMode

RegisterModifier(ICameraModifier)

public void RegisterModifier(ICameraModifier modifier)

Parameters

modifier ICameraModifier

RemoveBehavior(ICameraBehavior)

public void RemoveBehavior(ICameraBehavior behavior)

Parameters

behavior ICameraBehavior

SetFollowTarget(Transform)

추적 대상을 런타임에 교체한다.

public void SetFollowTarget(Transform target)

Parameters

target Transform

SetMode(CameraModeType)

public void SetMode(CameraModeType mode)

Parameters

mode CameraModeType

TryGetBehavior<T>()

타입 T의 Behavior를 반환. 없으면 null.

public T TryGetBehavior<T>() where T : class, ICameraBehavior

Returns

T

Type Parameters

T

UnregisterBehavior(ICameraBehavior)

Behavior를 해제한다.

public void UnregisterBehavior(ICameraBehavior behavior)

Parameters

behavior ICameraBehavior

UnregisterModifier(ICameraModifier)

public void UnregisterModifier(ICameraModifier modifier)

Parameters

modifier ICameraModifier