본문 바로가기

Library/Computer Graphics

Stanford Bunny / Happy Buddha / Dragon

Stanford Bunny, Only wireframe, 69451 faces





Stanford Happy Buddha, Only wireframe, 1087716 faces







Standford Dragon, Only wireframe, 1132830 faces






이들 파일들은 스탠포드 CG 연구실에서 배포하는 ply 파일을 읽은 것이며, OpenGL을 사용하여 렌더링 했다. 드래곤과 붓다는 상대적으로 폴리곤이 많은 편이라, 쉐이딩을 적용하지 않으면 제대로 모습을 알아보기 힘들다. 쉐이딩을 적용하지 않은 와이어프레임만으로는 대단히 허전해 보인다. 위의 ply 파일을 구하려면, 아래의 스탠포드 CG 연구실에 대한 링크를 참조하라.

모델링 파일에서 데이터를 읽어들일 때 비디오 메모리에 페이스를 생성하지 않는다면, 힙을 할당 받아 페이스를 생성하고 이것을 비디오 메모리로 복사해야 한다. 만약, 여기에 최적화된 메모리 할당기를 가지고 있다면 엄청난 성능 향상을 이끌어 낼 수 있다. 특히, 위와 같이 고정적인 크기의 메모리를 연속적으로 할당해야 하는 경우, 메모리 풀을 구현한 할당기는 대단히 효과적이다.

그러나, 이미 응용 프로그램들이 사용하는 힙에 대해 메모리 풀을 잘 구현하고 있는 운영체제를 사용하고 있다면, 실제 상황에서는 큰 효과는 없을 것이다. 예를 들어, 윈도우 비스타 이상에서는 LFH(Low Fragmented Heap)를 적용하고 있기 때문에, 메모리 할당기를 직접 작성하는 수고에 비해 의미있는 성능 향상을 얻기 힘들다.


Reference
http://graphics.stanford.edu/data/3Dscanrep/