최대 성능을 위한 유니티 5 게임 프로그래밍 최적화

최대 성능을 위한 유니티 5 게임 프로그래밍 최적화

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

크리스디킨슨

저자크리스디킨슨은어릴적부터과학,수학,비디오게임에흥미가있었다.2005년리즈대학교UniverstyofLeeds에서전자물리학박사학위를획득했고,졸업즉시과학연구를위해실리콘밸리로떠났다.하지만연구가적성에맞지않아소프트웨어분야로이직을했다.지난10여년간소프트웨어개발자로경력을쌓아시니어개발자가됐다.그는주로소프트웨어자동화와내부테스트툴을개발했지만비디오게임에대한열정은결코식지않았고,2010년『게임과시뮬레이션프로그래밍』논문으로학사학위를받으며3D그래픽과게임개발에대한지식을쌓았다.저서로는게임물리의기초를집필한『LearningGamePhysicswithBulletPhysicsandOpenGL』(Packt,2013)이있으며,소프트웨어개발을하는틈틈이독립게임프로젝트도진행하고있다.

목차

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

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

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

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

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

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

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

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

출판사 서평

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


게임을개발하다보면때로는적절한타협이필요하다.제한된자원과시간으로가장빠르게,효과적으로최적화하는길은언제나분명히있다.이말인즉슨,타협할수있는‘선’이반드시있다는것이다.적절한선을정하지않으면지극히작고알아채기조차어려운사소한문제에시간을허비할수있다.이선을결정하는데가장좋은질문은“사용자가이문제를인식할수있는가”다.만약이질문에대한대답이“아니요”라면성능개선은필요가없다.문제가될지안될지알지못한채문제가될거라는의심만으로코드를수정하는것은한정된개발자원을쓸데없이낭비하는것에불과하다.
『최대성능을위한유니티5게임프로그래밍최적화』는프로그래밍을최적화하기위한툴과지식,기술뿐아니라어디에서기인한문제인지원인을발견하고해결하는것까지를다룬다.낮은초당프레임수(fps)로인한화면끊김,입력지연,긴로딩시간,그래픽깨짐,지나치게많은배터리소모모두최적화와관련이있다.이러한문제는CPU,GPU,RAM과같은하드웨어뿐아니라물리엔진을비롯한프로그램의하부시스템,유니티자체의결함에의해서도발생할수있다.성능최적화란CPU,GPU,RAM과같은자원이적재적소에분배되고병목현상없이우선순위에따라작동하게만드는것이다.최적화는같은하드웨어에서더많은표현과처리를가능하게할뿐아니라더흥미롭고다채로운게임을개발하게해준다.게임출시이후맞닥뜨리는여러문제를개선하고최적화하는데이책은분명좋은지침이될것이다.

이책의내용
1장성능문제를발견하기에서는유니티프로파일러를사용해앱을분석하고병목현상을찾는문제분석방법을소개한다.
2장스크립팅전략에서는유니티C#의대표적인예제들과오버헤드최소화,객체간의상호작용개선등을다룬다.
3장배칭의유용성에서는유니티의정적배칭과동적시스템을설명하고렌더링시스템의부하를줄이는법을설명한다.
4장아트자원을활용하라에서는아트자원들속에있는기술과함께불러오기,압축,인코딩과정에서빠지기쉬운함정을피하는법을배운다.
5장더빠른물리에서는2D와3D유니티엔진의물리시스템을상세히소개하고물리객체들을적절히구성해성능을높이는비법을소개한다.
6장역동적인그래픽에서는렌더링시스템의깊은곳까지탐험한다.CPU,GPU에의한렌더링병목현상을개선하는방법과모바일기기를위한특별한기술을배운다.
7장메모리관리의주인에서는‘모노프레임워크’라는유니티엔진의내부를살펴본다.메모리가어떻게관리되는지,프로그램을힙할당과‘실시간폐공간회수’로부터보호하는법을소개한다.
8장전략적기술과팁에서는작업속도와화면관리에도움이되는팁을알려준다.

대상독자
-중급및고급유니티개발자
-원인모를병목현상때문에골머리썩는유니티개발자
-유니티게임엔진을속속들이알고싶은게임개발자