Clipmap 논문 요약

1,218 views
966 views

Published on

발표자료가 작성된 년도가 2010년 입니다. 참고해주세요.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,218
On SlideShare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
1
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Clipmap 논문 요약

  1. 1. Battlefield: Bad Company 2 (2010, EA Digital Illusions CE)
  2. 2. 논문소개• 저자 – Christopher C. Tanner, Christopher J. Migdal, and Michael T. Jones• Silicon Graphics Computer Systems(SGI) paper from 1998
  3. 3. 주요내용• 한정된 메모리 공간 내에서 방대한 크기의 지형 텍스처를 관리하기 위한 방법 – 지형 텍스처: Height map, Normal map, etc.• Mipmap의 변형 기술• 실시간 지형처리 시스템에 쓸 수 있는 충 분한 속도를 보장하는 것이 목표
  4. 4. 기존방식• 거대한 지형을 일정한 크기로 구역을 나눠 해 당되는 부분만 HW에서 처리• 단점 – 전체 지형을 일정 크기의 구역으로 나눠줘야 함 – 각 구역간 이동시 집중적인 부하를 동반 • 구역과 구역 사이의 경계부분에 로딩이 집중 – 구역간의 데이터 연계성이 떨어짐 • 구역의 범위를 넘는 영역에 대한 별도 처리를 요구
  5. 5. Mipmap 다양한 크기의 텍스처를 준비하고 맵핑되고자 하는 폴리곤에 가장 근사한 크기를 갖는 텍스처 선택Mipmapping was invented by Lance Williams in 1983 and is described in his paper Pyramidal parametrics.
  6. 6. Mipmap 다양한 크기의 텍스처를 준비하고 맵핑되고자 하는 폴리곤에 가장 근사한 크기를 갖는 텍스처 선택Mipmapping was invented by Lance Williams in 1983 and is described in his paper Pyramidal parametrics.
  7. 7. Clipmap
  8. 8. Clipmap
  9. 9. Clipmap
  10. 10. Clipmap ClipSize
  11. 11. Clipmap
  12. 12. Clipmap 시점의 위치
  13. 13. 저장공간의 효율성• 일반적인 Mipmap에 비해 용량적인 이득• 메모리 효율성 성능 비교표 ※ 16-bit texels 사용
  14. 14. 저장공간의 효율성• 일반적인 Mipmap에 비해 용량적인 이득 이 크기가 생각보다 작지 않음• 메모리 효율성 성능 비교표 ※ 16-bit texels 사용
  15. 15. 저장공간의 효율성• 일반적인 Mipmap에 비해 용량적인 이득 이 크기가 생각보다 작지 않음• 메모리 효율성 성능 비교표 ※ 16-bit texels 사용
  16. 16. 저장공간의 효율성• 일반적인 Mipmap에 비해 용량적인 이득 이 크기가 생각보다 작지 않음• 메모리 효율성 성능 비교표 !!! ※ 16-bit texels 사용
  17. 17. 구현시 고려해야 할 것들• Clipmap Cache Update – Toroidal Addressing• Rendering with Clipmaps• Virtual Clipmap• Dynamic Clipmap Management
  18. 18. Clipmap Cache Update• 시간에 따라 시점의 위치는 이동 – Cache 안의 Texel 정보는 업데이트가 요구됨 – 업데이트 영역을 줄이는 것이 속도향상에 이 득• Toroidal Addressing – 업데이트시 이전 영역과 동일한 부분은 제외 – 일반적인 Image Processing에 활용되는 방식
  19. 19. Toroidal Addressing
  20. 20. Toroidal AddressingClipCenterFrom (s/2, t/2)
  21. 21. Toroidal AddressingClipCenter ClipCenterFrom (s/2, t/2) To (s/2+d, t/s+d)
  22. 22. Toroidal Addressing
  23. 23. Toroidal Addressing
  24. 24. Rendering with Clipmaps• 렌더링될 Pixel의 S, T 좌표를 결정• LOD가 Clipmap Pyramid에 있는지, Clipmap Stack에 있는지 계산 – 일반적인 Mipmap에 사용되는 과정을 통해 계산 – 논문의 경우, 경계면에 있을 경우에는 Clipmap Pyramid에 우선순위• 앞서 결정된 S, T 좌표를 이용해 LOD를 선택
  25. 25. Rendering with Clipmaps• 렌더링될 Pixel의 S, T 좌표를 결정• LOD가 Clipmap Pyramid에 있는지, Clipmap Stack에 있는지 계산 – 일반적인 Mipmap에 사용되는 과정을 통해 계산 – 논문의 경우, 경계면에 있을 경우에는 Clipmap Pyramid에 우선순위• 앞서 결정된 S, T 좌표를 이용해 LOD를 선
  26. 26. Rendering with Clipmaps
  27. 27. Rendering with Clipmaps (Scenter, Tcenter)
  28. 28. Rendering with Clipmaps (s, t) (Scenter, Tcenter)
  29. 29. Rendering with Clipmaps (s, t) (Scenter, Tcenter) (Sdist, Tdist)
  30. 30. Rendering with Clipmaps
  31. 31. Rendering with Clipmaps• S, T를 텍스처 좌표로 바꾸고, 해당 Level의 시작위치 및 Cache상의 주소값을 계산
  32. 32. Virtual Clipmap• 컴퓨터가 가지는 Numerical Range 및 Precision 문제에 대한 고려 – 226에 해당하는 텍스처 크기를 지원하기 위해 필요한 27-level은 구현이 어려움• 따라서 Clipmap의 전체를 사용하지 않고 그 범위를 줄여서 사용 – 27-level을 15-level 수준으로 줄여서 사용
  33. 33. Virtual Clipmap
  34. 34. Virtual Clipmap• Stack Level  Stack Level – 주소값 수정이 필요 없음• Stack Leve  Pyramid Level – Center Texel, 필요로 하는 텍스처 크기를 이용• Pyramid Level  Pyramid Level – Center Texel, 필요로 하는 텍스처 크기, 해당 Level 실제 텍스처 크기를 이용
  35. 35. Dynamic Clipmap Management• 시점의 이동에 따른 로딩과정의 부하를 줄이 기 위한 방법• 목표 – 디스크 데이터 버퍼링시 시스템 메모리를 효과적 으로 사용 – 각기 다른 속도의 디스크 장치들에 저장된 텍스처 이미지를 효율적으로 관리 – Clipmap의 업데이트에 따른 로딩을 자동화 – 손쉽게 사용할 수 있도록 다양한 기능들을 통합
  36. 36. Tiled Main-Memory Image Cache
  37. 37. Tiled Main-Memory Image Cache2차 캐시에는 각각의 Mipmap을 타일배열로 저장.디스크 최대 처리량에 근접하게 지정.
  38. 38. Visual Effect of Load Control
  39. 39. 구현된 예시 (제가 짠 건 아니고…)
  40. 40. 구현된 예시 (제가 짠 건 아니고…)
  41. 41. 결론• 광대한 크기의 지형 텍스처에 대한 제한에 서 해방• Mipmap의 기본적인 효과와 더불어 보다 효율적인 자원관리가 가능
  42. 42. 참고자료• Papers – Clipmap: A Virtual Mipmap – Clipmaps – White Paper by nvidia• Books – Terrain Rendering Using GPU-Based Geometry Clipmaps at GPU Gems 2• Sites – Mipmap at Wikipedia – Battlefield: Bad Company 2 at Wikipedia

×