Table of Contents

Interface ITickable

Namespace
Framework.Core
Assembly
Assembly-CSharp.dll

TickSystem으로부터 매 프레임(또는 지정 Interval마다) Tick을 받는 계약.

public interface ITickable

Examples

public class PlayerService : ITickable
{
    public void Tick(float dt)
    {
        // dt = ITimeSystem.DeltaTime. Pause 시 0.
        _position += _velocity * dt;
    }
}

// PlaySceneScope 등록:
tick.Register(resolver.Resolve<PlayerService>(), TickInterval.ServiceTick);

Remarks

[금지] MonoBehaviour.Update 직접 사용. 모든 프레임 업데이트는 이 인터페이스를 통해 처리한다.
[규칙] dtITimeSystem.DeltaTime에서 전달된 값만 사용한다. Time.deltaTime 직접 참조 금지.
[규칙] Pool 대상은 OnGet()에서 TickSystem.Register, OnRelease()에서 Unregister한다.
같은 TickInterval 그룹 내 실행 순서는 Register 호출 순서와 동일하다.

Methods

Tick(float)

매 프레임(또는 TickInterval에 따라) 호출되는 업데이트 메서드.

void Tick(float dt)

Parameters

dt float

ITimeSystem에서 전달된 DeltaTime. IsPaused 상태이면 0.