KR101790147B1 - Virtual object control system and method - Google Patents

Virtual object control system and method Download PDF

Info

Publication number
KR101790147B1
KR101790147B1 KR1020160077879A KR20160077879A KR101790147B1 KR 101790147 B1 KR101790147 B1 KR 101790147B1 KR 1020160077879 A KR1020160077879 A KR 1020160077879A KR 20160077879 A KR20160077879 A KR 20160077879A KR 101790147 B1 KR101790147 B1 KR 101790147B1
Authority
KR
South Korea
Prior art keywords
virtual
physical
collision
hand
unit
Prior art date
Application number
KR1020160077879A
Other languages
Korean (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 KR1020160077879A priority Critical patent/KR101790147B1/en
Application granted granted Critical
Publication of KR101790147B1 publication Critical patent/KR101790147B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • G06T17/205Re-meshing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/21Collision detection, intersection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/24Fluid dynamics

Abstract

본 발명은 가상 객체 조작 시스템 및 방법에 관한 것이다.
본 발명에 따른 가상 객체 조작 방법은, 손-객체 충돌 감지부에 의해 사용자의 가상의 손의 끝에 형성된 기본형 물리 충돌체와 조작하고자 하는 가상 물리 충돌체(메쉬 충돌체) 간의 충돌을 감지하는 단계; 객체 메쉬 정보 획득부에 의해 기본형 물리 충돌체와 메쉬 충돌체 간의 충돌이 일어난 지점을 중심으로 일정 영역의 가상 객체의 메쉬 정보를 획득하고, 기본형 물리 충돌체의 변형 계산을 수행하는 단계; 에너지 네트 생성부에 의해 객체 메쉬 정보 획득부에 의해 획득된 메쉬 정보를 기반으로 기본형 물리 충돌체를 소정의 형상으로 확장하여 확장된 물리 충돌체를 생성하는 단계; 및 객체 조작부에 의해 에너지 네트 생성부에 의해 생성된 확장된 물리 충돌체를 이용하여 물리 엔진을 통한 동역학 계산을 통해 가상 객체를 조작하는 단계를 포함한다.
이와 같은 본 발명에 의하면, 사용자의 손과 접촉된 가상 객체의 메쉬 정보를 기반으로 사용자 손끝의 기본형 물리 충돌체를 재구성한 후, 동역학 계산 과정을 거쳐 가상 객체를 조작함으로써, 전체 시스템에 대한 부하를 줄이고 가상 객체를 한층 용이하게 조작할 수 있다.
The present invention relates to a virtual object manipulation system and method.
A virtual object manipulation method according to the present invention comprises the steps of: detecting a collision between a basic physical collision object formed at the end of a virtual hand of a user and a virtual physical collision object (mesh collision object) to be manipulated by a hand- Acquiring mesh information of a virtual object in a certain region around a point where a collision between the basic physical collision object and the mesh collision object occurs by the object mesh information acquisition unit and performing deformation calculation of the basic physical collision object; Generating an extended physical collision object by expanding a basic physical collision object into a predetermined shape based on the mesh information acquired by the object mesh information acquisition unit by the energy net generation unit; And manipulating the virtual object through kinetic computation through the physical engine using the expanded physical collision object generated by the energy net generator by the object manipulation unit.
According to the present invention, the basic physical object of the user's fingertip is reconstructed based on the mesh information of the virtual object in contact with the user's hand, and the virtual object is manipulated through the dynamic calculation process to reduce the load on the entire system The virtual object can be manipulated more easily.

Description

가상 객체 조작 시스템 및 방법{Virtual object control system and method}Technical Field [0001] The present invention relates to a virtual object control system and method,

본 발명은 가상 객체 조작 시스템 및 방법에 관한 것으로서, 더 상세하게는 사용자의 손과 접촉된 가상 객체의 메쉬 정보를 기반으로 사용자 손끝의 기본형 물리 충돌체를 재구성한 후, 동역학 계산 과정을 거쳐 가상 객체를 조작함으로써, 전체 시스템에 대한 부하를 줄이고 가상 객체를 한층 효과적으로 조작할 수 있는 가상 객체 조작 시스템 및 방법에 관한 것이다.The present invention relates to a virtual object manipulation system and method, and more particularly, to a virtual object manipulation system and method for reconstructing a basic physical object of a user's fingertip based on mesh information of a virtual object in contact with a user's hand, And more particularly to a virtual object manipulation system and method that can reduce the load on the entire system and manipulate virtual objects more effectively.

가상 현실에서 사용자와 가상 객체 간에 원활한 상호 작용 환경을 제공하기 위해서는 상당히 우수한 성능의 CPU를 지닌 컴퓨터 시스템이 구축되어야 한다. 그러나 일반적으로 CPU의 연산 능력의 한계로 인해 실제 세계의 모든 물리 현상을 가상 환경 내에서 완벽하게 구현하거나 범지구적인 거대한 자연계의 현상까지 시뮬레이션(simulation)하는 것은 불가능하다. 따라서, 물리 엔진에서 제공되는 기본형 물리 충돌체(primitive collider)의 조합으로 물리 모델을 생성하고, 이를 통해 물리 객체 간의 충돌, 힘, 이동량의 동역학 계산을 수행하여, 계산에 의해 획득된 값들을 가상 객체에 적용하는 것이 일반적이다. 이로 인해 상호 작용환경에 대한 성능은 가상 물리 모델을 어떻게 정의하느냐에 따라 달라질 수밖에 없다.In order to provide a smooth interaction environment between users and virtual objects in a virtual reality, a computer system having a fairly good CPU must be constructed. However, in general, due to the limitation of computing power of the CPU, it is impossible to completely realize all the physical phenomena in the virtual world in the virtual environment or to simulate the phenomenon of a huge global nature. Accordingly, a physical model is generated by a combination of basic physical colliders provided by the physical engine, and the dynamic model of the collision, force, and movement between the physical objects is calculated, and the values obtained by the calculation are stored in the virtual object . As a result, the performance of the interaction environment depends on how the virtual physics model is defined.

특히 사용자의 손을 이용한 가상 객체 조작에서는, 손끝에 대한 물리 모델의 정의 방법에 따라 그 성능이 달라진다. 손을 이용한 객체 조작에서 높은 자유도의 인간의 손동작을 자연스럽게 모사(模寫)하기에는 여전히 그 한계점이 존재한다. 주로 손의 파지를 위한 가상 물리 모델의 경우, 캡슐 형태로 손의 형상에 따른 물리 모델을 형성하고, 가상 객체 모델과의 가상 스프링―댐퍼를 이용한 가상 결합(virtual coupling) 방법을 취하는 것이 일반적이다. 이는 결국 두 점 사이의 힘의 관계를 분석하는 것에 의존하는 것으로 객체의 파지 및 파지 후 롤링 시 오류가 빈번히 발생하는 문제가 있다.Especially, in the manipulation of a virtual object using a user's hand, the performance varies depending on a definition method of a physical model for a fingertip. There is still a limit to the natural manipulation of a human hand gesture with a high degree of freedom in object manipulation using a hand. In the case of a virtual physics model mainly for hand grasping, it is common to form a physical model according to the shape of a hand in the form of a capsule, and to take a virtual coupling method using a virtual spring-damper with a virtual object model. This, in turn, relies on analyzing the relationship of forces between two points, which often causes errors in object rolling and post-gripping rolling.

한편, 공개특허공보 제10-2010-0044983호(특허문헌 1)에는 "가상 객체 조작 장치 및 그 방법"이 개시되어 있는바, 이에 따른 가상 객체 조작 장치는, 사용자에 의해 선택된 가상 객체의 외형 및 상기 가상 객체 조작 장치의 외형을 비교하여 복수의 상응점을 검색하는 상응점 검색부; 상기 사용자로부터 파지(grab) 신호를 감지하여, 상기 가상 객체 조작 장치의 파지 형태를 인식하는 파지 형태 인식부; 및 상기 복수의 상응점 및 상기 파지 형태에 기초하여 상기 선택된 가상 객체의 가상 파지 형태를 결정하는 가상 파지 형태 결정부를 포함하는 것을 특징으로 한다.On the other hand, a virtual object manipulation apparatus and method thereof is disclosed in Japanese Patent Application Laid-Open No. 10-2010-0044983 (Patent Document 1), and a virtual object manipulation apparatus according to the above- A corresponding point searching unit for comparing the outer shapes of the virtual object manipulating apparatus and searching for a plurality of corresponding points; A grip type recognition unit for sensing a grab signal from the user and recognizing a grip type of the virtual object manipulation apparatus; And an virtual finger type determining unit for determining an virtual finger type of the selected virtual object based on the plurality of corresponding points and the grip type.

이와 같은 특허문헌 1의 경우, 데이터베이스 기반의 가상 객체에 대한 자연스러운 파지 형태를 표현할 수 있을지는 몰라도, 이 역시 이후 객체 조작에 있어서는 상응점 간의 힘의 관계를 분석하는 것에 의존하는 것으로서 객체의 파지 및 파지 후 롤링 시 오류가 발생하는 문제를 내포하고 있다.In the case of Patent Document 1 as described above, although it is possible to express a natural grasp form for a virtual object based on a database, it also depends on analyzing a relation of force between corresponding points in object manipulation, And there is a problem that an error occurs in the post-rolling.

공개특허공보 제10-2010-0044983호(2010.05.03.)Open Patent Publication No. 10-2010-0044983 (2010.05.03.)

본 발명은 상기와 같은 종래 기술의 문제점을 개선하기 위하여 창출된 것으로서, 사용자의 손과 접촉된 가상 객체의 메쉬 정보를 기반으로 사용자 손끝의 기본형 물리 충돌체를 재구성한 후, 동역학 계산 과정을 거쳐 가상 객체를 조작함으로써, 전체 시스템에 대한 부하를 줄이고 가상 객체를 한층 효과적으로 조작할 수 있는 가상 객체 조작 시스템 및 방법을 제공함에 그 목적이 있다.SUMMARY OF THE INVENTION The present invention has been made in order to solve the problems of the related art as described above, and it is an object of the present invention to reconstruct a basic physical object of a user's fingertip based on mesh information of a virtual object in contact with a user's hand, The object of the present invention is to provide a virtual object manipulation system and method capable of reducing the load on the entire system and more effectively manipulating virtual objects.

상기의 목적을 달성하기 위하여 본 발명에 따른 가상 객체 조작 시스템은, According to an aspect of the present invention,

가상(증강) 현실에서 가상의 물리 객체를 조작하기 위한 시스템으로서,As a system for manipulating a virtual physical object in a virtual (enhanced) reality,

물리 엔진에서 정의된 사용자의 가상의 손의 끝에 형성된 기본형 물리 충돌체(primitive collider)와 조작하고자 하는 가상 객체의 메쉬 정보를 바탕으로 정의된 물리 충돌체(mesh collider; 이하 '메쉬 충돌체'라 함) 간의 충돌을 감지하는 손-객체 충돌 감지부;A collision between a basic type physical collider formed at the end of a virtual hand of a user defined in the physical engine and a mesh collider defined as a mesh based on the mesh information of a virtual object to be manipulated A hand-object collision detecting unit for detecting a hand-object collision;

상기 기본형 물리 충돌체와 메쉬 충돌체 간의 충돌이 일어난 지점을 중심으로 일정 영역의 가상 객체의 메쉬 정보를 획득하고, 상기 기본형 물리 충돌체의 변형 계산을 수행하는 객체 메쉬 정보 획득부;An object mesh information acquiring unit acquiring mesh information of a virtual object in a predetermined region around a point where a collision occurs between the basic physical collision object and the mesh collision object and performing deformation calculation of the basic physical collision object;

상기 객체 메쉬 정보 획득부에 의해 획득된 메쉬 정보를 기반으로 상기 기본형 물리 충돌체를 소정의 형상으로 확장하여 확장된 물리 충돌체를 생성하는 에너지 네트 생성부;An energy net generator for generating an expanded physical collision object by expanding the basic physical collision object into a predetermined shape based on the mesh information acquired by the object mesh information acquisition part;

상기 에너지 네트 생성부에 의해 생성된 확장된 물리 충돌체를 이용하여 물리 엔진을 통한 동역학 계산을 통해 가상 객체를 조작하는 객체 조작부;An object manipulating unit operable to manipulate a virtual object through kinetic computation through a physical engine using the extended physical collision object generated by the energy net generator;

상기 객체 조작부에 의한 조작 과정에서 가상 객체를 파지 시 사용되었던 손가락 끝점에 대한 법선 벡터 방향을 고려하여 가상의 손과 가상 객체의 분리 의도를 감지하는 손-객체 분리 감지부; 및A hand-object separation sensing unit for sensing an intention of separating a virtual hand and a virtual object in consideration of a normal vector direction of a finger end point used in gripping a virtual object in the operation process by the object manipulation unit; And

상기 손-객체 분리 감지부에 의해 가상의 손과 가상 객체의 분리 의도를 감지했을 때, 에너지 네트를 감쇠시켜 가상의 손에 대해 상기 확장된 물리 충돌체를 초기의 기본형 물리 충돌체 형태로 복귀시키는 에너지 네트 비활성부를 포함하는 점에 그 특징이 있다.An energy net that attenuates the energy net and returns the expanded physical collision object to the initial basic physical collision object form with respect to the virtual hand when the hand-object separation sensing unit senses the intention of separating the virtual hand and the virtual object, And includes an inactive portion.

여기서, 상기 객체 메쉬 정보 획득부는 상기 기본형 물리 충돌체를 가상 객체를 감싸 안은 형태의 네트로 구성하여 변형시킬 수 있다.Here, the object mesh information obtaining unit may transform the basic physical collision object by constructing a net in which the virtual object is enclosed.

이때, 상기 네트는 다수의 윤곽선의 집합으로 이루어질 수 있다. At this time, the net may be a set of a plurality of contour lines.

또한, 상기 에너지 네트 생성부는 상기 기본형 물리 충돌체를 거미줄 형상으로 확장하여 확장된 물리 충돌체를 생성할 수 있다.In addition, the energy net generator may expand the basic physical object in the form of a spider web to generate an expanded physical object.

또한, 상기 객체 조작부에 의해 수행되는 동역학 계산은 물리 객체 간의 충돌 시점에서의 각 물리 모델들의 힘, 방향, 속도, 이동량, 충격량, 마찰력 중 적어도 어느 하나를 포함할 수 있다.Also, the dynamic computation performed by the object manipulation unit may include at least one of force, direction, velocity, movement amount, impact amount, and frictional force of each physical model at the time of collision between physical objects.

또한, 상기의 목적을 달성하기 위하여 본 발명에 따른 가상 객체 조작 방법은, According to another aspect of the present invention, there is provided a method for operating a virtual object,

가상(증강) 현실에서 가상의 물리 객체를 조작하기 위한 방법으로서,As a method for manipulating a virtual physical object in a virtual (enhancing) reality,

a) 손-객체 충돌 감지부에 의해 물리 엔진에서 정의된 사용자의 가상의 손의 끝에 형성된 기본형 물리 충돌체와 조작하고자 하는 가상 객체의 메쉬 정보를 바탕으로 정의된 물리 충돌체(이하, '메쉬 충돌체'라 함) 간의 충돌을 감지하는 단계;a) a physical collision object (hereinafter referred to as a " mesh collision object ") defined based on the basic physical collision object formed at the end of the virtual hand of the user defined in the physical engine by the hand- Sensing a collision between the two sensors;

b) 객체 메쉬 정보 획득부에 의해 상기 기본형 물리 충돌체와 메쉬 충돌체 간의 충돌이 일어난 지점을 중심으로 일정 영역의 가상 객체 메쉬 정보를 획득하고, 상기 기본형 물리 충돌체의 변형 계산을 수행하는 단계;b) acquiring virtual object mesh information of a certain region around a point where a collision between the basic type physical collision body and the mesh collision body occurs by the object mesh information acquisition unit and performing deformation calculation of the basic type physical collision body;

c) 에너지 네트 생성부에 의해 상기 객체 메쉬 정보 획득부에 의해 획득된 메쉬 정보를 기반으로 상기 기본형 물리 충돌체를 소정의 형상으로 확장하여 확장된 물리 충돌체를 생성하는 단계; 및c) generating an expanded physical conflict object by expanding the basic physical conflict object to a predetermined shape based on the mesh information acquired by the object mesh information acquisition section by the energy net generating section; And

d) 객체 조작부에 의해 상기 에너지 네트 생성부에 의해 생성된 확장된 물리 충돌체를 이용하여 물리 엔진을 통한 동역학 계산을 통해 가상 객체를 조작하는 단계를 포함하는 점에 그 특징이 있다.and d) manipulating the virtual object through kinetic computation through the physical engine using the expanded physical collision object created by the energy net generator by the object manipulation unit.

여기서, 상기 단계 d)의 가상 객체를 조작하는 단계 이후,Here, after the step of operating the virtual object of step d)

e) 손-객체 분리 감지부에 의해 상기 객체 조작부에 의한 조작 과정에서 가상 객체를 파지 시 사용되었던 손가락 끝점에 대한 법선 벡터 방향을 고려하여 가상의 손과 가상 객체의 분리 의도를 감지하는 단계를 더 포함할 수 있다.e) detecting the separation intention of the virtual hand and the virtual object by considering the normal vector direction of the fingertip used in gripping the virtual object during the operation of the object manipulation unit by the hand-object separation sensing unit .

또한, 상기 단계 e)의 가상의 손과 가상 객체의 분리 의도를 감지하는 단계 이후,In addition, after detecting the intention of separating the virtual hand and the virtual object in step e)

f) 에너지 네트 비활성부에 의해, 상기 손-객체 분리 감지부에 의해 가상의 손과 가상 객체의 분리 의도를 감지했을 때, 에너지 네트를 감쇠시켜 가상의 손에 대해 확장된 물리 충돌체를 초기의 기본형 물리 충돌체 형태로 복귀시키는 단계를 더 포함할 수 있다. f) When the intention of separating a virtual hand and a virtual object is sensed by the hand-object separation sensing unit by the energy net inactive part, the energy net is attenuated so that the physical object, which is extended to the virtual hand, And returning to the form of the physical object.

여기서, 상기 단계 b)에서 상기 객체 메쉬 정보 획득부에 의해 상기 기본형 물리 충돌체를 가상 객체를 감싸 안은 형태의 네트로 구성하여 변형시키기 위한 계산을 수행할 수 있다.In the step b), the basic mesh type physical collision object may be constituted by a net including a virtual object surrounded by the object mesh information obtaining unit.

또한, 상기 단계 c)에서 상기 에너지 네트 생성부에 의해 상기 기본형 물리 충돌체를 거미줄 형상으로 확장하여 확장된 물리 충돌체를 생성할 수 있다.In addition, in step c), the energy net generator may expand the basic physical collision object into a spider web to generate an expanded physical collision object.

이와 같은 본 발명에 의하면, 사용자의 손과 접촉된 가상 객체의 메쉬 정보를 기반으로 사용자 손끝의 기본형 물리 충돌체를 재구성한 후, 동역학 계산 과정을 거쳐 가상 객체를 조작함으로써, 전체 시스템에 대한 부하를 줄이고 가상 객체를 한층 용이하게 조작할 수 있는 장점이 있다.According to the present invention, the basic physical object of the user's fingertip is reconstructed based on the mesh information of the virtual object in contact with the user's hand, and the virtual object is manipulated through the dynamic calculation process to reduce the load on the entire system There is an advantage that a virtual object can be manipulated more easily.

도 1은 본 발명의 실시예에 따른 가상 객체 조작 시스템의 구성을 개략적으로 나타낸 도면이다.
도 2는 본 발명에 채용되는 물리 엔진에서 가상의 손끝에 형성된 기본형 물리 충돌체를 나타낸 도면이다.
도 3은 본 발명의 실시예에 따른 가상 객체 조작 방법의 실행 과정을 나타낸 흐름도이다.
도 4는 본 발명의 방법에 따라 기본형 물리 충돌체를 가상 객체를 감싸 안은 형태의 네트로 구성하여 변형시킨 상태를 나타낸 도면이다.
도 5는 도 4에서의 네트가 다수의 윤곽선의 집합으로 이루어지는 것을 나타낸 도면이다.
도 6a 내지 도 6c는 본 발명에 따른 가상 객체 조작 방법을 도식적으로 설명하는 도면이다.
1 is a diagram schematically showing a configuration of a virtual object manipulating system according to an embodiment of the present invention.
2 is a view showing a basic physical object formed at a virtual fingertip in a physical engine employed in the present invention.
3 is a flowchart illustrating an operation of a virtual object manipulation method according to an embodiment of the present invention.
FIG. 4 is a view illustrating a state in which a basic physical collision object is constructed as a net enclosing a virtual object according to a method of the present invention.
Fig. 5 is a diagram showing that the net in Fig. 4 is formed of a set of a plurality of contour lines.
6A to 6C are diagrams illustrating a virtual object manipulation method according to the present invention.

본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정되어 해석되지 말아야 하며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야 한다.The terms and words used in the present specification and claims should not be construed as limited to ordinary or dictionary terms and the inventor can properly define the concept of the term to describe its invention in the best way Should be construed in accordance with the principles and meanings and concepts consistent with the technical idea of the present invention.

명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다. 또한, 명세서에 기재된 "…부", "…기", "모듈", "장치" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.Throughout the specification, when an element is referred to as "comprising ", it means that it can include other elements as well, without excluding other elements unless specifically stated otherwise. Also, the terms " part, "" module, "and" device " Lt; / RTI >

이하 첨부된 도면을 참조하여 본 발명의 실시예를 상세히 설명한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 실시예에 따른 가상 객체 조작 시스템의 구성을 개략적으로 나타낸 도면이고, 도 2는 물리 엔진에서 가상의 손끝에 형성된 기본형 물리 충돌체를 나타낸 도면이다.FIG. 1 is a view schematically showing a configuration of a virtual object manipulation system according to an embodiment of the present invention, and FIG. 2 is a view showing a basic physical object formed at a virtual fingertip in a physical engine.

도 1 및 도 2를 참조하면, 본 발명에 따른 가상 객체 조작 시스템(100)은 가상(증강) 현실에서 가상의 물리 객체를 조작하기 위한 시스템으로서, 손-객체 충돌 감지부(110), 객체 메쉬 정보 획득부(120), 에너지 네트 생성부(130), 객체 조작부(140), 손-객체 분리 감지부(150), 에너지 네트 비활성부(160)를 포함하여 구성된다.1 and 2, a virtual object manipulation system 100 according to the present invention is a system for manipulating a virtual physical object in a virtual (enhancing) reality, and includes a hand-object collision sensing unit 110, An object generating unit 120, an energy net generating unit 130, an object manipulating unit 140, a hand-object separation sensing unit 150, and an energy net inactivity unit 160.

손-객체 충돌 감지부(110)는 물리 엔진에서 정의된 사용자의 가상의 손(210)의 끝에 형성된 기본형 물리 충돌체(primitive collider)(210c)와 조작하고자 하는 가상 객체(220)의 메쉬 정보를 바탕으로 정의된 물리 충돌체(mesh collider; 이하 '메쉬 충돌체'라 함)(미도시) 간의 충돌을 감지한다. 여기서, 상기 기본형 물리 충돌체(210c)는 구의 형태로 물리 엔진에서 손끝에 형성(설정)될 수 있다.The hand-object collision detecting unit 110 detects a collision between a primitive collider 210c formed at the end of a user's virtual hand 210 defined in the physical engine and mesh information of a virtual object 220 to be operated (Hereinafter referred to as " mesh collider ") (not shown). Here, the basic physical object 210c may be formed (set) at the fingertip in the form of a sphere in the physical engine.

객체 메쉬 정보 획득부(120)는 상기 기본형 물리 충돌체(210c)와 메쉬 충돌체 간의 충돌이 일어난 지점을 중심으로 일정 영역의 가상 객체의 메쉬 정보를 획득하고, 상기 기본형 물리 충돌체의 변형 계산을 수행한다. 여기서, 이와 같은 객체 메쉬 정보 획득부(120)는 상기 기본형 물리 충돌체(210c)를 도 4에 도시된 바와 같이, 가상 객체(410)를 감싸 안은 형태의 네트(420)로 구성하여 변형시키기 위한 계산을 수행한다. The object mesh information obtaining unit 120 obtains mesh information of a virtual object in a certain region around a point where a collision between the basic physical collision object 210c and the mesh collision body occurs, and performs deformation calculation of the basic physical collision object. 4, the object-mesh-information obtaining unit 120 may be configured to transform the basic physical object 210c into a net 420 having a shape enclosing the virtual object 410 as shown in FIG. 4, .

에너지 네트 생성부(130)는 상기 객체 메쉬 정보 획득부(120)에 의해 획득된 메쉬 정보를 기반으로 상기 기본형 물리 충돌체(210c)를 소정의 형상으로 확장하여 확장된 물리 충돌체를 생성한다. 여기서, 이와 같은 에너지 네트 생성부(130)는 상기 기본형 물리 충돌체(210c)를 도 2의 (B) 및 (C)와 같이 거미줄 형상으로 확장하여 확장된 물리 충돌체를 생성할 수 있다.The energy net generator 130 expands the basic physical collision object 210c into a predetermined shape based on the mesh information acquired by the object mesh information acquisition unit 120 to generate an expanded physical collision object. Here, the energy net generator 130 may expand the basic physical object 210c into a spider web as shown in FIGS. 2B and 2C to generate an expanded physical object.

객체 조작부(140)는 상기 에너지 네트 생성부(130)에 의해 생성된 확장된 물리 충돌체를 이용하여 물리 엔진을 통한 동역학 계산을 통해 가상 객체를 조작한다. 여기서, 이와 같은 객체 조작부(140)에 의해 수행되는 동역학 계산은 물리 객체 간의 충돌 시점에서의 각 물리 모델들의 힘, 방향, 속도, 이동량, 충격량, 마찰력 등과 같은 계산 중 적어도 어느 하나를 포함할 수 있다.The object manipulation unit 140 manipulates the virtual object through the dynamic engine through the physical engine using the extended physical collision object generated by the energy net generator 130. Here, the dynamic computation performed by the object manipulation unit 140 may include at least one of calculations such as force, direction, velocity, movement amount, impact amount, frictional force, etc. of each physical model at the time of collision between physical objects .

손-객체 분리 감지부(150)는 상기 객체 조작부(140)에 의한 조작 과정에서 가상 객체를 파지 시 사용되었던 손가락 끝점에 대한 법선 벡터 방향을 고려하여 가상의 손과 가상 객체의 분리 의도를 감지한다.The hand-object separation sensing unit 150 senses the intention of separating the virtual hand and the virtual object in consideration of the normal vector direction of the finger end point used when the virtual object is gripped during the manipulation by the object manipulation unit 140 .

에너지 네트 비활성부(160)는 상기 손-객체 분리 감지부(150)에 의해 가상의 손과 가상 객체의 분리 의도를 감지했을 때, 에너지 네트를 감쇠시켜 가상의 손에 대해 상기 확장된 물리 충돌체를 초기의 기본형 물리 충돌체 형태로 복귀시킨다.The energy net inactivity unit 160 attenuates the energy net when the hand-object separation sensing unit 150 senses the intention of separating the virtual hand and the virtual object, thereby generating the extended physical object Return to the initial basic physical collision form.

여기서, 이상과 같은 손-객체 충돌 감지부(110), 객체 메쉬 정보 획득부(120), 에너지 네트 생성부(130), 객체 조작부(140), 손-객체 분리 감지부(150) 및 에너지 네트 비활성부(160)는 그 기능별로 각각의 모듈(즉, 6개의 개별 모듈)로 구성될 수도 있고, 하나의 통합 모듈 내에 6개의 분할 영역이 마련되어 각 분할 영역이 각기 다른 기능을 수행하도록 구성될 수도 있다. 이때, 이러한 모듈로는 마이크로프로세서가 사용될 수 있다.Here, the hand-object collision detecting unit 110, the object mesh information obtaining unit 120, the energy net generating unit 130, the object manipulating unit 140, the hand-object separation sensing unit 150, The inactivity unit 160 may be configured with respective modules (i.e., six individual modules) according to their functions, and six partition areas may be provided in one integrated module so that each partition area is configured to perform a different function have. At this time, a microprocessor can be used as such a module.

그러면, 이하에서는 이상과 같은 구성을 가지는 본 발명에 따른 가상 객체 조작 시스템을 기반으로 하여 본 발명에 따른 가상 객체 조작 방법에 대해 설명해 보기로 한다.Hereinafter, a virtual object manipulation method according to the present invention will be described based on the virtual object manipulation system according to the present invention having the above-described configuration.

도 3은 본 발명의 실시예에 따른 가상 객체 조작 방법의 실행 과정을 나타낸 흐름도이다.3 is a flowchart illustrating an operation of a virtual object manipulation method according to an embodiment of the present invention.

도 3을 참조하면, 본 발명에 따른 가상 객체 조작 방법은, 위에서 설명한 바와 같은 손-객체 충돌 감지부(110), 객체 메쉬 정보 획득부(120), 에너지 네트 생성부(130), 객체 조작부(140), 손-객체 분리 감지부(150) 및 에너지 네트 비활성부(160)를 포함하는 가상 객체 조작 시스템(100)을 기반으로 가상(증강) 현실에서 가상의 물리 객체를 조작하기 위한 방법으로서, 먼저 손-객체 충돌 감지부(110)에 의해 물리 엔진에서 정의된 사용자의 가상의 손(210)의 끝에 형성된 기본형 물리 충돌체(210c)와 조작하고자 하는 가상 객체(220)의 메쉬 정보를 바탕으로 정의된 물리 충돌체(이하, '메쉬 충돌체'라 함)(미도시) 간의 충돌을 감지한다(단계 S301).3, the virtual object manipulation method according to the present invention includes a hand-object collision sensing unit 110, an object mesh information acquisition unit 120, an energy net generation unit 130, 1. A method for manipulating a virtual physical object in a virtual (enhanced) realm based on a virtual object manipulation system (100) including a hand-object separation sensing unit (140), a hand-object separation sensing unit (150) First, based on the basic physical collision object 210c formed at the end of the virtual hand 210 of the user defined in the physical engine and the mesh information of the virtual object 220 to be operated by the hand-object collision detecting unit 110, (Hereinafter referred to as " mesh collision object ") (not shown) (step S301).

그런 후, 객체 메쉬 정보 획득부(120)에 의해 상기 기본형 물리 충돌체(210c)와 메쉬 충돌체 간의 충돌이 일어난 지점을 중심으로 일정 영역의 가상 객체의 메쉬 정보를 획득하고, 상기 기본형 물리 충돌체(210c)의 변형 계산을 수행한다(단계 S302). 여기서, 상기 객체 메쉬 정보 획득부(120)에 의해 도 4에 도시된 바와 같이, 상기 기본형 물리 충돌체(210c)를 가상 객체(410)를 감싸 안은 형태의 네트(420)로 구성하여 변형시키기 위한 계산을 수행한다.Then, the mesh information acquiring unit 120 acquires mesh information of a virtual object in a certain region around a point where a collision between the basic physical collision object 210c and the mesh collision object occurs, (Step S302). As shown in FIG. 4, the object-mesh-information obtaining unit 120 constructs the basic-type physical object 210c as a net 420 enclosing the virtual object 410, .

이후, 에너지 네트 생성부(130)에 의해 상기 객체 메쉬 정보 획득부(120)에 의해 획득된 메쉬 정보를 기반으로 상기 기본형 물리 충돌체(210c)를 소정의 형상으로 확장하여 확장된 물리 충돌체를 생성한다(단계 S303). 이때, 상기 에너지 네트 생성부(130)에 의해 상기 기본형 물리 충돌체(210c)를 거미줄 형상(도 2의 (B), (C) 참조)으로 확장하여 확장된 물리 충돌체를 생성할 수 있다.Thereafter, the energy net generator 130 expands the basic physical collision object 210c into a predetermined shape based on the mesh information acquired by the object mesh information acquisition unit 120 to generate an expanded physical collision object (Step S303). At this time, the energy net generator 130 can expand the basic physical collision object 210c to a web-like shape (see (B) and (C) of FIG. 2) to generate an expanded physical collision object.

그런 다음, 객체 조작부(140))에 의해 상기 에너지 네트 생성부(130)에 의해 생성된 확장된 물리 충돌체를 이용하여 물리 엔진을 통한 동역학 계산을 통해 가상 객체를 조작한다(단계 S304). 이때, 이상과 같은 동역학 계산은 전술한 바와 같이, 물리 객체 간의 충돌 시점에서의 각 물리 모델들의 힘, 방향, 속도, 이동량, 충격량, 마찰력 등과 같은 계산 중 적어도 어느 하나를 포함할 수 있다.Then, the object manipulating unit 140 manipulates the virtual object through the dynamic engine through the physical engine using the extended physical collision object generated by the energy net generating unit 130 (step S304). At this time, the dynamics calculation as described above may include at least one of calculations such as force, direction, speed, movement amount, impact amount, frictional force, etc. of each physical model at the time of collision between physical objects.

여기서, 본 발명에 따른 가상 객체 조작 방법은 상기 단계 S304의 가상 객체를 조작하는 단계 이후, 바람직하게는 손-객체 분리 감지부(150)에 의해 상기 객체 조작부(140)에 의한 조작 과정에서 가상 객체를 파지 시 사용되었던 손가락 끝점에 대한 법선 벡터 방향을 고려하여 가상의 손과 가상 객체의 분리 의도를 감지하는 단계(S305)를 더 포함할 수 있다.Here, the method for operating a virtual object according to the present invention may further include a step of, after the step of operating the virtual object in step S304, (S305) of sensing the separation intention of the virtual hand and the virtual object in consideration of the normal vector direction of the finger end point used when the virtual finger is gripped.

또한, 바람직하게는 상기 단계 S305의 가상의 손과 가상 객체의 분리 의도를 감지하는 단계 이후, 에너지 네트 비활성부(160)에 의해, 상기 손-객체 분리 감지부(150)에 의해 가상의 손과 가상 객체의 분리 의도를 감지했을 때, 에너지 네트를 감쇠시켜 가상의 손에 대해 확장된 물리 충돌체를 초기의 기본형 물리 충돌체(210c) 형태로 복귀시키는 단계(S306)를 더 포함할 수 있다. Preferably, the step of sensing the separation intention of the virtual hand and the virtual object in step S305 is performed by the hand-object separation sensing part 150 by the energy net inactivity part 160, (S306) of attenuating the energy net when the separation intention of the virtual object is sensed and returning the expanded physical collision object with respect to the virtual hand to the form of the initial basic physical collision object 210c.

여기서, 이상과 같은 본 발명에 따른 가상 객체 조작 방법과 관련하여 조금 더 부연 설명을 해보기로 한다.Hereinafter, the virtual object manipulation method according to the present invention will be described in further detail.

본 발명의 가상 객체 조작 방법에 있어서, 손을 이용한 객체 조작을 위한 파지 동작 시 손끝에 적용된 기본형 물리 충돌체(210c)의 한 점이 가상 객체(220)의 물리 충돌체의 상응점에 닿았을 경우 두 객체 간의 충돌로 인식한다. In the virtual object manipulation method of the present invention, when a point of the basic physical object 210c applied to the fingertip touches the corresponding point of the physical object of the virtual object 220 during the grip operation for manipulating the object using the hand, It recognizes it as a collision.

충돌이 발생한 한 점을 중심으로 가상 객체의 메쉬 정보를 획득하여 손끝에 형성된 기본형 물리 충돌체를 도 4와 같이 가상 객체(410)를 감싸 안은 형태의 네트(420)로 구성하여 변형을 위한 계산을 수행한다. 이때, 네트(420)의 영역은 일차적으로 손 끝점을 중심점으로 하고, 조작하고자 하는 가상 객체의 가장 가까운 정점(vertex)을 찾는다. 네트(420)는 윤곽선(contour)의 집합으로 이루어지며, 가장 가까운 정점을 기준으로 도 4에서와 같이 확장된다. 확장된 윤곽선은 조작 대상인 가상 객체의 표면과 동일한 형태를 갖게 되므로, 손(가상의 손)과 가상 객체가 자동으로 밀착된 형태를 가지게 된다.The basic physical collision object formed at the fingertip is obtained from the mesh information of the virtual object centered on a point where the collision occurs, and the net 420 formed of the virtual object 410 enclosing the virtual object 410 is calculated as shown in FIG. do. At this time, the area of the net 420 primarily searches for the nearest vertex of the virtual object to be operated with the fingertip as a center point. The net 420 is formed of a set of contours, and is expanded as shown in FIG. 4 with respect to the closest vertex. The extended contour has the same shape as the surface of the virtual object to be manipulated, so that the hand (virtual hand) and the virtual object are automatically in close contact with each other.

도 5에 도시된 바와 같은, 에너지 네트를 구성하는 윤곽선의 개수는 아래의 수식과 같이 계산한다.The number of contours constituting the energy net, as shown in Fig. 5, is calculated according to the following equation.

Figure 112016060286429-pat00001
Figure 112016060286429-pat00001

Figure 112016060286429-pat00002
Figure 112016060286429-pat00002

Figure 112016060286429-pat00003
Figure 112016060286429-pat00003

여기서, Numbercontour는 손 조작시에 생성되는 네트 윤곽선의 개수를 의미하는 것으로 손끝점 방향벡터, 접촉 시간을 고려하여 최종 에너지 네트 확산 지점을 구한다. 손가락 끝점의 방향 벡터 상태를 의미하는 CFinvec(i)는, 손가락 끝점에서 가상 물체의 중심을 잇는 벡터와 손가락 끝점의 방향 벡터 사이의 각 (cos)를 의미하며, 차이가 적을수록 큰 값을 가진다. 접촉 시간을 의미하는 Cime(i)는, 전체 접촉 시간 대비 각 영역의 접촉시간 비율을 정규화시킨 수치를 의미하며, 접촉 시간이 길수록 큰 값을 가진다. Here, Number contour is the number of net contours generated at the time of hand operation, and the final energy net diffusion point is obtained by considering the fingertip direction vector and the contact time. C Finvec (i), which means the direction vector state of the finger end point, means the angle (cos) between the vector connecting the center of the virtual object at the finger end point and the direction vector of the finger end point, and has a larger value as the difference is smaller . C ime (i), which means the contact time, means a value obtained by normalizing the contact time ratio of each region with respect to the total contact time, and has a larger value as the contact time becomes longer.

에너지 네트는 각 물체 및 상황에 따라 파지 및 분리 임계점을 지정할 수 있으며, 각 임계점을 기준으로 파지/분리 상태를 구분한다. 네트 형태로 변형된 손끝 물리 충돌체를 통한 다접점 기반 손-객체 조작은 이동, 회전, 롤링 등을 용이하게 하도록 한다. 객체로부터 손을 분리할 때(객체를 놓을 때) 역시 손가락 끝점의 방향 벡터 상태 및 접촉 시간을 고려하여 손 객체 분리 의도를 감지한다. 손-객체 분리 의도가 감지되었을 때 에너지 네트는 점차적으로 감쇠하며 손끝에 대한 충돌체의 초기 형태로 복귀한다.The energy net can specify the grasping and separation threshold according to each object and situation, and distinguishes the grasping / separating state based on each critical point. Multi - contact based hand - object manipulation through net deformed fingertip physical object facilitates movement, rotation, and rolling. When the hand is separated from the object (when the object is placed), the hand object separation intention is also detected by considering the direction vector state of the finger end point and the contact time. When the hand-object separation intent is detected, the energy net gradually attenuates and returns to the initial form of the object to the fingertip.

한편, 도 6a 내지 도 6c는 본 발명에 따른 가상 객체 조작 방법을 도식적으로 설명하는 도면이다.6A to 6C are diagrams illustrating a virtual object manipulation method according to the present invention.

도 6a를 참조하면, 먼저 (A)에서와 같이 가상(증강) 현실에서 가상 객체(601)를 조작하기 위해 물리 엔진(그래픽 엔진)에서 사용자의 가상의 손 (602)을 정의(설정)한다.Referring to FIG. 6A, a virtual hand 602 of a user is set in a physical engine (graphic engine) to manipulate a virtual object 601 in a virtual (enhancing) reality as in (A).

그런 후, (B)에서와 같이 그 가상의 손(602)을 이용하여 가상 객체(601)를 잡기를 시도한다. 이때, 가상의 손(602)으로 가상 객체(601)를 잡을 시, 전술한 바와 같이 손끝에 적용된 기본형 물리 충돌체(210c)의 한 점이 가상 객체(601)의 물리 충돌체의 상응점에 닿게 되며, 손-객체 충돌 감지부(110)(도 1 참조)는 이러한 상황을 두 객체 간의 충돌로 인식한다.Then, as shown in (B), an attempt is made to catch the virtual object 601 using the virtual hand 602. At this time, when the virtual object 601 is held by the virtual hand 602, one point of the basic physical object 210c applied to the fingertip touches the corresponding point of the physical object 601 of the virtual object 601 as described above, The object collision detection unit 110 (see FIG. 1) recognizes this situation as a collision between two objects.

다음에, 이상과 같이 가상의 손(602)으로 가상 객체(601)를 잡은 후, 도 6b의 (C)에서와 같이 가상의 손(602)을 움직여 가상 객체(601)를 회전시키고, 그렇게 회전시킨 상태에서 (D)에서와 같이 가상의 손(602)을 움직여 가상 객체(601)를 이동시킨다. 이것은 전술한 바와 같이 객체 조작부(140))에 의해 물리 엔진을 통한 동역학 계산을 통해 가상 객체(601)를 조작하는 행위에 해당한다.Next, after the virtual object 601 is held by the virtual hand 602 as described above, the virtual object 601 is rotated by moving the virtual hand 602 as shown in (C) of FIG. 6B, The virtual object 602 is moved by moving the virtual hand 602 as shown in (D). This corresponds to the operation of manipulating the virtual object 601 through dynamic computation through the physical engine by the object manipulation unit 140 as described above.

이후, 도 6c의 (E)와 같이 가상의 손(602)으로부터 가상 객체(601)를 내려 놓는다. 이때, 전술한 바와 같이, 손-객체 분리 감지부(150)에 의해 상기 객체 조작부(140)에 의한 조작 과정에서 가상 객체(601)를 잡았을 때 사용되었던 손가락 끝점에 대한 법선 벡터 방향을 고려하여 가상의 손(602)과 가상 객체(601)의 분리 의도를 감지한다. 그런 후, 에너지 네트 비활성부(160)에 의해, 상기 손-객체 분리 감지부(150)에 의해 가상의 손(602)과 가상 객체(601)의 분리 의도를 감지했을 때, 에너지 네트를 감쇠시켜 가상의 손(602)에 대해 확장된 물리 충돌체를 초기의 기본형 물리 충돌체(210c) 형태로 복귀시키게 된다.Thereafter, the virtual object 601 is dropped from the virtual hand 602 as shown in (E) of FIG. 6C. In this case, as described above, when the virtual object 601 is caught by the hand-object separation sensing unit 150 during the manipulation by the object manipulation unit 140, the virtual- The virtual object 601 and the hand 602 of the virtual object 601. Then, when the energy net inactivity unit 160 senses the intention of separating the virtual hand 602 and the virtual object 601 by the hand-object separation sensing unit 150, the energy net is attenuated And returns the expanded physical collision object to the virtual hand 602 in the form of the initial basic physical collision object 210c.

이상의 설명과 같이, 본 발명에 따른 가상 객체 조작 시스템 및 방법은 사용자의 손과 접촉된 가상 객체의 메쉬 정보를 기반으로 사용자 손끝의 기본형 물리 충돌체를 재구성한 후, 동역학 계산 과정을 거쳐 가상 객체를 조작함으로써, 전체 시스템에 대한 부하를 줄이고 가상 객체를 한층 용이하게 조작할 수 있는 장점이 있다.As described above, the virtual object manipulation system and method according to the present invention reconfigures the basic physical object of the user's fingertip based on the mesh information of the virtual object in contact with the user's hand, and then manipulates the virtual object Thus, there is an advantage that the load on the entire system can be reduced and the virtual objects can be manipulated more easily.

이상, 바람직한 실시예를 통하여 본 발명에 관하여 상세히 설명하였으나, 본 발명은 이에 한정되는 것은 아니며, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 다양하게 변경, 응용될 수 있음은 당해 기술분야의 통상의 기술자에게 자명하다. 따라서, 본 발명의 진정한 보호 범위는 다음의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술적 사상은 본 발명의 권리 범위에 포함되는 것으로 해석되어야 할 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, but many variations and modifications may be made without departing from the spirit and scope of the invention. Be clear to the technician. Accordingly, the true scope of protection of the present invention should be construed according to the following claims, and all technical ideas within the scope of the same should be construed as being included in the scope of the present invention.

110: 손-객체 충돌 감지부 120: 객체 메쉬 정보 획득부
130: 에너지 네트 생성부 140: 객체 조작부
150: 손-객체 분리 감지부 160: 에너지 네트 비활성부
210: 가상의 손 210c: 기본형 물리 충돌체
220,410: 가상 객체 420: 네트
110: Hand-object collision detection unit 120: Object mesh information acquisition unit
130: energy net generator 140: object manipulator
150: hand-object separation sensing part 160: energy net inactive part
210: virtual hand 210c: basic physical object
220, 410: virtual object 420: net

Claims (10)

가상 현실에서 가상의 물리 객체를 조작하기 위한 시스템으로서,
물리 엔진에서 정의된 사용자의 가상의 손의 끝에 형성된 기본형 물리 충돌체(primitive collider)와 조작하고자 하는 가상 객체의 메쉬 정보를 바탕으로 정의된 물리 충돌체(mesh collider; 이하 '메쉬 충돌체'라 함) 간의 충돌을 감지하는 손-객체 충돌 감지부;
상기 기본형 물리 충돌체와 메쉬 충돌체 간의 충돌이 일어난 지점을 중심으로 일정 영역의 가상 객체의 메쉬 정보를 획득하고, 상기 기본형 물리 충돌체의 변형 계산을 수행하는 객체 메쉬 정보 획득부;
상기 객체 메쉬 정보 획득부에 의해 획득된 메쉬 정보를 기반으로 상기 기본형 물리 충돌체를 소정의 형상으로 확장하여 확장된 물리 충돌체를 생성하는 에너지 네트 생성부;
상기 에너지 네트 생성부에 의해 생성된 확장된 물리 충돌체를 이용하여 물리 엔진을 통한 동역학 계산을 통해 가상 객체를 조작하는 객체 조작부;
상기 객체 조작부에 의한 조작 과정에서 가상 객체를 파지 시 사용되었던 손가락 끝점에 대한 법선 벡터 방향을 고려하여 가상의 손과 가상 객체의 분리 의도를 감지하는 손-객체 분리 감지부; 및
상기 손-객체 분리 감지부에 의해 가상의 손과 가상 객체의 분리 의도를 감지했을 때, 에너지 네트를 감쇠시켜 가상의 손에 대해 상기 확장된 물리 충돌체를 초기의 기본형 물리 충돌체 형태로 복귀시키는 에너지 네트 비활성부를 포함하고,
상기 객체 메쉬 정보 획득부는 상기 기본형 물리 충돌체를 가상 객체를 감싸 안은 형태의 네트로 구성하여 변형시키기 위한 계산을 수행하는 것을 특징으로 하는 가상 객체 조작 시스템.
A system for manipulating a virtual physical object in a virtual reality,
A collision between a basic type physical collider formed at the end of a virtual hand of a user defined in the physical engine and a mesh collider defined as a mesh based on the mesh information of a virtual object to be manipulated A hand-object collision detecting unit for detecting a hand-object collision;
An object mesh information acquiring unit acquiring mesh information of a virtual object in a predetermined region around a point where a collision occurs between the basic physical collision object and the mesh collision object and performing deformation calculation of the basic physical collision object;
An energy net generator for generating an expanded physical collision object by expanding the basic physical collision object into a predetermined shape based on the mesh information acquired by the object mesh information acquisition part;
An object manipulating unit operable to manipulate a virtual object through kinetic computation through a physical engine using the extended physical collision object generated by the energy net generator;
A hand-object separation sensing unit for sensing an intention of separating a virtual hand and a virtual object in consideration of a normal vector direction of a finger end point used in gripping a virtual object in the operation process by the object manipulation unit; And
An energy net that attenuates the energy net and returns the expanded physical collision object to the initial basic physical collision object form with respect to the virtual hand when the hand-object separation sensing unit senses the intention of separating the virtual hand and the virtual object, An inert portion,
Wherein the object mesh information obtaining unit performs a calculation for transforming the basic physical collision object into a net including a virtual object enclosed therein.
삭제delete 제1항에 있어서,
상기 가상 객체를 감싸 안은 형태의 네트는 다수의 윤곽선의 집합으로 이루어지는 것을 특징으로 하는 가상 객체 조작 시스템.
The method according to claim 1,
Wherein the net in which the virtual object is enclosed is a set of a plurality of contour lines.
제1항에 있어서,
상기 에너지 네트 생성부는 상기 기본형 물리 충돌체를 거미줄 형상으로 확장하여 확장된 물리 충돌체를 생성하는 것을 특징으로 하는 가상 객체 조작 시스템.
The method according to claim 1,
Wherein the energy net generating unit expands the basic physical collision object into a spider web to generate an expanded physical collision object.
제1항에 있어서,
상기 객체 조작부에 의해 수행되는 동역학 계산은 물리 객체 간의 충돌 시점에서의 각 물리 모델들의 힘, 방향, 속도, 이동량, 충격량, 마찰력 중 적어도 어느 하나를 포함하는 것을 특징으로 하는 가상 객체 조작 시스템.
The method according to claim 1,
Wherein the kinematic calculation performed by the object manipulation unit includes at least one of force, direction, velocity, movement amount, impact amount, and frictional force of each physical model at the time of collision between the physical objects.
가상 현실에서 가상의 물리 객체를 조작하기 위한 방법으로서,
a) 손-객체 충돌 감지부에 의해 물리 엔진에서 정의된 사용자의 가상의 손의 끝에 형성된 기본형 물리 충돌체와 조작하고자 하는 가상 객체의 메쉬 정보를 바탕으로 정의된 물리 충돌체(이하, '메쉬 충돌체'라 함) 간의 충돌을 감지하는 단계;
b) 객체 메쉬 정보 획득부에 의해 상기 기본형 물리 충돌체와 메쉬 충돌체 간의 충돌이 일어난 지점을 중심으로 일정 영역의 가상 객체의 메쉬 정보를 획득하고, 상기 기본형 물리 충돌체의 변형 계산을 수행하는 단계;
c) 에너지 네트 생성부에 의해 상기 객체 메쉬 정보 획득부에 의해 획득된 메쉬 정보를 기반으로 상기 기본형 물리 충돌체를 소정의 형상으로 확장하여 확장된 물리 충돌체를 생성하는 단계; 및
d) 객체 조작부에 의해 상기 에너지 네트 생성부에 의해 생성된 확장된 물리 충돌체를 이용하여 물리 엔진을 통한 동역학 계산을 통해 가상 객체를 조작하는 단계를 포함하고,
상기 단계 b)의 상기 기본형 물리 충돌체의 변형 계산을 수행하는 단계에서 상기 객체 메쉬 정보 획득부에 의해 상기 기본형 물리 충돌체를 가상 객체를 감싸 안은 형태의 네트로 구성하여 변형시키기 위한 계산을 수행하는 것을 특징으로 하는 가상 객체 조작 방법.
A method for manipulating a virtual physical object in a virtual reality,
a) a physical collision object (hereinafter referred to as a " mesh collision object ") defined based on the basic physical collision object formed at the end of the virtual hand of the user defined in the physical engine by the hand- Sensing a collision between the two sensors;
b) acquiring mesh information of a virtual object in a certain region around a point where a collision between the basic physical collision object and the mesh collision object occurs by the object mesh information acquisition unit, and performing deformation calculation of the basic physical collision object;
c) generating an expanded physical conflict object by expanding the basic physical conflict object to a predetermined shape based on the mesh information acquired by the object mesh information acquisition section by the energy net generating section; And
d) manipulating the virtual object through kinetic computation through the physical engine using the expanded physical collision object generated by the energy net generator by the object manipulation unit,
In the step of performing deformation calculation of the basic physical collision object in the step b), the object mesh information acquisition unit constructs the basic physical collision object by constructing and modifying the basic net object by embedding the virtual object in the form of a net. A method of manipulating a virtual object.
제6항에 있어서,
상기 단계 d)의 가상 객체를 조작하는 단계 이후,
e) 손-객체 분리 감지부에 의해 상기 객체 조작부에 의한 조작 과정에서 가상 객체를 파지 시 사용되었던 손가락 끝점에 대한 법선 벡터 방향을 고려하여 가상의 손과 가상 객체의 분리 의도를 감지하는 단계를 더 포함하는 가상 객체 조작 방법.
The method according to claim 6,
After manipulating the virtual object of step d)
e) detecting the separation intention of the virtual hand and the virtual object by considering the normal vector direction of the fingertip used in gripping the virtual object during the operation of the object manipulation unit by the hand-object separation sensing unit How to manipulate containing virtual objects.
제7항에 있어서,
상기 단계 e)의 가상의 손과 가상 객체의 분리 의도를 감지하는 단계 이후,
f) 에너지 네트 비활성부에 의해, 상기 손-객체 분리 감지부에 의해 가상의 손과 가상 객체의 분리 의도를 감지했을 때, 에너지 네트를 감쇠시켜 가상의 손에 대해 확장된 물리 충돌체를 초기의 기본형 물리 충돌체 형태로 복귀시키는 단계를 더 포함하는 가상 객체 조작 방법.
8. The method of claim 7,
After sensing the separation intention of the virtual hand and the virtual object in step e)
f) When the intention of separating a virtual hand and a virtual object is sensed by the hand-object separation sensing unit by the energy net inactive part, the energy net is attenuated so that the physical object, which is extended to the virtual hand, And returning to the form of a physical object.
삭제delete 제6항에 있어서,
상기 단계 c)의 상기 기본형 물리 충돌체를 소정의 형상으로 확장하여 확장된 물리 충돌체를 생성하는 단계에서 상기 에너지 네트 생성부에 의해 상기 기본형 물리 충돌체를 거미줄 형상으로 확장하여 확장된 물리 충돌체를 생성하는 것을 특징으로 하는 가상 객체 조작 방법.
The method according to claim 6,
And expanding the basic physical collision object in step c) to a predetermined shape to generate an expanded physical collision object, the energy net creator expands the basic physical collider object into a spider web to generate an expanded physical object A virtual object manipulation method characterized by:
KR1020160077879A 2016-06-22 2016-06-22 Virtual object control system and method KR101790147B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160077879A KR101790147B1 (en) 2016-06-22 2016-06-22 Virtual object control system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160077879A KR101790147B1 (en) 2016-06-22 2016-06-22 Virtual object control system and method

Publications (1)

Publication Number Publication Date
KR101790147B1 true KR101790147B1 (en) 2017-10-25

Family

ID=60300095

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160077879A KR101790147B1 (en) 2016-06-22 2016-06-22 Virtual object control system and method

Country Status (1)

Country Link
KR (1) KR101790147B1 (en)

Cited By (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101849226B1 (en) * 2017-11-27 2018-05-30 주식회사 네비웍스 Operation appratus for virtual reality, and control method thereof
WO2019147956A1 (en) * 2018-01-25 2019-08-01 Ctrl-Labs Corporation Visualization of reconstructed handstate information
US10489986B2 (en) 2018-01-25 2019-11-26 Ctrl-Labs Corporation User-controlled tuning of handstate representation model parameters
US10496168B2 (en) 2018-01-25 2019-12-03 Ctrl-Labs Corporation Calibration techniques for handstate representation modeling using neuromuscular signals
US10504286B2 (en) 2018-01-25 2019-12-10 Ctrl-Labs Corporation Techniques for anonymizing neuromuscular signal data
US10592001B2 (en) 2018-05-08 2020-03-17 Facebook Technologies, Llc Systems and methods for improved speech recognition using neuromuscular information
US10656711B2 (en) 2016-07-25 2020-05-19 Facebook Technologies, Llc Methods and apparatus for inferring user intent based on neuromuscular signals
US10684692B2 (en) 2014-06-19 2020-06-16 Facebook Technologies, Llc Systems, devices, and methods for gesture identification
US10687759B2 (en) 2018-05-29 2020-06-23 Facebook Technologies, Llc Shielding techniques for noise reduction in surface electromyography signal measurement and related systems and methods
US10772519B2 (en) 2018-05-25 2020-09-15 Facebook Technologies, Llc Methods and apparatus for providing sub-muscular control
US10817795B2 (en) 2018-01-25 2020-10-27 Facebook Technologies, Llc Handstate reconstruction based on multiple inputs
US10842407B2 (en) 2018-08-31 2020-11-24 Facebook Technologies, Llc Camera-guided interpretation of neuromuscular signals
US10905383B2 (en) 2019-02-28 2021-02-02 Facebook Technologies, Llc Methods and apparatus for unsupervised one-shot machine learning for classification of human gestures and estimation of applied forces
US10921764B2 (en) 2018-09-26 2021-02-16 Facebook Technologies, Llc Neuromuscular control of physical objects in an environment
US10937414B2 (en) 2018-05-08 2021-03-02 Facebook Technologies, Llc Systems and methods for text input using neuromuscular information
US10970936B2 (en) 2018-10-05 2021-04-06 Facebook Technologies, Llc Use of neuromuscular signals to provide enhanced interactions with physical objects in an augmented reality environment
US10970374B2 (en) 2018-06-14 2021-04-06 Facebook Technologies, Llc User identification and authentication with neuromuscular signatures
US10990174B2 (en) 2016-07-25 2021-04-27 Facebook Technologies, Llc Methods and apparatus for predicting musculo-skeletal position information using wearable autonomous sensors
US11000211B2 (en) 2016-07-25 2021-05-11 Facebook Technologies, Llc Adaptive system for deriving control signals from measurements of neuromuscular activity
US11045137B2 (en) 2018-07-19 2021-06-29 Facebook Technologies, Llc Methods and apparatus for improved signal robustness for a wearable neuromuscular recording device
US11079846B2 (en) 2013-11-12 2021-08-03 Facebook Technologies, Llc Systems, articles, and methods for capacitive electromyography sensors
US11179066B2 (en) 2018-08-13 2021-11-23 Facebook Technologies, Llc Real-time spike detection and identification
US11216069B2 (en) 2018-05-08 2022-01-04 Facebook Technologies, Llc Systems and methods for improved speech recognition using neuromuscular information
US11331045B1 (en) 2018-01-25 2022-05-17 Facebook Technologies, Llc Systems and methods for mitigating neuromuscular signal artifacts
US11337652B2 (en) 2016-07-25 2022-05-24 Facebook Technologies, Llc System and method for measuring the movements of articulated rigid bodies
US11481030B2 (en) 2019-03-29 2022-10-25 Meta Platforms Technologies, Llc Methods and apparatus for gesture detection and classification
US11481031B1 (en) 2019-04-30 2022-10-25 Meta Platforms Technologies, Llc Devices, systems, and methods for controlling computing devices via neuromuscular signals of users
US11493993B2 (en) 2019-09-04 2022-11-08 Meta Platforms Technologies, Llc Systems, methods, and interfaces for performing inputs based on neuromuscular control
US11567573B2 (en) 2018-09-20 2023-01-31 Meta Platforms Technologies, Llc Neuromuscular text entry, writing and drawing in augmented reality systems
US11635736B2 (en) 2017-10-19 2023-04-25 Meta Platforms Technologies, Llc Systems and methods for identifying biological structures associated with neuromuscular source signals
US11666264B1 (en) 2013-11-27 2023-06-06 Meta Platforms Technologies, Llc Systems, articles, and methods for electromyography sensors
US11797087B2 (en) 2018-11-27 2023-10-24 Meta Platforms Technologies, Llc Methods and apparatus for autocalibration of a wearable electrode sensor system
US11868531B1 (en) 2021-04-08 2024-01-09 Meta Platforms Technologies, Llc Wearable device providing for thumb-to-finger-based input gestures detected based on neuromuscular signals, and systems and methods of use thereof
US11907423B2 (en) 2019-11-25 2024-02-20 Meta Platforms Technologies, Llc Systems and methods for contextualized interactions with an environment
US11921471B2 (en) 2013-08-16 2024-03-05 Meta Platforms Technologies, Llc Systems, articles, and methods for wearable devices having secondary power sources in links of a band for providing secondary power in addition to a primary power source
US11961494B1 (en) 2019-03-29 2024-04-16 Meta Platforms Technologies, Llc Electromagnetic interference reduction in extended reality environments

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Dropping the Ball: Releasing a Virtual Grasp 3D User Interfaces, 2011 IEEE Symposium(2011)*

Cited By (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11921471B2 (en) 2013-08-16 2024-03-05 Meta Platforms Technologies, Llc Systems, articles, and methods for wearable devices having secondary power sources in links of a band for providing secondary power in addition to a primary power source
US11079846B2 (en) 2013-11-12 2021-08-03 Facebook Technologies, Llc Systems, articles, and methods for capacitive electromyography sensors
US11666264B1 (en) 2013-11-27 2023-06-06 Meta Platforms Technologies, Llc Systems, articles, and methods for electromyography sensors
US10684692B2 (en) 2014-06-19 2020-06-16 Facebook Technologies, Llc Systems, devices, and methods for gesture identification
US11000211B2 (en) 2016-07-25 2021-05-11 Facebook Technologies, Llc Adaptive system for deriving control signals from measurements of neuromuscular activity
US10990174B2 (en) 2016-07-25 2021-04-27 Facebook Technologies, Llc Methods and apparatus for predicting musculo-skeletal position information using wearable autonomous sensors
US11337652B2 (en) 2016-07-25 2022-05-24 Facebook Technologies, Llc System and method for measuring the movements of articulated rigid bodies
US10656711B2 (en) 2016-07-25 2020-05-19 Facebook Technologies, Llc Methods and apparatus for inferring user intent based on neuromuscular signals
US11635736B2 (en) 2017-10-19 2023-04-25 Meta Platforms Technologies, Llc Systems and methods for identifying biological structures associated with neuromuscular source signals
KR101849226B1 (en) * 2017-11-27 2018-05-30 주식회사 네비웍스 Operation appratus for virtual reality, and control method thereof
US10496168B2 (en) 2018-01-25 2019-12-03 Ctrl-Labs Corporation Calibration techniques for handstate representation modeling using neuromuscular signals
US11361522B2 (en) 2018-01-25 2022-06-14 Facebook Technologies, Llc User-controlled tuning of handstate representation model parameters
US11163361B2 (en) 2018-01-25 2021-11-02 Facebook Technologies, Llc Calibration techniques for handstate representation modeling using neuromuscular signals
WO2019147956A1 (en) * 2018-01-25 2019-08-01 Ctrl-Labs Corporation Visualization of reconstructed handstate information
US10504286B2 (en) 2018-01-25 2019-12-10 Ctrl-Labs Corporation Techniques for anonymizing neuromuscular signal data
US10817795B2 (en) 2018-01-25 2020-10-27 Facebook Technologies, Llc Handstate reconstruction based on multiple inputs
US10950047B2 (en) 2018-01-25 2021-03-16 Facebook Technologies, Llc Techniques for anonymizing neuromuscular signal data
US10489986B2 (en) 2018-01-25 2019-11-26 Ctrl-Labs Corporation User-controlled tuning of handstate representation model parameters
US11331045B1 (en) 2018-01-25 2022-05-17 Facebook Technologies, Llc Systems and methods for mitigating neuromuscular signal artifacts
US11069148B2 (en) 2018-01-25 2021-07-20 Facebook Technologies, Llc Visualization of reconstructed handstate information
US10937414B2 (en) 2018-05-08 2021-03-02 Facebook Technologies, Llc Systems and methods for text input using neuromuscular information
US11036302B1 (en) 2018-05-08 2021-06-15 Facebook Technologies, Llc Wearable devices and methods for improved speech recognition
US10592001B2 (en) 2018-05-08 2020-03-17 Facebook Technologies, Llc Systems and methods for improved speech recognition using neuromuscular information
US11216069B2 (en) 2018-05-08 2022-01-04 Facebook Technologies, Llc Systems and methods for improved speech recognition using neuromuscular information
US10772519B2 (en) 2018-05-25 2020-09-15 Facebook Technologies, Llc Methods and apparatus for providing sub-muscular control
US11129569B1 (en) 2018-05-29 2021-09-28 Facebook Technologies, Llc Shielding techniques for noise reduction in surface electromyography signal measurement and related systems and methods
US10687759B2 (en) 2018-05-29 2020-06-23 Facebook Technologies, Llc Shielding techniques for noise reduction in surface electromyography signal measurement and related systems and methods
US10970374B2 (en) 2018-06-14 2021-04-06 Facebook Technologies, Llc User identification and authentication with neuromuscular signatures
US11045137B2 (en) 2018-07-19 2021-06-29 Facebook Technologies, Llc Methods and apparatus for improved signal robustness for a wearable neuromuscular recording device
US11179066B2 (en) 2018-08-13 2021-11-23 Facebook Technologies, Llc Real-time spike detection and identification
US10842407B2 (en) 2018-08-31 2020-11-24 Facebook Technologies, Llc Camera-guided interpretation of neuromuscular signals
US10905350B2 (en) 2018-08-31 2021-02-02 Facebook Technologies, Llc Camera-guided interpretation of neuromuscular signals
US11567573B2 (en) 2018-09-20 2023-01-31 Meta Platforms Technologies, Llc Neuromuscular text entry, writing and drawing in augmented reality systems
US10921764B2 (en) 2018-09-26 2021-02-16 Facebook Technologies, Llc Neuromuscular control of physical objects in an environment
US10970936B2 (en) 2018-10-05 2021-04-06 Facebook Technologies, Llc Use of neuromuscular signals to provide enhanced interactions with physical objects in an augmented reality environment
US11797087B2 (en) 2018-11-27 2023-10-24 Meta Platforms Technologies, Llc Methods and apparatus for autocalibration of a wearable electrode sensor system
US11941176B1 (en) 2018-11-27 2024-03-26 Meta Platforms Technologies, Llc Methods and apparatus for autocalibration of a wearable electrode sensor system
US10905383B2 (en) 2019-02-28 2021-02-02 Facebook Technologies, Llc Methods and apparatus for unsupervised one-shot machine learning for classification of human gestures and estimation of applied forces
US11481030B2 (en) 2019-03-29 2022-10-25 Meta Platforms Technologies, Llc Methods and apparatus for gesture detection and classification
US11961494B1 (en) 2019-03-29 2024-04-16 Meta Platforms Technologies, Llc Electromagnetic interference reduction in extended reality environments
US11481031B1 (en) 2019-04-30 2022-10-25 Meta Platforms Technologies, Llc Devices, systems, and methods for controlling computing devices via neuromuscular signals of users
US11493993B2 (en) 2019-09-04 2022-11-08 Meta Platforms Technologies, Llc Systems, methods, and interfaces for performing inputs based on neuromuscular control
US11907423B2 (en) 2019-11-25 2024-02-20 Meta Platforms Technologies, Llc Systems and methods for contextualized interactions with an environment
US11868531B1 (en) 2021-04-08 2024-01-09 Meta Platforms Technologies, Llc Wearable device providing for thumb-to-finger-based input gestures detected based on neuromuscular signals, and systems and methods of use thereof

Similar Documents

Publication Publication Date Title
KR101790147B1 (en) Virtual object control system and method
KR101562827B1 (en) Apparatus and method for manipulating virtual object
KR102230421B1 (en) Apparatus and method of controlling virtual model
US6191796B1 (en) Method and apparatus for generating and interfacing with rigid and deformable surfaces in a haptic virtual reality environment
Barros et al. A dynamic gesture recognition and prediction system using the convexity approach
CN110837792B (en) Three-dimensional gesture recognition method and device
Tian et al. Realtime hand-object interaction using learned grasp space for virtual environments
Oz et al. Recognition of finger spelling of American sign language with artificial neural network using position/orientation sensors and data glove
Faria et al. Knowledge-based reasoning from human grasp demonstrations for robot grasp synthesis
KR20220066774A (en) Method and apparatus for online fitting
CN109739358A (en) Gesture collision checking method and equipment based on naked eye 3D
Borras et al. A whole-body pose taxonomy for loco-manipulation tasks
CN108537175B (en) Gesture sensing-based body language semantic recognition method and device and storage medium
Tsykunov et al. Wiredswarm: High resolution haptic feedback provided by a swarm of drones to the user’s fingers for vr interaction
Devi et al. Dance gesture recognition: a survey
Trigueiros et al. Generic system for human-computer gesture interaction
Cohen et al. A 3d virtual sketching system using NURBS surfaces and leap motion controller
Caselli et al. Haptic object recognition with a dextrous hand based on volumetric shape representations
WO2022259723A1 (en) Grasp information generation device, method, and program
Shi et al. Grasping 3d objects with virtual hand in vr environment
Guo et al. A system of robotic grasping with experience acquisition
Mohammed et al. Color matching based approach for robotic grasping
WO2018161305A1 (en) Grasp quality detection method, and method and system employing same
JP6623366B1 (en) Route recognition method, route recognition device, route recognition program, and route recognition program recording medium
CN112486319A (en) VR (virtual reality) interaction method, device, equipment and medium based on touch rendering equipment

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant