장바구니 담기 close

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

아이폰 3D 프로그래밍

아이폰 3D 프로그래밍

  • 토니 뮬렌
  • |
  • 비제이퍼블릭
  • |
  • 2010-08-27 출간
  • |
  • 335페이지
  • |
  • 175 X 230 X 30 mm /596g
  • |
  • ISBN 9788996276562
판매가

22,000원

즉시할인가

20,900

배송비

2,300원

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

수량
+ -
총주문금액
20,900

이 상품은 품절된 상품입니다

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

출판사서평

아이폰 3D 앱/게임을 위한 다이나믹 콘텐츠 개발하기
아이폰과 아이팟터치를 위한 개발 & 디자인 능력을 한 단계 더 끌어올려보자. 여러분이 아이폰
개발자이든 아니면 창의적인 아티스트이든, 이 혁신적인 가이드는 블렌더, SIO2 게임엔진 그리고 아이폰 SDK를 이용하여 개발자와 아티스트의 세계를 이어주는 최상의 방법을 소개한다. 이 책에서는 자신이 원하는 속도에 맞춰 학습을 진행할 수 있는 독립적인 튜토리얼들을 통해 움직이는 3D 캐릭터, 게임환경 그리고 물리충돌에 대해 배울 것이다.

여러분은 이 책을 통해 블렌더의 WYSIWYG적 접근방법 및 Xcode와 다른 아이폰 SDK 프로그래밍 도구의 유용한 정보를 알 수 있으며, 또한 물리 시뮬레이션과 더불어 강력하고 상호작용할 수 있는 3D 앱 & 게임을 만들기 위한 기술들을 습득할 수 있다.

■ 아이폰을 위한 3D 개발과 아이폰 SDK를 사용하는 방법을 살펴보자
■ 블렌더로 생성한 작품을 SIO2 게임엔진을 사용하여 상호작용할 수 있도록 만들어 보자
■ 움직이는 객체에 현실적 효과를 주기 위한 조명을 다루는 방법을 알아보자
■ SIO2로 땅과 하늘을 모델링하고 몰입형 3D 환경을 만들어보자
■ 2D 이미지를 3D 환경에 적용시키는 실용적인 방법인 빌보드(Billboard)를 마스터하자
■ 캐릭터의 움직임을 안내하거나 조작하기 위한 보이지 않는 low-poly 충돌 맵을 만들어 보자
■ 고급기능을 위한 블렌더의 물리시뮬레이션 라이브러리인 불릿(Bullet)에 대해 살펴보자
■ 블렌더에서 캐릭터를 움직이고 위젯과 함께 버튼, 아이콘을 추가해 보자
■ 이 책에서 사용되는 모든 템플릿에 대한 전체코드를 살펴보자


3D 객체, 텍스처, 그리고 실시간 조명과 함께 멀티터치에 상호작용 할 수 있는 앱을 만들어 보자.


아이폰 앱/게임에서 3D 캐릭터를 움직이고 조작해 보자.


가상세계에서 사용자가 돌아다닐 수 있도록 현실적인 물리작용과 함께 풍부한 몰입형 3D 환경을 만들어 보자.

이 책에서 배울 것들
이 책은 블렌더, SIO2 게임 개발 애플리케이션 프로그래밍 인터페이스(API), 애플의 Xcode와 아이폰 소프트웨어 개발 키트(SDK)를 이용한 강력하면서도 쉬운 3D 콘텐츠 제작기술에 대해 소개한다. 이 도구들을 원하는 대로 조합하여, 여러분은 곧 아이폰과 아이팟터치에서 돌아갈 상호작용하는 3D 콘텐츠 개발의 한계를 초월하는 자신을 발견할 수 있을 것이다.

이 책에서는 SIO2 엔진에서 사용하기 위해 필요한 블렌더에서의 3D 에셋 생성과 환경을 구축하는 방법을 배울 것이며, 그들을 추출하는 방법, 그리고 SIO2 SDK를 이용하여 작업하는 방법을 배울 것이다. 사실적인 표면과 조명 효과를 생성하기 위한 블렌더의 텍스처 베이킹 기능의 사용방법과 객체, 카메라의 움직임, 캐릭터들을 조종하기 위한 멀티터치 인터페이스를 이용하는 방법을 배울 것이다. 이 책을 독파하고 나면, 여러분만의 아이폰 3D 프로젝트 개발을 시작하기 위한 준비가 충분히 되었을 것이다.

왜 블렌더/SIO2인가?
블렌더는 수천 달러를 호가하는 애플리케이션들과 기능성과 안정성의 측면에서 경쟁을 하고 있는 무료이자 오픈소스인 애플리케이션 콘텐츠 제작도구이다. 급속도로 성장하고 있는 여러 상업 애니메이션과 게임스튜디오는 비용과 유연성을 위해 그들의 핵심 3D 애플리케이션으로 블렌더를 선택하고 있다. 그와 비슷하게 SIO2는 비싸지 않은 라이선스의 사용자들을 유치하기 위해 최소한의 저작자 표시를 보장하는 것으로 무료로 사용할 수 있도록 하였다. 물론 아이폰과 호환성을 제공하는 상용 게임 엔진과 같은 3D 애플리케이션들은 수천 달러의 비용을 지불해야 한다. 개인 독립 개발자들에게 비용감축은 더 많은 새로운 하드웨어를 구축할 수 있다는 것을 의미하며, 멋진 저녁식사(소박한 이에게는 두 달 정도의 집세를 해결하는 것을 의미할 수도 있다)를 의미하기도 한다. 스튜디오에게 비용절감은 성장을 의미한다.

하지만 무료라고 해서 끝은 아니다. 사실, 블렌더/SIO2 파이프라인이 아이폰에서의 3D 개발을 위한 유일한 무료 솔루션은 아니다. 아이폰 플랫폼은 기본적으로 OpenGL ES 그래픽 API를 지원하며, 아이폰 SDK에는 OpenGL ES가 탑재되어 있고 OpenGL ES 코드를 개발하고 최적화에 필요한 매우 많은 도구들이 존재한다. 고급 콘텐츠 생성 도구들을 전혀 사용하지 않고서도 이것들만 가지고서 게임을 개발하고 OpenGL ES에 직접적으로 3D 효과를 만들어내는 것이 가능하다. 하지만 이런 방법은 쉽지가 않고 개발에 있어서 직관적이지 않다.

모델링과 애니메이션을 제작하는 데는 블렌더와 같은 WYSIWYG(What-You-See-Is-What-You-Get
)방식이 제일 좋다. SIO2 API는 블렌더에서 만든 에셋들을 가지고 직접 작업할 수 있도록 해주며, 더 좋은 효과들을 얻기 위해 해야할 실제 코딩을 획기적으로 줄여주기 위한 고급 프로그래밍 인터페이스를 제공한다. SIO2는 물론 루아(Lua) 스크립팅과 네트워킹 같은 고급 기능도 사용가능하다.

이러한 이유들로 블렌더와 SIO2를 함께 사용하는 것은 콘텐츠 제작과 고급 프로그래밍 환경으로 접근할 수 있도록 해주는 상용 모바일 3D 게임 파이프라인의 큰 비용에 비해 극히 적은 비용으로도 강력한 솔루션을 제공해준다.

누가 이 책을 읽어야 하는가
이 책은 아이폰이나 아이팟터치에서 3D 애플리케이션을 개발하는 데 관심이 있는 모든 사람을 위해 쓰여졌다. 이 책의 튜토리얼을 따라가는 것이 아이폰 플랫폼에서의 3D 콘텐츠 개발에 필요한 지식들을 배우는 데 가장 빠르고 쉬운 길이라는 것을 깨닫게 될 것이라 믿는다. 이 책의 내용이 매우 쉽거나 이 책이 ”입문서"라고 말하려는 것은 아니다. 만약 여러분이 프로그래밍 경험이 없다면 이 책이 조금 어렵게 느껴질 수도 있다. 한 권의 책에서 모바일 게임 개발을 하나부터 열까지 모두 다룰 수는 없지만 이 책은 적어도 여러분이 3D 애플리케이션 개발을 시작하는 데 매우 큰 도움을 줄 것이다.

*아마존 리뷰

Xcode, 블렌더와 SIO2, 그리고 이 책은 서로 떨어질래야 떨어질 수 없는 관계이다.
Wayne Hawkins


나에 대해 먼저 소개하자면, 코딩은 수년 동안 해왔지만 Mac에서의 경험은 전혀 없었다. MS 계열 개발자로써 비주얼 스튜디오를 이용해 비주얼베이직, 자바스크립트, HTML 등으로 프레임워크들을 위한 개발을 해왔다. 그리고 약 10개월 전에 직접 아이폰과 아이팟터치를 위한 게임을 개발하기 위해서 맥과 아이팟을 구입하였고, Xcode, 블렌더, ISO2를 설치했다.

Objective-C와 게임, 블렌더에 관한 10여 개의 도서들을 독파하고 약 10개월이 지났지만, 여전히 내게 맞는 아이폰/아이팟/아이패드 개발을 위한 적당한 책을 찾기는 쉽지가 않았다. 내가 그렇게 머리가 나쁘다고 생각하지는 않지만, 최소한 지금까지 본 도서들로부터는 원하는 정보를 얻을 수가 없었다. 아마도 MS 개발자로써의 코딩 스타일이 굳혀졌기 때문일지도 모르겠지만, Xcode는 비주얼스튜디오와 비교도 안될 정도로 훨씬 다루기가 어려웠다.

이것저것 알아본 결과 게임엔진으로 cocos2d와 SIO2를 사용해 보기로 결심하였고, 먼저 cocos2d로 작업을 해본 결과 정말 유용한 게임 엔진이라는 것은 알았지만 내가 사용하기에 충분하지는 않았다. 그래서 바로 SIO2를 공부하기 시작했고, SIO2 웹사이트에서 제공하는 자료들과 비디오 튜터리얼들은 정말 SIO2를 배우는 데 많은 도움이 되었으며, 그러던 중 이 책이 출간이 되었다.

나는 이 책이 내가 필요로 하는 부분들을 채워줄 기대감으로 출간이 되기 한 달 전부터 예약구매를 했고, 현재 이 책은 내가 기대했던 만큼 충분히 그 공간을 메워주고 있다. 이 책은 SIO2에 대해 단계적인 절차를 통해서 정말 믿을 수 없을 정도로 잘 따라갈 수 있도록 구성이 되었고, 지금까지 본 최고의 아이폰 3D 개발 도서임이 분명하다.

초보자를 위한 지침서
Pat B. Ferguson, 소프트웨어 엔지니어


약 2주 전만해도 나는 Objective-C는 고사하고 Mac 조차 사용해본 적이 없었다. 그러나 2주 동안 다른 한 권의 관련 서적과 함께 이 책을 읽고 난 후에는 물리작용을 이용한 3D 객체를 내 아이폰에서 구동시킬 수가 있었다. 물론 이를 위해서 이 책을 반복해서 참고해야 했지만 결국에는 해낼 수 있었고, 약간의 프로그래밍 + 3D 경험만 있다면 여러분도 충분히 가능하다.

이 책은 아이폰과 아이팟터치를 위한 3D 앱/게임을 제작하길 원하는 초보자들을 위한 훌륭한 지침서가 될 것이다. 바로 내가 경험했던 것처럼 말이다.

목차

1. 아이폰을 위한 3D 개발 시작하기
시작하기
소프트웨어 설치
- 아이폰 SDK
- 블렌더 설치하기
- SIO2 설치하기
- 프로그램 다운로드
개발환경 설정하기
- Xcode에서 SIO2 템플릿 빌드하기
- 문제해결

2장. SIO2 그래픽 프로그래밍 소개
SIO2 템플릿
간단한 OpenGL 데모
- OpenGL ES로 그래픽 콘텐츠 생성
- 변환 자세히 살펴보기
--- 변환의 순서
--- 행렬스택의 사용
상호작용의 기초
전체코드

3장. 블렌더/SIO2/아이폰과의 첫 만남
블렌더/SIO2/Xcode 워크플로우
SIO2 개요
3D 세계와의 첫 만남! 블렌더에서 새로운 세상 만들기
- 세계와 배경을 모델링, 텍스처링하기
- 조명, 카메라 그리고 배경
SIO2 포맷으로 추출하기
- 추출 스크립트
- 세계 추출하기
- .sio2 파일 포맷

4장. 모바일에서 SIO2 사용하기
SIO2 초기화와 에셋 로딩
- 헤더와 프로토타입
- templateLoading 함수
렌더링
- 회전하는 지구본 만들기
- 조명 넣기
- 문제해결
화면 터치에 의한 상호작용
- 회전 제어
- 화면 탭과 화면 터치 이동 다루기
전체 코드

5장. 피킹과 텍스트를 이용한 피드백의 확장
객체 피킹하기
- 블렌더에서의 간단한 피킹 예제
- SIO2에서 색 기반의 피킹 구현하기
- 피킹 코드 자세히 살펴보기
- Hello3DWorld에 피킹 기능 추가하기
텍스트와 폰트 다루기
- 비트맵 폰트
- SIO2에서의 폰트와 머티리얼
--- 폰트 로딩하기
--- 폰트 렌더하기
멀티터치 기능 사용하기
애플리케이션 패키징
전체코드

6장. SIO2에서 몰입형 환경 만들기
하늘과 땅 모델링하기
- 블렌더에서 평지 만들기
- SIO2를 위한 단단한 땅
- 그럴듯한 하늘 돔 만들기
- sio2 파일 추출하기
SIO2에서 몰입형 환경 만들기
- 화면 설정
--- templateLoading 함수
--- templateRender 함수
--- templateScreenTap 함수
- 물리 시뮬레이션 설정하기
카메라를 움직여 환경 탐험하기
- templateRender에서의 이동
- templateSceenTap에서의 이동
- templateScreenTouchMove 함수
전체코드
- EAGLview.mm
- template.mm

7장. 물체와 물리 객체
텍스처 표면 객체와 투명성
- 블렌더에서의 알파 텍스처링
- SIO2에서 알파 투명도 렌더하기
빌보드를 이용하여 나무 생성하기
상호작용하는 객체들에 대한 물리적 성질
- 강체 객체
- 장애물에 대한 정적 물리
효율적인 객체 조작을 위한 가상 인스턴싱
Low-Poly 충돌 맵 다루기
전체 코드

8장. 캐릭터 움직이기
블렌더에서 캐릭터 움직이기
- 간단한 보행주기 만들기
- 기본 모션과 NLA Strips 만들기
SIO2에 액션 넣기
걷게 만들기
반응이 빠른 실시간 그림자
전체코드

9장. 위젯 다루기
위젯으로 스플래시 만들기
- 이미지 포맷 선택하기
- iFrankie를 위한 위젯 그래픽
SIO2에서 Active Widget 생성하기
- 위젯 변수 선언하기
- 위젯과 에셋 로딩하기
- Button 콜백 함수
- Template 렌더 함수
- 게임 렌더 함수
전체코드

부록 A. 블렌더 기초
인터페이스와 네비게이션
- 윈도우와 헤더
- 레이어
- 3D 공간 탐색
-- 공간상에서의 회전, 패닝, 확대
-- 숫자패드 사용하기
-- 3D 커서
모델링하기
- 객체와 Object 모드
--- 선택하기
--- 3D 변환하기
--- 객체를 추가, 삭제하기
- 메시와 Edit 모드
--- 선택하기
--- 3D 변환하기
--- 메시 모델링 도구
--- 비례편집
--- 법선
- 아머츄어와 리깅
머티리얼과 텍스처
- 머티리얼
- UV 텍스처링
--- 언래핑과 매핑
--- 텍스처 설정
--- 텍스처 베이킹
애니메이션
- 아이포 커브
- 액션과 비선형 애니메이션

부록 B. 그래픽 프로그래밍 핵심
좌표계, 행렬, 변환
- 행렬 수식
- 변환
--- 모델/뷰 변환
--- 투영변환
행렬 곱에 의한 변환
- 행렬의 곱
- 행렬의 변환
- 3D 행렬 변환
행렬과 OpenGL

부록 C. SIO2 레퍼런스
SIO2 학습자료
- 공식 SIO2 튜토리얼과 샘플 코드들
- SIO2 Meditation Garden으로 한계를 초월하자
- Hoops Frenzy에서 점수 쌓기
- SIO2 Backyard War로 파워업하기
- SIO2 포럼
.sio2 파일 포맷
SIO2 플래그 값
SIO2 함수

찾아보기

저자소개

저자 토니 뮬렌은 도쿄에 거주하고 있고 3D 아티스트이자 프로그래머이며, Tsuda 대학에서 컴퓨터 사이언스 강의를 맡고 있다. 그는 Mac을 위한 일본 잡지인 MacPeople에서 블렌더와 그래픽 프로그래밍에 관련된 많은 기사를 썼다. 또한 Sybex 출판사의 블렌더 관련 도서인 『Introducing Character Animation with Blender』과 『Mastering Blender』의 저자이다.

교환 및 환불안내

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