필리핀 대학 시험 테마의 무한 아케이드 게임 'The Last Bluebook' 개발기: Amazon Q와 Pygame-CE 활용
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
앱 개발
대상자
- 초보 게임 개발자: AI 도구와 Pygame-CE를 활용한 빠른 프로토타이핑 경험
- AWS 기술 탐구자: Amazon Q의 자동화 기능과 코딩 템플릿 활용
- 난이도: 중간 (기본적인 프로그래밍 지식과 AI 도구 사용 경험 요구)
핵심 요약
- Amazon Q와 Pygame-CE를 활용한 1일 게임 개발 성공:
pygame-ce
와 AI 도구를 통해 복잡한 게임 로직을 1일 만에 구현 - 게임 시스템 핵심 기능:
- 동적 등급 스프라이트 매핑: GRADE_SEQUENCE
를 기반으로 5.00~1.00 등급에 맞는 스프라이트 자동 선택
- 충돌 감지 및 점수 시스템: bounding box
기반 충돌 검출, 실시간 점수 추적 및 색상 피드백 제공
- 난이도 증가 메커니즘: 점수별로 사출 속도 증가 및 무작위 각도 조정(math.radians
)
섹션별 세부 요약
1. 리소스 관리 및 상태 관리
- Amazon Q가 이미지/음성 로딩 시
fallback behavior
를 통해 자원 누락 대응 - 게임 상태(시작 화면, 게임 진행, 게임 오버)를
start_screen
,gameplay
,game_over
플래그로 구분
2. 충돌 감지 및 난이도 조절
bounding box
기반 충돌 감지로 점수(체크마크)와 위험 요소(등급)의 상호작용 구현- 점수 당 5점마다 사출 속도 증가:
projectile_rate = base_rate + (score // 5) * 0.1
3. 음향 시스템 및 UI 피드백
- 배경 음악 재생 및
mute toggle
기능 구현:pygame.mixer.music.set_volume()
활용 - 점수 수집 시 팝업 효과 및 실시간 점수 표시:
score_multiplier
기반 색상 변경(purple
→white
)
4. 스프라이트 동적 생성 및 위치 배치
- 등급에 따른 스프라이트 자동 매핑:
get_projectile_image_for_level(level)
함수 사용 - 중앙 근접 방지 로직:
min_distance_from_center
기준으로 위치 생성(generate_point_position()
)
결론
- AI 도구(Amazon Q) 활용을 통해 복잡한 게임 로직을 1일 내 구현 가능
pygame-ce
의bounding box
충돌 감지와GRADE_SEQUENCE
기반 동적 스프라이트 매핑은 게임 개발 효율성 향상에 기여- 실무 적용 시 팁: AI 도구와 프레임워크 병행 시
code template
생성 및fallback behavior
구현을 병행하여 안정성 확보