순방향 렌더링과 지연 렌더링 간의 성능 상충 관계는 무엇입니까?


9

정방향 렌더링은 입력 지오메트리 및 조명 정보에서 직접 표면 조각에 대한 방사도 값을 계산하는 프로세스입니다. 지연 렌더링은 두 단계로 나뉩니다. 먼저 입력 형상을 래스터 화하여 만든 재질 속성 (형상 버퍼 또는 G- 버퍼)을 포함하는 화면 공간 버퍼를 생성하고 G- 조명 정보가있는 버퍼.

지연 렌더링은 종종 순방향 렌더링의 최적화로 제공됩니다. 한 가지 설명은 조명이 상당히 비싸고 오버 드로가있는 경우 화면에 표시되지 않는 픽셀을 조명하는 반면 재료 속성을 G 버퍼에 저장하고 나중에 빛을 켜면 픽셀 만 조명한다는 것입니다 실제로 화면에 나타납니다. 이것은 당신이 또한 깊이 프리 패스를하고 그 다음에 깊이 테스트 세트와 포워드 렌더링 패스를 할 수있는 주어진 실제로 연기의 장점 D3D11_COMPARISON_EQUAL이나 GL_EQUAL또는 동등한?

지연 렌더링은 GPU에서 더 나은 일정을 잡을 수도 있습니다. 하나의 큰 날실 / 파면을 더 작은 형상 파면으로 분할 한 다음 더 작은 조명 파면을 사용하면 점유율이 향상됩니다 (동시에 더 많은 파면이 동시에). 그러나 훨씬 더 많은 대역폭을 사용하게됩니다 (많은 수의 채널을 G- 버퍼에 쓴 다음 조명 중에 다시 읽습니다). 분명히 여기의 세부 사항은 GPU에 크게 의존하지만 일반적인 원칙은 무엇입니까?

정방향 렌더링과 지연 렌더링 중 하나를 결정할 때 다른 실제 성능 고려 사항이 있습니까? (필요한 경우 각 기술의 변형을 사용할 수 있다고 가정합니다. 즉 타 일드 포워드를 타 일드 디퍼 드드와 비교할 수 있습니다.)

답변:


11

심도 프리 패스를 수행하고 해당 정보를 사용하여 실제로 보이지 않는 픽셀을 거부함으로써 순방향 렌더링에서도 불투명 오브젝트에서 오버 드로우를 피할 수 있습니다. 그러나 장면의 정점 비용에 따라 심도 프리 패스는 허용 할 수없는 정도의 성능 오버 헤드를 추가 할 수 있습니다. 또한 GPU의 픽셀 쉐이딩 파이프 라인을 사용하여 렌더링하면 렌더링되는 픽셀 당 비용을 지불하지 않고 렌더링되는 2x2 픽셀 쿼드 당 비용을 지불합니다 . 따라서 깊이 프리 패스를 수행하더라도 삼각형 모서리가 버려 질 작업 음영 픽셀을 낭비합니다.

GPU 스케줄링은 복잡한 주제이며, 앞으로와 지연 간의 상충 관계는 단순히 "더 빠르게 실행되지만 더 많은 대역폭을 사용"한다는 결론으로 ​​요약됩니다. 순서대로 실행되는 두 개의 균등 한 작업이 있고 각각 동일한 수의 리소스를 사용하는 경우 별도의 셰이더로 분할 할 이유가 없습니다. 각각 X 리소스를 사용하는 두 개의 작은 웨이브 프론트는 기본적으로 하나의 긴 웨이브 프론트보다 더 잘 작동하지 않습니다. X 자원도 사용합니다. 저렴한 작업과 비싼 작업을 순서대로 실행하는 경우 별도의 셰이더로 분할하면 도움이 될 수 있습니다. 일반적으로 셰이더는 어느 시점에서나 사용할 수있는 최대 리소스 양을 예약합니다. 그것' 비행 중 웨이브 프론트가 너무 적어 대역폭을 포화시키기에 충분한 작업을 수행 할 수 없기 때문에 순방향 렌더링이 GPU의 모든 대역폭을 사용하지 못할 수도 있습니다. 하지만 당신이하는 대역폭 제한, (아마 더 많은 대역폭을 사용하기 때문에) 지연 렌더링에 어떤 이점이있을 수 있습니다.

추가적인 성능 문제는 포워드 렌더링이 단순히 해당 오브젝트에 다른 셰이더를 사용하여 다른 머티리얼 유형 (다른 BRDF)을 지원한다는 것입니다. 작업이 더 이상 렌더링되는 오브젝트에 따라 일관되게 워프 / 웨이브 프론트로 그룹화되지 않기 때문에, 간단하게 지연된 렌더러는 다른 머티리얼 유형을 다른 방식 (잠재적으로 쉐이더의 브랜치)으로 처리해야합니다. 타일 ​​렌더러로이를 완화 할 수 있습니다. 화면의 특정 영역에서만 대체 재질 유형 (예 : 머리카락)을 사용하는 경우 해당 재질의 픽셀이 포함 된 타일에 대해서만 재질 유형 분기와 함께 셰이더 변형을 사용할 수 있습니다 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.