오브젝티브-C로 배우는
아이폰 게임 개발

 2017년 1월 4일부로 더 이상 판매되지 않습니다. 

출판사      제이펍
원출판사  O'Reilly (원서 ISBN 9780596159856)
원서명      iPhone Game Development: Developing 2D & 3D games in Objective-C
저자명     폴 저클(Paul Zirkle), 조 호그(Joe Hogue)
역자명     이대근
출판일     2010년 3월 29일
페이지     324쪽
사이즈     188*245
제  본     반양장(Soft Cover)

정  가      24,000원
ISBN       978-89-962410-7-2  부가기호: 13560
시리즈     I♥Mobile 01 (아이러브모바일 01)
분  야      모바일 프로그래밍 / 아이폰 / 게임 프로그래밍


관련 사이트


샘플 챕터

아이폰게임개발_1장.zip



소스 코드

아이폰게임개발_예제소스코드.zip


도서 구매 사이트
강컴    교보문고    도서11번가    리브로    반디앤루니스    알라딘    영풍문고    예스이십사    인터파


아이폰 게임 개발 참고 사이트
코드 참조
Game Kit Programming Guide: http://developer.apple.com/iphone/library/documentation/NetworkingInternet/Conceptual/GameKit_Guide/Introduction/Introduction.html

물리 라이브러리

SQLite (SQL database):
http://www.sqlite.org/
Bullet (3D physics): http://www.bulletphysics.com/
Open Dynamics Engine (3D physics): http://www.ode.org/
Newton (3D physics): http://newtondynamics.com/
Box2D (2D physics): http://www.box2d.org/


미들웨어

Cocos2D:
http://code.google.com/p/cocos2d-iphone/
Oolong: http://oolongengine.com/
Torque 3D: http://www.garagegames.com/products/
Unity: http://unity3d.com/
IrrLicht Engine: http://irrlicht.sourceforge.net

오픈 소스 게임
Tris (Tetris clone): http://code.google.com/p/tris/
Wolfenstein 3D (John Carmack)ftp://ftp.idsoftware.com/idstuff/wolf3d/wolf3d_iphone_v1.0_src.zip
iPhone Quake 3 Arena (port of the PC original):
http://code.google.com/p/quake3-iphone/


이 책의 목표
▶ 이 책의 우선적인 목표는 모든 개발자가 언제나 펼쳐볼 수 있는 아이폰 게임 개발 책을 초보와 숙련된 게임 프로그래머 모두에게 알맞은 형태로 제공하는 것이다.
▶ 이 책은 예제 게임을 빌드하고, 나아가 스스로 게임을 만들어 빌드하기 위해 알아야 하는 모든 것을 위한 소스 그 자체이다.
▶ 게임 엔진을 만드는 핵심 개념과 그것을 아이폰에 적용하는 방법 모두를 제공한다.

2D 게임을 만들기 위해 기본적인 Objective-C를 학습시켜 아이폰 SDK를 이용할 수 있도록 한다.
3D 게임을 만들기 위해 아이폰에서 사용할 OpenGL ES를 소개한다.
▶ 게임을 앱 스토어에 올리는 것이 두렵지 않게 하기 위해 인증 과정에 익숙해지도록 한다.


이 책의 구성
1장, 아이폰 입문에서는 애플 개발자 계정 생성 같은 세부 계획을 포함해서 인터페이스를 만들고 Objective-C로 코드를 만들어 본다.
2장, 게임 엔진 해부
에서는 유지보수가 쉽고 재미있는 게임 애플리케이션을 제작케 하는 게임 로직과 좋은 디자인의 요소를 소개한다.
3장, 프레임워크
는 애플 SDK가 제공하는 기능을 보충하기 위해 작성한 특별한 게임 구현과 중대한 클래스를 감싸는 코드를 보여준다.
4장, 2D 게임 엔진
3장에서 만든 프레임워크를 기본으로 네 개의 레벨이 있는 완성된 게임을 만든다. 2D로 시작하는 이유는 게임 작업과 코드의 복잡함이 3D보다는 2D가 더 쉽기 때문이다. 기본 움직임, 비주얼과 오디오 이펙트, 게임 레벨 이동, 그 외의 다른 게임 프로그래밍 요소까지 다룬다.
5장, 3D 게임
3D 게임을 만들기 위해 더 복잡한 작업을 설명한다. OpenGL 라이브러리를 사용하지만 그 목표는 3D 기초의 설명이나 OpenGL이 아니고, 게임 프로그래밍에 그것들을 사용하기 위해 필요한 고유 기술을 알려주는 것이다.
6장, 게임 디자인의 고려사항
은 고급 개발자들을 위해 책을 몇 가지 큰 기준으로 간추리고 좋은 라이브러리와 미들웨어를 포함하는 더 많은 리소스를 알려준다.
부록, 참고문헌
은 정보, 라이브러리, 제품의 좋은 소스를 알려준다.

학습 선행조건
책의 내용들을 모두 이해하려면 프로그래밍 지식이 어느 정도 있어야 한다. 아이폰은 Objective-C를 사용하지만 대부분의 사람들은 C/C++이나 자바에 익숙하기 때문에 기본에 익숙해지도록 1장에는 Objective-C의 기초를 넣었다.

또한 Mac이 필요하다. 아이폰 SDK OS X에서만 되기 때문에 아이폰 개발을 진지하게 생각하고 있다면 맥의 구입은 필수다. 다행히 기본 모델인 맥 미니는 아이폰 개발에 충분한 성능을 가지고 있고, 기존의 모니터와 키보드를 설치해서 사용할 수 있다. 반면에 맥이 있으면 Xcode IDE는 무료다
.

세 번째로 필요한 건 꼭 필요한 것은 아니다. 하지만 강력히 추천한다. 아이폰이나 아이팟 터치가 있어야 한다. 책에서 아이폰이라고 말을 하지만, 아이폰용으로 만든 게임은 아이팟 터치에서도 작동한다. 어떤 이들은 아이폰 시뮬레이터만 가지고도 아이폰 게임을 만들 수 있다고 믿는다. 이렇게 하는 것은 사실 가능하고 앱 스토어에도 올릴 수도 있지만, 기기에서 개발하고 테스트할 것을 강력히 권한다. 여러분이 직접 플레이할 수도 없는 게임이 어떻게 좋은 평가를 받을 수 있겠는가
?

이 세 가지 외의 다른 필요한 모든 것들을 다운받거나 배울 수 있는 곳이 있다.
https://sourceforge.net/projects/iphonegamebook/에서 좋은 클래스와 예제들을 만들고 있고, 모든 예제 소스 코드를 이곳에서 받을 수 있다.

대상 독자
이전에 말한 것처럼 독자가 어느 정도 기초적인 프로그래밍 지식이 있을 것이라 생각한다. 하지만 게임 프로그래밍 경험이 없고 게임 엔진과 유저 인터페이스 디자인에 대한 기초 이론이 필요할 수도 있다. 아니면 다른 플랫폼에서 비디오 게임을 만들어본 경험이 많고, 단지 터치스크린 개념과 아이폰 SDK와 빌드 과정만 익힐 필요가 있을 수도 있다. 크로스 플랫폼 게임에 사용할 이식성 높은 코드 작성법이나 어떤 미들웨어 솔루션이 현재 존재하는지와 같은 심화 주제에 관심이 있을 수도 있다. 어느 쪽이건 이 책이 도움이 될 것이다.

뒷표지 소개글
“현재 게임을 제작 중인 아이폰 앱 개발회사의 오너이기에, 이 책이 게임 엔진을 구축하고 게임과 레벨 설계를 하는 데에 소중한 동료임을 알았다. 이 책은 아이폰 게임 프로그래머들의 진정한 자산이다.
_브래드 오헌(Brad OHearne)
_Big Hill SoftWare LLCthe Phoenix iPhone Developer Group 창립자

아이폰 게임을 만들려면 무엇이 필요할까? 이미 아이폰 애플리케이션을 몇 번 만든 경험이 있어도 아이폰의 제스쳐 인터페이스와 작은 크기의 화면으로 인해 게임 개발은 새로운 기술들을 필요로 한다. 이 책은 게임 개발에 필요한 그래픽과 오디오를 다루는 법, 게임의 물리를 구현하는 법, 2D 3D 게임 개발법 등 아이폰 게임 프로그래밍의 핵심 기술들을 제공하고 있다.

미리 만들어둔 예제의 실행과 명확한 설명을 통해 아이폰과 아이팟 터치에 특화된 기술적인 설계 이슈들을 쉽게 배울 수 있을 것이다. 또한 이 책은 여러 종류의 게임에서 성능을 극대화하는 방법을 제시하고 있으며, 아이폰의 게임 프로그래밍 지원이 취약한 부분을 보충하기 위한 플러그인 클래스도 소개하고 있다
.

■ 사용자 경험을 보증하는 아이폰용 게임 개발방법을 배운다.

■ 오브젝티브-C Xcode 도구 모음에 익숙해진다.
■ 아이폰 인터페이스를 게임에 맞추는 방법을 배운다.
■ 게임 앱에 쓸 유연하면서도 확장이 가능한 프레임워크를 만든다.
2D 3D 그래픽 구현에 필요한 것들을 이해한다.
■ 음악, 효과음, 메뉴, 컨트롤 추가 방법을 배운다.
■ 앱스토어에 게임을 출시하는 방법을 배운다.

저자 소개
폴 저클(Paul Zirkle)
코나미(Konami Digital Entertainment)의 선임 모바일 프로그래머로서 5년이 넘는 모바일 게임 프로그래밍 개발 경력을 갖고 있다. 이식, 재작성, 새로운 개발을 합쳐서 40개 이상의 게임을 제작해왔다. 가끔 남캘리포니아 주립대학에 게임 개발 강의를 나가곤 한다.

조 호그(Joe Hogue)

EA(Electronic Arts)
의 모바일 프로그래머로서 모바일 게임 프로그래밍에 5년의 경험을 갖고 있다. 이식, 재작성, 새로운 개발을 합쳐 40개 이상의 게임을 제작해왔다. 최근에는 아이튠즈 앱 스토어에서 이용할 수 있는 아이폰 게임을 제작하였다.

역자 소개
이대근(thatsplenty앳gmail.com)
고려대학교에서 전기전자전파를 전공하는 도중 오목 같은 게임의 AI를 어떻게 만드는지에 관심이 생겨서 프로그래밍에 입문하게 되었다. 임베디드 회사에서 마이크로프로세서를 수년간 다루며 실무 기초를 쌓고, 현재는 게임개발 회사에서 게임 AI를 주업무로 담당하고 있다.

차 례
Chapter 1 아이폰 입문
1.1 애플 개발자 계정과 SDK 다운로드   2
     1.1.1 애플리케이션 번들   3
     1.1.2 Xcode와 인터페이스 빌더   5
     1.1.3 뷰와 콘트롤러   15
1.2 기기에 올리기   23
     1.2.1 인증과 프로파일   24
     1.2.2 Xcode 설정   25
1.3 Objective-C 입문   28
     1.3.1 클래스   29
     1.3.2 인스턴스화   34
     1.3.3 메시지   34
     1.3.4 멤버 변수   36
     1.3.5 메모리 관리   36
     1.3.6 생성자와 소멸자   37
     1.3.7 인터페이스 빌더 통합   38
     1.3.8 C++ Objective-C 혼합   38
1.4 결론   39

Chapter 2 게임 엔진 해부

2.1
애플리케이션 프레임워크   42
     2.1.1
메인 루프   43
2.2
게임 스테이트 관리자   44
     2.2.1
스테이트 머신   45
     2.3
그래픽 엔진   49
     2.3.1
텍스처링   49
     2.3.2
애니메이션   54
     2.3.3
물리 엔진   60
     2.3.4
오디오 엔진   66
     2.3.5
플레이어 입력   69
     2.3.6
게임 로직   73
2.4
결론   82

Chapter 3 프레임워크

3.1
게임 스테이트 관리   84
     3.1.1
구현   86
     3.1.2
상태 바 제거   89
3.2 App Delegate   89

     3.2.1 FPS   91
3.3
이벤트 핸들링   93
3.4
리소스 매니저   95
     3.4.1
텍스처 포맷   95
     3.4.2
사운드 포맷   96
     3.4.3
리소스 배포   96
     3.4.4
관리   96
3.5
렌더 엔진   98
     3.5.1 GLESGameState   99

     3.5.2
텍스처   100
     3.5.3
폰트 텍스처   102
     3.5.4
예제 스테이트   104
3.6
사운드 엔진   106
     3.6.1
예제 스테이트   107
3.7
데이터 저장   109
     3.7.1
간단한 데이터 저장   110
     3.7.2
복잡한 데이터 저장   110
     3.7.3
예제 스테이트   111
3.8
뼈대 애플리케이션   115
3.9
결론   117

Chapter 4 2D 게임 엔진

4.1
게임 디자인   119
     4.1.1
기능 목록   120
     4.1.2
사용자 입력 구조   122
     4.1.3
학습 곡선   124
4.2
타일 엔진   126
     4.2.1
유니크 타일   126
     4.2.2
타일 그리기   128
     4.2.3 TileWorld
클래스   130
4.3
애니메이션   136
     4.3.1
애니메이션과 스프라이트 클래스   137
4.4
물리   151
     4.4.1
개체   151
     4.4.2
개체-게임 세계   153
     4.4.3
특수한 타일   157
     4.4.4
개체-개체   157
4.5
레벨 1 구현   159
     4.5.1 gsEmuLevel   159

     4.5.2 TileWorld   160
     4.5.3
메인 캐릭터   161
     4.5.4
에뮤 새끼   165
     4.5.5
에뮤 어미   173
     4.5.6
게임 로직   175
     4.5.7
사운드   177
4.6
레벨 2 구현   177
     4.6.1 gsLionLevel   178

     4.6.2 TileWorld   179
     4.6.3 McGuffin   181
     4.6.4
메인 케릭터   181
     4.6.5
사자 개체   182
     4.6.6
게임 로직   191
     4.6.7
사운드   192
4.7
레벨 3 구현   192
     4.7.1 gsMazeLevel   193

     4.7.2 TileWorld   194
     4.7.3
버튼   197
     4.7.4
  198
     4.7.5
고양이와 쥐   199
     4.7.6
사용자 입력   199
     4.7.7
게임 로직   200
     4.7.8
사운드   208
4.8
레벨 4 구현   208
     4.8.1 gsRiverLevel   209

     4.8.2 TileWorld   210
     4.8.3
악어   212
     4.8.4
통나무   213
     4.8.5 Tom   214

     4.8.6
사용자 입력   217
     4.8.7
게임 로직   218
     4.8.8
사운드   222
4.9
게임 스테이트 직렬화   223
     4.9.1
저장소 초기화   223
     4.9.2
게임 끝내기   223
     4.9.3 UI
수정   228
4.10
결론   228

Chapter 5 3D 게임

5.1 GLESGameState3D
클래스   231
     5.1.1 POWERVR   233

     5.1.2 Sprite3D   235
     5.1.3
가속도계   236
5.2 3D
게임 디자인   238
     5.2.1
그래픽   238
     5.2.2
입력   240
     5.2.3
카메라   241
     5.2.4
로직   241
5.3
구현   241
     5.3.1
카메라   243
     5.3.2 Skybox   247

     5.3.3
입력   250
     5.3.4
고리   259
     5.3.5
파티클 시스템   265
     5.3.6
로직   275
     5.3.7
최고 기록   277
5.4
게임 끝내기   280
5.5
결론   283

Chapter 6 게임 디자인의 고려사항

6.1
리소스 관리   286
6.2
사용자 입력 디자인   286
6.3
네트워킹   287
6.4
써드파티 코드   288
     6.4.1
라이브러리   288
     6.4.2
미들웨어   289
     6.4.3
오픈 소스 게임   289
6.5
앱 스토어   290
6.6
결론   291

Appendix 참고문헌

A.1
코드 참조   293
A.2
물리 라이브러리   293
A.3
미들웨어   294
A.4
오픈 소스 게임   294

댓글을 달아 주세요

  1.  댓글주소  수정/삭제  댓글쓰기 Favicon of http://bjpublic.tistory.com BlogIcon Bj 2010.04.14 23:03 신고

    잘 지내시죠?^^
    3D Engine SIO2가 빠졌네요~ㅎㅎ
    http://sio2interactive.com/

  2.  댓글주소  수정/삭제  댓글쓰기 박종원 2010.05.29 16:28 신고

    오브젝티브c로 배우는 아이폰 게임개발 책을 사서 보기 시작했는데
    15p 1.1.3 뷰와 컨트롤러 에서
    따라할려고 아무리 읽어봐도 먼 소리인지 따라 할수가 없어요..
    다른 아이폰 프로그래밍 책도 봤는데 이렇게 따라하기가 힘든건 첨입니다.
    앞으로 계속 나오는 따라하기 예제들이 다 이런 식이면 아.. 난감할 것 같내요.. 쩝.

    예1) 1.Xcode 에서 UIViewController를 확장하는 새 클래스를 만든다. 이를 TestViewController이라 하자.
    의문) 새로운 프로젝트 생성도 없이 갑자기 어떤 새로운 클래스를 만들어라는 소리인가요? "UIViewController를 확장하는 새 클래스" 란 것이 도대체 먼가요?

    예2) File -> New File 을 선택하고 User Interfaces 부분에서 View XIB를 골라서 그림 1-12처럼 새 XIB 파일을 만든다.
    의문) 새 XIB파일을 만드는데 왜 파일명은 어떻게 해라고 나오지도 않나요? xib파일명을 무엇으로 만들어라고 명시를 해줘야 만들죠.. -0- 그냥 untitled.xib 로 하나요?

    등등 밑에 번호마다 궁금점이 많지만 쓰기가 힘들어서 이 정도만 써 놓을께요.

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2010.05.31 09:08 신고

      안녕하세요? 책을 따라하면서 어려움을 겪고 계시나 봅니다. 이해하기 쉽게 번역하려 애썼는데, 다소 부족한 부분이 있었나 봅니다. 죄송합니다.

      역자께서 아래와 같은 답변을 주셨는데요, 혹시 추가 문의하실 것들이 있으면 아래의 이메일로 연락을 하시면 곧바로 답변을 들으실 수 있습니다.

      부디 좋은 성과 있기를 바랍니다.
      ===========================================
      1, 2번이 하나의 이야기를 하는 건데요.
      바로 앞의 예제인 Hello World 프로젝트에 이어서 뷰와 컨트롤러를 추가하는 작업을 하는 내용이고
      1번에 해당하는 'TestViewController라 하자'라는 이야기가 2번의 XIB파일 이름을 가리키는 뜻입니다.
      HelloWorld예제에서 보면 HelloWorldViewController.h, HelloWorldViewController.m,
      HelloWorldViewController.XIB등이 만들어진 것처럼 비슷한 방식으로 이름을 짓는 겁니다.

      의문사항들은 thatsplenty@gmail.com 으로 문의주시면 성실히 답해드리겠습니다.
      ===========================================

  3.  댓글주소  수정/삭제  댓글쓰기 김민식 2010.06.04 13:09 신고

    번역.... 정말 좋게말씀드릴라고 해도.. 아 욕은 할수가없네요.. 수고참많으셨습니다

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2010.06.04 15:13 신고

      무슨 말씀이신지 잘 알겠습니다.

      여러분의 질타가 더욱 읽기 편하고 이해하기 쉬운 책을 펴내라는 격려라고 생각하고 더욱 주의해서 책을 펴내겠습니다.

      감사합니다.

  4.  댓글주소  수정/삭제  댓글쓰기 에이프 2010.06.17 04:35 신고

    지금 저는 xcode3.0 을 쓰는데 빌드앤 런이 안돼네요...
    어케 해야죠?
    2.0 으로 갈아 타야하나요?

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2010.06.19 21:31 신고

      안녕하세요? 문의하신 내용을 역자에게 확인 의뢰해놓았습니다. 개발툴 업데이트를 하면서 애플측에서 이전 버전의 다운로드까지 모두 차단해서 공식적인 루트로는 2.2를 구할 수가 없다고 합니다. 그래서 3.2나 4.0으로 소스코드를 테스트해보고 그 결과를 다시 알려주겠다고 하니 조금만 더 기다려주시면 고맙겠습니다.

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2010.06.29 08:39 신고

      답변이 늦었습니다. 역자께서 해결 방법이 담긴 파일을 보내주셨습니다. 출판사(jeipub골뱅이gmail.com)로 이메일을 보내주시면 그 파일을 전달해드리도록 하겠습니다. 감사합니다.

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2010.09.18 11:15 신고

      http://jpub.tistory.com/87 이 페이지를 참고해주세요.

  5.  댓글주소  수정/삭제  댓글쓰기 행크 2010.08.03 01:37 신고

    안녕하세요~ 소스예제 보고 해보고 있는데 사운드 플레이에서 playMp3 로 음악은 잘 나오는것 같은데
    playCafSfx 로 하는 이펙트사운드는 아무리 해도 소리가 안나네요..
    예제를 그대로 실행해도 소리가 안나요 해결방법 좀 알려주세요~^^

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2010.08.03 10:59 신고

      네. 역자에게 문의하신 사항 확인하여 다시 답변드리도록 하겠습니다. 혹시 길어질지 모르니 이메일 주소를 알려주시면 고맙겠습니다.
      좋은 하루 되세요!

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2010.08.04 12:53 신고

      안녕하세요? 제이펍입니다.
      문의하신 사항을 역자에게 확인하였는데, 이상이 없다고 합니다. 다시 해보시고 안 되면 아래의 주소로 연락을 thatsplenty@gmail.com 주시면 확인해주시겠다고 합니다.
      감사합니다.

  6.  댓글주소  수정/삭제  댓글쓰기 bardiel 2012.06.19 18:10 신고

    안녕하세요.
    책의 사운드 예제를 따라하고 있는데 계속 문제가 나오네요;
    혹시나해서 여기있는 소스를 다운받아서 둘려보니 그쪽은 잘 돌아가네요.
    그 잘돌아가는 소스를 다시 새로운 프로젝트로 옮기면 문제가 발생합니다;;
    컴파일시 차이가 나는 부분을 찾아보니 SoundEngine.cpp 에서 경고가 나오는 것 뿐이네요..
    구글에서 검색해봐도 뭐가 나오지는 않았습니다.
    xcode 4.1 에서 테스트 하였습니다.
    아래는 나온 경고입니다.
    No previous prototype for 'ALvoid alBufferDataStaticProc(ALint, ALenum, ALvoid*, ALsizei, ALsizei)'
    No previous prototype for 'ALvoid alcMacOSXMixerOutputRateProc(ALdouble)'
    No previous prototype for 'OSStatus OpenFile(const char*, OpaqueAudioFileID*&;)'
    No previous prototype for 'OSStatus LoadFileDataInfo(const char*, OpaqueAudioFileID*&, AudioStreamBasicDescription&, UInt64&;)'
    No previous prototype for 'void CalculateBytesForTime(AudioStreamBasicDescription&, UInt32, Float64, UInt32*, UInt32*)'
    No previous prototype for 'Boolean FormatIsEqual(AudioStreamBasicDescription, AudioStreamBasicDescription)'

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2012.06.19 19:30 신고

      네. 역자분에게 전달하여 답변을 받아드리도록 하겠습니다. 해결되었으면 좋겠네요. 조금만 기다려 주세요!!

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2012.07.05 10:53 신고

      답변이 늦어 죄송합니다. 역자분으로부터 아래와 같은 답변을 받았습니다. 추가 문의하실 게 있으면 메일(jeipub골뱅이gmail.com)로 연락주세요. 역자분도 답변이 늦어 bardiel 님에게 사과의 말씀도 전하고 싶다고 하시네요..

      =========================

      1. testSAppDelegate.m 에 문제가 있습니다.

      아래와 같이 해당 부분을 수정해주시길 바랍니다.

      if( viewController.view != nil ) {
      [viewController.view removeFromSuperview]; //remove view from window's subviews.
      // [viewController.view release]; //release gamestate
      }

      viewController.view = [[[state alloc] initWithFrame:CGRectMake(0, 0, IPHONE_WIDTH, IPHONE_HEIGHT) andManager:self] autorelease];

      //now set our view as visible
      [window addSubview:viewController.view];
      [window makeKeyAndVisible];


      addSubview를 하게 되면 retain이 포함됩니다.
      그리고 removeFromSuperview 는 내부적으로 release를 포함하고 있기 때문에
      항상 코드에서는 addSubview가 먼저 오고 removeFromSuperview가 와야 하나

      기존 파일에서는
      window 에 addSubview 를 하기 전에 먼저 removeFromSuperview 를 수행합니다.
      따라서 retain보다 release가 많아져서 앱이 죽게 됩니다.



      2. glFont 의 문자가 깨진다는 말씀이 시뮬레이터에서 하신 건가요?
      기기에 심어서도 봐주셨으면 합니다. 시뮬레이터에서는 openGL을 완벽하게 지원하지 않는 것으로 알고 있습니다.
      계속 문제가 될 경우 간단한 코드 첨부를 부탁합니다. ^^
      ==================

  7.  댓글주소  수정/삭제  댓글쓰기 2012.06.20 10:50

    비밀댓글입니다

  8.  댓글주소  수정/삭제  댓글쓰기 bardiel 2012.06.27 18:43 신고

    glFont로 문자를 출력했는데 가로모드로 돌린 후 가로 좌표가 320을 넘어가니 글자가 깨집니다.
    glFont론 가로 좌표가 320이 넘어가면 깨지는 건가요?;

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2012.06.28 15:00 신고

      추가문의주셨네요. 역자분에게 전달했는데, 요즘 바쁘신지 아직 회신을 받지 못했습니다. 확인해주시겠다고는 했는데.. 조금 더 기다려주세요. 오는 대로 댓글로 안내해드리겠습니다!!

  9.  댓글주소  수정/삭제  댓글쓰기 bardiel 2012.07.10 11:20 신고

    답변 감사드립니다!
    문제가 다 해결되서 이제 잘 되네요!!

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2012.07.10 13:23 신고

      해결되었다니 다행입니다. 이후에도 혹시 문의사항 있으면 댓글이나 메일로 연락주세요! 더운 여름 건강하게 나세요!!!

  10.  댓글주소  수정/삭제  댓글쓰기 2012.11.08 10:56

    비밀댓글입니다



티스토리 툴바