[Tip] Unity 에서 그림자 깔끔하게 표현하는 방법

2025. 7. 21. 01:24·Unity

Unity에서 그림자를 사용하다 보면 간혹 그림자에 구멍이 뚫린 듯한 현상이나 계단 현상이 나타나 당황스러울 때가 있다. 분명 그림자를 적용했는데, 왜 이렇게 어색하게 표현되는 걸까? 이런 현상은 Unity의 기본 그림자 설정이 특정 상황에서 최적화되지 않아 발생하는 경우가 많다.

이번 글에서는 Unity 그림자 문제의 원인을 간단히 알아보고, 몇 가지 설정을 조정하여 깔끔하고 보기 좋은 그림자를 얻는 방법을 소개한다.

Unity 그림자 피터링(Shadow Acne) 현상 예시 : 그림자 중간중간에 빈공백이 보인다.
그림자 피터링(Shadow Acne) 현상 예시 : 그림자 중간중간에 빈공백이 보인다.

 


 

그림자 문제, 왜 발생할까?

Unity에서 그림자가 이상하게 보이는 주된 원인 중 하나는 `Shadow Bias` 설정과 `Shadow Distance` 때문이다.

Shadow Bias는 그림자가 드리워지는 면에서 그림자가 얼마나 `밀려날지`를 결정하는 값이다. 이 값이 너무 높으면 그림자가 오브젝트에서 떨어져 보이거나, 오브젝트 표면에 그림자 공백이 생기는 `그림자 피터링(Shadow Acne)` 현상이 발생할 수 있다. 반대로 너무 낮으면 오브젝트 자체가 그림자를 드리우는 면에 잘못된 그림자를 드리우는 `셀프 쉐도잉 아티팩트(Self-shadowing Artifact)` 현상이 발생하기도 한다. Unity는 기본적으로 그림자 피터링을 방지하기 위해 Normal Bias 값을 0.5로 설정해두고 있다.

Shadow Distance는 그림자가 렌더링될 최대 거리를 의미한다. 이 거리가 너무 길면 멀리 있는 오브젝트의 그림자는 해상도가 낮아져 계단 현상이 두드러지거나 흐릿하게 보일 수 있다. Unity는 이 거리에 따라 그림자 맵을 할당하므로, 거리가 멀수록 한정된 해상도 내에서 더 넓은 영역을 표현해야 하기에 품질 저하가 발생할 수 있다.

 

 


 

깔끔한 그림자를 위한 설정 팁

다행히 Unity는 이러한 그림자 문제를 해결할 수 있는 몇 가지 유용한 옵션을 제공한다. 다음 두 가지 설정을 조정하여 그림자 품질을 크게 향상시킬 수 있다.

1. Shadow Normal Bias 값 조정

Shadow Normal Bias는 그림자가 오브젝트 표면에서 얼마나 떨어져서 그려질지를 결정하는 값이다. 기본값인 0.5는 그림자 피터링을 방지하는 데 도움을 주지만, 간혹 오브젝트와 그림자 사이에 미세한 틈이 생기거나 그림자가 끊어지는 것처럼 보일 수 있다. 이 값을 0.0으로 조정하면 그림자가 오브젝트 표면에 더 밀착되어 표현되어 깔끔한 결과를 얻을 수 있다.

Unity Shadow Normal Bias를 조정하는 모습
Shadow Normal Bias를 조정하는 모습

 

설정 방법:

  1. Unity 에디터에서 Edit > Project Settings로 이동한다.
  2. Quality 탭을 선택한 후 Render Pipeline Asset 을 클릭한다.
  3. Shadows 섹션에서 Shadow `Normal Bias` 값을 0.0으로 변경한다.

2. Shadow Max Distance 값 줄이기

Shadow Max Distance는 그림자가 렌더링될 카메라로부터의 최대 거리를 설정한다. 이 값이 너무 크면 Unity는 넓은 영역에 그림자 맵을 할당해야 하므로, 멀리 있는 그림자의 해상도가 낮아져 계단 현상이 두드러지거나 흐릿하게 보인다. Shadow Max Distance 값을 줄이면 그림자가 렌더링되는 영역이 좁아지지만, 해당 영역 내에서는 더 높은 해상도의 그림자를 얻을 수 있어 전반적인 그림자 품질이 향상된다. 특히 가까이 있는 오브젝트들의 그림자 품질을 중요하게 생각한다면 효과적인 방법이다.

Unity Shadow Max Distance를 조정하는 모습
Shadow Max Distance를 조정하는 모습

 

설정 방법:

  1. Unity 에디터에서 Edit > Project Settings로 이동한다.
  2. Quality 탭을 선택한 후 Render Pipeline Asset 을 클릭한다.
  3. Shadows 섹션에서 Shadow Max Distance 값을 적절하게 줄인다. 값이 작을 수록 전반적으로 그림자 품질이 향상된다.

Unity 그림자가 깔끔하게 표현되어있는 최종 결과물
그림자가 깔끔하게 표현되어있는 최종 결과물

 


 

마무리

Unity에서 그림자를 깔끔하게 표현하는 것은 게임이나 애플리케이션의 시각적 품질을 크게 향상시키는 중요한 요소이다. `Shadow Normal Bias`를 0.0으로 조정하고, `Shadow Max Distance`를 적절히 줄이는 간단한 설정만으로도 거슬리던 그림자 문제를 해결하고 훨씬 더 사실적이고 보기 좋은 장면을 만들 수 있다. 개발하는 프로젝트의 특성과 성능 요구사항을 고려하여 이 값들을 조절한다면, 최적의 그림자 표현을 얻을 수 있을 것이다.

'Unity' 카테고리의 다른 글

[Tip] Unity 에서 Scene View 카메라를 Game View에 적용시키는 방법  (2) 2025.07.24
'Unity' 카테고리의 다른 글
  • [Tip] Unity 에서 Scene View 카메라를 Game View에 적용시키는 방법
deploylife
deploylife
빠르게 변화하는 기술 트렌드 속에서 새로운 기술을 학습하고 실제 개발에 적용하며 얻은 인사이트를 기록하고 있습니다.
  • deploylife
    인생은 배포중
    deploylife
  • 전체
    오늘
    어제
    • 분류 전체보기 (16) N
      • Dev (2)
      • AI (3)
      • Unity (2)
      • Python (0)
      • Mac (4) N
      • Life (2)
      • Blog (3)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    AuraSpiritDracula
    Highlight.js
    vscode
    유니티
    문서열람번호
    Skin
    universal control
    노션스타일
    code block
    Mouse Scroll
    Unity
    smithery
    Palenight
    유니버셜컨트롤
    MCP
    Align with View
    생산성향상
    XPA
    powernap
    Mac
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
deploylife
[Tip] Unity 에서 그림자 깔끔하게 표현하는 방법
상단으로

티스토리툴바