GI와 AO에 대한 개념 정리좀 도와주세요.

by 카이트모션 posted Apr 23, 2010 Replies 10
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 게시글 수정 내역 댓글로 가기 인쇄
Extra Form

 그냥 막연히 GI와 AO에 대해 생각하고 있었는데 정확히 둘의 차이점과 사용법에 관해 정리를 하고 싶어서 질문드립니다.

우선 제가 아는 한도내에서는

GI는 한씬에서 다른 오브젝트간의 빛의 상호 작용으로 알고 있습니다. 서로 빛을 내기에 서로간에 영향을 주는걸 계산하는 걸로 알고 있고

AO는 빛에 닿는 면들의 양에 의해 정해진다는 것입니다.

잘못알고 있는건지....

그리고 대부분들 GI만 키고 랜더링을 거시는 지요? 물론 상황에 따라 다르겠지만..

참고로 전 모션그래픽을 주로 합니다.

Who's 카이트모션

?

카이트모션

  • profile
    에이제이 2010.04.23 16:27
    정확하진 않지만 단순하게 몇자 적자면

    GI는 말그대로 광역적인?조명이랄까요.
    기본 렌더러는 물체에 조명이 닿고 거기에 해당되는 그림자만 생성되는 1차적인 계산만 되는데 비해
    GI 렌더러는 물체에 조명이 닿고 거기에 해당되는 그림자가 생성 + 물체에 닿은 빛이 반사되어
    다른물체에도 영향을 주는 등의 난반사 등등...2,3차적인 계산을 하게되 실제 세계와 유사한 느낌을 만들어 줍니다.

    AO는 빛과 그림자의 계산과는 별개로 물체와 물체가 맞닿는, 물체끼리 가까워질때 해당부분이 어두워지는것을 구현해주는 것이구요.
    애니메이션이나 모션쪽에서는 시간관계상 GI가 아닌 기본렌더러로 멀티패스 렌더링 한후에
    AO만 따로 패스를 뽑아내서 합성하는 방법또한 많이 쓰더군요.

    둘다 실제세계의 느낌을 위해서 사용할 필요가 있지만 쓰고 안쓰고는 개인의 표현문제이구요,
    모션그래픽쪽이시라면 두가지다 쓸일이 많이는 없을듯 합니다 ㅎ
  • profile
    시로코 2010.04.23 18:02
    Ambient Occlusion을 Accesibility Map이라고도 합니다.  빛이 얼마나 접촉가능한가하는 것이죠.
    튀어나온곳은 밝고 들어간 곳은 어둡게 됩니다.   물체 밖의 모든 방향으로 부터 빛이 들어온다고 가정했을 때의 모습이죠.
    조명으로 이걸 구현할 경우에는 물체를 감싸는 공 모양의 발광체에서 전방향으로 빛을 쏴서 만들수가 있습니다.
    셰이더에서 계산할 경우에는 반대로 물체표면으로 부터 ray를 쏴서 ray가 일정거리이동후 폴리곤에 닿았는지의 여부로 판정을 합니다.

    그러나 실제 세상에서는 빛의 각도에 따라서 튀어나온 곳이라도 어두울 수 있고 들어간 곳이 밝을 수가 있죠.
    이것은 직접조명과 반사광을 모두 고려해서 GI로서 계산해서 만들어 줍니다.   
    AO는 "밝기의 가능성" GI는 "실제 밝기"가 됩니다.
  • ?
    초사 2010.04.23 18:19
    AO는 과거 GI가 매우 느리고 지글거리던 시절에 GI 느낌이 나는 대안으로 나온 꽁수로 볼 수 있습니다. 각 지점에서 광선을 전 방향으로 날려서 가까이서 걸리는게 많으면 어둡고, 걸리는게 없으면 밝다고 계산합니다. 그래서 결과는 구석진 곳은 어두워집니다.

    AO가 GI의 대안이기 때문에 동시에 사용하는건 아이러니하지만 실제 같이 사용되는 경우도 많습니다.

    게임에서는 주로 AO로 계산해서 그 결과를 베이크(맵핑화)시켜 버립니다. 좀더 고급스럽고 묵직한 표현이 되죠. 

    건축에서는 아직도 GI가 그늘진 곳에서 정확한 밝기를 잘 잡아주지 못하기 때문에 GI와 함께 보조용으로 같이 사용되기도 합니다. 

    AO의 단점은 매 프레임 계산을 하다보면 오히려 GI보다 느려질 수도 있다는 것과 샘플값이 낮을 경우 영상에 노이즈가 미세하게 자글거리는 현상이 있을 수 있습니다. 제 생각엔 모션에서 AO를 쓰면 매 프레임 계산이 느려지므로 게임처럼 AO를 베이크시켜 맵핑시키는게 가장 좋은 방법이 아닐까 생각합니다.
  • profile
    에이제이 2010.04.23 18:33
    C4D에서..AO를 베이크를 할때 안티얼라이싱이 거의 안먹히는 느낌으로 계단현상이 생기던데..
    뭔가 방법이 없을까요? ㅎㅎㅎㅎ;
  • ?
    박씨 2010.04.23 19:05
    ao가 샘플이 적어서 안티알리아싱이 적게 되어 맵으로 옯겨질때 모아레현상이 생긴걸겁니다(또는 텍스쳐 해상도가 작거나).
    포토샵으로 블러처리 하시거나 맵 필터에서 블러링을 한번 해보십시오. ^^
  • ?
    엘라스틱마인드 2010.04.24 13:59
    http://en.wikipedia.org/wiki/Global_illumination
    http://en.wikipedia.org/wiki/Ambient_occlusion

    천천히 읽어 보세요.   IBR ,PBR (image based rendering), (point based rendering)
    이 2가지도 같이 보시면 좋아요.
  • ?
    열띠미 2010.04.27 19:29
    좋은 정보 감사드려요
  • ?
    성은 2010.07.14 10:38
    유용하게 보고 갑니다
  • ?
    아아가나 2011.02.25 15:53
    배워갑니당
  • ?
    디제스트제이 2011.06.13 03:27
    좋은거 배워갑니다^^