혁신적인 구현을 위한 Cisco VDI 솔루션 · VDI 적용의 가속화 2014년까지7000만대적용예상 기업데스크탑의15%) Windows 7으로의 마이그레이션 24개월
10강최적화 가속화
Transcript of 10강최적화 가속화
10 강 최적화 / 가속화
선행학습 : 렌더링 프로세스
렌더링이란 무엇인가 ?
그래픽 카드에서 렌더링이 되는 과정에 대해 배워 보자
과정을 외울 것 까지는 없고 , 용어와 과정 , 개념을 이해하도록 하자
아 , 용어는 외워야지 . 용어는 유용하다 .
Render
미국 · 영국 [|rend (r)] ə
1. ( 어떤 상태가 되게 ) 만들다
출처 : 네이버 어학사전
렌더링 프로세스 렌더링 파이프라인 / 아키텍쳐
정점 데이터 / 삼각형 분할 정점 데이터 / 삼각형 분할
정점쉐이더 (Vertex Shader)
변환 (Transform) Local World Camera Projection ( 투영 )
정점쉐이더 (Vertex Shader)
변환 (Transform) Local World Camera Projection ( 투영 )
+ 추가적인 Vertex shader 연산 가능
렌더링 프로세스 렌더링 파이프라인
클리핑 / 후면선별 / 레스터라이징
Clipping Back face Culling Rasterizing
렌더링 프로세스 렌더링 파이프라인
알파테스트 / 깊이테스트
스텐실 테스트 / 포그 / 알파블렌딩
http://game.dongguk.ac.kr/new/members/cke/class/2006-2/cgp/Part2_chap8.pdf
스텐실 테스트 / 포그 / 알파블렌딩
렌더링 프로세스 렌더링 파이프라인
2 부 . 최적화와 가속화
최적화 최적화란 ? : 쓸데없는 낭비를 줄인다 최적화의 방법은 ? 최적화를 하면 좋은 점과 나쁜 점은 ?
하드웨어
http://blog.naver.com/xmgortk66/110017163160
http://hydramist.net/blog/hardware-old-and-new/
http://www.diytrade.com/china/4/products/2877282/graphic_card.html
http://www.alexrruiz.com/
http://www.myce.com/news/hdd-evolution-may-force-windows-xp-retirement-27042/
하드웨어 CPU GPU
물리 메모리 그래픽 메모리 하드 디스크
BUS 병목 현상
BUSCPU
Hard Disk
Memory
Graphic CardGPU
Memory
최적화
http://developer.nvidia.com/docs/IO/8230/BatchBatchBatch.pdf
타겟 하드웨어 결정 게임 특징을 고려한 공간관리 기법 결정 파트별 오브젝트 / 폴리곤 / 용량 배분 파트별 사용량을 즉각 카운팅 가능하게 해주는 도구 제작 후 배포 이 모든 것들을 프로그램 &3D 디자이너들에게 스파르타 교육 http://grayogre.egloos.com/
그래픽이 할 수 있는 최적화
그래픽이 할 수 있는 일반적인 최적화: 줄여라 줄여라 줄여라
DP Call 을 줄여라 !!! = DrawPrimitive( ) / 드로우 콜 ? 오브젝트 개수를 줄여라 텍스쳐 개수를 줄이거나 합쳐라
텍스쳐 사이즈를 줄여라 Bone 을 줄여라 폴리곤을 줄여라
최적화 / 가속화
가속화 가속화란 ? : 더욱 빨리 돌아가게 만든다 . 가속화의 방법은 ? 가속화를 하면 좋은 점과 나쁜 점은 ?
가속화 기법 LOD / 빌보드 공간 자료 구조 선별 기법
가속화 LOD (Level of Detail)
오브젝트 LOD Bone LOD Shader LOD Static LOD / 지형 LOD Update LOD
빌보드 (Billboard) ( 굳이 따지자면 ) 가속화 기법은 아님
가속화 LOD (Level of Detail)
오브젝트 LOD
http://www.opensg.org/wiki/Tutorial/OpenSG2/NodeCores
가속화 LOD (Level of Detail)
오브젝트 LOD
http://blenderartists.org/forum/showthread.php?t=117868
가속화 가속화 기법
LOD (Level of Detail) 오브젝트 LOD
가속화 LOD (Level of Detail)
Bone LOD
http://udn.epicgames.com/Three/CreatingAnimations.html
가속화 LOD (Level of Detail)
Bone LOD
가속화 LOD (Level of Detail)
Shader LOD
적절한 예는 아니지만…
가속화 LOD (Level of Detail)
Shader LOD
http://artmouse.egloos.com/3642745#
가속화 LOD (Level of Detail)
Static LOD / 지형 LOD
최적화 / 가속화 LOD (Level of Detail)
Update LOD 업데이트를 하지 않음 . 프레임을 저하시키는 느낌
가속화 빌보드 (Billboard)
엄밀히 따져서 가속화 기법은 아님
가속화 빌보드 (Billboard)
엄밀히 따져서 가속화 기법은 아님
http://www.cgarchitect.com/news/Reviews/Review011_1.asp
가속화 빌보드 (Billboard)
가속화 기법으로 사용될 수도 있음
http://vegetation.icandy.dk/
최적화 / 가속화 빌보드 (Billboard)
가속화 기법은 아님
http://ps3media.ign.com/ps3/image/article/614/614786/vision-gran-turismo-20050516072907456.jpg
최적화 / 가속화 빌보드 (Billboard)
가속화 기법은 아님
http://systemlink.gamersguidetolife.com/2010/09/loch-ness-monster-invades-gran-turismo.html
최적화 / 가속화 빌보드 (Billboard)
가속화 기법은 아님
http://www.ingame.de/files/2010/08/gran-turismo-5-rome-6.jpg
최적화 / 가속화 빌보드 (Billboard)
가속화 기법은 아님
http://www.ingame.de/files/2010/08/gran-turismo-5-rome-6.jpg
가속화 기법 LOD / 빌보드
공간 자료 구조 선별 기법
가속화 공간 자료 구조
BVH ( 바운딩 볼륨 계층구조 : Bounding Volume Hierarchies) 바운딩 박스
BSP Tree ( 이진 공간 분할 처리 : Binary space par-titioning tree) 쿼드트리 옥트리
가속화 BVH ( 바운딩 볼륨 계층구조 : Bounding Volume Hierar-
chies) 바운딩 박스
마우스 피킹 이동충돌 카메라 충돌 렌더링
가속화 BVH ( 바운딩 볼륨 계층구조 : Bounding Volume Hierarchies)
바운딩 박스 마우스 피킹 이동충돌 카메라 충돌 렌더링
가속화 BSP Tree ( 이진 공간 분할 처리 : Binary space
partitioning tree) 쿼드트리 옥트리
가속화 BSP Tree ( 이진 공간 분할 처리 : Binary space
partitioning tree) 쿼드트리 옥트리
가속화 기법 LOD / 빌보드 공간 자료 구조
선별 기법
가속화 선별 기법
Culling Frustum Culling ( 시각 절두체 ) Backface Culling ( 후면 ) Occlusion Culling ( 차폐 ) Hierarchical View Frustum Culling ( 계층 ) Potal
Clipping
가속화 Culling
Frustum Culling ( 시각 절두체 ) Backface Culling ( 후면 ) Occlusion Culling ( 차폐 )
http://techpubs.sgi.com/library/tpl/cgi-bin/getdoc.cgi?coll=0650&db=bks&fname=/SGI_Developer/Optimizer_PG/ch05.html
가속화 Culling
Frustum Culling ( 시각 절두체 ) Backface Culling ( 후면 ) Occlusion Culling ( 차폐 )
http://vr.kaist.ac.kr/_r011.htm
최적화 / 가속화 Culling
Frustum Culling ( 시각 절두체 )
Backface Culling ( 후면 )
Occlusion Culling ( 차폐 )
Hierarchical View Frustum Culling ( 계층 )
Potal
최적화 / 가속화 Clipping
진짜로 자른다 !