2D Godot 2D 게임 기초

CharacterBody2D

노드 PhysicsBody2D < CharacterBody2D

내가 매 프레임 어디로 갈지 정하고, 엔진은 "거기 벽이 있다"만 알려주는 바디.

velocity 에 초당 픽셀을 넣고 move_and_slide() 를 부르면 벽에 막히고 미끄러진다. 중력도 직접 더해야 한다. motion_mode 에 따라 알고리즘이 통째로 갈린다 — 탑다운은 Floating, 횡스크롤은 Grounded.

어디에 쓰나

  • 플레이어
  • 적·NPC
  • 조작감을 세밀하게 만져야 하는 모든 것

비슷하지만 다른 것

  • RigidBody2D물리 엔진이 움직인다. 즉시 멈추기 같은 "비현실적인" 조작이 어렵다.
  • Area2D막지 않고 감지만 한다.
주의

velocity 에 delta 를 곱하면 안 된다. move_and_slide() 가 내부에서 곱한다.

본문에 나오는 곳: 9강 · 10강 · 11강 · 12강 · 17강

Godot 공식 문서에서 보기 →