기본 패턴
csharp
private void Update()
{
LookAround();
ProcessInput();
}
private void FixedUpdate()
{
ApplyPhysics();
}설명
Input은 프레임마다 받아야 하므로Update에서 처리합니다.FixedUpdate는 물리 엔진 타이밍이라서Rigidbody와 힘 관련 처리를 넣습니다.Time.deltaTimevsTime.fixedDeltaTime을 섞지 않게 주의합니다.
짧은 예제
csharp
private void Update()
{
float turn = Input.GetAxis("Horizontal");
transform.Rotate(Vector3.up, turn * 90f * Time.deltaTime);
}
private void FixedUpdate()
{
rb.AddForce(Vector3.forward * Input.GetAxis("Vertical") * 200f);
}빠른 정리
| 메서드 | 역할 |
|---|---|
Update | 입력/로직, 프레임 단위 |
FixedUpdate | 물리/힘, 일정 타임스텝 |
Time.deltaTime | Update용 |
Time.fixedDeltaTime | FixedUpdate용 |
주의할 점
Physics 연산을 Update에 넣으면 프레임률에 따라 힘이 달라지기 때문에, 입력을 Update에 받고 물리 적용은 FixedUpdate로 분리하세요.
참고 링크
2 sources