본문내용 바로가기

KYOBO 교보문고

1만원 캐시백
책들고여행
2020다이어리
  • 교보아트스페이스
  • 북모닝책강
C++로 개발하는 언리얼 엔진 4
* 중고장터 판매상품은 판매자가 직접 등록/판매하는 상품으로 판매자가 해당상품과 내용에 모든 책임을 집니다. 우측의 제품상태와 하단의 상품상세를 꼭 확인하신 후 구입해주시기 바랍니다.
601쪽 | 규격外
ISBN-10 : 1161752714
ISBN-13 : 9791161752716
C++로 개발하는 언리얼 엔진 4 중고
저자 윌리엄 셰리프 | 역자 김제룡 | 출판사 에이콘출판
정가
40,000원 신간
판매가
31,990원 [20%↓, 8,010원 할인]
배송비
2,500원 (판매자 직접배송)
지금 주문하시면 2일 이내 출고 가능합니다.
토/일, 공휴일을 제외한 영업일 기준으로 배송이 진행됩니다.
2019년 2월 25일 출간
제품상태
상태 최상 외형 최상 내형 최상
이 상품 최저가
31,990원 다른가격더보기
새 상품
36,000원 [10%↓, 4,000원 할인] 새상품 바로가기
수량추가 수량빼기
안내 :

중고장터에 등록된 판매 상품과 제품의 상태는 개별 오픈마켓 판매자들이 등록, 판매하는 것으로 중개 시스템만을 제공하는
인터넷 교보문고에서는 해당 상품과 내용에 대해 일체 책임을 지지 않습니다.

교보문고 결제시스템을 이용하지 않은 직거래로 인한 피해 발생시, 교보문고는 일체의 책임을 지지 않습니다.

중고책 추천 (판매자 다른 상품)

더보기

판매자 상품 소개

※ 해당 상품은 교보문고에서 제공하는 정보를 활용하여 안내하는 상품으로제품 상태를 반드시 확인하신 후 구입하여주시기 바랍니다.

판매자 배송 정책

  • 토/일, 공휴일을 제외한 영업일 기준으로 배송이 진행됩니다.

더보기

구매후기 목록
NO 구매후기 구매만족도 ID 등록일
28 아주아주 좋습니다아 5점 만점에 5점 tpdl*** 2019.12.14
27 중고상품이어서 사용한 흔적이 있는지 알았는데 그냥 완전 새책이네요? 서점은 전부 재고가 없었는데 배송도 이틀만에 도착해서 완전 좋습니다! 5점 만점에 5점 eved*** 2019.11.19
26 거의 새책급이네요. 5점 만점에 5점 dmswo0*** 2019.11.14
25 좋습니다 책상태도 좋아요 5점 만점에 5점 77ka*** 2019.11.12
24 감솨합니다^^ 고맙습니다~!! 5점 만점에 5점 cmw1*** 2019.11.09

이 책의 시리즈

책 소개

상품구성 목록
상품구성 목록

언리얼 엔진 4의 설치부터 클래스, 메모리 관리, 액터와 컴포넌트, 이벤트와 델리게이트, 입력과 충돌, 클래스와 인터페이스의 통신, 에디터 확장을 다루는 책이다. 또한 유저인터페이스 개발, NPC AI, 머티리얼과 셰이더에 대해서도 알려주며, 추가적으로 도움이 될만한 API 등 전체적인 기능을 소개한다.
한국어판에서는 최신 4.19 버전을 기준으로 모두 업데이트했으며, 필요한 경우에는 현업 개발자들에 의해 다시 쓰였기 때문에 에디터 편집과 확장과 같은 쉽게 찾기 힘든 자료도 일부 포함하고 있다.
언리얼 엔진 4와 C++을 사용해서 체계적으로 게임 개발을 시작하려는 분들에게 필수적인 책이다.

저자소개

저자 : 윌리엄 셰리프
프로그래밍 경력 8년 이상의 C++ 프로그래머다. 게임부터 웹까지 다양한 프로그래밍을 경험했고, 7년 동안 대학교에서 강사로 재직했다. 아이튠즈 스토어에 몇 가지 앱을 출시했다. 이 대표적이다. 교육 과정을 이해하기 쉽게 전달하는 것으로 찬사를 받았다.

저자 : 스테판 화이틀
10년 가까이 개발한 게임 개발자이자 교육자로, 경력 대부분은 언리얼 엔진 사용에 관한 내용을 다뤘다. 커뮤니티에 공헌하거나, 거의 모든 중요한 엔진 버전에 포함되는 기능이나 버그 수정 사항을 공개적으로 배포한다.

역자 : 김제룡
인터넷과 텍스트 게임이 유행이던 1998년 대학생 시절 <나이스 캡짱>이라는 텍스트 머드 게임을 개발했으며, 이를 기점으로 게임 개발에 발을 들였다.
2005년부터 지금까지 엔씨소프트(NCSoft), NHN, 이스트소프트(EstSoft), VK 모바일 등에서 상업적인 게임 개발을 했으며, PC MMORPG <카발 온라인 1>과 <카발 온라인 2> 개발에 참여했다. 모바일 게임에 관심을 가지면서 <아이돌 드림걸즈>, , , <리니지1, 2>, <아이온 IP> 프로젝트 등에 참여했다.
현실 안주보다는 새롭고 도전전인 것을 즐기는 성격으로, 엔씨소프트에서 언리얼 엔진 4를 사용한 네 번째 모바일 MMORPG를 개발 중이다.

역자 : 박인철
학창 시절 C&C(Command & Conquer)를 보고 게임 개발자 꿈을 가졌다. 보드게임, 캐주얼 게임, MMORPG 등을 개발했다. 엔씨소프트에서 <리니지> 개발에 참여했고 현재는 언리얼 엔진 4를 사용한 모바일 MMORPG를 개발 중이다. 하나님을 중심으로 사는 행복한 게임 개발자가 되기를 꿈꾼다.

역자 : 조원일
어린 시절 고가의 386 컴퓨터로 도스(DOS)와 베이직을 시작으로 하이텔 게임 제작 동호회를 들락거리며 게임 개발자를 꿈꿨던 현직 게임 프로그래머다. 인천대 컴퓨터공학과를 졸업해 이스트소프트, 이스트게임즈에 근무하면서 PC MMORPG를 개발했고 현재 엔씨소프트에 재직하면서 모바일 MMORPG를 개발하고 있다. 게임, 만화 제작에 관심이 많으며 최근 라즈베리파이(Raspberry Pi), N 스케일 기차 모형 레이아웃 제작에도 관심이 많다. RPG 깎는 노인이 소원인 아들과 아내를 사랑하는 평범한 회사원이다.

목차

지은이 소개
기술 감수자 소개
옮긴이 소개
옮긴이의 말
들어가며

1장. UE4 개발 툴
__소개
__Visual Studio 설치
__Visual Studio에서 첫 C++ 프로젝트 생성하고 빌드하기
__Visual Studio에서 코드 글꼴과 컬러 변경하기
__확장 - Visual Studio에서 색상 테마 변경
__Visual Studio에서 코드 서식 지정(자동 완성 설정)
__Visual Studio에서 단축키
__Visual Studio에서 확장된 마우스 사용
__UE4 - 설치
__UE4 - 첫 번째 프로젝트
__UE4 - UE_LOG로 로깅
__GitHub의 프로젝트 관리 - 소스 컨트롤
__GitHub의 프로젝트 관리-이슈 트래커
__VisualStudio.com에서 프로젝트 관리 - 프로젝트에서 태스크 관리
__VisualStudio.com의 프로젝트 관리-User Story와 태스크의 생성

2장. 클래스 생성하기
__소개
__UCLASS 만들기-UObject에서 파생하기
__사용자 편집 가능한 UPROPERTY 만들기
__블루프린트에서 UPROPERTY 접근하기
__UPROPERTY 타입으로 UCLASS 작성하기
__커스텀 UCLASS에서 블루프린트 만들기
__UObject 파생 클래스 인스턴스화하기(NewObject)
__UObject 파생 클래스 파괴하기
__USTRUCT 만들기
__UENUM( ) 만들기
__UFUNCTION 만들기

3장. 메모리 관리와 스마트 포인터
__소개
__관리되지 않는 메모리 - malloc( )/free( ) 사용
__관리되지 않는 메모리 - new/delete 사용
__관리되는 메모리 - NewObject 사용
__관리되는 메모리 - 메모리 해제
__관리되는 메모리 - 스마트 포인터(TSharedPtr, TWeakPtr, TUniquePtr)를 사용해
__객체 추적하기
__TUniquePtr를 사용해 객체 추적하기
__언리얼의 가비지 컬렉션 시스템과 UPROPERTY( )
__가비지 컬렉션의 강제 수행
__중단점과 단계적 코드 실행
__버그 찾기와 콜 스택 사용
__프로파일러를 사용해 핫 스팟 식별

4장. 액터와 컴포넌트
__소개
__C++에서 사용자 정의 액터 만들기
__SpawnActor를 이용한 액터 생성
__Destroy와 Timer를 이용한 액터 파괴
__SetLifeSpan을 사용한 지연된 액터의 파괴
__조합을 통한 액터의 기능 구현
__FObjectFinder를 사용해 컴포넌트에 에셋 로딩하기
__상속을 통한 액터의 기능 구현
__계층 구조를 만드는 컴포넌트 붙이기
__사용자 정의 액터 컴포넌트 생성
__사용자 정의 신 컴포넌트 생성
__사용자 정의 프리미티브 컴포넌트 생성
__RPG를 위한 인벤토리 컴포넌트 생성
__궤도 이동 컴포넌트 생성
__유닛들을 스폰하는 빌딩 생성

5장. 이벤트와 델리게이트 처리하기
__가상 함수로 구현된 이벤트 핸들링
__UFUNCTION에 바인딩된 델리게이트 생성
__델리게이트 등록 해제하기
__입력 파라미터를 사용하는 델리게이트 생성
__델리게이트 바인딩을 사용해 페이로드 데이터 전달
__멀티-캐스트 델리게이트 생성
__사용자 정의 이벤트 생성
__Time of Day 핸들러 생성
__1인칭 슈터 게임을 위한 리스폰 Pickup 만들기

6장. 입력과 충돌
__소개
__축 매핑 - FPS 캐릭터에 대한 키보드, 마우스 및 게임 패드 방향 입력
__축 매핑-정규화된 입력
__액션 매핑 - FPS 캐릭터를 위한 단일 버튼 처리
__C++에서 축, 액션 매핑 추가하기
__마우스 UI 입력 처리하기
__UMG 키보드 UI 단축키들
__충돌-Ignore를 사용해 다른 것을 통과하게 해주는 오브젝트
__충돌 - Overlap을 사용한 오브젝트 들어올리기
__충돌 - Block을 사용한 상호 침투 막기

7장. 클래스와 인터페이스 간 통신
__소개
__UInterface 만들기
__UInterface 객체 구현
__네이티브 코드에서 UInterface 구현을 위한 캐스팅
__C++에서 네이티브 UInterface 함수 호출
__다른 UINTERFACE에서 상속받기
__C++에서 UInterface 함수의 재정의
__네이티브 기반 클래스에서 블루프린트로 UInterface 함수 노출시키기
__블루프린트 안에서 UInterface 함수 구현
__블루프린트로 재정의할 수 있는 C++ UInterface 함수 구현 만들기
__C++에서 블루프린트로 정의된 인터페이스 함수 호출
__UInterfaces와 단순하게 상호작용하는 시스템 구현

8장. C++와 언리얼 에디터의 통합
__소개
__클래스나 구조체를 블루프린트 변수로 사용
__블루프린트에서 서브클래싱할 수 있는 클래스 혹은 구조체 만들기
__블루프린트에서 호출할 수 있는 함수 만들기
__블루프린트에서 구현할 수 있는 이벤트 만들기
__멀티-캐스트 델리게이트를 블루프린트에 노출하기
__블루프린트에서 사용할 수 있는 C++ 열거형 만들기
__에디터의 다른 위치에서 클래스 프로퍼티 편집하기
__프로퍼티를 블루프린트 에디터 그래프에서 접근 가능하게 만들기
__에디터로부터 프로퍼티 변경 이벤트에 대한 응답
__Construction 스크립트 네이티브 코드 구현
__새로운 에디터 모듈 만들기
__새 툴바 버튼 만들기
__새 메뉴 엔트리 만들기
__새 에디터 창 만들기
__새 에셋 타입 만들기
__에셋에 대한 사용자 정의 컨텍스트 메뉴 만들기
__새 콘솔 명령어 만들기
__블루프린트에서 새로운 그래프 핀 비주얼라이저 만들기
__사용자 정의 세부 정보 패널을 사용해 타입 검사하기

9장. 유저 인터페이스 - UI와 UMG
__소개
__Canvas를 사용해 그리기
__스크린에 Slate 위젯 추가하기
__UI를 위한 크기가 조절되는 스크린 생성하기
__게임 내에서 UMG 엘리먼트 시트 표시 및 숨기기
__붙이는 함수로 Slate 이벤트 호출하기
__Unreal Motion Graphics에서 데이터 바인딩 사용하기
__Styles로 위젯 외형 조작하기
__사용자 정의 SWidget/UWidget 만들기

10장. NPC 제어를 위한 AI
__소개
__내비게이션 메시 배치
__추적 행동
__캐릭터에 비헤이비어 트리 연결
__태스크 노드 구성
__조건을 위한 데코레이터 사용
__주기적인 서비스 사용하기
__콤퍼짓 노드-셀럭터, 시퀀스, 단순 병렬
__근접 공격자를 위한 AI

11장. 사용자 정의 머티리얼과 셰이더
__소개
__기본 머티리얼을 사용해 색상 수정하기
__머티리얼을 사용해 위치 수정하기
__사용자 지정 노드를 통한 셰이더 코드
__머티리얼 함수
__셰이더 파라미터와 머티리얼 인스턴스
__Glimmer
__나뭇잎과 바람
__시야각에 따른 반사율
__임의성 - 펄린 노이즈
__랜드스케이프 셰이딩

12장. UE4 API로 작업하기
__소개
__Core/Logging API-사용자 정의 로그 카테고리 정의하기
__Core/Logging API - FmessageLog로 메시지들을 메시지 로그에 작성하기
__Core/Math API - FRotator를 사용한 회전
__Core/Math API?FQuat를 이용한 회전
__Core/Math API - 한 오브젝트를 다른 것과 마주보기 위한 FRotationMatrix를 사용한
__회전
__Landscape API - 펄린 노이즈를 사용한 랜드스케이프 생성
__Foliage API - 레벨에 절차적으로 나무 추가하기
__Landscape와 Foliage API - 랜드스케이프와 폴리지 API를 이용한 맵 생성
__GameplayAbilities API - 게임 컨트롤로 액터의 게임 플레이 능력을 작동시키기
__GameplayAbilities API - UAttributeSet으로 스탯 구현하기
__GameplayAbilities API -GameplayEffect로 버프 구현하기
__GameplayTags AP - 액터에 GameplayTags 붙이기
__GmaplayTasks API - GameplayTasks로 일을 일어나게 하기
__HTTP API - 웹 리퀘스트
__HTTP API - 상태바

찾아보기

책 속으로

출판사 서평

★ 이 책에서 다루는 내용 ★ ■ 유지 보수를 줄이도록 재사용 가능한 코드가 포함된 함수 라이브러리 작성(블루프린트) ■ 성능을 향상시키도록 블루프린트를 C++의 저수준 함수로 변경 ■ 기획자의 업무 흐름에 맞춰 복잡한 구현의 세부적인 것을 ...

[출판사서평 더 보기]

★ 이 책에서 다루는 내용 ★

■ 유지 보수를 줄이도록 재사용 가능한 코드가 포함된 함수 라이브러리 작성(블루프린트)
■ 성능을 향상시키도록 블루프린트를 C++의 저수준 함수로 변경
■ 기획자의 업무 흐름에 맞춰 복잡한 구현의 세부적인 것을 단순하게 추상화하는 방법
■ 게임에 하드웨어 통합과 같은 특별한 기능을 추가하기 위해 이미 존재하는 라이브러리를 사용하는 방법
■ 블루프린트와 C++에서 AI 태스크와 비헤이비어 개발
■ UI 요소의 콘텐츠와 외형을 제어하기 위한 데이터 생성

★ 이 책의 대상 독자 ★

게임 디자인 및 C++의 기본을 이해하고 언리얼로 만든 게임에 기본 코드를 통합하려는 게임 개발자를 대상으로 한다. 이 책을 통해 엔진을 확장하거나 레벨을 만들 때, 디자이너가 제어하고 유연하게 사용할 수 있는 시스템과 액터를 구현하려는 프로그래머가 될 수 있을 것이다.

★ 이 책의 구성 ★

1장, ‘UE4 개발 툴’에서는 UE4 게임 개발을 시작하기 위한 기본 레시피와 게임을 만드는 코드를 생성하는 데 사용되는 기본 도구에 대해 설명한다.
2장, ‘클래스 생성하기’에서는 UE4 블루프린트 에디터와 잘 통합되는 C++ 클래스 및 구조체를 만드는 방법에 중점을 둔다. 이 클래스는 UCLASSES라는 일반 C++ 클래스의 상위 버전이다.
3장, ‘메모리 관리와 스마트’에서는 포인터 독자가 세 가지 유형의 포인터를 통해 사용하도록 하며 가비지 컬렉션과 관련된 몇 가지 일반적인 함정을 언급한다. Visual Studio 또는 XCode를 사용해 크래시를 분석하거나 기능이 올바르게 구현됐는지 확인하는 방법을 보여준다.
4장, ‘액터와 컴포넌트’에서는 생성한 사용자 정의 액터와 컴포넌트를 가지고 각각 어떤 목적을 제공하는지, 어떻게 서로 함께 동작하는지를 다루게 된다.
5장, ‘이벤트와 델리게이트 처리하기’에서는 델리게이트, 이벤트와 이벤트 핸들러에 대해 설명하고 자체 구현을 만드는 과정을 안내한다.

★ 옮긴이의 말 ★

언리얼 엔진 4(UE4)를 사용해 대규모 게임을 개발하려면 필수적으로 C++로 개발해야 한다. 공식 매뉴얼의 한글화가 잘 돼 있기는 하지만 거의 블루프린트에 대한 것이고, 실제로 개발에 필요한 내용들은 국내외 할 것 없이 공유가 안 되는 것이 현실이다.
팀에 언리얼 전문가가 있지 않은 이상, 결과를 내기 어렵거나 개발 기간이 오래 걸리고 품질도 좋지 않은 것이 대부분이다. 이때 체계적인 학습을 할 수 있는 서적이 있으면 도움이 될 텐데, 국내에서는 그런 책이 없었다.
출간한 언리얼 관련 원서는 거의 다 읽었었다. 그 가운데, 가장 체계적인 책이 바로 이 책이었다. 세 번째 언리얼 프로젝트를 진행하면서 읽었는데, 이 책을 미리 봤더라면 하는 아쉬움이 남았던 기억이 있다.
새로운 언리얼 엔진 4 프로젝트를 진행하게 됐고 팀원들의 언리얼 사용 기간이 얼마 안 된 상황이었다. 어떻게 하면 언리얼 엔진 4를 효율적으로 빠르게 학습시키고, 결과물을 만들 수 있을까 고민했다. 궁리 끝에 팀원들과 합의해 일과 시간 이후에 장별로 번역을 하고, 서로에게 설명하는 것으로 모임을 진행했다. 결과적으로 개인적으로도 많은 도움이 됐을 뿐만 아니라 팀과 프로젝트 발전에도 많은 기여를 했다. 그리고 앞으로 언리얼 엔진 4로 개발을 해야 하는 많은 프로그래머에게도 도움이 됐으면 좋겠다.

6장, ‘입력과 충돌’에서는 사용자 입력을 C++ 함수에 연결하는 방법과 C++에서 UE4 충돌을 처리하는 방법을 보여준다. 또한 사용자 입력과 충돌과 같은 게임 이벤트의 기본 처리 기능을 제공하므로 디자이너는 블루프린트를 사용해 필요한 경우 재정의할 수 있다.
7장, ‘클래스와 인터페이스 간 통신’에서는 자신만의 UInterfaces를 어떻게 작성하는지 보여주고 클래스 간 연결을 최소화하고 코드를 깨끗하게 유지하는 데 C++ 내에서 이를 활용하는 방법을 알려준다.
8장, ‘C++와 언리얼 에디터 통합하기’에서는 사용자 정의 블루프린트와 애니메이션 노드를 처음부터 생성해 에디터를 사용자 정의하는 방법을 보여준다. 또한 사용자가 만든 유형을 검사하기 위해 사용자 정의 데이터 윈도우와 사용자 정의 디테일 패널을 구현할 것이다.
9장, ‘유저 인터페이스’에서는 UI와 UMG는 플레이어에게 피드백을 표시하는 것이 게임 디자인에서 가장 중요한 요소 중 하나임을 보여준다. 이는 일반적으로 게임 내에서 일종의 HUD 또는 최소 메뉴와 관련된다.
10장, ‘NPC를 제어하기 위한 AI’에서는 약간의 인공지능(AI)로 NPC 캐릭터를 제어하는 방법을 다룬다.
11장, ‘사용자 정의 머티리얼과 셰이더’에서는 UE4 에디터에서 사용되는 사용자 정의 머티리얼과 오디오 그래프 노드를 만드는 것에 대해 이야기한다.
12장, ‘UE4 API로 작업하면서 API’에서는 프로그래머로서 엔진(및 PC)에게 무엇을 해야 하는지에 관한 지시 방법을 설명한다. 각 모듈에는 API가 있다. API를 사용하려면 빌드에서 프로젝트 이름 .Build.cs 파일로 사용할 모든 API를 나열해야 하는 매우 중요한 링크 단계가 있다.

[출판사서평 더 보기 닫기]

책 속 한 문장

회원리뷰

이 책과 함께 구매한 책들

이 책이 속한 분야 베스트

교환/반품안내

※ 상품 설명에 반품/교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다.)

교환/반품안내
반품/교환방법

[판매자 페이지>취소/반품관리>반품요청] 접수
또는 [1:1상담>반품/교환/환불], 고객센터 (1544-1900)

※ 중고도서의 경우 재고가 한정되어 있으므로 교환이 불가할 수 있으며, 해당 상품의 경우 상품에 대한 책임은 판매자에게 있으며 교환/반품 접수 전에 반드시 판매자와 사전 협의를 하여주시기 바랍니다.

반품/교환가능 기간

변심반품의 경우 수령 후 7일 이내, 상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내

※ 중고도서의 경우 판매자와 사전의 협의하여주신 후 교환/반품 접수가 가능합니다.

반품/교환비용 변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
반품/교환 불가 사유

소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우(단지 확인을 위한 포장 훼손은 제외)

소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우 예) 화장품, 식품, 가전제품 등

복제가 가능한 상품 등의 포장을 훼손한 경우 예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집

소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우 ((1)해외주문도서)

디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우

시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우

전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우

1) 해외주문도서 : 이용자의 요청에 의한 개인주문상품이므로 단순 변심 및 착오로 인한 취소/교환/반품 시 해외주문 반품/취소 수수료 고객 부담 (해외주문 반품/취소 수수료는 판매정가의 20%를 적용

2) 중고도서 : 반품/교환접수없이 반송하거나 우편으로 접수되어 상품 확인이 어려운 경우

소비자 피해보상
환불지연에 따른 배상

- 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁해결 기준 (공정거래위원회 고시)에 준하여 처리됨

- 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리함

판매자
책책북북
판매등급
특급셀러
판매자구분
일반
구매만족도
5점 만점에 5점
평균 출고일 안내
2일 이내
품절 통보율 안내
24%

바로가기

최근 본 상품