Azure Remote Rendering 작동 방식

완료됨

Azure Remote Rendering은 여러 구성 요소로 이루어지며, 그에 따라 여러 프로세스로 진행됩니다. 이 단원에서는 Azure Remote Rendering 내의 다음과 같은 구성 요소와 각 구성 요소 내에서 작동하는 기본 프로세스에 대해 알아봅니다.

구성 요소 Description
변환 Azure Remote Rendering에 사용할 3D 자산을 준비합니다.
렌더링 세션 클라이언트 디바이스와 Remote Rendering을 수행하는 서버 간의 연결을 제공합니다.
Client SDK HoloLens 2와 같은 디바이스의 로컬 및 원격 홀로그램을 결합합니다.

변환

변환 프로세스는 3D 자산을 Azure Remote Rendering에 사용할 수 있도록 준비하며 런타임에 최대한 효율적으로 렌더링해야 합니다. Azure Blob 스토리지에 모델을 업로드하여 프로세스를 시작합니다.

참고

현재 Azure Remote Rendering은 FBX(필름 박스) 및 Graphics Language Transmission Format 모델 형식을 모두 변환할 수 있습니다.

모델을 업로드한 후 변환 프로세스를 수행합니다. 변환이 완료되면 Azure는 변환된 모델을 Blob 스토리지에 다시 씁니다.

적극적으로 렌더링하지 않는 모델은 Blob 스토리지 내에서 변경되지 않은 상태로 유지됩니다.

렌더링 세션

변환 후에는 변환된 3D 모델을 렌더링할 서버와 클라이언트 디바이스 간에 세션을 설정해야 합니다. 이 프로세스는 세 가지 단계로 구성되어 있습니다.

  1. 세션을 요청합니다.
  2. 세션에 연결하여 Remote Rendering을 수행합니다.
  3. 세션을 종료합니다.

세션이란?

Azure Remote Rendering은 복잡한 렌더링 작업을 클라우드로 오프로딩하는 방식으로 작동합니다. 이러한 렌더링 작업은 특정 클라우드 서버에서 수행해야 합니다. 서버에는 복잡한 3D 모델을 렌더링하는 데 필요한 GPU 유형이 제공됩니다. 아무 서버나 사용할 수 없으므로 필요한 기능이 포함된 서버 사용을 예약해야 합니다. 이렇게 하려면 ‘세션’을 요청합니다.

세션에는 다음과 같은 구성 요소가 포함되어 있습니다.

  • 사용할 서버를 예약하기 위한 임대 요청 임대 요청 중에 실행하려는 기반으로 삼을 서버 크기를 선택합니다. 표준 또는 프리미엄을 선택할 수 있습니다. 실행 중인 세션 중에는 이 크기 조정을 변경할 수 없습니다.

    중요

    표준 크기의 서버를 사용하는 Remote Rendering의 최대 장면 크기는 2,000만 개의 다각형입니다. 프리미엄 크기의 서버를 사용하는 Remote Rendering에는 고정 최댓값이 적용되지 않지만 콘텐츠가 서비스의 렌더링 기능을 초과하는 경우 성능이 저하될 수 있습니다.

  • 모델을 로드하고 조작하기 위한 모든 명령입니다.

  • 렌더링이 완료된 후 클라우드 서버를 해제하는 임대 만료 요청입니다.

세션은 다음 표에 설명된 세 가지 기본 단계로 구성됩니다.

단계 설명
세션 시작 이 단계에서 Azure Remote Rendering은 사용자를 대신하여 세션을 만듭니다. 서버 크기를 요청하고 세션에 대한 Azure 지역을 지정합니다. 그러면 세션이 시작하는 중으로 표시됩니다. 알맞은 서버를 찾은 후 Azure는 적절한 크기의 VM을 서버에 복사하여 Azure Remote Rendering 호스트를 만듭니다. VM이 시작되면 세션 상태가 준비로 전환됩니다.
세션 연결 세션 상태가 준비로 전환되면 디바이스를 연결할 수 있습니다. 연결된 동안 디바이스는 3D 모델을 로드하고 수정하기 위한 명령을 전송합니다.
세션 종료 세션이 더 필요하지 않으면 세션을 중지해야 합니다. 세션을 수동으로 중지하지 않는 경우 세션의 임대 시간이 만료되면 자동으로 종료됩니다.

렌더링 모드

렌더링할 때 서버는 렌더링된 프레임을 디바이스에서 로컬로 실행되는 애플리케이션으로 다시 보냅니다. 다음 표에서는 두 가지 렌더링 모드에 대해 설명합니다.

Mode Description
TileBasedComposition 이 모드에서 관련된 모든 GPU는 화면에 표시할 특정 타일을 렌더링합니다. 기본 GPU는 Azure에서 비디오 프레임으로 클라이언트 디바이스에 전송하기 전에 이러한 타일을 사용하여 최종 이미지를 작성합니다. 이 모드의 렌더링 품질은 DepthBasedComposition 모드보다 약간 더 좋습니다.
DepthBasedComposition 이 모드에서 관련된 모든 GPU는 메시의 하위 집합에 대해서만 전체 화면 해상도로 렌더링합니다. 기본 GPU의 최종 이미지 조합은 깊이 정보에 따라 파트가 적절히 병합되도록 합니다.

참고

세션에 연결할 때 Remote Rendering 모드를 지정합니다.

Client SDK

프레임이 디바이스에 도착하면 이미지에 있는 로컬 홀로그램과 병합됩니다. 이것은 원격 및 로컬 홀로그램을 혼합하고 조화시킬 수 있는 진정한 하이브리드 렌더링 환경을 제공합니다. 즉, 더 높은 수의 다각형을 가진 원격 개체만 렌더링하면 됩니다.

메뉴 및 더 작은 모델과 같은 콘텐츠를 로컬로 유지합니다.