Nov 032009
 

간략한 shadow volume 소개와 여러 shadow mapping 알고리즘을 소개한 아티클이다. 프로그래머뿐만 아니라 게임에 관심이 있는 사람들도 읽을 수 있도록 쉽게 써서 그림자를 구현하기 전에 살짝 읽기에 좋은 글이다.

용어 정리가 조금 아쉽다. 어떤 말이고 하면 깊이 그림자 기법으로 PSM, LiSPSM 등을 소개하는데, PSM과 LiSPSM은 어떻게 shadow map texture를 그리는지에 대한 알고리즘이다. 사실 그림자 back-projection 신경 안 쓰고 셸프 섀도(self shadow)도 관심 없다면 depth map을 안 쓰고 이런 알고리즘대로 그림자 컬러 값을 그리고 지형에 매핑해도 된다. 하긴 요즘 shadow mapping이라 하면 저장한 깊이 값을 비교해서 그림자인지 아닌지 가리는 depth map test를 사용하는 걸로 고정되어 있어서 젠지씨보고 뭐라 하기도 그렇다. 사실 논문 자체 구현도 depth map을 사용하고 있다.

Continue reading »

by-nc-sa
Sep 282009
 

노멀 매핑(범프 매핑(bump mapping)과 노멀 매핑(normal mapping)은 같은 뜻으로 쓰인다. 좀 더 익숙한 노멀 매핑을 사용.)이 가진 가장 큰 단점은 “니가 어디에서 바라보든지 난 상관하지 않아.”이다. 즉, 시야 정보 없이 노멀맵에 저장된 normal로 per-pixel lighting을 한다. 이렇다 보니 비스듬히 보거나 가까이서 보게 되면 평면에 제발 속아달라고 정성스럽게 음영을 표현한 그대로 보이게 된다.

Continue reading »

by-nc-sa
Sep 262009
 

텍스쳐 매핑이 없고 라이팅이 폴리곤 단위로 플랫 셰이딩 시대인 1980년대부터 “이제까지 힘들었지? 내가 반투명 오브젝트를 알아서 처리할께. 소팅하지 말고 넘겨”라는 A-buffer가 들어가니 마니하는 다이렉트X 11 시대까지 다뤘다.(DirectX 11 RTM이 나왔는데, A-buffer 얘기가 없다. 아무래도 논의만 되고 들어가지는 않은 것 같다. 아 아쉬비.)

Continue reading »

by-nc-sa