{}!Google Tag Manager end}} 렌더링 디버거 | Universal RP | 14.0.9
docs.unity3d.com
    목차 표시/숨기기

    렌더링 디버거

    Rendering Debugger 창에서는 다양한 조명, 렌더링 및 머티리얼 프로퍼티를 시각화할 수 있습니다. 이러한 시각화를 통해 렌더링 문제를 식별하고 씬 및 렌더링 구성을 최적화할 수 있습니다.

    이 섹션은 다음의 항목에 대해 다룹니다.

    • Rendering Debugger 창에 액세스하는 방법.

      에디터에서, 플레이 모드에서, 그리고 개발 빌드의 런타임 시점에 Rendering Debugger 창에 액세스하는 방법에 대한 정보.

    • Rendering Debugger 창 섹션

      Rendering Debugger 창에 있는 요소와 프로퍼티에 대한 설명.

    • 런타임 시점의 내비게이션

      런타임 시점에 Rendering Debugger 인터페이스를 탐색하는 방법.

    Rendering Debugger 창에 액세스하는 방법

    Rendering Debugger 창은 다음 모드에서 이용할 수 있습니다.

    • 에디터.

    • 플레이 모드.

    • 모든 기기에서 스탠드얼론 Unity 플레이어의 런타임 시점. 이 창은 개발 빌드에서만 사용할 수 있습니다.

    개발 빌드에서 Rendering Debugger 창을 사용하는 경우 Project Settings > Graphics > URP Global Settings에서 Strip Debug Variants 체크박스를 선택 해제하십시오.

    다음 중 한 가지 옵션을 사용하여 Rendering Debugger 창을 열 수 있습니다.

    에디터에서:

    • Window > Analysis > Rendering Debugger를 선택합니다.

    • Ctrl+Backspace(macOS에서는 Ctrl+Delete)를 누릅니다.

    **플레이 모드에서, 또는 개발 빌드의 런타임 시점에:

    • 데스크톱 또는 노트북에서 LeftCtrl+Backspace(macOS에서는 LeftCtrl+Delete)를 누릅니다.

    • 콘솔 컨트롤러에서 L3 및 R3(왼쪽 스틱 및 오른쪽 스틱)을 누릅니다.

    • 모바일 디바이스에서 세 손가락으로 두 번 탭합니다.

    enableRuntimeUI 프로퍼티를 사용하여 런타임 UI를 비활성화할 수 있습니다.

    Rendering Debugger 창 섹션

    Rendering Debugger 창에는 다음 섹션이 포함되어 있습니다.

    • Display Stats

    • Frequently Used

    • Material

    • Lighting

    • Rendering

    다음 그림에는 씬 뷰의 Rendering Debugger 창이 나와 있습니다.

    Rendering Debugger 창.

    Display Stats

    Display Stats 패널에는 프로젝트의 성능 문제 디버깅과 관련된 통계가 표시됩니다. Rendering Debugger 창의 이 섹션은 플레이 모드에서만 표시됩니다.

    런타임 시점에 씬 뷰에서 [런타임 단축키](#Navigation at runtime)를 사용하여 Display Stats 창을 열 수 있습니다.

    Frame Stats

    Frame Stats 섹션에는 각 프로퍼티의 평균, 최소값, 최대값이 표시됩니다. HDRP는 최근 30프레임에 대해 각 Frame Stats 값을 계산합니다.

    프로퍼티 설명
    Frame Rate 현재 카메라 뷰의 프레임 속도(초당 프레임 수)입니다.
    Frame Time 현재 카메라 뷰의 총 프레임 시간입니다.
    CPU Main Thread Frame 프레임 시작 시점부터 메인 스레드가 작업을 완료한 시점까지의 총 시간(밀리초)입니다.
    CPU Render Thread Frame 렌더 스레드에서 작업이 시작된 시점부터 Unity가 현재 프레임(Gfx.PresentFrame)을 렌더링하기 위해 대기하는 시점 사이의 시간(밀리초)입니다.
    CPU Present Wait 마지막 프레임 동안 CPU가 현재 프레임(Gfx.PresentFrame)을 렌더링하기 위해 대기한 시간(밀리초)입니다.
    GPU Frame GPU가 특정 프레임을 렌더링하는 데 걸리는 시간(밀리초)입니다.
    Debug XR Layout XR 패스에 대한 디버그 정보를 표시합니다.
    이 모드는 에디터와 개발 빌드에서만 사용할 수 있습니다.

    Bottlenecks

    병목 현상은 한 프로세스가 다른 컴포넌트보다 현저히 느리게 수행되고 다른 컴포넌트가 이에 의존할 때 발생하는 상태입니다.

    Bottlenecks 섹션에서는 CPU와 GPU의 마지막 60프레임 분포에 대해 설명합니다. Bottleneck 정보는 기기에서 플레이어를 빌드할 때만 확인할 수 있습니다.

    참고: Vsync는 기기 화면의 새로고침 속도에 따라 Frame Rate를 제한합니다. 즉 Vsync를 활성화하면 대부분의 경우 Present Limited 카테고리는 100%입니다. Vsync를 끄려면 Edit > Project settings > Quality > Current Active Quality Level에서 Vsync Count를 Don't Sync로 설정하십시오.

    Bottleneck 카테고리

    카테고리 설명
    CPU CPU가 프레임 시간을 제한한 마지막 60프레임의 백분율입니다.
    GPU GPU가 프레임 시간을 제한한 마지막 60프레임의 백분율입니다.
    Present limited 다음의 표시 제약 조건에 따라 프레임 시간이 제한된 마지막 60프레임의 백분율입니다.
    • Vertical Sync (Vsync): Vsync가 디스플레이의 새로고침 속도에 렌더링을 동기화합니다.
    •Target framerate: 애플리케이션의 프레임 속도를 수동으로 제한하는 데 사용할 수 있는 기능입니다. targetFrameRate에 지정된 시간 전에 프레임이 준비되면 Unity는 프레임을 표시하기 전에 대기합니다.
    Balanced 프레임 시간이 위의 범주에 따라 제한되지 않은 마지막 60프레임의 백분율입니다. 100% Balanced 프레임은 CPU와 GPU의 처리 시간이 거의 같음을 나타냅니다.

    Bottleneck 예제

    Vsync가 최근 60프레임 중 20프레임을 제한한 경우 Bottlenecks 섹션은 다음과 같이 표시될 수 있습니다.

    • CPU 0.0%: 이는 HDRP가 CPU에서 마지막 60프레임 중 어느 프레임도 렌더링하지 않았음을 나타냅니다.
    • GPU 66.6%: HDRP가 렌더링한 최근 60프레임 중 66.6%를 GPU가 제한했음을 나타냅니다.
    • Present Limited 33.3%: 표시 제약 조건(Vsync 또는 타겟 프레임 속도)이 마지막 60프레임 중 33.3%를 제한했음을 나타냅니다.
    • Balanced 0.0%: 마지막 60프레임 중 CPU 처리 시간과 GPU 처리 시간이 동일한 프레임이 0개였음을 나타냅니다.

    이 예제에서 병목 현상은 GPU입니다.

    Detailed Stats

    Detailed Stats 섹션에는 각 렌더링 단계가 CPU와 GPU에서 걸리는 시간이 밀리초 단위로 표시됩니다. HDRP는 이전 프레임을 기준으로 프레임마다 이 값을 업데이트합니다.

    프로퍼티 설명
    Update every second with average 1초 평균값을 계산하여 1초마다 업데이트합니다.
    Hide empty scopes CPU와 GPU에서 0.00ms의 처리 시간을 사용하는 프로파일링 범위를 숨깁니다.
    Debug XR Layout XR 패스한 디버그 정보를 표시합니다. 이 모드는 에디터와 개발 빌드에서만 표시됩니다.

    Frequently Used

    이 섹션에는 사용자가 자주 사용하는 프로퍼티가 포함되어 있습니다. 이 프로퍼티는 Rendering Debugger 창의 다른 섹션에서 가져온 것입니다. 프로퍼티에 대한 자세한 내용은 Material, Lighting 및 Rendering 섹션을 참조하십시오.

    Material

    이 섹션의 프로퍼티를 사용하면 다양한 Material 프로퍼티를 시각화할 수 있습니다.

    Rendering Debugger 창, Material 섹션
    Rendering Debugger 창, Material 섹션

    Material Filters

    프로퍼티 설명
    Material Override 화면의 모든 게임 오브젝트에서 시각화할 Material 프로퍼티를 선택합니다.
    이용 가능한 옵션:
    • Albedo
    • Specular
    • Alpha
    • Smoothness
    • AmbientOcclusion
    • Emission
    • NormalWorldSpace
    • NormalTangentSpace
    • LightingComplexity
    • Metallic
    • SpriteMask
    LightingComplexity 값을 선택하면 Unity는 스크린 공간의 영역에 영향을 미치는 광원의 수를 표시합니다.
    Vertex Attribute 화면에서 시각화할 게임 오브젝트의 버텍스 속성을 선택합니다.
    이용 가능한 옵션:
    • Texcoord0
    • Texcoord1
    • Texcoord2
    • Texcoord3
    • Color
    • Tangent
    • Normal

    Material Validation

    프로퍼티 설명
    Material Validation Mode 시각화할 머티리얼 프로퍼티를 Albedo 또는 Metallic 중에서 선택합니다. 이 프로퍼티 중 하나를 선택하면 새 컨텍스트 메뉴가 표시됩니다.
        Validation Mode: Albedo Material Validation Mode 프로퍼티에서 Albedo를 선택하면 다음 프로퍼티가 포함된 Albedo Settings 섹션이 표시됩니다.
    Validation Preset: 미리 구성된 머티리얼 또는 기본 밝기를 선택하여 밝기 범위를 시각화합니다.
    Min Luminance: Unity가 이 값보다 밝기가 낮은 픽셀을 빨간색으로 그립니다.
    Max Luminance: 이 값보다 밝기가 높은 픽셀을 파란색으로 그립니다.
    Hue Tolerance: 미리 설정된 머티리얼을 선택한 경우에만 사용할 수 있습니다. Unity가 최소 및 최대 밝기 값에 색조 허용치를 추가합니다.
    Saturation Tolerance: 미리 설정된 머티리얼을 선택한 경우에만 사용할 수 있습니다. Unity가 최소 및 최대 밝기 값에 채도 허용치를 추가합니다.
        Validation Mode: Metallic Material Validation Mode 프로퍼티에서 Metallic을 선택하면 다음 프로퍼티가 포함된 Metallic Settings 섹션이 표시됩니다.
    Min Value: Unity가 이 값보다 메탈릭 값이 낮은 픽셀을 빨간색으로 그립니다.
    Max Value: Unity가 이 값보다 메탈릭 값이 높은 픽셀을 파란색으로 그립니다.

    조명

    이 섹션의 프로퍼티를 사용하면 그림자 캐스케이드, 반사, 메인 광원 및 추가 광원의 기여도 등 조명 시스템과 관련된 다양한 설정 및 요소를 시각화할 수 있습니다.

    Lighting Debug Modes


    Lighting Debug Modes 하위 섹션.

    프로퍼티 설명
    Lighting Debug Mode 디버깅을 위해 화면에 오버레이할 조명 및 그림자 정보를 지정합니다. 사용할 수 있는 옵션은 다음과 같습니다.
    • None: 디버그 오버레이 없이 씬을 정상적으로 렌더링합니다.
    • Shadow Cascades: 그림자 캐스케이드 정보를 오버레이하여 각 픽셀이 어떤 그림자 캐스케이드를 사용하는지 확인할 수 있습니다. 그림자 캐스케이드 거리를 디버깅하는 데 사용됩니다. 각 컬러가 나타내는 그림자 캐스케이드에 대한 자세한 내용은 URP 에셋의 Shadows 섹션을 참조하십시오.
    • Lighting Without Normal Maps: 조명을 시각화하기 위해 씬을 렌더링합니다. 이 모드는 중립 머티리얼을 사용하고 노멀 맵을 비활성화합니다. 이 모드와 Lighting With Normal Maps 모드를 사용하면 노멀 맵으로 인한 조명 문제를 쉽게 디버깅할 수 있습니니다.
    • Lighting With Normal Maps: 조명을 시각화하기 위해 씬을 렌더링합니다. 이 모드는 중립 머티리얼을 사용하고 노멀 맵을 허용합니다.
    • Reflections: 반사를 시각화하기 위해 씬을 렌더링합니다. 이 모드는 모든 메시 렌더러에 완전히 매끄러운 반사 머티리얼을 적용합니다.
    • Reflections With Smoothness: 반사를 시각화하기 위해 씬을 렌더링합니다. 이 모드는 오버라이드된 평활도가 없는 반사 머티리얼을 모든 게임 오브젝트에 적용합니다.
    Lighting Features 최종 조명 결과에 기여하는 조명 기능에 대한 플래그를 지정합니다. 이를 통해 씬의 특정 조명 기능을 확인하고 디버깅할 수 있습니다. 사용할 수 있는 옵션은 다음과 같습니다.
    • Nothing: 모든 플래그를 비활성화하는 단축키입니다.
    • Everything: 모든 플래그를 활성화하는 단축키입니다.
    • Global Illumination: 전역 조명을 렌더링할 지 여부를 나타냅니다.
    • Main Light: 메인 방향 광원이 조명에 기여하는지 여부를 나타냅니다.
    • Additional Lights: 메인 방향 광원 이외의 광원이 조명에 기여하는지 여부를 나타냅니다.
    • Vertex Lighting: 버텍스별 조명을 사용하는 추가 광원이 조명에 기여하는지 여부를 나타냅니다.
    • Emission: 이미시브 머티리얼이 조명에 기여하는지 여부를 나타냅니다.
    • Ambient Occlusion: 앰비언트 오클루전이 조명에 기여하는지 여부를 나타냅니다.

    Rendering

    이 섹션의 프로퍼티를 사용하면 다양한 렌더링 기능을 시각화할 수 있습니다.

    Rendering Debug


    Rendering Debug 하위 섹션.

    프로퍼티 설명
    Map Overlays 화면에 오버레이할 렌더 파이프라인 텍스처를 지정합니다. 사용할 수 있는 옵션은 다음과 같습니다.
    • None: 텍스처 오버레이 없이 씬을 정상적으로 렌더링합니다.
    • Depth: 카메라의 뎁스 텍스처를 화면에 오버레이합니다.
    • Additional Lights Shadow Map: 메인 방향 광원 이외의 광원이 드리우는 그림자가 포함된 섀도우 맵을 오버레이합니다.
    • Main Light Shadow Map: 메인 방향 광원이 드리우는 그림자가 포함된 섀도우 맵을 오버레이합니다.
      Map Size 오버레이 텍스처의 너비와 높이를 URP가 표시하는 뷰 창의 백분율로 나타낸 값입니다. 예를 들어 값이 50이면 화면의 4분의 1(너비 50%, 높이 50%)을 채웁니다.
    HDR HDR(High Dynamic Range)을 씬 렌더링에 사용할지 여부를 나타냅니다. 이 프로퍼티를 활성화할 때의 효과는 URP 에셋에서 HDR을 활성화한 경우에만 효과가 있습니다.
    MSAA 멀티샘플링 안티앨리어싱(MSAA)을 씬 렌더링에 사용할지 여부를 나타냅니다. 이 프로퍼티를 활성화할 때의 효과는 다음과 같은 경우에만 적용됩니다.
    • URP 에셋에서 Anti Aliasing (MSAA)을 Disabled 이외의 값으로 설정합니다.
    • 게임 뷰를 사용합니다. MSAA가 씬 뷰에서 적용되지 않습니다.
    Post-processing URP가 포스트 프로세싱을 적용하는 방식을 지정합니다. 사용할 수 있는 옵션은 다음과 같습니다.
    • Disabled: 포스트 프로세싱을 비활성화합니다.
    • Auto: Unity가 현재 활성화된 디버그 모드에 따라 포스트 프로세싱을 활성화 또는 비활성화합니다. 포스트 프로세싱으로 인해 컬러가 변경되어 디버그 모드의 픽셀 의미가 변경되는 경우 Unity는 포스트 프로세싱을 비활성화합니다. 활성화된 디버그 모드가 없거나, 포스트 프로세싱으로 인해 컬러가 변경되어도 활성화된 디버그 모드의 픽셀 의미가 변경되지 않는 경우 Unity는 포스트 프로세싱을 활성화합니다.
    • Enabled: 카메라가 캡처한 이미지에 포스트 프로세싱을 적용합니다.
    Additional Wireframe Modes 씬에서 메시의 와이어프레임을 렌더링할지 여부와 그 방법을 지정합니다. 사용할 수 있는 옵션은 다음과 같습니다.
    • None: 와이어프레임을 렌더링하지 않습니다.
    • Wireframe: 씬에서 메시의 가장자리만 렌더링합니다. 이 모드에서는 더 가까운 메시의 와이어프레임을 통해 메시의 와이어프레임을 볼 수 있습니다.
    • Solid Wireframe: 씬에서 메시의 가장자리와 표면만 렌더링합니다. 이 모드에서는 각 와이어프레임 메시의 표면이 그 뒤에 있는 가장자리를 숨깁니다.
    • Shaded Wireframe: 메시의 가장자리를 오버레이로 렌더링합니다. 이 모드에서 Unity는 씬을 컬러로 렌더링하고 그 위에 와이어프레임을 오버레이합니다.
    Overdraw 오버드로우 디버그 뷰를 렌더링할지 여부를 나타냅니다. Unity가 픽셀을 다른 픽셀 위에 그리는 위치를 확인할 때 유용합니다.

    Pixel Validation


    Pixel Validation 하위 섹션.

    프로퍼티 설명
    Pixel Validation Mode Unity에서 픽셀 컬러 값을 검증하는 데 사용할 모드를 지정합니다. 사용할 수 있는 옵션은 다음과 같습니다.
    • None: 씬을 정상적으로 렌더링하고 픽셀을 검증하지 않습니다.
    • Highlight NaN, Inf and Negative Values: 컬러 값이 NaN, Inf 또는 음수인 픽셀을 강조 표시합니다.
    • Highlight Values Outside Range: 특정 범위를 벗어난 컬러 값을 가진 픽셀을 강조 표시합니다. Value Range Min 및 Value Range Max를 사용합니다.
      Channels 픽셀 값 범위 검증에 사용할 값을 지정합니다. 사용할 수 있는 옵션은 다음과 같습니다.
    • RGB: 적색, 녹색 및 청색 채널에서 계산된 밝기 값을 사용하여 픽셀을 검증합니다.
    • R: 적색 채널의 값을 사용하여 픽셀을 검증합니다.
    • G: 녹색 채널의 값을 사용하여 픽셀을 검증합니다.
    • B: 청색 채널의 값을 사용하여 픽셀을 검증합니다.
    • A: 알파 채널의 값을 사용하여 픽셀을 검증합니다.
    이 프로퍼티는 Pixel Validation Mode를 Highlight Values Outside Range로 설정한 경우에만 표시됩니다.
       Value Range Min 최소 유효 컬러 값입니다. Unity는 이 값보다 작은 컬러 값을 강조 표시합니다.

    이 프로퍼티는 Pixel Validation Mode를 Highlight Values Outside Range로 설정한 경우에만 표시됩니다.
       Value Range Max 최대 유효 컬러 값입니다. Unity는 이 값보다 큰 컬러 값을 강조 표시합니다.

    이 프로퍼티는 Pixel Validation Mode를 Highlight Values Outside Range로 설정한 경우에만 표시됩니다.

    Navigation at runtime

    이 섹션에서는 런타임 시점에 Rendering Debugger 인터페이스를 탐색하는 방법을 설명합니다.

    현재 활성 항목을 변경하려는 경우:

    • 키보드: 화살표 키를 사용합니다.

    • 터치 화면: 프로퍼티 옆의 화살표를 탭합니다.

    • Xbox 컨트롤러: 방향 패드(D-Pad)를 사용합니다.

    • PlayStation 컨트롤러: 방향 버튼을 사용합니다.

    현재 탭을 변경하려는 경우:

    • 키보드: Page up 및 Page down 키(MacOS에서는 Fn + Up 및 Fn + Down 키)를 사용합니다.

    • 터치 화면: 탭 제목 옆의 화살표를 탭합니다.

    • Xbox 컨트롤러: 왼쪽 범퍼와 오른쪽 범퍼를 사용합니다.

    • PlayStation 컨트롤러: L1 버튼과 R1 버튼을 사용합니다.

    현재 활성 항목을 디버그 창과 별도로 표시하려는 경우:

    • 키보드: 오른쪽 Shift 키를 누릅니다.

    • Xbox 컨트롤러: X 버튼을 누릅니다.

    • PlayStation 컨트롤러: 사각형 버튼을 누릅니다.

    맨 위로
    Copyright © 2023 Unity Technologies —
    • Your Privacy Choices (Cookie Settings)