『파이썬으로 만드는 나만의 게임』은 파이썬의 기초 지식과 응용 지식을 함께 함양한다. 기본 문법과 연산자, 제어문, 함수를 익히며 프로젝트를 실습하고, 이 과정에서 파이썬 문법에 대한 기본기를 완전히 습득할 수 있다. 프로그래밍을 처음 접하는 사람이라도 쉽게 시작하며, 실제 실습을 통하여 코딩에 대한 기본기를 성장시킬 수 있다.
이 책은 Pygame 라이브러리를 이용하여 간단하게 도형을 만드는 것부터 시작하여 하나의 게임을 만드는 프로세스를 친절하게 설명하고 있다. 이해를 위한 예시와 팁은 게임을 처음 만들어 보는 사람들에게 게임에 대한 직관을 가져다준다. 더 나아가 무료 리소스 활용과 실행 파일을 만드는 방법, 게임을 조금 더 업그레이드시킬 수 있는 아이디어도 제시해준다. 이 책을 통하여 파이썬을 익히고, 게임 개발에 대한 꿈을 펼칠 수 있는 좋은 발판이 될 것이다. (블로그 : https://bit.ly/3umYU7w)
Contents
Chapter 1. 파이썬과 IDE 소개 및 설치
1.1 파이썬 소개 및 특징
1.2 파이썬 설치 및 환경설정
1.3 IDLE
1.4 Visual Studio Code 설치
1.5 파이참(PyCharm) 설치
Chapter 2. 파이썬 배우기
2.1 변수와 자료형
2.1.1 변수(Variable)
2.1.2 주석(Comment)
2.1.3 정수, 실수, 불리언 자료형
2.1.4 문자열(String)
2.1.5 리스트(List)
2.1.6 딕셔너리(Dictionary)
2.1.7 자료형 변환
2.1.8 자료형 계산
2.2 연산자(Operators)
2.2.1 산술 연산자(Arithmetic Operators)
2.2.2 비교 연산자(Comparison Operators)
2.2.3 할당 연산자(Assignment Operators)
2.2.4 논리 연산자(Logical Operators)
2.2.5 멤버 연산자(Membership Operators)
2.2.6 식별 연산자(Identity Operators)
2.2.7 연산자 우선순위(Operators Precedence)
2.3 제어문
2.3.1 조건문
2.3.2 반복문
2.4 함수(Function)
2.4.1 반환 없는 함수
2.4.2 반환 있는 함수
2.4.3 전역 변수와 지역 변수
2.5 객체(Object)와 클래스(Class)
2.6 모듈(Module)
2.6.1 시간 모듈(Time Module)
2.6.2 랜덤 모듈(Random Module)
Chapter 3. pygame 배우기
3.1 pygame 소개 및 특징
3.2 pygame 라이브러리 설치
3.2.1 터미널에서 pygame 설치
3.2.2 Visual Studio Code에서 pygame 설치
3.2.3 파이참에서 pygame 설치
3.3 pygame 모듈
3.4 pygame 기본
3.5 선, 도형, 글자 그리기
3.6 공놀이 하기
3.7 이미지 사용
3.8 키보드 조작
3.9 마우스 조작
3.10 음악 및 사운드 사용
Chapter 4. 스네이크 게임(Snake Game)
4.1 스네이크 게임 규칙
4.2 스네이크 게임 만들기
4.2.1 패키지 import
4.2.2 게임 화면 구성
4.2.3 방향 개념 이해
4.2.4 색상 정의
4.2.5 뱀 객체 정의
4.2.6 먹이 객체 정의
4.2.7 게임 객체 정의
4.2.8 메인 함수 정의
4.3 스네이크 게임 실행
4.4 스네이크 게임 실행 파일 만들기
4.5 다양한 스네이크 게임
Chapter 5. 핑퐁 게임(Ping Pong Game)
5.1 핑퐁 게임 규칙
5.2 핑퐁 게임 리소스
5.3 핑퐁 게임 만들기
5.3.1 모듈과 전역변수 정의
5.3.2 공 객체 정의
5.3.3 플레이어 객체 정의
5.3.4 적 객체 정의
5.3.5 게임 객체 정의
5.3.6 리소스 경로 함수 정의
5.3.7 메인 함수 정의
Chapter 6. 물고기 게임(Fish Game)
6.1 물고기 게임 규칙
6.2 물고기 게임 리소스
6.3 물고기 게임 만들기
6.3.1 모듈과 전역변수 정의
6.3.2 물고기 객체 정의
6.3.3 파이프 객체 정의
6.3.4 게임 객체 정의
6.3.5 리소스 경로 함수 정의
6.3.6 메인 함수 정의
6.4 물고기 게임 실행
6.5 물고기 게임 실행 파일 만들기
Chapter 7. 자동차 게임(Racing Car Game)
7.1 자동차 게임 규칙
7.2 자동차 게임 리소스
7.3 자동차 게임 만들기
7.3.1 모듈과 전역변수 정의
7.3.2 자동차 객체 정의
7.3.3 차선 객체 정의
7.3.4 게임 객체 정의
7.3.5 리소스 경로 함수 정의
7.3.6 메인 함수 정의
7.4 자동차 게임 실행
7.5 자동차 게임 실행 파일 만들기
Chapter 8. 우주선 게임(Spaceship Game)
8.1 우주선 게임 규칙
8.2 우주선 게임 리소스
8.3 우주선 게임 만들기
8.3.1 모듈과 전역변수 정의
8.3.2 우주선 객체 정의
8.3.3 암석 객체 정의
8.3.4 워프 객체 정의
8.3.5 게임 객체 정의
8.3.6 리소스 경로 함수 정의
8.3.7 메인 함수 정의
8.4 우주선 게임 실행
8.5 우주선 게임 실행 파일 만들기
Chapter 9. 슈팅 게임(Shooting Game)
9.1 슈팅 게임 규칙
9.2 슈팅 게임 리소스
9.3 슈팅 게임 만들기
9.3.1 모듈과 전역변수 정의
9.3.2 전투기 객체 정의
9.3.3 미사일 객체 정의
9.3.4 암석 객체 정의
9.3.5 게임 객체 정의
9.3.6 리소스 경로 함수 정의
9.3.7 메인 함수 정의
9.4 슈팅 게임 실행
9.5 슈팅 게임 실행 파일 만들기
Author
이수안
강원대학교 SW중심대학 연구교수이다. ‘분산 병렬 컴퓨팅을 이용한 빅데이터의 효율적 다차원 분석’이라는 주제의 논문으로 강원대학교 대학원에서 석·박사 학위를 받았다. ㈜알티베이스에서 전문연구요원으로 일하면서 스트림 처리 엔진·인메모리 스토리지 엔진을 연구 및 개발했다. 데이터와 AI를 이용한 이로운 세상을 꿈꾸는 데이터 과학자로서, 빅 데이터, 머신러닝, 딥러닝, 실시간 데이터 처리 분야에서 50편 이상의 논문을 발표하며 실용적인 연구를 수행하고 있다. 인하대학교, 강원대학교, 한국산업기술대학교, 한림성심대학교 등 여러 대학에서 컴퓨터를 쉽게 가르치기 위해 노력하고 있다. 컴퓨터에 관심이 많은 학생들을 위한 교육용 유튜브 채널 ‘이수안컴퓨터연구소’ 또한 운영하고 다(https://www.youtube.com/c/이수안컴퓨터연구소).
강원대학교 SW중심대학 연구교수이다. ‘분산 병렬 컴퓨팅을 이용한 빅데이터의 효율적 다차원 분석’이라는 주제의 논문으로 강원대학교 대학원에서 석·박사 학위를 받았다. ㈜알티베이스에서 전문연구요원으로 일하면서 스트림 처리 엔진·인메모리 스토리지 엔진을 연구 및 개발했다. 데이터와 AI를 이용한 이로운 세상을 꿈꾸는 데이터 과학자로서, 빅 데이터, 머신러닝, 딥러닝, 실시간 데이터 처리 분야에서 50편 이상의 논문을 발표하며 실용적인 연구를 수행하고 있다. 인하대학교, 강원대학교, 한국산업기술대학교, 한림성심대학교 등 여러 대학에서 컴퓨터를 쉽게 가르치기 위해 노력하고 있다. 컴퓨터에 관심이 많은 학생들을 위한 교육용 유튜브 채널 ‘이수안컴퓨터연구소’ 또한 운영하고 다(https://www.youtube.com/c/이수안컴퓨터연구소).