1. 광고배너
  2. 광고배너
/ 이전버튼 다음버튼
2
미리보기

안드로이드 카드보드 VR 프로젝트(ACORN+PACKT TECHNICAL BOOK)
저자 : 조나단리노위즈,매트쉰 ㅣ 출판사 : 에이콘출판 ㅣ 역자 : 이지훈

2017.01.26 ㅣ 180p ㅣ ISBN-13 : 9788960779686

정가30,000
판매가29,700(1% 할인)
적립금 600원 (2%)
배송일정 05월 09일 출고 가능
주문 수량 변경시 안내 배송안내
쿠폰 및 결제혜택 확인하기

크기 기타 규격
제품구성 단행본
이용약관 청약철회
국내도서 > 컴퓨터 > 시스템공학 > 아키텍처/시스템프로...
*안드로이드 카드보드 VR 프로젝트(ACORN+PACKT TECHNICAL BOOK)*는 구글 카드보드 SDK를 이용한 가상현실 앱 개발을 담은 책이다. 구글 카드보드 네이티브 SDK를 사용해 구글 카드보드 앱을 공부하고, 개발하고 싶어 하는 안드로이드 개발자를 대상으로 한다. 이 책을 읽는 독자라면 안드로이드 개발 및 자바 언어에 관한 지식이 어느 정도 있겠지만, 3D 그래픽을 비롯해 가상현실이나 구글 카드보드는 생소할 수도 있다. 초보 개발자와 안드로이드 SDK에 익숙하지 않은 개발자라면 이 책이 다소 어렵다고 느낄지 모른다. 안드로이드에 관한 배경지식이 없는 개발자라면 유니티(Unity) 같은 게임 엔진으로 카드보드 앱을 만드는 게 좀 더 쉬울 수도 있다.
펼쳐보기

[목 차]

1장, 모두를 위한 가상현실
__왜 카드보드라고 불리는가
__VR 장치의 종류
____구형 스테레오스콥
____카드보드는 모바일 VR이다
____데스크톱 가상현실 및 그 밖의 장치들
__VR의 관문
__저가 VR의 가치
__카드웨어(Cardware)
__카드보드 뷰어 설정
__카드보드를 위한 애플리케이션 개발
____유니티 사용하기
____네이티브로 만들기
__가상현실 모범 사례에 대한 개요
__요약

2장, 스켈레톤 카드보드 프로젝트
__안드로이드 앱에 있는 것들
____APK 파일
____그래들 빌드 프로세스
____자바 컴파일러
__안드로이드 프로젝트 구조
__안드로이드 스튜디오로 시작하기
____안드로이드 스튜디오 설치
____안드로이드 스튜디오 유저 인터페이스
__카드보드 프로젝트 생성
__카드보드 자바 SDK 추가
__AndroidMainifest.xm 파일
__activity_main.xml 파일
__MainActivity 클래스
____OnCreate 메소드
____빌드하고 실행하기
__요약

3장, 카드보드 박스
__새로운 프로젝트 생성
__안녕, 삼각형!
____기하학적 모양 도입하기
____삼각형 변수
____onSurfaceCreated
____OpenGL ES 2.0 도입하기
____간단한 셰이더들
____compileShaders 메소드
____prepareRenderingTriangle 메소드
____onDrawEye
____빌드하고 실행하기
__3D 카메라, 시점, 그리고 헤드 로테이션
____매트릭스에 온 것을 환영한다
____MVP 버텍스 셰이더
____원근 뷰 매트릭스 설정
____원근법에 맞게 렌더링하기
____빌드하기와 실행하기
__삼각형 위치 변경
__안녕, 큐브!
____큐브 모형 데이터
____큐브 코드
__라이팅과 셰이딩
____셰이더 추가
____큐브 노멀과 색상
____버텍스 버퍼 준비
____셰이더 준비
____라이트 소스 추가
____앱을 빌드하고 실행하기
__큐브를 회전시키기
__바닥 추가하기
____셰이더
____바닥 모델 데이터
____변수
____onCreate 메소드
____onSurfaceCreated 메소드
____initializeScene 메소드
____prepareRenderingFloor 메소드
____onDrawEye 메소드
____drawFloor 메소드
__여기 좀 보세요
____isLookingAtObject 메소드
__요약

4장, 런처 로비
__새 프로젝트 생성
__헬로 가상 세계 텍스트 오버레이 추가
____간단한 텍스트 오버레이
____차일드 뷰를 이용해 텍스트를 중앙에 배치
____각각의 눈에 대한 입체적 뷰 생성
____MainActivity에서 오버레이 뷰 컨트롤하기
__가상 장면 사용
__헤드 룩에 응답
__뷰에 아이콘 추가
__설치된 카드보드 앱 목록
____카드보드 앱에 대한 쿼리
____앱에 대한 단축키 클래스 생성
____OverlayView에 단축키 추가
____OverlayEye에서 뷰 리스트 사용
__현재 단축키에 하이라이트
__트리거를 사용해 앱 선택하고 시작하기
__개선 사항
__요약

5장, 렌더박스 엔진
__그래픽 엔진 RenderBox 소개
__새 프로젝트 생성
____렌더박스 패키지 폴더 생성
____빈 렌더박스 클래스 생성
____IRenderBox 인터페이스 추가
__머티리얼, 텍스처, 셰이더
____추상화 머티리얼
__Math 패키지
____MathUtils
____Matrix4
____Quaternion
____Vector2
____Vector3
__Transform 클래스
____Parent 메소드
____Position 메소드
____Rotation 메소드
____Scale 메소드
____매트릭스로 변환과 그리기
__Component 클래스
__RenderObject 컴포넌트
__Cube RenderObject 컴포넌트
__버텍스 색상 머티리얼과 셰이더
____버텍스 색상 셰이더
____VertexColorMaterial
__Camera 컴포넌트
__RenderBox 메소드
__간단한 박스 장면
__면 법선을 가진 큐브
__Light 컴포넌트
__버텍스 색상 라이트 머티리얼 및 셰이더
__애니메이션을 위한 시간
__객체 감지
__RenderBox 패키지 내보내기
__RenderBoxLib 모듈 빌드
____RenderBox 테스트 앱
____향후 프로젝트에서 RenderBox 사용
__요약

6장, 태양계
__새로운 프로젝트 설정
__구(Sphere) 컴포넌트 생성
__단색 라이트 구
____단색 라이트 셰이더
____단색 라이트닝 머티리얼
____구에 머티리얼 추가
____구 보기
__지구 텍스처 머티리얼 추가
____텍스처 파일 로딩
____확산 라이트닝 셰이더
____라이트닝 머티리얼의 확산
____구 컴포넌트에 확산 라이트닝 텍스처 추가
____지구 보기
____카메라 위치 변경
__낮과 밤 머티리얼
____낮/밤 셰이더
____DayNightMaterial 클래스
____낮/밤 렌더링
__태양 만들기
____빛 꺼짐 텍스처 셰이더
____빛 꺼짐 텍스처 머티리얼
____빛 꺼짐 텍스처 렌더링
____태양 추가
__Planet 클래스 생성
__태양계 형성
____MainActivity에서 행성 설정
____카메라의 행성 뷰
____천체 애니메이션
__별이 빛나는 하늘 돔
__지구 미세 조성
____밤 텍스처
____축 기울기와 흔들림
__카메라 위치 변경
__추가할 수 있는 개선 사항
__RenderBox 라이브러리 업데이트
__요약

7장, 360도 갤러리
__새 프로젝트 설정
__360도 사진 보기
____샘플 포토스피어 보기
____배경 이미지 사용
__일반 사진 보기
____Plane 컴포넌트 정의와 버퍼 할당
____Plane 컴포넌트에 머티리얼 추가
____장면에 이미지 스크린 추가
__이미지에 프레임 경계선 넣기
____경계선 셰이더
____경계선 머티리얼
____경계선 머티리얼 사용
__포토 이미지 적재 및 디스플레이
____이미지 클래스 정의
____이미지를 앱으로 읽어 들이기
____이미지 로드 텍스처
____이미지를 스크린에 표시
____올바른 방향으로 회전
____올바른 너비 및 높이로 보정
____샘플 이미지를 비율에 맞게 줄이기
__포토스피어 이미지 로드와 디스플레이
__이미지 갤러리 유저 인터페이스
____왼쪽에 포토 스크린 배치
__그리드에서 섬네일 표시
____섬네일 이미지
____Thumbnail 클래스
____섬네일 그리드
__섬네일을 바라볼 때 로딩하기
____시선 기반 하이라이트
____사진 선택과 보여주기
____큐 이벤트
____진동기 사용
__스크롤 활성화
____Triangle 컴포넌트 생성
____UI에 삼각형 추가
____스크롤 버튼으로 상호작용
____스크롤 메소드 구현
__응답 대기 및 스레드 사용(stay responsive and use threads)
__스레드와 가상현실에 대한 설명
__인텐트로 시작
__틸트업 제스처로 그리드 표시 및 숨기기
__구형 섬네일
____섬네일 클래스에 구 추가
__렌더박스 라이브러리 업데이트
__추가할 수 있는 개선 사항
__요약

8장, 3D 모델 뷰어
__새 프로젝트 설정
__OBJ 파일 포맷 이해
__ModelObject 클래스 생성
__OBJ 모델 구문 분석
____buildBuffers
__모델 범위, 스케일링, 센터
__작은 주전자
__작고 회전하는 주전자
__스레드 세이프
__인텐트로 시작
__실용적이고 즉시 제작 가능
__요약

9장, 뮤직 비주얼라이저
__새 프로젝트 설정
__오디오 데이터 캡처
__VisualizerBox 아키텍처
__웨이브폼 데이터 캡처
__기본 지오메트리 비주얼라이제이션
__2D 텍스처 기반 비주얼라이제이션
____텍스처 생성기 및 로더
____웨이브폼 셰이더
____기본 웨이브폼 머티리얼
____웨이브폼 비주얼라이제이션
__FFT 비주얼라이제이션
____FFT 오디오 데이터 캡처
____FFT 셰이더
____기본 FFT 머티리얼
____FFT 비주얼라이제이션
__트리피 트레일스 모드
__동시 다발 비주얼라이제이션
__랜덤 비주얼라이제이션
__추가 개선 사항
__커뮤니티 초대
__요약
__이후 미래
펼쳐보기
이 책에서 다루는 내용

■ 구글 카드보드 VR 빌드
■ 카드보드 SDK 자바 클래스 및 인터페이스를 탐구하고 실용적인 VR 프로젝트에 적용
■ 쉽고 간단하게 안드로이드 스튜디오, 안드로이드 SDK 및 자바 언어 사용
■ 메모리 관리와 배터리 수명을 포함해, 모바일과 카드보드 어플리케이션을 위한 소프트웨어 개발 및 안드로이드 모범 사례 활용
■ VR 내의 메뉴와 시선을 기반으로 한 선택을 위한 사용자 인터페이스 테크닉 구현
■ 가상 현실, 특히 모바일 카드보드 VR 경험과 관련된 과학, 심리학, 수학과 기술 활용
■ 구글 디자인 랩에 의해 추진된 사례를 포함한 카드보드 VR 모범 사례 이해

이 책의 대상 독자

이 책은 구글 카드보드 네이티브 SDK를 사용해 구글 카드보드 앱을 공부하고, 개발하고 싶어 하는 안드로이드 개발자를 대상으로 한다. 이 책을 읽는 독자라면 안드로이드 개발 및 자바 언어에 관한 지식이 어느 정도 있겠지만, 3D 그래픽을 비롯해 가상현실이나 구글 카드보드는 생소할 수도 있다. 초보 개발자와 안드로이드 SDK에 익숙하지 않은 개발자라면 이 책이 다소 어렵다고 느낄지 모른다. 안드로이드에 관한 배경지식이 없는 개발자라면 유니티(Unity) 같은 게임 엔진으로 카드보드 앱을 만드는 게 좀 더 쉬울 수도 있다.

이 책의 구성

1장, *모두를 위한 가상현실*에서는 구글 카드보드의 정의를 살펴보고, 사용 방법과 VR 기기 범주 내에서 카드보드가 차지하는 위치를 살펴본다.
2장, *스켈레톤 카드보드 프로젝트*에서는 안드로이드에서 카드보드 앱의 구조와 안드로이드 스튜디오를 살펴보고, 카드보드 자바 SDK를 도입해 스타터 카드보드 프로젝트를 구축한다.
3장, *카드보드 박스*에서는 트랜스포메이션, 스테레오스코픽 카메라 뷰, 헤드 로테이션 등 3D 큐브 모델을 이용해 처음부터 카드보드 안드로이드 앱을 만드는 방법을 설명한다(구글의 트래저 헌트(Treasure Hunt) 샘플을 기반으로 한다). 또한 이 장에서는 3D 기하학, OpenGL ES, 셰이더, 매트릭스 수학, 렌더링 파이프라인에 대해서도 알아본다.
4장, *런처 로비*에서는 휴대전화에서 다른 카드보드 앱을 시작할 수 있는 앱을 만들어 본다. 이 프로젝트에서는 3D그래픽을 사용하지 않고, 스크린 공간에 스테레오스코픽 뷰를 시뮬레이트하고 시선 기반(gaze-based)으로 구현한다.
5장, *렌더박스 엔진*에서는 저수준 OpenGL ES API 콜을 머티리얼, 렌더 오브젝트, 컴포넌트, 트랜스폼 클래스로 추출해 새로운 카드보드 VR 앱을 만들기 위한 간단한 그래픽 엔진을 만드는 방법을 보여준다. 라이브러리는 이어지는 프로젝트에서 계속 사용되며 점점 기능이 추가된다.
6장, *태양계*에서는 태양열 에너지원, 텍스처 매핑 자료와 셰이더를 지닌 구형 행성 및 행성의 태양 궤도 애니메이션, 은하수의 별무리와 함께 태양계 시뮬레이션 과학 프로젝트를 구축한다.
7장, *360도 갤러리*에서는 일반 사진과 360도 사진을 볼 수 있는 미디어 뷰어를 만들고, 휴대전화의 카메라 폴더에 있는 사진을 격자형 작은 이미지로 로딩해서 시선을 기반으로 보고 싶은 사진을 선택해본다. 또한 더 나은 사용자 경험을 위해 프로세스 스레딩을 추가하는 방법과 다른 애플리케이션에서 이미지를 볼 수 있게 안드로이드 인텐트를 지원하는 방법을 설명한다.
8장, *3D 모델 뷰어*에서는 렌더박스 라이브러리를 사용해 렌더링된 OBJ 파일 형식의 3D 모델을 위한 뷰어를 설치해본다. 또한 머리의 움직임에 맞춰 모델의 뷰를 제어하는 방법도 살펴본다.
9장, *뮤직 비주얼라이저*에서는 전화기에 설치된 오디오 플레이어의 파형(Waveform)과 FFT 데이터를 기반으로 애니메이팅하는 VR 뮤직 비주얼라이저를 구축한다. 기하학적 애니메이션과 역동적 텍스처 셰이더 및 새로운 비주얼라이제이션을 추가하기 위해 사용되는 일반적인 아키텍처를 구현한다. 그 후 무작위로 안팎으로 전환하는 동시 다발 시각화(multiple concurrent visualizations) 및 트리피 트레일 모드(trippy trails mode)를 살펴본다.
펼쳐보기
매트 쇤(Matt Schoen)
디펙티브 스튜디오(Defective Studios)의 공동 창업자이고, DK1 시절부터 VR 앱을 만들어오고 있다. 하지만 일을 처음 시작한 무렵에는 유니티 앱과 게임 작업을 했었다.
보스턴 대학에서 컴퓨터 엔지니어링을 공부했고, 고등학교 친구였던 조노 포브스(Jono Forbes)와 함께 디펙티브를 설립한 2010년에 학위를 받았다. 그 이후로 게임과 앱을 만들어오고 있다. 디펙티브 사의 첫 번째 게임 코스모노트(CosmoKnots)의 기술 리더를 맡았으며, 조노의 펫 프로젝트인 아키언(Archean)에 여전히 참여하고 있다. 이 책은 그가 쓴 첫 번째 책이지만, 디지털 미디어 아카데미의 강사이자 커리큘럼 디자이너로서의 경험을 담고 있다. 그와 조노는 최근 유니티의 VR 랩 분과에 합류하였으며, 그 곳에서 향후 VR 랜드스케이프를 만들 실험적이고 새로운 기능의 생성 작업을 도울 것이다.

옮긴이 이지훈
아이폰/안드로이드 앱 개발자로 수익 모델 창출에 노력 중이다. 자바스크립트와 파이썬을 이용해 무선 네트워크 데이터 분석 시스템을 만들고 있으며, 전문 번역 커뮤니티 GoDEV의 멤버로 활동하고 있다. 저서로는 『나홀로 개발자를 위한 안드로이드 프로그래밍의 모든 것』(에이콘, 2013), 『Java프로그래밍 입문』(북스홀릭, 2013) 등이 있고 번역서로는 『Hbase 인 액션』(BJ퍼블릭, 2013), 『제대로 배우는 Backbone.js 프로그래밍』(BJ퍼블릭, 2014), 『프로그래머를 위한 안드로이드』(정보문화사, 2015), 『Android Internals Vol.1』(에이콘, 2016) 등이 있다.
펼쳐보기

독자서평 쓰기 로그인을 하시면 독자서평을 쓰실 수 있습니다.

독자서평 쓰기 로그인을 하시면 독자서평을 쓰실 수 있습니다.
도서평점
내용
등록하기
0/2000자
교환/반품 방법
  • 마이페이지 > 주문관리 > 주문/배송조회 > 주문조회 후  [1:1상담신청]  또는 고객센터 (1544-9020)
  • ※ 오픈마켓, 해외배송 주문상품 문의 시 [1:1상담신청] 또는 고객센터 (1544-9020)
교환/반품 가능기간
  • 변심반품의 경우 수령 후 7일 이내
  • 상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
교환/반품 비용
  • 단순변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
  • 해외직배송 도서 구매 후 단순변심에 의한 취소 및 반품 시 도서판매가의 20% 수수료 부과
교환/반품 불가사유
  • 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
  • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우 예) 만화, 잡지, 수험서 및 문제집류
  • 복제가 가능한 상품 등의 포장을 훼손한 경우 예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
  • 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우
  • 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  • 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우
상품 품절
  • 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는 이메일과 문자로 안내드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
  • 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁 해결 기준 (공정거래위원회 고시)에 준하여 처리됨
  • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리함

이 분야의 베스트

더보기 >

    이 분야의 신간

    더보기 >
      맨위로가기

      영풍문고 로고

      • 회사명 : (주)영풍문고
      • 대표이사 : 김경환
      • 소재지 : 서울특별시 종로구 청계천로 41 (우)03188
      • 사업자 등록번호 : 773-86-01800 ㅣ 통신판매업 신고번호 : 2023-서울종로-0130 [ 사업자정보확인 ]
      • 개인정보관리 책임자 : 조순제 ㅣ customer@ypbooks.co.kr ㅣ 대량주문 : webmaster@ypbooks.co.kr
      COPYRIGHT © YOUNGPOONG BOOKSTORE INC. ALL RIGHTS RESERVED.
      영풍문고 네이버블로그 영풍문고 인스타그램
      맨위로가기