Unity는 씬의 로드 및 언로드 방식에 따라 라이트 프로브 데이터를 다르게 업데이트합니다.
Unity는 LightProbes C# 오브젝트를 사용하여 현재 로드된 모든 씬에 대한 라이트 프로브 데이터를 저장합니다. LightProbes
오브젝트에는 사면체화된 테셀레이션이라는 내부 데이터 구조가 들어 있습니다. Unity는 사면체화된 테셀레이션을 사용하여 라이트 프로브가 게임 오브젝트에 조명을 비추는 방식을 결정하기 위한 계산을 수행합니다.
씬을 로드하거나 언로드하면 Unity는 현재 로드된 모든 씬의 모든 라이트 프로브에 대한 포지션과 계수를 포함하도록 LightProbes
오브젝트를 자동으로 업데이트합니다. 하지만 Unity가 사면체화된 테셀레이션을 업데이트하는지 여부는 씬의 로드 또는 언로드 방식에 따라 다릅니다.
LoadSceneMode.Single을 사용하여 씬을 로드하면 Unity는 로드 프로세스의 일부로 사면체화된 테셀레이션을 자동으로 업데이트합니다. LoadSceneMode.Additive를 사용하여 씬을 로드하거나 UnloadSceneAsync를 사용하여 씬을 언로드하면 Unity는 사면체화된 테셀레이션을 업데이트하지 않습니다.
Unity가 최신이 아닌 사면체화된 테셀레이션을 사용하여 계산을 수행하면 해당 결과에 새로 로드되거나 언로드된 라이트 프로브가 반영되지 않습니다. 즉 라이트 프로브가 정상적으로 게임 오브젝트에 조명을 비추지 않으며, LightProbes.CalculateInterpolatedLightAndOcclusionProbes() 또는 LightProbes.GetInterpolatedProbe() 호출이 예기치 못한 결과를 반환할 수 있습니다.
Unity가 사면체화된 테셀레이션을 업데이트하도록 강제로 지정하려면 LightProbes.Tetrahedralize 또는 LightProbes.TetrahedralizeAsync()를 호출하십시오. 이러한 함수는 Unity가 현재 로드된 모든 씬의 모든 라이트 프로브에 대한 데이터로 사면체화된 테셀레이션을 업데이트하도록 만듭니다.
사면체화된 테셀레이션을 업데이트하는 작업은 CPU 부하가 높으며, 라이트 프로브 개수가 많을수록 CPU에 미치는 영향이 증가합니다. 여러 개의 씬을 로드하거나 언로드할 때 사면체화된 테셀레이션의 업데이트로 인해 성능이 저하가 발생한다면 특정한 양의 콘텐츠를 로드하거나 언로드할 때까지 또는 CPU 부하가 애플리케이션 성능에 영향을 주지 않을 때까지 업데이트를 미루는 것이 좋습니다.
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.