KR20200126945A - 햅틱 데이터 생성 장치 및 방법, 햅틱 효과 제공 장치 및 방법 - Google Patents

햅틱 데이터 생성 장치 및 방법, 햅틱 효과 제공 장치 및 방법 Download PDF

Info

Publication number
KR20200126945A
KR20200126945A KR1020200136186A KR20200136186A KR20200126945A KR 20200126945 A KR20200126945 A KR 20200126945A KR 1020200136186 A KR1020200136186 A KR 1020200136186A KR 20200136186 A KR20200136186 A KR 20200136186A KR 20200126945 A KR20200126945 A KR 20200126945A
Authority
KR
South Korea
Prior art keywords
haptic
data
generating
effect
event
Prior art date
Application number
KR1020200136186A
Other languages
English (en)
Other versions
KR102347098B1 (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
Priority claimed from KR1020180142103A external-priority patent/KR20200057549A/ko
Application filed by 주식회사 씨케이머티리얼즈랩 filed Critical 주식회사 씨케이머티리얼즈랩
Priority to KR1020200136186A priority Critical patent/KR102347098B1/ko
Publication of KR20200126945A publication Critical patent/KR20200126945A/ko
Priority to KR1020210192321A priority patent/KR102608388B1/ko
Application granted granted Critical
Publication of KR102347098B1 publication Critical patent/KR102347098B1/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/016Input arrangements with force or tactile feedback as computer generated output to the user
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/25Output arrangements for video game devices
    • A63F13/28Output arrangements for video game devices responding to control signals received from the game device for affecting ambient conditions, e.g. for vibrating players' seats, activating scent dispensers or affecting temperature or light
    • A63F13/285Generating tactile feedback signals via the game input device, e.g. force feedback
    • 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/16Sound input; Sound output
    • G06F3/165Management of the audio stream, e.g. setting of volume, audio stream path
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1037Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being specially adapted for converting control signals received from the game device into a haptic signal, e.g. using force feedback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/01Indexing scheme relating to G06F3/01
    • G06F2203/013Force feedback applied to a game
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0042Universal serial bus [USB]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

햅틱 데이터 생성 장치 및 방법, 햅틱 효과 제공 장치 및 방법이 개시된다. 햅틱 데이터 생성 장치는 햅틱 데이터 설정 정보에 기초하여 게임 플레이 중에 발생하는 이벤트에 대한 햅틱 데이터를 생성하는 콘트롤러 및 생성된 햅틱 데이터를 햅틱 효과 제공 장치에 전송하는 통신부를 포함한다. 햅틱 효과 제공 장치는 햅틱 데이터 생성 장치로부터 햅틱 데이터를 수신하는 통신부, 콘트롤러의 제어 하에 햅틱 효과를 발생시키는 햅틱 효과 재생부 및 햅틱 데이터에 기초하여 햅틱 효과의 발생을 제어하는 콘트롤러를 포함한다.

Description

햅틱 데이터 생성 장치 및 방법, 햅틱 효과 제공 장치 및 방법{APPARATUS AND METHOD FOR GENERATING HAPTIC DATA, APPARATUS AND METHOD FOR PROVIDING HAPTIC EFFECT}
아래의 실시예들은 햅틱 데이터 생성 기술 및 햅틱 효과 제공 기술에 관한 것이다.
게임 개발자들은 실감나는 게임 플레이를 제공하기 위해 시각적 효과와 청각적 효과를 이용한다. 예를 들어, 사용자가 스마트폰에서 게임을 플레이할 때 화면을 통해 게임 이벤트에 대한 시각적 효과가 제공되거나 스피커 또는 이어폰을 통해 게임 이벤트에 대한 청각적 효과가 제공된다. 또한, 최근에는 게임 이벤트에 대한 실감도를 높이기 위해 진동 효과가 사용되기도 한다. 선행기술로서, 한국 특허공개번호 제1998-0032560호의 '게임기용 조작장치 및 게임 장치'에는, 사용자에 대해 진동, 소리, 빛 또는 이들의 조합 형태로 피드백을 수행하도록 작동되는 응답 부재를 포함하는 게임기용 조작 장치가 개시되어 있다.
본 발명은 사용자가 게임을 플레이할 때, 웨어러블 장치, 게임 콘트롤러 또는 모바일 디바이스 액세서리 장치 등을 통해 게임 프로그램에 연동한 햅틱 효과 및/또는 조명 효과를 제공하는 것을 목적으로 한다..
또한, 본 발명은, 동일한 게임을 플레이하고 있는 여러 사용자들에게 동시에 햅틱 효과 및/또는 조명 효과를 제공하는 것을 목적으로 한다..
일 실시예에 따른 게임 프로그램과 연동한 햅틱 데이터 생성 장치는, 햅틱 데이터 설정 정보에 기초하여 게임 플레이 중에 발생하는 이벤트에 대한 햅틱 데이터를 생성하는 콘트롤러; 및 상기 생성된 햅틱 데이터를 햅틱 효과 제공 장치에 전송하는 통신부를 포함할 수 있다.
상기 이벤트는, 상기 게임 프로그램의 게임 콘텐츠 상에서 발생하는 게임 콘텐츠 이벤트 및 상기 게임 플레이를 위해 입력되는 사용자 입력에 대한 사용자 입력 이벤트 중 적어도 하나를 포함할 수 있다.
상기 햅틱 데이터 설정 정보는, 햅틱 효과의 적용 범위, 햅틱 패턴 및 햅틱 세기 중 적어도 하나에 관한 설정 정보를 포함할 수 있다.
상기 통신부는, 사용자에 의해 선택된 하나 이상의 게임 콘텐츠 이벤트가 발생한 경우, 상기 발생한 게임 콘텐츠 이벤트에 대응하는 햅틱 데이터를 전송할 수 있다.
상기 콘트롤러는, 상기 이벤트에 대응하는 오디오 데이터에 고속 푸리에 변환 처리를 수행하고, 상기 고속 푸리에 변환 처리를 수행한 결과에 기초하여 상기 오디오 데이터의 타겟 주파수 대역을 선택하고, 밴드패스 필터를 이용하여 상기 선택된 타겟 주파수 대역에 필터링을 수행하고, 상기 필터링이 수행된 타겟 주파수 대역의 오디오 데이터에 역 고속 푸리에 변환 처리를 수행하고, 상기 역 고속 푸리에 변환 처리를 수행한 결과에서 임계치에 기초하여 상기 이벤트에 대응하는 햅틱 패턴을 결정할 수 있다.
상기 콘트롤러는, 상기 이벤트에 대응하는 오디오 데이터에 고속 푸리에 변환 처리를 수행하고, 상기 고속 푸리에 변환 처리를 수행한 결과 값이 가장 큰 주파수를 추출하고, 상기 추출된 주파수에 대응하는 햅틱 세기에 기초하여 상기 햅틱 데이터를 생성할 수 있다.
상기 햅틱 데이터는, 메시지의 종류를 나타내는 제1 엘리먼트; 메시지 값의 크기를 나타내는 제2 엘리먼트; 및 메시지 정보를 포함하는 제3 엘리먼트를 포함할 수 있다.
상기 콘트롤러는, 게임 플레이를 함께 수행하는 복수의 사용자들에게 제공될 햅틱 데이터를 생성할 수 있다.
일 실시예에 따른 햅틱 데이터 생성 장치는, 상기 햅틱 데이터 생성 장치가 상기 햅틱 효과 제공 장치와 케이블을 통해 유선으로 연결되는 경우, 상기 케이블을 통해 상기 햅틱 효과 제공 장치에 전력 및 상기 햅틱 데이터를 전송하는 USB 호스트를 더 포함할 수 있다.
일 실시예에 따른 햅틱 효과 제공 장치는, 햅틱 데이터 생성 장치로부터 햅틱 데이터를 수신하는 통신부; 콘트롤러의 제어 하에 햅틱 효과를 발생시키는 햅틱 효과 재생부; 및 상기 수신한 햅틱 데이터에 기초하여 상기 햅틱 효과의 발생을 제어하는 상기 콘트롤러를 포함하고, 게임 플레이 중에 발생하는 이벤트와 연관되고, 햅틱 데이터 설정 정보에 기초하여 생성된 것일 수 있다.
상기 콘트롤러는, 상기 햅틱 데이터에 포함된 햅틱 패턴 인덱스 및 햅틱 세기에 관한 정보를 이용하여 햅틱 패턴 데이터를 생성하고, 상기 햅틱 패턴 데이터에 기초하여 상기 햅틱 효과의 발생을 제어할 수 있다.
상기 콘트롤러는, 상기 햅틱 패턴 인덱스에 대응하는 햅틱 패턴 지속 시간에 기초하여 상기 햅틱 패턴 데이터를 생성할 수 있다.
일 실시예에 따른 햅틱 효과 제공 장치는, 상기 콘트롤러의 제어 하에 조명 효과를 발생시키는 조명 효과 재생부를 더 포함하고, 상기 콘트롤러는, 상기 햅틱 데이터에 기초하여 상기 조명 효과의 발생을 제어할 수 있다.
상기 콘트롤러는, 상기 햅틱 데이터에서 햅틱 세기에 관한 정보를 추출하고, 상기 햅틱 세기에 관한 정보에 기초하여 조명 컬러 및 조명 세기 중 적어도 하나를 결정할 수 있다.
일 실시예에 따른 게임 프로그램과 연동한 햅틱 데이터 생성 방법은, 햅틱 데이터 설정 정보에 기초하여 게임 플레이 중에 발생하는 이벤트에 대한 햅틱 데이터를 생성하는 단계; 및 상기 생성된 햅틱 데이터를 햅틱 효과 제공 장치에 전송하는 단계를 포함할 수 있다.
일 실시예에 따른 햅틱 효과 제공 방법은, 햅틱 데이터 생성 장치로부터 게임 플레이 중에 발생하는 이벤트와 연관된 햅틱 데이터를 수신하는 단계; 상기 햅틱 데이터에 기초하여 햅틱 패턴 데이터를 생성하는 단계; 및 상기 햅틱 패턴 데이터에 기초하여 햅틱 효과를 발생시키는 단계를 포함할 수 있고, 상기 햅틱 데이터는, 햅틱 데이터 설정 정보에 기초하여 생성된 것일 수 있다.
일 실시예에 따르면, 사용자가 게임을 플레이할 때, 웨어러블 장치, 게임 콘트롤러 또는 모바일 디바이스 액세서리 장치 등을 통해 게임 프로그램에 연동한 햅틱 효과 및/또는 조명 효과를 제공하는 것이 가능해 진다.
일 실시예에 따르면, 동일한 게임을 플레이하고 있는 여러 사용자들에게 동시에 햅틱 효과 및/또는 조명 효과를 제공하는 것이 가능해 진다.
도 1은 일 실시예에 따른 햅틱 효과 제공 시스템을 도시하는 도면이다.
도 2는 다른 실시예에 따른 햅틱 효과 제공 시스템을 도시하는 도면이다.
도 3은 일 실시예에 따른 햅틱 데이터를 설정하는 일례를 설명하기 위한 흐름도이다.
도 4는 일 실시예에 따른 게임 프로그램의 오디오 데이터에 기초하여 햅틱 패턴을 결정하는 일례를 설명하기 위한 흐름도이다.
도 5는 일 실시예에 따른 햅틱 데이터의 엘리먼트들을 도시하는 도면이다.
도 6은 일 실시예에 따른 햅틱 데이터 생성 방법의 동작을 설명하기 위한 흐름도이다.
도 7은 일 실시예에 따른 햅틱 효과 제공 방법의 동작을 설명하기 위한 흐름도이다.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 실시예들에는 다양한 변경이 가해질 수 있어서 특허출원의 권리 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 실시예들에 대한 모든 변경, 균등물 내지 대체물이 권리 범위에 포함되는 것으로 이해되어야 한다.
실시예에서 사용한 용어는 단지 설명을 목적으로 사용된 것으로, 한정하려는 의도로 해석되어서는 안된다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
도 1은 일 실시예에 따른 햅틱 효과 제공 시스템을 도시하는 도면이다.
햅틱 효과 제공 시스템(100)은 게임 프로그램과 연동하여 사용자가 게임 프로그램을 플레이할 때, 햅틱 효과 및/또는 조명 효과를 사용자에게 제공한다. 이를 통해, 사용자는 더욱 높은 몰입감과 재미를 느낄 수 있다. 예를 들어, 햅틱 효과 제공 시스템(100)은 게임 캐릭터가 게임 플레이 상에서 총을 쏘거나 게임 캐릭터의 타격이 이루어지는 타이밍에 맞추어 사용자에게 햅틱 효과를 제공할 수 있고, 이를 통해 사용자는 실제로 총을 쏘거나 타격이 이루어지는 것 같은 느낌을 받을 수 있다. 다른 예로, 햅틱 효과 제공 시스템(100)은 게임에서 출력되는 오디오 데이터를 분석하여 오디오 데이터의 사운드 패턴에 대응하는 햅틱 패턴 데이터를 생성하고, 생성된 햅틱 패턴 데이터에 기초하여 사용자에게 햅틱 효과를 제공할 수 있다.
도 1을 참고하면, 일 실시예에 따른 햅틱 효과 제공 시스템(100)은 햅틱 데이터 생성 장치(110) 및 햅틱 효과 제공 장치(140)를 포함한다. 햅틱 데이터 생성 장치(110)는 게임 프로그램과 연동하여 햅틱 데이터를 생성하는 장치로서, 예를 들어 퍼스널 컴퓨터, 스마트폰과 같은 모바일 디바이스 등에 해당될 수 있다. 햅틱 데이터 생성 장치(110)는 게임 콘텐츠를 분석하여 게임 콘텐츠에 대응하는 햅틱 데이터를 생성할 수 있고, 햅틱 데이터는 사용자에게 제공될 햅틱 효과의 패턴을 정의하는 햅틱 패턴 데이터를 포함할 수 있다. 햅틱 데이터 생성 장치(110)는 게임 프로그램이 구동되는 장치에 포함되어 동작할 수 있다.
햅틱 효과 제공 장치(140)는 햅틱 데이터 생성 장치(110)로부터 전달 받은 햅틱 데이터에 기초하여 사용자에게 햅틱 효과(또는 햅틱 자극) 및/또는 조명 효과를 제공하는 장치이다. 햅틱 효과 제공 장치(140)는 '햅틱 장치'로도 지칭될 수 있다. 햅틱 효과 제공 장치(140)는 햅틱 데이터를 재생하여 진동이나 두드림 등의 햅틱 피드백을 표현할 수 있고, 사용자에게 특정한 패턴의 햅틱 자극을 제공할 수 있다. 햅틱 효과 제공 장치(140)는, 예를 들어 웨어러블 장치, 모바일 디바이스 액세서리 장치, 게임 콘솔 콘트롤러, 게임 패드, 키보드, 마우스 및 조이스틱 중 어느 하나의 형태를 가질 수 있으나, 그 형태가 이들에 한정되는 것은 아니다. 햅틱 효과 제공 장치(140)는 게임 프로그램이 구동되는 장치에 연동되는 장치를 포괄한다.
일 실시예에서, 게임 플레이 상에 이벤트가 발생하는 경우, 햅틱 데이터 생성 장치(110)는 게임 콘텐츠에 대응하는 햅틱 데이터를 생성하고, 생성된 햅틱 데이터를 햅틱 효과 제공 장치(140)에 전송할 수 있다. 햅틱 효과 제공 장치(140)는 햅틱 데이터 생성 장치(110)로부터 수신한 햅틱 데이터를 재생하여 사용자에게 햅틱 효과를 제공하고, 추가적으로는 게임 콘텐츠와 관련된 조명 효과와 소리 효과를 사용자에게 제공할 수 있다. 햅틱 효과 제공 장치(140)는 이벤트에 대한 햅틱 효과, 조명 효과 및 소리 효과를 종합적으로 사용자에게 제공할 수 있다. 사용자는 퍼스널 컴퓨터나 스마트폰 등을 통해 게임을 플레이하면서 웨어러블 장치, 키보드 또는 마우스 등을 통해 햅틱 효과 및/또는 조명 효과를 제공받을 수 있다. 이 때, 사용자는 단순 패턴의 햅틱 효과가 아닌 게임 콘텐츠에 연동한 다양한 패턴의 햅틱 효과를 제공받게 된다. 실시예에 따라, 햅틱 효과 제공 시스템(100)은 동일한 게임을 플레이하고 있는 여러 사용자들에게 동시에 햅틱 효과 및/또는 조명 효과를 제공할 수도 있다.
일례에서, 사용자가 혼자 게임을 플레이하거나 또는 여러 사용자들이 함께 게임을 플레이하는 경우에, 게임을 플레이하는 사용자가 시계나 밴드 형태의 웨어러블 장치를 착용하고 있다고 가정한다. 게임 프로그램 내에서의 총소리, 발차기 등의 이벤트가 발생하였을 때, 해당 이벤트에 대응하는 햅틱 패턴 데이터가 웨어러블 장치에서 재생되어 진동이 발생되고, 웨어러블 장치에 구비된 조명 효과 재생부(예, LED)가 구동될 수 있다. 이를 통해 사용자의 게임 플레이 몰입도와 재미가 높아질 수 있다. 또한, 사용자가 게임 콘텐츠와 관련된 오디오를 듣고 있는 동안에 햅틱 효과를 느낄 수 있어서 게임의 효과가 극대화될 수 있다. 또한, 청각 장애인과 같이 오디오를 들을 수 없는 사용자에게 햅틱 효과나 조명 효과를 통해 게임 콘텐츠 상의 게임 효과를 효과적으로 전달할 수 있게 된다.
도 1에 도시된 것과 같이, 햅틱 데이터 생성 장치(110)와 햅틱 효과 제공 장치(140)는 네트워크(170)를 통해 무선으로 연결되거나 또는 도 2에 도시된 것과 같이 케이블 등을 통해 유선으로 연결될 수 있다. 도 2에 도시된 햅틱 효과 제공 시스템(200)에 대해서는 아래에서 후술한다.
햅틱 데이터 생성 장치(110)는 콘트롤러(125) 및 통신부(130)를 포함한다. 실시예에 따라, 햅틱 데이터 생성 장치(110)는 입력 인터페이스(115) 및 출력 인터페이스(120)를 더 포함할 수도 있다. 입력 인터페이스(115)는 사용자 입력을 수신한다. 예를 들어, 입력 인터페이스(115)는 터치 스크린 디스플레이 등을 통해 사용자의 터치 데이터를 수신하고, 수신한 터치 데이터를 콘트롤러(125)에 전송할 수 있다. 출력 인터페이스(120)는 게임 콘텐츠와 관련된 오디오 데이터를 재생하고, 스피커나 이어폰 등을 통해 오디오를 출력할 수 있다.
콘트롤러(125)는 햅틱 데이터 생성 장치(110)의 동작을 제어하고, 하나 이상의 프로세서를 포함할 수 있다. 실시예에 따라, 콘트롤러(125)는 게임 프로그램에 대한 제어를 수행할 수도 있다. 이 경우, 콘트롤러(125)는 게임 프로그램의 시작 및 종료, 햅틱 효과 제공 장치(140)와의 통신 연동, 이벤트 처리 등을 제어한다.
콘트롤러(125)는 게임 플레이 중에 발생하는 이벤트에 대한 햅틱 데이터를 생성한다. 여기서, 이벤트는 게임 프로그램의 게임 콘텐츠 상에서 발생하는 게임 콘텐츠 이벤트 및 게임 플레이를 위해 입력되는 사용자 입력에 대한 사용자 입력 이벤트 중 하나 이상을 포함한다. 게임 콘텐츠 이벤트는, 예를 들어 게임 콘텐츠 상에서 게임 캐릭터가 데미지를 입었거나 특정한 게임 객체가 나타났을 경우 등을 포함한다. 사용자 입력 이벤트는, 예를 들어 사용자가 게임 캐릭터의 조작을 위해 터치 스크린 디스플레이 상에 터치 입력을 가하는 경우 등을 포함한다.
게임 콘텐츠 이벤트는 사용자 입력 이벤트에 의해 발생되는 이벤트일 수 있다. 예를 들어, 사용자의 터치 입력과 같은 사용자 입력 이벤트에 의해 게임 캐릭터가 조작되고, 이에 의해 게임 콘텐츠 상의 변화(예, 특정 게임 객체가 폭파)가 발생한 경우, 이러한 게임 콘텐츠 상의 변화는 게임 콘텐츠 이벤트에 해당한다. 실시예에 따라, 게임 콘텐츠 이벤트는 게임 캐릭터의 위험한 순간에 대한 알람과 같이 게임 콘텐츠 상의 특정 상황에 대한 알람 등의 이벤트도 포함할 수 있다. 이와 같은 다양한 이벤트에 적용되는 햅틱 효과는 사용자가 게임을 보다 잘 플레이할 수 있도록 돕고, 이에 따라 사용자는 게임 플레이 능력을 보다 향상시킬 수 있다.
일 실시예에서, 콘트롤러(125)는 햅틱 데이터 설정 정보에 기초하여 햅틱 데이터를 생성할 수 있다. 햅틱 데이터 설정 정보는 사용자 입력에 의해 결정될 수 있는 햅틱 효과의 적용 범위, 햅틱 패턴 및 햅틱 세기 중 적어도 하나에 관한 설정 정보를 포함할 수 있다. 사용자는 게임 프로그램 상에서 햅틱 효과의 적용 범위, 햅틱 패턴 및/또는 햅틱 세기를 직접 설정할 수도 있고, 아니면 게임 프로그램의 개발자가 지정한 설정 정보에 따라 햅틱 데이터가 설정될 수도 있다. 사용자는 햅틱 효과를 적용할 하나 이상의 게임 콘텐츠 이벤트를 선택할 수 있고, 각각의 게임 콘텐츠 이벤트나 사용자 입력 이벤트에 적용될 햅틱 세기도 설정할 수 있다. 이 때, 콘트롤러(125)는 실시예에 따라 사용자에 의해 설정된 햅틱 세기에 기초하여 햅틱 데이터를 생성할 수 있다.
일 실시예에서, 콘트롤러(125)는 각 이벤트에 대응하는 오디오 데이터에 기초하여 햅틱 데이터를 생성할 수 있다. 콘트롤러(125)는 오디오 데이터가 송출되는 시점에 설정한 주기별로 햅틱 패턴을 처리한다. 보다 구체적인 예로서, 콘트롤러(125)는 게임 프로그램의 오디오 데이터에 고속 푸리에 변환(fast Fourier transform; FFT) 처리를 수행하고, FFT 처리를 수행한 결과에 기초하여 오디오 데이터의 타겟 주파수 대역을 선택할 수 있다. 예를 들어, 콘트롤러(125)는 FFT 처리가 수행된 값이 가장 큰 주파수를 포함하는 주파수 대역을 타겟 주파수 대역으로 선택할 수 있다. 이후에, 콘트롤러(125)는 밴드패스 필터(bandpass filter)를 이용하여 타겟 주파수 대역에 필터링을 수행하고, 필터링이 수행된 타겟 주파수 대역의 오디오 데이터에 역 고속 푸리에 변환(inverse fast Fourier transform; IFFT) 처리를 수행할 수 있다. 콘트롤러(125)는 IFFT 처리를 수행한 결과에서 임계치에 기초하여 햅틱 패턴을 결정할 수 있다. 예를 들어, 콘트롤러(125)는 IFFT 처리를 통해, 필터링이 수행된 데이터를 시간 도메인으로 변환하고, 시간 도메인으로 변환된 데이터에서 임계치 이상의 데이터 값들을 추출한 후 특정한 시간 구간 단위로 위 추출된 데이터 값들을 합산할 수 있다. 콘트롤러(125)는 데이터 값의 합산 결과가 특정한 조건을 만족시킬 때에 햅틱 효과가 발생하는 것으로 결정함으로써 이벤트에 대응하는 햅틱 패턴을 결정할 수 있다. 또한, 콘트롤러(125)는 게임 프로그램의 이벤트에 대응하는 오디오 데이터에 FFT 처리를 수행한 결과 값이 가장 큰 주파수를 추출하고, 추출된 주파수에 대응하는 햅틱 세기에 기초하여 햅틱 데이터를 생성할 수 있다. 각 주파수의 크기에 대응하는 햅틱 세기가 사전에 정의될 수 있다.
통신부(130)는 햅틱 데이터를 네트워크(170)를 통해 햅틱 효과 제공 장치(140)에 전송한다. 예를 들어, 통신부(130)는 콘트롤러(125)로부터 햅틱 데이터를 수신하면, 블루투스(Bluetooth), BLE(Bluetooth Low Energy), 와이파이(Wi-Fi), LTE(Long Term Evolution) 등을 이용하여 햅틱 데이터를 전송할 수 있다. 통신부(130)는, 예를 들어 게임 콘텐츠 이벤트나 사용자 입력 이벤트가 발생한 경우, 각 이벤트에 대응하는 햅틱 데이터를 햅틱 효과 제공 장치(140)에 전송할 수 있다. 또는, 통신부(130)는 햅틱 데이터 설정 정보에서 사용자에 의해 선택된 하나 이상의 게임 콘텐츠 이벤트가 발생한 경우, 해당 발생한 게임 콘텐츠 이벤트에 대응하는 햅틱 데이터를 햅틱 효과 제공 장치(140)에 전송할 수 있다.
햅틱 효과 제공 장치(140)는 통신부(145), 콘트롤러(150) 및 햅틱 효과 재생부(155)를 포함한다. 실시예에 따라 햅틱 효과 제공 장치(140)는 조명 효과 재생부(160)를 더 포함할 수 있다.
통신부(145)는 네트워크(170)를 통해 햅틱 데이터 생성 장치(110)로부터 햅틱 데이터를 수신한다. 햅틱 데이터는 게임 플레이 중에 발생하는 이벤트와 연관되고, 햅틱 데이터 설정 정보에 기초하여 생성된 것일 수 있다. 햅틱 데이터는 햅틱 패턴에 관한 데이터를 포함할 수 있다.
콘트롤러(150)는 햅틱 효과 제공 장치(140)의 동작을 제어하고, 하나 이상의 프로세서를 포함할 수 있다. 콘트롤러(150)는 수신한 햅틱 데이터에 기초하여 햅틱 효과의 발생을 제어한다. 콘트롤러(150)는 햅틱 데이터에 포함된 햅틱 패턴 인덱스와 햅틱 세기에 관한 정보를 이용하여 햅틱 패턴 데이터를 생성하고, 햅틱 패턴 데이터에 기초하여 햅틱 효과의 발생을 제어할 수 있다. 콘트롤러(150)는 햅틱 패턴 인덱스에 대응하는 햅틱 패턴 지속 시간에 기초하여 햅틱 패턴 데이터를 생성할 수 있다.
햅틱 효과 재생부(155)는 콘트롤러(150)의 제어 하에 햅틱 패턴 데이터를 재생하고, 햅틱 효과를 발생시킨다. 햅틱 효과 재생부(155)는 햅틱 자극을 발생시키는 하나 이상의 액츄에이터(actuator)를 포함할 수 있다.
조명 효과 재생부(160)는 콘트롤러(150)의 제어 하에 조명 효과를 발생시킨다. 예를 들어, 조명 효과 재생부(160)는 LED 등의 조명 장치를 포함할 수 있다. 콘트롤러(150)는 햅틱 데이터에 기초하여 조명 효과의 발생을 제어할 수 있다. 예를 들어, 콘트롤러(150)는 햅틱 데이터에서 햅틱 세기에 관한 정보를 추출하고, 추출한 햅틱 세기에 관한 정보에 기초하여 조명 컬러 및 조명 세기 중 적어도 하나를 결정할 수 있다. 예를 들어, 콘트롤러(150)는 햅틱 세기가 강할수록 빨간 색의 조명을 보다 밝기 표시하고, 햅틱 세기가 약할수록 파란 색의 조명을 보다 밝게 표시할 수 있다.
도 2는 다른 실시예에 따른 햅틱 효과 제공 시스템을 도시하는 도면이다.
도 2를 참조하면, 다른 실시예에 따른 햅틱 효과 제공 시스템(200)은 햅틱 데이터 생성 장치(210) 및 햅틱 효과 제공 장치(240)를 포함한다. 햅틱 데이터 생성 장치(210) 및 햅틱 효과 제공 장치(240)는, 도 1에 도시된 햅틱 효과 제공 시스템(100)과 다르게 서로 간에 케이블 등을 통해 유선으로 연결될 수 있다. 햅틱 데이터 생성 장치(210)는 통신부(130)와 연결된 USB(Universal Serial Bus) 호스트(225) 및/또는 시리얼 통신부(230)를 더 포함할 수 있고, 햅틱 효과 제공 장치(240)는 통신부(145)와 연결된 USB 클라이언트(255) 및/또는 시리얼 통신부(260)를 더 포함할 수 있다. 예를 들어, 햅틱 데이터 생성 장치(210)와 햅틱 효과 제공 장치(240)는 USB 호스트(225)와 USB 클라이언트(255) 간의 연결이나 시리얼 통신부(230)와 시리얼 통신부(260) 간의 연결을 통해 서로 통신할 수 있다. 시리얼 통신부(230)와 시리얼 통신부(260)는, 예를 들어 RS(Recommended Standard)-232와 같은 직렬 방식의 인터페이스를 통해 서로 연결될 수 있다. 햅틱 효과 제공 장치(240)의 패턴 재생부(270)는 수신한 햅틱 데이터로부터 햅틱 패턴 인덱스와 햅틱 세기를 추출하고, 추출된 햅틱 패턴 인덱스와 햅틱 세기를 이용하여 햅틱 패턴 데이터를 생성할 수 있다. 패턴 재생부(270)는 생성된 햅틱 패턴 데이터에 기초하여 액츄에이터를 구동하는 것에 의해 햅틱 패턴을 재생할 수 있다. 패턴 재생부(270)는 도 1의 햅틱 효과 재생부(155)의 기능을 포함할 수 있다.
햅틱 데이터 생성 장치(210)가 햅틱 효과 제공 장치(240)와 케이블을 통해 유선으로 연결되는 경우, USB 호스트(225)는 해당 케이블을 통해 햅틱 효과 제공 장치(240)에 전력 및 햅틱 데이터를 전송할 수 있다. 이 경우, 햅틱 효과 제공 장치(240)는 햅틱 데이터 생성 장치(210)로부터 햅틱 데이터와 함께 액츄에이터를 구동하는데 이용될 수 있는 전력을 동시에 제공받을 수 있다. 일 실시예에서, 햅틱 데이터 생성 장치(210)는 스마트폰에 포함되어 구동될 수 있고, 이 경우 햅틱 효과 제공 장치(240)는 스마트폰에 부착 가능한 게임용 햅틱 패치일 수 있다. 이 때, USB 호스트(225)는, 예를 들어 충전용 잭 인터페이스 등일 수 있고, 햅틱 데이터 생성 장치(210)와 햅틱 효과 제공 장치(240)가 유선으로 연결되는 경우, 스마트폰의 충전 부위로부터 햅틱 효과 제공 장치(240)로 전력이 공급됨과 동시에 햅틱 데이터가 전달될 수 있다.
도 3은 일 실시예에 따른 햅틱 데이터를 설정하는 일례를 설명하기 위한 흐름도이다.
도 3을 참조하면, 일 실시예에서 사용자는 게임 프로그램 내(예, 게임 메뉴)에서 제공되는 설정 인터페이스를 통해 햅틱 데이터를 설정(305)할 수 있다. 예를 들어, 사용자는 설정 인터페이스를 통해 햅틱 효과의 적용 범위, 햅틱 패턴 및 햅틱 세기 등을 설정할 수 있다. 이벤트별로 햅틱 효과를 설정하는 경우, 내부 게임 프로그램의 상황에 따른 게임 콘텐츠 이벤트나 사용자 입력에 의한 사용자 입력 이벤트별로 햅틱 효과가 설정될 수 있다. 일 실시예에서, 게임 콘텐츠의 오디오 데이터는 모든 이벤트에서 존재할 수 있다. 예를 들어, 게임 콘텐츠 이벤트 및 사용자 입력 이벤트 각각에 대응하는 오디오 데이터(예, 효과음)가 존재할 수 있다.
사용자는 설정 인터페이스를 통해 햅틱 효과의 적용 범위의 설정 여부를 결정(310)할 수 있다. 햅틱 효과의 적용 범위는 이벤트에 대한 햅틱 효과 처리 범위를 나타낸다. 적용 범위가 설정되지 않은 경우(즉, 미설정의 경우), 개발자(게임 프로그램 개발자)가 지정한 범위로 햅틱 효과의 적용 범위가 설정(315)된다. 이와 다르게, 사용자가 적용 범위를 설정한 경우, 사용자가 설정한 범위로 햅틱 효과의 적용 범위가 설정(320)된다. 일 실시예에서, 게임 프로그램 상의 기본 설정은 개발자가 지정한 범위로 햅틱 효과의 적용 범위가 설정될 수 있다. 사용자는 게임 프로그램 상의 설정 인터페이스를 통해 각각의 이벤트별로 햅틱 효과를 발생시킬지 여부를 결정할 수 있다. 게임 프로그램은 사용자에 의해 결정된 적용 범위로 햅틱 효과를 발생시킬 수 있다.
또한, 사용자는 설정 인터페이스를 통해 햅틱 패턴의 설정 여부를 결정(325)할 수 있다. 사용자가 햅틱 패턴을 설정하지 않는 경우, 개발자가 지정한 햅틱 패턴으로 설정(330)된다. 사용자는 이벤트별로 햅틱 패턴을 선택할 수 있고, 이 경우 사용자에 의해 선택된 이벤트에 대해 해당 이벤트에 대응되는 햅틱 패턴이 설정(335)된다. 사용자가 선택하지 않은 이벤트에 대해서는 개발자가 제공한 햅틱 패턴으로 설정될 수 있다.
사용자가 특정 이벤트에 대해 햅틱 패턴을 설정하지 않는 경우, 해당 이벤트에 대응하는 오디오 데이터에 기초하여 개발자가 지정한 햅틱 패턴이 결정될 수 있다. 예를 들어, 오디오 데이터에 고속 푸리에 변환(Fast Fourier Transformation; FFT) 처리, 타겟 주파수 대역 선택, 밴드패스 필터링 처리, 임계치를 이용한 햅틱 패턴 추출 등의 일련의 처리 과정을 통해 햅틱 패턴이 결정될 수 있다. 이에 대해서는 도 4에서 보다 자세히 설명하도록 한다.
또한, 사용자는 설정 인터페이스를 통해 각각의 이벤트별로 햅틱 세기의 설정 여부를 결정(340)할 수 있다. 사용자가 햅틱 세기를 설정하지 않는 경우, 각각의 햅틱 효과에 대해 개발자가 지정한 햅틱 세기로 설정된다. 사용자는 이벤트별로 햅틱 효과의 햅틱 세기를 선택할 수 있고, 이 경우 사용자에 의해 선택된 이벤트에 대해 해당 이벤트에 대응되는 햅틱 세기가 설정(350)된다. 사용자가 선택하지 않은 이벤트에 대해서는 미리 정의된 햅틱 세기로 설정될 수 있다.
사용자가 특정 이벤트에 대해 햅틱 세기를 설정하지 않는 경우, 햅틱 데이터 생성 장치는 해당 이벤트에 대응하는 오디오 데이터(예, 효과음)에 FFT 처리를 수행(345)할 수 있다. 햅틱 데이터 생성 장치는 FFT 처리 결과에서 값이 가장 큰 최대 주파수(예, dB가 가장 큰 주파수)를 추출(355)할 수 있다. 햅틱 데이터 생성 장치는 추출된 최대 주파수에 기초하여 이벤트에 대응하는 햅틱 세기를 결정(360)할 수 있다. 햅틱 데이터 생성 장치는 최대 주파수에 대응하는 햅틱 세기를 해당 이벤트에 대응하는 햅틱 세기로 결정할 수 있다. 주파수별로 대응하는 햅틱 세기는, 예를 들어 다음의 표 1과 같이 미리 정의되어 있을 수 있다.
주파수 범위 햅틱 세기
1 ~ 50Hz 1
51 ~ 150 Hz 2
151 ~ 200 Hz 3
201 ~ 300 Hz 4
301 ~ 400 Hz 5
401 ~ 500 Hz 6
501 ~ 800 Hz 7
801 ~ 1000 Hz 8
1001 ~ 2000 Hz 9
2001 Hz ~ 40000 Hz 10
예를 들어, 이벤트 A에 대응하는 오디오 데이터의 FFT 처리 결과, FFT 변환 값이 가장 큰 최대 주파수가 240 Hz이라고 가정하면, 해당 이벤트 A에 대응하는 햅틱 세기는 240HZ의 주파수가 포함된 주파수 범위의 햅틱 세기 '4'로 결정될 수 있다. 사용자가 햅틱 세기를 선택하는 경우, 격투기 게임을 예로 들면 다음의 표 2과 같이 이벤트별로 햅틱 세기가 결정될 수 있다. 햅틱 패턴의 지속 시간은 이벤트별로 개발자가 지정한 지속 시간으로 결정된다.
No 이벤트 햅틱 세기 햅틱 패턴 지속 시간(ms)
1 사용자가 조작한 게임 캐릭터의 주먹/발차기 타격이 적중(타격음) 3 500
2 게임 캐릭터의 주먹 콤보의 마지막 타격/배트 타격이 적중(묵직한 타격음) 5 1000
3 게임 캐릭터의 권총/단검을 발사(날카로운 금속음) 4 1000
4 게임 캐릭터가 적으로부터 피격(약한 타격음) 7 500
5 게임 캐릭터가 다운됨/적으로 공격으로 사망
(크고 강한 진동)
3 2000
위와 같은 과정에 따라, 햅틱 효과의 적용 범위, 햅틱 패턴 및 햅틱 세기 중 적어도 하나가 설정되면, 설정된 내용은 햅틱 데이터 설정 정보에 저장(370)될 수 있다. 햅틱 데이터 설정 정보가 저장(370)된 후, 게임 플레이가 시작된 이후에는 햅틱 데이터 설정 정보에 기초하여 햅틱 데이터가 생성된다. 위 실시예에 따르면, 이벤트별로 별도로 햅틱 효과를 설정하는 것 없이, 이벤트에 대응하는 오디오 데이터를 처리함으로써 햅틱 효과를 제공하는 것이 가능해 진다.도 4는 일 실시예에 따른 게임 프로그램의 오디오 데이터에 기초하여 햅틱 패턴을 결정하는 일례를 설명하기 위한 흐름도이다.도 4를 참조하면, 단계(410)에서, 햅틱 데이터 생성 장치는 게임 프로그램의 오디오 데이터를 고속 푸리에 변환(FFT) 처리할 수 있다. 일 실시예에서, 햅틱 데이터 생성 장치는 오디오 데이터에 FFT 처리를 수행하기 위해, 오디오 데이터를 먼저 임의의 개수의 데이터열 형태로 분할할 수 있다. 예를 들어, 햅틱 데이터 생성 장치는 오디오 데이터에 대하여 원활하게 FFT 처리를 수행하기 위해 256개 또는 1024개의 데이터 열로 오디오 데이터를 분할할 수 있다. 여기서, 데이터 열의 개수는 위 일례에 한정되지 않는다. FFT 처리에 의해 오디오 데이터가 시간 도메인에서 주파수 도메인으로 변환될 수 있다.
단계(420)에서, 햅틱 데이터 생성 장치는 단계(410)의 FFT 처리를 수행한 결과에 기초하여 오디오 데이터의 타겟 주파수 대역을 선택할 수 있다. 일 실시예에서, 햅틱 데이터 생성 장치는 주파수 영역으로 변환된 오디오 데이터를 주파수 대역별로 분할하고, FFT 처리가 수행된 값이 가장 큰 주파수를 포함하는 주파수 대역을 타겟 주파수 대역으로 선택할 수 있다. 단계(430)에서, 햅틱 데이터 생성 장치는 밴드패스 필터를 이용하여 타겟 주파수 대역에 필터링을 수행할 수 있다.
단계(440)에서, 햅틱 데이터 생성 장치는 단계(430)의 필터링이 수행된 타겟 주파수 대역의 오디오 데이터에 역 고속 푸리에 변환(IFFT) 처리를 수행할 수 있다. IFFT 처리를 통해 데이터가 주파수 도메인에서 시간 도메인으로 변환될 수 있다.
단계(450)에서, 햅틱 데이터 생성 장치는 단계(440)의 IFFT 처리를 수행한 결과에서 임계치 및 합산 처리를 수행할 수 있다. 햅틱 데이터 생성 장치는 시간 도메인으로 변환된 데이터에서 임계치 이상의 데이터 값들을 추출한 후 특정한 시간 구간 단위로 위 추출된 데이터 값들을 합산할 수 있다. 단계(460)에서, 햅틱 데이터 생성 장치는 단계(450)의 임계치 및 합산 처리 결과에 기초하여 햅틱 패턴을 결정할 수 있다. 햅틱 데이터 생성 장치는 단계(450)에서 결정된 데이터 값의 합산 결과가 특정한 조건을 만족시킬 때에 햅틱 효과가 발생하는 것으로 결정함으로써 햅틱 패턴을 결정할 수 있다.
위와 같이, 이벤트별로 햅틱 효과를 별도로 설정할 필요 없이, 이벤트별 오디오 데이터를 처리함으로써 햅틱 효과를 제공하는 것이 가능해 진다.
도 5는 일 실시예에 따른 햅틱 데이터의 엘리먼트들을 도시하는 도면이다.
일 실시예에 따르면, 햅틱 데이터는 햅틱 패턴 인덱스 및 햅틱 세기에 관한 정보를 포함할 수 있고, 다음의 표3과 같이 다양한 정보를 포함할 수 있다.
No 엘리먼트 설명
1 태그(Tag) 메시지 시작 표시, 0x47
2 길이(Length) Side ~ Strength 길이
3 사이드(Side) 액츄에이터의 채널 정보
4 패턴 인덱스(Pattern Index) 햅틱 패턴 인덱스
5 세기(Strength) 햅틱 세기
한편, 햅틱 데이터는 도 5에 도시된 것과 같은 메시지 포맷으로 구성되어 햅틱 효과 제공 장치에 전송될 수 있다. 도 5의 실시예는 햅틱 데이터가 ASN.1(Abstract Syntax Notation Number One)의 인코딩 규칙인 BER(Basic Encoding Rules) 방식(LTV 표기법)으로 구성된 예를 도시한다. 도 5를 참조하면, 햅틱 데이터는 제1 엘리먼트인 태그(tag), 제2 엘리먼트인 길이(length) 및 제3 엘리먼트인 값(value)의 엘리먼트들을 포함하는 메시지 포맷으로 전송될 수 있다 '태그'의 엘리먼트는 메시지의 종류를 나타낸다. 일 실시예에서, '태그'에 0x47(ASCII 코드: 'G')가 지정되면, 메시지에 햅틱 패턴에 대한 정보가 포함된 것으로 판단될 수 있다. '길이'의 엘리먼트는 메시지 값의 크기를 바이트(bytes)로 표시할 수 있다. 메시지 값의 크기가 255(0xFF) 바이트를 초과하는 경우에는 BER 방식에 따라 0x81의 값이 앞에 추가될 수 있다. 예를 들어, 260 바이트인 경우, '길이'는 '0x81 0x01 0x04'로 지정될 수 있다. '값'의 엘리먼트는 메시지의 정보를 포함한다. '값'의 엘리먼트에 실제 햅틱 데이터에 대한 정보가 포함될 수 있다. 예를 들어, '값'의 엘리먼트에는 햅틱 패턴 인덱스 및 햅틱 세기에 관한 정보가 포함될 수 있다.도 6은 일 실시예에 따른 햅틱 데이터 생성 방법의 동작을 설명하기 위한 흐름도이다. 햅틱 데이터 생성 방법은 본 명세서에서 설명한 햅틱 데이터 생성 장치에 의해 수행될 수 있다.도 6을 참조하면, 단계(610)에서 게임 프로그램이 실행된다. 게임 프로그램이 실행되는 장치(이하 '실행 장치')는, 단계(620)에서 햅틱 효과 제공 장치의 존재를 감지하고, 단계(630)에서 햅틱 효과 제공 장치가 연결 가능한지 여부를 판단할 수 있다. 햅틱 효과 제공 장치의 연결이 가능한 경우, 단계(640)에서 실행 장치는 햅틱 효과 제공 장치와 연결한다. 실행 장치는 블루투스, BLE, 와이파이, LTE 등을 이용한 무선 통신이나 케이블을 통한 유선 통신을 통해 햅틱 효과 제공 장치와 연결될 수 있다. 실행 장치는 햅틱 데이터 생성 장치를 포함할 수 있고, 실시예에 따라 햅틱 효과 제공 장치는 햅틱 데이터 생성 장치와 연결될 수도 있다.
단계(640)에서 햅틱 데이터 생성 장치는 햅틱 데이터 설정 정보에 기초하여 게임 플레이 중에 발생하는 이벤트에 대한 햅틱 데이터를 생성할 수 있다. 일 실시예에서, 햅틱 데이터 생성 장치는 햅틱 효과의 적용 범위, 햅틱 패턴 및 햅틱 세기 중 적어도 하나에 관한 설정 정보를 포함하는 햅틱 데이터 설정 정보에 기초하여 햅틱 데이터를 생성할 수 있다. 이러한 햅틱 데이터 설정 정보는 사용자 입력에 의해 결정될 수 있으며, 사용자는 게임 프로그램 내 설정 인터페이스를 통해 햅틱 효과의 적용 범위, 햅틱 패턴 및 햅틱 세기를 선택할 수 있다.
사용자에 의해 설정되지 않더라도, 햅틱 데이터 생성 장치는 각 이벤트에 대응하는 오디오 데이터에 고속 푸리에 변환 처리를 수행하고, 고속 푸리에 변환 처리를 수행한 결과에 기초하여 오디오 데이터의 타겟 주파수 대역을 선택하고, 밴드패스 필터를 이용하여 타겟 주파수 대역에 필터링을 수행하고, 필터링이 수행된 타겟 주파수 대역의 오디오 데이터에 역 고속 푸리에 변환 처리를 수행하고, 역 고속 푸리에 변환 처리를 수행한 결과에서 임계치에 기초하여 햅틱 패턴을 결정할 수 있다. 또한, 햅틱 데이터 생성 장치는 해당 오디오 데이터에 고속 푸리 변환 처리를 수행한 결과 값이 가장 큰 주파수를 추출하고, 추출된 주파수에 대응하는 햅틱 세기에 기초하여 이벤트에 대응하는 햅틱 데이터를 생성할 수도 있다. 햅틱 데이터 생성 장치가 햅틱 데이터를 생성하는 것에 대한 설명은 도 1 내지 도 5를 통해 설명한 내용이 적용될 수 있으며, 중복되는 내용에 대한 설명은 생략한다.
단계(650)에서, 햅틱 데이터 생성 장치는 단계(640)에서 생성된 햅틱 데이터를 햅틱 효과 제공 장치에 전송할 수 있다.
도 7은 일 실시예에 따른 햅틱 효과 제공 방법의 동작을 설명하기 위한 흐름도이다. 햅틱 효과 제공 방법은 본 명세서에서 설명한 햅틱 효과 제공 장치에 의해 수행될 수 있다.
도 7을 참조하면, 단계(710)에서 햅틱 효과 제공 장치는 햅틱 데이터 생성 장치(또는 게임 프로그램이 실행되는 장치)와 연결된다. 단계(720)에서, 햅틱 효과 제공 장치는 햅틱 데이터 생성 장치로부터 게임 플레이 중에 발생하는 이벤트와 연관된 햅틱 데이터를 수신할 수 있다. 단계(730)에서, 햅틱 효과 제공 장치는 수신한 햅틱 데이터를 처리하여 햅틱 패턴 데이터를 생성할 수 있다. 예를 들어, 햅틱 효과 제공 장치는 햅틱 데이터에 포함된 햅틱 패턴 인덱스 및 햅틱 세기에 관한 정보를 이용하여 햅틱 효과를 정의하는 햅틱 패턴 데이터를 생성할 수 있다.
단계(740)에서, 햅틱 효과 제공 장치는 햅틱 패턴 데이터에 기초하여 햅틱 효과를 발생시키는 것에 의해 사용자에게 햅틱 효과를 제공한다. 햅틱 효과 제공 장치는 햅틱 패턴 데이터에 기초하여 액츄에이터를 구동시키고, 각각의 햅틱 패턴이 제공되는 시간은 햅틱 세기에 대응하는 이벤트별 지속 시간에 따라 처리될 수 있다. 즉, 햅틱 패턴 인덱스(이벤트에 대한 인덱스와 동일)에 따라 지속 시간이 결정될 수 있다.
실시예에 따라, 단계(750)에서, 햅틱 효과 제공 장치는 햅틱 패턴 데이터에 기초하여 조명 효과를 발생시키는 것에 의해 사용자에게 조명 효과를 제공할 수도 있다. 햅틱 효과 제공 장치는 햅틱 패턴 데이터로부터 추출된 햅틱 세기에 관한 정보에 기초하여 조명 효과를 발생시킬 수 있다. 예를 들어, 햅틱 효과 제공 장치는 햅틱 패턴 데이터 포함된 햅틱 패턴 인덱스와 햅틱 세기에 관한 정보를 이용하여 LED 조명 등의 컬러나 밝기를 결정하고, 햅틱 효과가 제공되는 동안 조명 효과를 발생시킬 수 있다.
햅틱 효과 제공 장치가 햅틱 효과 및/또는 조명 효과를 제공하는 것에 대한 설명은 도 1 및 도 2를 통해 설명한 내용이 적용될 수 있으며, 중복되는 내용에 대한 설명은 생략한다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.

Claims (24)

  1. 게임 프로그램과 연동한 햅틱 데이터 생성 장치에 있어서,
    햅틱 데이터 설정 정보에 기초하여 게임 플레이 중에 발생하는 이벤트에 대한 햅틱 데이터를 생성하는 콘트롤러; 및
    상기 생성된 햅틱 데이터를 햅틱 효과 제공 장치에 전송하는 통신부를 포함하는 햅틱 데이터 생성 장치.
  2. 제1항에 있어서,
    상기 이벤트는,
    상기 게임 프로그램의 게임 콘텐츠 상에서 발생하는 게임 콘텐츠 이벤트 및 상기 게임 플레이를 위해 입력되는 사용자 입력에 대한 사용자 입력 이벤트 중 적어도 하나를 포함하는, 햅틱 데이터 생성 장치.
  3. 제1항에 있어서,
    상기 햅틱 데이터 설정 정보는,
    햅틱 효과의 적용 범위, 햅틱 패턴 및 햅틱 세기 중 적어도 하나에 관한 설정 정보를 포함하는, 햅틱 데이터 생성 장치.
  4. 제3항에 있어서,
    상기 적용 범위, 상기 햅틱 패턴 및 상기 햅틱 세기 각각은 사용자 입력에 의해 결정될 수 있는, 햅틱 데이터 생성 장치.
  5. 제1항에 있어서,
    상기 통신부는,
    사용자에 의해 선택된 하나 이상의 게임 콘텐츠 이벤트가 발생한 경우, 상기 발생한 게임 콘텐츠 이벤트에 대응하는 햅틱 데이터를 전송하는, 햅틱 데이터 생성 장치.
  6. 제1항에 있어서,
    상기 콘트롤러는,
    상기 이벤트에 대응하는 오디오 데이터에 고속 푸리에 변환(fast Fourier transform) 처리를 수행하고,
    상기 고속 푸리에 변환 처리를 수행한 결과에 기초하여 상기 오디오 데이터의 타겟 주파수 대역을 선택하고,
    밴드패스 필터를 이용하여 상기 선택된 타겟 주파수 대역에 필터링을 수행하고,
    상기 필터링이 수행된 타겟 주파수 대역의 오디오 데이터에 역 고속 푸리에 변환(inverse fast Fourier transform) 처리를 수행하고,
    상기 역 고속 푸리에 변환 처리를 수행한 결과에서 임계치에 기초하여 상기 이벤트에 대응하는 햅틱 패턴을 결정하는,
    햅틱 데이터 생성 장치.
  7. 제1항에 있어서,
    상기 콘트롤러는,
    상기 이벤트에 대응하는 오디오 데이터에 고속 푸리에 변환 처리를 수행하고,
    상기 고속 푸리에 변환 처리를 수행한 결과 값이 가장 큰 주파수를 추출하고,
    상기 추출된 주파수에 대응하는 햅틱 세기에 기초하여 상기 햅틱 데이터를 생성하는, 햅틱 데이터 생성 장치.
  8. 제1항에 있어서,
    상기 햅틱 데이터는,
    메시지의 종류를 나타내는 제1 엘리먼트;
    메시지 값의 크기를 나타내는 제2 엘리먼트; 및
    메시지 정보를 포함하는 제3 엘리먼트
    를 포함하는, 햅틱 데이터 생성 장치.
  9. 제8항에 있어서,
    상기 제3 엘리먼트는,
    햅틱 패턴 인덱스 및 햅틱 세기에 관한 정보를 포함하는, 햅틱 데이터 생성 장치.
  10. 제1항에 있어서,
    상기 햅틱 데이터 생성 장치가 상기 햅틱 효과 제공 장치와 케이블을 통해 유선으로 연결되는 경우, 상기 케이블을 통해 상기 햅틱 효과 제공 장치에 전력 및 상기 햅틱 데이터를 전송하는 USB 호스트
    를 더 포함하는 햅틱 데이터 생성 장치.
  11. 햅틱 효과 제공 장치에 있어서,
    햅틱 데이터 생성 장치로부터 햅틱 데이터를 수신하는 통신부;
    콘트롤러의 제어 하에 햅틱 효과를 발생시키는 햅틱 효과 재생부; 및
    상기 수신한 햅틱 데이터에 기초하여 상기 햅틱 효과의 발생을 제어하는 상기 콘트롤러를 포함하고,
    상기 햅틱 데이터는, 게임 플레이 중에 발생하는 이벤트와 연관되고, 햅틱 데이터 설정 정보에 기초하여 생성된 것을 특징으로 하는, 햅틱 효과 제공 장치.
  12. 제11항에 있어서,
    상기 콘트롤러는,
    상기 햅틱 데이터에 포함된 햅틱 패턴 인덱스 및 햅틱 세기에 관한 정보를 이용하여 햅틱 패턴 데이터를 생성하고, 상기 햅틱 패턴 데이터에 기초하여 상기 햅틱 효과의 발생을 제어하는, 햅틱 효과 제공 장치.
  13. 제12항에 있어서,
    상기 콘트롤러는,
    상기 햅틱 패턴 인덱스에 대응하는 햅틱 패턴 지속 시간에 기초하여 상기 햅틱 패턴 데이터를 생성하는, 햅틱 효과 제공 장치.
  14. 제11항에 있어서,
    상기 이벤트는,
    게임 프로그램의 게임 콘텐츠 상에서 발생하는 게임 콘텐츠 이벤트 및 상기 게임 플레이를 위해 입력되는 사용자 입력에 대한 사용자 입력 이벤트 중 적어도 하나를 포함하는, 햅틱 데이터 생성 장치.
  15. 제11항에 있어서,
    상기 콘트롤러의 제어 하에 조명 효과를 발생시키는 조명 효과 재생부
    를 더 포함하고,
    상기 콘트롤러는, 상기 햅틱 데이터에 기초하여 상기 조명 효과의 발생을 제어하는, 햅틱 효과 제공 장치.
  16. 제15항에 있어서,
    상기 콘트롤러는,
    상기 햅틱 데이터에서 햅틱 세기에 관한 정보를 추출하고, 상기 햅틱 세기에 관한 정보에 기초하여 조명 컬러 및 조명 세기 중 적어도 하나를 결정하는, 햅틱 효과 제공 장치.
  17. 제11항에 있어서,
    상기 햅틱 효과 제공 장치는,
    웨어러블 장치, 모바일 디바이스 액세서리 장치, 게임 패드, 키보드, 마우스 및 조이스틱 중 어느 하나의 형태를 가지는, 햅틱 효과 제공 장치.
  18. 게임 프로그램과 연동한 햅틱 데이터 생성 방법에 있어서,
    햅틱 데이터 설정 정보에 기초하여 게임 플레이 중에 발생하는 이벤트에 대한 햅틱 데이터를 생성하는 단계; 및
    상기 생성된 햅틱 데이터를 햅틱 효과 제공 장치에 전송하는 단계
    를 포함하는 햅틱 데이터 생성 방법.
  19. 제18항에 있어서,
    상기 햅틱 데이터 설정 정보는,
    햅틱 효과의 적용 범위, 햅틱 패턴 및 햅틱 세기 중 적어도 하나에 관한 설정 정보를 포함하는, 햅틱 데이터 생성 방법.
  20. 제18항에 있어서,
    상기 햅틱 데이터를 생성하는 단계는,
    상기 이벤트에 대응하는 오디오 데이터에 고속 푸리에 변환 처리를 수행하는 단계;
    상기 고속 푸리에 변환 처리를 수행한 결과에 기초하여 상기 오디오 데이터의 타겟 주파수 대역을 선택하는 단계;
    밴드패스 필터를 이용하여 상기 선택된 타겟 주파수 대역에 필터링을 수행하는 단계;
    상기 필터링이 수행된 타겟 주파수 대역의 오디오 데이터에 역 고속 푸리에 변환 처리를 수행하는 단계; 및
    상기 역 고속 푸리에 변환 처리를 수행한 결과에서 임계치에 기초하여 상기 이벤트에 대응하는 햅틱 패턴을 결정하는 단계
    를 포함하는 햅틱 데이터 생성 방법.
  21. 제18항에 있어서,
    상기 햅틱 데이터를 생성하는 단계는,
    상기 이벤트에 대응하는 오디오 데이터에 고속 푸리에 변환 처리를 수행하는 단계;
    상기 고속 푸리 변환 처리를 수행한 결과 값이 가장 큰 주파수를 추출하는 단계; 및
    상기 추출된 주파수에 대응하는 햅틱 세기에 기초하여 상기 햅틱 데이터를 생성하는 단계
    를 포함하는 햅틱 데이터 생성 방법.
  22. 햅틱 효과 제공 방법에 있어서,
    햅틱 데이터 생성 장치로부터 게임 플레이 중에 발생하는 이벤트와 연관된 햅틱 데이터를 수신하는 단계; 및
    상기 햅틱 데이터에 기초하여 햅틱 패턴 데이터를 생성하는 단계; 및
    상기 햅틱 패턴 데이터에 기초하여 햅틱 효과를 발생시키는 단계를 포함하고,
    상기 햅틱 데이터는, 햅틱 데이터 설정 정보에 기초하여 생성된 것을 특징으로 하는 햅틱 효과 제공 방법.
  23. 제22항에 있어서,
    상기 햅틱 패턴 데이터를 생성하는 단계는,
    상기 햅틱 데이터에 포함된 햅틱 패턴 인덱스 및 햅틱 세기에 관한 정보를 이용하여 상기 햅틱 패턴 데이터를 생성하는, 햅틱 효과 제공 방법.
  24. 제22항에 있어서,
    상기 햅틱 패턴 데이터로부터 추출된 햅틱 세기에 관한 정보에 기초하여 조명 효과를 발생시키는 단계
    를 더 포함하는 햅틱 효과 제공 방법.
KR1020200136186A 2018-11-16 2020-10-20 햅틱 데이터 생성 장치 및 방법, 햅틱 효과 제공 장치 및 방법 KR102347098B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200136186A KR102347098B1 (ko) 2018-11-16 2020-10-20 햅틱 데이터 생성 장치 및 방법, 햅틱 효과 제공 장치 및 방법
KR1020210192321A KR102608388B1 (ko) 2020-10-20 2021-12-30 햅틱 데이터 생성 장치 및 방법, 햅틱 효과 제공 장치 및 방법

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020180142103A KR20200057549A (ko) 2018-11-16 2018-11-16 햅틱 데이터 생성 장치 및 방법, 햅틱 효과 제공 장치 및 방법
KR1020200136186A KR102347098B1 (ko) 2018-11-16 2020-10-20 햅틱 데이터 생성 장치 및 방법, 햅틱 효과 제공 장치 및 방법

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020180142103A Division KR20200057549A (ko) 2018-11-16 2018-11-16 햅틱 데이터 생성 장치 및 방법, 햅틱 효과 제공 장치 및 방법

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020210192321A Division KR102608388B1 (ko) 2020-10-20 2021-12-30 햅틱 데이터 생성 장치 및 방법, 햅틱 효과 제공 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20200126945A true KR20200126945A (ko) 2020-11-09
KR102347098B1 KR102347098B1 (ko) 2022-01-05

Family

ID=79348725

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200136186A KR102347098B1 (ko) 2018-11-16 2020-10-20 햅틱 데이터 생성 장치 및 방법, 햅틱 효과 제공 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102347098B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012187148A (ja) * 2011-03-08 2012-10-04 Sony Computer Entertainment Inc 情報処理装置および情報処理方法
KR20140126469A (ko) * 2013-04-23 2014-10-31 (주)로보티즈 게임 컨트롤러 기능을 가진 이동통신기기 케이스
KR20140127171A (ko) * 2013-04-22 2014-11-03 임머숀 코퍼레이션 햅틱-인에이블링된 트리거를 갖는 게이밍 디바이스

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012187148A (ja) * 2011-03-08 2012-10-04 Sony Computer Entertainment Inc 情報処理装置および情報処理方法
KR20140127171A (ko) * 2013-04-22 2014-11-03 임머숀 코퍼레이션 햅틱-인에이블링된 트리거를 갖는 게이밍 디바이스
KR20140126469A (ko) * 2013-04-23 2014-10-31 (주)로보티즈 게임 컨트롤러 기능을 가진 이동통신기기 케이스

Also Published As

Publication number Publication date
KR102347098B1 (ko) 2022-01-05

Similar Documents

Publication Publication Date Title
US9928728B2 (en) Scheme for embedding a control signal in an audio signal using pseudo white noise
US10092827B2 (en) Active trigger poses
US10307681B2 (en) Server device, control method performed by the server device, program, and terminal device
CN110215682A (zh) 人工智能的辅助操作系统
US20210365122A1 (en) Device and method for generating haptic data, and device and method for providing haptic effect
KR20120120269A (ko) 조명을 사용해서 분당 행동수 정보를 시각적으로 나타내기 위한 시스템 및 방법
JP2017515240A (ja) 疑似ホワイトノイズを使用した音声信号に制御信号を埋め込むスキーム
US20230063610A1 (en) Pre-set audio profiles for graphical user interface and parametric equalizer in gaming systems
WO2012177976A2 (en) Auditory stimulus for auditory rehabilitation
WO2013083018A1 (zh) 一种射击游戏用背心
KR20020062191A (ko) 게임의 현장감을 표현하는 음향 제어 방법 및 장치
JP2024507595A (ja) 仮想リソースの投入制御方法、装置、コンピュータ機器及び記憶媒体
KR102347098B1 (ko) 햅틱 데이터 생성 장치 및 방법, 햅틱 효과 제공 장치 및 방법
KR102608388B1 (ko) 햅틱 데이터 생성 장치 및 방법, 햅틱 효과 제공 장치 및 방법
Yun et al. Generating real-time, selective, and multimodal haptic effects from sound for gaming experience enhancement
Gaina et al. “Did you hear that?” Learning to play video games from audio cues
CN107276815A (zh) 联网状态提示方法、装置以及计算机可读存储介质
Sheffield et al. The relationship between hearing acuity and operational performance in dismounted combat
US20210275905A1 (en) Controller apparatus and control method thereof
KR102656636B1 (ko) 패턴 데이터 생성 장치 및 방법, 패턴 데이터 재생 장치 및 방법
WO2021156997A1 (ja) スポーツ状況呈示システム
Belmega et al. A SURVEY ON SOUND-BASED GAMES.
JP2023182213A (ja) 情報処理システム、プログラムおよび情報処理方法
JP2023182216A (ja) 情報処理システム、プログラムおよび情報処理方法
CN104766595A (zh) 真电双功能架子鼓镲片

Legal Events

Date Code Title Description
A107 Divisional application of patent
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right