주요내용
Chapter1게임제작의구조에대해알아보자
게임이무엇인지,컴퓨터가어떻게프로그램을실행하는지,그리고게임과수학의관계를간단한예로설명합니다.이어서파이썬과IDLE을설치실행하고,아주기초적인코드작성저장실행과정을경험해봅니다.
Chapter2프로그래밍기초지식
입력출력,변수,배열,조건문,반복문,함수등파이썬프로그래밍의기본문법을배웁니다.게임제작에꼭필요한“생각을코드로옮기는방법”을간단한예제프로그램으로연습합니다.
Chapter3그래픽을표시하자
tkinter를이용해윈도와캔버스를만들고,선도형텍스트이미지등을화면에그리는방법을익힙니다.좌표와2차원배열을이용해색과배치를제어하는등,게임화면의기초가되는그래픽표현을연습합니다.
Chapter4게임제작을위한기초지식
실시간으로화면을갱신하고,마우스키보드입력을이벤트로받아처리하는방법을배웁니다.전역변수,좌표계산,충돌판정(원/사각형)을통해“움직이고부딪히는”게임의기본구조를이해합니다.
Chapter5두더지잡기를만들어보자
랜덤,배열,실시간처리,키입력등을조합해두더지잡기게임을완성합니다.타이틀게임오버화면전환까지구현해보며,하나의완성된미니게임을설계구현개조하는흐름을체험합니다.
Chapter6테니스게임을만들어보자
벡터와속도를이용해공이움직이고튕기는간단한물리표현을배우며,공과바,배경을이용한테니스게임을만듭니다.점수와하이스코어,화면전환,충돌판정까지포함한좀더복잡한게임구조를구현합니다.
Chapter7레이싱게임을만들어보자
스크롤되는배경,플레이어자동차,적차량을배열과실시간처리로관리해레이싱게임을제작합니다.여러적차량과점수,게임오버처리등으로,“여러오브젝트가동시에움직이는”게임구조를익힙니다.
Chapter8슈팅게임으로복습해보자
슈팅게임예제(galaxy_defender.py)를전체적으로뜯어보며,그동안배운변수배열함수이벤트실시간처리수학계산등을종합적으로복습합니다.코드를구조별로분석하고,스스로개조해보는연습을합니다.
AppendixA점프액션게임으로배워보자
점프액션게임예제(help_princess.py)를통해주인공의점프이동애니메이션을수학과배열로표현하는방법을봅니다.바닥과구멍을스크롤하며,요소추가삭제로맵을구성하는기법을익힙니다.
AppendixB3D던전탐색프로그램으로배워보자
레이캐스팅을이용해3D던전(미로)을표현하는프로그램(labyrinth_explorer.py와maze_data1.py)을분석합니다.3차원공간데이터구조,삼각함수와거리계산,벽높이보정등을통해3D표현의기본원리를이해합니다.
저자의말
이책은프로게임제작자가알기쉽게설명하는게임제작&프로그래밍입문서입니다.
게임을제작하기위해서는프로그래밍이나게임제작지식은물론이고,게임알고리즘을만들기위한수학지식도반드시필요합니다.그래서게임제작이나프로그래밍이처음인분을위해이책을집필했습니다.Python이라는배우기쉬운프로그래밍언어를이용해게임을만들면서프로그래밍의기초지식,게임제작방법,그리고게임제작에필요한알고리즘이나수학을알기쉽게배우는내용을담고있습니다.
수학이라는말이나오자마자‘어려워보인다’,‘나는못할것같다’고생각하시는분도계실지모르겠지만,걱정하실필요는없습니다.중학교나고등학교에서배우는수학중게임제작에필요한지식을사용해서간단하게만들수있는것부터단계적으로어려운게임을만들수있도록하겠습니다.그러기위해서이책은수학을싫어하시는분들도즐겁게배우고자연스럽게이해할수있도록구성되어있습니다.
또한이책은프로그래밍입문서로써활용할수있습니다.일본은의무교육과고등교육에서프로그래밍이필수가되었습니다.많은대학에서도프로그래밍이필수과목이되었고,AI나데이터사이언스에관한지식을문과,이과가리지않고모든학생들에게가르치는대학들도생겨나고있습니다.또한사회인을위한프로그래밍강좌도인기를끌고,사원들에게프로그래밍을배우게하여사원들의IT지식을상향평준화하려는기업도늘어나고있습니다.
이런시대에프로그래밍은배울가치가있다는사실을의심하는사람을없을것입니다.학생이라면이책을보며즐겁게프로그래밍(혹은알고리즘이나수학)을배울수있습니다.사회인이라면소프트웨어개발에널리사용되는Python의지식이나기술을확실하게배울수있습니다.이책을전부읽은후여러분의실력은확실하게성장하게될것입니다.
?