각 라이트맵에는 많은 차트(charts) 가 포함되어 있습니다. 런타임 시점에서 Unity는 이러한 차트를 메시 면에 매핑하고, 차트의 조명 데이터를 사용하여 최종 형상을 계산합니다. GPU 샘플링의 동작 방식 때문에 두 차트가 너무 인접해 있으면 한 차트의 데이터가 다른 차트로 흘러 들어갈 수 있습니다. 이런 경우 대개 의도치 않은 앨리어싱, 픽셀레이션 또는 기타 그래픽 결과물(결함)이 발생합니다.
광원 블리딩 현상을 피하려면 차트 사이에 충분한 공간을 두어야 합니다. GPU가 라이트맵을 샘플링할 때 광원 시스템은 샘플링된 지점에서 가장 가까이 있는 텍셀 4개의 최종 샘플 값을 계산합니다(바이리니어 필터링을 사용한다고 가정함). 이 4개의 텍셀은 샘플링된 지점의 바이리니어 “이웃(neighborhood)”이라고 부릅니다. 두 차트가 너무 가까이 붙어 있으면 오버랩이 발생합니다. 즉, 차트 내 한 이웃 지점이 다른 차트의 이웃 지점과 겹치게 됩니다. 아래 이미지에서 흰색 픽셀은 차트 이웃을 표시하고, 빨간색 픽셀은 겹치는 이웃을 표시합니다.
여러 파라미터(예: 라이트맵 해상도, 메시 UV, 임포터 설정 등)가 존재하기 때문에 최적의 차트 배치 및 간격을 결정하기가 어려울 수 있습니다. 따라서 Unity는 다음 섹션에 설명된 것처럼 이러한 문제들을 쉽게 식별할 수 있는 기능을 제공합니다.
오버랩은 세 가지 방식으로 식별할 수 있습니다.
Unity의 콘솔을 주시하십시오. Unity가 겹치는 UV를 감지하면 경고 메시지를 출력하고 영향을 받는 게임 오브젝트 리스트를 표시합니다.
씬(Scene) 뷰에서 UV Overlap 드로우 모드를 사용하십시오(자세한 내용은 씬(Scene) 뷰의 GI 시각화 참조). 이 모드를 활성화한 경우 Unity는 다른 차트의 텍셀과 매우 인접한 차트 텍셀에 빨간색 하이라이트를 추가합니다. 이 기능은 씬 뷰에서 결함을 찾거나 UV 오버랩이 결함을 일으키는지 빠르게 조사해야 할 때 특히 유용합니다.
UV 오버랩은 매우 많은 요소로 인해 발생하므로 완전한 한 가지 해결책은 없습니다. 다음은 가장 일반적으로 사용되는 몇 가지 해결책입니다.
2018.1에서 프로그레시브 라이트매퍼 추가됨 NewIn20181
2020.1에서 팩 마진 계산 추가됨 NewIn20201
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.