이미지 검색을 사용해 보세요
검색창 이전화면 이전화면
최근 검색어
인기 검색어

소득공제 베스트셀러
레트로 게임 만들기 with 파이썬
핑퐁, 벽돌 깨기, FPS 10개 슈팅 게임으로 마스터하는 파이썬 & Pygame
베스트
게임 21위 게임 top20 8주
가격
35,000
10 31,500
YES포인트?
1,750원 (5%)
5만원 이상 구매 시 2천원 추가 적립
결제혜택
카드/간편결제 혜택을 확인하세요

이미 소장하고 있다면 판매해 보세요.

  •  국내배송만 가능
  •  문화비소득공제 가능

책소개

목차

Stage 01 게임 개발, 그 모험의 시작

Level 1 파이썬 개발 기지 구축
__1.1 파이썬이 초보에게 유리한 이유
__1.2 파이썬 다운로드 및 설치 방법
__1.3 PyCharm 다운로드 및 설치 방법
__1.4 PyCharm 실행하고 설정하기
____프로젝트 생성하기
__1.5 Pygame 라이브러리 다운로드 및 불러오기
____Pygame 다운로드하기
____Pygame 불러오기
____PyCharm 메뉴 한글 설정하기
__1.6 예제 자료 다운로드 및 불러오기
____코드 다운로드 & 실행 방법

Level 2 파이썬으로 전투 준비
__2.1 파이썬 기본 문법 마스터하기
____1. 주석
____2. 변수 선언과 자료형
____3. 함수
____4. 조건문(if문)
____5. 반복문(while문)
____6. 산술 연산자
____7. 대입 연산자
____8. 비교 연산자
____9. 논리 연산자
____10. 내장 함수
____11. 변수의 형태 변환
__2.2 구미호와 쉬운 남자 1
__2.3 파이썬 심화 문법 마스터하기
____1. 자료 구조: 리스트, 튜플, 딕셔너리
____2. 반복문(for문)
____3. 스코프
____4. 모듈과 패키지
____5. 알아 두면 좋은 함수 enumerate()
____6. try except로 예외 처리하기
__2.4 구미호와 쉬운 남자 2
__2.5 코드를 ‘읽는’ 방법
__2.6 알아 두면 좋을 코드 스타일 가이드
____1. PEP 8의 주요 사항
____2. 코드 가독성을 높이는 4가지 PyCharm 설정

Stage 02 Pygame이라는 전설의 아이템을 얻자!

Level 3 첫 번째 퀘스트, Pygame 장착하기
__3.1 Pygame의 구조 이해하기
____1. Pygame 초기화
____2. Pygame 창 만들기
____3. Pygame 종료하기
____4. 프레임 이해하기
____5. update()로 프레임 이어 붙이기
____6. Pygame으로 도화지에 그림 그리기 “hello world”
__3.2 Pygame의 도구와 개념 익히기
____1. 좌표
____2. 텍스트와 폰트
____3. 색상
____4. 타이머와 시간
____5. 화면(FPS) 컨트롤
____6. 사각형 그리기
____7. 원 그리기
____9. 마우스 컨트롤
____10. 충돌 감지

Level 4 두 번째 퀘스트, Pygame 수련하기
__4.1 반응 속도 테스트 만들기
____1. Pygame 초기화 및 기본 화면 설정
____2. 원 그리기 및 초기 색상 설정
____3. 안내 텍스트 추가
____4. 랜덤 시간 설정
____5. 클릭 반응 시간 기록
____6. 잘못된 클릭 처리와 게임 초기화
__4.2 초간단 탁구 게임 만들기
____1. Pygame 초기 설정 및 화면 생성
____2. 플레이어 1 패들 생성 및 움직임 구현
____3. 플레이어 2 패들 생성 및 움직임 구현(방향키 사용)
____4. 공 생성 및 위치 설정
____5. 공 움직이기
____6. 공의 경계 충돌 구현(상하 반사)
____7. 공과 패들의 충돌 구현

Level 5 세 번째 퀘스트, 화면 보호기
__5.1 ‘우주 여행’ 화면 보호기 만들기
__5.2 시각적 몰입감의 원리 이해하기
__5.3 초기 설정 및 클래스 기능, 속성 설계하기
__5.4 변수 추가 및 함수 기능 구현하기
__5.5 별의 이동 구현하기
__5.6 운동 시차 구현하기

Stage 03 레트로 게임 던전 탐구하기

Level 6 레트로 게임 마스터 1, 탁구 게임
__6.1 모티브 게임 퐁
__6.2 게임 기획 및 개발 단계 정리하기
__6.3 화면 설정하기
__6.4 테두리 그리기
__6.5 플레이 구역 구분하기
__6.6 ‘함수화’를 활용한 점선 그리기
__6.7 점선으로 플레이 공간 구분하기
__6.8 라켓 생성하기
__6.9 공 생성하기
__6.10 라켓 움직이기
____1. 첫 번째 문제: 게임 구역을 벗어나는 라켓
____2. 두 번째 문제: 끊어지는 키 입력
__6.11 공 움직이기
____1. 등속, 가속, 충돌
____2. 등속과 방향
____3. 충돌 개념 구현
____4. 가속과 제한 속도 개념 구현
__6.12 플레이어와 공의 충돌 구현하기
__6.13 점수 표시하기
__6.14 게임 종료 조건 만들기
__6.15 게임 재시작 화면 만들기
__6.16 실행 시간 설정하기
__6.17 게임 타이틀 화면 추가
__6.18 공의 시작 방향과 밸런스 설정하기
__6.19 좌우 테두리 없애기
__6.20 공을 원으로 만들기
__6.21 마무리, 전체 코드 정리하기
____불필요한 import 구문 정리
____중복된 코드 함수화(draw_text)
____Pygame 이벤트 처리 방식 개선
____코드 중복 제거와 위치 조정(Ball 클래스 초기화)
____게임 상태 변수의 일관성 유지
____코드 스타일 개선(PEP 8 준수)

Level 7 레트로 게임 마스터 2, 벽돌 깨기 게임
__7.1 모티브 게임, 알카노이드
__7.2 화면 생성 & 게임 루프 설정하기
__7.3 플레이어(패들) 생성하기
__7.4 블록 생성하기
__7.5 공 생성하기
__7.6 공의 움직임 구현하기
__7.7 공과 블록 충돌 구현하기
__7.8 공과 플레이어 충돌 구현하기
__7.9 점수 및 생명 시스템 구현하기
__7.10 블록 크기 & 배치 수정하기
__7.11 충돌 처리 개선하기
__7.12 아이템 생성하기
__7.13 아이템 이동 및 충돌 구현하기
__7.14 아이템과 패들의 상호 작용 효과 구현하기
__7.15 아이템 색상 변경하기
__7.16 아이템 추가 효과 부여하기
__7.17 리팩토링하기
__7.18 게임 인트로 & 게임 오버 화면 구현하기
__7.19 블록 기능 패치하기
__7.20 플레이어와 공 기능 패치하기

Level 8 레트로 게임 마스터 3, 총알 피하기 게임
__8.1 모티브 게임, 닷지
__8.2 기본 설정과 초기 화면 구성하기
__8.3 플레이어 클래스 정의하기
__8.4 총알 클래스 정의하기
__8.5 충돌 감지 기능과 게임 종료/재시작 기능 구현하기
__8.6 점수 기능 구현하기
__8.7 게임 상태 관리하기
__8.8 게임 클래스 구현하기
__8.9 특별한 총알, 혜성 구현하기
__8.10 총알 재생성과 개수 표시 기능 추가하기
__8.11 최고 점수 기록 시스템 구현하기
__8.12 BGM 넣기
__8.13 이미지 넣기

Stage 04 레트로 게임 던전 중간 보스전

Level 9 레트로 슈팅 게임 마스터 1, 경찰 FPS 게임
__9.1 모티브 게임, 버추어 캅
__9.2 기본 설정과 초기화하기
__9.3 총기 클래스 구현 및 총알 발사 기능 추가하기
__9.4 플레이어 상태 클래스 구현하기
__9.5 십자선 구현하기
__9.6 적 객체 생성 및 기본 동작 구현하기
__9.7 인질 객체 생성 및 기본 동작 구현하기
__9.8 적 공격 및 동심원 판정 구현하기
__9.9 적과 인질의 충돌 판정 구현하기
__9.10 스페셜 적 추가하기
__9.11 피격 효과 구현하기
__9.12 피격 효과 포함한 총기 UI 및 퀵 리로드 표시하기
__9.13 인질의 동작과 상호 작용 개선하기
__9.14 Game 클래스로 전체 흐름 관리하기
__9.15 Intro, game over, 재시작 기능 추가하기
__9.16 게임 밸런스 조정하기
__9.17 이미지 추가하기

Level 10 레트로 슈팅 게임 마스터 2, 우주 침략자 게임
__10.1 모티브 게임, 스페이스 인베이더
__10.2 실행 환경 만들기
__10.3 unit과 player 클래스 구현하기
__10.4 침략자 만들기
__10.5 침략자 무리 만들기
__10.6 침략자에게 색상 입히기
__10.7 침략자 움직이기
__10.8 플레이어의 총알 구현하기
__10.9 적과 총알의 충돌 구현하기
__10.10 적의 총알 구현하기
__10.11 점수, 생명 시스템 구현하기
__10.12 게임 종료 조건 및 화면 구현하기
__10.13 게임 난이도 높이기 ① 벽 구현하기
__10.14 게임 난이도 높이기 ② UFO 만들기

Stage 05 레트로 게임 던전 최종 보스전

Level 11 비상하는 용의 전설, 용 비행 슈팅 게임
__11.1 모티브 게임, 드래곤 플라이트
__11.2 스크롤링 배경 만들기
__11.3 모듈화를 활용한 게임 설계하기
____게임의 핵심 요소 살펴보기
____게임 프로젝트 구조
____게임 제작 시 참고 사항
__11.4 Main 클래스의 구성 살펴보기
__11.5 Player 클래스의 구성 살펴보기
__11.6 Monster 구현하기
__11.7 Coin 구현하기
__11.8 Item 구현하기
__11.9 Bullet 구현하기
__11.10 Boss 구현하기
__11.11 Meteo 구현하기
__11.12 Utils 구현하기
__11.13 TicksManager 관리하기
__11.14 Scrolling_background 구현하기

Level 12 스페이스 탄막 슈팅 게임
__12.1 모티브 게임, 스트라이커즈 1945
__12.2 게임 초기 설정 및 배경 요소 구현하기
__12.3 플레이어 클래스 만들기
__12.4 적 클래스 만들기
__12.5 시나리오 파일 만들기
__12.6 충돌 처리
__12.7 특수 스킬

부록 자주 마주치는 에러 및 해결 방법
부록 A 해결 방법이 간단한 에러
__A.1 파이썬 문법 및 오타 관련 에러
__A.2 변수 참조 및 할당 관련 에러
__A.3 타입 및 연산 관련 에러
__A.4 자료 구조 및 인덱싱 관련 에러
__A.5 타입 변환 및 값 관련 에러
__A.6 반복 및 순회 관련 에러
__A.7 파일 입출력 및 경로 관련 에러
__A.8 모듈 및 임포트 관련 에러
__A.9 사용자 인터럽트 및 종료 관련 에러
__A.10 모호한 접근 및 논리 오류
__A.11 수학 관련 에러
__A.12 메모리 및 리소스 관련 에러

부록 B Pygame 에러
__B.1 메인 루프 내에서 시간 관리 미흡
__B.2 이벤트 처리를 제대로 하지 않음
__B.3 객체 지향 프로그래밍(OOP)의 활용 부족
__B.4 화면 업데이트 및 flip()/update() 호출 실수
__B.5 리소스 관리 문제(메모리 누수)
__B.6 충돌 감지 및 처리 로직의 잘못된 구현
__B.7 화면 깜박임 문제
__B.8 게임 루프 내에서 리소스 로딩 및 사운드 초기화의 비효율적 사용
__B.9 잘못된 프레임 기반 이동
__B.10 텍스트 렌더링 문제

저자 소개 4

現 (ETRI부설)국가보안기술연구소 선임연구원 前 삼성전자 무선사업부 선임연구원 충남대학교 대학원 국가안보융합학과 박사과정 고려대학교 대학원 컴퓨터학과 공학박사수료 중앙대학교 산업창업경영대학원 정보경영전공 경영학석사 인하대학교 대학원 컴퓨터정보공학과 공학석사 한남대학교 전자공학과 공학사 現 대전광역시 데이터기반행정 활성화 위원회 정책위원 現 KITRI BoB 보안제품개발트랙 멘토 前 SW마에스트로 멘토 前 이노베이션아카데미 42서울 비상근 멘토 창의적소프트웨어 및 서비스 공모전 최우수상 ImagineCup 한국대표 선발전 소프트웨어디자인부문 3위 전국정보화
現 (ETRI부설)국가보안기술연구소 선임연구원
前 삼성전자 무선사업부 선임연구원
충남대학교 대학원 국가안보융합학과 박사과정
고려대학교 대학원 컴퓨터학과 공학박사수료
중앙대학교 산업창업경영대학원 정보경영전공 경영학석사
인하대학교 대학원 컴퓨터정보공학과 공학석사
한남대학교 전자공학과 공학사
現 대전광역시 데이터기반행정 활성화 위원회 정책위원
現 KITRI BoB 보안제품개발트랙 멘토
前 SW마에스트로 멘토
前 이노베이션아카데미 42서울 비상근 멘토
창의적소프트웨어 및 서비스 공모전 최우수상
ImagineCup 한국대표 선발전 소프트웨어디자인부문 3위
전국정보화능력개발경진대회 응용소프트웨어개발부문 2위
전국정보통신경진대회 교육용소프트웨어개발부문 대상
외 다수

조수현의 다른 상품

現 정부 기관 SM 프로젝트 PL 現 대덕인재개발원 시간 강사 前 백엔드 개발자 前 대한민국 육군 대위 대덕인재개발원 풀스택 과정 수료 단국대학교 경영학과 경영학사
現 서울여자대학교 디지털미디어학과 겸임교수 現 건국대학교 대학원 메타버스융합학과 겸임교수 現 (주)노바프로토콜 대표 前 블록체인 스타트업 선임연구원 前 중앙대학교 강사 前 이화여자대학교 강사 前 동국대학교 강사 고려대학교 대학원 컴퓨터학과 공학박사수료 경북대학교 과학기술대학원 융복합시스템공학전공 공학석사 경북대학교 융복합시스템공학부 공학사
노근우_공동 저자 現 AlpacaX 소프트웨어 엔지니어 단국대학교 컴퓨터공학과 공학사

품목정보

발행일
2025년 11월 01일
쪽수, 무게, 크기
724쪽 | 188*257*40mm
ISBN13
9791193083314

출판사 리뷰

★이 책에서 다루는 주요 분야★
Stage 1 : 게임 개발, 그 모험의 시작
파이썬과 PyCharm으로 개발 기지를 구축합니다. 게임 개발을 시작할 준비를 마칠 수 있어요.

Stage 2 : Pygame이라는 전설의 아이템을 얻자!
Pygame 이라는 라이브러리, 즉 핵심 도구를 손에 쥐게 됩니다.
▶ 만드는 게임: 반응 속도 테스트, 초간단 탁구 게임, 우주 여행 화면 보호기

Stage 3 : 레트로 게임 던전 탐구하기
레트로 아케이드 게임들을 만들며 게임의 원리를 이해하고 코딩 실력을 키웁니다.
▶ 만드는 게임: 탁구 게임, 벽돌 깨기 게임, 총알 피하기 게임

Stage 4 : 레트로 게임 던전 중간 보스전
Stage 3에서 다룬 것보다 난이도 높은 게임들을 만들며 게임의 원리를 이해하고 코딩 실력을 키웁니다.
▶ 만드는 게임: 경찰 FPS 게임, 우주 침략자 게임

Stage 5 : 레트로 게임 던전 최종 보스전
이 책에서 가장 어려운 난이도에 맞춰 게임을 제작합니다. 이 과정에서 지금까지 학습한 개념을 총망라하고 정리할 수 있습니다.
▶ 만드는 게임: 용 비행 슈팅 게임, 스페이스 탄막 슈팅 게임

부록 : 자주 마주치는 에러 및 해결 방법
게임을 개발하는 동안 자주 마주하게 되는 파이썬 문법 및 Pygame 관련 에러 해결법을 정리했습니다.
예제 파일 : github.com/IhyeonKlim/retroGameWithPython

★이 책의 대상 독자★
- 프로그래밍 경험은 거의 없지만, 직접 게임을 만들어 보고 싶다면?
- 게임 완성 후 디자인이나 사운드까지 스스로 꾸며 보고 싶다면?
- 파이썬이라는 언어를 배웠지만 ‘무엇을 만들어야 할지’ 모르겠다면?
- 물리, 충돌, 점수 계산 등 게임의 핵심 로직을 단계별로 익히고 싶다면?
- 파이썬 수업에서 실습 프로젝트를 찾고 있다면?

추천평

유년 시절부터 좋아했던 게임을 직접 만들어 보겠다는 꿈을 실현한 열정과 더 많은 독자들에게 자신의 경험을 공유하기 위해 기나 긴 여정을 시작한 저자에게 찬사를 보냅니다. 게임을 단순한 오락 도구로만 보지 않고, 교육적 목적으로 활용하겠다는 저자의 사명감을 느낄 수 있어 저 또한 소중히 읽어 내려갔습니다. 순수한 꿈이 실현되기까지 숱한 어려움과 좌절 그리고 유혹도 있었겠지만, 내실을 다져 가며 하나하나 쌓아왔다는 것이 느껴지는 책입니다. 특히 이 분야를 처음 접하는 분들에게 매우 쉽게 작성되어 있어서 적극 추천합니다.

게임을 직접 제작하기 위한 프로그래밍 기본 개념과 제작의 기본 원리 그리고 어려움이 예상되는 부분까지 직접 겪은 시행착오를 가감 없이 알려 주고 있어 읽는 내내 궁금증이 쉽게 풀렸습니다. 이 책은 게임을 시작하는 청소년들에만 국한되지 않고, 일반인과 IT 전문가들에게도 공감과 도움이 될 것입니다. 제가 조수현 작가와 같은 직장에서 근무하면서도 이렇게 멋진 꿈을 간직하고 살아왔다는 것을 몰랐음에 많은 아쉬움이 남습니다. 앞으로 또 다른 멋진 작품이 탄생할 것이라 확신합니다. - 조현숙 (코드게이트 보안포럼 이사장, 前 국가보안기술연구소장)
코딩, 이제 전문가만의 기술이 아닌 모두의 교양입니다! 이 책은 게임을 만들며 배우는 코딩의 즐거움을 알려주는 든든한 안내서입니다. 이 책은 간결하고 강력한 언어인 파이썬을 통해 흥미로운 게임을 주제로, 실습 위주의 학습 방식으로 알고리즘, 구조적 사고, 논리적 문제 해결 능력을 자연스럽게 키울 수 있도록 돕습니다. 코딩을 처음 접하는 초보자부터 교육 현장에서 활용할 유용한 자료를 찾는 교육자까지, 이 책은 누구나 쉽고 재미있게 코딩의 세계에 빠져들어 코딩을 진정한 교양으로 만들 수 있도록 돕는 최고의 지침서가 될 것입니다. - 김경수 (KAIST 대외부총장)
이 책은 단순한 파이썬 입문서를 넘어, 게임 개발 전 과정을 단계별로 체험하도록 설계된 실용적인 안내서입니다. 특히 프로젝트 중심 구성은 프로그래밍 초보자에게 높은 진입 장벽처럼 느껴질 수 있는 학습 과정을 실질적이고 흥미로운 방식으로 풀어냅니다.

이 책의 가장 큰 장점은 이론보다 실습에 중점을 둔 구조입니다. 독자는 코드를 직접 실행하며 자연스럽게 구조와 원리를 익히고, 이를 바탕으로 점차 창의적인 시도를 확장해나갈 수 있습니다. 이는 단순한 코드 암기나 따라 하기에 그치지 않고, 실질적인 문제 해결 능력과 응용력을 키우는 데 도움을 줍니다. 또한 게임이라는 매체를 통해 추상적인 개념을 시각화하고 체험적으로 학습할 수 있다는 점은 교육적으로도 매우 의미가 있습니다. 변수, 조건문, 함수, 객체 지향과 같은 핵심 개념을 자연스럽게 익히면서, 이후 심화된 프로그래밍 학습을 위한 탄탄한 기초를 다질 수 있습니다.

이 책은 프로그래밍 입문자뿐만 아니라 게임 개발이라는 창의적인 영역에 관심 있는 모든 이에게 최적화된 안내서입니다. 실용성과 교육적 가치를 동시에 갖춘 이 책은 많은 독자에게 영감을 줄 것입니다. - 강정민 (고려대학교 교수)
파이썬이 세상에 나온 지도 벌써 20년이 넘었습니다. 유틸리티부터 대용량 데이터 처리, 인공지능, 그리고 게임 개발에 이르기까지 파이썬은 다양한 영역에서 그 진가를 발휘해왔습니다. 저자는 게임의 매력에 빠져 중학생 시절부터 게임을 직접 기획하고, 디자인과 그래픽은 물론, 코딩까지 직접 하며 게임 제작의 전 과정을 몸소 경험해 왔습니다. 오랜 시간 쌓아 온 경험과 노하우가 이 책에 고스란히 담겨 있습니다. 특히 파이썬과 게임이라는 주제를 결합하여 입문자들이 쉽게 포기하지 않도록 단계별로 친절히 안내하고 있어, 처음 게임을 만들어 보고 싶은 모든 분에게 이 책은 든든한 길잡이가 되어 줄 것입니다. - 조성택 (네이버 미디어랩스 리더)
추천사 요청으로 책을 읽었을 뿐인데 파이썬을 알게 되고, Pygame을 학습하다 보니 어느새 6개의 게임을 완성해버렸습니다. 어릴 때 오락실에서 하던 게임들을 고작 2시간 만에 만들어버린 셈입니다. 원하는 만큼 총알 수를 늘리고, 장전 속도를 빠르게 하는 등 입맛대로 게임을 설정할 수 있다는 것도 마치 게임을 해킹한 것 같이 짜릿한 경험이었습니다.
코드도 직관적이고 주석이 잘 달려 있어 파이썬 기본만 알면 응용해서 금방 새로운 게임을 만들 수 있을 것 같습니다. 게임을 좋아하는 자녀가 이 책을 한 번 읽으면 개발자로 훌쩍 성장할 수 있고, 두 번 읽으면 게임 프로그래머가 될 수 있을 것 같습니다. 추천사를 써야 하는데, 책은 안 읽고 저도 모르게 게임을 만드는 데 푹 빠져 있었네요. 이 책을 읽는 여러분도 저와 같은 경험을 하길. - 고우영 (국가보안기술연구소 선임연구원)

리뷰/한줄평1

리뷰

첫번째 리뷰어가 되어주세요.

한줄평

10.0 한줄평 총점

클린봇이 부적절한 글을 감지 중입니다.

설정
31,500
1 31,500