Wednesday, June 13, 2012

Unreal 등과 같은 게임엔진 등을 렌더러 대신 사용할 수 있을까?

http://www.chaosgroup.com/forums/vbulletin/showthread.php?68838-Unreal-4&p=553151#post553151

최근 E3 2012 등에서 소개된 유명 게임엔진 영상을 본 사용자가 “쟤네는 어떻게 저렇게 GI를 표현할 수 있지?” 라는 질문에 Vlado씨가 한 답변이 재미납니다.

There are techniques like virtual light sources, volume light fields, reflection shadow maps etc. that help with that. Since your next question might be "why don't you put this in V-Ray", the answer is - these techniques have various drawbacks as well, among them:
= Precalculation - while the final result is rendered in real time, some preprocessing might be required for the scene, which may be quite time-consuming;
= Limited precision - typically you only get general GI solutions which tend to be somewhat blurred. Adding detail to the GI solution might increase the memory and/or processing requirements;
= Limited scope - some algorithms only work for closed spaces with clearly defined boundaries; implementing them when rendering a full-scale landscape for example, would be impossible;
= The number of bounces for true dynamic GI (not precalculated) is typically limited to 1 or 2 at most;
All these things mean that setting up a GI solution for a scene can be a complicated task...
Best regards,
Vlado

가상의 광원들, 볼륨 라이트 필드, 반사 섀도우 맵 등의 기술들이 도움이 되었지. 그럼 다음 질문은 “왜 그럼 V-Ray에 그런 기술들을 사용하지 않아?” 일테고, 내 대답은
이런 기술들은 다양한 문제점들을 가지고 있는데, 특히나
= 사전 연산 – 최종 결과는 실시간으로 렌더링 되지만, 씬을 위한 사전 연산이 필요하게 되는데, 이게 꽤나 시간이 걸릴 것이다.
= 제한된 정확성 – 일반적으로 약간 블러가 되는 GI솔루션만을 얻게 될 것이다. GI솔루션에 디테일을 추가하면 메모리와 연산 요구사항을 증가시키게 된다.
= 제한된 범위 – 일부 알고리즘은 명확히 지정된 경계를 가진 닫힌 공간에서만 작동된다 : 예를 들어 풀 스케일 풍경을 렌더링 할 때 이를 장착하는 것은 불가능할 것이다.
= 실제 다이내믹 GI (사전 연산이 아닌)를 위한 바운스의 갯수는 보통 1이나 2 정도로 제한된다.
이 얘기는 씬을 위한 GI솔루션을 설정하는 것은 복잡한 작업이라는 뜻이다.


뭐 대략 이렇게 설명하고 있습니다.
즉 ‘게임엔진의 실시간 GI효과가 매우 근사하고 사실적으로 보이긴 하지만 실제 씬을 만들어서 GI 를 적용하려는 작업에서 사용하기에는 아직 한계가 많다’ 라고 정리할 수 있겠네요.

다만 이 견해는 V-Ray개발자의 입장에서 본 것이고, 게임엔진 개발자의 입장에서는 또 다를 수도 있겠죠.

No comments:

Post a Comment

로그인하지 않아도 댓글을 달 수 있습니다.