데브허브 | DEVHUB | This Game Has BIG Problems... | Godot Code ReviewThis Game Has BIG Problems... | Godot Code Review
- 게임 잼(Godot WildJam 79) 제출작 'Chess Mania' 코드 리뷰로, 일주일 만에 개발된 게임의 문제점과 개선 방안을 다룹니다. 🎮
- 불분명한 메인 메뉴 UI는 플레이 및 종료 버튼을 명확히 하거나, 게임 내에서 시작/종료 기능을 제공하는 것이 좋습니다. 🖼️
- 플레이어와 적이 서로에게 끼이는 버그는 충돌 레이어와 마스크 설정을 조정하여 물리적 충돌 없이 피해 감지만 하도록 해결했습니다. 🚧
- 탑다운 2D 게임에서
CharacterBody2D의 motion_mode는 Grounded 대신 Floating으로 설정해야 불필요한 지면 감지 기능을 피할 수 있습니다. ⬆️
- 환경을 구성하는
StaticBody2D는 충돌 레이어만 필요하며, 능동적으로 충돌을 감지하지 않으므로 마스크를 설정할 필요가 없습니다. 🎭
- 플레이어 이동 로직에 중복 코드, 불필요한 조건문, 비정규화된 벡터 사용 등 비효율적인 부분이 많아 간결하게 개선했습니다. 🧹
Input.get_vector를 사용하여 이동 입력을 훨씬 간결하고 효율적으로 처리할 수 있음을 시연했습니다. 🕹️
- 가속 및 감속 구현 시
lerp 함수를 프레임 속도에 독립적으로 만들기 위한 수학적 공식(1.0 - exp(-smoothing * delta))을 소개하고 적용했습니다. 🚀
- 엔티티에 대한 상속보다는 컴포지션(예: 히트박스) 사용을 선호하며, 재사용 가능한 제네릭 컴포넌트의 이점을 언급했습니다. 🧩
- 코딩 학습 플랫폼 'Kodi'를 스폰서로 소개하며, 게임화된 학습 시스템과 AI 튜터 기능을 강조했습니다. 🧑💻