장바구니 담기 close

장바구니에 상품을 담았습니다.

스위프트로 만드는 게임 개발

스위프트로 만드는 게임 개발

  • 스티븐 해니
  • |
  • 에이콘출판
  • |
  • 2017-07-14 출간
  • |
  • 284페이지
  • |
  • 189 X 236 X 22 mm /691g
  • |
  • ISBN 9791161750231
판매가

25,000원

즉시할인가

22,500

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
22,500

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평

★ 이 책에서 다루는 내용 ★
■ SpriteKit를 이용한 강력한 그래픽, 물리, 사운드 적용
■ 씬 에디터의 새로운 기능과 커스텀 클래스를 사용한 씬 설정
■ 잘 알려지지 않은 팁과 전략을 이용한 게임 플레이 극대화
■ 애니메이션, 그래픽, 파티클을 활용해 게임을 꾸미는 방법
■ 게임에 가장 적합한 옵션을 선택하기 위해 현재 모바일 수익 창출 환경 이해
■ 플레이어가 최고 점수와 업적을 공유할 수 있도록 게임을 게임 센터와 통합
■ 많은 사람들이 게임을 즐길 수 있도록 앱 스토어에 게임 출시

★ 이 책의 대상 독자 ★
기본적인 프로그래밍 개념에 익숙하고, 스위프트를 이용한 재미있는 iOS 게임의 제작과 출시를 원하는 독자를 대상으로 한다. 하지만 게임 개발이나 애플의 생태계에 대한 경험은 필요하지 않다.

★ 이 책의 구성 ★
1장, ‘스위프트를 이용한 게임 디자인’에서는 스위프트의 최고 기능을 소개하고, 스위프트 3에 새로 추가된 기능에 대해 간략히 설명하며, 개발 환경 설정과 첫 번째 SpriteKit 프로젝트를 시작하는 데 필요한 내용을 다룬다.
2장, ‘스프라이트, 카메라, 액션!’에서는 스위프트를 이용한 그리기와 애니메이션의 기초를 배운다. 스프라이트 그리기, 프로젝트에 텍스처 임포트하기, 카메라를 메인 캐릭터 중심에 맞추는 방법에 대해 배운다.
3장, ‘물리 적용하기’에서는 피직스 바디(Physics Body), 충격, 힘, 중력, 충돌 등 물리 시뮬레이션의 기본을 다룬다.
4장, ‘컨트롤 추가하기’에서는 장치 기울기, 터치 입력 등의 다양한 모바일 게임 컨트롤 방법을 살펴본다. 또한 4장을 통해 예제 게임의 핵심 게임 플레이와 카메라의 기능도 향상시킨다.
5장, ‘적, 코인, 파워업 생성’에서는 예제 게임에서 사용하는 캐릭터를 소개하고 각 NPC 유형에 사용될 커스텀 클래스를 생성하는 방법에 대해 배운다.
6장, ‘끝나지 않는 게임 월드 생성하기’에서는 SpriteKit 씬 에디터에 대해 살펴보고, 예제 게임에 사용할 장애물을 만들고, 이 장애물을 끊임없이 반복하는 시스템을 생성한다.
7장, ‘충돌 이벤트 구현하기’에서는 고급 물리 시뮬레이션에 대해 살펴보고 스프라이트가 서로 충돌할 때 사용할 커스텀 이벤트를 추가한다.
8장, ‘더욱 멋지게 다듬기: HUD, 시차 배경, 파티클’에서는 게임을 더욱 빛나게 만들 수 있는 재미 요소를 추가한다. 시차 배경을 생성하는 방법, SpriteKit의 파티클 이미터, 헤드업 디스플레이를 게임에 추가하는 방법에 대해 배운다.
9장, ‘메뉴 및 사운드 추가하기’에서는 메인 메뉴의 기본 시스템을 구축하고 게임에서 사운드를 재생하는 두 가지 방법을 설명한다.
10장, ‘고급 기능으로 눈에 띄는 게임 만들기’에서는 고급 게임 플레이 시스템을 구현하기 위해 지금까지 배운 기술을 결합하는 방법을 보여준다.
11장, ‘수익 전략 선택하기’에서는 게임으로 수익을 창출하고자 하는 인디 개발자를 위한 전략에 대해 설명한다.
12장, ‘게임 센터 통합하기’에서는 리더보드, 업적, 과제 기능의 추가를 위해 예제 게임을 애플 게임 센터에 연결한다.
13장, ‘앱스토어 및 출시를 위한 준비’에서는 게임을 패키징하고 앱스토어에 제출하는 과정을 다룬다.

★ 옮긴이의 말 ★
이 책은 몇 년 전 인디 게임계를 발칵 뒤집어놓은 플래피 버드(Flappy Bird)류의 게임 제작을 통해 iOS 게임 개발을 시작하고 싶은 예비 개발자들에게 도움을 줄 수 있는 내용을 담고 있다. 개발 환경 설정부터 시작하기 때문에 스위프트를 처음 대하는 예비 개발자들도 쉽게 시작할 수 있도록 구성돼 있다.
1장에서는 스위프트 소개, 개발 환경 설정 등 게임 개발에 필요한 준비를 함으로써 앞으로 진행할 예제 프로젝트에 대비한다. 기초적이지만 매우 중요한 단계라고 할 수 있다. 2장부터 10장까지는 게임 개발에 필요한 요소들을 한 단계씩 구현한다. 단순하지만 중독성 있는 게임을 만들면서 이미지, 물리, 컨트롤, 사운드 등 게임 개발에 필요한 모든 요소들이 포함했고, 각 단계마다 코드를 구분해 설명하고 주석을 통해 소스 코드의 내용을 자세하게 설명하려는 저자의 노력이 보인다.
이 책에는 초급 개발자를 위한 책에서는 쉽게 볼 수 없는 수익 창출에 대한 이야기도 포함돼 있다. 게임 개발은 노동력과 시간이 많이 필요한 작업이다. 따라서 게임 개발을 취미로 하더라도 수익을 낼 수 있다면 더 좋을 것이다. 보통 개발을 시작할 때는 수익 전략에 대한 고민을 하지 않는 경우가 많은데, 이 책을 읽고 난 후 실제 게임 프로젝트를 시작하는 시점에 수익 전략에 대해 고민해본다면 많은 도움이 될 것이다. 12장과 13장에는 게임 센터와 통합하는 방법, 앱 스토어 출시를 위해 필요한 준비 과정을 설명하고 있다. 간단할 거라는 생각과 달리 실제로 해보면 오래 걸릴 수 있는 내용이기 때문에 책을 통해 실습하면 나중에 큰 도움이 될 수 있는 내용이다.
전반적으로 자세하고 쉽게 설명돼 있지만 게임 개발에 필요한 내용을 전체적으로 다루기 때문에 이 책에서 다루는 내용은 결코 적지 않다. 기초적이지만 중요한 내용들이 포함돼 있으니 한 단계씩 천천히 따라가면서 게임을 끝까지 완성하기 바란다.
번역을 진행하면서 문장마다 저자의 의도를 파악하려고 많은 노력을 기울였지만 의도를 제대로 파악하지 못하거나 잘못 번역된 내용이 있을지도 모르겠다. 잘못된 부분이나 책에 관련된 어떠한 의견이라도 소중히 여겨 잘못된 내용을 고치는 데 좋은 자료로 참고하겠다.

목차

1장. 스위프트를 이용한 게임 디자인
스위프트를 선호하는 이유
선수 지식
이 책에서 살펴볼 내용
SpriteKit 사용하기
플레이어 입력에 대한 반응
게임 코드의 구조화
UI/메뉴/레벨 만들기
게임 센터와 통합하기
재미 극대화하기
결승선 통과하기
수익 창출하기
스위프트 3의 새로운 기능
개발 환경 설정
엑스코드 소개와 설치
첫 번째 스위프트 게임 만들기
프로젝트 살펴보기
SpriteKit 데모 살펴보기
데모 코드의 분석
정리
요약

2장. 스프라이트, 카메라, 액션!
준비하기
체크포인트 2-A
첫 번째 스프라이트 그리기
SKSpriteNode 클래스 만들기
툴킷에 애니메이션 추가하기
여러 애니메이션을 이어서 재생하기
첫 번째 스프라이트 다시 보기
위치 설정 이야기
앵커 포인트를 이용한 정렬
텍스처 및 게임 아트 추가
무료 애셋 다운로드하기
좀 더 훌륭한 게임 아트
첫 번째 텍스처 스프라이트 그리기
프로젝트에 꿀벌 이미지 추가하기
SKSpriteNode를 이용해 이미지 로드하기
레티나 디스플레이를 위한 디자인
이상적인 애셋 접근 방법
SpriteKit을 이용한 레티나 실습
애셋 구성하기
Assets.xcassets 살펴보기
여러 텍스처를 텍스처 아틀라스로 결합하기
꿀벌 노드가 텍스처 아틀라스를 사용하도록 업데이트하기
텍스처 아틀라스 통한 프레임을 반복
모두 결합하기
스프라이트 중심에 카메라 배치하기
체크포인트 2-B
요약

3장. 물리 적용하기
기초 다지기
프로토콜 따르기
꿀벌 재창조
얼음 사막
Assets.xcassets에 지면 텍스처 추가하기
Ground 클래스 추가
텍스처 타일링
지면과 연결하기
야생 펭귄 등장!
GameScene 클래스 업데이트
물리 시스템 살펴보기
파리와 유사하게 떨어뜨리기
지면 단단하게 만들기
체크포인트 3-A
물리 시뮬레이션 역학 살펴보기
꿀벌끼리 서로 충돌 테스트
충격 또는 힘?
체크포인트 3-B
요약

4장. 컨트롤 추가하기
비행을 위한 Player 클래스 구조 변경
The Beekeeper
Player 클래스 업데이트
지면 이동시키기
플레이어에 피직스 바디 추가하기
텍스처에서 피직스 바디 모양 생성하기
Core Motion을 이용해 장치 움직임 정보 읽기
Core Motion 코드 구현하기
체크포인트 4-A
스프라이트에 onTap 이벤트 연결하기
GameScene에서 touchesBegan 구현하기
펭귄 크기 키우기
펭귄에 비행 기능 추가하기
GameScene에서 터치 입력 이벤트 받기
알맞은 중력 설정하기
날개 펼치기
카메라 개선하기
Pierre 앞으로 밀기
플레이어의 진행 상황 추적
지면 반복시키기
체크포인트 4-B
요약

5장. 적, 코인, 파워업 생성
등장인물 소개
아트 애셋 검색 및 추가하기
파워업 스타 추가
Start 클래스 추가
새로운 적 추가: 매드 플라이
MadFly 클래스 추가하기
또 다른 공포 ? 박쥐!
Bat 클래스 추가하기
지면을 지켜라: 블레이드 추가
Blade 클래스 추가
코인 추가
Coin 클래스 생성
프로젝트 탐색기 정리하기
새 게임 오브젝트 테스트하기
체크포인트 5-A
끝없는 비행을 위한 준비
요약

6장. 끝나지 않는 게임 월드 생성하기
SpriteKit 신 에디터로 레벨 디자인하기
게임 로직과 레벨 데이터 분리하기
신 에디터에서 커스텀 클래스 사용하기
플레이어의 비행을 방해하는 장애물
첫 번째 장애물 만들기
신을 게임에 통합하기
체크포인트 6-A
지속적으로 장애물 환경 생성하기
더 많은 장애물 만들기
SKSpriteNodeuserData 속성에 메타데이터 저장하기
GameScene 클래스에 EncounterManager 연결하기
파워업 스타 랜덤으로 생성시키기
브론즈 코인을 골드 코인으로 바꾸기
체크포인트 6-B
요약

7장. 충돌 이벤트 구현
SpriteKit의 충돌 용어 익히기
충돌과 접촉
물리 카테고리 마스크
스위프트에서 카테고리 마스크 사용하기
게임에 접촉 이벤트 추가하기
물리 카테고리 설정하기
게임 오브젝트에 카테고리 할당하기
플레이어
지면
파워업 스타

코인
접촉 이벤트를 위한 GameScene 준비하기
콘솔 출력결과 확인하기
접촉 이벤트 코드 테스트
체크포인트 7-A
플레이어 체력과 데미지
데미지를 입는 경우와 게임 오버에 대한 애니메이션
데미지 애니메이션
게임 오버 애니메이션
코인 획득하기
파워업 스타 로직
체크포인트 7-B
요약

8장. 더욱 멋지게 다듬기: HUD, 시차 배경, 파티클
HUD 추가하기
HUD 구현하기
시차 배경 레이어
배경 애셋 추가하기
배경 클래스 구현하기
GameScene 클래스에서 배경 연결하기
체크포인트 8-A
SpriteKit의 파티클 시스템 활용하기
원형 파티클 애셋 추가하기
SpriteKit Particle 파일 생성하기
경로 파티클 설정 구성하기
게임에 파티클 이미터 추가하기
게임이 시작될 때 안전성 부여하기
체크포인트 8-B
요약

9장. 메뉴 및 사운드 추가
메인 메뉴 제작하기
메뉴 신과 메뉴 노드 만들기
게임 시작 시 메인 메뉴 실행시키기
START GAME 버튼 연결하기
재시작 게임 메뉴 추가
HUD 확장하기
게임 오버를 위해 GameScene 연결하기
플레이어가 죽으면 GameScene 클래스에 알리기
재시작 메뉴를 위한 터치 이벤트 구현하기
체크포인트 9-A
음악 및 사운드 추가하기
게임에 사운드 애셋 추가하기
배경 음악 재생하기
사운드효과 재생하기
Coin 클래스에 코인 사운드효과 추가하기
Player 클래스에 파워업 및 데미지 사운드 효과 추가하기
게임이 시작되면 사운드 재생하기
체크포인트 9-B
요약

10장. 고급 기능으로 눈에 띄는 게임 만들기
부수면 열리는 재미있는 상자 추가하기
상자 파티클 효과 추가하기
파티클 풀을 이용해 이미터 노드 재사용하기
체크포인트 10-A
접촉 이벤트 연결하기
체력 상자 추가하기
코인 상자 부수기
체크포인트 10-B
요약

11장. 수익 전략 선택하기
마케팅 플랜 수립하기
마케팅 시작 시기
마케팅 체크리스트
크라우드펀딩 활용하기
크라우드펀딩의 장단점
수익을 위한 디스플레이 광고 게재
광고 게재의 장점
광고 게재의 단점
인앱 구매 판매하기
인앱 구매 전략
플레이어를 늘리는 단어
해외 시장을 위한 지역화
범위 관리 및 프로젝트 완료
요약

12장. 게임 센터 통합하기
iTunes Connect를 이용해 앱 등록하기
테스트 유저 생성하기
플레이어의 게임 센터 계정 인증하기
게임 안에서 게임 센터 열기
체크포인트 10-A
최고 점수의 리더보드 추가하기
iTunes Connect에 새 리더보드 생성하기
코드에서 리더보드 업데이트하기
업적 추가하기
iTunes Connect에 새 업적 생성하기
코드에서 업적 업데이트하기
체크포인트 10-B
요약

13장. 앱스토어 및 출시를 위한 준비
애셋 마무리하기
앱 아이콘 추가하기
시작 화면 디자인하기
지원되는 각 장치를 위한 화면 만들기
iTunes Connect 정보 완성하기
가격 구성하기
엑스코드에서 프로젝트 업로드하기
iTunes Connect에서 리뷰를 위해 제출하기
요약

저자소개

저자 스티븐 해니(Stephen Haney)는 iOS 게임 개발에 관한 두 권의 책을 저술했다. 8살 때 먼지로 가득했던 오래된 노트북에서 BASIC을 사용해 프로그래밍을 시작했고 그 후로 소프트웨어와 게임 제작에 매료됐다. 이제는 여러 언어에 능통하며 프로그래밍을 통한 창의력 발산을 좋아한다. 인디 게임 개발이 시각적, 청각적, 심리적 도전의 놀라운 조합으로 플레이어와 제작자 모두에게 보람을 주는 예술적 형식이라고 믿는다.

도서소개

스위프트를 활용해 게임 개발을 시작하는 데 필요한 모든 내용을 다룬다. 개발 환경 설정부터 스프라이트, 카메라 설정, 물리, 컨트롤, 게임 아이템, 충돌 처리, 사운드 등 게임 개발에 필요한 내용을 모든 내용을 책에서 진행하는 게임을 만들면서 하나하나 배울 수 있다. 또한 게임 개발을 시작할 때 고민하면 좋을 수익 전략에 대한 내용과 게임 센터 연동, 앱 스토어에 출시하는 내용까지 포함돼 있어 게임 개발을 시작하려는 개발자들에게 좋은 지침서가 될 것이다.

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.