KR102497906B1 - 충돌체 구현 장치 및 방법 - Google Patents
충돌체 구현 장치 및 방법 Download PDFInfo
- Publication number
- KR102497906B1 KR102497906B1 KR1020180165493A KR20180165493A KR102497906B1 KR 102497906 B1 KR102497906 B1 KR 102497906B1 KR 1020180165493 A KR1020180165493 A KR 1020180165493A KR 20180165493 A KR20180165493 A KR 20180165493A KR 102497906 B1 KR102497906 B1 KR 102497906B1
- Authority
- KR
- South Korea
- Prior art keywords
- collision
- collider
- voxel
- target
- voxels
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/08—Volume rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/12—Bounding box
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/21—Collision detection, intersection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Processing Or Creating Images (AREA)
Abstract
본 발명은 가상현실에서의 범용적인 충돌체 구현 장치 및 방법에 관한 것이다.
본 발명의 일 실시 예에 따른 충돌체 구현 장치는, 영상 프레임 내에서 충돌체로 제작할 물체에 충돌 범위를 나타내는 충돌 박스를 설정하고, 충돌 박스를 소정 개수의 충돌 복셀로 분할하는 생성부와, 충돌 복셀 각각에 대상 충돌체가 충돌하는 경우를 판별하고 충돌 결과를 전송하는 충돌 조건을 지정하는 편집부와, 영상 프레임 마다 충돌 복셀에 대상 충돌체가 충돌하는 경우, 하나 이상의 충돌 복셀로부터 충돌 조건에 따라 생성된 충돌 신호를 수집하는 제어부와, 제어부로부터 충돌 신호의 수집 결과를 취합하고 시각적 처리를 수행하여 디스플레이부로 출력하는 통계부를 포함한다.
본 발명의 일 실시 예에 따른 충돌체 구현 장치는, 영상 프레임 내에서 충돌체로 제작할 물체에 충돌 범위를 나타내는 충돌 박스를 설정하고, 충돌 박스를 소정 개수의 충돌 복셀로 분할하는 생성부와, 충돌 복셀 각각에 대상 충돌체가 충돌하는 경우를 판별하고 충돌 결과를 전송하는 충돌 조건을 지정하는 편집부와, 영상 프레임 마다 충돌 복셀에 대상 충돌체가 충돌하는 경우, 하나 이상의 충돌 복셀로부터 충돌 조건에 따라 생성된 충돌 신호를 수집하는 제어부와, 제어부로부터 충돌 신호의 수집 결과를 취합하고 시각적 처리를 수행하여 디스플레이부로 출력하는 통계부를 포함한다.
Description
본 발명은 가상현실에서의 범용적인 충돌체 구현 장치 및 방법에 관한 것이다.
유니티 3D와 같은 상용 게임 엔진에서는 피직스X(physX)와 같은 별도의 물리 엔진을 내부에 탑재하고 있으나, 실시간 게임 엔진의 특성상 엔진의 실시간 성능을 떨어뜨리는 소프트 바디 물리 기능은 제공하고 있지 않다. 또한, 물리체와 비물리체와의 적용 구분이 확실하여 유체 등 액체나 기체의 성질을 가진 대상이나, 로프 등과 같이 물리적으로 유기적인 탄성이 존재하는 물체의 실시간 물리 상호 작용은 별도로 구현하여야만 한다. 이러한 경우 기존 게임 엔진 상의 물리 엔진으로 구현된 물리체와의 충돌점이나 충돌 범위의 판정을 해줄 수 있는 범용적인 방법이 필요해지게 된다.
상용 게임 엔진에서 기존의 물리 엔진으로 구현된 물리체라 하더라도 물체의 굴곡에 따른 정밀한 충돌 판정을 하기 위해서는 다수의 박스(box)나 구(sphere) 등의 정형적 충돌체를 결합하여 굴곡을 만들어 주거나, 메쉬(mesh) 모양을 그대로 충돌체에 대입하여 주는 경우가 있을 수 있다. 그러나 박스나 구 등의 정형적 충돌체를 결합하여 굴곡을 만들어 주는 방식은 물리체의 모양에 따라 너무 많은 수고가 따르고, 때문에 이를 수정하는 것 역시 많은 작업이 필요하다. 메쉬 모양을 그대로 충돌체에 대입하여 주는 경우에도 콘벡스(convex) 형태가 아닌 경우 충돌 체크에 이상이 발생하여 범용적인 방법으로 사용하기에는 적당하지 않다.
전술한 배경기술은 발명자가 본 발명의 도출을 위해 보유하고 있었거나, 본 발명의 도출 과정에서 습득한 기술 정보로서, 반드시 본 발명의 출원 전에 일반 공중에게 공개된 공지기술이라 할 수는 없다.
본 발명은 전술한 문제점 및/또는 한계를 해결하기 위해 안출된 것으로, 일 측면에 따른 본 발명의 목적은 어떠한 모양의 물체에 대해서도 쉽게 충돌체를 제작하여 충돌 위치를 세부적으로 알 수 있도록 하는데 있다.
다른 측면에 따른 본 발명의 목적은 대상 충돌체의 충돌 크기, 범위, 위치 등의 판단을 동시에 병렬적으로 처리하여 간편하고 빠르게 충돌 결과를 알 수 있도록 하는데 있다.
본 발명의 일 실시 예에 따른 충돌체 구현 장치는, 영상 프레임 내에서 충돌체로 제작할 물체에 충돌 범위를 나타내는 충돌 박스를 설정하고, 상기 충돌 박스를 소정 개수의 충돌 복셀로 분할하는 생성부; 상기 충돌 복셀 각각에 대상 충돌체가 충돌하는 경우를 판별하고 충돌 결과를 전송하는 충돌 조건을 지정하는 편집부; 상기 영상 프레임 마다 상기 충돌 복셀에 상기 대상 충돌체가 충돌하는 경우, 하나 이상의 상기 충돌 복셀로부터 상기 충돌 조건에 따라 생성된 충돌 신호를 수집하는 제어부; 및 상기 제어부로부터 상기 충돌 신호의 수집 결과를 취합하고 시각적 처리를 수행하여 디스플레이부로 출력하는 통계부;를 포함할 수 있다.
상기 생성부는, 상기 충돌 박스의 위치, 방향 및 3차원 크기 중 하나 이상을 설정할 수 있다.
상기 통계부는, 상기 영상 프레임 내에서 충돌이 감지된 위치, 상기 충돌이 감지된 범위, 전체 충돌 복셀 면적 대비 충돌 비율 및 상기 대상 충돌체의 종류 중 하나 이상을 처리하여 상기 디스플레이부로 출력할 수 있다.
본 발명의 일 실시 예에 따른 충돌체 구현 방법은, 생성부에 의해, 영상 프레임 내에서 충돌체로 제작할 물체에 충돌 범위를 나타내는 충돌 박스를 설정하는 단계; 상기 생성부에 의해, 상기 충돌 박스를 소정 개수의 충돌 복셀로 분할하는 단계; 편집부에 의해, 상기 충돌 복셀 각각에 대상 충돌체가 충돌하는 경우를 판별하고 충돌 결과를 전송하는 충돌 조건을 지정하는 단계; 제어부에 의해, 상기 영상 프레임 마다 상기 충돌 복셀에 상기 대상 충돌체가 충돌하는 경우, 하나 이상의 상기 충돌 복셀로부터 상기 충돌 조건에 따라 생성된 충돌 신호를 수집하는 단계; 및 통계부에 의해, 상기 충돌 신호의 수집 결과를 취합하고 시각적 처리를 수행하여 디스플레이부로 출력하는 단계;를 포함할 수 있다.
상기 설정하는 단계는, 상기 충돌 박스의 위치, 방향 및 3차원 크기 중 하나 이상을 설정하는 단계;를 더 포함할 수 있다.
상기 출력하는 단계는, 상기 영상 프레임 내에서 충돌이 감지된 위치, 상기 충돌이 감지된 범위, 전체 충돌 복셀 면적 대비 충돌 비율 및 상기 대상 충돌체의 종류 중 하나 이상을 처리하여 상기 디스플레이부로 출력하는 단계;를 포함할 수 있다.
이 외에도, 본 발명을 구현하기 위한 다른 방법, 다른 시스템 및 상기 방법을 실행하기 위한 컴퓨터 프로그램이 더 제공될 수 있다.
전술한 것 외의 다른 측면, 특징, 이점이 이하의 도면, 특허청구범위 및 발명의 상세한 설명으로부터 명확해질 것이다.
실시 예들에 따르면, 어떠한 모양의 물체에 대해서도 쉽게 충돌체를 제작하여 충돌 위치를 세부적으로 알 수 있다.
대상 충돌체의 충돌 크기, 범위, 위치 등의 판단을 동시에 병렬적으로 처리하여 간편하고 빠르게 충돌 결과를 알 수 있고, 가상현실/3D 콘텐츠에서 장비의 사양에 맞추어 최고의 성능을 낼 수 있다.
본 발명의 효과는 이상에서 언급된 것들에 한정되지 않으며, 언급되지 아니한 다른 효과들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시 예에 따른 충돌체 구현 장치를 개략적으로 설명하기 위하여 도시한 도면이다.
도 2는 본 발명의 일 실시 예에 따른 충돌체 구현을 개략적으로 설명하기 위하여 도시한 도면이다.
도 3은 본 발명의 일 실시 예에 따른 충돌체 구현 방법을 설명하기 위한 흐름도이다.
도 2는 본 발명의 일 실시 예에 따른 충돌체 구현을 개략적으로 설명하기 위하여 도시한 도면이다.
도 3은 본 발명의 일 실시 예에 따른 충돌체 구현 방법을 설명하기 위한 흐름도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 설명되는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 아래에서 제시되는 실시 예들로 한정되는 것이 아니라, 서로 다른 다양한 형태로 구현될 수 있고, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 아래에 제시되는 실시 예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. 제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
이하, 본 발명에 따른 실시 예들을 첨부된 도면을 참조하여 상세히 설명하기로 하며, 첨부 도면을 참조하여 설명함에 있어, 동일하거나 대응하는 구성 요소는 동일한 도면번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
도 1은 본 발명의 일 실시 예에 따른 충돌체 구현 장치를 개략적으로 설명하기 위하여 도시한 도면이다. 도 1을 참조하면, 충돌체 구현 장치(1)는 입력부(100), 사용자 인터페이스(200), 3D 엔진(300), 데이터베이스(400) 및 디스플레이부(500)를 포함할 수 있다.
본 실시 예에서 충돌체 구현 장치(1)는 사용자 단말기(미도시)에 탑재될 수 있다. 여기서 사용자 단말기는, 사용자가 조작하는 데스크 탑 컴퓨터, 스마트폰, 노트북, 태블릿 PC, 스마트 TV, 휴대폰, PDA(personal digital assistant), 랩톱, 미디어 플레이어, 마이크로 서버, GPS(global positioning system) 장치, 전자책 단말기, 디지털방송용 단말기, 네비게이션, 키오스크, MP3 플레이어, 디지털 카메라, 가전기기 및 기타 모바일 또는 비모바일 컴퓨팅 장치일 수 있으나, 이에 제한되지 않는다. 또한, 사용자 단말기는 통신 기능 및 데이터 프로세싱 기능을 구비한 시계, 안경, 헤어 밴드 및 반지 등의 웨어러블 단말기 일 수 있다.
입력부(100)는 사용자 단말기에 구비된 키보드나 버튼 등을 포함하여, 충돌체 구현과 관련한 일련의 정보를 입력할 수 있다. 예를 들어 입력부(100)는 충돌 박스의 위치 정보, 방향 정보 및 3차원 크기 정보, 충돌 복셀 분할 정보, 충돌 조건 정보 등을 입력할 수 있다. 입력과 출력 기능을 동시에 구현하는 터치스크린의 경우 입력부(100)와 디스플레이부(500)가 하나로 통합될 수 있다.
사용자 인터페이스(200)는 입력부(100) 및 디스플레이부(500)와 3D 엔진(300) 사이의 데이터 입출력, 영상 및 음성 변환 등의 기능을 수행할 수 있다.
3D 엔진(300)은 충돌체 구현과 관련한 일련의 처리를 수행할 수 있으며, 3D 엔진(300)의 구체적인 설명은 후술하기로 한다.
데이터베이스(400)는 임의의 가상현실 영상(게임 구현 가능)을 저장하고, 3D 엔진(300)이 처리한 데이터를 저장하며, 3D 엔진(300)의 제어 하에 저장된 데이터를 사용자 인터페이스(200)를 통하여 디스플레이부(500)로 출력할 수 있다.
디스플레이부(500)는 3D 엔진(300)이 처리한 대상 충돌체가 충돌체에 충돌 시에 생성한 결과 정보를 디스플레이 할 수 있다.
충돌체 구현과 관련한 일련의 처리를 수행하는 3D 엔진(300)에 대하여 설명하면, 본 실시 예에서 3D 엔진(300)은 생성부(310), 편집부(320), 통계부(330) 및 제어부(340)를 포함할 수 있다.
생성부(310)는 영상 프레임 내에서 충돌체로 제작할 물체를 설정하고, 설정한 물체에 충돌 범위를 나타내는 충돌 박스를 설정하고, 충돌 박스의 위치, 방향 및 3차원 크기 중 하나 이상을 조정할 수 있다. 여기서 충돌 박스는 대상 충돌체에 의한 충돌이 발생하는 경우 충돌로 인정하는 충돌 범위 박스일 수 있다. 충돌 박스의 위치, 방향 및 3차원 크기 중 하나 이상의 조정을 완료한 후, 생성부(310)는 충돌 박스를 소정 개수의 충돌 복셀로 분할할 수 있다. 여기서, 입력부(100)를 통한 x축, y축 z축의 지정값에 따라 충돌 복셀의 개수가 달라질 수 있다. 생성부(310)는 물체의 세밀한 부분까지 위치 체크를 할 수 있도록 원하는 해상도의 3차원 복층 충돌 복셀들을 생성할 수 있으며, 충돌 복셀들의 생성, 수정, 부분적인 삭제, 전체 삭제 등을 수행할 수 있다. 도 2a는 충돌 박스를 x축, y축 z축의 지정값에 따라 분할한 복수 개의 복층 충돌 복셀을 도시하고 있다.
편집부(320)는 충돌 복셀 각각에 대상 충돌체가 충돌하는 경우를 판별하고 충돌 결과를 전송하는 충돌 조건을 지정할 수 있다. 여기서 충돌 조건을 지정한다 함은, 충돌 복셀 각각이 수행할 기능을 프로그램화 하여 충돌 복셀 각각에 부여하는 것을 포함할 수 있다. 충돌 조건이 지정된 충동 복셀 각각은 일련의 처리기능을 갖는 객체(object)가 되며, 대상 충돌체에 의해 충돌 복셀이 충돌되면, 충돌 조건을 만족하는 경우 충돌 신호를 생성하여 제어부(340)로 전송할 수 있게 된다. 또한, 충돌 조건 지정은, 충돌 복셀에 충돌할 대상 충돌체를 지정하는 것과, 대상 충돌체가 충돌 복셀에 충돌하였을 경우, 충돌을 당한 임의의 충돌 복셀이 충돌 신호를 전송할 것인지, 충돌을 당하지 않은 임의의 충돌 복셀이 비충돌 신호를 전송할 것인지, 충돌과 상관없이 충돌 신호를 전송하지 않을 것인지 여부를 지정하는 것을 포함할 수 있다. 도 2b는 충돌 조건이 지정된 충돌 복셀을 도시하고 있다. 이러한 충돌 조건은 충돌 복셀에 저장, 로드(load), 삭제 등의 편집이 가능하며, 편집부(320)는 대상 충돌체에 의해 충돌 복셀이 충돌되면, 충돌된 충돌 복셀만이 기억되도록 하는 Makefix 기능, 기존의 충돌 복셀의 충돌 정보를 유지하면서 이번에 충돌되면 충돌 정보를 오버라이트 하는 Overwrite 기능, 충돌된 충돌 복셀의 위치를 기존 충돌 복셀의 기억 위치에서 삭제하는 Substract 기능, 충돌된 충돌 복셀에 저장된 충돌 정보를 모두 삭제하는 Clear 기능을 수행하도록 지정할 수 있다.
이후, 대상 충돌체가 충돌 복셀에 충돌하면, 충돌 복셀은 충돌을 감지하고 충돌 감지 여부를 포함하는 충돌 신호를 제어부(340)로 전송하고, 제어부(340)는 매 실행 프레임 또는 영상 프레임 마다 충돌 복셀로부터의 충돌 신호를 수집하여 데이터베이스(400)에 저장할 수 있다. 여기서 충돌 신호는 지정된 충돌 조건에 따라 실질적으로 충돌된 충돌 복셀로부터 전송되거나, 충돌되지 않은 충돌 복셀로부터 전송될 수 있다.
통계부(330)는 제어부(340)가 수집한 충돌 신호를 취합하여, 제어부(340)의 제어 하에 충돌 신호에 시각적 처리를 수행하여 디스플레이부(500)로 출력할 수 있다. 통계부(330)는 영상 프레임 내에서 충돌 상황, 충돌이 감지된 복셀 인덱스 리스트, 충돌 가능한 복셀 수 및 충돌한 복셀 수, 충돌 가능한 복셀 면적 대비 충돌한 비율 및 대상 충돌체의 종류 중 하나 이상을 처리하여 디스플레이부(500)로 출력할 수 있다. 도 2c는 통계부(330)가 디스플레이부(500)에 출력하는 시각적 처리 결과로, 대상 충돌체가 충돌체의 충돌 박스에 충돌하여, 충돌을 감지한 충돌 복체가 전송한 충돌 신호를 수집한 통계부(330)가 처리한 시각적 처리 결과를 도시하고 있다.
이와 같이 충돌체 구현 장치(1)는 어떠한 모양의 물체에 대해서도 쉽게 충돌체를 제작하여 충돌 위치를 세부적으로 알 수 있고, 대상 충돌체의 충돌 크기, 범위, 위치 등의 판단을 동시에, 각각의 복셀들은 한 프레임 안에서 모두 동시에 병렬적으로 처리하여 간편하고 빠르게 충돌 결과를 알 수 있다.
도 3은 본 발명의 일 실시 예에 따른 충돌체 구현 방법을 설명하기 위한 흐름도이다. 이하의 설명에서 도 1 및 도 2 대한 설명과 중복되는 부분은 그 설명을 생략하기로 한다.
S310단계에서, 충돌체 구현 장치(1)는 영상 프레임 내에서 충돌체로 제작할 물체를 설정하고, 설정한 물체에 충돌 범위를 나타내는 충돌 박스를 설정한다. 여기서 충돌체 구현 장치(1)는 영상 프레임 내에서 충돌 박스의 위치, 방향 및 3차원 크기 중 하나 이상을 조정할 수 있다.
S320단계에서, 충돌체 구현 장치(1)는 충돌 박스의 위치, 방향 및 3차원 크기 중 하나 이상의 조정을 완료한 후, 충돌 박스를 소정 개수의 충돌 복셀로 분할한다. 여기서, 3차원 크기에 포함되는 x축, y축 z축의 지정값에 따라 충돌 복셀의 개수가 달라질 수 있다.
S330단계에서, 충돌체 구현 장치(1)는 충돌 복셀 각각에 대상 충돌체가 충돌하는 경우를 판별하고 충돌 결과를 전송하는 충돌 조건을 지정한다. 여기서, 충돌 조건 지정은, 충돌 복셀에 충돌할 대상 충돌체를 지정하는 것과, 대상 충돌체가 충돌 복셀에 충돌하였을 경우, 충돌을 당한 임의의 충돌 복셀이 충돌 신호를 전송할 것인지, 충돌을 당하지 않은 임의의 충돌 복셀이 비충돌 신호를 전송할 것인지, 충돌과 상관없이 충돌 신호를 전송하지 않을 것인지 여부를 지정하는 것을 포함할 수 있다.
S340단계에서, 매 영상 프레임 마다 대상 충돌체가 충돌 복셀에 충돌하면, 충돌체 구현 장치(1)는 충돌 복셀로부터 충돌 감지 여부를 포함하는 충돌 신호를 수집한다. 여기서 충돌 신호는 지정된 충돌 조건에 따라 실질적으로 충돌된 충돌 복셀로부터 전송되거나, 충돌되지 않은 충돌 복셀로부터 전송될 수 있다.
S350단계에서, 충돌체 구현 장치(1)는 수집한 충돌 신호를 취합하여, 충돌 신호에 시각적 처리를 수행하여 디스플레이 한다. 충돌체 구현 장치(1)는 영상 프레임 내에서 충돌 상황, 충돌이 감지된 위치, 충돌이 감지된 범위, 전체 충돌 복셀 면적 대비 충돌 비율 및 대상 충돌체의 종류 중 하나 이상을 처리하여 디스플레이 할 수 있다.
이상 설명된 본 발명에 따른 실시 예는 컴퓨터 상에서 다양한 구성요소를 통하여 실행될 수 있는 컴퓨터 프로그램의 형태로 구현될 수 있으며, 이와 같은 컴퓨터 프로그램은 컴퓨터로 판독 가능한 매체에 기록될 수 있다. 이때, 매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등과 같은, 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치를 포함할 수 있다.
한편, 상기 컴퓨터 프로그램은 본 발명을 위하여 특별히 설계되고 구성된 것이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수 있다. 컴퓨터 프로그램의 예에는, 컴파일러에 의하여 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용하여 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함될 수 있다.
본 발명의 명세서(특히 특허청구범위에서)에서 "상기"의 용어 및 이와 유사한 지시 용어의 사용은 단수 및 복수 모두에 해당하는 것일 수 있다. 또한, 본 발명에서 범위(range)를 기재한 경우 상기 범위에 속하는 개별적인 값을 적용한 발명을 포함하는 것으로서(이에 반하는 기재가 없다면), 발명의 상세한 설명에 상기 범위를 구성하는 각 개별적인 값을 기재한 것과 같다.
본 발명에 따른 방법을 구성하는 단계들에 대하여 명백하게 순서를 기재하거나 반하는 기재가 없다면, 상기 단계들은 적당한 순서로 행해질 수 있다. 반드시 상기 단계들의 기재 순서에 따라 본 발명이 한정되는 것은 아니다. 본 발명에서 모든 예들 또는 예시적인 용어(예들 들어, 등등)의 사용은 단순히 본 발명을 상세히 설명하기 위한 것으로서 특허청구범위에 의해 한정되지 않는 이상 상기 예들 또는 예시적인 용어로 인해 본 발명의 범위가 한정되는 것은 아니다. 또한, 당업자는 다양한 수정, 조합 및 변경이 부가된 특허청구범위 또는 그 균등물의 범주 내에서 설계 조건 및 팩터에 따라 구성될 수 있음을 알 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시 예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 또는 이로부터 등가적으로 변경된 모든 범위는 본 발명의 사상의 범주에 속한다고 할 것이다.
1: 충돌체 구현 장치
100: 입력부
200: 사용자 인터페이스
300: 3D 엔진
310: 생성부
320: 편집부
330: 통계부
340: 제어부
400: 데이터베이스
500: 디스플레이부
100: 입력부
200: 사용자 인터페이스
300: 3D 엔진
310: 생성부
320: 편집부
330: 통계부
340: 제어부
400: 데이터베이스
500: 디스플레이부
Claims (7)
- 영상 프레임 내에서 충돌체로 제작할 물체에 충돌 범위를 나타내는 충돌 박스를 설정하고, 상기 충돌 박스를 소정 개수의 충돌 복셀로 분할하는 생성부;
상기 충돌 복셀 각각에 대상 충돌체가 충돌하는 경우를 판별하고 충돌 결과를 전송하는 충돌 조건을 지정하는 편집부;
상기 영상 프레임 마다 상기 충돌 복셀에 상기 대상 충돌체가 충돌하는 경우, 하나 이상의 상기 충돌 복셀로부터 상기 충돌 조건에 따라 생성된 충돌 신호를 수집하는 제어부; 및
상기 제어부로부터 상기 충돌 신호의 수집 결과를 취합하고 시각적 처리를 수행하여 디스플레이부로 출력하는 통계부;를 포함하고,
상기 통계부는,
상기 영상 프레임 내에서 충돌이 감지된 위치, 상기 충돌이 감지된 범위, 전체 충돌 복셀 면적 대비 충돌 비율 및 상기 대상 충돌체의 종류 중 하나 이상을 처리하여 상기 디스플레이부로 출력하고,
상기 편집부는,
상기 충돌 복셀에 충돌할 대상 충돌체를 지정하고, 상기 대상 충돌체가 상기 충돌 복셀에 충돌할 경우 충돌을 당한 임의의 충돌 복셀이 충돌 신호를 전송할지 여부, 상기 대상 충돌체가 상기 충돌 복셀에 충돌할 경우 충돌을 당하지 않은 임의의 충돌 복셀이 비충돌 신호를 전송할지 여부, 및 충돌과 상관없이 상기 충돌 복셀이 충돌 신호를 전송하지 않을지 여부를 지정하는, 충돌체 구현 장치. - 제 1항에 있어서, 상기 생성부는,
상기 충돌 박스의 위치, 방향 및 3차원 크기 중 하나 이상을 설정하는, 충돌체 구현 장치. - 삭제
- 생성부에 의해, 영상 프레임 내에서 충돌체로 제작할 물체에 충돌 범위를 나타내는 충돌 박스를 설정하는 단계;
상기 생성부에 의해, 상기 충돌 박스를 소정 개수의 충돌 복셀로 분할하는 단계;
편집부에 의해, 상기 충돌 복셀 각각에 대상 충돌체가 충돌하는 경우를 판별하고 충돌 결과를 전송하는 충돌 조건을 지정하는 단계;
제어부에 의해, 상기 영상 프레임 마다 상기 충돌 복셀에 상기 대상 충돌체가 충돌하는 경우, 하나 이상의 상기 충돌 복셀로부터 상기 충돌 조건에 따라 생성된 충돌 신호를 수집하는 단계; 및
통계부에 의해, 상기 충돌 신호의 수집 결과를 취합하고 시각적 처리를 수행하여 디스플레이부로 출력하는 단계;를 포함하고,
상기 출력하는 단계는,
상기 영상 프레임 내에서 충돌이 감지된 위치, 상기 충돌이 감지된 범위, 전체 충돌 복셀 면적 대비 충돌 비율 및 상기 대상 충돌체의 종류 중 하나 이상을 처리하여 상기 디스플레이부로 출력하는 단계;를 포함하고,
상기 지정하는 단계는,
상기 충돌 복셀에 충돌할 대상 충돌체를 지정하는 단계; 및
상기 대상 충돌체가 상기 충돌 복셀에 충돌할 경우 충돌을 당한 임의의 충돌 복셀이 충돌 신호를 전송할지 여부, 상기 대상 충돌체가 상기 충돌 복셀에 충돌할 경우 충돌을 당하지 않은 임의의 충돌 복셀이 비충돌 신호를 전송할지 여부, 및 충돌과 상관없이 상기 충돌 복셀이 충돌 신호를 전송하지 않을지 여부를 지정하는 단계;를 포함하는, 충돌체 구현 방법. - 제 4항에 있어서, 상기 설정하는 단계는,
상기 충돌 박스의 위치, 방향 및 3차원 크기 중 하나 이상을 설정하는 단계;를 더 포함하는, 충돌체 구현 방법. - 삭제
- 컴퓨터를 이용하여 제 4항 또는 제 5항의 방법을 실행시키기 위하여 상기 컴퓨터로 판독 가능한 기록매체에 저장된 컴퓨터 프로그램.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180165493A KR102497906B1 (ko) | 2018-12-19 | 2018-12-19 | 충돌체 구현 장치 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180165493A KR102497906B1 (ko) | 2018-12-19 | 2018-12-19 | 충돌체 구현 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200076408A KR20200076408A (ko) | 2020-06-29 |
KR102497906B1 true KR102497906B1 (ko) | 2023-02-10 |
Family
ID=71401208
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180165493A KR102497906B1 (ko) | 2018-12-19 | 2018-12-19 | 충돌체 구현 장치 및 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102497906B1 (ko) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007242022A (ja) * | 2006-03-08 | 2007-09-20 | Samsung Electronics Co Ltd | 衝突感知装置及び方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105488851B (zh) | 2015-11-30 | 2017-07-07 | 腾讯科技(深圳)有限公司 | 实时虚拟场景中碰撞体之间碰撞探测的方法和装置 |
KR102195317B1 (ko) * | 2017-05-19 | 2020-12-28 | 한국과학기술원 | 비디오 게임을 활용한 차량 사고 예측 방법 |
-
2018
- 2018-12-19 KR KR1020180165493A patent/KR102497906B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007242022A (ja) * | 2006-03-08 | 2007-09-20 | Samsung Electronics Co Ltd | 衝突感知装置及び方法 |
Also Published As
Publication number | Publication date |
---|---|
KR20200076408A (ko) | 2020-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101842106B1 (ko) | 알려지지 않은 오브젝트들에 대한 증강 현실 콘텐츠의 생성 | |
JP7556839B2 (ja) | 複合現実において動的仮想コンテンツを生成するデバイスおよび方法 | |
CN112150551A (zh) | 物体位姿的获取方法、装置和电子设备 | |
US10950056B2 (en) | Apparatus and method for generating point cloud data | |
CN108919955B (zh) | 一种基于多体感设备的虚拟沙画交互结合方法 | |
US11436384B2 (en) | Computer-aided techniques for iteratively generating designs | |
US11062523B2 (en) | Creation authoring point tool utility to recreate equipment | |
EP3343513A1 (en) | Device and method for generating flexible dynamic virtual contents in mixed reality | |
CN114510173A (zh) | 基于增强现实的施工作业方法及装置 | |
CN111524086A (zh) | 运动物体检测装置、运动物体检测方法、存储介质 | |
US20160357880A1 (en) | Computer-readable storage medium, design apparatus, and design method | |
KR102497906B1 (ko) | 충돌체 구현 장치 및 방법 | |
EP3956752B1 (en) | Semantic-augmented artificial-reality experience | |
Hürst et al. | Multimodal feedback for finger-based interaction in mobile augmented reality | |
CN114418829A (zh) | 静态场景遮挡处理方法、装置、电子设备及可读介质 | |
JP2019032713A5 (ko) | ||
KR102054347B1 (ko) | 스테가노그래피 분석 모델 생성 방법 및 장치 | |
JP5290138B2 (ja) | メッシュ変更装置、メッシュ変更方法、およびプログラム | |
WO2024176573A1 (ja) | データ拡張装置、データ拡張方法、及びプログラム | |
CN115531877B (zh) | 一种虚拟引擎中距离测量的方法及其系统 | |
KR102156336B1 (ko) | 3차원 형상 재현 방법 | |
JP2013088988A (ja) | メッシュ作成装置、メッシュ作成方法、メッシュ作成プログラム | |
JP7322355B2 (ja) | 曲線生成方法、装置、及びプログラム | |
EP3842911B1 (en) | A 3d interface with an improved object selection | |
JP7111309B2 (ja) | 情報処理装置、学習装置、認識装置、静止画の生産方法、およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |