[Unity] 유니티에서 물리 관련 함수를 FixedUpdate()문에 쓰는 이유

2024. 11. 6. 18:10·Unity

물리 엔진과의 동기화가 필요한 물리적 감지나 판정을 할 때는 FixedUpdate를 사용하는 것이 일반적입니다. Unity에서는 물리 연산이나 충돌 판정을 FixedUpdate에서 실행하는 것이 권장되며, 몇 가지 주요 이유는 다음과 같습니다.

1. 물리 엔진과의 동기화

  • Unity의 물리 연산은 FixedUpdate 주기로 실행됩니다. 물리적 판정(Physics.SphereCastAll)을 Update에서 처리할 경우, 프레임마다 호출되어 물리 계산과 타이밍이 어긋날 수 있습니다. FixedUpdate에 두면 물리 엔진의 계산 주기와 맞춰져 보다 안정적인 감지가 이루어집니다.

2. 일관된 타이밍 유지

  • Update는 프레임 속도에 따라 실행되지만, FixedUpdate는 일정한 시간 간격으로 실행됩니다. Targeting()을 일정한 간격으로 호출하여 감지 정확성을 높이고, 감지가 너무 자주 실행되는 것을 방지할 수 있습니다.

3. RigidBody와 물리 연산의 자연스러운 연계

  • Targeting()의 감지 결과에 따라 AddForce와 같은 물리적 동작(Attack 코루틴)으로 이어질 경우, 이를 FixedUpdate에서 실행하는 것이 자연스러워 물리적 반응을 부드럽고 안정적으로 처리할 수 있습니다.

'Unity' 카테고리의 다른 글

[Unity] 3D에서 UI를 만들 때 꼭 알아야하는 필수 컴포넌트 RectTransform!  (1) 2024.11.07
[Unity] 유니티 코루틴(Coroutine) 깊고 간결하게 정리!  (2) 2024.11.06
[Unity] Scale의 비밀 부모-자식 관계의 스케일 상속은 각 계층에서 곱셈 방식으로 적용  (0) 2024.11.06
[Unity] 기본 호출 함수의 생명주기 Start() vs Awake()  (0) 2024.11.06
[Unity] 2D 맵에서 가상의 벽을 만들고 싶을 때!  (0) 2024.10.25
'Unity' 카테고리의 다른 글
  • [Unity] 유니티 코루틴(Coroutine) 깊고 간결하게 정리!
  • [Unity] Scale의 비밀 부모-자식 관계의 스케일 상속은 각 계층에서 곱셈 방식으로 적용
  • [Unity] 기본 호출 함수의 생명주기 Start() vs Awake()
  • [Unity] 2D 맵에서 가상의 벽을 만들고 싶을 때!
개발준입니다
개발준입니다
백문이 불여일타
  • 개발준입니다
    Re:제로부터 시작하는 개발이야기
    개발준입니다
  • 전체
    오늘
    어제
    • All (32)
      • Java & Kotlin (3)
      • Spring (0)
      • DataBase (0)
      • Git & Github (1)
      • Baekjoon (8)
      • C & C++ & C# (5)
      • Unity (12)
      • DesignPattern (3)
      • SmallTalk (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    레벨 디자인
    개발자
    디자인패턴
    알고리즘
    github
    백준
    알고리즘 #코테
    자바
    c#
    가중치 비교
    코테
    티스토리챌린지
    리스너 패턴
    게임개발
    유니티
    state pattern
    개발
    매서드
    코딩
    오블완
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.2
개발준입니다
[Unity] 유니티에서 물리 관련 함수를 FixedUpdate()문에 쓰는 이유
상단으로

티스토리툴바