서브메뉴

본문

최대 성능을 위한 유니티 5 게임 프로그래밍 최적화
최대 성능을 위한 유니티 5 게임 프로그래밍 최적화
저자 : 크리스 디킨슨
출판사 : 한빛미디어
출판년 : 2017
ISBN : 9788968488580

책소개


뚝뚝 끊기는 게임의 원인 분석부터 해결까지
유니티 개발자라면 알아야 할 성능 최적화 기법

게임을 개발하다 보면 때로는 적절한 타협이 필요하다. 제한된 자원과 시간으로 가장 빠르게, 효과적으로 최적화하는 길은 언제나 분명히 있다. 이 말인즉슨, 타협할 수 있는 ‘선’이 반드시 있다는 것이다. 적절한 선을 정하지 않으면 지극히 작고 알아채기조차 어려운 사소한 문제에 시간을 허비할 수 있다. 이 선을 결정하는 데 가장 좋은 질문은 “사용자가 이 문제를 인식할 수 있는가”다. 만약 이 질문에 대한 대답이 “아니요”라면 성능 개선은 필요가 없다. 문제가 될지 안 될지 알지 못한 채 문제가 될 거라는 의심만으로 코드를 수정하는 것은 한정된 개발 자원을 쓸데없이 낭비하는 것에 불과하다.

『최대 성능을 위한 유니티 5 게임 프로그래밍 최적화』는 프로그래밍을 최적화하기 위한 툴과 지식, 기술뿐 아니라 어디에서 기인한 문제인지 원인을 발견하고 해결하는 것까지를 다룬다. 낮은 초당 프레임 수(fps)로 인한 화면 끊김, 입력 지연, 긴 로딩 시간, 그래픽 깨짐, 지나치게 많은 배터리 소모 모두 최적화와 관련이 있다. 이러한 문제는 CPU, GPU, RAM과 같은 하드웨어뿐 아니라 물리 엔진을 비롯한 프로그램의 하부 시스템, 유니티 자체의 결함에 의해서도 발생할 수 있다. 성능 최적화란 CPU, GPU, RAM과 같은 자원이 적재적소에 분배되고 병목현상 없이 우선순위에 따라 작동하게 만드는 것이다. 최적화는 같은 하드웨어에서 더 많은 표현과 처리를 가능하게 할 뿐 아니라 더 흥미롭고 다채로운 게임을 개발하게 해준다. 게임 출시 이후 맞닥뜨리는 여러 문제를 개선하고 최적화하는 데 이 책은 분명 좋은 지침이 될 것이다.

목차


chapter 1 성능 문제 발견하기
_1.1 유니티 프로파일러
_1.2 성능 분석을 잘 하는 법
_1.3 코드 삽입을 통한 목표 프로파일링
_1.4 프로파일링한 자료를 저장하고 불러오는 방법
_1.5 프로파일링과 분석에 대한 마지막 당부
_1.6 요약

chapter 2 스크립트 전략
_2.1 컴포넌트 참조 캐시
_2.2 컴포넌트를 가장 빠르게 불러오는 방법
_2.3 빈 호출 함수 줄이기
_2.4 실행 중에 Find( )와 SendMessage( ) 함수 피하기
_2.5 사용하지 않는 스크립트와 객체 비활성 하기
_2.6 거리 대신 거리 제곱 사용하기
_2.7 문자열 속성 검색하지 않기
_2.8 업데이트, 코루틴, 반복 호출
_2.9 트랜스폼 바꿀 때 캐싱 고려하기
_2.10 더 빠른 게임 오브젝트 빈 참조 확인
_2.11 요약

chapter 3 배칭의 유용성
_3.1 드로우 콜
_3.2 재질과 셰이더
_3.3 동적 배칭
_3.4 정적 배칭
_3.5 요약

chapter 4 당신의 아트 자원을 활용하라
_4.1 오디오
_4.2 텍스처 파일
_4.3 메시와 애니메이션 파일들
_4.4 요약

chapter 5 더 빠른 물리
_5.1 물리 엔진의 내부
_5.2 물리 성능 최적화
_5.3 요약

chapter 6 역동적인 그래픽
_6.1 렌더링 문제 프로파일링 하기
_6.2 프론트엔드 병목현상
_6.3 백엔드 병목현상
_6.4 광원과 그림자
_6.5 모바일을 위한 최적화
_6.6 요약

chapter 7 메모리 관리의 주인
_7.1 모노 플랫폼
_7.2 메모리 사용 최적화
_7.3 Prefab 풀링
_7.4 유니티와 모노의 미래
_7.5 요약

chapter 8 전략적 기술과 팁
_8.1 에디터 단축키 팁
_8.2 에디터 인터페이스 팁들
_8.3 스크립팅 팁
_8.4 에디터/메뉴 개인화 팁
_8.5 외부 팁
_8.6 요약

QuickMenu