Class CameraBrain
카메라 오케스트레이션 전용 단일 진입점. Update: Input 처리 → Mode Tick. LateUpdate: Pipeline 실행 → Camera 반영.
public sealed class CameraBrain : MonoBehaviour, ICameraBrain
- Inheritance
-
objectObjectComponentBehaviourMonoBehaviourCameraBrain
- Implements
Remarks
허용: 입력 수집, Mode/Behavior/Modifier/Pipeline 호출, 상태 전환. 금지: 충돌/Blend/Motion/Shake/LookAt/LockOn 직접 계산.
Properties
CurrentPose
public CameraPose CurrentPose { get; }
Property Value
Methods
AddBehavior(ICameraBehavior)
public void AddBehavior(ICameraBehavior behavior)
Parameters
behaviorICameraBehavior
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
timeSystemITimeSysteminputICameraInputAdapterblendICameraBlendServicecollisionCameraCollisionSolvermotionMotionProcessormodifierStackModifierStacksolverFinalSolvercollisionConfigCollisionConfig
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
unityCameraCamerarigCameraRigfollowTargetTransform
RegisterBehavior(ICameraBehavior)
Behavior를 등록한다. 중복 등록 방지. Priority 기준으로 자동 정렬.
public void RegisterBehavior(ICameraBehavior behavior)
Parameters
behaviorICameraBehavior
RegisterMode(CameraModeType, ICameraMode)
public void RegisterMode(CameraModeType type, ICameraMode mode)
Parameters
typeCameraModeTypemodeICameraMode
RegisterModifier(ICameraModifier)
public void RegisterModifier(ICameraModifier modifier)
Parameters
modifierICameraModifier
RemoveBehavior(ICameraBehavior)
public void RemoveBehavior(ICameraBehavior behavior)
Parameters
behaviorICameraBehavior
SetFollowTarget(Transform)
추적 대상을 런타임에 교체한다.
public void SetFollowTarget(Transform target)
Parameters
targetTransform
SetMode(CameraModeType)
public void SetMode(CameraModeType mode)
Parameters
modeCameraModeType
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
behaviorICameraBehavior
UnregisterModifier(ICameraModifier)
public void UnregisterModifier(ICameraModifier modifier)
Parameters
modifierICameraModifier