UDN
Search public documentation:
ModulatedShadowsKR
English Translation
日本語訳
中国翻译
Interested in the Unreal Engine?
Visit the Unreal Technology site.
Looking for jobs and company info?
Check out the Epic games site.
Questions about support via UDN?
Contact the UDN Staff
日本語訳
中国翻译
Interested in the Unreal Engine?
Visit the Unreal Technology site.
Looking for jobs and company info?
Check out the Epic games site.
Questions about support via UDN?
Contact the UDN Staff
모듈레이트 섀도우 (Modulated Shadows)
문서 변경내역: Daniel Wright 작성.
개요
버전
관련 설정

LightShadowMode
이 조명 소스에 사용되는 섀도우 유형을 제어합니다.- LightShadow_Normal – 기본 설정임. 해당 조명으로부터 그림자를 받기 위해서는 그림자 투영 조명에 의한 동적으로 발광되는 메쉬가 필요합니다. 이것은 아주 중요한 의미입니다. 왜 그런가하면, 그림자 투영 조명이 lightmap에 도움을 주고 있으면 lightmap된 형상이 노멀 섀도우를 받을 수 없기 때문입니다. 노멀 섀도우는 다른 렌더 대상이 저장되어 나중에 복구되는 것을 필요로 하는 추가 렌더 대상 공간을 필요로 하기에 Xbox 360에서는 매우 부담이 됩니다.
- LightShadow_Modulate – 불투명 또는 마스크된 객체에 투영되는 조명 소스에서부터 모듈레이트 섀도우가 활성화됩니다. 이것은 가장 저렴한 모드입니다. 모듈레이트 섀도우는 특정 조명을 마스킹하는 것이 아니라 장면 색상을 배가하는 방식으로 작동합니다.
ModShadowColor
이것은 모듈레이트 섀도우의 색상을 조정합니다.ShadowFalloffExponent
스포트 라이트 및 포인트 조명의 거리를 기준으로 그림자 폴오프(falloff)되는 비율입니다. 값이 높으면 그 만큼 폴오프의 발생이 더 빨리 발생합니다. 1.0 값은 선형 폴오프에 해당합니다.ModShadowFadeoutExponent
이것은 ModShadowFadeoutTime이 0 이상일 경우 페이드 아웃과 페이드 인 커브를 조정합니다.ModShadowFadeoutTime
이것이 0 이상이면 모듈레이트 섀도우는 투영자가 마지막으로 표시된 시간을 기준으로 페이드 아웃됩니다. 또한 이것은 투영자가 처음 표시되지 시작한 시간을 기준으로 페이드 인됩니다. 이것은 다른 방에서 캐릭터의 그림자를 페이드 아웃하는데 사용되고, 그렇지 않으면 그림자가 벽을 통과해 버립니다. 편집기에서 실시간 업데이트가 설정되어 있는지 확인하고, 실시간 업데이트 설정되지 않으면 제대로 작동하지 않습니다. 페이드 인은 프레임 속도 의존 때문에 원하지 않은 아티팩트를 유발할 수 있습니다.모듈레이트 섀도우를 사용하는 이유
노멀 섀도우는 일단 lightmap을 빌드하고 나면 정적 기하 도형에 투영하지 않습니다. 모듈레이트 섀도우는 장면 전체에 투영되어 이 문제를 해결합니다.
캐릭터에 영향을 미치는 3 개의 조명을 가진 장면이 있고, 3 개 중 1 개만이 노멀 섀도우를 투영합니다. 이 경우 그림자가 아주 흐린것에 주의하십시오.

모듈레이트 섀도우의 작동 원리
모쥴레이트 섀도우는 노멀 섀도우에 비교해 물리적인 정확성이 떨어지지만 대부분의 경우 성능과 사용자 제어 혜택으로 인해 노멀 섀도우와 견주어 떨어지지 않습니다. 그림자 ModShadowColo가 적용되는 조명은 각 경로 처리 때마다 현재의 빛을 마스크 아웃하는 대신 감쇠 버퍼로 렌더링됩니다. 모든 조명이 렌더되어지면 감쇠 버퍼는 장면 색상으로 배가되어집니다. 따라서 표면을 비추는 빛의 수에 관계없이 그림자는 더 짙어집니다. 이것은 특정 광원에서 발생하는 그림자가 그 광원뿐만 아니라 모든 광원으로부터의 조명에 영향을 미치기 때문입니다.
캐릭터에 영향을 미치는 3 개의 조명을 가진 동일한 장면에, 3 개 중 1 개만이 모듈레이트 섀도우를 투영합니다. 이 경우 그림자가 여전히 선명한 것에 주의하십시오.

제한 사항
더블 섀도잉
모듈레이트 섀도우는 단순히 장면 색상에 대해 조정하기 때문에 그림자가 겹치는 영역에는 2개의 그림자가 투영되게 됩니다. 이것의 해결 방법은 primitive에 근접한 shadow parent를 투영하는 것입니다. 예를 들면, Gears of war 1에서는 모든 무기에 2번 그림자가 투영되는 것을 피하기 위해 섀도우를 해당 폰에 종속되어지게 하였습니다. 콘텐츠에서 shadow parent하는 방법에 관해서는 액터 연결 를 참조해 주십시오. 코드에서 shadow parent를 실행하려면 PrimitiveComponent의 SetShadowParent 메소드를 사용하십시오.Emissive(방사) 아티팩트
모듈레이트 섀도우는 emissive light을 포함해서 음영 처리해서는 안되는 장면 색생에 대해 배가되어 버립니다. 해결 방법은 Modulate - Better 섀도우 모드를 사용하는 것입니다. 이것은 모듈레이트 섀도우가 모든 채널에 대해 emissive 구성 요소가 1 이상의 픽셀로부터 영향을 받는 것을 방지합니다.형상을 거쳐 투영하기
현재 구현에서 Mod 섀도우는 형상을 투과하여 투영해 버립니다. 이러한 경우에는 빛의 배치를 신중하게 하여 이런 결과가 발생하지 않게 하여 주십시오. 수동으로 빛을 조절하는 경우에는 이러한 상황을 해결하기 어렵지만, 조명 환경 를 사용하여 훨씬 쉽게 작업하기 수월하게 작업할 수 있습니다. 대부분의 경우 이것은 ModShadowFadeoutTime 를 사용하면 완화됩니다. 뒷면에 그림자가 지는 것은 Modulate - Better 섀도우 모드를 사용하여 해결할 수 있습니다.투영에서의 이러한 흠들을 실제로 없애는 유일한 방법은 정상적인 그림자를 사용하는 것입니다. 그렇지만 정상적인 그림자는 대개 변조된 그림자보다 비용이 상당히 더 많이 듭니다. 여기에는 한 가지 예외가 있는데, 그것은 DominantLightsKR입니다. 우세 광원은 하나의 광원으로 보다 저렴한 비용으로 정상적인 그림자를 드리울 수 있도록 해줍니다.