Top

Away3D 3.6 Essentials 한국어판 [강력한 플래시 3D엔진 어웨이3D 개발]

  • 원서명Away3D 3.6 Essentials (ISBN 9781849512060)
  • 지은이매튜 캐스퍼슨
  • 옮긴이플래시 오픈소스 그룹 파워플
  • ISBN : 9788960772601
  • 30,000원
  • 2012년 01월 02일 펴냄
  • 페이퍼백 | 440쪽 | 188*235mm
  • 시리즈 : acorn+PACKT, 게임 개발 프로그래밍

책 소개

어웨이3D는 2007년에 시작된 플래시 기반의 실시간 3D 엔진이다. 개발 초기부터 오픈소스로 진행되어 큰 커뮤니티 기반을 확보하고 있으며 상업적인 목적에도 완전히 무료로 이용할 수 있다. 이 책은 광범위한 어웨이3D의 기능을 단계별로 친절한 설명과 예제를 통해 설명한다.


[ 소개 ]

플래시 어웨이3D는 가장 인기 높은 실시간 3D 엔진 중 하나다. 다양한 3D 환경을 세밀하게 구현할 수 있을 뿐만 아니라, 3D 애니메이션을 만들고, 다양하고 특수한 이펙트를 활용해보며, 서드파티 라이브러리를 통합하는 등 많은 일을 할 수 있다. 어웨이3D의 가능성은 무한하지만 어떻게 하면 완벽한 3D 애플리케이션을 만들기 위해 수많은 기능을 최대로 이용할 수 있을까?

이 책은 플래시의 새로운 가능성을 열어주는 어웨이3D에 대한 최고의 가이드다. 이 책에서는 3D의 기본모델을 생성하고, 살아있는 것처럼 움직이는 캐릭터를 만들어내며, 매우 복잡한 3D 장면을 만들어내는 방법까지 낱낱이 알려준다. 흔히 빠지는 함정을 피하는 방법에 대해 수많은 팁을 제공하며, 간단한 구체에서 3D로 된 도시의 구현까지 놀랍도록 아름답고 현실감 넘치는 3D 플래시 애플리케이션을 만드는 방법을 알려준다.


[ 이 책에서 다루는 내용 ]

■ 매우 세밀한 텍스처를 사용해 아름다운 3D 환경을 제작하기
■ 3D 텍스트 등 모든 종류의 3D 객체를 움직이고 변환해보기
■ 어웨이3D의 화면 품질을 유지한 채 하드웨어 사양에 대한 의존성을 최소화하도록 최적화하는 방법
■ 3D 객체를 직접 만들지 않고, 기본 구성 요소로부터 육면체, 원뿔, 구체, 평면 같은 기본 모델을 사용해 3D 객체를 생성하는 방법
■ 어웨이3D 애플리케이션에 눈길을 끄는 특수 이펙트 추가
■ 3D 텍스트를 뒤틀어보고, 휘어보고, 수정하고, 구부려보기
■ 카메라를 이동해 다양한 각도로 3D 객체를 비춰보기
■ 스프라이트와 스프라이트와 관련된 클래스 활용


[ 이 책의 대상 독자 ]

초급부터 고급까지 어웨이3D 엔진을 활용해 플래시에서 3D 애플리케이션을 만들려는 플래시 개발자라면 누구나 읽을 수 있다.어웨이3D를 처음 접한 사람이나 숙련된 개발자 모두 상관 없이 플래시를 새로운 3차원으로 확장하는 데 필요한 탄탄한 기초를 얻을 수 있다. 이미 어웨이3D에 능숙한 플래시 개발자에게는 레퍼런스 가이드가 될 것이다.


[ 이 책의 구성 ]

1장 첫 어웨이3D 애플리케이션 만들기에서는 플래시 빌더, 플래시 디벨롭, 플래시CS 5.5등 여러 통합개발환경(IDE)을 이용해 첫 번째 어웨이3D 애플리케이션을 제작하는 방법을 보여준다.

2장 기본 모델의 생성과 표시에서는 어웨이3D에서 사용할 수 있는 다양한 기본 모델을 살펴본다.

3장 움직이는 객체에서는 장면(scene) 내의 3D 객체를 직접적으로 또는 TweenLite 라이브러리를 사용해 움직이는 방법과, 크기나 회전을 조절하는 방법을 알아본다.

4장 Z축 정렬에서는 어웨이3D 애플리케이션에서 발생할 수 있는 정렬과 렌더링 문제를 해결하는 방법을 알아본다.

5장 재질에서는 어웨이3D에서 단색만 표현하는 기본 재질에서부터 픽셀벤더(Pixel Bender)를 사용하는 고급 재질까지, 여러 재질과 조명을 알아본다.

6장 모델과 애니메이션에서는 외부의 3D 모델링 애플리케이션에서 제작된 이미지와 애니메이션된 3D 모델을 로드하고 표시하는 방법을 알아본다.

7장 카메라에서는 다양한 속성이 장면에 미치는 영향을 알아본다. 또한 장면 내에서 쉽게 트래킹할 수 있고 3D 객체를 보여줄 수 있는 카메라 클래스에 대해 살펴본다.

8장 마우스 상호작용에서는 사용하기 쉽고 자연스러운 상호작용 3D 애플리케이션을 제작하는 데 필요한 마우스 처리 방법을 알아본다.

9장 스프라이트3D를 사용한 특수효과에서는 스타더스트 입자(Stardust particle) 엔진을 사용해 여러 가지 특수 효과를 보여준다.

10장 3D 텍스트 만들기에서는 3D 텍스트를 만들고 다루는 방법을 알아본다.

11장 돌출 효과와 정점 수정 효과에서는 외부 3D 모델링 애플리케이션을 사용하지 않고 직접 어웨이3D를 통해 복잡한 3D 오브젝트를 제작하는 방법을 알아본다.

12장 필터와 후처리 효과에서는 어웨이3D 애플리케이션에 다양한 시각 효과를 사용하는 방법을 알아본다.

13장 성능 팁에서는 높은 성능을 유지하면서 화려한 3D 환경을 구축할 수 있는 어웨이3D
애플리케이션 최적화 방법을 알아본다.

저자/역자 소개

[ 저자 서문 ]

어웨이3D는 플래시(Flash) 기반의 인기 있는 실시간 3D엔진 중 하나로 섬세한 3D 환경을 보여주거나, 3D 모델을 애니메이션시키고, 3D 텍스트 제작과 다양한 특수 효과를 표현하는 등 광범위한 3D 애플리케이션을 제작할 수 있다. 약간의 액션스크립트 지식과 드넓은 상상력, 그리고 어웨이3D만 있다면 가능성은 무한하다.

이 책은 플래시 플랫폼에 펼쳐진 가능성을 보여줄 어웨이3D의 다양한 기능을 안내할 것이다. 이 책에서 제공하는 예제와 실무를 위한 팁을 배우고 나면 즉시 어웨이3D를 사용할 수 있다.

이 책은 기초부터 시작해 플래시 빌더, 플래시 디벨롭, 플래시 CS5.5 같은 여러 저작도구로 어웨이3D 애플리케이션을 만들 수 있게 도와준다. 먼저 기본 모델을 생성해 보는 것으로 어웨이3D에 익숙해진 후, 고화질의 텍스처(texture)와 애니메이션(animation)을 표현하는 멋진 3D 환경을 제작하게 될 것이다.

사용자와 상호작용하는 애플리케이션을 만드는 방법을 배우고, 카메라의 초점(focus)을 맞추는 방법과 3D 장면을 어떤 각도로도 보일 수 있게 하는 방법을 배운다. 그 후 시각적인 효과를 유지한 채 최고 성능을 내도록 최적화하여 더욱 뛰어난 어웨이3D 애플리케이션을 만든다.

이 책은 단순히 구체를 표시하는 것에서부터 3D로 된 도시 전체를 생성하는 것까지 차근차근 단계별로 보여주며, 일반적인 실수를 피할 수 있도록 많은 팁을 제공한다.


[ 저자 소개 ]

매튜 캐스퍼슨 (Matthew Casperson)
십여 년간 개발과 지원 등 다양한 IT 직종에서 일해왔다. 여가 시간에는 최신 웹과 멀티미디어 기술로 온갖 실험을 해보는 데 흠뻑 빠져있다. 매튜의 작업물은 개인 웹사이트 http://matthewcasperson.blogspot.com/에서 볼 수 있다.


[ 옮긴이의 말 ]

어웨이3D는 2007년에 시작된 플래시 기반의 실시간 3D 엔진이다. 개발 초기부터 오픈소스로 진행되어 큰 커뮤니티 기반을 확보하고 있으며 상업적인 목적에도 완전히 무료로 이용할 수 있다.

어웨이3D의 기능은 방대하여 매우 세밀한 3D 컨텐츠를 제작할 수 있고, 다양한 재질과 효과를 사용할 수 있으며, 서드파티의 수많은 라이브러리와 통합할 수 있다. 뿐만 아니라 조명과 그림자 처리, 3D 애니메이션, 물리엔진 연동, 3D 스프라이트 처리 등 3D 엔진이 갖춰야할 거의 모든 기능을 제공한다.

역사가 오래된 만큼 어웨이3D의 버전도 다양하다. 2.5.x는 플래시 9를 위해 사용할 수 있다. 3.6.x 버전은 플래시 10을 위해 사용되며 Lite 1.0의 경우 기능을 간소화한 대신 성능을 더욱 높인 버전인데 이 역시 플래시 10에서 사용된다. 최신 버전의 플래시 11을 위해서는 4.x 버전이 제공된다. 이 외에도 JSAway(http://away3d.com/comments/jsaway-3d-graphics-through-javascript) 등 자바스크립트를 위한 변형 버전까지도 존재해 실로 광범위한 어웨이3D의 지원 범위를 알 수 있다. 이러한 어웨이3D 제품군은 전체적으로 통일된 인터페이스와 사용방법 및 설계상의 철학을 공유한다. 따라서 한 가지 버전의 어웨이3D에 익숙해진다면 곧 어떤 버전의 어웨이3D라도 쉽게 사용할 수 있다.

2011년 12월 현재 플래시의 최신 버전은 11로 GPU를 지원하는 Stage3D라는 기능을 내장했다. 이를 지원하는 최신 버전의 어웨이3D는 4.0 버전이나 아직 알파단계에 머물고 있다. 플래시 11은 기존의 플래시 10에 비해 전용 그래픽카드 등의 하드웨어 필요 사양이 높아 기존처럼 광범위한 호환성을 가지지는 못하지만 점차 확산될 거라 생각한다. 이러한 시점에서 어웨이3D 3.6을 통해 3D의 개념과 프로그래밍 기법을 익혀둔다면 이후 정식 버전이 될 어웨이3D 4.0에도 손쉽게 접근할 수 있게 될 것이다.

이 책은 광범위한 어웨이3D의 기능을 친절한 설명과 예제를 통해 단계별로 설명해준다.
3D를 전혀 모르는 초심자라도 차근차근 따라하다 보면 어느새 3D 컨텐츠 제작에 대한 전반적인 이해력이 생기고 책을 다 읽을 때쯤에는 화려한 3D그래픽과 애니메이션을 쉽게 구현할 수 있을 것이다.


[ 옮긴이 소개 ]

플래시 오픈소스 그룹 파워플 (http://powerfl.com/)
플래시 오픈소스 운동을 위해 창설한 커뮤니티로 2010년부터 활동해 오고 있다. 다양한 시도를 거듭하는 중이며 2011년도에는 팀블로그를 주요 활동 목표로 삼아 다양한 분야의 전문적인 포스트를 정기적으로 업데이트하는 웹진 형식으로 운영하고 있다. 그룹활동의 일환으로 이번 책의 번역에 팀 구성원이 참여하게 됐다.

맹기완
현재 비사이드소프트(Bsidesoft)의 대표이며 기획 및 개발 분야에 종사한다. 오랜 기간 다양한 언어와 플랫폼에서 서비스를 개발하고 기획한 경험이 있으며 2008년부터 플래시 기술 블로그(http://www.diebuster.com)를 운영하고 있다.

지용호
위콘 커뮤니케이션즈에서 개발팀장으로 스타플(starpl.com) SNS 웹 및 모바일 앱 개발 업무를 맡고 있다. ACC(Adobe Community Champion), ACP(Adobe Community Professional), 천문노트(astronote.org) 고문으로 활동 중이다. 온라인에서는 지돌스타라는 닉네임을 쓰며, 블로그(blog.jidolstar.com)를 통해 천문학 및 각종 개발 기술에 대해 정보를 공유한다.

김어진이
선데이토즈에서 소프트웨어 엔지니어로서 소셜 게임 개발을 하고 있다. 게임을 좋아하며, 소프트웨어 공학에 관심이 많다. 온라인에서는 니케라는 닉네임을 쓰며, 파워플에는 개발 기술에 관한 내용을 공유한다.

엄진우
㈜라온스퀘어에서 인터랙션 디자인 디렉터로서 SKT T.um(http://tum.sktelecom.com) 홍보관 같은 전시 홀에 플래시와 C# 언어를 활용한 플랫폼을 제작해 비주얼 효과 구현 및 센서 시스템, 조명 제어 시스템을 연동한 환경을 구축하고 있다.

안세원
호주에 있는 The Creative Shop에서 인터랙티브 개발자로 일하고 있다. 최근에는 멀티터치 테이블, 키오스크 등을 제작하며 플래시와 실 세계를 연결해보는 일에 관심이 많다. 이를 위해 다양한 디바이스와의 연동을 연구하는 중이다.

목차

목차
  • 1장 첫 어웨이3D 애플리케이션 만들기
    • 플래시 플레이어 버전에 따른 어웨이3D 선택
    • 어웨이3D 다운로드
      • 소스 압축 파일 다운로드
      • SVN을 이용한 소스 다운로드
        • TortoiseSVN 사용하기
    • 어웨이3D 새 프로젝트 만들기
      • 어도비 플래시 빌더
      • 플래시 디벨롭
      • 어도비 플래시 CS5.5
    • 플래시 플레이어 10 런타임 설정
      • 어도비 플래시 빌더
      • 플래시 디벨롭
      • 어도비 플래시 CS5.5
    • 첫 애플리케이션 만들기
    • Away3DTemplate 실행
      • 어도비 플래시 빌더
      • 플래시 디벨롭
      • 어도비 플래시 CS5.5
      • 결과
    • 3D 장면에서 객체의 위치 설정
    • Away3DTemplate을 상속해 장면에 표시하기
    • SphereDemo 실행
      • 어도비 플래시 빌더
      • 플래시 디벨롭
      • 어도비 플래시 CS5.5
      • 결과
    • 정리
  • 2장 기본 모델의 생성과 표시
    • 3D 객체의 기본 구성 요소
      • 정점
      • 삼각면
      • 스프라이트3D
      • 세그먼트
    • UV 좌표계
    • 기본 모델 만들기
      • 일반적인 초기화 객체 속성
      • 원뿔
      • 육면체
      • 원통
      • 지오데식 구체
      • 격자 평면
      • 선 세그먼트
      • 평면
      • 정다각형
      • 둥근 육면체
      • 바다 거북
      • 스카이박스
      • 스카이박스6
      • 구체
      • 원환체
      • 삼각면
      • 좌표축
    • 정리
  • 3장 움직이는 객체
    • 전역좌표계, 부모좌표계, 지역좌표계
      • 월드공간
      • 부모공간
      • 지역공간
    • 변환함수/속성과 관련 좌표계
    • 위치 조정
      • x, y, z 속성
      • position 속성
      • 이동 함수
      • moveTo( ) 함수
        • translate( ) 함수
    • 회전
      • 회전을 위한 초기화 객체 인자
      • rotation 속성
      • rotateTo( ) 함수
      • eulers 속성
      • rotate( ) 함수
      • lookAt( ) 함수
      • pivotPoint 속성
      • movePivot( ) 함수
      • scenePivotPoint 속성
      • pitch( ), yaw( ), roll( )함수
    • 크기 조정
      • 크기 조정을 위한 초기화 객체 인자
      • scale( ) 함수
      • scaleX, scaleY, scaleZ 속성
    • 변환
    • 트위닝
    • 네스팅
    • 정리
  • 4장 Z축 정렬
    • 페인터 알고리즘
    • 장면 정렬
    • 정렬 순서 조절
      • pushfront와 pushback 속성
      • screenZOffset 속성
      • ownCanvas 속성
    • Z축 정렬에 대한 참고사항
    • 추가적인 렌더러
    • 정리
  • 5장 재질
    • 텍스처와 재질의 차이점
    • 자원 관리
    • 어웨이3D에서 색 정의
      • 정수를 사용한 색 정의
      • 문자열을 사용한 색 정의
    • 픽셀 벤더
    • 빛과 재질
    • 셰이딩 기법
      • 텍스처 맵핑
      • 노멀 맵핑
      • 환경 맵핑
      • 플랫 셰이딩
      • 펑 셰이딩
    • 재질 적용
      • 기본 재질
        • WireColorMaterial
        • WireframeMaterial
        • ColorMaterial
      • 비트맵 재질
        • BitmapMaterial
        • TransformBitmapMaterial
      • 애니메이션 재질
        • MovieMaterial
        • AnimatedBimapMaterial
      • 상호작용 MovieMaterial
      • 합성 재질
        • DepthBitmapMaterial
        • EnviroBitmapMaterial
        • EnviroColorMaterial
      • 광원 재질
        • WhiteShadingBitmapMaterial
        • ShadingColorMaterial
        • PhongBitmapMaterial
        • PhongColorMaterial
        • PhongMovieMaterial
        • DotBitmapMaterial
      • 픽셀 벤더 재질
        • DotBitmapMaterialF10
        • PhongPBMaterial
        • PhongMultiPassMaterial
        • FresnelPBMaterial
        • CubicEnvMapPBMaterial
    • 외부 파일에서 텍스처 가져오기
      • BitmapFileMaterial
      • TextureLoadQueue 사용하기
    • 정리
  • 6장 모델과 애니메이션
    • 어웨이3D에서 지원하는 3D 포맷
      • 3D 모델 내보내기
        • 3ds 맥스에서 내보내기
        • 밀크셰이프에서 내보내기
        • 스케치업에서 내보내기
        • 블렌더에서 내보내기
        • Collada 내보내기에 대한 참고사항
    • 3D 모델 읽어오기
      • 애니메이션 모델
        • MD2 - 임베드한 파일을 로드하기
        • MD2 - 외부 파일 로드하기
        • Collada - 임베드된 파일 로드하기
        • Collada - 외부 파일 로드하기
        • AS - 변환된 모델 로드하기
      • 정적 모델
        • 3DS - 임베드된 파일 로드하기
        • 3DS - 외부 파일 로드하기
        • AWD - 임베드된 파일 로드하기
        • AWD - 외부 파일 로드하기
        • KMZ
        • ASE - 임베드된 파일 로드하기
        • ASE - 외부 파일 로드하기
        • OBJ - 임베드된 파일 로드하기
        • OBJ - 외부 파일 로드하기
    • 초기화 객체와 Init 객체 문제
    • 로드한 모델을 액션스크립트 클래스로 변환
    • 정리
  • 7장 카메라
    • 카메라 속성
    • 카메라 렌즈
      • ZoomFocusLens와 PerspectiveLens 클래스
      • SphericalLens 클래스
      • OrthogonalLens 클래스
    • 카메라 클래스
      • 타겟 카메라
      • 호버 카메라
      • 스프링 카메라
    • 정리
  • 8장 마우스 상호작용
    • 어웨이3D 마우스 이벤트
    • ROLL OVER / ROLL OUT과 MOUSE OVER / MOUSE OUT의 차이점
    • 장면에서 마우스 위치를 반영하기
    • 정리
  • 9장 스프라이트D를 사용한 특수 효과
    • Sprite3D 클래스 사용하기
    • DirectionalSprite 클래스 사용하기
    • DepthOfFieldSprite 클래스 사용하기
    • 입자 시스템 사용하기
      • 어웨이3D 스타더스트 초기화 클래스 만들기
      • 어웨이3D에서 스타더스트 입자 렌더러 만들기
      • 스타더스트 이미터 만들기
      • 모두 합치기
    • 정리
  • 10장 3D 텍스트 만들기
    • 폰트 임베드 하기
    • 장면에 텍스트 표시하기
    • 3D 텍스트 재질
    • 3D 텍스트에 돌출 효과 적용하기
    • 3D 텍스트 변형하기
    • 정리
  • 11장 돌출 효과와 정점 수정 효과
    • PathExtrusion 클래스로 깃발 만들기
    • LinearExtrusion 클래스로 벽 만들기
    • LatheExtrusion 클래스로 꽃병 만들기
    • SkinExtrusion 클래스로 지형 만들기
    • ElevationReader 클래스로 지형 표면의 높이 읽기
    • 높이 맵 정점 변환 효과
    • 정리
  • 12장 필터와 후처리 효과
    • 플래시와 어웨이3D 필터
      • 플래시 필터
        • 필터 적용하기
        • BlurFilter 적용하기
        • DisplacementMapFilter 적용하기
        • GlowFilter 적용하기
        • 픽셀 벤더 셰이더 적용하기
        • 뷰에 필터 적용하기
      • 어웨이3D 필터
    • 렌더링 세션
      • BitmapRenderSession으로 후처리하기
    • 정리
  • 13장 성능 팁
    • 현재 프레임 속도 결정하기
    • 최대 프레임 속도 설정하기
    • 플래시 품질을 low로 설정하기
    • 뷰포트의 크기 축소하기
    • 뷰포트 출력의 크기 조정
    • 삼각면 캐싱
    • LOD모델
    • 어웨이3D 필터
      • ZDepthFilter
      • MaxPolyFilter
    • 오프스크린 렌더링
    • 모델 포맷

도서 오류 신고

도서 오류 신고

에이콘출판사에 관심을 가져 주셔서 고맙습니다. 도서의 오탈자 정보를 알려주시면 다음 개정판 인쇄 시 반영하겠습니다.

오탈자 정보는 다음과 같이 입력해 주시면 됩니다.

(예시) p.100 아래에서 3행 : '몇일'동안 -> 며칠동안