KR20160029596A - 렌더링 수준 제어 방법 및 장치 - Google Patents

렌더링 수준 제어 방법 및 장치 Download PDF

Info

Publication number
KR20160029596A
KR20160029596A KR1020140119370A KR20140119370A KR20160029596A KR 20160029596 A KR20160029596 A KR 20160029596A KR 1020140119370 A KR1020140119370 A KR 1020140119370A KR 20140119370 A KR20140119370 A KR 20140119370A KR 20160029596 A KR20160029596 A KR 20160029596A
Authority
KR
South Korea
Prior art keywords
rendering
screen
user
sight
level
Prior art date
Application number
KR1020140119370A
Other languages
English (en)
Other versions
KR102244620B1 (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 KR1020140119370A priority Critical patent/KR102244620B1/ko
Priority to US14/667,458 priority patent/US9720497B2/en
Publication of KR20160029596A publication Critical patent/KR20160029596A/ko
Application granted granted Critical
Publication of KR102244620B1 publication Critical patent/KR102244620B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/36Level of detail

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Graphics (AREA)
  • Computing Systems (AREA)
  • Geometry (AREA)
  • Controls And Circuits For Display Device (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

렌더링 장치가, 사용자의 시선에 관한 정보를 획득하고, 획득된 정보에 기초하여, 스크린 상에 디스플레이되는 그래픽 영상의 정밀도(Level-of-Detail)를 나타내는 렌더링 수준(rendering quality)을 결정하고, 결정된 렌더링 수준에 따라 스크린 상에 디스플레이되는 그래픽 영상의 렌더링을 수행하는 방법이 개시된다.

Description

렌더링 수준 제어 방법 및 장치{METHOD AND APPARATUS FOR CONTROLLING RENDERING QUALITY}
개시된 실시예들은 실시간으로 렌더링 수준을 제어하는 방법 및 장치에 관한 것이다.
GPU(Graphics Processing Unit)는 그래픽 처리를 위한 고성능의 처리 장치로, 하나 이상의 정점(vertex)으로 구성된 프리미티브(primitive)들을 스크린 상의 픽셀(pixel)들로 변환하고 각 픽셀에 맞는 컬러 값을 계산함으로써, 스크린 상에 디스플레이될 영상을 생성한다. 3차원 그래픽 렌더링은 DirectX 혹은 OpenGL과 같이 표준이 명시하는 API를 사용하여 프로그래밍될 수 있다.
API(Appication Program Interface)는 렌더링 파이프라인(rendering pipeline)의 여러 단계에서, 렌더링되는 3차원 그래픽의 정밀도(Level-of-Detail) 즉, 렌더링 수준을 설정할 수 있게 한다. 렌더링 수준의 일례로, 픽셀(pixel)에 텍스처(texture)를 입힐 때, 텍스처를 몇 개의 픽셀들로 샘플링할 것인가를 나타내는 샘플링 레이트(sampling rate)를 들 수 있다. 보다 많은 픽셀들로 샘플링하면, 스크린 상의 이미지를 보다 부드럽게 처리할 수 있다. 따라서, 샘플링 레이트가 클수록 보다 정밀한 렌더링 결과물을 얻을 수 있으나, 보다 많은 연산을 필요로 한다. 즉, 렌더링 수준은 GPU의 연산량과 비례한다.
연산량의 증가는 GPU에서 소모하는 전력의 상승을 초래한다. 즉, 렌더링 결과물의 수준과 GPU가 소모하는 전력 간에 상충 관계(trade-off relation)가 형성된다. 과거에는 3차원 게임, 비행 시뮬레이터와 같은 특별한 효과를 구현하기 위해 3차원 렌더링 기법을 사용했으나, 근래에는 디바이스 상의 일반적인 UX(user experience)에서도 3차원 렌더링을 응용하여 미려한 효과를 나타내고 있다. 따라서, 최근의 디바이스에서는 3차원 렌더링에 의한 전력 소모가 점점 더 큰 비중을 차지하고 있다.
렌더링 수준은 프로그램 모델링 단계에서 개발자에 의해 설정되거나, 프로그램 실행 시 사용자에 의해 설정될 수 있다. 따라서, 사용자의 사용 상태에 무관하게 기 설정된 렌더링 수준에 따라 렌더링이 수행된다.
개시된 일 실시예는 사용자가 스크린을 보는 상태에 따라 실시간으로 렌더링 수준을 제어하는 방법 및 이를 위한 장치를 제공한다.
개시된 다른 실시예는 사용자의 생체 정보를 이용하여 렌더링 수준을 결정하는 렌더링 수준 제어 방법 및 이를 위한 장치를 제공한다.
일 실시예에 따른 렌더링 방법은 사용자의 시선에 관한 정보를 획득하는 단계; 상기 획득된 정보에 기초하여 렌더링 수준(rendering quality)을 결정하는 단계; 및 상기 결정된 렌더링 수준에 따라 상기 그래픽 영상의 렌더링을 수행하는 단계를 포함한다.
또한, 상기 렌더링 수준은, 스크린 상에 디스플레이되는 그래픽 영상의 정밀도(Level-of-Detail)를 나타낸다.
또한, 상기 시선에 관한 정보는, 상기 스크린에 대한 상기 시선의 위치, 상기 스크린에 대한 상기 시선의 이동 방향, 및 상기 사용자로부터 상기 스크린까지의 거리 중 적어도 하나를 포함할 수 있다.
또한, 상기 획득하는 단계는, 상기 시선에 관한 정보를 일정 시간 간격으로 획득할 수 있다.
또한, 상기 시선에 관한 정보는 상기 사용자의 눈으로부터 상기 스크린까지의 거리를 포함하고, 상기 비교하는 단계는, 상기 제2 시점에 획득된 상기 사용자의 눈으로부터 상기 스크린까지의 거리를 기준값과 비교하는 단계를 포함하고, 상기 기준값은 상기 제1 시점에 획득된 상기 사용자의 눈으로부터 상기 스크린까지의 거리 및 소정의 임계값 중 적어도 하나를 포함할 수 있다.
또한, 상기 획득하는 단계는, 상기 획득된 정보를 이용하여, 상기 시선의 방향과 상기 스크린의 법선 방향이 이루는 각도를 획득하는 단계를 더 포함하고, 상기 비교하는 단계는, 상기 제2 시점에 획득된 상기 시선의 방향과 상기 스크린의 법선 방향이 이루는 각도를 기준값과 비교하는 단계를 포함하고, 상기 기준값은 상기 제1 시점에 획득된 상기 시선의 방향과 상기 스크린의 법선 방향이 이루는 각도 및 소정의 임계값 중 적어도 하나를 포함할 수 있다.
또한, 상기 시선에 관한 정보는, 상기 스크린에 대한 상기 시선의 위치 및 상기 시선의 이동 방향 중 적어도 하나를 포함하고, 상기 렌더링 수준을 결정하는 단계는, 상기 시선에 관한 정보에 기초하여 상기 시선이 상기 스크린을 향하는지 여부를 판단하는 단계; 및 상기 사용자의 시선이 상기 스크린을 향하지 않는 것으로 판단된 경우, 상기 렌더링 수준을 기 설정된 렌더링 수준보다 낮은 수준으로 결정하는 단계를 포함할 수 있다.
또한, 상기 사용자의 시선이 상기 스크린을 향하는 것으로 판단된 경우, 상기 사용자의 시선이 상기 스크린을 향하는 상태가 지속되고 있는 시간인, 스크린 응시 시간을 획득하는 단계; 상기 스크린 응시 시간을 소정의 임계값과 비교하는 단계; 및 상기 비교 결과에 기초하여, 상기 렌더링 수준을 변경하는 단계를 포함하는 포함할 수 있다.
또한, 상기 렌더링 수준에 관한 정보는, 오브젝트(object)당 정점(vertex)의 개수, 안티-앨리어싱(anti-aliasing) 레벨, 샘플링 레이트(sampling rate), 밉맵(mipmap) 레벨, 해상도(resolution) 및 테셀레이션(tessellation) 레벨 중 적어도 하나를 포함할 수 있다.
또한, 상기 획득하는 단계는, 상기 사용자로부터 상기 스크린까지의 거리 및 상기 시선의 방향과 상기 스크린의 법선 방향이 이루는 각도를 획득하는 단계를 포함하고, 상기 렌더링 수준을 결정하는 단계는, 상기 획득된 거리 및 상기 획득된 각도를 이용한 수학식 1
Figure pat00001
의 결과값에 기초하여, 상기 렌더링 수준을 결정하는 단계를 포함하며, 상기 수학식 1에 있어서, 상기 d는 상기 사용자로부터 상기 영상이 디스플레이되는 스크린까지의 거리를, 상기 는 상기 사용자의 시선 방향이 상기 스크린의 법선 방향과 이루는 각도를, 상기 w_1 는 0 이상의 실수로 상기 d에 대한 가중치를, 상기 w_2는 0 이상의 실수로 상기 에 대한 가중치를 나타낸다.
또한, 상기 렌더링을 수행하는 단계는, 적어도 두 개의 임계값에 의해 구분되는 각각의 구간에 대응하여 지정된 렌더링 수준 중, 상기 결과값이 속하는 구간에 대응하는 렌더링 수준에 따라, 상기 스크린에 디스플레이되는 그래픽 영상의 렌더링을 수행하는 단계를 포함할 수 있다.
또한, 상기 렌더링 수준을 결정하는 단계는, 상기 시선에 관한 정보 및 상기 사용자의 기 저장된 생체 정보를 이용하여, 상기 렌더링 수준을 결정하는 단계를 포함할 수 있다.
다른 실시예에 따른 렌더링 수준 제어 장치는, 사용자의 시선에 관한 정보를 획득하는 획득부; 및 상기 획득된 정보에 기초하여, 스크린 상에 디스플레이되는 그래픽 영상의 정밀도(Level-of-Detail)를 나타내는 렌더링 수준(rendering quality)을 결정하는 결정부를 포함하고, 상기 시선에 관한 정보는, 상기 스크린에 대한 상기 시선의 위치, 상기 스크린에 대한 상기 시선의 이동 방향, 및 상기 사용자로부터 상기 스크린까지의 거리 중 적어도 하나를 포함한다.
또 다른 실시예에 따른 디바이스는, 사용자를 촬영하여, 상기 사용자의 안구 영역을 인식하고 상기 사용자의 시선을 감지하는 감지부; 상기 감지된 시선을 전기적인 신호로 변환한 데이터를 이용하여, 상기 사용자의 시선에 관한 정보를 획득하는 획득부; 상기 획득된 정보에 기초하여, 스크린 상에 디스플레이되는 그래픽 영상의 정밀도(Level-of-Detail)를 나타내는 렌더링 수준(rendering quality)을 결정하는 결정부; 및 상기 결정된 렌더링 수준에 따라 상기 스크린 상에 디스플레이되는 상기 그래픽 영상의 렌더링을 수행하는 렌더링부를 포함한다.
또 다른 실시예에 따라 상기 렌더링 수준 제어 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
또 다른 실시예에 따라 하드웨어와 결합되어 상기 렌더링 수준 제어 방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램을 제공한다.
일 실시예에 따른 렌더링 수준 제어 방법은 사용자가 스크린을 보는 상태에 따라 높은 수준의 렌더링이 불필요한 경우 렌더링 수준을 낮출 수 있다. 이에 따라, 불필요한 리소스 사용을 감소시킬 수 있고, GPU에서의 전력 소모도 감소시킬 수 있다.
도 1은 사용자의 시선에 관한 정보에 기초하여 렌더링 수준을 제어하는 시스템의 전체 개요도이다.
도 2는 일 실시예에 따른 렌더링 방법을 설명하기 위한 흐름도이다.
도 3은 일 실시예에 따른 렌더링 수준을 결정하는 방법을 설명하기 위한 흐름도이다.
도 4는 다른 실시예에 따른 렌더링 수준을 결정하는 방법을 설명하기 위한 흐름도이다.
도 5는 일 실시예에 따라, 사용자의 시선이 스크린을 향하는지 여부에 기초하여 렌더링 수준을 결정하는 방법을 설명하기 위한 흐름도이다.
도 6은 도 5에 도시된 방법을 설명하기 위한 예시도이다.
도 7는 다른 실시예에 따라, 사용자와 스크린 사이의 거리에 기초하여 렌더링 수준을 결정하는 방법을 설명하기 위한 흐름도이다.
도 8은 도 7에 도시된 방법을 설명하기 위한 예시도이다.
도 9는 또 다른 실시예에 따라, 사용자의 시선 방향과 스크린의 법선 방향이 이루는 각도에 기초하여 렌더링 수준을 결정하는 방법을 설명하기 위한 흐름도이다.
도 10은 도 9에 도시된 방법을 설명하기 위한 예시도이다.
도 11은 또 다른 실시예에 따라, 사용자의 스크린 응시 시간에 기초하여 렌더링 수준을 결정하는 방법을 설명하기 위한 흐름도이다.
도 12는 일 실시예에 따라, 사용자의 시선의 방향 및 사용자와 스크린 사이의 거리에 기초하여 렌더링 수준을 결정하는 방법을 설명하기 위한 흐름도이다.
도 13은 일 실시예에 따라, 렌더링 수준에 따른 렌더링 제어를 위한 룩-업 테이블(look-up table)을 나타내는 예시도이다.
도 14는 렌더링 수준을 제어하는 장치의 블록도이다.
도 15는 일 실시예에 따른 디바이스의 블록도이다.
본 실시예들은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나 이는 특정한 실시 형태에 대해 범위를 한정하려는 것이 아니며, 개시된 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 실시예들을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 용어들에 의해 한정되어서는 안 된다. 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 권리범위를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
명세서 전체에서, “렌더링 수준(rendering quality)”이란, 스크린 상에 디스플레이되는 그래픽 영상의 정밀도(Level-of-Detail)를 레벨화하여 나타낸 것을 의미한다. 렌더링 수준에 관한 정보에는 예를 들어, 오브젝트(object)당 정점(vertex)의 개수, 안티-앨리어싱(anti-aliasing) 레벨, 샘플링 레이트(sampling rate), 밉맵(mipmap) 레벨, 해상도(resolution) 및 테셀레이션(tessellation) 레벨, 오브젝트(object) 당 정점(vertices)의 개수 등이 포함될 수 있으나, 이에 제한되지 않는다. 렌더링 수준이 결정되면, 렌더링 수준에 관한 정보들에 대한 수치 및 적용 여부가 결정될 수 있다.
이하, 실시예를 첨부도면을 참조하여 상세히 설명하기로 하며, 첨부 도면을 참조하여 설명함에 있어, 동일하거나 대응하는 구성 요소는 동일한 도면번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
도 1은 사용자의 시선에 관한 정보에 기초하여 렌더링 수준을 제어하는 시스템의 전체 개요도이다.
도 1에 도시된 바와 같이, 렌더링 장치(102)는 사용자(110)가 그래픽 영상이 디스플레이되는 스크린(106)을 보는 상태에 따라 디바이스(100)에서 구현되는 디지털 영상의 렌더링 수준을 자동으로 제어할 수 있다.
디바이스(100)는, 예를 들어, TV, 스마트폰, 태블릿 PC, PC, 노트북 컴퓨터(laptop computer), 전자북 단말기, 스마트 TV, 디지털방송용 단말기, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 네비게이션을 포함할 수 있으나, 이에 제한되지 않는다.
사용자(110)가 그래픽 영상이 디스플레이되는 스크린(106)을 보는 상태는, 사용자(110)의 시선이 스크린(106)을 향하는지 여부, 사용자(110)의 시선이 스크린(106)을 향하는 상태가 지속되고 있는 시간, 사용자(110)의 시선(120)의 방향이 스크린(106)과 이루는 각도 및 사용자(110)로부터 스크린(106)까지의 거리를 포함할 수 있으나, 이에 제한되지 않는다. 예를 들어, 사용자의 시선(120)의 방향이 스크린(106)과 이루는 각도는 사용자(110)의 시선(120)의 방향이 스크린(106)의 법선 방향(108)과 이루는 각도를 의미할 수 있다. 또한, 예를 들어, 사용자(110)로부터 스크린(106)까지의 거리는 사용자(110)의 눈으로부터 스크린(106) 사이의 거리를 의미할 수 있다.
이미지 센싱 카메라(104)는 사용자(110)를 촬영하여, 사용자(110)의 안구를 인식하여 사용자(110)의 시선(120)의 방향 및 사용자(110)와 스크린(106) 사이의 거리를 검출할 수 있다. 시선(120)의 방향에 대한 정보는 스크린(106)에 대한 시선의 위치 및 시선의 이동 방향 등을 포함할 수 있다.
렌더링 장치(102)는 사용자(110)가 스크린을 보고 있지 않은 경우, 사용자(110)로부터 스크린(106)까지의 거리가 먼 경우, 사용자의 시선(120) 방향이 스크린(106)의 법선 방향(108)과 이루는 각도가 큰 경우 등에 있어서, 렌더링 수준을 기 설정된 렌더링 수준보다 낮출 수 있다. 기 설정된 렌더링 수준이란 프로그램 모델링 단계에서 결정되거나, 프로그램 실행 시 사용자 설정에 의해 설정된 렌더링 수준을 의미한다. 따라서, 렌더링 장치(102)는 고품질의 그래픽이 필요하지 않은 경우, 기 설정된 렌더링 수준을 낮추어 불필요한 리소스(resource) 사용을 줄일 수 있다.
도 2는 일 실시예에 따른 렌더링 방법을 설명하기 위한 흐름도이다.
단계 210에서, 렌더링 장치(102)는 사용자(110)의 시선에 관한 정보를 획득한다.
사용자(110)의 시선에 관한 정보는, 스크린(106)에 대한 시선의 위치, 스크린(106)에 대한 시선의 이동 방향, 및 사용자(110)로부터 스크린(106)까지의 거리 중 적어도 하나를 포함한다.
일 실시예에서, 렌더링 장치(102)는 정보를 일정 시간 간격으로 획득할 수 있다.
렌더링 장치(102)는 안구 인식 센서로부터 사용자(110)의 시선 방향에 대한 정보를 획득할 수 있다. 시선 방향에 대한 정보는 스크린(106)에 대한 시선의 위치 및 시선의 이동 방향 등을 포함할 수 있다.
렌더링 장치(102)는 거리 측정 센서로부터 사용자(110)와 스크린(106) 사이의 거리 정보를 획득할 수 있다. 예를 들어, 렌더링 장치(102)는 사용자(110)의 눈으로부터 스크린(106)사이의 거리 정보를 획득할 수 있다.
단계 220에서, 렌더링 장치(102)는 획득된 정보에 기초하여, 렌더링 수준(rendering quality)을 결정한다.
렌더링 수준은, 스크린(106) 상에 디스플레이되는 그래픽 영상의 정밀도(Level-of-Detail)를 나타낸다.
렌더링 장치(102)는 사용자(110)의 시선이 스크린(106)을 향하고 있는지 여부, 사용자(110)와 스크린(106) 사이의 거리, 및 사용자(110)의 시선 방향과 스크린(106)이 이루는 각도 중 적어도 하나를 이용하여, 렌더링 수준을 결정할 수 있다.
일 실시예에 따르면, 렌더링 장치(102)는 사용자(110)가 스크린을 보고 있지 않은 경우, 렌더링 수준을 기 설정된 렌더링 수준보다 낮출 수 있다. 이에 대한 상세한 설명은 도 5 및 도 6을 참조하여 후술한다.
다른 실시예에 따르면, 렌더링 장치(102)는 사용자(110)로부터 스크린(106)까지의 거리가 먼 경우, 렌더링 수준을 기 설정된 렌더링 수준보다 낮출 수 있다. 이에 대한 상세한 설명은 도 7 및 도 8을 참조하여 후술한다.
또 다른 실시예에 따르면, 렌더링 장치(102)는 사용자(110)의 시선 방향이 스크린(106)의 법선 방향(108)과 이루는 각도가 큰 경우, 렌더링 수준을 기 설정된 렌더링 수준보다 낮출 수 있다. 이에 대한 상세한 설명은 도 9 및 도 10을 참조하여 후술한다.
또 다른 실시예에 따르면, 렌더링 장치(102)는 사용자(110)가 장시간 스크린(106)을 응시하고 있는 경우, 렌더링 수준을 기 설정된 렌더링 수준보다 낮출 수 있다. 이에 대한 상세한 설명은 도 11을 참조하여 후술한다.
렌더링 장치(102)는 시선에 관한 정보를 일정 시간 간격으로 획득하여, 제1 시점에 획득된 정보 및 제2 시점에 획득된 정보를 비교할 수 있다. 렌더링 장치(102)는 비교 결과에 기초하여, 그래픽 영상의 렌더링 수준을 변경할 수 있다.
렌더링 장치(102)는 획득된 정보에 기초하여 그래픽 영상의 기 설정된 렌더링 수준을 변경할지 여부를 결정할 수 있다. 렌더링 장치(102)는 렌더링 수준을 변경하는 것으로 결정한 경우, 새로운 렌더링 수준을 결정할 수 있다. 렌더링 장치(102)는 렌더링 수준을 변경하지 않는 것으로 결정한 경우, 기 설정된 렌더링 수준을 유지할 수 있다.
일 실시예에 따른 렌더링 장치(102)는 현재 획득된 정보를 직전에 획득된 정보와 비교하여 렌더링 수준을 변경할지 여부를 결정할 수 있다. 이에 대한 상세한 설명은 도 3을 참조하여 후술한다.
다른 실시예에 따른 렌더링 장치(102)는 획득된 정보를 임계값과 비교하여 렌더링 수준을 변경할지 여부를 결정할 수 있다. 이에 대한 상세한 설명은 도 4를 참조하여 후술한다.
일 실시예에 따른 렌더링 장치(102)는 렌더링 수준을 변경하는 것으로 결정한 경우, 기 설정된 렌더링 수준에 관한 정보를 이용하여, 새로운 렌더링 수준에 관한 정보에 대한 수치 및 적용 여부를 결정할 수 있다.
예를 들어, 렌더링 수준에 관한 정보가 오브젝트 당 정점의 개수인 경우, 렌더링 장치(102)는 수학식 2에 의해 산출된 값을 새로운 렌더링 수준에 따른 오브젝트 당 정점의 개수로 결정할 수 있다.
Figure pat00002
여기서,
Figure pat00003
는 기 설정된 렌더링 수준에 따른 오브젝트 당 정점의 개수를 나타내고,
Figure pat00004
는 새로운 렌더링 수준에 따른 오브젝트 당 정점의 개수를 나타낸다. c는 렌더링 수준에 관한 정보에 대한 수치를 조정하기 위한 계수를 나타낸다.
c가 0보다 크고 1보다 작은 경우, 새로운 렌더링 수준에 따른 오브젝트 당 정점의 개수는 기 설정된 렌더링 수준에 따른 오브젝트 당 정점의 개수보다 낮게 결정된다. c는 프로그램 시작 전 미리 설정되어 저장될 수 있다. 예를 들어, c는 사용자 입력에 기초하여 결정될 수 있다.
Figure pat00005
가 자연수가 아닌 경우, 새로운 렌더링 수준에 따른 오브젝트 당 정점의 개수는
Figure pat00006
와 가장 근사한 자연수로 결정될 수 있다.
다른 실시예에 따른 렌더링 장치(102)는 렌더링 수준을 변경하는 것으로 결정한 경우, 획득된 정보를 이용하여 새로운 렌더링 수준에 관한 정보에 대한 수치 및 적용 여부를 결정할 수 있다.
예를 들어, 렌더링 수준에 관한 정보가 오브젝트 당 정점의 개수이고, 획득된 정보가 사용자(110)와 스크린(106) 사이의 거리인 경우, 렌더링 장치(102)는 수학식 3에 의해 산출된 값을 새로운 렌더링 수준에 따른 오브젝트 당 정점의 개수로 결정할 수 있다.
Figure pat00007
여기서,
Figure pat00008
는 기 설정된 렌더링 수준에 따른 오브젝트 당 정점의 개수를 나타내고,
Figure pat00009
는 새로운 렌더링 수준에 따른 오브젝트 당 정점의 개수를 나타내고,
Figure pat00010
은 렌더링 수준에 관한 정보에 대한 수치를 조정하기 위한 계수를 나타내며, D는 사용자(110)와 스크린(106) 사이의 거리를 나타낼 수 있다. 즉, 렌더링 장치(102)는 사용자(110)와 스크린(106) 사이의 거리가 클수록 렌더링 수준에 따른 오브젝트 당 정점의 개수를 더 낮게 결정할 수 있다.
Figure pat00011
가 자연수가 아닌 경우, 새로운 렌더링 수준에 따른 오브젝트 당 정점의 개수는
Figure pat00012
와 가장 근사한 자연수로 결정될 수 있다.
다른 예로, 렌더링 수준에 관한 정보가 오브젝트 당 정점의 개수이고, 획득된 정보가 사용자(110)의 시선 방향이 스크린(106)과 이루는 각도인 경우, 렌더링 장치(102)는 수학식 4에 의해 산출된 값을 새로운 렌더링 수준에 따른 오브젝트 당 정점의 개수로 결정할 수 있다.
Figure pat00013
여기서,
Figure pat00014
는 기 설정된 렌더링 수준에 따른 오브젝트 당 정점의 개수를 나타내고,
Figure pat00015
는 새로운 렌더링 수준에 따른 오브젝트 당 정점의 개수를 나타내고,
Figure pat00016
는 렌더링 수준에 관한 정보에 대한 수치를 조정하기 위한 계수를 나타내며, θ 는 사용자(110)의 시선 방향이 스크린(106)의 법선 방향과 이루는 각도를 나타낼 수 있다. 즉, 렌더링 장치(102)는 사용자(110)의 시선 방향과 스크린(106)의 법선 방향이 이루는 각도가 클수록 렌더링 수준에 따른 오브젝트 당 정점의 개수를 더 낮게 결정할 수 있다.
Figure pat00017
가 자연수가 아닌 경우, 새로운 렌더링 수준에 따른 오브젝트 당 정점의 개수는
Figure pat00018
와 가장 근사한 자연수로 결정될 수 있다.
또 다른 실시예에 따른 렌더링 장치(102)는 렌더링 수준을 변경하는 것으로 결정한 경우, 사용자(110)의 시력과 같은 생체 정보를 이용하여, 새로운 렌더링 수준에 관한 정보에 대한 수치 및 적용 여부를 결정할 수 있다.
예를 들어, 수학식 2 내지 수학식 4의 렌더링 수준에 관한 정보에 대한 수치를 조정하기 위한 계수는 사용자(110)의 생체 정보에 기초하여 결정될 수 있다.
사용자(110)의 생체 정보는 프로그램 실행 전에 입력되어 저장부(미도시)에 저장될 수 있다.
또 다른 실시예에 따른 렌더링 장치(102)는 렌더링 수준을 변경하는 것으로 결정한 경우, 디바이스(100)의 온도를 이용하여, 새로운 렌더링 수준에 관한 정보에 대한 수치 및 적용 여부를 결정할 수 있다.
예를 들어, 수학식 2 내지 수학식 4의 렌더링 수준에 관한 정보에 대한 수치를 조정하기 위한 계수는 디바이스(100)의 온도에 기초하여 결정될 수 있다. 렌더링 장치(102)는 디바이스(100)의 온도가 높아짐에 따라 GPU가 처리해야 할 양을 줄여, 디바이스(100)의 안정성을 확보할 수 있다.
또 다른 실시예에 따른 렌더링 장치(102)는 렌더링 수준을 변경하는 것으로 결정한 경우, 사용자(110)와 스크린(106) 사이의 거리, 사용자(110)의 시선 방향과 스크린(106)의 법선 방향 사이의 각도, 및 사용자(110)의 생체 정보 중 적어도 이 이상을 이용하여, 새로운 렌더링 수준에 관한 정보에 대한 수치 및 적용 여부를 결정할 수 있다.
단계 230에서, 렌더링 장치(102)는 결정된 렌더링 수준에 따라 스크린(106)에 디스플레이되는 그래픽 영상의 렌더링을 수행한다.
렌더링 장치(102)는 렌더링 수준을 설정할 수 있는 렌더링 파이프라인(rendering pipeline)의 각각의 단계에 결정된 렌더링 수준을 적용하여 렌더링을 수행할 수 있다.
렌더링 파이프라인이란, 3차원 그래픽 이미지를 2차원 래스터(raster) 이미지로 표현하기 위한 단계적인 방법을 의미한다. 여기서 래스터란, 컴퓨터에서 화상 정보를 표현하는 하나의 방법으로, 이미지를 2차원 배열 형태의 픽셀로 구성하고 이 점들의 모습을 조합하여, 일정한 간격의 픽셀들로 하나의 화상 정보를 표현하는 것을 말한다. 즉, 렌더링 파이프라인은 3차원 세계에 대한 기하학적 표현과 그 세계를 바라보는 관점을 정의하는 가상 카메라를 이용해 2차원 이미지를 만들어내는 과정을 의미한다.
렌더링 수준을 나타내는 정보는, 안티-앨리어싱(anti-aliasing) 레벨, 샘플링 레이트(sampling rate), 밉맵(mipmap) 레벨, 해상도(resolution) 및 테셀레이션(tessellation) 레벨 중 적어도 하나를 포함할 수 있지만, 이에 제한되지 않는다. 렌더링 수준이 결정되면, 렌더링 수준을 나타내는 정보들에 대한 수치 및 적용 여부가 결정될 수 있다. 이에 대한 상세한 설명은 도 13을 참조하여 후술한다.
안티-앨리어싱이란 계단 현상을 없애기 위한 영상 처리 방법으로 이미지의 가장 자리에 배경색과 이미지 색상의 중간 색상을 단계적으로 채워줌으로써, 이미지를 가장자리를 부드럽게 만들어 주는 기능을 의미한다.
일 실시예에 따른 렌더링 장치(102)는 결정된 렌더링 수준에 기초하여 안티 앨리어싱 적용 여부 및 적용 정도를 결정할 수 있다. 예를 들어, 렌더링 장치(102)는 렌더링 파이프라인의 레스터화(resterize) 단계에 결정된 안티-앨리어싱 레벨을 적용하여 렌더링을 수행할 수 있다.
샘플링 레이트란 텍스처(texture)를 몇 개의 픽셀(pixel)들로 샘플링할 것인지를 나타낸다.
일 실시예에 따른 렌더링 장치(102)는 결정된 렌더링 수준에 기초하여 텍스처를 몇 개의 픽셀들로 샘플링할 지 결정할 수 있다. 예를 들어, 렌더링 장치(102)는 렌더링 파이프라인의 레스터화 단계에 결정된 샘플링 레이트를 적용하여 렌더링을 수행할 수 있다.
밉맵이란 3차원 그래픽의 텍스처 매핑 분야에서 렌더링 속도를 향상시키기 위한 목적으로 기본 텍스처와 이를 연속적으로 미리 축소시킨 텍스처들로 이루어진 비트맵 이미지의 집합이다.
일 실시예에 따른 렌더링 장치(102)는 결정된 렌더링 수준에 기초하여 밉맵 레벨의 개수를 결정할 수 있다. 예를 들어, 렌더링 장치(102)는 렌더링 파이프라인의 또는 픽셀 셰이더(pixel shader) 단계에 결정된 밉맵 레벨의 개수를 적용하여 렌더링을 수행할 수 있다.
해상도란, 이미지를 표현하는 데 몇 개의 픽셀 또는 도트로 나타냈는지 즉, 하나의 이미지 안에 몇 개의 픽셀을 포함하는가를 나타내는 말이다.
일 실시예에 따른 렌더링 장치(102)는 결정된 렌더링 수준에 기초하여 해상도를 결정할 수 있다. 즉, 3차원 공간 상의 오브젝트(object)를 몇 개의 픽셀로 표현할지를 결정할 수 있다. 예를 들어, 렌더링 장치(102)는 렌더링 파이프라인의 픽셀 셰이더 단계에 결정된 해상도를 적용하여 렌더링을 수행할 수 있다.
테셀레이션이란 한 가지 이상의 도형을 이용해 틈이나 포개짐 없이 평면이나 공간을 완전하게 덮는 것을 말한다. 따라서, 폴리곤(polygon)을 잘게 쪼개서 처리하는 것으로 사물의 굴곡이 더 세밀하게 표현할 수 있다.
일 실시예에 따른 렌더링 장치(102)는 결정된 렌더링 수준에 기초하여 테셀레이션 레벨을 결정할 수 있다. 예를 들어, 렌더링 장치(102)는 렌더링 파이프라인의 테셀레이터(tessellator) 단계에 결정된 테셀레이션 레벨을 적용하여 렌더링을 수행할 수 있다.
도 3은 일 실시예에 따른 렌더링 수준을 결정하는 방법을 설명하기 위한 흐름도이다.
단계 310에서, 렌더링 장치(102)는 사용자(110)의 시선에 관한 정보를 소정의 시간 간격으로 획득하고, 저장할 수 있다.
렌더링 장치(102)는 획득된 정보를 저장부(미도시)에 임시로 저장할 수 있다.
단계 320에서, 렌더링 장치(102)는 가장 최근의 시점인 제1 시점에 획득된 정보 및 제1 시점의 직전 시점인 제2 시점에 획득된 정보를 비교하여, 렌더링 수준을 변경할지 여부를 결정할 수 있다.
일 실시예에 따라, 획득된 정보가 사용자(110)의 눈으로부터 스크린(106)까지의 거리인 경우, 렌더링 장치(102)는 제1 시점에 획득된 사용자(110)의 눈으로부터 스크린(106)까지의 거리 및 제2 시점에 획득된 사용자(110)의 눈으로부터 스크린(106)까지의 거리를 비교하여, 렌더링 수준을 변경할지 여부를 결정할 수 있다.
예를 들어, 렌더링 장치(102)는 수학식 5를 만족하는 경우, 렌더링 수준을 변경하는 것으로 결정할 수 있다.
Figure pat00019
여기서,
Figure pat00020
는 제2 시점에 획득된 사용자(110)의 눈으로부터 스크린(106)까지의 거리를,
Figure pat00021
은 제1 시점에 획득된 사용자(110)의 눈으로부터 스크린(106)까지의 거리를 나타낸다.
Figure pat00022
는 임계값으로, 프로그램 시작 전에 미리 설정되어 저장될 수 있다.
즉, 렌더링 장치(102)는 제1 시점에 획득된 사용자(110)의 눈으로부터 스크린(106)까지의 거리가 제2 시점에 획득된 사용자(110)의 눈으로부터 스크린(106)까지의 거리보다 기 설정된 임계값 이상으로 크면, 렌더링 수준을 변경하는 것으로 결정할 수 있다.
일례로, 임계값
Figure pat00023
는 사용자 입력에 기초하여 설정될 수 있다.
다른 예로, 임계값
Figure pat00024
는 사용자(110)의 시력과 같은 생체 정보에 기초하여 설정될 수 있다.
다른 실시예에 따라, 획득된 정보가 시선 방향과 스크린(106)의 법선 방향이 이루는 각도인 경우, 렌더링 장치(102)는 가장 최근의 시점인 제1 시점에 획득된 시선 방향과 스크린(106)의 법선 방향이 이루는 각도 및 제1 시점의 직전 시점인 제2 시점에 획득된 시선 방향과 스크린(106)의 법선 방향이 이루는 각도를 비교하여, 렌더링 수준을 변경할지 여부를 결정할 수 있다.
예를 들어, 렌더링 장치(102)는 수학식 6을 만족하는 경우, 렌더링 수준을 변경하는 것으로 결정할 수 있다.
Figure pat00025
여기서,
Figure pat00026
는 제2 시점에 획득된 시선 방향과 스크린(106)의 법선 방향이 이루는 각도를,
Figure pat00027
은 제1 시점에 획득된 시선 방향과 스크린(106)의 법선 방향이 이루는 각도를 나타낸다.
Figure pat00028
는 임계값으로, 프로그램 시작 전에 미리 설정되어 저장될 수 있다.
즉, 렌더링 장치(102)는 제1 시점에 획득된 시선 방향과 스크린(106)의 법선 방향이 이루는 각도가 제2 시점에 획득된 시선 방향과 스크린(106)의 법선 방향이 이루는 각도보다 기 설정된 임계값 이상으로 크면, 렌더링 수준을 변경하는 것으로 결정할 수 있다.
일례로, 임계값
Figure pat00029
는 사용자 입력에 기초하여 설정될 수 있다.
다른 예로, 임계값
Figure pat00030
는 사용자(110)의 시력과 같은 생체 정보에 기초하여 설정될 수 있다.
또 다른 실시예에 따라, 획득된 정보가 사용자(110)의 시선의 방향 정보 및 사용자(110)로부터 스크린(100)까지의 거리 정보인 경우, 렌더링 장치(102)는 가장 최근의 시점인 제1 시점에 획득된 시선의 방향 정보 및 거리 정보를 소정의 식에 대입하여 산출한 결과값 및 제1 시점의 직전 시점인 제2 시점에 획득된 시선의 방향 정보 및 거리 정보를 소정의 식에 대입하여 산출한 결과값을 비교하여, 렌더링 수준을 변경할지 여부를 결정할 수 있다. 이에 대한 상세한 설명은 도 12를 참조하여 후술한다.
렌더링 장치(102)가 렌더링 수준을 변경하는 것으로 결정한 경우, 단계 330이 수행되고, 렌더링 수준을 변경하지 않는 것으로 결정한 경우, 단계 335가 수행된다.
단계 330에서, 렌더링 장치(102)는 새로운 렌더링 수준을 결정할 수 있다.
일 실시예에 따른 렌더링 장치(102)는 렌더링 수준을 변경하는 것으로 결정한 경우, 기 설정된 렌더링 수준에 관한 정보를 이용하여, 새로운 렌더링 수준에 관한 정보에 대한 수치 및 적용 여부를 결정할 수 있다. 예를 들어, 렌더링 장치(102)는 전술한 수학식 2에 의해 산출된 값을 새로운 렌더링 수준에 관한 정보에 대한 수치로 결정할 수 있다.
다른 실시예에 따른 렌더링 장치(102)는 렌더링 수준을 변경하는 것으로 결정한 경우, 획득된 정보를 이용하여 새로운 렌더링 수준 에 관한 정보에 대한 수치 및 적용 여부를 결정할 수 있다. 예를 들어, 획득된 정보가 사용자(110)와 스크린(106) 사이의 거리인 경우, 렌더링 장치(102)는 전술한 수학식 3에 의해 산출된 값을 새로운 렌더링 수준에 관한 정보에 대한 수치로 결정할 수 있다. 다른 예로, 획득된 정보가 사용자(110)의 시선 방향이 스크린(106)과 이루는 각도인 경우, 렌더링 장치(102)는 전술한 수학식 4에 의해 산출된 값을 새로운 렌더링 수준에 관한 정보에 대한 수치로 결정할 수 있다.
또 다른 실시예에 따른 렌더링 장치(102)는 렌더링 수준을 변경하는 것으로 결정한 경우, 사용자(110)의 시력과 같은 생체 정보를 이용하여, 새로운 렌더링 수준에 관한 정보에 대한 수치 및 적용 여부를 결정할 수 있다. 예를 들어, 전술한 수학식 2 내지 수학식 4의 렌더링 수준에 관한 정보에 대한 수치를 조정하기 위한 계수는 사용자(110)의 생체 정보에 기초하여 결정될 수 있다.
또 다른 실시예에 따른 렌더링 장치(102)는 렌더링 수준을 변경하는 것으로 결정한 경우, 디바이스(100)의 온도를 이용하여, 새로운 렌더링 수준에 관한 정보에 대한 수치 및 적용 여부를 결정할 수 있다. 예를 들어, 전술한 수학식 2 내지 수학식 4의 렌더링 수준에 관한 정보에 대한 수치를 조정하기 위한 계수는 디바이스(100)의 온도에 기초하여 결정될 수 있다.
또 다른 실시예에 따른 렌더링 장치(102)는 렌더링 수준을 변경하는 것으로 결정한 경우, 사용자(110)와 스크린(106) 사이의 거리, 사용자(110)의 시선 방향과 스크린(106)의 법선 방향 사이의 각도, 및 사용자(110)의 생체 정보 중 적어도 이 이상을 이용하여, 새로운 렌더링 수준에 관한 정보에 대한 수치 및 적용 여부를 결정할 수 있다.
단계 335에서, 렌더링 장치(102)는 기 설정된 렌더링 수준을 유지할 수 있다.
도 4는 다른 실시예에 따른 렌더링 수준을 결정하는 방법을 설명하기 위한 흐름도이다.
단계 410에서, 렌더링 장치(102)는 사용자(110)의 시선에 관한 정보를 획득할 수 있다.
도 4의 단계 410은 도 2의 단계 210과 동일 대응되므로, 중복되는 설명은 생략한다.
단계 420에서, 렌더링 장치(102)는 획득된 정보를 소정의 임계값과 비교하여, 렌더링 수준을 변경할지 여부를 결정할 수 있다.
일 실시예에 따라, 획득된 정보가 사용자(110)의 눈으로부터 스크린(106)까지의 거리인 경우, 렌더링 장치(102)는 획득된 사용자(110)의 눈으로부터 스크린(106)까지의 거리를 소정의 임계값과 비교하여, 렌더링 수준을 변경할지 여부를 결정할 수 있다.
예를 들어, 렌더링 장치(102)는 수학식 7을 만족하는 경우, 렌더링 수준을 변경하는 것으로 결정할 수 있다.
Figure pat00031
여기서,
Figure pat00032
은 사용자(110)의 눈으로부터 스크린(106)까지의 거리를 나타낸다.
Figure pat00033
는 임계값으로, 프로그램 시작 전에 미리 설정되어 저장될 수 있다.
즉, 렌더링 장치(102)는 사용자(110)의 눈으로부터 스크린(106)까지의 거리가 기 설정된 임계값보다 멀면, 렌더링 수준을 변경하는 것으로 결정할 수 있다.
일례로, 임계값
Figure pat00034
는 사용자 입력에 기초하여 설정될 수 있다.
다른 예로, 임계값
Figure pat00035
는 사용자(110)의 시력과 같은 생체 정보에 기초하여 설정될 수 있다.
다른 실시예에 따라, 획득된 정보가 시선 방향과 스크린(106)의 법선 방향이 이루는 각도인 경우, 렌더링 장치(102)는 획득된 시선 방향과 스크린(106)의 법선 방향이 이루는 각도를 소정의 임계값과 비교하여, 렌더링 수준을 변경할지 여부를 결정할 수 있다.
예를 들어, 렌더링 장치(102)는 수학식 8을 만족하는 경우, 렌더링 수준을 변경하는 것으로 결정할 수 있다.
Figure pat00036
여기서,
Figure pat00037
은 시선 방향과 스크린(106)의 법선 방향이 이루는 각도를 나타낸다.
Figure pat00038
는 임계값으로, 프로그램 시작 전에 미리 설정되어 저장될 수 있다.
즉, 렌더링 장치(102)는 사 시선 방향과 스크린(106)의 법선 방향이 이루는 각도가 기 설정된 임계값보다 크면, 렌더링 수준을 변경하는 것으로 결정할 수 있다.
일례로, 임계값 는 사용자 입력에 기초하여 설정될 수 있다.
다른 예로, 임계값
Figure pat00040
는 사용자(110)의 시력과 같은 생체 정보에 기초하여 설정될 수 있다.
또 다른 실시예에 따라, 획득된 정보가 사용자(110)의 시선의 방향 정보 및 사용자(110)로부터 스크린(100)까지의 거리 정보인 경우, 렌더링 장치(102)는 획득된 시선의 방향 정보 및 거리 정보를 소정의 식에 대입하여 산출한 결과값과 소정의 임계값과 비교하여, 렌더링 수준을 변경할지 여부를 결정할 수 있다. 이에 대한 상세한 설명은 도 12를 참조하여 후술한다.
렌더링 장치(102)가 렌더링 수준을 변경하는 것으로 결정한 경우, 단계 430이 수행되고, 렌더링 수준을 변경하지 않는 것으로 결정한 경우, 단계 435가 수행된다.
단계 430에서, 렌더링 장치(102)는 새로운 렌더링 수준을 결정할 수 있다.
도 4의 단계 430은 도 3의 단계 330과 동일 대응되므로, 중복되는 설명은 생략한다.
단계 435에서, 렌더링 장치(102)는 기 설정된 렌더링 수준을 유지할 수 있다.
도 5는 일 실시예에 따라, 사용자의 시선이 스크린을 향하는지 여부에 기초하여 렌더링 수준을 결정하는 방법을 설명하기 위한 흐름도이다.
단계 510에서, 렌더링 장치(102)는 사용자(110)의 시선의 방향 정보를 획득할 수 있다.
시선의 방향 정보는, 스크린(106)에 대한 시선의 위치 및 시선의 이동 방향 중 적어도 하나를 포함할 수 있다.
단계 520에서, 렌더링 장치(102)는 사용자(110)의 시선이 스크린(106)을 향하는지 여부를 판단할 수 있다.
예를 들어, 렌더링 장치(102)는 스크린(106)에 대한 시선의 위치가 스크린으로부터 소정의 범위 내에 있는 경우, 사용자(110)의 시선이 스크린(106)을 향한다고 판단할 수 있다. 즉, 렌더링 장치(102)는 사용자(110)가 스크린(106)을 보고 있다고 판단할 수 있다.
다른 예로, 렌더링 장치(102)는 스크린(106)에 대한 시선의 이동 방향이 소정의 범위 내에 있는 경우, 사용자(110)의 시선이 스크린(106)을 향한다고 판단할 수 있다. 즉, 렌더링 장치(102)는 사용자(110)가 스크린(106)을 보고 있다고 판단할 수 있다.
렌더링 장치(102)가 사용자(110)의 시선이 스크린(106)을 향한다고 판단한 경우, 단계 530이 수행되고, 사용자(110)의 시선이 스크린(106)을 향하지 않는다고 판단한 경우, 단계 535가 수행된다.
단계 530에서, 렌더링 장치(102)는 기 설정된 렌더링 수준을 유지할 수 있다. 즉, 렌더링 장치(102)는 기 설정된 렌더링 수준으로 렌더링을 수행할 수 있다.
단계 535에서, 렌더링 장치(102)는 기 설정된 렌더링 수준보다 낮은 수준으로 렌더링 수준을 결정할 수 있다.
예를 들어, 렌더링 장치(102)는 전술한 수학식 2에 의해 산출된 값을 새로운 렌더링 수준에 관한 정보에 대한 수치로 결정할 수 있다. 이 때, c는 0보다 크고 1보다 작은 상수이다.
렌더링 장치(102)는 다시 시선의 방향 정보를 획득하여, 사용자(110)의 시선이 스크린(106)을 향한다고 판단한 경우, 렌더링 수준을 다시 기 설정된 렌더링 수준으로 변경할 수 있다.
전술한 바와 같이, 렌더링 장치(102)는 사용자(110)가 스크린(106)을 보고 있지 않은 경우, 렌더링 수준을 낮출 수 있다. 이에 따라, 렌더링 장치(102)는 GPU에서 소모하는 전력을 줄일 수 있다.
도 6은 도 5에 도시된 방법을 설명하기 위한 예시도이다.
도 6(a)를 참조하면, 사용자(110)의 시선은 그래픽 영상이 디스플레이되는 스크린(106)을 향하고 있다.
사용자(110)의 시선이 스크린(106)을 향하고 있는 경우, 렌더링 장치(102)는 기 설정된 렌더링 수준에 따라 렌더링을 수행할 수 있다.
도 6(b)를 참조하면, 사용자(110)의 시선은 그래픽 영상이 디스플레이되는 스크린(106)을 향하지 않고 있다.
사용자(110)의 시선이 스크린(106)을 향하지 않고 있는 경우, 렌더링 장치(102)는 기 설정된 렌더링 수준보다 낮은 렌더링 수준에 따라 렌더링을 수행할 수 있다. 즉, 사용자(110)의 시선이 스크린(106)을 향하지 않고 있는 경우, 사용자(110)는 그래픽 영상을 인식하지 않고 있는 경우이므로, 높은 수준의 렌더링이 불필요하다. 따라서, 렌더링 장치(102)는 렌더링 수준을 낮추어, 불필요한 리소스 사용을 감소시킬 수 있다.
한편, 사용자(110)의 시선이 다시 스크린(106)을 향하는 경우, 렌더링 장치(102)는 도 6(a)와 같이, 렌더링 수준을 다시 기 설정된 렌더링 수준으로 변경할 수 있다.
도 7는 다른 실시예에 따라, 사용자와 스크린 사이의 거리에 기초하여 렌더링 수준을 결정하는 방법을 설명하기 위한 흐름도이다.
단계 710에서, 렌더링 장치(102)는 사용자(110)로부터 스크린(100)까지의 거리를 획득할 수 있다.
사용자(110)로부터 스크린(100)까지의 거리 정보는 사용자(110)의 눈으로부터 스크린(106) 상의 어느 한 지점까지의 거리일 수 있다. 스크린(106)상의 어느 한 지점은 스크린(106)으로부터 소정의 범위 내의 어느 한 지점을 포함할 수 있다.
단계 720에서, 렌더링 장치(102)는 사용자(110)로부터 스크린(100)까지의 거리와 기준값을 비교하여, 사용자(110)로부터 스크린(100)까지의 거리가 기준값보다 큰지 판단할 수 있다.
일 실시예에 따라 기준값은 가장 최근에 획득된 거리 정보를 획득하기 직전에 획득한 정보일 수 있다.
이 경우, 렌더링 장치(102)는 전술한 수학식 5를 만족하는 경우, 렌더링 수준을 변경하는 것으로 결정할 수 있다. 즉, 렌더링 장치(102)는 가장 최근의 시점인 제1 시점에 획득된 사용자(110)의 눈으로부터 스크린(106)까지의 거리가 제1 시점의 직전 시점인 제2 시점에 획득된 사용자(110)의 눈으로부터 스크린(106)까지의 거리보다 기 설정된 임계값 이상으로 크면, 렌더링 수준을 변경하는 것으로 결정할 수 있다.
다른 실시예에 따라 기준값은 기 설정된 임계값일 수 있다.
이 경우, 렌더링 장치(102)는 전술한 수학식 7을 만족하는 경우, 렌더링 수준을 변경하는 것으로 결정할 수 있다. 즉, 렌더링 장치(102)는 사용자(110)의 눈으로부터 스크린(106)까지의 거리가 기 설정된 임계값보다 멀면, 렌더링 수준을 변경하는 것으로 결정할 수 있다.
사용자(110)로부터 스크린(100)까지의 거리가 기준값보다 큰 것으로 판단된 경우, 단계 730이 수행되고, 사용자(110)로부터 스크린(100)까지의 거리가 기준값보다 작은 것으로 판단된 경우, 단계 735가 수행된다.
단계 730에서, 렌더링 장치(102)는 기 설정된 렌더링 수준보다 낮은 수준으로 렌더링 수준을 결정할 수 있다.
일 실시예에 따른 렌더링 장치(102)는 전술한 수학식 2에 의해 산출된 값을 새로운 렌더링 수준에 관한 정보에 대한 수치로 결정할 수 있다. 이 때, c는 0보다 크고 1보다 작은 상수이다.
일 실시예에 따른 렌더링 장치(102)는 전술한 수학식 3에 의해 산출된 값을 새로운 렌더링 수준에 관한 정보에 대한 수치로 결정할 수 있다. 이 때,
Figure pat00041
은 0보다 크고 1보다 작은 수이다.
렌더링 장치(102)는 결정된 새로운 렌더링 수준에 따라 렌더링을 수행할 수 있다.
렌더링 장치(102)는 다시 거리 정보를 획득하여, 사용자(110)로부터 스크린(100)까지의 거리가 기준값보다 작다고 판단한 경우, 렌더링 수준을 다시 기 설정된 렌더링 수준으로 변경할 수 있다. 기 설정된 렌더링 수준이란 프로그램 모델링 단계에서 결정되거나, 프로그램 실행 시 사용자 설정에 의해 설정된 렌더링 수준을 의미한다.
단계 735에서, 렌더링 장치(102)는 기 설정된 렌더링 수준을 유지할 수 있다. 즉, 렌더링 장치(102)는 기 설정된 렌더링 수준에 따라 렌더링을 수행할 수 있다.
전술한 바와 같이, 렌더링 장치(102)는 사용자(110)가 스크린(106)으로부터 멀어진 경우, 렌더링 수준을 낮출 수 있다. 이에 따라, 렌더링 장치(102)는 GPU에서 소모하는 전력을 감소시킬 수 있다.
도 8은 도 7에 도시된 방법을 설명하기 위한 예시도이다.
도 8(a) 및 도 8(b)를 참조하면, 사용자(110)로부터 스크린(106)까지의 거리가
Figure pat00042
에서
Figure pat00043
으로 멀어진 것을 나타낸다.
사용자(110)로부터 스크린(106)까지의 거리가 기준값보다 큰 경우, 렌더링 장치(102)는 기 설정된 렌더링 수준보다 낮은 렌더링 수준에 따라 렌더링을 수행할 수 있다.
피사체와 사람의 눈 사이의 거리가 멀어지면 가까이 위치한 두 점을 분별할 수 없게 된다. 일 실시예에 따른 렌더링 장치(102)는 사용자(110)의 눈과 스크린(106) 사이의 거리가 멀어진 경우, 사용자가 인식하지 못하는 만큼 렌더링 수준을 조절하여 낮출 수 있다. 이 경우, 사용자가 영상을 보는 데 불편함을 느끼지 않도록 하면서 디바이스(100)의 전력 소모를 줄일 수 있다.
일 실시예에 따른 렌더링 장치(102)는 사용자(110)의 시력과 같은 생체 정보를 이용하여 렌더링 수준을 결정할 수 있다.
예를 들어, 렌더링 장치(102)는 렌더링 수준을 변경할지 여부를 판단하는데 사용되는 임계값을 사용자(110)의 시력에 기초하여 설정할 수 있다. 즉, 렌더링 장치(102)는 사용자(110)의 시력이 좋은 경우 전술한 수학식 5 및 전술한 수학식 7의 임계값을 크게 할 수 있다. 이에 따라, 렌더링 장치(102)는 사용자(110)가 불편함을 느끼지 않도록, 사용자(110)가 스크린(106)으로부터 충분히 멀어졌을 때 렌더링 수준을 낮출 수 있다.
다른 예로, 렌더링 장치(102)는 새로운 렌더링 수준을 사용자(110)의 시력에 기초하여 결정할 수 있다. 즉, 사용자(110)의 시력이 나쁜 경우 전술한 수학식 2 및 전술한 수학식 3의 렌더링 수준을 조정하기 위한 계수를 작게 하여 렌더링 수준을 크게 감소시킬 수 있다.
한편, 사용자(110)로부터 스크린(106)까지의 거리가 다시 가까워진 경우, 렌더링 장치(102)는 도 8(a)와 같이, 렌더링 수준을 다시 기 설정된 렌더링 수준으로 변경할 수 있다.
도 9는 또 다른 실시예에 따라, 사용자의 시선 방향과 스크린의 법선 방향이 이루는 각도에 기초하여 렌더링 수준을 결정하는 방법을 설명하기 위한 흐름도이다.
단계 910에서, 렌더링 장치(102)는 사용자(110)의 시선의 방향 정보를 획득할 수 있다.
렌더링 장치(102)는 시선의 방향 정보를 이용하여, 시선의 방향과 스크린(106)의 법선 방향이 이루는 각도를 획득할 수 있다.
단계 920에서, 렌더링 장치(102)는 시선의 방향과 스크린(106)의 법선 방향이 이루는 각도와 기준값을 비교하여, 시선의 방향과 스크린(106)의 법선 방향이 이루는 각도가 기준값보다 큰지 판단할 수 있다.
일 실시예에 따라 기준값은 가장 최근의 시점에 획득된 시선의 방향 정보를 획득하기 직전에 획득한 시선의 방향과 스크린(106)의 법선 방향이 이루는 각도일 수 있다.
이 경우, 렌더링 장치(102)는 전술한 수학식 6을 만족하는 경우, 렌더링 수준을 변경하는 것으로 결정할 수 있다. 즉, 렌더링 장치(102)는 가장 최근의 시점인 제1 시점에 획득된 시선 방향과 스크린(106)의 법선 방향이 이루는 각도가 제1 시점의 직전 시점인 제2 시점에 획득된 시선 방향과 스크린(106)의 법선 방향이 이루는 각도보다 기 설정된 임계값 이상으로 크면, 렌더링 수준을 변경하는 것으로 결정할 수 있다.
다른 실시예에 따라 기준값은 기 설정된 임계값일 수 있다.
이 경우, 렌더링 장치(102)는 전술한 수학식 8을 만족하는 경우, 렌더링 수준을 변경하는 것으로 결정할 수 있다. 즉, 렌더링 장치(102)는 시선 방향과 스크린(106)의 법선 방향이 이루는 각도가 기 설정된 임계값보다 크면, 렌더링 수준을 변경하는 것으로 결정할 수 있다.
시선 방향과 스크린(106)의 법선 방향이 이루는 각도가 기준값보다 큰 것으로 판단된 경우, 단계 930이 수행되고, 시선 방향과 스크린(106)의 법선 방향이 이루는 각도가 기준값보다 작은 것으로 판단된 경우, 단계 935가 수행된다.
단계 930에서, 렌더링 장치(102)는 기 설정된 렌더링 수준보다 낮은 수준으로 렌더링 수준을 결정할 수 있다.
일 실시예에 따른 렌더링 장치(102)는 전술한 수학식 2에 의해 산출된 값을 새로운 렌더링 수준에 관한 정보에 대한 수치로 결정할 수 있다. 이 때, c는 0보다 크고 1보다 작은 상수이다.
일 실시예에 따른 렌더링 장치(102)는 전술한 수학식 4에 의해 산출된 값을 새로운 렌더링 수준에 관한 정보에 대한 수치로 결정할 수 있다. 이 때,
Figure pat00044
는 0보다 크고 1보다 작은 수이다.
렌더링 장치(102)는 결정된 새로운 렌더링 수준에 따라 렌더링을 수행할 수 있다.
렌더링 장치(102)는 다시 시선의 방향 정보를 획득하여, 시선 방향과 스크린(106)의 법선 방향이 이루는 각도가 기준값보다 작다고 판단한 경우, 렌더링 수준을 다시 기 설정된 렌더링 수준으로 변경할 수 있다. 기 설정된 렌더링 수준이란 프로그램 모델링 단계에서 결정되거나, 프로그램 실행 시 사용자 설정에 의해 설정된 렌더링 수준을 의미한다.
단계 935에서, 렌더링 장치(102)는 기 설정된 렌더링 수준을 유지할 수 있다. 즉, 렌더링 장치(102)는 기 설정된 렌더링 수준에 따라 렌더링을 수행할 수 있다.
전술한 바와 같이, 렌더링 장치(102)는 사용자(110)의 시선 방향과 스크린(106)의 법선 방향이 이루는 각도가 커질수록, 즉, 렌더링 장치(102)는 사용자(110)가 스크린(106)을 비스듬히 바라봄에 따라 렌더링 수준을 낮추어, GPU에서 소모하는 전력을 감소시킬 수 있다.
도 10은 도 9에 도시된 방법을 설명하기 위한 예시도이다.
도 10(a) 및 도 10(b)를 참조하면, 사용자(110)의 시선 방향과 스크린(106)의 법선 방향이 이루는 각도가
Figure pat00045
에서
Figure pat00046
으로 커진 것을 나타낸다.
사용자(110)의 시선 방향과 스크린(106)의 법선 방향이 이루는 각도가 기준값보다 큰 경우, 렌더링 장치(102)는 기 설정된 렌더링 수준보다 낮은 렌더링 수준에 따라 렌더링을 수행하여, 리소스 소모를 감소시킬 수 있다.
한편, 사용자(110)의 시선 방향과 스크린(106)의 법선 방향이 이루는 각도가 다시 작아진 경우, 즉, 사용자(110)가 스크린(106)을 정면으로 보고 있는 경우, 렌더링 장치(102)는 도 10(a)와 같이, 렌더링 수준을 다시 기 설정된 렌더링 수준으로 변경할 수 있다.
도 11은 또 다른 실시예에 따라, 사용자의 스크린 응시 시간에 기초하여 렌더링 수준을 결정하는 방법을 설명하기 위한 흐름도이다.
단계 1110에서, 렌더링 장치(102)는 렌더링 장치(102)는 사용자(110)의 시선의 방향 정보를 획득할 수 있다.
시선의 방향 정보는, 스크린(106)에 대한 시선의 위치 및 시선의 이동 방향 중 적어도 하나를 포함할 수 있다.
일 실시예에 따른 렌더링 장치(102)는 소정의 시간 간격으로 시선의 방향 정보를 획득할 수 있다. 렌더링 장치(102)는 획득된 시선의 방향 정보를 저장부(미도시)에 저장할 수 있다.
단계 1120에서, 렌더링 장치(102)는 사용자(110)의 시선이 스크린(106)을 향하는지 여부를 판단할 수 있다.
예를 들어, 렌더링 장치(102)는 스크린(106)에 대한 시선의 위치가 스크린으로부터 소정의 범위 내에 있는 경우, 사용자(110)의 시선이 스크린(106)을 향한다고 판단할 수 있다. 즉, 렌더링 장치(102)는 사용자(110)가 스크린(106)을 보고 있다고 판단할 수 있다.
다른 예로, 렌더링 장치(102)는 스크린(106)에 대한 시선의 이동 방향이 소정의 범위 내에 있는 경우, 사용자(110)의 시선이 스크린(106)을 향한다고 판단할 수 있다. 즉, 렌더링 장치(102)는 사용자(110)가 스크린(106)을 보고 있다고 판단할 수 있다.
렌더링 장치(102)가 사용자(110)의 시선이 스크린(106)을 향한다고 판단한 경우, 단계 1130이 수행되고, 사용자(110)의 시선이 스크린(106)을 향하지 않는다고 판단한 경우, 단계 1135가 수행된다.
단계 1135에서, 렌더링 장치(102)는 기 설정된 렌더링 수준보다 낮은 수준으로 렌더링 수준을 결정할 수 있다. 도 11의 단계 1135는 도 5의 단계 535와 동일 대응되므로, 중복되는 설명은 생략한다.
단계 1130에서, 렌더링 장치(102)는 사용자(110)의 시선이 스크린(106)을 향하는 것으로 판단된 경우, 사용자(110)의 시선이 스크린을 향하는 상태가 지속되고 있는 시간인, 스크린 응시 시간을 획득하고, 스크린 응시 시간을 임계값과 비교할 수 있다.
일 실시예에 따른 렌더링 장치(102)는 소정의 시간 간격으로 획득되어 저장된 사용자의 시선에 관한 정보를 이용하여, 사용자(110)의 시선이 스크린을 향하는 상태가 지속되고 있는 시간인, 스크린 응시 시간을 획득할 수 있다. 예를 들어, 렌더링 장치(102)는 사용자(110)의 시선이 스크린(106)을 향한다고 연속적으로 판단된 시간을 스크린 응시 시간으로 획득할 수 있다.
렌더링 장치(102)는 획득된 스크린 응시 시간을 소정의 임계값과 비교하여, 렌더링 수준을 변경할지 여부를 결정할 수 있다.
예를 들어, 렌더링 장치(102)는 수학식 9를 만족하는 경우, 렌더링 수준을 변경하는 것으로 결정할 수 있다.
Figure pat00047
여기서,
Figure pat00048
은 스크린 응시 시간을 나타낸다. T_th은 임계값으로, 프로그램 시작 전에 미리 설정되어 저장될 수 있다.
일례로, 임계값
Figure pat00049
는 사용자 입력에 기초하여 설정될 수 있다.
다른 예로, 임계값
Figure pat00050
는 사용자(110)의 시력과 같은 생체 정보, 건강 상태, 나이 등에 기초하여 설정될 수 있다.
렌더링 장치(102)가 사용자(110)의 스크린 응시 시간이 임계값보다 길다고 판단한 경우, 단계 1140이 수행되고, 스크린 응시 시간이 임계값보다 짧다고 판단한 경우, 단계 1145가 수행된다.
단계 1140에서, 렌더링 장치(102)는 기 설정된 렌더링 수준보다 낮은 수준으로 렌더링 수준을 결정할 수 있다.
예를 들어, 렌더링 장치(102)는 전술한 수학식 2에 의해 산출된 값을 새로운 렌더링 수준에 관한 정보에 대한 수치로 결정할 수 있다. 이 때, c는 0보다 크고 1보다 작은 상수이다.
렌더링 장치(102)는 다시 시선의 방향 정보를 획득하여, 사용자(110)의 시선이 스크린(106)을 향한다고 판단한 경우, 렌더링 수준을 다시 기 설정된 렌더링 수준으로 변경할 수 있다. 기 설정된 렌더링 수준이란 프로그램 모델링 단계에서 결정되거나, 프로그램 실행 시 사용자 설정에 의해 설정된 렌더링 수준을 의미한다.
전술한 바와 같이, 렌더링 장치(102)는 사용자(110)가 스크린(106)을 임계값보다 오래 보고 있는 경우, 렌더링 수준을 낮출 수 있다. 이에 따라, 렌더링 장치(102)는 사용자(110)가 스크린(106)을 너무 장시간 응시하고 있지 않도록 유도함과 동시에, GPU에서 소모하는 전력을 줄일 수 있다.
단계 1145에서, 렌더링 장치(102)는 기 설정된 렌더링 수준을 유지할 수 있다. 즉, 렌더링 장치(102)는 기 설정된 렌더링 수준으로 렌더링을 수행할 수 있다.
도 12는 일 실시예에 따라, 사용자의 시선의 방향 및 사용자와 스크린 사이의 거리에 기초하여 렌더링 수준을 결정하는 방법을 설명하기 위한 흐름도이다.
단계 1210에서, 렌더링 장치(102)는 사용자(110)로부터 스크린(106)까지의 거리 및 시선의 방향과 스크린(106)의 법선 방향이 이루는 각도를 획득할 수 있다.
일 실시예에서, 렌더링 장치(102)는 사용자(110)로부터 스크린(106)까지의 거리 및 시선의 방향과 스크린(106)의 법선 방향이 이루는 각도를 일정 시간 간격으로 획득할 수 있다.
단계 1220에서, 렌더링 장치(102)는 사용자(110)로부터 스크린(106)까지의 거리 및 시선의 방향과 스크린(106)의 법선 방향이 이루는 각도에 관한 수학식의 결과값을 획득할 수 있다.
사용자(110)로부터 스크린(106)까지의 거리 및 시선의 방향과 스크린(106)의 법선 방향이 이루는 각도에 관한 수학식은 사용자(110)로부터 스크린(106)까지의 거리 및 시선의 방향과 스크린(106)의 법선 방향이 이루는 각도를 적절히 조합하여, 산출된 결과값을 렌더링 수준 결정을 위한 팩터(factor)로 이용하기 위하여 정의된 수학식이다.
일 실시예에 따르면, 사용자(110)로부터 스크린(106)까지의 거리 및 시선의 방향과 스크린(106)의 법선 방향이 이루는 각도에 관한 수학식은 수학식 1로 정의될 수 있다.
<수학식 1>
Figure pat00051
여기서, d는 사용자(110)로부터 영상이 디스플레이되는 스크린(106)까지의 거리를, θ는 사용자(110)의 시선 방향이 스크린의 법선 방향과 이루는 각도를,
Figure pat00052
는 0 이상의 실수로 상기 d에 대한 가중치를,
Figure pat00053
는 0 이상의 실수로 상기 θ에 대한 가중치를 나타낸다.
수학식 1의 결과값은 사용자(110)로부터 영상이 디스플레이되는 스크린(106)까지의 거리가 멀수록 작아지고, 사용자(110)로부터 영상이 디스플레이되는 스크린(106)까지의 거리가 가까울수록 커진다. 또한, 수학식 1의 결과값은 사용자(110)의 시선 방향이 스크린의 법선 방향과 이루는 각도가 클수록 작아지고, 사용자(110)의 시선 방향이 스크린의 법선 방향과 이루는 각도가 작을수록 커진다. 즉, 수학식 1의 결과값은 요구되는 렌더링 수준에 비례할 수 있다.
렌더링 장치(102)는 획득된 정보를 이용하여 수학식 1의 결과값을 획득할 수 있다.
렌더링 장치(102)는 획득된 결과값을 저장부(미도시)에 저장할 수 있다.
단계 1230에서, 렌더링 장치(102)는 획득된 결과값과 기준값을 비교한 결과에 기초하여 렌더링 수준을 결정할 수 있다.
일 실시예에 따라 기준값은 가장 최근의 시점인 제1 시점에 획득된 결과값을 획득하기 제1 시점의 직전 시점인 제2 시점에 획득한 결과값일 수 있다.
이 경우, 렌더링 장치(102)는 수학식 10을 만족하는 경우, 렌더링 수준을 변경하는 것으로 결정할 수 있다.
Figure pat00054
여기서,
Figure pat00055
는 제2 시점에 획득된 결과값을,
Figure pat00056
은 제1 시점에 획득된 결과값을 나타낸다.
Figure pat00057
는 임계값으로, 프로그램 시작 전에 미리 설정되어 저장될 수 있다.
즉, 렌더링 장치(102)는 제1 시점에 획득된 결과값이 제2 시점에에 획득된 결과값보다 기 설정된 임계값 이상으로 작으면, 렌더링 수준을 변경하는 것으로 결정할 수 있다.
일례로, 임계값
Figure pat00058
는 사용자 입력에 기초하여 설정될 수 있다.
다른 예로, 임계값
Figure pat00059
는 사용자(110)의 시력과 같은 생체 정보에 기초하여 설정될 수 있다.
다른 실시예에 따라 기준값은 기 설정된 임계값일 수 있다.
이 경우, 렌더링 장치(102)는 수학식 11을 만족하는 경우, 렌더링 수준을 변경하는 것으로 결정할 수 있다.
Figure pat00060
여기서,
Figure pat00061
은 가장 최근의 시점에 획득된 결과값을 나타낸다.
Figure pat00062
는 임계값으로, 프로그램 시작 전에 미리 설정되어 저장될 수 있다.
즉, 렌더링 장치(102)는 획득된 결과값이 기 설정된 임계값보다 작으면, 렌더링 수준을 변경하는 것으로 결정할 수 있다.
일례로, 임계값
Figure pat00063
는 사용자 입력에 기초하여 설정될 수 있다.
다른 예로, 임계값
Figure pat00064
는 사용자(110)의 시력과 같은 생체 정보에 기초하여 설정될 수 있다.
렌더링 장치(102)는 렌더링 수준을 변경하는 것으로 결정한 경우, 새로운 렌더링 수준을 결정할 수 있다.
예를 들어, 렌더링 장치(102)는 전술한 수학식 2에 의해 산출된 값을 새로운 렌더링 수준에 관한 정보에 대한 수치로 결정할 수 있다.
다른 예로, 렌더링 장치(102)는 수학식 12에 의해 산출된 값을 새로운 렌더링 수준에 관한 정보에 대한 수치로 결정할 수 있다.
Figure pat00065
여기서, 렌더링 수준에 관한 정보가 밉맵 레벨의 개수인 경우,
Figure pat00066
는 기 설정된 렌더링 수준에 따른 밉맵 레벨의 개수를 나타내고,
Figure pat00067
는 새로운 렌더링 수준에 따른 밉맵 레벨의 개수를 나타낸다. R1은 현재 획득된 결과값을 나타낸다.
Figure pat00068
가 자연수가 아닌 경우, 새로운 렌더링 수준에 따른 밉맵 레벨의 개수는
Figure pat00069
와 가장 근사한 자연수로 결정될 수 있다.
또 다른 실시예에 따라 기준값은 기 설정된 복수개의 임계값일 수 있다.
예를 들어, 기준값으로 임계값
Figure pat00070
Figure pat00071
가 존재하면, 렌더링 장치(102)는 수학식 13에 의해 렌더링 수준에 관한 정보에 대한 수치를 결정할 수 있다.
Figure pat00072
여기서, 렌더링 수준에 관한 정보가 밉맵 레벨의 개수인 경우,
Figure pat00073
는 기 설정된 렌더링 수준에 따른 밉맵 레벨의 개수를,
Figure pat00074
는 새로운 렌더링 수준에 따른 밉맵 레벨의 개수를, R1은 현재 획득된 결과값을 나타내며,
Figure pat00075
>
Figure pat00076
Figure pat00077
를 만족한다.
Figure pat00078
가 자연수가 아닌 경우, 새로운 렌더링 수준에 따른 밉맵 레벨의 개수는
Figure pat00079
와 가장 근사한 자연수로 결정될 수 있다.
즉, 렌더링 장치(102)는 적어도 두 개의 임계값에 의해 구분되는 각각의 구간에 대응하여 지정된 렌더링 수준 중, 획득된 결과값이 속하는 구간에 대응하는 렌더링 수준에 따라, 렌더링을 수행할 수 있다.
도 13은 일 실시예에 따라, 렌더링 수준에 따른 렌더링 제어를 위한 룩-업 테이블(look-up table)을 나타내는 예시도이다.
일 실시예에 따르면, 렌더링 장치(102)는 렌더링 수준에 대응하는 렌더링 수준에 관한 정보에 대한 수치 및 적용 여부를 룩-업 테이블 형식으로 저장부(미도시)에 저장할 수 있다.
렌더링 장치(102)는 렌더링 수준을 변경하는 것으로 결정한 경우, 새로운 렌더링 수준에 대응하는 각각의 렌더링 수준에 관한 정보에 대한 설정을 적용하여 렌더링을 수행할 수 있다.
도 13을 참조하면, 기 설정된 렌더링 수준에 따르면, 안티-엘리어싱을 적용하고, 샘필링 레이트는 16이며, 밉맵 레벨의 개수는 7이고, 해상도는 2880X1800이고, 테셀레이션 레벨은 레벨 5이다. 렌더링 장치(102)가 렌더링 수준을 변경하는 것으로 결정한 경우, 렌더링 장치(102)는 새로운 렌더링 수준에 따라 안티-엘리어싱을 적용하지 않고, 샘필링 레이트는 4로, 밉맵 레벨의 개수는 3으로, 해상도는 1920x1080으로, 테셀레이션 레벨은 레벨 1로 변경하여 렌더링을 수행한다.
렌더링 장치(102)는 렌더링 수준을 세 개 이상의 복수의 레벨로 나누어 각각의 렌더링 수준에 대응하는 렌더링 수준에 관한 정보에 대한 수치 및 적용 여부를 룩-업 테이블 형식으로 저장부(미도시)에 저장할 수 있다. 렌더링 장치(102)는 사용자(110)의 시청 상태에 따라 복수의 레벨 중 새로운 렌더링 수준을 결정할 수 있다. 렌더링 장치(102)는 결정된 새로운 렌더링 수준에 대응하는 각각의 렌더링 수준에 관한 정보에 대한 설정을 적용하여 렌더링을 수행할 수 있다.
도 14는 렌더링 수준을 제어하는 장치의 블록도이다.
도 14에 도시된 바와 같이, 렌더링 수준 제어 장치(1400)는 획득부(1410) 및 결정부(1420)를 포함한다. 렌더링 수준 제어 장치(1400)는 도시된 구성요소보다 많은 구성요소에 의해서도 구현될 수 있다.
이하 상기 구성요소들에 대해 차례로 살펴본다.
획득부(1410)는 사용자(110)의 시선에 관한 정보를 획득한다.
시선에 관한 정보는, 상기 스크린에 대한 상기 시선의 위치, 상기 스크린에 대한 상기 시선의 이동 방향, 및 상기 사용자로부터 상기 스크린까지의 거리 중 적어도 하나를 포함할 수 있다. 일 실시예에 따르면, 획득부(1410)는 이미지 센싱 카메라(104)에서 검출되어 신호 처리부(미도시)에서 전기적인 신호로 변환된 사용자(110)의 시선에 관한 정보를 획득할 수 있다. 시선에 관한 정보는 시선의 방향에 대한 정보 및 사용자(110)로부터 스크린(106)까지의 거리를 포함할 수 있다. 또한, 시선의 방향에 대한 정보는 스크린(106)에 대한 시선의 위치 및 스크린(106)에 대한 시선의 이동 방향 등을 포함할 수 있다.
또한, 획득부(1410)는 사용자(110)의 시선에 관한 정보를 일정 시간 간격으로 획득할 수 있다.
결정부(1420)는 획득된 적어도 하나의 정보에 기초하여 렌더링 수준을 결정한다.
일 실시예에 따르면, 결정부(1420)는 획득된 적어도 하나의 정보에 기초하여 렌더링 수준의 변경 여부를 결정할 수 있다. 결정부(1420)는 렌더링 수준을 변경하는 것으로 결정한 경우, 새로운 렌더링 수준을 결정할 수 있다. 또한, 결정부(1420)는 새로운 렌더링 수준에 따른 렌더링 수준에 관한 정보의 수치 및 적용 여부를 결정할 수 있다.
결정부(1420)는 사용자(110)가 스크린을 보고 있지 않은 경우, 사용자(110)로부터 스크린(106)까지의 거리가 먼 경우, 사용자의 시선 방향이 스크린(106)의 법선 방향(108)과 이루는 각도가 큰 경우 등에 있어서, 렌더링 수준을 기 설정된 렌더링 수준보다 낮출 수 있다.
본 명세서에 개시된 실시예들에 따르면, 렌더링 수준 제어 장치(1400)는 기 설정된 렌더링 수준을 필요에 따라 실시간으로 변경하여 GPU가 처리할 일의 양을 감소시킬 수 있다. 이에 따라, 렌더링 수준 제어 장치(1400)는 디바이스(100)의 전력 소모를 감소시킬 수 있다.
일 실시예에 따른 렌더링 수준 제어 장치(1400)는 사용자(110)가 스크린(106)을 보고 있지 않은 경우, 렌더링 수준을 낮출 수 있다. 다른 실시예에 따른 렌더링 수준 제어 장치(1400)는 사용자(110)가 스크린(106)을 보고 있는 상태에 따라, 렌더링 수준의 변화를 인식하지 못하는 수준에서 렌더링 수준을 낮출 수 있다.
따라서, 개시된 실시예에 따른 렌더링 수준 제어 장치(1400)는 디바이스(100)의 베터리 사용 시간을 연장할 수 있다. 또한, 개시된 실시예에 따른 렌더링 수준 제어 장치(1400)는 디바이스(100)의 과열을 방지하여 장치 안정성을 높힐 수 있다. 또한, 개시된 실시예에 따른 렌더링 수준 제어 장치(1400)는 디바이스(100)의 불필요한 리소스 소모를 감소시켜 디바이스(100)의 수명을 연장시킬 수 있다.
도 15는 일 실시예에 따른 디바이스의 블록도이다.
도 15에 도시된 바와 같이, 일 실시예에 따른 디바이스(100)는, 감지부(1510), 획득부(1520), 결정부(1530), 렌더링부(1540)를 포함할 수 있다. 그러나 도시된 구성요소 모두가 필수구성요소인 것은 아니다. 도시된 구성요소보다 많은 구성요소에 의해 디바이스(100)가 구현될 수도 있고, 그보다 적은 구성요소에 의해서도 디바이스(100)는 구현될 수 있다.
도 15에 도시된 획득부(1520) 및 결정부(1530)는 도 14에 도시된 획득부(1410) 및 결정부(1420)와 동일 대응되므로, 도 14에서와 중복되는 설명은 생략한다.
일 실시예에 따른 감지부(1510)는 사용자(110)를 촬영하여, 사용자(110)의 안구 영역을 인식하고, 사용자의 시선을 감지할 수 있다. 감지부(1510)는 예를 들어, 이미지 센싱 카메라를 포함할 수 있다.
또한, 감지부(1510)는 적외선 LED 및 카메라를 포함하는 아이 트래커(eye-tracker)를 이용하여 사용자(110)의 안구 동작에 관한 데이터를 획득할 수 있으나, 이에 제한되지 않는다. 예를 들어, 감지부(1510)는 디바이스(100)에 포함되거나 부착될 수 있다. 또 다른 예로, 감지부(1510)는 사용자(110)가 착용하는 안경에 포함되거나 부착될 수 있으나, 이에 제한되지 않는다.
감지부(1510)가 사용자(110)의 안구를 검출하는 방법 중 일례를 설명한다. 카메라에 근접하게 설치된 적외선 LED(on axls leds)가 켜지면, 아이 트래커는 눈동자가 밝게 빛나는 영상을 얻게 되고, 카메라에서 멀리 떨어진 적외선 LED(off-axls leds)가 켜지면, 아이 트래커는 눈동자가 빛나지 않는 영상을 얻을 수 있다. 아이 트래커는 이렇게 얻어진 두 영상에서 밝게 빛나는 눈의 동공 부분을 검출해 낼 수 있도록 먼저 영상을 흑백 영상으로 변환하고, 두 영상의 차이를 구함으로써, 안구를 검출할 수 있는 것이다.
일 실시예에 따른 렌더링부(1540)는 결정된 렌더링 수준에 따라 스크린(106)에 디스플레이되는 그래픽 영상의 렌더링을 수행할 수 있다.
렌더링부(1540)는 렌더링 수준을 설정할 수 있는 렌더링 파이프라인(rendering pipeline)의 각각의 단계에 결정된 렌더링 수준을 적용하여 렌더링을 수행할 수 있다.
본 실시예들에 따른 장치는 프로세서, 프로그램 데이터를 저장하고 실행하는 메모리, 디스크 드라이브와 같은 영구 저장부(permanent storage), 외부 장치와 통신하는 통신 포트, 터치 패널, 키(key), 버튼 등과 같은 사용자 인터페이스 장치 등을 포함할 수 있다. 소프트웨어 모듈 또는 알고리즘으로 구현되는 방법들은 상기 프로세서상에서 실행 가능한 컴퓨터가 읽을 수 있는 코드들 또는 프로그램 명령들로서 컴퓨터가 읽을 수 있는 기록 매체 상에 저장될 수 있다. 여기서 컴퓨터가 읽을 수 있는 기록 매체로 마그네틱 저장 매체(예컨대, ROM(read-only memory), RAM(random-access memory), 플로피 디스크, 하드 디스크 등) 및 광학적 판독 매체(예컨대, 시디롬(CD-ROM), 디브이디(DVD: Digital Versatile Disc)) 등이 있다. 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템들에 분산되어, 분산 방식으로 컴퓨터가 판독 가능한 코드가 저장되고 실행될 수 있다. 매체는 컴퓨터에 의해 판독가능하며, 메모리에 저장되고, 프로세서에서 실행될 수 있다.
본 실시예는 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들은 특정 기능들을 실행하는 다양한 개수의 하드웨어 또는/및 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 실시예는 하나 이상의 마이크로프로세서들의 제어 또는 다른 제어 장치들에 의해서 다양한 기능들을 실행할 수 있는, 메모리, 프로세싱, 로직(logic), 룩 업 테이블(look-up table) 등과 같은 직접 회로 구성들을 채용할 수 있다. 구성 요소들이 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있는 것과 유사하게, 본 실시예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 본 실시예는 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다. “매커니즘”, “요소”, “수단”, “구성”과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다. 상기 용어는 프로세서 등과 연계하여 소프트웨어의 일련의 처리들(routines)의 의미를 포함할 수 있다.
본 실시예에서 설명하는 특정 실행들은 예시들로서, 어떠한 방법으로도 기술적 범위를 한정하는 것은 아니다. 명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어 시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다. 또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다.
본 명세서(특히 특허청구범위에서)에서 “상기”의 용어 및 이와 유사한 지시 용어의 사용은 단수 및 복수 모두에 해당하는 것일 수 있다. 또한, 범위(range)를 기재한 경우 상기 범위에 속하는 개별적인 값을 포함하는 것으로서(이에 반하는 기재가 없다면), 상세한 설명에 상기 범위를 구성하는 각 개별적인 값을 기재한 것과 같다. 마지막으로, 방법을 구성하는 단계들에 대하여 명백하게 순서를 기재하거나 반하는 기재가 없다면, 상기 단계들은 적당한 순서로 행해질 수 있다. 반드시 상기 단계들의 기재 순서에 한정되는 것은 아니다. 모든 예들 또는 예시적인 용어(예들 들어, 등등)의 사용은 단순히 기술적 사상을 상세히 설명하기 위한 것으로서 특허청구범위에 의해 한정되지 않는 이상 상기 예들 또는 예시적인 용어로 인해 범위가 한정되는 것은 아니다. 또한, 당업자는 다양한 수정, 조합 및 변경이 부가된 특허청구범위 또는 그 균등물의 범주 내에서 설계 조건 및 팩터에 따라 구성될 수 있음을 알 수 있다.
100: 디바이스 102: 렌더링 장치
104: 이미지 센싱 카메라 106: 스크린
108: 스크린의 법선 방향 110: 사용자
120: 사용자의 시선 1400: 렌더링 수준 제어 장치
1410: 획득부 1420: 결정부
1510: 감지부 1520: 획득부
1530: 결정부 1540: 렌더링부

Claims (20)

  1. 사용자의 시선에 관한 정보를 획득하는 단계;
    상기 획득된 정보에 기초하여, 렌더링 수준(rendering quality)을 결정하는 단계; 및
    상기 결정된 렌더링 수준에 따라 상기 그래픽 영상의 렌더링을 수행하는 단계를 포함하는, 렌더링 방법.
  2. 제1항에 있어서,
    상기 렌더링 수준은, 스크린 상에 디스플레이되는 그래픽 영상의 정밀도(Level-of-Detail)를 나타내는, 렌더링 방법.
  3. 제1항에 있어서,
    상기 시선에 관한 정보는, 상기 스크린에 대한 상기 시선의 위치, 상기 스크린에 대한 상기 시선의 이동 방향, 및 상기 사용자로부터 상기 스크린까지의 거리 중 적어도 하나를 포함하는, 렌더링 방법.
  4. 제1항에 있어서,
    상기 획득하는 단계는,
    상기 시선에 관한 정보를 일정 시간 간격으로 획득하는, 렌더링 방법.
  5. 제4항에 있어서,
    상기 렌더링 수준을 결정하는 단계는,
    제1 시점에 획득된 정보 및 제2 시점에 획득된 정보를 비교하는 단계; 및
    상기 비교 결과에 기초하여, 상기 그래픽 영상의 렌더링 수준을 변경하는 단계를 포함하는, 렌더링 방법.
  6. 제5항에 있어서,
    상기 시선에 관한 정보는 상기 사용자의 눈으로부터 상기 스크린까지의 거리를 포함하고,
    상기 비교하는 단계는,
    상기 제2 시점에 획득된 상기 사용자의 눈으로부터 상기 스크린까지의 거리를 기준값과 비교하고,
    상기 기준값은 상기 제1 시점에 획득된 상기 사용자의 눈으로부터 상기 스크린까지의 거리 및 소정의 임계값 중 적어도 하나를 포함하는, 렌더링 방법.
  7. 제5항에 있어서,
    상기 획득하는 단계는,
    상기 획득된 정보를 이용하여, 상기 시선의 방향과 상기 스크린의 법선 방향이 이루는 각도를 획득하는 단계를 더 포함하고,
    상기 비교하는 단계는,
    상기 제2 시점에 획득된 상기 시선의 방향과 상기 스크린의 법선 방향이 이루는 각도를 기준값과 비교하고,
    상기 기준값은 상기 제1 시점에 획득된 상기 시선의 방향과 상기 스크린의 법선 방향이 이루는 각도 및 소정의 임계값 중 적어도 하나를 포함하는, 렌더링 방법.
  8. 제1항에 있어서,
    상기 시선에 관한 정보는, 상기 스크린에 대한 상기 시선의 위치 및 상기 시선의 이동 방향 중 적어도 하나를 포함하고,
    상기 렌더링 수준을 결정하는 단계는,
    상기 시선에 관한 정보에 기초하여 상기 시선이 상기 스크린을 향하는지 여부를 판단하는 단계; 및
    상기 사용자의 시선이 상기 스크린을 향하지 않는 것으로 판단된 경우, 상기 렌더링 수준을 기 설정된 렌더링 수준보다 낮은 수준으로 결정하는 단계를 포함하는, 렌더링 방법.
  9. 제8항에 있어서,
    상기 사용자의 시선이 상기 스크린을 향하는 것으로 판단된 경우, 상기 사용자의 시선이 상기 스크린을 향하는 상태가 지속되고 있는 시간인, 스크린 응시 시간을 획득하는 단계;
    상기 스크린 응시 시간을 소정의 임계값과 비교하는 단계; 및
    상기 비교 결과에 기초하여, 상기 렌더링 수준을 변경하는 단계를 포함하는, 렌더링 방법.
  10. 제1항에 있어서,
    상기 렌더링 수준에 관한 정보는, 오브젝트(object)당 정점(vertex)의 개수, 안티-앨리어싱(anti-aliasing) 레벨, 샘플링 레이트(sampling rate), 밉맵(mipmap) 레벨, 해상도(resolution) 및 테셀레이션(tessellation) 레벨 중 적어도 하나를 포함하는, 렌더링 방법.
  11. 제1항에 있어서,
    상기 획득하는 단계는,
    상기 사용자로부터 상기 스크린까지의 거리 및 상기 시선의 방향과 상기 스크린의 법선 방향이 이루는 각도를 획득하는 단계를 포함하고,
    상기 렌더링 수준을 결정하는 단계는,
    상기 획득된 거리 및 상기 획득된 각도를 이용한 수학식 1
    <수학식 1>
    Figure pat00080

    의 결과값에 기초하여, 상기 렌더링 수준을 결정하는 단계를 포함하며,
    상기 수학식 1에 있어서, 상기 d는 상기 사용자로부터 상기 영상이 디스플레이되는 스크린까지의 거리를, 상기
    Figure pat00081
    는 상기 사용자의 시선 방향이 상기 스크린의 법선 방향과 이루는 각도를, 상기
    Figure pat00082
    는 0 이상의 실수로 상기 d에 대한 가중치를, 상기
    Figure pat00083
    는 0 이상의 실수로 상기 에 대한 가중치를 나타내는, 렌더링 방법.
  12. 제11항에 있어서,
    상기 렌더링을 수행하는 단계는,
    적어도 두 개의 임계값에 의해 구분되는 각각의 구간에 대응하여 지정된 렌더링 수준 중, 상기 결과값이 속하는 구간에 대응하는 렌더링 수준에 따라, 상기 스크린에 디스플레이되는 그래픽 영상의 렌더링을 수행하는 단계를 포함하는, 렌더링 방법.
  13. 제1항에 있어서,
    상기 렌더링 수준을 결정하는 단계는,
    상기 시선에 관한 정보 및 상기 사용자의 기 저장된 생체 정보를 이용하여, 상기 렌더링 수준을 결정하는 단계를 포함하는, 렌더링 방법.
  14. 사용자의 시선에 관한 정보를 획득하는 획득부; 및
    상기 획득된 정보에 기초하여, 렌더링 수준(rendering quality)을 결정하는 결정부를 포함하는, 렌더링 수준 제어 장치.
  15. 제14항에 있어서,
    상기 렌더링 수준은, 스크린 상에 디스플레이되는 그래픽 영상의 정밀도(Level-of-Detail)를 나타내는, 렌더링 수준 제어 장치.
  16. 제14항에 있어서,
    상기 획득부는, 상기 시선에 관한 정보를 일정 시간 간격으로 획득하며,
    상기 결정부는, 제1 시점에 획득된 정보 및 제2 시점에 획득된 정보를 비교하고, 상기 비교 결과에 기초하여 상기 그래픽 영상의 렌더링 수준을 변경하는, 렌더링 수준 제어 장치.
  17. 제14항에 있어서,
    상기 시선에 관한 정보는 상기 사용자의 눈으로부터 상기 스크린까지의 거리를 포함하고,
    상기 결정부는, 상기 제2 시점에 획득된 상기 사용자의 눈으로부터 상기 스크린까지의 거리를 기준값과 비교하고, 상기 비교 결과에 기초하여 상기 그래픽 영상의 렌더링 수준을 변경하며,
    상기 기준값은 상기 제1 시점에 획득된 상기 사용자의 눈으로부터 상기 스크린까지의 거리 및 소정의 임계값 중 적어도 하나를 포함하는, 렌더링 수준 제어 장치.
  18. 제14항에 있어서,
    상기 획득부는, 상기 획득된 정보를 이용하여, 상기 시선의 방향과 상기 스크린의 법선 방향이 이루는 각도를 획득하고,
    상기 결정부는, 상기 제2 시점에 획득된 상기 시선의 방향과 상기 스크린의 법선 방향이 이루는 각도를 기준값과 비교하고, 상기 비교 결과에 기초하여 상기 그래픽 영상의 기 설정된 렌더링 수준을 변경하며,
    상기 기준값은 상기 제1 시점에 획득된 상기 시선의 방향과 상기 스크린의 법선 방향이 이루는 각도 및 소정의 임계값 중 적어도 하나를 포함하는, 렌더링 수준 제어 장치.
  19. 제14항에 있어서,
    상기 시선에 관한 정보는, 상기 스크린에 대한 상기 시선의 위치 및 상기 시선의 이동 방향 중 적어도 하나를 포함하고,
    상기 결정부는, 상기 시선에 관한 정보에 기초하여 상기 시선이 상기 스크린을 향하는지 여부를 판단하고, 상기 사용자의 시선이 상기 스크린을 향하지 않는 것으로 판단된 경우, 상기 렌더링 수준을 기 설정된 렌더링 수준보다 낮은 수준으로 결정하는, 렌더링 수준 제어 장치.
  20. 사용자를 촬영하여, 상기 사용자의 안구 영역을 인식하고 상기 사용자의 시선을 감지하는 감지부;
    상기 감지된 시선을 전기적인 신호로 변환한 데이터를 이용하여, 상기 사용자의 시선에 관한 정보를 획득하는 획득부;
    상기 획득된 정보에 기초하여, 스크린 상에 디스플레이되는 그래픽 영상의 정밀도(Level-of-Detail)를 나타내는 렌더링 수준(rendering quality)을 결정하는 결정부; 및
    상기 결정된 렌더링 수준에 따라 상기 스크린 상에 디스플레이되는 상기 그래픽 영상의 렌더링을 수행하는 렌더링부를 포함하고,
    상기 시선에 관한 정보는, 상기 스크린에 대한 상기 시선의 위치, 상기 스크린에 대한 상기 시선의 이동 방향, 및 상기 사용자로부터 상기 스크린까지의 거리 중 적어도 하나를 포함하는, 디바이스.
KR1020140119370A 2014-09-05 2014-09-05 렌더링 수준 제어 방법 및 장치 KR102244620B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140119370A KR102244620B1 (ko) 2014-09-05 2014-09-05 렌더링 수준 제어 방법 및 장치
US14/667,458 US9720497B2 (en) 2014-09-05 2015-03-24 Method and apparatus for controlling rendering quality

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140119370A KR102244620B1 (ko) 2014-09-05 2014-09-05 렌더링 수준 제어 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20160029596A true KR20160029596A (ko) 2016-03-15
KR102244620B1 KR102244620B1 (ko) 2021-04-26

Family

ID=55437968

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140119370A KR102244620B1 (ko) 2014-09-05 2014-09-05 렌더링 수준 제어 방법 및 장치

Country Status (2)

Country Link
US (1) US9720497B2 (ko)
KR (1) KR102244620B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160045561A (ko) * 2014-10-17 2016-04-27 후아웨이 테크놀러지 컴퍼니 리미티드 이미지 안티 에일리어싱 방법 및 장치
KR101940272B1 (ko) * 2017-08-01 2019-04-11 에스케이텔레콤 주식회사 3차원 가상 컨텐츠 확대 장치 및 방법
WO2023132376A1 (ko) * 2022-01-04 2023-07-13 엘지전자 주식회사 Tv 및 그 제어 방법

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016189556A (ja) * 2015-03-30 2016-11-04 株式会社リコー 面談管理システム、面談システム、面談管理方法及びプログラム
US10798455B2 (en) 2017-12-22 2020-10-06 Comcast Cable Communications, Llc Video delivery
US10390063B2 (en) 2017-12-22 2019-08-20 Comcast Cable Communications, Llc Predictive content delivery for video streaming services
CN112584280B (zh) * 2019-09-27 2022-11-29 百度在线网络技术(北京)有限公司 智能设备的控制方法、装置、设备和介质
US11615586B2 (en) 2020-11-06 2023-03-28 Adobe Inc. Modifying light sources within three-dimensional environments by utilizing control models based on three-dimensional interaction primitives
US11423607B2 (en) 2020-11-20 2022-08-23 Adobe Inc. Generating enriched light sources utilizing surface-centric representations
US11551409B2 (en) * 2020-12-01 2023-01-10 Institut Mines Telecom Rendering portions of a three-dimensional environment with different sampling rates utilizing a user-defined focus frame
US12026831B2 (en) 2021-10-27 2024-07-02 Samsung Electronics Co., Ltd. Electronic device and method for spatial mapping using the same

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004030665A (ja) * 2003-06-19 2004-01-29 Nec Corp 3次元グラフィックス表示装置
US20050286125A1 (en) * 2004-06-24 2005-12-29 Henrik Sundstrom Proximity assisted 3D rendering
JP2014077993A (ja) * 2012-09-18 2014-05-01 Sharp Corp 表示装置

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4082591B2 (ja) * 2003-05-20 2008-04-30 インターナショナル・ビジネス・マシーンズ・コーポレーション データ編集装置及びプログラム
KR100535966B1 (ko) 2003-08-08 2005-12-09 엘지전자 주식회사 3차원 엔진을 탑재한 이동통신 단말기의 소비전력 절감 방법
US7719540B2 (en) 2004-03-31 2010-05-18 Intel Corporation Render-cache controller for multithreading, multi-core graphics processor
EP1846834A2 (en) 2005-01-25 2007-10-24 Lucid Information Technology, Ltd. Graphics processing and display system employing multiple graphics cores on a silicon chip of monolithic construction
US20060256133A1 (en) * 2005-11-05 2006-11-16 Outland Research Gaze-responsive video advertisment display
US8111264B2 (en) 2006-03-30 2012-02-07 Ati Technologies Ulc Method of and system for non-uniform image enhancement
US20080055311A1 (en) 2006-08-31 2008-03-06 Ati Technologies Inc. Portable device with run-time based rendering quality control and method thereof
JP4743234B2 (ja) * 2008-07-02 2011-08-10 ソニー株式会社 表示装置及び表示方法
US8605087B2 (en) 2008-07-03 2013-12-10 Nvidia Corporation Hybrid multisample/supersample antialiasing
KR101602363B1 (ko) 2008-09-11 2016-03-10 엘지전자 주식회사 3차원 사용자 인터페이스의 제어방법과 이를 이용한 이동 단말기
US20100225640A1 (en) 2009-03-03 2010-09-09 Vieri Carlin J Switching Operating Modes of Liquid Crystal Displays
US20100296802A1 (en) 2009-05-21 2010-11-25 John Andrew Davies Self-zooming camera
KR101649098B1 (ko) 2009-06-30 2016-08-19 삼성전자주식회사 휴대용 단말기에서 센서를 이용한 렌더링 방법 및 장치
US20110216078A1 (en) 2010-03-04 2011-09-08 Paul Blinzer Method, System, and Apparatus for Processing Video and/or Graphics Data Using Multiple Processors Without Losing State Information
US8913004B1 (en) * 2010-03-05 2014-12-16 Amazon Technologies, Inc. Action based device control
US9285874B2 (en) * 2011-02-09 2016-03-15 Apple Inc. Gaze detection in a 3D mapping environment
US20130128120A1 (en) 2011-04-06 2013-05-23 Rupen Chanda Graphics Pipeline Power Consumption Reduction
US8358321B1 (en) 2011-04-29 2013-01-22 Google Inc. Change screen orientation
US9897805B2 (en) * 2013-06-07 2018-02-20 Sony Interactive Entertainment Inc. Image rendering responsive to user actions in head mounted display
US8842202B2 (en) 2012-10-10 2014-09-23 Nec Casio Mobile Communications Ltd. Mobile terminal, method for adjusting magnification of camera and program
KR101983288B1 (ko) 2012-11-22 2019-05-29 삼성전자주식회사 카메라 촬영 제어장치 및 방법
TWI532377B (zh) * 2013-10-18 2016-05-01 原相科技股份有限公司 影像感測系統、影像感測方法以及眼球追蹤系統、眼球追蹤方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004030665A (ja) * 2003-06-19 2004-01-29 Nec Corp 3次元グラフィックス表示装置
US20050286125A1 (en) * 2004-06-24 2005-12-29 Henrik Sundstrom Proximity assisted 3D rendering
JP2014077993A (ja) * 2012-09-18 2014-05-01 Sharp Corp 表示装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160045561A (ko) * 2014-10-17 2016-04-27 후아웨이 테크놀러지 컴퍼니 리미티드 이미지 안티 에일리어싱 방법 및 장치
KR101940272B1 (ko) * 2017-08-01 2019-04-11 에스케이텔레콤 주식회사 3차원 가상 컨텐츠 확대 장치 및 방법
WO2023132376A1 (ko) * 2022-01-04 2023-07-13 엘지전자 주식회사 Tv 및 그 제어 방법

Also Published As

Publication number Publication date
US9720497B2 (en) 2017-08-01
KR102244620B1 (ko) 2021-04-26
US20160071304A1 (en) 2016-03-10

Similar Documents

Publication Publication Date Title
KR102244620B1 (ko) 렌더링 수준 제어 방법 및 장치
US11010968B2 (en) Automated three dimensional model generation
US20230334761A1 (en) Foveated Rendering
US10169846B2 (en) Selective peripheral vision filtering in a foveated rendering system
CN108351864B (zh) 成凹几何密铺
CN108027652B (zh) 信息处理设备、信息处理方法以及记录介质
US9766697B2 (en) Method of providing a virtual space image, that is subjected to blurring processing based on displacement of a HMD and system therefor
CN104380338B (zh) 信息处理器以及信息处理方法
EP3144899A1 (en) Apparatus and method for adjusting brightness of image
EP3827416B1 (en) Lighting estimation for augmented reality
US9679415B2 (en) Image synthesis method and image synthesis apparatus
JP2022511273A (ja) 拡張現実または仮想現実のシーンにおけるオブジェクトの表現の生成および修正
US10895909B2 (en) Gaze and saccade based graphical manipulation
CN109696953B (zh) 虚拟现实文字显示的方法、装置和虚拟现实设备
CN114026603B (zh) 渲染计算机生成现实文本
EP3816941A1 (en) Image processing system and method
US10573073B2 (en) Information processing apparatus, information processing method, and storage medium
CN105574817A (zh) 图像的抗锯齿方法和装置
EP3236306A1 (en) A method for rendering a 3d virtual reality and a virtual reality equipment for implementing the method
US20210271075A1 (en) Information processing apparatus, information processing method, and program
US20220351340A1 (en) Image processing method and image display device
JP2017010508A (ja) プログラム、記録媒体、輝度演算装置及び輝度演算方法
CN111612915A (zh) 渲染对象以匹配相机噪声
US20240046584A1 (en) Information processing apparatus
WO2023058545A1 (ja) 情報処理装置および方法、プログラム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant