KR102656014B1 - 분산 렌더링 기반의 클라우드 vr 장치 - Google Patents

분산 렌더링 기반의 클라우드 vr 장치 Download PDF

Info

Publication number
KR102656014B1
KR102656014B1 KR1020210054465A KR20210054465A KR102656014B1 KR 102656014 B1 KR102656014 B1 KR 102656014B1 KR 1020210054465 A KR1020210054465 A KR 1020210054465A KR 20210054465 A KR20210054465 A KR 20210054465A KR 102656014 B1 KR102656014 B1 KR 102656014B1
Authority
KR
South Korea
Prior art keywords
rendering
layer
cloud
terminal
client
Prior art date
Application number
KR1020210054465A
Other languages
English (en)
Other versions
KR20220147381A (ko
Inventor
임종혁
남승인
주재현
한장희
Original Assignee
(주)이머시브캐스트
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)이머시브캐스트 filed Critical (주)이머시브캐스트
Priority to KR1020210054465A priority Critical patent/KR102656014B1/ko
Publication of KR20220147381A publication Critical patent/KR20220147381A/ko
Application granted granted Critical
Publication of KR102656014B1 publication Critical patent/KR102656014B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Graphics (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Abstract

본 발명은 분산 렌더링 기반의 클라우드 VR 장치에 관한 것으로, 화면에 표시할 내용을 레이어 별로 분리하는 레이어 분리 처리부, 레이어 별 렌더링할 장치를 결정하는 렌더링 분산 처리부, 상기 레이어 별 결정된 렌더링할 장치에 따라 상기 분리된 레이어 중 일부 레이어를 상기 클라우드 VR 서버를 통해 렌더링을 수행하고, 상기 분리된 레이어 중 나머지 일부 레이어를 클라이언트 VR 단말을 통해 렌더링을 수행하는 렌더링부, 및 상기 렌더링된 각 레이어를 합쳐 하나의 이미지를 생성하고 상기 클라이언트 VR 단말을 통해 표시하는 레이어 합성 처리부를 포함한다.

Description

분산 렌더링 기반의 클라우드 VR 장치{DISTRIBUTED RENDERING BASED CLOUD VR DEVICE}
본 발명은 클라우드 VR 기술에 관한 것으로, 보다 상세하게는 레이어 별로 렌더링을 분산 처리한 후 각 레이어를 합성하여 레이턴시(Latency)에 의해 발생하는 GUI(Graphical User Interface) 요소들의 떨림을 감소시킬 수 있는 분산 렌더링 기반의 클라우드 VR 장치에 관한 것이다.
최근 가상현실(Virtual Reality, VR) 기기가 출현하고 있으나, 비싼 가격, 몰입감을 방해하는 저해상도, VR 컨텐츠 부족 등의 문제로 인해 스마트폰처럼 널리 보급되고 있지 않다.
특히, 네트워크 상의 레이턴시(Latency), 지터(Jitter) 등에 의해 화면 상에 표시되는 객체(object), 즉 사용자의 시선을 따라다니는 UI 이미지, 텍스트(Text) 등의 GUI(Graphical User Interface) 요소들에 발생할 수 있는 떨림 현상은 필수적으로 해결되어야 하는 문제일 수 있다.
한국등록특허 제10-2166158(2020.10.08)호
본 발명의 일 실시예는 레이어 별로 렌더링을 분산 처리한 후 각 레이어를 합성하여 레이턴시(Latency)에 의해 발생하는 GUI(Graphical User Interface) 요소들의 떨림을 감소시킬 수 있는 분산 렌더링 기반의 클라우드 VR 장치를 제공하고자 한다.
본 발명의 일 실시예는 레이턴시에 민감한 레이어의 경우 클라이언트 VR 단말에서 렌더링하도록 함으로써 떨림 현상을 제거할 수 있는 분산 렌더링 기반의 클라우드 VR 장치를 제공하고자 한다.
실시예들 중에서, 분산 렌더링 기반의 클라우드 VR 장치는 화면에 표시할 내용을 레이어 별로 분리하는 레이어 분리 처리부, 레이어 별 렌더링할 장치를 결정하는 렌더링 분산 처리부, 상기 레이어 별 결정된 렌더링할 장치에 따라 상기 분리된 레이어 중 일부 레이어를 상기 클라우드 VR 서버를 통해 렌더링을 수행하고, 상기 분리된 레이어 중 나머지 일부 레이어를 클라이언트 VR 단말을 통해 렌더링을 수행하는 렌더링부, 및 상기 렌더링된 각 레이어를 합쳐 하나의 이미지를 생성하고 상기 클라이언트 VR 단말을 통해 표시하는 레이어 합성 처리부를 포함한다.
상기 레이어 분리 처리부는 배경 및 객체 단위로 레이어를 분리할 수 있다.
상기 렌더링 분산 처리부는 상기 클라이언트 VR 단말과 상기 클라우드 VR 서버의 처리 성능을 기준으로 상기 분리된 레이어 별 렌더링할 장치를 결정할 수 있다.
상기 렌더링 분산 처리부는 상기 클라이언트 VR 단말과 상기 클라우드 VR 서버에 메타 데이터를 전달하여 렌더링 대상에 대한 리소스 목록을 공유하고 상기 리소스 목록에 따라 리소스의 로딩 및 언로딩을 가변적으로 수행할 수 있다.
상기 렌더링부는 상기 분리된 레이어 중 레이턴시 및 지터에 민감한 GUI 요소들에 해당하는 객체를 포함하는 레이어를 상기 클라이언트 VR 단말을 통해 렌더링하고, 나머지 레이어에 대해 상기 클라우드 VR 서버를 통해 렌더링할 수 있다.
상기 렌더링부는 상기 클라이언트 VR 단말의 처리 성능 및 특성에 따라 렌더링이 가능하지 않은 상태인 경우 상기 클라우드 VR 서버를 통해 상기 분리된 레이어 별 렌더링을 모두 수행할 수 있다.
개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
본 발명의 일 실시예에 따른 분산 렌더링 기반의 클라우드 VR 장치는 레이어 별로 렌더링을 분산 처리한 후 각 레이어를 합성하여 레이턴시(Latency)에 의해 발생하는 GUI(Graphical User Interface) 요소들의 떨림을 감소시킬 수 있다.
본 발명의 일 실시예에 따른 분산 렌더링 기반의 클라우드 VR 장치는 레이턴시에 민감한 레이어의 경우 클라이언트 VR 단말에서 렌더링하도록 함으로써 떨림 현상을 제거할 수 있다.
도 1은 본 발명에 따른 클라우드 VR 시스템을 설명하는 도면이다.
도 2는 본 발명에 따른 클라우드 VR 장치의 기능적 구성을 설명하는 도면이다.
도 3은 본 발명에 따른 레이어의 렌더링 분산 처리 및 합성 과정을 설명하는 순서도이다.
도 4는 일 실시예에 따른 레이어 구성을 나타내는 예시도이다.
도 5a-5b는 일반적인 렌더링 처리 및 본 발명에 따른 레이어별 분산 렌더링 처리를 각각 설명하는 도면이다.
본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
한편, 본 출원에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.
"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다"또는 "가지다" 등의 용어는 실시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.
본 발명은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있고, 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.
도 1은 본 발명에 따른 클라우드 VR 시스템을 설명하는 도면이다.
도 1을 참조하면, 클라우드 VR 시스템(100)은 클라이언트 VR 단말(110) 및 클라우드 VR 서버/PC(130)를 포함할 수 있다.
클라이언트 VR 단말(110)은 AR/VR 영상을 재생할 수 있는 사용자 단말에 해당할 수 있다. 예를 들어, 클라이언트 VR 단말(110)은 대표적으로 HMD, VR/AR 글래스 등으로 구현될 수 있으나, 반드시 이에 한정되지 않고, AR/VR 영상을 재생할 수 있는 다양한 디바이스로 구현될 수 있다. 클라이언트 VR 단말(110)은 클라우드 VR 서버/PC(130)와 네트워크를 통해 연결되어 데이터를 주고 받을 수 있다.
일 실시예에서, 클라이언트 VR 단말(110)은 본 발명에 따른 클라우드 VR 장치를 포함하여 구현될 수 있다. 이 경우, 본 발명에 따른 클라우드 VR 장치는 클라이언트 VR 단말(110) 상에서 실행되는 전용 어플리케이션에 해당할 수 있다. 즉, 본 발명에 따른 클라우드 VR 장치는 소정의 기능을 수행하는 독립된 모듈로서 클라이언트 VR 단말(110)에 포함되어 구현될 수 있으며, 클라우드 VR 서버/PC(130)와 상호 연동하여 본 발명에 따른 레이어의 렌더링 분산 처리 및 합성을 위한 구체적 동작을 수행할 수 있다.
또한, 본 발명에 따른 클라우드 VR 장치가 클라이언트 VR 단말(110)에 포함되어 구현되는 경우, 일부 동작은 클라우드 VR 서버/PC(130)에 포함되어 구현될 수도 있다. 예를 들어, 화면에 표시할 내용을 레이어 별로 분리하는 동작 및 분리된 레이어들 중 일부를 렌더링하는 동작은 클라우드 VR 서버/PC(130)에서 수행될 수 있으며, 클라이언트 VR 단말(110)은 클라우드 VR 서버/PC(130)에 의해 렌더링에 포함되지 않은 레이어를 렌더링하여 합성하는 동작을 수행할 수 있다.
클라우드 VR 서버/PC(130)는 클라이언트 VR 단말(110)에서 재생되는 AR/VR 영상을 생성하여 네트워크를 통해 전송하는 컴퓨터 또는 프로그램에 해당하는 서버로 구현될 수 있다. 클라우드 VR 서버/PC(130)는 클라이언트 VR 단말(110)과 블루투스, WiFi, 5G 통신 등과 같은 무선 네트워크로 연결될 수 있고, 네트워크를 통해 클라이언트 VR 단말(110)와 데이터를 송·수신할 수 있다.
또한, 클라우드 VR 서버/PC(130)는 레이어를 기초로 영상 렌더링을 수행할 수 있고, 이때 렌더링된 레이어는 사용자의 시선을 따라다니지 않는 내용에 해당할 수 있다. 이후, 클라우드 VR 서버/PC(130)는 스크린 캡쳐(Screen Capture), 비디오 인코딩(encoding)을 수행할 수 있다. 클라우드 VR 서버/PC(130)는 생성된 영상(Video)을 클라이언트 VR 단말(110)로 무선 네트워크를 통해 전송할 수 있다. 무선 네트워크는 LTE, 5G, WiFi 등을 포함할 수 있다. 클라우드 VR 서버/PC(130)는 클라이언트 VR 단말(110)과 연동하여 동작하는 리모트 어플리케이션(Remote Application)을 설치하여 실행할 수 있다.
도 2는 본 발명에 따른 클라우드 VR 장치의 기능적 구성을 설명하는 도면이다.
도 2를 참조하면, 클라우드 VR 장치(200)는 레이어 분리 처리부(210), 렌더링 분산 처리부(230), 렌더링부(250), 레이어 합성 처리부(270) 및 제어부(290)를 포함할 수 있다. 일 실시예에서, 클라우드 VR 장치(200)를 구성하는 각 기능적 구성들은 클라이언트 VR 단말(110) 또는 클라우드 VR 서버/PC(130)에 포함되어 구현될 수 있으며, 클라이언트 VR 단말(110)과 클라우드 VR 서버/PC(130) 간의 연동에 의해 유기적으로 결합될 수 있다.
레이어 분리 처리부(210)는 클라이언트 VR(Virtual Reality) 단말(110)에 화면 표시할 내용을 레이어 별로 분리할 수 있다. 일 실시예에서, 레이어 분리 처리부(210)는 VR 콘텐츠의 각 장면(scene)을 구성하는 배경 및 객체들을 복수의 레이어 이미지로 분리할 수 있다. 레이어(Layer) 구성은 해당 VR 콘텐츠의 제작 과정에서 디폴트 형태로 미리 지정될 수 있고, 이에 한정되지 않고 변경 설정할 수도 있다. 여기에서, 레이어는 배경 레이어, 원경 레이어, 근경 레이어로 구성될 수 있다. 배경 레이어에는 사용자의 시점에 고정되지 않는 즉, 사용자의 시선을 따라다니지 않는 배경 이미지가 포함될 수 있다. 원경 레이어 및 근경 레이어에는 위치에 따른 객체 이미지가 포함될 수 있고, 특히 사용자의 시점에 고정되어 있는 사용자 인터페이스(UI) 이미지, 텍스트 등의 GUI 요소들에 해당하는 객체는 근경 레이어에 포함될 수 있다. 레이어 분리 처리부(210)는 복수의 객체를 포함하는 영상에서 객체 단위로 레이어를 분리할 수 있다. 레이어 분리 처리부(210)는 복수의 레이어로 구성된 이미지의 경우에는 각 레이어 별로 분리할 수 있다.
렌더링 분산 처리부(230)는 클라이언트 VR(Virtual Reality) 단말(110)과 클라우드 VR 서버(130)의 처리 성능을 기준으로 분리된 레이어에 대해 렌더링할 장치를 결정할 수 있다. 렌더링 분산 처리부(230)는 해당 VR 콘텐츠의 제작 시 포함되어 배포된 SDK(Software development kit)를 이용하여 레이어가 렌더링될 장치를 결정할 수 있다.
SDK(소프트웨어 개발 키트)는 일반적으로 하드웨어 플랫폼, 운영 체제(OS) 또는 프로그래밍 언어 제작사가 제공하는 일련의 툴이다. 일반적으로 기본 SDK에는 컴파일러, 디버거, 애플리케이션 프로그래밍 인터페이스(API)가 포함되지만, 설명서, 라이브러리, 편집기, 런타임/개발환경, 테스트/분석툴, 드라이버, 네트워크 프로토콜 중 적어도 한가지도 포함될 수 있다.
여기에서, 레이어의 렌더링 분산처리를 위해 SDK에는 레이어 별로 렌더링할 장치가 사전 결정되어 정의될 수 있다.
렌더링 분산 처리부(230)는 SDK에 지정된 대로 분리된 레이어 별로 렌더링할 장치를 결정할 수 있고, 이에 한정되지 않고 클라이언트 VR 단말(110)의 처리 성능 및 특성에 따라 레이어가 렌더링될 장치를 선택할 수 있다. 렌더링 분산 처리부(230)는 클라이언트 VR 단말(110) 및 클라우드 VR 서버(130)와 정보를 교환하면서 렌더링 가능 여부를 확인할 수 있다. 특히, 렌더링 분산 처리부(230)는 클라이언트 VR 단말(110)로부터 렌더링 가능 여부에 대한 정보를 전달받아 렌더링 가능 상태를 판단할 수 있다. 렌더링 분산 처리부(230)는 렌더링할 장치인 클라우드 VR 서버(130) 및 클라이언트 VR 단말(110)에 메타데이터(Meta data)를 전달하여 리소스 목록을 공유함으로써 클라우드 VR 서버(130) 및 클라우드 VR 단말(110)에서 중복 렌더링하지 않고 각자 담당하는 레이어를 렌더링할 수 있다. 메타데이터에 포함된 리소스 목록에는 이미지, 3D 데이터 등 렌더링 대상에 대한 정보를 포함할 수 있고 리소스 목록에 따라 리소스의 로딩 및 언로딩을 가변적으로 수행할 수 있다.
일 실시예에서, 렌더링 분산 처리부(230)는 배경 레이어, 원경 레이어, 근경 레이어의 3개 레이어로 분리된 경우 배경 레이어 및 원경 레이어에 대해 렌더링할 장치로 클라우드 VR 서버(130)를 할당하고 근경 레이어에 대해 렌더링할 장치로 클라이언트 VR 단말(110)를 할당할 수 있다. 일 실시예에서, 렌더링 분산 처리부(230)는 GUI 요소에 해당하는 객체를 포함하는 레이어에 대해 렌더링할 장치로 클라이언트 VR 단말(110)를 할당하고 나머지 레이어들에 대해 렌더링할 장치로 클라우드 VR 서버(130)를 할당할 수 있다.
렌더링부(250)는 렌더링 분산 처리부(230)의 할당에 따라 분리된 레이어 중 일부 레이어에 대해 클라우드 VR 서버(130)를 통해 렌더링을 수행하고, 나머지 일부 레이어에 대해 클라이언트 VR 단말(110)을 통해 렌더링을 수행할 수 있다. 렌더링부(250)는 분리된 레이어들을 클라우드 VR 서버(130)와 클라이언트 VR 단말(110)에 분산하여 렌더링을 수행할 수 있다. 일 실시예에서, 렌더링부(250)는 많은 계산량을 요하는 레이어에 대해 클라우드 VR 서버(130)에서 렌더링하여 네트워크 부하를 조절할 수 있다. 렌더링부(250)는 네트워크 상의 레이턴시와 지터에 민감한 레이어에 대해 클라이언트 VR 단말(110)에서 렌더링하여 떨림현상을 제거할 수 있다. 여기에서, 렌더링은 각 레이어별로 수행될 수 있다. 이 경우, 클라우드 VR 서버(130) 및 클라이언트 VR 단말(110)은 복수의 레이어 중 일부 레이어에 대한 렌더링을 수행하게 된다.
렌더링부(250)는 배경 레이어와 원경 레이어를 클라우드 VR 서버(130)를 통해 렌더링을 수행하고, 근경 레이어를 클라이언트 VR 단말(110)을 통해 렌더링을 수행할 수 있다. 일 실시예에서, 렌더링부(250)는 GUI 요소에 해당하는 객체를 포함하는 레이어를 클라이언트 VR 단말(110)을 통해 렌더링을 수행하고 나머지 레이어에 대해 클라우드 VR 서버(130)를 통해 렌더링을 수행할 수 있다. 렌더링부(250)는 클라이언트 VR 단말(110)의 처리 성능 및 특성에 따라 렌더링이 가능하지 않은 상태인 경우에는 클라우드 VR 서버(130)에서 각 레이어별 렌더링을 모두 수행할 수 있도록 한다.
레이어 합성 처리부(270)는 각 레이어별 렌더링된 결과 데이터를 합성하여 하나의 이미지를 생성하여 클라우드 VR 단말(110)을 통해 표시할 수 있다. 레이어 합성 처리부(270)는 렌더링된 각각의 레이어를 하나로 합쳐서 하나의 이미지를 생성할 수 있다. 이때, 배경 레이어에 나머지 원경 레이어 및 근경 레이어가 합쳐져서 하나의 이미지가 될 수 있다. 레이어 합성 처리부(270)는 레이어별로 영상처리를 통해 특수효과를 적용할 수 있다.
제어부(290)는 클라우드 VR 장치(200)의 전체적인 동작을 제어하고, 레이어 분리 처리부(210), 렌더링 분산 처리부(230), 렌더링부(250) 및 레이어 합성 처리부(270) 간의 제어 흐름 또는 데이터 흐름을 관리할 수 있다.
도 3은 본 발명에 따른 레이어의 렌더링 분산 처리 및 합성 과정을 설명하는 순서도이다.
도 3을 참조하면, 클라우드 VR 장치(200)는 레이어 분리 처리부(210)를 통해 화면에 표시할 내용을 레이어(Layer) 별로 분리할 수 있다(단계 S310). 클라우드 VR 장치(200)는 렌더링 분리 처리부(230)를 통해 레이어 별 렌더링할 장치를 결정할 수 있다(단계 S330).
또한, 클라우드 VR 장치(200)는 렌더링부(250)를 통해 분리된 레이어 중 일부 레이어를 클라우드 VR 서버(130)를 통해 렌더링을 수행하고, 분리된 레이어 중 나머지 일부 레이어를 클라이언트 VR 단말(110)을 통해 렌더링을 수행할 수 있다(단계 S350 및 S370). 클라우드 VR 장치(200)는 레이어 합성 처리부(270)를 통해 렌더링된 각 레이어를 합쳐 하나의 이미지를 생성하고 클라우드 VR 단말(110)을 통해 표시할 수 있다(단계 S390).
도 4는 일 실시예에 따른 레이어 구성을 나타내는 예시도이다.
도 4를 참조하면, 클라우드 VR 시스템(100)은 이미지의 레이어 구성을 결정할 수 있고 클라우드 VR 서버(130)와 클라이언트 VR 단말(110) 간의 연동에 의해 레이어 별 렌더링을 분산 처리한 후 각 레이어를 합성하여 네트워크 부하를 줄이고 네트워크 상의 레이턴시 및 지터 등으로 인해 발생할 수 있는 GUI 요소들의 떨림현상을 감소시킬 수 있다. 이때, 레이어 구성은 배경을 나타내는 레이어, 배경 레이어 위에 배경 속 객체를 포함하는 레이어들을 포함할 수 있다.
도 4의 경우, 사용자 시점에서 거리에 따라 HUD(Head Up Display) 레이어, 근경 레이어, 원경 레이어, 배경 레이어로 구성될 수 있다. 근경 레이어와 원경 레이어 사이에는 포함되어 있는 객체 위치에 따라 복수의 레이어들이 포함되어 구성될 수 있다.
도 5a 및 5b는 일반적인 렌더링 처리 및 본 발명에 따른 레이어별 분산 렌더링 처리를 각각 설명하는 도면이다.
클라우드 VR 서버는 CPU, 그래픽 카드 등의 성능이 클라이언트 VR 단말 대비 우수하기 때문에 기본적으로 클라우드 VR 시스템에서는 도 5a에 나타낸 바와 같이, 클라우드 VR 서버에서 화면에 표시할 모든 내용을 렌더링(Rendering)한 후 결과 이미지를 네트워크를 통해 클라이언트 VR 단말로 전송하고, 클라이언트 VR 단말에서는 수신된 결과 이미지 만을 화면에 표시하게 된다. 이때, 네트워크 상의 레이턴시(Latency), 지터(Jitter) 등에 의해 클라이언트 VR 단말의 화면 상에 표시되는 객체의 떨림 현상이 발생할 수 있다. 특히, 근거리 객체일수록 떨림 현상이 커지게 된다.
일 실시예에 따른 클라우드 VR 시스템(100)에서는 화면에 표시할 내용을 레이어 별로 분리하고 분리한 레이어 중 일부 레이어를 클라우드 VR 서버(130)를 통해 렌더링한 후 렌더링 결과를 메타 데이터와 함께 네트워크를 통해 클라이언트 VR 단말(110)로 전송하고, 클라이언트 VR 단말(110)에서는 수신된 메타 데이터를 이용하 렌더링 결과 중 렌더링하지 않은 나머지 레이어를 렌더링한 후 합성하여 하나의 이미지를 생성하여 화면에 표시하게 된다. 이때, 연산량이 많은 배경 레이어 및 원거리 객체를 포함하는 원경 레이어의 경우 처리 성능이 상대적으로 우수한 클라우드 VR 서버(130)에서 렌더링 하고, 레이턴시와 지터에 민감한 근거리 객체를 포함하는 근경 레이어의 경우 클라이언트 VR 단말(110)에서 렌더링 함으로써 클라이언트 VR 단말(110)의 화면 상에 표시되는 객체의 떨림 현상을 감소 또는 제거시킬 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
100: 클라우드 VR 시스템
110: 클라이언트 VR 단말 130: 클라우드 VR 서버/PC
200: 클라우드 VR 장치
210: 레이어 분리 처리부 230: 렌더링 분산 처리부
250: 렌더링부 270: 레이어 합성 처리부
290: 제어부

Claims (6)

  1. 클라이언트 VR 단말에 화면 표시할 내용을 배경 및 객체 단위의 레이어 별로 분리하는 레이어 분리 처리부;
    레이어 별 렌더링할 장치를 결정하는 렌더링 분산 처리부;
    상기 레이어 별 결정된 렌더링할 장치에 따라 상기 분리된 레이어 중 일부 레이어를 클라우드 VR 서버를 통해 렌더링을 수행한 후 렌더링 결과를 네트워크를 통해 상기 클라이언트 VR 단말로 전송하고, 상기 렌더링 결과 중 렌더링하지 않은 나머지 일부 레이어를 상기 클라이언트 VR 단말을 통해 렌더링을 수행하는 렌더링부; 및
    상기 렌더링된 각 레이어를 합쳐 하나의 이미지를 생성하고 상기 클라이언트 VR 단말을 통해 표시하는 레이어 합성 처리부를 포함하되,
    상기 렌더링 분산 처리부는
    상기 레이어가 사용자 시점에서 거리에 따라 배경 레이어, 원경 레이어 및 근경 레이어로 분리된 경우에 상기 배경 레이어 및 원경 레이어에 대해 렌더링할 장치로 상기 클라우드 VR 서버를 할당하고 네트워크 상의 레이턴시 및 지터에 민감한 GUI(Graphical User Interface) 요소들에 해당하는 객체가 포함되는 상기 근경 레이어에 대해 렌더링할 장치로 상기 클라이언트 VR 단말을 할당하여 렌더링을 통해 상기 객체의 떨림현상이 제거되도록 하는 것을 특징으로 하는 분산 렌더링 기반의 클라우드 VR 장치.
  2. 삭제
  3. 제1항에 있어서, 상기 렌더링 분산 처리부는
    상기 클라이언트 VR 단말과 상기 클라우드 VR 서버의 처리 성능을 기준으로 상기 분리된 레이어 별 렌더링할 장치를 결정하는 것을 특징으로 하는 분산 렌더링 기반의 클라우드 VR 장치.
  4. 제1항에 있어서, 상기 렌더링 분산 처리부는
    상기 클라이언트 VR 단말과 상기 클라우드 VR 서버에 메타 데이터를 전달하여 렌더링 대상에 대한 리소스 목록을 공유하고 상기 리소스 목록에 따라 리소스의 로딩 및 언로딩을 가변적으로 수행하는 것을 특징으로 하는 분산 렌더링 기반의 클라우드 VR 장치.
  5. 삭제
  6. 제1항에 있어서, 상기 렌더링부는
    상기 클라이언트 VR 단말의 처리 성능 및 특성에 따라 렌더링이 가능하지 않은 상태인 경우 상기 클라우드 VR 서버를 통해 상기 분리된 레이어 별 렌더링을 모두 수행하는 것을 특징으로 하는 분산 렌더링 기반의 클라우드 VR 장치.
KR1020210054465A 2021-04-27 2021-04-27 분산 렌더링 기반의 클라우드 vr 장치 KR102656014B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210054465A KR102656014B1 (ko) 2021-04-27 2021-04-27 분산 렌더링 기반의 클라우드 vr 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210054465A KR102656014B1 (ko) 2021-04-27 2021-04-27 분산 렌더링 기반의 클라우드 vr 장치

Publications (2)

Publication Number Publication Date
KR20220147381A KR20220147381A (ko) 2022-11-03
KR102656014B1 true KR102656014B1 (ko) 2024-04-11

Family

ID=84041023

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210054465A KR102656014B1 (ko) 2021-04-27 2021-04-27 분산 렌더링 기반의 클라우드 vr 장치

Country Status (1)

Country Link
KR (1) KR102656014B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102238670B1 (ko) * 2019-10-31 2021-04-09 박재범 사용자의 유휴 자원을 활용한 분산 렌더링 시스템 및 분산 렌더링 방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101660514B1 (ko) * 2014-12-02 2016-09-29 (주)두리반테크 분산 렌더링 시스템
KR102166158B1 (ko) 2018-12-19 2020-10-15 (주)이머시브캐스트 입체 영상 생성 장치, 입체 영상 복원 장치와 이를 포함하는 입체 영상 재생 시스템

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102238670B1 (ko) * 2019-10-31 2021-04-09 박재범 사용자의 유휴 자원을 활용한 분산 렌더링 시스템 및 분산 렌더링 방법

Also Published As

Publication number Publication date
KR20220147381A (ko) 2022-11-03

Similar Documents

Publication Publication Date Title
US9455931B2 (en) Load balancing between processors
JP2022023769A (ja) サーバリソースを割り当てるための方法、装置、電子デバイス、コンピュータ可読記憶媒体及びコンピュータプログラム
US9131021B2 (en) Dynamic screen sharing for optimal performance
US20160110908A1 (en) Image Update Method, System, and Apparatus
US20140074911A1 (en) Method and apparatus for managing multi-session
US11205254B2 (en) System and method for identifying and obscuring objectionable content
US8799900B1 (en) Sharing webcam between guest and host OS
EP3311565B1 (en) Low latency application streaming using temporal frame transformation
JP2013546043A (ja) 即時リモートレンダリング
JP2014135013A (ja) 画像転送方法、サーバ機器及びプログラム
US20050179691A1 (en) Window system 2D graphics redirection using direct texture rendering
JP2022021295A (ja) ミニアプリのためのデータ処理方法および装置、電子機器、記憶媒体並びにコンピュータプログラム
US9392047B1 (en) Facilitating application compatibility across devices
CN113778593B (zh) 云桌面控制方法、装置、电子设备、存储介质及程序产品
CN116546228B (zh) 用于虚拟场景的推流方法、装置、设备及存储介质
KR102656014B1 (ko) 분산 렌더링 기반의 클라우드 vr 장치
US20190130475A1 (en) Conversation as a platform to increase task productivity for end users
US10600014B2 (en) Facilitating provisioning in a mixed environment of locales
US20230229438A1 (en) Kernels as a service
US10560727B2 (en) Server structure for supporting multiple sessions of virtualization
US10157594B2 (en) Layered content display system
CN112789830A (zh) 用于信道响应的多模式信道不可知渲染的机器人平台
US20100299682A1 (en) Method and apparatus for executing java application
US20230122666A1 (en) Cloud xr-based program virtualizing method
KR102669261B1 (ko) 클라우드 xr 기반의 프로그램 가상화 방법

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right