KR101565854B1 - 3차원의 가상 공간 내에서 가상 카메라를 제어하기 위한 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체 - Google Patents

3차원의 가상 공간 내에서 가상 카메라를 제어하기 위한 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체 Download PDF

Info

Publication number
KR101565854B1
KR101565854B1 KR1020130123418A KR20130123418A KR101565854B1 KR 101565854 B1 KR101565854 B1 KR 101565854B1 KR 1020130123418 A KR1020130123418 A KR 1020130123418A KR 20130123418 A KR20130123418 A KR 20130123418A KR 101565854 B1 KR101565854 B1 KR 101565854B1
Authority
KR
South Korea
Prior art keywords
virtual camera
control data
dimensional content
motion
path
Prior art date
Application number
KR1020130123418A
Other languages
English (en)
Other versions
KR20140048827A (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 전재웅
Publication of KR20140048827A publication Critical patent/KR20140048827A/ko
Application granted granted Critical
Publication of KR101565854B1 publication Critical patent/KR101565854B1/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/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • 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/048Interaction techniques based on graphical user interfaces [GUI]
    • 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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • 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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04817Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
    • 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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • 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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)

Abstract

본 발명은 3차원의 가상 공간 내에서 가상 카메라를 제어하기 위한 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체에 관한 것이다. 본 발명의 일 태양에 따르면, 3차원의 가상 공간 내에서 가상 카메라를 제어하기 위한 시스템으로서, 상기 가상 카메라에 대한 제어 데이터를 입력 받기 위한 사용자 인터페이스를 제공하는 사용자 인터페이스 모듈, 및 상기 가상 카메라의 운동면을 설정하고 상기 제어 데이터에 따라 상기 가상 카메라의 속성을 제어하는 카메라 제어 모듈 - 상기 속성은 상기 가상 카메라의 위치, 시선, 시야 및 운동 궤적 중 적어도 일부를 포함하고, 상기 위치는 상기 운동면 상으로 또는 그 주위로 제한됨 - 을 포함하는 시스템이 제공된다.

Description

3차원의 가상 공간 내에서 가상 카메라를 제어하기 위한 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체{METHOD, SYSTEM AND COMPUTER-READABLE RECORDING MEDIUM FOR CONTROLLING VIRTUAL CAMERA IN VIRTUAL SPACE OF THREE DIMENSIONS}
본 발명은 3차원의 가상 공간 내에서 가상 카메라를 제어하기 위한 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체에 관한 것이다.
근래에 들어, 퍼스널 컴퓨터나 이동 단말 장치 등의 디지털 기기의 2차원 화면에서도 3차원적으로 표현될 수 있는 컨텐트(아래에서는, 이러한 컨텐트를 편의상 "3차원 컨텐트"라고 칭하기로 함)에 대한 수요가 늘고 있다. 이러한 3차원 컨텐트의 좋은 예로서 주식회사 애니펜의 3차원 애니메이션 저작 프로그램에 의하여 저작되는 3차원 애니메이션을 들 수 있다.
본 발명자(들)는, 사용자들이 비교적 간단한 도구나 인터페이스만 사용하고도 3차원 컨텐트를 저작할 수 있도록 하기 위하여, 국제공개공보 WO2011/149160(본 공보의 명세서는 여기에 그 전체로서 편입된 것으로 간주됨)에 의하여 신규한 3차원 애니메이션 저작 방법 등에 관한 발명을 개시한 바 있다. 이러한 발명이나 기타 3차원의 가상 공간을 상정하여 시각적인 표현을 수행하는 발명에서는 3차원의 가상 공간 내에서 가상 카메라를 제어하는 것이 매우 중요하다고 말할 수 있다.
따라서, 본 발명자(들)는 본 명세서에 의하여 3차원의 가상 공간 내에서 가상 카메라를 제어하기 위한 신규한 기술을 제안하는 바이다.
본 발명은 전술한 종래 기술의 문제점을 모두 해결하는 것을 그 목적으로 한다.
본 발명은 사용자가 3차원의 가상 공간 내에서 가상 카메라를 용이하게 제어할 수 있도록 하는 것을 다른 목적으로 한다.
본 발명은 사용자가 2차원적인 사용자 인터페이스로도 3차원의 가상 공간 내에서 가상 카메라를 충분히 제어할 수 있게끔 하는 것을 또 다른 목적으로 한다.
상기 목적을 달성하기 위한 본 발명의 대표적인 구성은 다음과 같다.
본 발명의 일 태양에 따르면, 3차원의 가상 공간 내에서 가상 카메라를 제어하기 위한 시스템으로서, 상기 가상 카메라에 대한 제어 데이터를 입력 받기 위한 사용자 인터페이스를 제공하는 사용자 인터페이스 모듈, 및 상기 가상 카메라의 운동면을 설정하고 상기 제어 데이터에 따라 상기 가상 카메라의 속성을 제어하는 카메라 제어 모듈 - 상기 속성은 상기 가상 카메라의 위치, 시선, 시야 및 운동 궤적 중 적어도 일부를 포함하고, 상기 위치는 상기 운동면 상으로 또는 그 주위로 제한됨 - 을 포함하는 시스템이 제공된다.
이 외에도, 본 발명을 구현하기 위한 다른 방법, 다른 시스템 및 상기 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 컴퓨터 판독 가능한 기록 매체가 더 제공된다.
본 발명에 의하면, 사용자가 3차원의 가상 공간 내에서 가상 카메라를 용이하게 제어할 수 있게 된다.
본 발명에 의하면, 사용자가 2차원적인 사용자 인터페이스로도 3차원의 가상 공간 내에서 가상 카메라를 충분히 제어할 수 있게 된다.
도 1은 본 발명의 일 실시예에 따라 3차원의 가상 공간 내에서 가상 카메라를 제어하기 위한 전체 시스템의 개략적인 구성을 나타내는 도면이다.
도 2와 도 3은 본 발명의 일 실시예에 따른 사용자 인터페이스를 예시적으로 도시하는 도면이다.
도 4는 본 발명의 일 실시예에 따른 가상 카메라의 일반적인 운동면에 관한 개념도이다.
도 5는, 본 발명의 일 실시예에 따른, 3차원 컨텐트 오브젝트에 관한 특정 경로가 있는 경우의 가상 카메라의 운동면에 관한 개념도이다.
도 6은, 본 발명의 일 실시예에 따른, 3차원 컨텐트 오브젝트가 그라운드 면 상에 있지 않은 경우의 가상 카메라의 운동면에 관한 개념도이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이러한 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 본 명세서에 기재되어 있는 특정 형상, 구조 및 특성은 본 발명의 정신과 범위를 벗어나지 않으면서 일 실시예로부터 다른 실시예로 변경되어 구현될 수 있다. 또한, 각각의 실시예 내의 개별 구성요소의 위치 또는 배치도 본 발명의 정신과 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 행하여지는 것이 아니며, 본 발명의 범위는 특허청구범위의 청구항들이 청구하는 범위 및 그와 균등한 모든 범위를 포괄하는 것으로 받아들여져야 한다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 구성요소를 나타낸다.
이하에서는, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 여러 바람직한 실시예에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.
[본 발명의 바람직한 실시예]
전체 시스템의 구성
도 1은 본 발명의 일 실시예에 따라 3차원의 가상 공간 내에서 가상 카메라를 제어하기 위한 전체 시스템의 개략적인 구성을 나타내는 도면이다.
도시된 바와 같이, 본 발명의 일 실시예에 따라 3차원의 가상 공간 내에서 가상 카메라를 제어하기 위한 시스템은 사용자 인터페이스 모듈(100)과 카메라 제어 모듈(200)을 포함하여 구성될 수 있다. 이러한 가상 카메라 제어 시스템은 하나의 연산 장치에서 집합적으로 구현되거나 둘 이상의 연산 장치에서 분산되어 구현될 수 있다. 예를 들어, 가상 카메라 제어 시스템의 모든 모듈이 통상적으로 가상 카메라의 활용 및 제어가 필요하게 되는 사용자 단말 장치(예를 들면, 데스크탑 컴퓨터, 노트북 컴퓨터, 워크스테이션, PDA, 웹 패드(특히, 스마트 패드), 이동 전화기(특히, 스마트 폰) 등)(미도시됨)에 포함될 수도 있지만, 일부 모듈이, 사용자 단말 장치 외의, 사용자 단말 장치와 통신할 수 있는 다른 디지털 기기(예를 들면, 3차원 컨텐트 제공 서버)(미도시됨)에 포함될 수도 있다.
어느 경우에나, 사용자 인터페이스 모듈(100)과 카메라 제어 모듈(200)은 소정의 통신망(미도시됨)이나 소정의 프로세서(미도시됨)에 의하여 상호 통신할 수 있다. 전자의 경우, 통신망은 유선 통신이나 무선 통신과 같은 통신 양태를 가리지 않고 구성될 수 있으며, 근거리 통신망(LAN; Local Area Network), 도시권 통신망(MAN; Metropolitan Area Network), 광역 통신망(WAN; Wide Area Network) 등 다양한 통신망으로 구성될 수 있다. 바람직하게는, 본 명세서에서 말하는 통신망은 공지의 인터넷 또는 월드와이드웹(WWW; World Wide Web)일 수 있다. 그러나, 통신망은, 굳이 이에 국한될 필요 없이, 공지의 유무선 데이터 통신망, 공지의 전화망 또는 공지의 유무선 텔레비전 통신망을 그 적어도 일부에 있어서 포함할 수도 있다. 후자의 경우, 프로세서는 장치 내의 위와 같은 모듈들 사이에서 제공되거나 교환되는 데이터의 흐름을 제어할 수 있다.
한편, 사용자 인터페이스 모듈(100)과 카메라 제어 모듈(200)은 운영 시스템, 응용 프로그램 모듈 또는 기타 프로그램 모듈의 형태로 가상 카메라 제어 시스템에 포함될 수 있고, 물리적으로는 여러 가지 공지의 기억 장치에 저장될 수 있다. 한편, 이러한 프로그램 모듈은 본 발명에 따라 후술할 특정 업무를 수행하거나 특정 추상 데이터 유형을 실행하는 루틴, 서브루틴, 프로그램, 오브젝트, 컴포넌트, 데이터 구조 등을 포괄하지만, 이에 제한되지는 않는다.
사용자 인터페이스 모듈(100)은 사용자가 자신의 단말 장치에 의하여 3차원의 가상 공간 내에서 3차원 애니메이션 등의 3차원 컨텐트를 촬상하는 가상 카메라를 제어할 수 있도록 하는 사용자 인터페이스를 제공하는 기능을 수행할 수 있다. 다시 말하면, 사용자 인터페이스 모듈(100)은 사용자가 가장 편리한 형태의 조작(예를 들면, 스마트 패드의 화면 상에 대한 터치에 의한 경로 입력이나 터치에 의한 오브젝트 특정, 스케치 제스쳐의 입력 등)만으로도 가상 카메라의 위치, 시선, 시야, 운동 궤적 등을 제어할 수 있게끔 할 수 있다. 사용자 인터페이스 모듈(100)의 구체적인 구성과 기능에 관하여는 아래에서 더 자세하게 설명하기로 한다.
한편, 카메라 제어 모듈(200)은 사용자가 사용자 인터페이스에 의하여 입력한 데이터에 따라 가상 카메라의 위치, 시선, 시야, 운동 궤적 등을 제어하는 기능을 수행할 수 있다. 제어될 수 있는 가상 카메라의 속성의 구체적인 예는 아래와 같을 수 있다:
위치: P(x, y, z)와 같이 표시될 수 있는 가상 카메라의 위치
룩앳 벡터(look-at vector): 가상 카메라의 시선이나 가상 카메라의 시야의 중심선을 나타내는 벡터
디렉션 벡터(direction vector): 가상 카메라의 촬상부가 피치 방향, 요 방향 및/또는 롤 방향으로 기울어진 정도를 나타내는 벡터
시야각(field of view angle): 가상 카메라가 촬상을 할 수 있는 시야를 나타내는 각도. 수직 시야각과 수평 시야각이 있을 수 있음.
카메라 제어 모듈(200)의 구체적인 구성과 기능에 관하여도 아래에서 더 자세하게 설명하기로 한다.
사용자 인터페이스와 가상 카메라에 대한 제어
아래에서는, 사용자 인터페이스 모듈(100)에 의하여 제공될 수 있는 사용자 인터페이스와, 이를 통하여 수행될 수 있는, 가상 카메라에 대한 제어에 관하여 살펴보기로 한다. 본 실시예에서, 사용자 인터페이스는 바람직하게는 위젯의 형태를 가질 수 있다.
도 2와 도 3은 본 발명의 일 실시예에 따른 사용자 인터페이스를 예시적으로 도시하는 도면이다.
도 2에 상당히 자세하게 도시된 바와 같이, 사용자 인터페이스는 사용자에게 그래픽적으로 또는 하드웨어적으로 제공되어 사용자로 하여금 다음과 같은 제어 명령을 발할 수 있도록 (즉, 제어 데이터를 입력할 수 있도록) 구성될 수 있다.
Fold up/out: 사용자 인터페이스 자체를 접거나 펴기
Zoom in/out: 가상 카메라의 줌인/줌아웃
Tilt up/down: 가상 카메라의 틸트업/틸트다운
Pan left/right: 가상 카메라의 좌우 패닝
Frustum view on/off: 프러스텀 뷰를 켜거나 끄기
Focus lock/unlock: 가상 카메라를 포커싱하고 나서 고정하거나 그러한 포커싱을 해제하기(예를 들면, 캐릭터와 같은 애니메이션 오브젝트나 애니메이션의 그라운드 면의 특정 부분 등에 대하여 가상 카메라를 포커싱하고 나서 고정하거나 그러한 포커싱을 해제하기)
한편, 사용자는 사용자 인터페이스에 포함될 수 있는 포커싱 윈도우(Focusing window)에 의하여 가상 카메라가 촬상하고 있는 부분 중에서 특히 포커싱을 할 부분을 선택할 수 있다. 이에 따라, 가상 카메라는 포커싱을 수행할 수 있다.
그리고, 사용자는 역시 포함될 수 있는 프리뷰 윈도우(Preview window)에 의하여 가상 카메라가 촬상하고 있는 장면을 실시간으로 확인할 수 있다.
또한, 사용자는 역시 포함될 수 있는 제스쳐 윈도우(Gesture window)에 의하여 소정의 제스쳐를 스케치 방식 등으로 입력함으로써(스케치의 수단은 손가락, 전자 펜, 터치 펜 등일 수 있음), 사용자 인터페이스 모듈(100) 내에서 이미 이러한 제스쳐와 매칭되어 있는 가상 카메라에 대한 제어 데이터를 입력하거나, 다양한 제어 데이터의 가중치를 그래프 드로잉의 방식으로 조절하여 줄 수 있다(이에 관하여 도 3을 더 참조할 수 있다).
이상에서, 사용자 인터페이스의 여러 가지 윈도우에 관하여 설명하였지만, 이러한 윈도우 중 적어도 일부가 사용자 단말 장치의 화면으로 대체될 수도 있음은 당업자에게 자명하다.
사용자가 사용자 인터페이스를 사용하여 제어한 결과에 따라, 가상 카메라의 위치, 시선, 시야 등과 같은 속성의 값이, 필요에 따라 연속적으로, 결정될 수 있다. 이렇게 결정된 가상 카메라의 속성 값은 가상 카메라의 모션 시퀀스를 구성하는 데에 사용될 수 있다.
모션 시퀀스를 구성하는, 가상 카메라의 각 속성 값의 집합의 사이에서는 가상 카메라의 추가적인 속성 값이 보간법에 의하여 더 결정될 수 있다. 즉, 사용자는 가상 카메라의 속성 값을 시간의 흐름에 따라 사실상 연속적으로 결정할 수도 있게 된다. 그 후에, 사용자는 필요에 따라 사용자 인터페이스의 프리뷰 윈도우를 사용하여 가상 카메라가 촬상하는 장면을 실시간으로 확인하고 나서, 제스쳐 윈도우에 의하여 소정의 제스쳐를 스케치 방식으로 입력하여 가상 카메라에 대한 (보정 성격의) 제어를 더 행하거나 가상 카메라의 속성 값을 조절할 수 있다.
위에서 설명된 사용자 인터페이스는 후술하는 바와 같은 카메라 운동면이나 3차원 가상 공간 내의 3차원 컨텐트의 그라운드 면 또는 기타 다른 곳에 대하여 대응되어 배치되고 표시될 수 있다.
한편, 사용자가 사용자 인터페이스에 의하여 가상 카메라에 대한 제어 데이터의 입력을 마치면, 카메라 제어 모듈(200)은 이를 수신하거나 이에 의하여 결정되는 가상 카메라의 속성 값을 수신하여 가상 카메라를 제어할 수 있다.
가상 카메라의 운동면
아래에서는, 본 발명에서 특유한, 가상 카메라의 운동면을 활용하는 것에 관하여 살펴보기로 한다.
종래의 기술에 따르는 경우, 가상 카메라의 위치, 운동 궤적 등이 사용자에 의하여 매번 결정되어야 한다. 이는 사용자에게, 특히, 2차원 화면 상에서 제어를 행하여야 하는 사용자에게, 상당한 부담이 된다. 따라서, 본 발명은 사용자의 복잡한 조작 없이도 가상 카메라의 위치, 운동 궤적 등을 적절하게 제한하고 결정하여 줄 수 있는 가상 카메라의 운동면의 설정 및 이용에 관하여 제안하는 바이다.
도 4는 본 발명의 일 실시예에 따른 가상 카메라의 일반적인 운동면에 관한 개념도이다.
도시된 바와 같이, 카메라 제어 모듈(200)은, 가장 일반적으로는, 가상 카메라의 위치를 그것이 촬상하는 3차원 컨텐트 오브젝트의 위치를 중심점으로 하는 소정의 가상적인 구(globe)의 면 상으로 또는 그 주위로 제한할 수 있다(여기서 그리고 이하에서, "주위"라는 용어는, 가상 카메라의 위치의 기준면이 상기 구면이되, 가상 카메라가 경우에 따라 수행할 수 있는 동작인 흔들림 등에 의하여 가상 카메라의 위치가 정확히 구면 상에 있지는 않게 되는 경우까지 포괄하기 위한 것이다). 다만, 이러한 가상적인 구의 크기는 사용자가 사용자 인터페이스에 의하여 입력하는 제어 데이터에 따라 변경될 수도 있다. 아래에서는, 편의상, 가상 카메라의 운동이 제한적으로 이루어지는 위와 같은 구면 등을 가상 카메라의 운동면이라고 칭하기로 한다.
물론, 본 실시예에서, 구가 아닌 다른 규정될 수 있는 기하학적인 형태가 가상 카메라의 위치의 제한에 관한 형태로서 채택될 수도 있다. 예를 들면, 달걀형, 원뿔, 원기둥, 다각뿔, 다각기둥, 다면체 등이 이러한 형태일 수 있다.
도 5는, 본 발명의 일 실시예에 따른, 3차원 컨텐트 오브젝트에 관한 특정 경로가 있는 경우의 가상 카메라의 운동면에 관한 개념도이다.
도시된 바와 같이, 3차원 컨텐트 오브젝트에 관한 그 그라운드 면 상의 특정 경로가 있는 경우, 카메라 제어 모듈(200)은 가상 카메라의 위치를 상기 특정 경로로부터 소정의 각도로 (예를 들면, 수직으로) 상향 연장되는 가상의 운동면 상으로 또는 그 주위로 제한할 수 있다. 위와 같은 경로는 움직이는 3차원 컨텐트 오브젝트의 그라운드 면 상의 운동 경로로부터 소정의 일정한 거리만큼 이격된 그라운드 면 상의 경로(이러한 경로는 3차원 컨텐트 오브젝트의 운동이 정하여지면 자동적으로 정하여질 수 있고, 상기 일정한 거리는 사용자가 사용자 인터페이스에 의하여 입력하는 제어 데이터에 따라 변경될 수 있음)이거나 사용자가 사용자 인터페이스의 제스쳐 윈도우에 대하여 또는 사용자 단말 장치의 화면에 대하여 스케치 방식으로 입력한 임의의 경로일 수 있다. 후자의 경우, 입력된 스케치 경로는 3차원 컨텐트의 그라운드 면에 대하여 투영되어 근사된(uniform cubic B-spline) 경로일 수 있다.
한편, 사용자는 사용자 인터페이스를 사용하여 위와 같은 운동면 상에서 가상 카메라가 촬상하는 장면을 보면서 가상 카메라의 그라운드 면 상의 해당 경로를 스케치 방식 등으로 수정할 수도 있다(이 경우에 가상 카메라의 다른 속성 값이 별도로 변경될 수도 있음은 물론이다).
도 6은, 본 발명의 일 실시예에 따른, 3차원 컨텐트 오브젝트가 그라운드 면 상에 있지 않은 경우의 가상 카메라의 운동면에 관한 개념도이다.
도시된 바와 같이, 3차원 컨텐트 오브젝트가 그라운드 면 상에 있지 아니하고 그라운드 위로(over) 상승되어 있는 경우가 있을 수 있다. 이러한 경우, 카메라 제어 모듈(200)은 가상 카메라의 위치를 상기 상승된 위치를 중심점으로 하는 소정의 가상적인 구의 면 상으로 또는 그 주위로 제한할 수 있다. 위와 같은 제한은 사용자가 사용자 인터페이스에 의하여 가상 카메라가 촬상할 3차원 컨텐트 오브젝트를 특정함에 따라 수행될 수도 있지만, 사용자가 사용자 인터페이스의 제스쳐 윈도우 상에서 그라운드 면 위의 임의의 부분을 선택함에 따라 수행될 수도 있다. 위와 같은 선택은 도시된 바와 같이 3차원 컨텐트 오브젝트의 위치를 기점으로 하는 스케치 방식의 선택일 수도 있다.
한편, 사용자는 사용자 인터페이스를 사용하여 위와 같은 운동면에서 가상 카메라가 촬상하는 장면을 보면서 가상 카메라의 운동이 제한되는 구면의 중심점을 수정할 수도 있다(이 경우에 가상 카메라의 다른 속성 값이 별도로 변경될 수도 있음은 물론이다).
이상에서, 가상 카메라의 운동면이나 그것을 결정하는 데에 사용된 그라운드 면 상의 경로, 구면인 운동면의 중심점 등은 파일의 형식으로 저장되어 재사용될 수도 있다.
한편, 본 실시예에서도, 구가 아닌 다른 규정될 수 있는 다양한 기하학적인 형태가 가상 카메라의 위치의 제한에 관한 형태로서 채택될 수 있다.
이상 설명된 본 발명에 따른 실시예는 다양한 컴퓨터 구성요소를 통하여 실행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등과 같은, 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의하여 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용하여 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위하여 하나 이상의 소프트웨어 모듈로 변경될 수 있으며, 그 역도 마찬가지이다.
이상에서 본 발명이 구체적인 구성요소 등과 같은 특정 사항과 한정된 실시예 및 도면에 의하여 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위하여 제공된 것일 뿐, 본 발명이 상기 실시예에 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정과 변경을 꾀할 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 또는 이로부터 등가적으로 변경된 모든 범위는 본 발명의 사상의 범주에 속한다고 할 것이다.
100: 사용자 인터페이스 모듈
200: 카메라 제어 모듈

Claims (15)

  1. 3차원의 가상 공간 내에서 가상 카메라를 제어하기 위한 시스템으로서,
    상기 가상 카메라에 대한 제어 데이터를 입력 받기 위한 사용자 인터페이스를 제공하는 사용자 인터페이스 모듈, 및
    상기 제어 데이터에 따라 상기 가상 카메라의 운동면을 설정하고, 상기 제어 데이터에 따라 상기 가상 카메라의 속성을 제어하는 카메라 제어 모듈 - 상기 속성은 상기 가상 카메라의 위치, 시선, 시야 및 운동 궤적 중 적어도 일부를 포함하고, 상기 위치는 상기 운동면 상으로 또는 그 주위로 제한됨 -
    을 포함하고,
    상기 운동면은 상기 가상 카메라가 관찰하는 3차원 컨텐트의 그라운드 면 위에서 상기 제어 데이터에 의해 특정된 부분의 위치에 기초하여 설정되고,
    상기 사용자 인터페이스는 소정의 제스쳐를 입력 받기 위한 제스쳐 윈도우를 포함하고,
    상기 사용자 인터페이스 모듈은 상기 제스쳐 윈도우를 통하여 입력된 제스쳐와 상기 가상 카메라에 대한 소정의 제어 데이터를 매칭시킬 수 있는 것인 시스템.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서,
    상기 운동면은 상기 가상 카메라가 관찰하는 3차원 컨텐트 오브젝트에 관한 소정의 경로에 기초하여 설정되는 시스템.
  5. 제4항에 있어서,
    상기 3차원 컨텐트 오브젝트에 관한 상기 경로는 상기 3차원 컨텐트 오브젝트의 운동 경로인 시스템.
  6. 제4항에 있어서,
    상기 3차원 컨텐트 오브젝트에 관한 상기 경로는 사용자가 입력한 경로를 상기 3차원 컨텐트의 그라운드 면에 대하여 투영한 것인 시스템.
  7. 제1항에 있어서,
    상기 운동면은 상기 가상 카메라가 관찰하는 특정 3차원 컨텐트 오브젝트의 위치에 기초하여 설정되는 시스템.
  8. 삭제
  9. 3차원의 가상 공간 내에서 가상 카메라를 제어하기 위한 방법으로서,
    상기 가상 카메라에 대한 제어 데이터를 입력 받는 단계, 및
    상기 제어 데이터에 따라 상기 가상 카메라의 운동면을 설정하고, 상기 제어 데이터에 따라 상기 가상 카메라의 속성을 제어하는 단계 - 상기 속성은 상기 가상 카메라의 위치, 시선, 시야 및 운동 궤적 중 적어도 일부를 포함하고, 상기 위치는 상기 운동면 상으로 또는 그 주위로 제한됨 -
    를 포함하고,
    상기 운동면은 상기 가상 카메라가 관찰하는 3차원 컨텐트의 그라운드 면 위에서 상기 제어 데이터에 의해 특정된 부분의 위치에 기초하여 설정되고,
    상기 가상 카메라에 대한 제어 데이터를 입력 받는 단계에서,
    사용자 인터페이스에 포함되는 제스쳐 윈도우를 통하여 입력된 제스쳐와 상기 가상 카메라에 대한 소정의 제어 데이터를 매칭시키는 방법.
  10. 제9항에 있어서,
    상기 운동면은 상기 가상 카메라가 관찰하는 3차원 컨텐트 오브젝트에 관한 소정의 경로에 기초하여 설정되는 방법.
  11. 제10항에 있어서,
    상기 3차원 컨텐트 오브젝트에 관한 상기 경로는 상기 3차원 컨텐트 오브젝트의 운동 경로인 방법.
  12. 제10항에 있어서,
    상기 3차원 컨텐트 오브젝트에 관한 상기 경로는 사용자가 입력한 경로를 상기 3차원 컨텐트의 그라운드 면에 대하여 투영한 것인 방법.
  13. 제9항에 있어서,
    상기 운동면은 상기 가상 카메라가 관찰하는 특정 3차원 컨텐트 오브젝트의 위치에 기초하여 설정되는 방법.
  14. 삭제
  15. 제9항 내지 제13항 중 어느 한 항에 따른 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 컴퓨터 판독 가능한 기록 매체.
KR1020130123418A 2012-10-16 2013-10-16 3차원의 가상 공간 내에서 가상 카메라를 제어하기 위한 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체 KR101565854B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020120114780 2012-10-16
KR20120114780 2012-10-16

Publications (2)

Publication Number Publication Date
KR20140048827A KR20140048827A (ko) 2014-04-24
KR101565854B1 true KR101565854B1 (ko) 2015-11-05

Family

ID=50488495

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130123418A KR101565854B1 (ko) 2012-10-16 2013-10-16 3차원의 가상 공간 내에서 가상 카메라를 제어하기 위한 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체

Country Status (6)

Country Link
US (1) US10007348B2 (ko)
EP (1) EP2911393B1 (ko)
JP (2) JP2016502171A (ko)
KR (1) KR101565854B1 (ko)
CN (1) CN104769543B (ko)
WO (1) WO2014062001A1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104349020B (zh) * 2014-12-02 2017-11-03 北京中科大洋科技发展股份有限公司 一种虚拟摄像机与真实摄像机切换的方法
JP6849430B2 (ja) * 2016-12-27 2021-03-24 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
US10970915B2 (en) * 2017-01-06 2021-04-06 Canon Kabushiki Kaisha Virtual viewpoint setting apparatus that sets a virtual viewpoint according to a determined common image capturing area of a plurality of image capturing apparatuses, and related setting method and storage medium
US10569172B2 (en) 2017-09-19 2020-02-25 Canon Kabushiki Kaisha System and method of configuring a virtual camera
CN108833863A (zh) * 2018-07-24 2018-11-16 河北德冠隆电子科技有限公司 四维实景交通仿真的虚拟摄像机监控监视查看预览方法
CN109391773B (zh) * 2018-09-21 2021-08-10 百度在线网络技术(北京)有限公司 全景页面切换时拍摄点的移动控制方法和装置
JP7307568B2 (ja) * 2019-03-20 2023-07-12 任天堂株式会社 画像表示システム、画像表示プログラム、表示制御装置、および画像表示方法
CN114627215B (zh) * 2022-05-16 2022-09-16 山东捷瑞数字科技股份有限公司 基于三维软件的相机抖动动画制作的方法和装置

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11137842A (ja) * 1997-09-04 1999-05-25 Sega Enterp Ltd 画像処理装置
KR100439756B1 (ko) 2002-01-09 2004-07-12 주식회사 인피니트테크놀로지 3차원 가상내시경 화면 표시장치 및 그 방법
JP3762750B2 (ja) * 2003-01-07 2006-04-05 コナミ株式会社 画像表示制御プログラム
JP3665058B2 (ja) * 2003-02-26 2005-06-29 三菱重工業株式会社 シミュレータシナリオ製作支援プログラム及びシミュレータ装置
US20080168402A1 (en) * 2007-01-07 2008-07-10 Christopher Blumenberg Application Programming Interfaces for Gesture Operations
CN102067179A (zh) * 2008-04-14 2011-05-18 谷歌公司 俯冲导航
CN103324386A (zh) * 2008-08-22 2013-09-25 谷歌公司 移动设备上的三维环境中的导航
WO2010060211A1 (en) * 2008-11-28 2010-06-03 Nortel Networks Limited Method and apparatus for controling a camera view into a three dimensional computer-generated virtual environment
IT1396752B1 (it) * 2009-01-30 2012-12-14 Galileo Avionica S P A Ora Selex Galileo Spa Visualizzazione di uno spazio virtuale tridimensionale generato da un sistema elettronico di simulazione
US9256282B2 (en) * 2009-03-20 2016-02-09 Microsoft Technology Licensing, Llc Virtual object manipulation
KR101037797B1 (ko) 2009-04-03 2011-05-27 주식회사 다림비젼 복수의 입력 비디오(디지털,아날로그,ip 압축 비디오)들을 가상 그래픽 3차원 비디오 월의 가상모니터에 비디오 택스쳐링의 방식을 이용하여 표현하고 이를 가상 3차원 그래픽 공간에 배치한 가상카메라를 통해 실시간 3차원 렌더링을 통해 실시간으로 모니터에 보여 주는 매트릭스 및 스위처/믹서 기능을 갖는 3차원 공간속의 비디오 월을 보여 주는 멀티뷰 시스템
US9299184B2 (en) * 2009-04-07 2016-03-29 Sony Computer Entertainment America Llc Simulating performance of virtual camera
JP5717270B2 (ja) * 2009-12-28 2015-05-13 任天堂株式会社 情報処理プログラム、情報処理装置および情報処理方法
KR101121421B1 (ko) 2010-02-23 2012-03-20 주식회사 빅아이 입체영상 제작시의 카메라 간격 제공방법, 프로그램 기록매체 및 입체영상 생성기
KR20110116275A (ko) 2010-04-19 2011-10-26 하나로드림게임즈 주식회사 저작물 생성 방법, 저작물 제공 방법 및 이를 제공하는 저작물 생성 장치
KR101155045B1 (ko) * 2010-05-25 2012-06-11 주식회사 씩스클릭 애니메이션 저작 시스템 및 애니메이션 저작 방법
CN103038797B (zh) * 2010-05-25 2016-05-04 田载雄 动画制作***以及动画制作方法
JP5800473B2 (ja) * 2010-06-11 2015-10-28 任天堂株式会社 情報処理プログラム、情報処理装置、情報処理システム及び情報処理方法
JP5846767B2 (ja) * 2011-01-17 2016-01-20 株式会社ソニー・コンピュータエンタテインメント ゲーム装置、ゲーム制御方法、及びゲーム制御プログラム
US20120198500A1 (en) * 2011-01-31 2012-08-02 Robin Sheeley Touch screen video production and control system

Also Published As

Publication number Publication date
JP6728272B2 (ja) 2020-07-22
EP2911393A4 (en) 2016-06-08
CN104769543A (zh) 2015-07-08
JP2018160260A (ja) 2018-10-11
WO2014062001A1 (ko) 2014-04-24
JP2016502171A (ja) 2016-01-21
EP2911393A1 (en) 2015-08-26
US10007348B2 (en) 2018-06-26
US20150241980A1 (en) 2015-08-27
CN104769543B (zh) 2018-10-26
KR20140048827A (ko) 2014-04-24
EP2911393B1 (en) 2018-06-06

Similar Documents

Publication Publication Date Title
KR101565854B1 (ko) 3차원의 가상 공간 내에서 가상 카메라를 제어하기 위한 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체
US10845890B1 (en) Gesture keyboard method and apparatus
JP6629280B2 (ja) 拡張現実光ガイドの表示
KR102438052B1 (ko) 포즈들 및 멀티-dof 제어기들을 사용하는 3d 가상 객체들과 상호작용들
US20190265803A1 (en) User-Defined Virtual Interaction Space and Manipulation of Virtual Cameras with Vectors
KR101833253B1 (ko) 증강현실 환경에서의 가상객체 조작방법 및 이를 구현하는 증강현실 장치
US10191612B2 (en) Three-dimensional virtualization
KR20180133507A (ko) 시야 주위의 시각적 아우라
US10203837B2 (en) Multi-depth-interval refocusing method and apparatus and electronic device
CN109189302B (zh) Ar虚拟模型的控制方法及装置
KR101594946B1 (ko) 프로토타이핑 툴을 제공하기 위한 방법, 시스템 및 비일시성의 컴퓨터 판독 가능한 기록 매체
KR102063408B1 (ko) 가상 객체와의 상호 작용을 위한 방법 및 장치
Matulic et al. Terrain modelling with a pen & touch tablet and mid-air gestures in virtual reality
US11061557B2 (en) Dynamic single touch point navigation
WO2018170795A1 (zh) 图标选择界面的显示方法及装置
CN110941974B (zh) 虚拟对象的控制方法和装置
CN109219789A (zh) 虚拟现实的显示方法、装置及终端
Chen et al. Cubot: Prototype of a computer-using robot
CN111580734A (zh) 控制方法、装置、眼镜及存储介质
CN104914981A (zh) 一种信息处理方法和电子设备

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
FPAY Annual fee payment

Payment date: 20180808

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190809

Year of fee payment: 5