KR20210142739A - 가상 객체 제어 방법 및 장치, 단말 그리고 저장 매체 - Google Patents

가상 객체 제어 방법 및 장치, 단말 그리고 저장 매체 Download PDF

Info

Publication number
KR20210142739A
KR20210142739A KR1020217035426A KR20217035426A KR20210142739A KR 20210142739 A KR20210142739 A KR 20210142739A KR 1020217035426 A KR1020217035426 A KR 1020217035426A KR 20217035426 A KR20217035426 A KR 20217035426A KR 20210142739 A KR20210142739 A KR 20210142739A
Authority
KR
South Korea
Prior art keywords
skill
control
casting
area
virtual object
Prior art date
Application number
KR1020217035426A
Other languages
English (en)
Inventor
쟈청 웨이
순 후
산둥 쑤
Original Assignee
텐센트 테크놀로지(센젠) 컴퍼니 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 filed Critical 텐센트 테크놀로지(센젠) 컴퍼니 리미티드
Publication of KR20210142739A publication Critical patent/KR20210142739A/ko

Links

Images

Classifications

    • 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/55Controlling game characters or game objects based on the game progress
    • A63F13/56Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • 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/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/214Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads
    • A63F13/2145Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads the surface being also a display device, e.g. touch screens
    • 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/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • 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/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • A63F13/426Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle involving on-screen location information, e.g. screen coordinates of an area at which the player is aiming with a light gun
    • 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/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/533Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game for prompting the player, e.g. by displaying a game menu
    • 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/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/537Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game using indicators, e.g. showing the condition of a game character on screen
    • A63F13/5378Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game using indicators, e.g. showing the condition of a game character on screen for displaying an additional top view, e.g. radar screens or maps
    • 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/55Controlling game characters or game objects based on the game progress
    • A63F13/58Controlling game characters or game objects based on the game progress by computing conditions of game characters, e.g. stamina, strength, motivation or energy level
    • 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/80Special adaptations for executing a specific game genre or game mode
    • A63F13/822Strategy games; Role-playing games
    • 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/90Constructional details or arrangements of video game devices not provided for in groups A63F13/20 or A63F13/25, e.g. housing, wiring, connections or cabinets
    • A63F13/92Video game devices specially adapted to be hand-held while playing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04817Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0486Drag-and-drop
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • 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/50Features 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 details of game servers
    • A63F2300/55Details of game data or player data management
    • 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/60Methods for processing data by generating or executing the game program
    • A63F2300/63Methods for processing data by generating or executing the game program for controlling the execution of the game in time
    • A63F2300/638Methods for processing data by generating or executing the game program for controlling the execution of the game in time according to the timing of operation or a time limit

Abstract

가상 객체 제어 방법 및 장치, 단말 그리고 저장 매체가 제공된다. 이 방법에서, 스킬 컨트롤(704)에 대한 제1 클릭/탭 조작에 응답하여 스킬의 스킬 유형이 획득되고; 스킬의 스킬 유형이 화면 클릭/탭을 기반으로 캐스팅 위치를 선택하는 것을 지원하는 타깃 스킬인 것에 응답하여, 제어 대상 가상 객체가 위치된 위치 및 스킬의 캐스팅 범위에 따라 가상 장면에서 스킬의 캐스팅 가능 영역이 디스플레이되며; 캐스팅 가능 영역에서의 제2 클릭/탭 조작에 응답하여, 제어 대상 가상 객체는 제2 클릭/탭 조작에 의해 지시된 캐스팅 위치(707)에서 스킬을 캐스팅하도록 제어된다. 이 방법은 휠 가상 조이스틱을 기반으로 복잡한 드래그 조작을 수행할 필요가 없어, 사용자의 정확한 조준 조작을 단순화하고, 조준 시 단말의 계산량을 줄이며, 단말의 부하를 줄인다.

Description

가상 객체 제어 방법 및 장치, 단말 그리고 저장 매체
본 출원은, 2020년 5월 14일에 출원되고 명칭이 "가상 객체 제어 방법 및 장치, 단말 그리고 저장 매체"인 중국 특허 출원 번호 제202010408457.1호에 대한 우선권을 주장하는 바이며, 상기 문헌의 내용은 그 전체로서 원용에 의해 본 명세서에 포함된다.
본 출원은 인간-컴퓨터 상호작용 분야에 관한 것으로, 특히 가상 객체 제어 방법 및 장치, 단말 그리고 저장 매체에 관한 것이다.
컴퓨터 스킬의 발달과 단말 기능의 다양화로 인해 모바일 게임이 증가하고 있으며, MOBA(Multiplayer Online Battle Arena) 게임은 점차 모바일 게임의 매우 중요한 게임이 되고 있다. 현재 MOBA 게임에서 플레이어는 타깃 가상 객체를 제어하여 특정 위치에 스킬(skill)을 캐스팅하여(cast) 이 위치에서 스킬의 효과를 트리거할 수 있다.
일반적으로 플레이어가 스킬을 캐스팅할 때, 먼저 스킬 컨트롤(skill control)을 클릭/탭해야 하고, 스킬 컨트롤은 휠 가상 조이스틱(wheel virtual joystick)의 디스플레이를 트리거하며, 휠 가상 조이스틱의 휠 부분은 가상 장면(virtual scene)에서 스킬의 캐스팅 범위(casting range)와 매핑 관계를 가진다. 그 다음, 휠 가상 조이스틱의 조이스틱 부분을 드래그하여(drag) 캐스팅 범위 내에서 스킬의 캐스팅 방향 및 캐스팅 위치를 조정한다. 조정이 완료된 후, 플레이어가 릴리스에 의해(by releasing) 가상 장면에서 조이스틱 부분으로 매핑된 위치에 스킬을 캐스팅할 수 있다.
휠 가상 조이스틱에 기반한 전술한 캐스팅 방법에 따르면, 휠 가상 조이스틱 이 캐스팅 범위와 매핑 관계를 가지며, 휠 가상 조이스틱의 크기가 일반적으로 변경되지 않기 때문에, 캐스팅 범위가 더 큰 일부 스킬의 경우 매핑 비율이 너무 크다. 플레이어가 조이스틱 부분을 드래그할 때, 약간의 움직임에도 최종 캐스팅 위치가 넓은 범위로 시프트하여 조준 정확도(aiming accuracy)가 낮아진다. 사용자는 정확한 조준을 위해 복수의 조준 조작을 수행해야 하며, 단말은 사용자로부터 복수의 조준 조작을 수신해야 한다. 가상 장면에서 조준 조작에 의해 매핑된 캐스팅 위치는 반복적으로 계산되며, 그 결과 지나치게 많은 계산량이 발생하고 단말의 부하가 증가한다.
본 출원의 실시예는 MOBA에서 스킬을 캐스팅하는 조준 정확도를 개선하고, 사용자에 의한 정확한 조준의 조작을 단순화하며, 조준하는 동안 단말의 계산량을 감소시키며, 단말의 부하를 줄일 수 있는, 가상 객체 제어 방법 및 장치, 단말 그리고 저장 매체를 제공한다. 기술적 솔루션은 다음과 같다.
일 측면에 따르면, 단말에 적용 가능한 가상 객체 제어 방법이 제공되며, 상기 가상 객체 제어 방법은,
스킬 컨트롤(skill control)에 대한 제1 클릭/탭 조작(click/tap operation)에 응답하여 스킬의 스킬 유형을 획득하는 단계;
상기 스킬의 스킬 유형이 타깃 스킬인 것에 응답하여, 제어 대상 가상 객체(controlled virtual object)가 위치된 위치 및 상기 스킬의 캐스팅 범위(casting range)에 따라 상기 스킬의 캐스팅 가능 영역(castable region)을 가상 장면에 디스플레이하는 단계 - 상기 타깃 스킬은 화면 클릭/탭(screen click/tap)에 기반하여 캐스팅 위치를 선택하는 것을 지원하는 스킬임 -; 및
상기 캐스팅 가능 영역에서의 제2 클릭/탭 조작에 응답하여, 상기 제어 대상 가상 객체를 제어하여, 상기 제2 클릭/탭 조작에 의해 지시된 캐스팅 위치에서 상기 스킬을 캐스팅하는 단계를 포함한다.
일 측면에 따르면, 가상 객체 제어 장치가 제공되며, 상기 가상 객체 제어 장치는,
스킬 컨트롤에 대한 제1 클릭/탭 조작에 응답하여 스킬의 스킬 유형을 획득하도록 구성된 검출 모듈;
상기 스킬의 스킬 유형이 타깃 스킬인 것에 응답하여, 제어 대상 가상 객체가 위치된 위치 및 상기 스킬의 캐스팅 범위에 따라 상기 스킬의 캐스팅 가능 영역을 가상 장면에 디스플레이하도록 구성된 결정 모듈 - 상기 타깃 스킬은 화면 클릭/탭에 기반하여 캐스팅 위치를 선택하는 것을 지원하는 스킬임 -; 및
상기 캐스팅 가능 영역에서의 제2 클릭/탭 조작에 응답하여, 상기 제어 대상 가상 객체를 제어하여, 상기 제2 클릭/탭 조작에 의해 지시된 캐스팅 위치에서 상기 스킬을 캐스팅하도록 구성된 제어 모듈을 포함한다.
일 측면에 따르면, 단말이 제공되며, 상기 단말은 하나 이상의 프로세서 및 하나 이상의 메모리를 포함하고, 상기 하나 이상의 메모리는 적어도 하나의 프로그램 코드를 포함하고, 상기 적어도 하나의 프로그램 코드는 상기 하나 이상의 프로세서에 의해 로딩되고 실행되어, 전술한 가능한 구현 중 어느 하나에 따른 가상 객체 제어 방법에서 수행되는 조작을 구현한다.
일 측면에 따르면, 컴퓨터가 판독 가능한 저장 매체가 제공되며, 상기 컴퓨터가 판독 가능한 저장 매체는 적어도 하나의 프로그램 코드를 저장하며, 상기 적어도 하나의 프로그램 코드는 프로세서에 의해 로딩되고 실행되어, 전술한 가능한 구현 중 어느 하나에 따른 가상 객체 제어 방법에서 수행되는 조작을 구현한다.
본 출원의 실시예에서 제공되는 기술적 솔루션은 적어도 다음과 같은 유익한 효과를 포함한다:
스킬 컨트롤을 클릭/탭하는 조작을 수신하는 것에 의해, 스킬의 캐스팅 가능 영역이 가상 장면에 디스플레이된다. 선택된 캐스팅 위치는 캐스팅 가능 영역에 대한 클릭/탭 조작을 수신하는 것에 의해 결정되고, 제어 대상 가상 객체는 캐스팅 위치에서 스킬을 캐스팅하도록 제어된다. 먼저, 스킬 컨트롤을 클릭/탭한 다음 가상 장면에서 캐스팅 위치를 클릭/탭하여 스킬을 캐스팅하는 인간-컴퓨터 상호작용 방법을 기반으로, 스킬의 캐스팅 위치는 휠 가상 조이스틱과 캐스팅 위치 사이의 매핑없이 가상 장면에서 직접 선택될 수 있으며, 휠 가상 조이스틱을 캐스팅 위치에 매핑할 때 발생하는 오프셋 에러를 방지하고, 가상 장면에 대한 시각적 관찰을 통해 스킬의 캐스팅 위치를 정확하게 선택할 수 있다. 따라서, 상기 방법은 조준 정확도가 높고 조작 난이도가 낮아 보다 효율적인 인간-컴퓨터 상호작용이 가능하다. 정확한 조준에 필요한 조작의 양이 감소하고, 조준 중에 단말에 의해 수신되는 유효하지 않거나 부정확한 조준 조작의 양이 감소하며, 조준 조작에 필요한 시간이 단축되고, 단말이 더 이상 유효하지 않거나 부정확한 조준 조작에 의해 매핑되는 캐스팅 위치를 각각 계산할 필요가 없으며, 조준 중 단말이 조준 조작에 의해 매핑된 캐스팅 위치를 계산하는 계산량, 단말의 부하가 감소하고, 스킬 조준 및 캐스팅에서 단말의 컴퓨팅 효율성이 향상된다.
도 1은 본 출원의 실시예에 따른 가상 객체 제어 방법의 구현 환경의 개략도이다.
도 2는 본 출원의 실시예에 따른 가상 객체 제어 방법의 흐름도이다.
도 3은 본 출원의 실시예에 따른 휠 가상 조이스틱의 개략도이다.
도 4는 본 출원의 실시예에 따른 가상 객체 제어 방법의 흐름도이다.
도 5는 본 출원의 실시예에 따른 인터페이스의 개략도이다.
도 6은 본 출원의 실시예에 따른 인터페이스의 개략도이다.
도 7은 본 출원의 실시예에 따른 인터페이스의 개략도이다.
도 8은 본 출원의 실시예에 따른 인터페이스의 개략도이다.
도 9는 본 출원의 실시예에 따른 가상 객체 제어 방법의 흐름도이다.
도 10은 본 출원의 실시예에 따른 터치 화면 스킬 캐스팅의 개략적인 원리도이다.
도 11은 본 출원의 실시예에 따른 가상 객체 제어 장치의 개략적인 구조도이다.
도 12는 본 출원의 실시예에 따른 단말의 개략적인 구조도이다.
본 출원의 목적, 기술적 솔루션 및 이점을 보다 명확하게 하기 위해, 이하에서는 첨부된 도면을 참조하여 본 출원의 구현을 상세히 설명한다.
본 출원에서 "제1", "제2" 등의 용어는 효과 및 기능이 기본적으로 동일한 항목 또는 유사한 항목을 구별하기 위해 사용된다. "제1", "제2", "제n"은 논리 또는 시간 순서에 따라 종속 관계가 없으며, 수량 및 실행 순서에 제한이 없다.
본 출원에서 용어 "적어도 하나"는 하나 이상을 의미하고 "복수"는 둘 이상을 의미한다. 예를 들어, 복수의 제1 위치는 둘 이상의 제1 위치를 의미한다.
본 출원의 실시예에서 기술적인 솔루션을 쉽게 이해할 수 있도록, 본 출원의 실시예와 관련된 일부 용어를 아래에 설명한다.
가상 장면(Virtual Scene): 애플리케이션 프로그램이 단말에서 실행될 때 디스플레이(또는 제공)되는 가상 장면. 가상 장면은 현실 세계의 시뮬레이션된 환경일 수 있거나, 반-시뮬레이션된(semi-simulated) 반-픽션(semi-fictional) 가상 환경일 수 있거나, 또는 완전히 허구의 가상 환경일 수 있다. 가상 장면은 2차원 가상 장면, 2.5차원 가상 장면 또는 3차원 가상 장면 중 어느 하나일 수 있으며, 가상 장면의 차원은 본 출원의 실시예에서 제한되지 않는다. 예를 들어, 가상 장면은 하늘, 육지, 바다 등을 포함할 수 있다. 육지는 사막, 도시 등의 환경적 엘리먼트를 포함할 수 있다. 사용자는 가상 객체를 제어하여 가상 환경에서 이동시킬 수 있다. 선택적으로, 가상 장면은 추가로 적어도 2개의 가상 객체 간의 가상 장면 배틀(battle)에 사용될 수 있으며, 가상 장면의 적어도 2개의 가상 객체에 사용할 수 있는 가상 리소스(resource)가 있다. 선택적으로, 가상 장면은 2개의 대칭 영역(symmetric region)을 포함할 수 있으며, 2개의 반대 진영(opposing camp)에 있는 가상 객체가 각각 대응하는 영역을 점유하고, 각 측의 목표는 상대 영역의 깊숙한 타깃 건물/요새/기지/크리스탈 딥(target building/fort/base/crystal deep)을 파괴하여 승리하는 것이다. 예를 들어, 대칭 영역은 왼쪽 하부 모서리 영역(lower left corner region)과 오른쪽 상부 모서리 영역(upper right corner region), 또는 왼쪽 중간 영역(middle left region)과 오른쪽 중간 영역이다.
가상 객체(virtual object): 가상 장면에서 움직일 수 있는 객체. 움직일 수 있는 객체는 가상 캐릭터, 가상 동물, 만화 캐릭터 등이 될 수 있으며, 예를 들어 가상 장면에 디스플레이되는 캐릭터, 동물, 식물, 기름통, 벽, 돌 등이 될 수 있다. 가상 객체는 가상 장면에서 사용자를 나타내기 위해 사용되는 가상 이미지일 수 있다. 가상 장면은 복수의 가상 객체를 포함할 수 있으며, 각각의 가상 객체는 가상 장면에서 모양과 부피를 가지며, 가상 장면에서 일부 공간을 차지한다. 선택적으로, 가상 장면이 3차원 가상 장면일 때, 가상 객체는 3차원 모델일 수 있고, 3차원 모델은 3차원 인간 골격 기술을 기반으로 구성된 3차원 캐릭터일 수 있으며, 동일한 가상 객체가 상이한 스킨(skin)을 착용하여 상이한 모습을 보일 수 있다. 일부 실시예에서, 가상 객체는 다르게는, 2.5차원 모델 또는 2차원 모델을 사용하여 구현될 수 있다. 이것은 본 출원의 실시예들에 제한되지 않는다.
선택적으로, 가상 객체는 클라이언트에서 조작을 통해 제어되는 플레이어 캐릭터일 수 있거나, 훈련을 통해 가상 장면 배틀에서 설정된 인공 지능(artificial intelligence, AI) 캐릭터일 수 있거나, 가상 장면 상호작용에서 비 플레이어 캐릭터(non-player character, NPC)일 수 있다. 선택적으로, 가상 객체는 가상 장면에서 경쟁을 위한 가상 캐릭터일 수 있다. 선택적으로, 가상 장면에서 상호작용에 참여하는 가상 객체의 수량은 미리 설정되거나 또는 상호작용에 참여하는 클라이언트의 수량에 따라 동적으로 결정될 수 있다.
MOBA 게임은 가상 장면에 여러 개의 요새(fort)가 제공되고, 상이한 진영의 사용자가 가상 장면에서 배틀을 수행하거나 요새를 점령하거나 상대 진영의 요새를 파괴하기 위해 가상 객체를 제어하는 게임이다. 예를 들어, MOBA 게임은 사용자를 적어도 2개의 반대 진영으로 나눌 수 있으며, 적어도 2개의 반대 진영에 있는 서로 다른 가상 팀이 각각의 맵(map) 영역을 점유하고, 특정 승리 조건을 목표로 사용하여 서로 경쟁한다. 승리 조건은 상대방 진영(opposing camp)의 요새 점거 또는 요새 파괴, 상대방 진영의 가상 객체 죽이기, 지정된 시나리오 및 시간에서 자신의 생존 보장, 특정 자원 탈취(seizing) 및 정해진 시간 안에 상대방을 압도하기(outscoring) 중 적어도 하나를 포함하지만 이에 제한되지는 않는다. 예를 들어, MOBA 게임에서 사용자는 2개의 반대 진영으로 나눌 수 있다. 사용자에 의해 제어되는 가상 객체는 가상 장면에 흩어져 서로 경쟁하며, 승리 조건은 적(enemy)의 모든 요새를 파괴하거나 점령하는 것이다.
선택적으로, 각 가상 팀은 1, 2, 3 또는 5와 같은 하나 이상의 가상 객체를 포함한다. 배틀 아레나(arena)에 참가하는 각 팀의 가상 객체의 수량에 따라 배틀 아레나는 1V1 경쟁(competition), 2V2 경쟁, 3V3 경쟁, 5V5 경쟁 등으로 나눌 수 있다. 1V1은 "1 vs. 1"을 의미하며 여기에서는 자세한 설명을 생략한다.
선택적으로, MOBA 게임은 라운드(round)(또는 턴(turn))로 진행될 수 있으며, 배틀 아레나의 각 라운드는 동일한 맵 또는 다른 맵을 가질 수 있다. MOBA 게임의 한 라운드의 지속 기간(duration)은 게임이 시작되는 순간부터 승리 조건이 충족되는 모멘트(moment)이다.
MOBA 게임에서, 사용자는 가상 장면의 하늘에서 자유 낙하, 활공, 낙하산 등을 하거나, 육지에서 달리거나, 점프하거나, 기거나, 구부정한 자세로 걷기 등을 하도록 가상 객체를 제어할 수 있으며, 또는 바다에서 수영, 부유, 잠수 등을 하도록 가상 객체를 제어할 수 있다. 여기서, 장면은 예시에 불과하며, 본 출원의 실시예에서는 특별한 제한이 없다.
MOBA 게임에서, 사용자는 가상 객체를 추가로 제어하여 다른 가상 객체와 싸우는 스킬을 사용할 수 있다. 예를 들어, 스킬의 유형은 공격 스킬, 방어 스킬, 치유(healing) 스킬, 보조 스킬, 참수(beheading) 스킬 등을 포함할 수 있다. 각 가상 객체는 하나 이상의 고정된 스킬을 가질 수 있으며, 상이한 가상 객체는 일반적으로 상이한 스킬을 가지고, 상이한 스킬은 다른 효과를 생성할 수 있다. 예를 들어, 가상 객체가 캐스팅하는 공격 스킬이 적대적인 가상 객체(hostile virtual object)를 명중하면(hit) 적대적인 가상 객체에 일정한 피해를 입히며, 이는 일반적으로 적대적인 가상 객체의 가상 헬스 포인트(virtual health point)의 일부를 차감하는 것으로 나타난다. 다른 예로, 가상 객체가 캐스팅한 치유 스킬이 아군 가상 객체(friendly virtual object)를 명중하면, 아군 가상 객체에 대해 특정 치유가 발생하며, 이는 일반적으로 아군 가상 객체의 가상 헬스 포인트의 일부를 복원하는 것으로 나타나며, 모든 다른 유형의 스킬은 대응하는 효과를 생성할 수 있다. 세부 사항은 여기서 다시 설명하지 않는다.
다음은 본 출원과 관련된 시스템 아키텍처를 설명한다.
도 1은 본 출원의 실시예에 따른 가상 객체 제어 방법의 구현 환경의 개략도이다. 도 1을 참조하면, 구현 환경은 제1 단말(120), 서버(140) 및 제2 단말(160)을 포함한다.
제1 단말(120)에는 가상 장면을 지원하는 애플리케이션 프로그램이 설치되어 실행된다. 애플리케이션 프로그램은 MOBA 게임, MMORPG(massively multiplayer online role playing game), FPS(first-person shooting) 게임, 3인칭 슈팅 게임(third-person shooting game), 가상 현실 애플리케이션 프로그램, 3차원 게임 맵 프로그램, 군사 시뮬레이션 프로그램 또는 멀티플레이어 총격전 생존 게임 중 어느 하나일 수 있다. 제1 단말(120)은 제1 사용자가 사용하는 단말일 수 있고, 제1 사용자는 제1 단말(120)을 이용하여 가상 장면에서 제1 가상 객체를 조작하여 움직임(movement)을 수행할 수 있다. 움직임은, 스킬 캐스팅(skill casting), 신체 자세 조정(body posture adjustment), 기어 다니기, 걷기, 달리기, 자전거 타기, 점프하기, 운전하기, 집기, 슈팅, 공격하기, 던지기 중 적어도 하나를 포함하지만 이에 한정되지 않는다. 예를 들어, 제1 가상 객체는 시뮬레이션 캐릭터 역할 또는 만화 캐릭터 역할과 같은 제1 가상 캐릭터이다.
서버(140)는 하나의 서버, 복수의 서버, 클라우드 컴퓨팅 플랫폼, 가상화 센터 중 적어도 하나를 포함할 수 있다. 서버(140)는 가상 장면을 지원하는 애플리케이션 프로그램에 대한 백엔드 서비스를 제공하도록 구성된다. 선택적으로, 서버(140)는 1차(primary) 컴퓨팅 작업(work)을 맡을 수 있고, 제1 단말(120) 및 제2 단말(160)은 2차(secondary) 컴퓨팅 작업을 맡을 수 있으며; 다르게는, 서버(140)는 2차 컴퓨팅 작업을 맡고, 제1 단말(120) 및 제2 단말(160)은 1차 컴퓨팅 작업을 맡으며; 다르게는, 서버(140), 제1 단말(120) 및 제2 단말(160) 간에 분산 컴퓨팅 아키텍처를 이용하여 협업 컴퓨팅(collaborative computing)을 수행한다.
제2 단말(160)에는 가상 장면을 지원하는 애플리케이션 프로그램이 설치되어 실행된다. 애플리케이션은 MOBA 게임, MMORPG, FPS 게임, 3인칭 슈팅 게임, 가상 현실 애플리케이션 프로그램, 3차원 맵 프로그램, 군사 시뮬레이션 프로그램, 멀티플레이어 총격전 생존 게임 중 어느 하나일 수 있다. 제2 단말(160)은 제2 사용자가 사용하는 단말일 수 있고, 제2 사용자는 제2 단말(160)을 이용하여 가상 장면에서 제2 가상 객체를 조작하여 움직임을 수행할 수 있다. 움직임은 스킬 캐스팅, 신체 자세 조정, 기어 다니기, 걷기, 달리기, 자전거 타기, 점프하기, 운전하기, 집기, 슈팅, 공격하기, 던지기 중 적어도 하나를 포함하지만 이에 한정되지 않는다. 예를 들어, 제2 가상 객체는 시뮬레이션된 캐릭터 역할 또는 만화 캐릭터 역할과 같은 제2 가상 캐릭터이다.
제1 단말(120) 및 제2 단말(160)은 유선 또는 무선 통신 방식으로 서버(140)와 직간접적으로 연결될 수 있다. 연결 방식은 본 출원의 실시예에서 제한되지 않는다.
일부 실시예에서, 제1 단말(120)이 제어하는 제1 가상 객체와 제2 단말(160)이 제어하는 제2 가상 객체는 동일한 가상 장면에 위치되며, 이 경우 제1 가상 객체는 가상 장면에서 제2 가상 객체와 상호작용할 수 있다. 제1 가상 객체와 제2 가상 객체는 대립 관계(opposing relationship)에 있을 수 있으며, 예를 들어, 제1 가상 객체와 제2 가상 객체는 서로 다른 팀 및 진영에 속할 수 있다. 대립 관계에 있는 가상 객체는 스킬을 캐스팅하여 서로 싸울 수 있으며, 예를 들어, 제1 가상 객체가 제2 가상 객체에 공격 스킬을 캐스팅한다. 일부 다른 실시예에서, 제1 가상 객체 및 제2 가상 객체는 팀 동료일 수 있고, 예를 들어, 제1 가상 캐릭터 및 제2 가상 캐릭터는 동일한 팀 또는 동일한 조직에 속할 수 있고, 서로 친구 관계를 가질 수 있거나, 임시 통신 권한이 있다. 이 경우, 제1 가상 객체는 제2 가상 객체에 치료 스킬(treatment skill)을 캐스팅할 수 있다.
서버(140)는 독립적인 물리적 서버일 수 있거나, 서버 클러스터 또는 복수의 물리적 서버로 구성된 분산 시스템일 수 있거나, 또는 클라우드 서비스, 클라우드 데이터베이스, 클라우드 컴퓨팅, 클라우드 기능, 클라우드 스토리지, 네트워크 서비스, 클라우드 통신, 미들웨어 서비스, 도메인 네임 서비스, 보안 서비스, CDN(content delivery network), 빅데이터, AI 플랫폼과 같은 기본적인 클라우드 컴퓨팅 서비스를 제공하는 클라우드 서버일 수 있다.
제1 단말(120) 또는 제2 단말(160)은 스마트폰, 태블릿 컴퓨터, 노트북 컴퓨터, 데스크탑 컴퓨터, 스마트 스피커, 스마트워치, MP3(Moving Picture Experts Group Audio Layer III) 플레이어, MP4(Moving Picture Experts Group Audio Layer IV) 플레이어, 전자책 리더기 등일 수 있으나 이에 한정되지 않는다.
제1 단말(120)와 제2 단말(160)에 설치된 애플리케이션 프로그램은 동일하거나, 또는 두 단말에 설치된 애플리케이션 프로그램은 상이한 운영 체제 플랫폼 상에서의 동일한 유형의 애플리케이션 프로그램일 수 있다. 제1 단말(120)은 일반적으로 복수의 단말 중 하나일 수 있고, 제2 단말(160)은 일반적으로 복수의 단말 중 하나일 수 있다. 이 실시예에서, 제1 단말(120) 및 제2 단말(160)만을 사용하여 설명한다. 제1 단말(120)과 제2 단말(160)의 디바이스 유형은 동일하거나 상이할 수 있다. 당업자는 더 많거나 더 적은 단말이 있을 수 있음을 알 수 있다. 예를 들어, 단 하나의 단말이 있을 수도 있고, 수십 또는 수백 개의 단말이 있을 수도 있다. 단말의 수량 및 디바이스 유형은 본 출원의 실시예에서 제한되지 않는다.
도 2는 본 출원의 실시예에 따른 가상 객체 제어 방법의 흐름도이다. 도 2를 참조하면, 본 실시예는 단말에 적용되며, 단말은 도 1에 도시된 제1 단말(120) 또는 제2 단말(160)일 수 있다. 이 실시예에는 다음 단계를 포함한다.
201. 단말이 스킬 컨트롤(skill control)에 대한 제1 클릭/탭 조작(click/tap operation)에 응답하여 스킬의 스킬 유형을 획득한다.
단말은 임의의 사용자가 사용하는 단말일 수 있다. 현재 단말이 제어하고 있는 가상 객체는 제어 대상 가상 객체(controlled virtual object)이며, 제어 대상 가상 객체는 스킬을 캐스팅하는 것에 의해 가상 장면에서 다른 가상 객체와 싸울 수 있다. 여기에 포함된 스킬은 제어 대상 가상 객체에 고유한 하나 이상의 스킬일 수 있거나, 또는 스킬은 가상 소품(prop)이 장착된 후 특정 가상 소품을 사용하여 제어 대상 가상 객체에 의해 캐스팅되는 하나 이상의 스킬일 수 있다. 스킬 리소스는 본 출원의 실시예에서 특별히 제한되지 않는다. 선택적으로, 스킬의 스킬 유형은 공격 스킬, 방어 스킬, 치료 스킬, 보조 스킬, 참수 스킬 등을 포함할 수 있다. 스킬 유형은 본 출원의 실시예에서 특별히 제한되지 않는다.
일부 실시예에서, 단말은 사용자의 라운드 시작 조작에 응답하여 라운드 시작 인터페이스를 디스플레이한다. 라운드 시작 인터페이스는 가상 객체 선택 컨트롤, 가상 소품 선택 컨트롤 등을 포함할 수 있다. 라운드 시작 조작은 게임 라운드의 시작을 트리거하는 데 사용되며, 라운드 시작 컨트롤에 대한 클릭/탭 조작일 수 있다. 본 출원의 실시예에서 라운드 시작 조작의 유형은 제한되지 않는다. 라운드 시작 인터페이스는 이 라운드의 제어 대상 가상 객체를 선택하는 데 사용된다. 단말은 라운드 시작 인터페이스에서 각각의 가상 객체에 대한 사용자의 선택 조작을 실시간으로 검출하고, 선택된 가상 객체를 이번 라운드에서 플레이할 제어 대상 가상 객체로 결정할 수 있다. 선택적으로, 선택 조작은 클릭/탭 조작, 길게 누르기 조작(long-press operation) 등일 수 있거나 또는 임의의 가상 객체에 대응하는 단축키(shortcut key)에 대한 트리거 조작일 수 있다. 이것은 본 출원의 실시예에서 제한되지 않는다. 일부 MOBA 게임에서, 사용자는 동시에 플레이할 복수의 가상 객체를 선택하고, 동시에 게임 라운드에서 플레이할 복수의 가상 객체를 제어할 수 있다. 따라서, 본 출원의 실시예에서 제어 대상 가상 객체는 사용자에 의해 현재 제어되는 가상 객체를 의미하며, 이는 일반적으로 "메인 제어 대상 가상 객체"로 지칭된다
사용자가 라운드 시작 인터페이스에서 제어 대상 가상 객체를 선택한 후, 단말은 이 게임 라운드를 시작하고, 가상 장면을 로딩하며, 가상 장면의 가상 장면 화상(picture)과 제어 대상 가상 객체가 소유한 적어도 하나의 스킬의 스킬 컨트롤을 디스플레이하고, 제어 대상 가상 객체를 가상 장면에 디스플레이한다. 예를 들어, 스킬 컨트롤은 가상 장면의 가상 장면 화상의 상위 레이어 상에 디스플레이되며, 즉, 스킬 컨트롤은 가상 장면 화상의 일부를 가린다(obscure).
선택적인 구현에서, 단말은 사용자 인터페이스(user interface, UI)를 디스플레이하고, UI는 가상 장면 화상 및 스킬 컨트롤을 포함하며, 가상 장면 화상은 제어 대상 가상 객체를 가지는 가상 장면을 관찰 객체로서 관찰하는 것에 의해 획득되는 화상이다.
스킬 컨트롤은 스킬에 대한 사용자 상호작용 인터페이스를 제공하는 데 사용된다. 예를 들어, 스킬 컨트롤은 그래픽 버튼 형태로 UI 상에 떠다니게(floating) 디스플레이될 수 있고, 그래픽 버튼은 라운드 버튼, 직사각형 버튼 또는 불규칙한 형태의 버튼일 수 있다. 스킬 컨트롤의 디스플레이 모드는 본 출원의 실시예에서 특별히 제한되지 않는다. 선택적으로, 대응하는 스킬의 스킬 식별자는 스킬 컨트롤 상에 디스플레이될 수 있고, 스킬 식별자는 식별 패턴, 식별 텍스트의 문자열(string), 또는 식별 코드의 문자열일 수 있다.
일부 실시예에서, 단말은 또한 맵 컨트롤, 스토어(store) 컨트롤, 및 모바일 조이스틱과 같은 다른 UI 컨트롤을 가상 장면에 디스플레이할 수 있다. 가상 장면에 디스플레이되는 컨트롤의 콘텐츠는 본 출원의 실시예에서 특별히 제한되지 않는다. 본 출원의 실시예에서, 스킬 컨트롤 이외의 UI 컨트롤은 "비스킬 컨트롤(non-skill control)"로 지칭된다.
전체 맵 레이더(full map radar) 디스플레이 컨트롤이라고도 지칭되는 맵 컨트롤은 가상 환경에서 각 가상 유닛의 실시간 위치를 디스플레이하는 데 사용되는 정보 디스플레이 컨트롤이므로, 맵 컨트롤을 관찰하여 다른 가상 유닛의 위치를 획득할 수 있다. 맵 컨트롤은 가상 장면의 평면도 맵, 즉 미니맵(minimap)을 디스플레이한다. 미니맵은 사용자가 가상 장면의 지형적 특징을 관찰하는 데 편리하다. 미니맵은 메인 가상 유닛의 맵 마커(map marker)를 추가로 디스플레이하며, 맵 마커는 가상 유닛의 실시간 위치를 미니맵상에 디스플레이하는 데 사용된다. 메인 가상 유닛은 가상 객체, 가상 건물, 가상 차량, 가상 동물, 가상 소품, NPC 중 적어도 하나를 포함한다. 예를 들어, 가상 객체는 사용자 또는 AI에 의해 제어되는 가상 유닛이다. 예를 들어, 가상 동물은 가상 괴물을 포함한다.
사용자는 스킬 컨트롤에 대한 사용자의 제1 클릭/탭 조작에 응답하여 단말이 스킬의 스킬 유형을 획득하도록 하기 위해 임의의 스킬의 스킬 컨트롤을 클릭/탭할 수 있다. 스킬 유형은 타깃 스킬 및 타깃 스킬 이외의 스킬을 포함할 수 있으며, 타깃 스킬은 화면 클릭/탭에 기반하여 캐스팅 위치를 선택하는 것을 지원하는 스킬이다. 전술한 프로세스는 대응하는 스킬의 스킬 유형이 타깃 스킬인지를 검출하는 프로세스라고 볼 수 있다. 단말은 타깃 스킬의 스킬 유형에 대한 타깃 스킬 식별자를 추가하므로, 스킬의 스킬 유형이 타깃 스킬 식별자를 가지는지를 검출하여 스킬의 스킬 유형이 타깃 스킬인지를 판정할 수 있다. 스킬의 스킬 유형이 타깃 스킬 식별자를 가지는 것으로 검출될 때, 스킬의 스킬 유형을 타깃 스킬로 결정하고, 다음 단계(202)를 수행한다. 그렇지 않고, 스킬의 스킬 유형이 타깃 스킬 식별자를 갖지 않는 것으로 검출될 때, 스킬의 스킬 유형이 타깃 스킬이 아니라고 결정하고 프로세스를 종료한다. 선택적으로, 타깃 스킬 식별자는 IsFullScreenSkill 식별자일 수 있다. 타깃 스킬은 단말의 전체 화면 상에서 클릭/탭 조작을 트리거하는 것에 의해 캐스팅될 수 있으며, 이러한 캐스팅 방법은 종래의 휠 가상 조이스틱 기반의 조작 메커니즘과 상이하다. 따라서, 타깃 스킬을 통칭하여 "전체 화면 스킬(full-screen skill)" 또는 "터치 화면 스킬(touch-screen skill)"이라고도 부를 수 있다.
예를 들어, 스킬 컨트롤은 휠 가상 조이스틱 컨트롤이다. 도 3에 도시된 바와 같이, 라운드 스킬 컨트롤(325)이 제1 UI 상에 디스플레이된다. 사용자는 스킬 컨트롤(325)을 길게 눌러 스킬 컨트롤의 휠 가상 조이스틱(327)을 호출할(invoke) 수 있다. 휠 가상 조이스틱은 큰 서클(big circle)(328)(휠 부분)과 작은 서클(329)(원격 감지(sensing) 부분)으로 구성된다. 큰 서클(328)은 휠 가상 조이스틱의 조작 가능한 범위이고, 작은 서클(329)은 사용자의 손가락이 현재 누르고 있는 위치이다. 사용자는 큰 서클(328)의 범위 내에서 작은 서클(329)을 임의로 슬라이드할 수 있다. 예를 들어, 휠 가상 조이스틱은 방향 조이스틱 또는 위치 조이스틱이다. 휠 가상 조이스틱은 가상 조이스틱의 중심점(320)에서 오프셋된 작은 서클(329)의 방향 또는 위치에 따라 사용자의 방향 또는 위치를 결정하고, 방향 또는 위치에 따라 가상 장면에서 조준 방향 또는 조준 위치를 결정하며, 그다음 사용자가 작은 서클(329)이 현재 위치된 위치에서 휠 가상 조이스틱을 릴리스할 때, 가상 장면의 조준 방향 또는 조준 위치에서 스킬을 캐스팅하도록, 제어 대상 가상 객체를 제어한다. 예를 들어, 사용자가 스킬 컨트롤을 조작하여 스킬을 캐스팅하는 조작은, 휠 가상 조이스틱을 호출하기 위해 스킬 컨트롤을 길게 누르고, 휠 가상 조이스틱을 타깃 방향 또는 타깃 위치로 드래그하며, 그리고 스킬을 캐스팅하기 위해 휠 가상 조이스틱을 릴리스하는 것이다.
종래 기술에서, 사용자가 스킬을 캐스팅할 때, 먼저 스킬 컨트롤이 클릭/탭되어야 하고, 스킬 컨트롤은 휠 가상 조이스틱의 디스플레이를 트리거하며, 휠 가상 조이스틱의 휠 부분은 가상 장면에서 스킬의 캐스팅 범위와 매핑 관계를 가진다. 그 다음, 휠 가상 조이스틱의 조이스틱 부분을 드래그하여 캐스팅 범위에서 스킬의 캐스팅 방향이나 캐스팅 위치를 조정한다. 조정이 완료된 후, 사용자가 릴리스하는 것에 의해 조이스틱 부분에 의해 매핑된 위치에 스킬을 캐스팅할 수 있다. 휠 가상 조이스틱에 기반한 캐스팅 방법에 따르면, 휠 가상 조이스틱은 캐스팅 범위와 매핑 관계를 가지고 휠 가상 조이스틱의 크기는 일반적으로 변경되지 않기 때문에, 캐스팅 범위가 더 큰 일부 스킬의 경우, 매핑 비율이 지나치게 크다. 사용자가 조이스틱 부분을 드래그할 때 약간의 움직임에도 최종 캐스팅 위치가 큰 범위로 시프트됨에 따라, 조준 정확도가 낮고 조작 어려움이 크며, 인간-컴퓨터 상호작용 효율성이 낮으며, 결과적으로 사용자 경험에 영향을 미친다.
그러나, 본 출원의 실시예에서 타깃 스킬은 휠 가상 조이스틱을 기반으로 캐스팅될 필요가 없고, 사용자에 의한 화면 상의 클릭/탭 조작에 기반하여 캐스팅 위치를 직접 선택할 수 있는 스킬이다. 사용자는 가상 장면에서 특정 캐스팅 위치를 직접 클릭/탭하여, 휠 가상 조이스틱과 가상 장면 간의 매핑 없이 "보이는 대로 얻는 것(what you see is what you get)"의 상호작용 효과를 달성하도록 스킬을 캐스팅할 수 있다. 따라서, 캐스팅 범위가 더 넓은 일부 스킬의 경우에도, 좋은 조준 정확도를 유지할 수 있으며, 즉, 스킬을 캐스팅하는 조준 정확도가 크게 향상되고, 스킬을 캐스팅하는 조작 난이도가 감소하여, 인간-컴퓨터 상호작용 효율성이 향상되고 사용자 경험이 최적화된다. 다음은 타깃 스킬을 캐스팅하는 방법에 대해 자세히 설명한다.
202. 단말은 스킬의 스킬 유형이 타깃 스킬인 것에 응답하여, 제어 대상 가상 객체가 위치되는 위치 및 스킬의 캐스팅 범위에 따라 스킬의 캐스팅 가능 영역을 가상 장면에 디스플레이하고, 타깃 스킬은 화면 클릭/탭에 기반하여 캐스팅 위치를 선택하는 것을 지원하는 스킬이다.
전술한 프로세스에서, 스킬의 스킬 유형이 타깃 스킬인 것으로 검출될 때, 단말은 제어 대상 가상 객체가 위치되는 위치를 캐스팅 가능 영역의 중심으로 결정하고, 스킬의 가장 먼 캐스팅 거리를 캐스팅 가능 영역의 반경으로 결정하여, 라운드 캐스팅 가능 영역을 결정한다. 예를 들어, 사용자가 스킬 1을 클릭/탭하고, 스킬 1의 캐스팅 범위는 6피트이다. 따라서, 가상 장면에서, 제어 대상 가상 객체의 위치 주변의 6피트 라운드 영역이 스킬 1의 캐스팅 가능 영역으로 결정된다.
일부 실시예에서, 단말은 또한 가상 장면에서 캐스팅 가능 영역의 캐스팅 템플릿(casting template)을 디스플레이할 수 있고, 캐스팅 템플릿은 캐스팅 템플릿 외부의 영역에서 스킬의 캐스팅이 무효임을 디스플레이하는 데 사용된다. 이 경우, 단말은 화면 상의 위치 포인트에 대한 사용자의 클릭/탭 조작이 검출되면, 단말은 그 위치 포인트가 캐스팅 템플릿에 있는지를 검출하여 위치 포인트가 캐스팅 가능 영역에 있는지를 판정할 수 있다. 구체적으로, 위치 포인트가 캐스팅 템플릿에 있을 때, 위치 포인트가 캐스팅 가능 영역에 있는 것으로 결정하고 다음 단계(203)를 수행하고; 그렇지 않고, 위치 포인트가 캐스팅 템플릿에 없을 때, 위치 포인트가 캐스팅 가능 영역 외부에 있는 것으로 결정하고, 스킬이 캐스팅되지 않으며, 클릭/탭 조작은 무효 조작 또는 오조작(misoperation)으로 간주된다.
스킬 유형은 캐스팅 스킬에 대한 인간-컴퓨터 상호작용 조작 방식에 기반한 스킬의 분류이다. 상이한 스킬 캐스팅 조작에 따라, 스킬은 스킬 컨트롤을 클릭/탭하여 자동으로 캐스팅할 수 있는 스킬; 스킬 컨트롤을 눌러서 호출되는 휠 가상 조이스틱을 사용하여 가상 장면에서 캐스팅 방향을 조준하고 릴리스하는 스킬 캐스트(cast); 및 스킬 컨트롤을 눌러서 호출되는 휠 가상 조이스틱을 사용하여 가상 장면에서 캐스팅 위치를 조준하고 릴리스하는 스킬 캐스트와 같은 다양한 유형으로 분류될 수 있다. 타깃 스킬은 가상 장면(가상 장면 화상)을 클릭/탭하여 캐스팅 위치를 선택하여 캐스팅될 수 있는 스킬을 의미한다. 스킬의 스킬 유형은 타깃 스킬이며, 즉, 스킬이, 스킬 컨트롤이 클릭된/탭된 후, 가상 장면에서 클릭/탭 조작을 수행하여 캐스팅 위치를 선택하고 스킬을 캐스팅하는 캐스팅 조작을 통해 캐스팅되도록 허용된다. 확실히, 동일한 스킬이 복수의 캐스팅 조작을 지원할 수 있다. 예를 들어, 화면 클릭/탭을 기반으로 캐스팅 위치를 선택할 수 있는 스킬이라면, 스킬의 스킬 유형은 타깃 스킬을 포함한다.
203. 단말은 캐스팅 가능 영역에서의 제2 클릭/탭 조작에 응답하여, 제어 대상 가상 객체를 제어하여, 제2 클릭/탭 조작에 의해 지시되는 캐스팅 위치에서 스킬을 캐스팅한다.
전술한 프로세스에서, 단말은 캐스팅 가능 영역에서 사용자의 제2 클릭/탭 조작을 검출한 후, 단말은 제어 대상 가상 객체를 제어하여, 제2 클릭/탭 조작에 의해 지시된 캐스팅 위치에서 스킬을 캐스팅하고, 스킬의 효과를 정산한다(settle). 상이한 스킬 유형에 따라 효과의 세틀먼트 규칙(Settlement rule)이 상이하다.
예시적인 시나리오에서, 단일 타깃 공격의 공격 스킬의 경우, 단말은 캐스팅 위치에 다른 가상 객체가 있는지를 검출할 수 있다. 캐스팅 위치에 다른 가상 객체가 있으면, 공격 스킬이 다른 가상 객체를 명중하는 것으로 결정하며, 다른 가상 객체의 가상 헬스 포인트(health point)에서 특정 값을 차감하고; 그렇지 않고 캐스팅 위치에 다른 가상 객체가 없으면, 공격 스킬이 다른 가상 객체를 놓친 것으로 결정하며, 이는 스킬 캐스팅이 이번에 타깃에서 벗어나게 됨을 의미한다.
예시적인 시나리오에서, 일부 효과 영역(area of effect, AOE) 스킬의 경우, 사용자가 클릭/탭한 캐스팅 위치가 실제로 스킬 공격 범위의 중심점이며, 단말은 캐스팅 위치 주변의 타깃 거리 내에 다른 가상 객체가 있는지를 검출할 수 있다. 캐스팅 위치 주변의 타깃 거리 내에 다른 가상 객체가 있으면, 공격 스킬이 다른 가상 객체를 명중하는 것으로 결정하고, 다른 가상 객체의 가상 헬스 포인트에서 특정 값을 차감하며; 그렇지 않고, 캐스팅 위치 주변의 타깃 거리 내에 다른 가상 객체가 없으면, 공격 스킬이 다른 가상 객체를 놓친 것으로 결정하며, 이는 스킬 캐스팅이 이번에 타깃에서 벗어나게 됨을 의미한다.
전술한 2개의 예시적인 시나리오에서, 다른 가상 객체는 단말을 통해 다른 사용자가 제어하는 가상 객체를 의미하거나, 또는 가상 소품, 가상 NPC, 가상 군인, 가상 건물 등을 의미할 수 있다. 스킬에 의해 명중될 수 있는 다른 가상 객체의 유형은 본 출원의 실시예에서 특별히 제한되지 않는다.
본 출원의 실시예에 의해 제공되는 방법에서, 가상 장면에서 임의의 스킬에 대한 제1 클릭/탭 조작에 응답하여, 스킬의 스킬 유형이 획득되고; 스킬의 스킬 유형이 화면 클릭/탭을 기반으로 캐스팅 위치를 선택하는 것을 지원하는 타깃 스킬인 것에 응답하여, 제어 대상 가상 객체가 위치된 위치 및 스킬의 캐스팅 범위에 따라 가상 장면에서 스킬의 캐스팅 가능 영역이 결정되며; 캐스팅 가능 영역에서의 제2 클릭/탭 조작에 응답하여, 제어 대상 가상 객체는 제2 클릭/탭 조작에 의해 지시된 캐스팅 위치에서 스킬을 캐스팅하도록 제어된다. 스킬을 먼저 클릭/탭한 다음 캐스팅 위치를 클릭/탭하여 스킬을 캐스팅하는 인간-컴퓨터 상호작용 방법은, 휠 가상 조이스틱 및 스킬 조이스틱에 기반한 복잡한 드래그 조작 없이 두 번의 클릭/탭 조작을 기반으로 스킬을 캐스팅할 수 있고, 휠 가상 조이스틱이 캐스팅 범위에 매핑될 때 발생하는 오프셋 에러를 방지할 수 있다. 따라서, 이 방법은 조준 정확도가 더 높고 조작 난이도가 낮아서, 인간-컴퓨터 상호작용이 보다 효율적이며 사용자 경험이 향상된다.
도 4는 본 출원의 실시예에 따른 가상 객체 제어 방법의 흐름도이다. 도 4를 참조하면, 본 실시예는 단말에 적용되며, 단말은 도 1에 도시된 제1 단말(120) 또는 제2 단말(160)일 수 있다. 이 실시예에는 다음 단계를 포함한다.
300. 단말은 가상 장면을 디스플레이한다.
단말은 가상 장면 화상과 가상 장면의 스킬 컨트롤을 디스플레이하고, 가상 장면 화상은 가상 장면에 위치된 제어 대상 가상 객체를 포함한다. 스킬 컨트롤을 디스플레이하는 프로세스에서, 단말은 타깃 구성 파일(configuration file)을 읽을 수 있다. 타깃 구성 파일은 제어 대상 가상 객체의 구성 정보를 저장한다. 제어 대상 가상 객체가 소유한 적어도 하나의 스킬 및 적어도 하나의 스킬의 각각의 메타 정보(meta-information)는 타깃 구성 파일의 구성 정보에 기반하여 결정될 수 있다. 메타 정보는 각 스킬의 스킬명, 캐스팅 메커니즘, 액션(action) 메커니즘, 쿨타임(cooling time), 지속 기간(duration), 효과 등을 포함할 수 있다. 확실히, 메타 정보는 클릭된/탭된 스킬이 타깃 스킬인지를 검출하기 위해 각 스킬이 타깃 스킬 식별자(예: IsFullScreenSkill 식별자)를 가지는지를 지시할 수 있으며, 이는 후속 단계(304)에서 설명되며, 세부 사항은 여기서 설명되지 않는다.
301. 단말은 화면에서 제1 클릭/탭 조작이 검출된 경우에, 제1 클릭/탭 조작에 의해 지시된 위치에 UI 컨트롤의 존재(presence)에 응답하여, UI 컨트롤의 제어 유형을 획득한다.
UI 컨트롤의 컨트롤 유형은 스킬 컨트롤과 비스킬 컨트롤을 포함한다. 스킬 컨트롤은 임의의 스킬의 UI 컨트롤이다. 비스킬 컨트롤은 스킬 컨트롤 이외의 UI 컨트롤이다. 비스킬 컨트롤은 맵 컨트롤(일반적으로 미니맵이라고 함), 스토어 컨트롤(가상 장비 또는 가상 소품을 구매하는 데 사용되는 컨트롤) 및 모바일 조이스틱(제어 대상 가상 객체를 제어하여 가상 장면에서 이동시키는 데 사용되는 컨트롤)을 포함하지만, 이에 한정되지 않는다. 여기서 모바일 조이스틱은 종래의 스킬 컨트롤의 휠 가상 조이스틱과 상이하다. 모바일 조이스틱은 제어 대상 가상 객체의 움직임을 제어하는 데 사용되며, 스킬 컨트롤의 휠 가상 조이스틱은 스킬의 캐스팅 방향이나 캐스팅 위치를 조준하는 데 사용된다.
전술한 프로세스에서, 사용자는 화면 상의 한 위치를 클릭/탭할 수 있다. 가상 장면에서 사용자의 제1 클릭/탭 조작이 검출될 때, 단말은 제1 클릭/탭 조작에 의해 지시되는 위치에 UI 컨트롤이 있는지를 검출하고, 그 위치에 UI 컨트롤이 있으면 UI 컨트롤의 컨트롤 유형을 획득한다. 구체적으로, 단말은 사용자가 클릭/탭한 위치의 화면 좌표를 획득하고, 그 위치의 화면 좌표가 모든 UI 컨트롤의 커버리지 영역(coverage region) 내에 있는지를 검출할 수 있다. 위치의 화면 좌표가 임의의 UI 컨트롤의 커버리지 영역 내에 있을 때, 그 위치에 UI 컨트롤이 있는 것으로 결정되고, UI 컨트롤의 컨트롤 유형이 획득되며, UI 컨트롤의 컨트롤 유형이 스킬 컨트롤일 때 다음 단계(302)가 수행된다. 그렇지 않고, 위치의 화면 좌표가 모든 UI 컨트롤의 커버리지 영역 내에 있지 않을 때(위치에 UI 컨트롤이 없는 것으로 결정), 또는 UI 컨트롤의 컨트롤 유형이 비스킬 컨트롤일 때, 프로세스가 종료된다.
화면(UI)에서, UI 컨트롤은 일반적으로 가상 장면의 상위 레이어에 떠 있는 상태로 디스플레이되므로, 사용자가 위치를 클릭/탭한 후 단말은 그 위치에 UI 컨트롤이 있는지를 검출하고, UI 컨트롤의 컨트롤 유형을 획득해야 한다. UI 컨트롤의 컨트롤 유형이 비스킬 컨트롤이면, 이 클릭/탭 조작에 의해 트리거되는 이벤트가 스킬 캐스팅 이벤트가 아님을 의미하며, 프로세스가 종료된다. 그렇지 않고, UI 컨트롤의 컨트롤 유형이 스킬 컨트롤이면, 추가 결정을 위해 다음 단계(302)가 수행될 필요가 있다.
302. 단말은 UI 컨트롤의 컨트롤 유형이 스킬에 대응하는 스킬 컨트롤인 것에 응답하여 다른 스킬 컨트롤의 트리거 상태를 획득하며, 다른 스킬 컨트롤은 상기 스킬과 상이한 다른 스킬의 스킬 컨트롤이다.
단말은 전술한 단계(301)를 통해 상기 위치에 스킬 컨트롤이 존재하는지를 검출할 수 있다. 위치에 스킬 컨트롤이 있으면, 다른 스킬 컨트롤의 트리거 상태를 계속 검출한다. 트리거된 상태에 있는 다른 스킬 컨트롤이 있으면, 이는 사용자가 이미 다른 스킬을 캐스팅 중이거나 사용자가 두 스킬의 스킬 컨트롤을 동시에 눌렀음을 의미한다. 사용자는 동시에 2개의 스킬을 캐스팅할 수 없기 때문에 이 클릭/탭 조작은 무효한 조작 또는 오조작으로 결정되고, 프로세스를 종료한다. 그렇지 않고, 트리거된 상태에서 다른 스킬 컨트롤이 없으면, 다음 단계(303)가 수행된다.
일부 실시예에서, 임의의 스킬의 스킬 컨트롤이 클릭/탭될 때, 단말은 스킬에 차단(blocking) 식별자 CurSkill을 할당할 수 있다. 차단 식별자 CurSkill은 현재 운용되는 스킬의 고유성을 보장하기 위해, 상기 스킬과 상이한 다른 스킬의 클릭/탭 이벤트를 차단하는 데 사용된다. 따라서, 트리거된 상태에서 다른 스킬 컨트롤이 있는지를 검출할 때 단말은 현재 차단 식별자 CurSkill을 가진 스킬이 있는지만 검출하면 된다. 차단 식별자 CurSkill을 가진 임의의 스킬이 있을 때, 트리거된 상태에 다른 스킬 컨트롤이 있는 것으로 결정하고, 프로세스를 종료한다. 그렇지 않고, 모든 스킬이 차단 식별자 CurSkill을 갖지 않을 때, 트리거된 상태에서 다른 스킬 컨트롤이 없는 것으로 결정하고, 다음 단계(303)를 수행한다.
전술한 프로세스에서, 단말이 해당 위치에서의 UI 컨트롤의 존재에 응답하고, UI 컨트롤의 컨트롤 유형이 스킬 컨트롤일 때, 이는 사용자가 해당 스킬의 스킬 컨트롤을 클릭/탭하는 것을 의미한다. 사용자는 2개의 스킬을 동시에 조작할 수 없기 때문에, 전술한 단계(302)를 통해 다른 스킬이 눌렸는지를 판정할 필요가 있다. 다른 스킬을 누르지 않은 경우에만 다음 단계(303)가 수행되고, 그렇지 않으면 프로세스가 종료된다.
303. 단말은 다른 스킬 컨트롤이 트리거된 상태에 있지 않은 것에 응답하여 가상 장면에서 스킬에 대한 제1 클릭/탭 조작이 검출된 것으로 결정한다.
전술한 프로세스에서, 단계(301)를 통해 사용자가 클릭/탭한 위치에 UI 컨트롤이 있는 것으로 보장하고, 단계(302)를 통해 사용자가 상기 스킬을 클릭/탭하고, 두 스킬이 현재 동시에 조작되지 않은 것을 보장하므로, 상기 스킬에 대한 사용자의 제1 클릭/탭 조작이 결정되고, 다음 단계(304)를 수행한다.
도 5는 본 출원의 실시예에 따른 인터페이스의 개략도이다. 도 5를 참조하면, 가상 장면(400)은 스킬 1 내지 스킬 4에 각각 대응하는 스킬 컨트롤(401 내지 404)을 포함한다. 사용자가 스킬 컨트롤(404)을 클릭/탭한 후, 단말은 터치 포인트에 대한 UI 컨트롤의 유형이 스킬 컨트롤이고, 트리거된 상태에서 다른 스킬 컨트롤이 없음을 검출하므로, 스킬 4에 대한 제1 클릭/탭 조작이 검출되는 것으로 결정된다.
304. 단말은 스킬 컨트롤에 대한 제1 클릭/탭 조작에 응답하여 스킬의 스킬 유형을 획득한다.
단계(304)에서, 사용자는 가상 장면에서 임의의 스킬의 스킬 컨트롤을 클릭/탭하여 상기 스킬에 대한 사용자의 제1 클릭/탭 조작에 응답하여 단말이 스킬의 스킬 유형을 획득하도록 할 수 있다. 스킬 유형은 타깃 스킬 및 타깃 스킬 이외의 스킬을 포함할 수 있으며, 타깃 스킬은 화면 클릭/탭에 기반하여 캐스팅 위치를 선택하는 것을 지원하는 스킬이다.
전술한 프로세스는 스킬의 스킬 유형이 타깃 스킬인지를 검출하는 프로세스라고 볼 수 있다. 단말은 제어 대상 가상 객체가 소유한 적어도 하나의 스킬에서 타깃 스킬의 스킬 유형에 대한 타깃 구성 파일에 타깃 스킬 식별자를 추가하므로, 스킬의 스킬 유형이 타깃 구성 파일에 타깃 스킬 식별자를 가지고 있는지를 검출하는 것에 의해, 스킬의 스킬 유형이 타깃 스킬인지를 판정할 수 있다. 스킬의 스킬 유형이 타깃 스킬 식별자를 가지는 것으로 검출될 때, 스킬의 스킬 유형을 타깃 스킬로 결정하고, 다음 단계(305)를 수행한다. 그렇지 않고, 스킬의 스킬 유형이 타깃 스킬 식별자를 갖지 않는 것으로 검출될 때, 스킬의 스킬 유형이 타깃 스킬이 아닌 것으로 결정하고, 프로세스를 종료한다.
예시적인 시나리오에서, 타깃 스킬 식별자는 IsFullScreenSkill 식별자일 수 있다. 타깃 구성 파일에서 제어 대상 가상 객체에 대해 스킬이 구성될 때, IsFullScreenSkill 식별자가 타깃 스킬의 스킬 유형에 대해 타깃 스킬 식별자의 관련 파라미터로서 추가될 수 있다. 전체 화면 터치 이벤트(즉, 임의의 스킬에 대한 사용자의 클릭/탭 조작)가 검출될 때, 단말은 현재 클릭된/탭된 스킬 컨트롤에 대응하는 스킬이 구성 파일에서 IsFullScreenSkill 식별자로 마킹(mark)되는지를 검출할 수 있다. 스킬의 스킬 유형이 IsFullScreenSkill 식별자를 가질 때 이 스킬이 전체 화면 터치 이벤트에 의해 트리거되는 것으로 간주할 수 있다.
305. 단말은 스킬의 스킬 유형이 타깃 스킬인 것에 응답하여 스킬의 캐스팅 카운트다운(casting countdown) 또는 캐스팅 프롬프트(casting prompt) 정보 중 적어도 하나를 가상 장면에 디스플레이하며, 타깃 스킬은 화면 클릭/탭에 기반하여 캐스팅 위치를 선택하는 것을 지원하는 스킬이다.
단말은 전술한 단계(304)를 통해 스킬의 스킬 유형을 획득한다. 스킬의 스킬 유형이 타깃 스킬인 것에 응답하여, 단말은 스킬의 캐스팅 카운트다운 또는 캐스팅 프롬프트 정보를 가상 장면에 디스플레이할 수 있다. 캐스팅 카운트다운은 사용자에게 스킬을 캐스팅할 시간이 얼마나 남았는지 프롬프트하는 데 사용되며, 캐스팅 프롬프트 정보는 사용자에게 스킬을 캐스팅하는 방법을 프롬프트하는 데 사용된다.
선택적으로, 캐스팅 카운트다운의 지속 기간 또는 캐스팅 프롬프트 정보의 콘텐츠는 타깃 구성 파일에 의해 지시될 수 있다. 캐스팅 카운트다운 또는 캐스팅 프롬프트 정보는 텍스트 형태로 가상 장면에 디스플레이될 수도 있고, 애니메이션 형태로 가상 장면 화상에서 떠서 재생되거나, 음성 방송 형태로 지능적으로 프롬프트될 수도 있다. 캐스팅 카운트다운 또는 캐스팅 프롬프트 정보의 디스플레이 방식은 본 출원의 실시예에서 특별히 제한되지 않는다.
도 6은 본 출원의 실시예에 따른 인터페이스의 개략도이다. 도 6을 참조하면, 가상 장면(500)은 스킬 1 내지 스킬 4에 각각 대응하는 스킬 컨트롤(501 내지 504)을 포함한다. 사용자가 스킬 컨트롤(504)을 클릭/탭한 후, 단말은 터치 포인트에 대한 UI 컨트롤의 유형이 스킬 컨트롤이고, 트리거된 상태에서 다른 스킬 컨트롤이 없음을 검출하므로, 스킬 4에 대한 클릭/탭 조작이 검출된 것으로 결정될 수 있다. 이후, 단말은 스킬 4가 타깃 스킬에 속함을 검출하고, 스킬 4의 캐스팅 카운트다운(505) 및 캐스팅 프롬프트 정보(506)를 가상 장면에 디스플레이한다. 현재 캐스팅 카운트다운이 5초 남았음을 알 수 있으며, 캐스팅 프롬프트 정보(506)는 "화면을 클릭/탭하여 스킬을 캐스팅하세요"라는 텍스트 메시지이다.
예를 들어, 처음으로 스킬 컨트롤을 트리거한 후, 사용자는 가상 장면에서 캐스팅 위치를 선택하기 위해 직접 클릭/탭하거나, 캐스팅 위치를 선택하기 위해 휠 가상 조이스틱을 사용할 수 있다. 단말은 스킬 컨트롤에 대응하는 휠 가상 조이스틱 상에서 수신된 스킬 캐스팅 조작에 응답하여, 스킬 캐스팅 조작에 의해 지시된 위치에서 스킬을 캐스팅하도록 제어 대상 가상 객체를 제어한다.
선택적인 구현에서, 단말은 스킬 컨트롤에 대한 제1 클릭/탭 조작에 응답하여 스킬의 스킬 유형을 획득하고; 그리고 스킬의 스킬 유형이 타깃 스킬인 것에 응답하여, 제어 대상 가상 객체가 위치된 위치 및 스킬의 캐스팅 범위에 따라 스킬의 캐스팅 가능 영역을 가상 장면에 디스플레이한다. 캐스팅 카운트다운 동안, 사용자는 가상 장면의 캐스팅 가능 영역에서 임의의 캐스팅 위치를 클릭/탭하여 스킬을 캐스팅하도록 제어 대상 가상 객체를 제어하거나, 스킬 컨트롤을 다시 눌러 스킬 컨트롤의 휠 가상 조이스틱을 호출하고, 조이스틱 부분을 드래그하여 캐스팅 위치를 선택하고, 릴리스하여 가상 객체를 제어하여 가상 장면에서 조이스틱 부분에 의해 매핑된 위치에서 스킬을 캐스팅할 수 있다.
306. 단말은 제어 대상 가상 객체가 위치된 위치 및 스킬의 캐스팅 범위에 따라 스킬의 캐스팅 가능 영역을 가상 장면에 디스플레이한다.
일부 실시예에서, 캐스팅 가능 영역이 라운드 영역일 때, 가상 장면에서 단말은 제어 대상 가상 객체가 위치된 위치를 캐스팅 가능 영역의 중심으로 결정하고, 스킬의 가장 먼 캐스팅 거리를 캐스팅 가능 영역의 반경으로 결정할 수 있다. 물론, 캐스팅 가능 영역은 라운드 영역에 한정되지 않고, 부채꼴 영역(fan-shaped region), 직사각형 영역, 불규칙 영역 등이 될 수 있음은 물론이다. 예를 들어, 캐스팅 가능 영역이 부채꼴 영역일 때, 사용자는 움직임 조작을 통해 부채꼴 영역의 배향(orientation)을 제어하고, 회전 조작을 통해 부채꼴 영역의 배향을 회전시킬 수 있다. 예를 들어, 사용자가 캐스팅 가능 영역에서 제1 위치를 클릭/탭한 다음 제2 위치로 이동하면, 부채꼴 영역의 배향은 제1 위치에서 제2 위치로이다. 사용자가 제2 위치에서 제3 위치로 계속 이동하면, 부채꼴 영역이 제1 위치에서 제3 위치로의 방향으로 회전된다.
일부 실시예에서, 단말은 가상 장면의 캐스팅 가능 영역에 대한 캐스팅 템플릿을 추가하고, 캐스팅 템플릿은 캐스팅 템플릿 외부의 영역에서 스킬의 캐스팅이 무효임을 지시하는 데 사용된다. 이후, 사용자의 화면 상에서의 제1 클릭/탭 조작이 다시 검출되면, 단말은 제1 클릭/탭 조작이 지시하는 위치 포인트가 캐스팅 템플릿에 있는지를 검출하여, 위치 포인트가 캐스팅 가능 영역에 있는지 판정할 수 있다. 구체적으로, 위치 포인트가 캐스팅 템플릿에 있을 때, 위치 포인트가 캐스팅 가능 영역에 있는 것으로 결정되고 다음 단계(307)가 수행되며; 그렇지 않고, 위치 포인트가 캐스팅 템플릿에 없을 때 위치 포인트가 캐스팅 가능 영역 외부에 있는 것으로 결정되고, 스킬이 캐스팅되지 않고, 클릭/탭 조작은 무효 조작 또는 오조작으로 간주된다.
307. 단말은 맵 컨트롤에 대한 제3 클릭/탭 조작에 응답하여 맵 컨트롤에서 클릭된/탭된 타깃 영역을 결정한다.
전술한 프로세스에서, 가상 장면은 일반적으로 크고 단말 화면의 크기가 제한되어 있으며 가상 장면의 일부만 단말 화면에 디스플레이될 수 있기 때문에, 맵 컨트롤은 일반적으로 가상 장면에 디스플레이될 수 있으며, 맵 컨트롤은 현재 화면에 디스플레이된 가상 장면의 일부를 언제든지 가상 장면의 다른 부분으로 전환하는 데 사용된다. 이 경우, 사용자가 시야각(viewing angle)을 전환하기 위해 가상 객체를 이동하도록 제어할 필요는 없지만, 맵 컨트롤에서 타깃 영역을 직접 클릭/탭하는 것에 의해 시야각을 전환할 수 있어 사용자 조작이 크게 용이해진다.
일부 실시예에서, 맵 컨트롤의 각 맵 포인트는 가상 장면의 위치 포인트에 대응하므로, 전체 가상 장면이 특정 비율에 따라 축소되어 맵 컨트롤에 디스플레이된다. 맵 컨트롤 상에서 사용자의 제3 클릭/탭 조작이 검출될 때, 단말은 맵 컨트롤에서 사용자에 의해 클릭된/탭된 맵 포인트를 결정하고, 맵 포인트를 중심으로 사용하여 직사각형 영역을 결정할 수 있다. 직사각형 영역의 길이 대 너비 비율(length-to-width ratio)은 단말 화면의 길이 대 너비 비율과 같으며, 직사각형 영역의 크기는 사용자가 미리 설정하므로, 직사각형 영역이 클릭된/탭된 타깃 영역으로 결정된다.
308. 단말은 타깃 영역에 대응하는 타깃 장면을 가상 장면에 디스플레이하며, 타깃 장면은 캐스팅 가능 영역을 포함한다.
전술한 프로세스에서, 단말은 맵 컨트롤과 가상 장면의 매핑 관계에 따라 타깃 영역을 타깃 장면에 매핑하고, 타깃 장면을 단말 화면에 디스플레이한다. 타깃 장면은 캐스팅 가능 영역의 일부 또는 전부를 포함하므로, 사용자는 다시 클릭/탭 조작을 통해 스킬을 캐스팅할 수 있다.
도 7은 본 출원의 실시예에 따른 인터페이스의 개략도이다. 도 7을 참조하면, 가상 장면은 스킬 1 내지 스킬 4에 각각 대응하는 스킬 컨트롤(601 내지 604)을 포함한다. 사용자가 스킬 컨트롤(604)을 클릭/탭한 후, 단말이 터치 포인트에 대한 UI 컨트롤의 유형이 스킬 컨트롤이고, 트리거된 상태에서 다른 스킬 컨트롤이 없음을 검출하므로, 스킬 4에 대한 클릭/탭 조작이 검출된 것으로 결정될 수 있다. 이후, 단말은 스킬 4가 타깃 스킬임을 검출하고, 스킬 4의 캐스팅 카운트다운(605) 및 캐스팅 프롬프트 정보(606)를 가상 장면에 디스플레이한다. 현재 캐스팅 카운트다운이 3초 남았고, 캐스팅 프롬프트 정보(606)는 "화면을 클릭/탭하여 스킬을 캐스팅하세요"라는 텍스트 메시지임을 알 수 있다. 또한, 맵 컨트롤(607)도 가상 장면에 디스플레이된다. 사용자가 맵 컨트롤(607)을 클릭/탭한 후, 단말은 맵 컨트롤(607)에서 클릭된/탭된 타깃 영역(608)을 결정하고, 타깃 영역(608)에 의해 매핑된 타깃 장면(600)을 단말 화면에 디스플레이한다.
예를 들어, 단말 상에 디스플레이되는 가상 장면 화상은 가상 장면에서 카메라로 가상 장면을 관찰하여 캡처된 화상이다. 맵 컨트롤에서 수신된 제3 클릭/탭 조작에 따라, 단말은 카메라의 위치를 결정하여, 카메라의 신규 위치에 따라 타깃 장면을 가상 장면 화상에 디스플레이할 수 있다.
선택적인 구현에서, 단말은 또한 카메라의 위치를 변경하기 위한 다른 조작을 수신할 수 있으며, 이에 따라 단말의 가상 장면 화상에 디스플레이된 타깃 장면을 변경할 수 있다. 예를 들어, 단말은 시야각 이동(viewing angle movement) 영역에 대한 시야각 이동 조작을 수신할 수도 있으며, 시야각 이동 조작은 슬라이딩 조작(sliding operation)이다. 단말은 슬라이딩 조작의 방향과 거리에 따라 카메라의 이동 방향과 거리를 결정하고, 카메라의 현재 위치에 따라 이동 후 카메라의 위치를 계산하므로, 이동된 카메라가 타깃 장면의 가상 장면 화상을 캡처한다. 다른 예에서, 단말은 제어 대상 가상 객체가 이동하도록 제어하는 이동 조작을 수신할 수도 있다. 카메라는 기본적으로 촬영을 위해 제어 대상 가상 객체를 따라가도록 설정되어 있기 때문에, 가상 장면에서 제어 대상 가상 객체의 위치가 변경될 때 그에 따라 카메라가 이동하고 가상 장면 화상에 디스플레이되는 타깃 장면도 그에 따라 변경된다.
사용자는 전술한 방법 중 어느 하나를 사용하여 단말이 타깃 장면의 가상 장면 화상을 디스플레이하도록 한 다음 타깃 장면의 가상 장면 화상에서 캐스팅 위치를 선택할 수 있다.
309. 단말은 캐스팅 가능 영역에서 제2 클릭/탭 조작을 검출한다.
전술한 프로세스에서, 단말은 타깃 장면의 캐스팅 가능 영역에서 사용자의 제2 클릭/탭 조작을 검출한다. 단말은 전술한 단계(306)에서 캐스팅 가능 영역에 대한 캐스팅 템플릿을 추가할 수 있고 캐스팅 템플릿은 캐스팅 템플릿 외부 영역에서 스킬의 캐스팅이 무효임을 지시하는 데 사용되기 때문이다. 이후, 타깃 장면에서 사용자의 제2 클릭/탭 조작이 다시 검출되면, 단말은 제2 클릭/탭 조작에 의해 지시된 캐스팅 위치가 캐스팅 템플릿에 있는지를 검출하여 캐스팅 위치가 캐스팅 가능 영역에 있는지를 판정할 수 있다. 구체적으로, 캐스팅 위치가 캐스팅 템플릿에 있을 때 캐스팅 위치가 캐스팅 가능 영역에 있는 것으로 결정되고 다음 단계(310)가 수행되며; 그렇지 않고, 캐스팅 위치가 캐스팅 템플릿에 없을 때, 캐스팅 위치가 캐스팅 가능 영역 밖에 있는 것으로 결정되고, 스킬이 캐스팅되지 않으며, 클릭/탭 조작이 무효한 조작 또는 오조작으로 간주된다.
310. 단말은 캐스팅 가능 영역에서의 제2 클릭/탭 조작에 응답하여, 제어 대상 가상 객체를 제어하여, 제2 클릭/탭 조작에 의해 지시되는 캐스팅 위치에서 스킬을 캐스팅한다.
전술한 프로세스에서, 단말이 캐스팅 가능 영역에서 사용자의 제2 클릭/탭 조작을 검출한 후, 단말은 캐스팅 가능 영역에서 사용자의 제2 클릭/탭 조작에 응답하여 단말 화면에서 제2 클릭/탭 조작에 의해 지시되는 캐스팅 위치의 화면 좌표를 획득할 수 있으며, 화면 좌표를 가상 장면의 캐스팅 위치의 장면 좌표에 매핑하여, 장면 좌표에서 스킬을 캐스팅하도록 제어 대상 가상 객체를 제어할 수 있다.
일부 실시예에서, 단말이 화면 좌표를 장면 좌표에 매핑할 때, 다음 수식:
Figure pct00001
의 역행렬을 사용하여 2차원 화면의 화면 좌표를 3차원 장면 FocusPoint의 화면 좌표로 변환할 수 있다.
Figure pct00002
는 카메라의 고유 행렬(intrinsic matrix)이고,
Figure pct00003
는 x축 방향의 카메라 초점거리를 나타내며,
Figure pct00004
는 y축 방향의 카메라 초점거리를 나타내고,
Figure pct00005
Figure pct00006
는 카메라의 조리개 중심이다.
Figure pct00007
는 카메라의 외적 행렬(extrinsic matrix)이고, R은 회전 행렬을 나타내며, T는 오프셋 벡터를 나타낸다.
Figure pct00008
,
Figure pct00009
Figure pct00010
는 3차원 장면에서 x축, y축, z축에서의 각각 캐스팅 위치의 장면 좌표를 나타내고,
Figure pct00011
Figure pct00012
는 각각 2차원 화면에서 u축 및 v축 상의 캐스팅 위치의 좌표값을 나타내며,
Figure pct00013
는 카메라 좌표계에서 z축 상의 캐스팅 위치의 좌표값을 나타내고, f는 카메라의 초점거리를 나타낸다.
또한, 스킬의 캐스팅 위치의 장면 좌표가 결정된 후, 가상 장면에서 스킬의 예상 캐스팅 위치를 디스플레이하기 위해 스킬 지시자(skill indicator)가 호출될 수 있다. 사용자는 스킬 디스플레이를 통해 예상 캐스팅 위치가 원하는 캐스팅 위치인지 확인할 수 있다. 두 개가 일치하면, 사용자는 릴리스후에 제어 대상 가상 객체를 트리거하여 클릭/탭한 캐스팅 위치에서 스킬을 캐스팅할 수 있다.
일부 실시예에서, 두 개가 일치하지 않으면(즉, 스킬 지시자에 의해 디스플레이되는 예상 캐스팅 위치가 바람직하지 않은 경우), 사용자는 릴리스하지 않고, 화면에서 드래그 조작을 수행하므로, 단말은 캐스팅 가능 영역에서의 사용자의 드래그 조작에 응답하여, 드래그 조작의 드래그 궤적에 기반하여 가상 장면에서 드래그 조작에 의해 지시되는 캐스팅 위치를 업데이트한다. 마지막으로, 사용자가 드래그 및 릴리스를 종료한 후, 제어 대상 가상 객체가 트리거되어 드래그 궤적에서 새로 업데이트된 캐스팅 위치에서 스킬을 캐스팅한다.
스킬이 캐스팅된 후, 단말은 스킬의 효과를 추가로 정산할 수 있다. 스킬 유형에 따라 효과의 세틀먼트 규칙이 상이하다.
선택적인 구현에서, 캐스팅 가능 영역에 대한 제2 클릭/탭 조작을 수신한 후, 단말은 제2 클릭/탭 조작에 의해 지시된 캐스팅 위치에 스킬 서클(skill circle)을 디스플레이한다. 예를 들어, 단말은 캐스팅 위치에 제1 스킬 서클을 디스플레이하고 - 제1 스킬 서클은 스킬을 캐스팅하여 생성되는 스킬 효과의 영향 범위(influence range)를 식별하는 데 사용됨 -; 그리고 제어 대상 가상 객체를 제어하여 제1 스킬 서클에서 스킬을 캐스팅한다.
예를 들어, 스킬 서클의 모양과 크기는 스킬의 영향 범위에 따라 결정된다. 예를 들어, 스킬 서클의 모양은 원형 또는 타원형일 수 있으며, 스킬 서클의 중심점은 선택된 캐스팅 위치의 제2 클릭/탭 조작에 의해 선택된 위치 포인트에 있으며, 스킬 서클의 반경은 효과를 내기 위한 스킬의 가장 먼 거리이다.
예를 들어, 스킬 서클은 스킬의 실제 영향 범위를 결정하는 데 사용된다. 스킬이 AOE 스킬일 때, 스킬을 캐스팅하면 스킬 서클의 모든 타깃에게 스킬 효과가 발생한다. 스킬이 단일 타깃 공격 스킬일 때, 스킬이 캐스팅된 후 단말은 스킬 서클에 공격 가능한 타깃이 있는지 판단한다. 하나의 공격 가능한 타깃이 있으면, 타깃에게 스킬 효과가 발생하며; 공격 가능한 타깃이 복수이면, 복수의 타깃 중에서 하나의 타깃을 선택하여 그에 대해 스킬 효과를 생성하고; 공격 가능한 타깃이 없으면 이 스킬 캐스팅에 대한 액션 타깃이 없으며 어떤 유닛에도 스킬 효과가 생성되지 않는다.
선택적인 구현에서, 스킬은 단일 타깃에 대한 스킬 효과를 생성하는 데 사용되며, 제1 스킬 서클은 적어도 2개의 타깃을 포함한다. 단말은 타깃 결정 원칙에 따라 제1 스킬 서클의 적어도 2개의 타깃으로부터 제1 타깃을 결정하고; 제어 대상 가상 객체를 제어하여 제1 스킬을 캐스팅하여, 타깃에 스킬 효과를 생성한다. 타깃 결정의 원칙은 가장 가까운 거리 우선 원칙(principle of nearest distance first), 가장 낮은 헬스 포인트 우선 원칙(principle of lowest health point first), 가장 낮은 헬스 바 우선 원칙(principle of lowest health bar first)을 포함한다.
가장 가까운 거리 우선 원칙은 스킬 서클에서 스킬 서클의 중심점에 가장 가까운 타깃을 공격 타깃으로 결정하는 것이다. 가장 낮은 헬스 포인트 우선 원칙은 스킬 서클에서 헬스 포인트가 가장 낮은 타깃을 공격 타깃으로 정하는 것이다. 가장 낮은 헬스 바 우선 원칙은 스킬 서클에서 현재 헬스 포인트 대 전체 헬스 포인트의 비율이 가장 작은 타깃을 공격 타깃으로 결정하는 것이다.
확실히, 최종 공격 타깃은 다르게는 다른 타깃 결정 원칙에 따라 복수의 타깃으로부터 결정될 수 있다. 예를 들어, 제1 유형의 타깃은 타깃의 유형에 따라 먼저 공격 타깃으로 결정될 수 있다. 예를 들어, 타깃의 유형은 다른 사용자에 의해 제어되는 다른 가상 객체, 몬스터, 군인, 프로그램에 의해 제어되는 건물 등을 포함할 수 있다. 제1 유형은 다른 사용자가 제어하는 다른 가상 객체일 수 있다.
다른 예에서, 공격 상태에서의 타깃은 다르게는 타깃의 상태에 따라 먼저 공격받을 수 있다. 일부 가상 객체는 방어 스킬을 가지기 때문에 방어 상태의 가상 객체는 높은 방어 값(high defense value)을 갖는다. 이 경우, 단말은 높은 방어 값을 가지는 타깃을 피하기 위해 먼저 공격 상태에서의 타깃을 공격하는 것을 선택할 수 있다.
도 8은 본 출원의 실시예에 따른 인터페이스의 개략도이다. 도 8을 참조하면, 가상 장면(700)은 스킬 1 내지 스킬 4에 각각 대응하는 스킬 컨트롤(701 내지 704)을 포함한다. 사용자가 스킬 컨트롤(704)을 클릭/탭한 후, 단말은 터치 포인트에 대한 UI 컨트롤의 유형이 스킬 컨트롤이고, 트리거된 상태에서 다른 스킬 컨트롤이 없음을 검출하므로, 스킬 4에 대한 클릭/탭 조작이 검출된 것으로 결정될 수 있다. 이후, 단말은 스킬 4가 타깃 스킬임을 검출하고, 스킬 4의 캐스팅 카운트다운(705) 및 캐스팅 프롬프트 정보(706)를 가상 장면에 디스플레이한다. 현재 캐스팅 카운트다운이 4초 남았고, 캐스팅 프롬프트 정보(706)는 "화면을 클릭/탭하여 스킬을 캐스팅하세요"라는 텍스트 메시지임을 알 수 있다. 사용자가 가상 장면의 캐스팅 가능 영역에서 캐스팅 위치(707)를 클릭/탭하는 것에 응답하여, 단말은 캐스팅 위치(707)에서 제1 스킬 서클(710)을 디스플레이하고, 제어 대상 가상 객체를 제어하여 제1 스킬 서클(710)에서 스킬 4를 직접 캐스팅한다.
전술한 선택적 기술적 솔루션의 임의의 조합을 사용하여 본 출원의 선택적 실시예를 형성할 수 있다. 세부 사항은 여기서 다시 설명하지 않는다.
본 출원의 실시예에 의해 제공되는 방법에서, 가상 장면에서 임의의 스킬에 대한 제1 클릭/탭 조작에 응답하여, 스킬의 스킬 유형이 획득되고; 스킬의 스킬 유형이 화면 클릭/탭을 기반으로 캐스팅 위치를 선택하는 것을 지원하는 타깃 스킬인 것에 응답하여, 제어 대상 가상 객체가 위치된 위치 및 스킬의 캐스팅 범위에 따라 가상 장면에서 스킬의 캐스팅 가능 영역이 결정되며; 캐스팅 가능 영역에서 제2 클릭/탭 조작에 응답하여, 제어 대상 가상 객체는 제2 클릭/탭 조작에 의해 지시된 캐스팅 위치에서 스킬을 캐스팅하도록 제어된다. 스킬을 먼저 클릭/탭한 다음 캐스팅 위치를 클릭/탭하여 스킬을 캐스팅하는 이 인간-컴퓨터 상호작용 방법은, 휠 가상 조이스틱 및 스킬 조이스틱에 기반한 복잡한 드래그 조작 없이 두 번의 클릭/탭 조작을 기반으로 스킬을 캐스팅할 수 있으며, 휠 가상 조이스틱이 캐스팅 범위에 매핑될 때 발생하는 오프셋 에러를 방지할 수 있다. 따라서, 이 방법은 조준 정확도가 더 높고 조작 난이도가 낮아서, 인간-컴퓨터 상호작용이 보다 효율적이고 사용자 경험이 향상된다.
예를 들어, 사용자는 스킬의 영향 범위를 보다 정확하게 선택하고 조준 정확도를 향상시키기 위해, 캐스팅 가능 영역에서 캐스팅 영역을 추가로 프레이밍할(frame) 수 있다.
도 9는 본 출원의 실시예에 따른 가상 객체 제어 방법의 흐름도이다. 도 9를 참조하면, 본 실시예는 단말에 적용되며, 단말은 도 1에 도시된 제1 단말(120) 또는 제2 단말(160)일 수 있다. 이 실시예에는 다음 단계를 포함한다.
801. 단말은 가상 장면에서 스킬의 제1 클릭/탭 조작에 응답하여 스킬의 스킬 유형을 획득한다.
802. 단말은 스킬의 스킬 유형이 타깃 스킬인 것에 응답하여, 제어 대상 가상 객체가 위치된 위치 및 스킬의 캐스팅 범위에 따라 가상 장면에서 스킬의 캐스팅 가능 영역을 결정하고, 타깃 스킬은 화면 클릭/탭에 기반하여 캐스팅 위치를 선택하는 것을 지원하는 스킬이다.
803. 단말은 캐스팅 가능 영역에서 수신된 프레이밍 조작(framing operation)에 응답하여, 제어 대상 가상 객체를 제어하여 프레이밍 조작에 의해 정의된 캐스팅 영역에서 스킬을 캐스팅하며, 프레이밍 조작은 드래그 궤적을 기반으로 캐스팅 가능 영역에서 폐쇄 패턴(closed pattern)을 정의하는 데 사용되며, 캐스팅 영역은 폐쇄 패턴이거나 캐스팅 영역은 폐쇄 패턴의 가장 작은 둘러싸는 서클(enclosing circle)이다.
프레이밍 조작은 사용자가 캐스팅 가능 영역에 폐쇄 패턴을 그리는 조작(서클을 그리는 조작)으로 이해할 수 있다. 물론, 사용자의 프레이밍 조작을 통해 그려지는 패턴은 표준 폐쇄 패턴이 아닐 수 있다. 예를 들어, 그려진 패턴은 반 폐쇄되거나 십자선(cross line)이 있을 수 있다. 이 경우, 단말은 자동으로 사용자가 그린 패턴을 폐쇄 패턴으로 최적화하여, 프레이밍 조작에 대응하는 폐쇄 패턴을 획득할 수 있다.
단말은 폐쇄 패턴을 스킬의 캐스팅 영역으로 사용할 수 있다. 단말은 다르게는 폐쇄 패턴의 가장 작은 둘러싸는 서클을 스킬의 캐스팅 영역으로 사용할 수 있으며, 즉, 사용자는 프레이밍 조작을 통해 스킬 캐스팅 영역의 대략적인 크기를 프레이밍한 다음, 단말이 폐쇄 패턴의 가장 작은 둘러싸는 서클을 최종 캐스팅 영역으로 결정할 수 있다.
예를 들어, 사용자에 의해 프레임된 캐스팅 영역이 과도하게 커지는 것을 방지하기 위해, 단말은 프레이밍된 캐스팅 영역이 유효한 캐스팅 영역으로 결정되기 전에 캐스팅 영역이 면적 임계값보다 작은지를 확인해야 한다.
단말은 캐스팅 가능 영역에서 수신된 프레이밍 조작에 응답하여 프레이밍 조작에 의해 정의된 캐스팅 영역의 영역 면적(region area)을 계산하고; 영역 면적이 면적 임계값보다 작은 것에 응답하여, 제어 대상 가상 객체를 제어하여 프레이밍 조작에 의해 정의된 캐스팅 영역에서 스킬을 캐스팅한다.
영역 면적이 면적 임계값보다 큰 것에 응답하여, 단말은 이번에 선택한 캐스팅 영역이 무효 영역인 것으로 결정하고, 조작이 무효임을 지시하는 프롬프트 정보를 디스플레이하여, 사용자에게 캐스팅 영역을 계속 선택하거나 또는 이번에는 스킬 캐스팅 프로세스를 종료하도록 프롬프트한다.
예를 들어, 이전 실시예의 스킬 서클에 대한 설명을 참조하면, 본 실시예에서는 대응하는 스킬 서클을 캐스팅 영역에도 디스플레이하여 스킬의 실제 영향 범위를 디스플레이할 수 있다.
단말은 영역 면적이 면적 임계값보다 작은 것에 응답하여 제2 스킬 서클을 캐스팅 영역에 디스플레이하고 - 제2 스킬 서클은 스킬을 캐스팅하여 생성되는 스킬 효과의 영향 범위를 식별하는 데 사용되며, 제2 스킬 서클의 모양은 캐스팅 영역과 동일함 -, 그리고 제어 대상 가상 객체를 제어하여 제2 스킬 서클에서 스킬을 캐스팅한다.
예를 들어, 앞선 실시예에서 스킬 서클에 복수의 타깃이 있을 때 최종 공격 타깃을 결정하는 방법에 대한 설명을 참조하면, 본 실시예에서 최종 공격 타깃도 이 방법에 따라 결정될 수 있다.
즉, 스킬은 단일 타깃에 스킬 효과를 내기 위해 사용되며, 제2 스킬 서클은 적어도 2개의 타깃을 포함한다. 단말은 타깃 결정 원칙에 따라 제2 스킬 서클에서 적어도 2개의 타깃으로부터 제2 타깃을 결정하고; 스킬을 캐스팅하여 제2 타깃에 스킬 효과를 생성하도록 제어 대상 가상 객체를 제어한다. 타깃 결정의 원칙은 가장 가까운 거리 우선 원칙, 가장 낮은 헬스 포인트 우선 원칙, 가장 낮은 헬스 바 우선 원칙을 포함한다.
결론적으로, 본 실시예의 방법에 따르면, 캐스팅 영역이 캐스팅 가능 영역에 프레이밍되므로, 사용자가 스킬 캐스팅의 영역 크기를 제어하며, 이는 사용자가 스킬 캐스팅 영역을 조준하는 정확도를 더욱 향상시키고, 스킬을 정확하게 캐스팅하는 조작의 어려움을 줄여서, 보다 효율적인 인간-컴퓨터 상호작용과 향상된 사용자 경험을 제공한다.
도 10은 본 출원의 실시예에 따른 터치 화면 스킬 캐스팅의 개략적인 원리도이다. 도 10을 참조하면, 800으로 도시된 예시적인 시나리오에서, 단말은 다음과 같은 프로세스를 통해 터치 화면 스킬(즉, 타깃 스킬)을 캐스팅할 수 있다: 단말은 먼저 현재 터치 포인트가 다른 UI 컨트롤 상에 있는지를 판정하며, 즉, 터치 포인트에 다른 가상 버튼, 예를 들어 미니맵(맵 컨트롤), 스토어(스토어 컨트롤), 모바일 조이스틱과 같은 비스킬 컨트롤의 가상 버튼이 있는지를 검출하고, 이러한 비스킬 컨트롤 상에 없는 터치 이벤트는 이번에는 스킬 캐스팅에 필요한 터치 이벤트로 간주된다. 그다음, 현재 터치 포인트 상의 스킬 버튼이 눌렸는지가 검출되며, 즉 현재 터치 포인트가 임의의 스킬의 스킬 컨트롤 상에 있는 지가 검출된다. 현재 터치 포인트가 임의의 스킬의 스킬 컨트롤 상에 있으면, 플레이어가 2개의 스킬을 동시에 조작할 수 없기 때문에, 다른 스킬 컨트롤이 눌렸는지를 판정, 즉 트리거된 다른 터치 화면 캐스팅 스킬이 있는지를 확인하는 것이 필요하다. 이 터치 스킬 조작은 다른 스킬 컨트롤을 누르지 않은 경우에만 수신될 수 있다.
또한, 스킬이 구성될 때 터치 화면 스킬에 대한 관련 파라미터가 구성되며, 예를 들어 IsFullScreenSkill 식별자가 스킬에 추가된다. 전체 화면 터치 이벤트가 검출될 때 단말은 현재 스킬 컨트롤에 대응하는 스킬이 IsFullScreenSkill 식별자를 가지는지를 검출한다. 스킬이 IsFullScreenSkill 식별자를 가질 때 전체 화면 터치 이벤트에 의해 스킬이 트리거된 것으로 간주된다. 이 경우, 현재 전체 화면 터치 이벤트의 터치 식별자 FingerID 및 차단 식별자 CurSkill이 설정될 수 있다. 터치 식별자 FingerID는 현재 전체 화면 터치 이벤트를 다른 눌린 터치 이벤트와 구별하는 데 사용된다. 차단 식별자 CurSkill은 현재 조작되는 스킬의 고유성을 보장하기 위해 다른 컨트롤의 눌려진 이벤트를 차단하는 데 사용된다. 위의 모든 단계가 성공적으로 통과될 때, 단말은 스킬 컨트롤 상의 터치 포인트(캐스팅 위치의 화면 좌표)에 따라 가상 장면에서 장면 좌표 FocusPoint를 계산하고, 장면 좌표 FocusPoint에 따라 스킬 지시자의 성능을 처리하여, 플레이어에게 예상 캐스팅 위치의 미리보기 효과(preview effect)를 보여준다.
또한, 터치 포인트가 화면 상에서 이동할 때, 화면은 드래그 상태가 된다. 먼저, 현재 눌려진 이벤트의 터치 식별자 FingerID가 이전에 트리거된 전체 화면 터치 이벤트의 FingerID와 일치하는지가 검출되며, 즉, 터치 포인트가 이전 터치 식별자 FingerID와 동일한지 그리고 차단 식별자 CurSkill이 있는지가 검출된다. 터치 식별자 FingerID가 동일하고 차단 식별자 CurSkill이 있을 때, 현재 눌려진 이벤트에 의해 트리거되는 스킬이 있는지를 판정한다. 이 두 조건이 충족될 때, 단말은 현재 터치 포인트로 장면 좌표 FocusPoint를 업데이트하며, 즉, 신규 터치 포인트의 화면 좌표에 따라 매핑하여 신규 장면 좌표 FocusPoint를 획득한다.
또한, 터치 포인트가 리프트될 때(lifted)(플레이어 릴리스), 화면은 릴리스 상태가 된다. 또한, 단말은 현재 눌려진 이벤트의 FingerID가 이전에 트리거된 전체 화면 터치 이벤트의 FingerID와 일치하는지를 검출하며, 즉, 터치 포인트가 이전 터치 식별자 FingerID와 동일한지 그리고 차단 식별자 CurSkill가 있는지를 검출한다. 터치 식별자 FingerID가 동일하고 차단 식별자 CurSkill이 있을 때, 현재 눌려진 이벤트에 의해 트리거되는 스킬이 있으면, 두 조건이 충족될 때 단말은 관련 스킬 데이터(차단 식별자 CurSkill, 최종 장면 좌표 FocusPoint 등을 포함)을 송신하고, 서버에 스킬을 캐스팅하기를 요청하며, 프레임 동기화 기술을 기반으로 게임에 참여하는 다른 단말과 동기화한다.
구체적으로, 화면을 탭하여 스펠을 캐스팅할 수 있는 터치 화면 스킬의 경우, 플레이어는 스킬 컨트롤을 탭하여 화면 스펠(spell) 캐스팅 모드로 진입하고, 화면 스펠 캐스팅 모드의 클로징 카운트다운(즉, 스킬의 캐스팅 카운트다운) 및 "화면을 탭하여 스킬을 캐스팅하세요"라는 프롬프트 메시지가 캐스팅 화면 중앙과 하단에 디스플레이된다. 또한, 캐스팅 템플릿 레이어(layer)가 스킬의 캐스팅 범위에 추가된다. 캐스팅 템플릿은 템플릿으로 덮인 영역을 탭하여 스펠 캐스팅할 수 있음을 지시한다. 플레이어가 영역 외부의 위치를 탭하면 스펠이 캐스팅되지 않는다. 카운트다운 동안, 플레이어가 화면을 탭할 때, 가상 장면의 캐스팅 가능 영역에서 탭된 캐스팅 위치에 스킬이 직접 캐스팅된다. 화면 외부의 위치에서 스킬을 캐스팅해야 하면, 플레이어는 먼저 미니맵을 탭하여 화면을 대응하는 위치로 이동시킨 다음 화면을 탭하여 스킬을 캐스팅할 수 있다.
본 출원의 이 실시예에서, 캐스팅 범위가 큰 스킬에 대해 스펠을 캐스팅(즉, 릴리스)하기 위해 화면을 탭하는 메커니즘이 추가되었다. 플레이어는 화면을 탭하여 탭된 캐스팅 위치에서 스펠을 직접 캐스팅할 수 있어 "보이는 대로 얻는 것"의 상호작용 효과를 얻을 수 있으며, 이는 스펠 캐스팅 동안 조준 정확도를 향상시키고 플레이어의 플레잉 프로세스(playing process)를 보다 편안하게 만들며, 사용자 경험을 최적화한다. 확실히, 화면을 탭하여 스펠을 캐스팅할 수 있는 터치 화면 스킬의 경우, 단말은 두 가지 호환 가능한 스펠 캐스팅 방법을 제공할 수도 있으므로, 사용자는 화면을 탭하거나 기존의 휠 가상 조이스틱을 기반으로 스펠을 캐스팅할 수 있어서, 인간-컴퓨터 상호작용의 풍부하고 다양한 방법을 제공한다.
도 11은 본 출원의 실시예에 따른 가상 객체 제어 장치의 개략적인 구조도이다. 도 11을 참조하면, 장치는,
스킬 컨트롤에 대한 제1 클릭/탭 조작에 응답하여 스킬이 타깃 스킬인지를 검출하도록 구성된 검출 모듈(901) - 타깃 스킬은 화면 클릭/탭에 기반하여 캐스팅 위치를 선택하는 것을 지원하는 스킬임 -;
스킬이 타깃 스킬인 것에 응답하여, 제어 대상 가상 객체가 위치된 위치 및 스킬의 캐스팅 범위에 따라 스킬의 캐스팅 가능 영역을 가상 장면에 디스플레이하도록 구성된 결정 모듈(902); 및
캐스팅 가능 영역에서의 제2 클릭/탭 조작에 응답하여, 제어 대상 가상 객체를 제어하여 제2 클릭/탭 조작에 의해 지시된 캐스팅 위치에서 스킬을 캐스팅하도록 구성된 제어 모듈(903)을 포함한다.
본 출원의 실시예에 의해 제공되는 장치에서, 가상 장면에서 임의의 스킬에 대한 제1 클릭/탭 조작에 응답하여, 스킬의 스킬 유형이 획득되고; 스킬의 스킬 유형이 화면 클릭/탭을 기반으로 캐스팅 위치를 선택하는 것을 지원하는 타깃 스킬인 것에 응답하여, 제어 대상 가상 객체가 위치된 위치 및 스킬의 캐스팅 범위에 따라 가상 장면에서 스킬의 캐스팅 가능 영역이 결정되며; 캐스팅 가능 영역에서 제2 클릭/탭 조작에 응답하여, 제어 대상 가상 객체는 제2 클릭/탭 조작에 의해 지시된 캐스팅 위치에서 스킬을 캐스팅하도록 제어된다. 스킬을 먼저 클릭/탭한 다음 캐스팅 위치를 클릭/탭하여 스킬을 캐스팅하는 이 인간-컴퓨터 상호작용 방법은, 휠 가상 조이스틱 및 스킬 조이스틱에 기반한 복잡한 드래그 조작 없이 두 번의 클릭/탭 조작을 기반으로 스킬을 캐스팅할 수 있으며, 휠 가상 조이스틱이 캐스팅 범위에 매핑될 때 발생하는 오프셋 에러를 방지할 수 있다. 따라서, 이 방법은 조준 정확도가 더 높고 조작 난이도가 낮아서, 인간-컴퓨터 상호작용이 보다 효율적이고 사용자 경험이 향상된다.
가능한 구현에서, 제어 모듈(903)은:
캐스팅 가능 영역에서 제2 클릭/탭 조작에 응답하여 화면에서 제2 클릭/탭 조작에 의해 지시된 캐스팅 위치의 화면 좌표를 획득하고;
화면 좌표를 가상 장면에서의 캐스팅 위치의 장면 좌표로 매핑하고; 그리고
제어 대상 가상 객체를 제어하여 장면 좌표에서 스킬을 캐스팅하도록 구성된다.
가능한 구현에서, 도 11의 장치 구성에 기반하여, 장치는
맵 컨트롤에 대한 제3 클릭/탭 조작에 응답하여, 맵 컨트롤에서 클릭된/탭된 타깃 영역을 결정하고; 타깃 영역에 대응하는 타깃 장면을 가상 장면에 디스플레이하고 - 타깃 장면은 캐스팅 가능 영역을 포함함 -; 타깃 장면의 캐스팅 가능 영역에서 제2 클릭/탭 조작을 검출하도록 구성된 매핑 검출 모듈을 더 포함한다.
가능한 구현에서, 캐스팅 가능 영역이 라운드 영역인 경우에, 결정 모듈(902)은:
가상 장면에서 제어 대상 가상 객체가 위치되는 위치를 캐스팅 가능 영역의 중심으로 결정하고, 스킬의 가장 먼 캐스팅 거리를 캐스팅 가능 영역의 반경으로 결정하며; 그리고
캐스팅 가능 영역의 캐스팅 템플릿을 가상 장면에 디스플레이하도록 구성되며, 캐스팅 템플릿은 캐스팅 템플릿 외부의 영역에서 스킬의 캐스팅이 무효함을 지시하는 데 사용된다.
가능한 구현에서, 도 11의 장치 구성에 기반하여, 장치는,
스킬이 타깃 스킬인 것에 응답하여 스킬의 캐스팅 카운트다운 또는 캐스팅 프롬프트 정보 중 적어도 하나를 가상 장면에 디스플레이하도록 구성된 디스플레이 모듈을 더 포함한다.
가능한 구현에서, 제어 모듈(903)은 스킬 컨트롤에 대응하는 휠 가상 조이스틱상에서 수신된 스킬 캐스팅 조작에 응답하여, 제어 대상 가상 객체를 제어하여 스킬 캐스팅 조작에 의해 지시된 위치에서 스킬을 캐스팅하도록 구성된다.
가능한 구현에서, 검출 모듈(901)은 추가로,
화면에서 제1 클릭/탭 조작이 검출되는 경우, 제1 클릭/탭 조작에 의해 지시된 위치에 UI 컨트롤의 존재에 응답하여 UI 컨트롤의 제어 유형을 획득하고;
UI 컨트롤의 컨트롤 유형이 스킬에 대응하는 스킬 컨트롤이고, 다른 스킬 컨트롤이 스킬과 상이한 다른 스킬의 스킬 컨트롤인 것에 응답하여, 다른 스킬 컨트롤의 트리거 상태를 획득하고; 그리고
다른 스킬 컨트롤이 트리거된 상태에 있지 않은 것에 응답하여, 스킬 컨트롤에 대한 제1 클릭/탭 조작이 검출된 것으로 결정하도록 구성된다.
가능한 구현에서, 도 11의 장치 구성에 기반하여, 장치는,
캐스팅 가능 영역에서의 드래그 조작에 응답하여, 드래그 조작의 드래그 궤적에 기반하여 가상 장면에서 드래그 조작에 의해 지시된 캐스팅 위치를 업데이트하도록 구성된 업데이트 모듈을 더 포함한다.
가능한 구현에서, 장치는
캐스팅 위치에 제1 스킬 서클을 디스플레이하도록 구성된 디스플레이 모듈 - 제1 스킬 서클은 스킬을 캐스팅하는 것에 의해 생성되는 스킬 효과의 영향 범위를 식별하는 데 사용됨 -을 더 포함하고;
제어 모듈은 제어 대상 가상 객체를 제어하여 제1 스킬 서클에서 스킬을 캐스팅하도록 구성된다.
가능한 구현에서, 스킬은 단일 타깃에 대한 스킬 효과를 생성하는 데 사용되며, 제1 스킬 서클은 적어도 2개의 타깃을 포함하며;
제어 모듈은 타깃 결정 원칙에 따라 제1 스킬 서클에서 적어도 2개의 타깃으로부터 제1 타깃을 결정하도록 구성되고; 그리고
제어 모듈은 제어 대상 가상 객체를 제어하여 제1 타깃에 대해 스킬 효과를 생성하도록 스킬을 캐스팅하도록 구성되며;
타깃 결정 원칙은 가장 가까운 거리 우선 원칙, 가장 낮은 헬스 포인트 우선 원칙, 가장 낮은 헬스 바 우선 원칙을 포함한다.
가능한 구현에서, 제어 모듈은 캐스팅 가능 영역에서 수신된 프레이밍 조작에 응답하여, 제어 대상 가상 객체를 제어하여, 프레이밍 조작에 의해 정의된 캐스팅 영역에서 스킬을 캐스팅하도록 구성되며, 프레이밍 조작은 드래그 궤적에 기반한 캐스팅 가능 영역의 폐쇄 패턴을 정의하는 데 사용되고, 캐스팅 영역은 폐쇄 패턴이거나, 캐스팅 영역은 폐쇄 패턴의 가장 작은 둘러싸는 서클이다.
가능한 구현에서, 제어 모듈은 캐스팅 가능 영역에서 수신된 프레이밍 조작에 응답하여 프레이밍 조작에 의해 정의된 캐스팅 영역의 영역 면적을 계산하도록 구성되고; 그리고
제어 모듈은 영역 면적이 면적 임계값보다 작은 것에 응답하여, 제어 대상 가상 객체를 제어하여, 프레이밍 조작에 의해 정의된 캐스팅 영역에서 스킬을 캐스팅하도록 구성된다.
가능한 구현에서, 장치는,
영역 면적이 면적 임계값보다 작은 것에 응답하여 제2 스킬 서클을 캐스팅 영역에 디스플레이하도록 구성되는 디스플레이 모듈 - 제2 스킬 서클은 스킬을 캐스팅하는 것에 의해 생성된 스킬 효과의 영향 범위를 식별하는 데 사용되며, 제2 스킬 서클의 모양은 캐스팅 영역과 동일함 -을 더 포함하며;
제어 모듈은 제어 대상 가상 객체를 제어하여 제2 스킬 서클에서 스킬을 캐스팅하도록 구성된다.
가능한 구현에서, 스킬은 단일 타깃에 대한 스킬 효과를 생성하는 데 사용되며, 제2 스킬 서클은 적어도 2개의 타깃을 포함하며;
제어 모듈은 타깃 결정 원칙에 따라 제2 스킬 서클에서 적어도 2개의 타깃으로부터 제2 타깃을 결정하도록 구성되고; 그리고
제어 모듈은 제어 대상 가상 객체를 제어하여 제2 타깃에 대한 스킬 효과를 생성하도록 스킬을 캐스팅하도록 구성되며;
타깃 결정 원칙은 가장 가까운 거리 우선 원칙, 가장 낮은 헬스 포인트 우선 원칙, 가장 낮은 헬스 바 우선 원칙을 포함한다.
전술한 실시예에서 제공되는 가상 객체 제어 장치가 가상 객체를 제어하는 경우, 전술한 기능 모듈의 분할만이 설명을 위한 예로서 사용된다. 실제 애플리케이션에서, 기능은 요건에 따라 상이한 기능 모듈에 할당되고 완성될 수 있다. 즉, 단말 디바이스의 내부 구조를 서로 다른 기능 모듈로 나누어 상술한 기능의 전부 또는 일부를 완성한다. 또한, 전술한 실시예에서 제공된 가상 객체 제어 장치 및 가상 객체 제어 방법은 동일한 개념에 속한다. 구체적인 구현 프로세스에 대해서는 가상 객체 제어 방법의 실시예를 참조하고, 여기서 다시 상세한 설명은 생략한다.
도 12는 본 출원의 실시예에 따른 단말의 개략적인 구조도이다. 단말(1000)은 스마트폰, 태블릿 컴퓨터, MP3 플레이어, MP4 플레이어, 노트북 컴퓨터 또는 데스크탑 컴퓨터일 수 있다. 단말(1000)은 사용자 장비, 휴대용 단말, 랩탑 단말, 데스크탑 단말 등으로 지칭될 수도 있다.
일반적으로 단말(1000)은 프로세서(1001) 및 메모리(1002)를 포함한다.
프로세서(1001)는 하나 이상의 처리 코어, 예를 들면, 4-코어 프로세서 또는 8-코어 프로세서를 포함할 수 있다. 프로세서(1001)는 DSP(Digital Signal Processor), FPGA(Field Programmable Gate Array), PLA(Programmable Logic Array) 중 적어도 하나의 하드웨어 형태로 구현될 수 있다. 프로세서(1001)는 또한 메인 프로세서 및 보조 프로세서(coprocessor)를 포함할 수 있다. 메인 프로세서는 깨어 있는 상태에서 데이터를 처리하는 프로세서로, CPU(Central Processing Unit)라고도 한다. 보조 프로세서는 대기 상태에서 데이터를 처리하도록 구성된 저전력 프로세서이다. 일부 실시예에서, 프로세서(1001)는 그래픽 처리 유닛(graphics processing unit, GPU)과 통합될 수 있다. GPU는 디스플레이에 디스플레이해야 하는 콘텐츠를 렌더링하고 그리는 역할을 하도록 구성된다. 일부 실시예에서, 프로세서(1001)는 AI 프로세서를 더 포함할 수 있다. AI 프로세서는 기계 학습과 관련된 컴퓨팅 작동을 처리하도록 구성된다.
메모리(1002)는 하나 이상의 컴퓨터가 판독가능한 저장 매체를 포함할 수 있다. 컴퓨터가 판독 가능한 저장 매체는 비일시적일 수 있다. 메모리(1002)는 고속 랜덤 액세스 메모리 및 비휘발성 메모리, 예를 들어, 하나 이상의 디스크 저장 디바이스 또는 플래시 저장 디바이스를 더 포함할 수 있다. 일부 실시예에서, 메모리(1002) 내의 컴퓨터가 판독가능한 비일시적 저장 매체는 적어도 하나의 명령을 저장하도록 구성된다. 적어도 하나의 명령은 본 출원의 실시예에서 제공되는 가상 객체 제어 방법을 수행하기 위해 프로세서(1001)에 의해 실행된다.
일부 실시예에서, 단말(1000)은 선택적으로: 주변기기 인터페이스(1003) 및 적어도 하나의 주변기기(peripheral)를 포함할 수 있다. 프로세서(1001), 메모리(1002) 및 주변기기 인터페이스(1003)는 버스 또는 신호 케이블을 이용하여 연결될 수 있다. 각 주변기기는 버스, 신호 케이블 또는 회로 기판을 이용하여 주변기기 인터페이스(1003)에 연결될 수 있다. 구체적으로, 주변기기는 무선 주파수(radio frequency, RF) 회로(1004), 터치 디스플레이 화면(1005), 카메라 어셈블리(1006), 오디오 회로(1007), 포지셔닝 컴포넌트(positioning component)(1008), 및 전원 공급 장치(power supply)(1009) 중 적어도 하나를 포함한다.
주변기기 인터페이스(1003)는 입출력(I/O)과 관련된 적어도 하나의 주변기기를 프로세서(1001) 및 메모리(1002)에 연결하도록 구성될 수 있다. 일부 실시예에서, 프로세서(1001), 메모리(1002), 및 주변기기 인터페이스(1003)는 동일한 칩 또는 회로 보드 상에 집적된다. 일부 다른 실시예에서, 프로세서(1001), 메모리(1002), 및 주변기기 인터페이스(1003) 중 임의의 하나 또는 둘은 독립적인 칩 또는 회로 기판 상에 구현될 수 있다. 이것은 이 실시예에서 제한되지 않는다.
RF 회로(1004)는 전자기 신호라고도 하는 RF 신호를 송신 및 수신하도록 구성된다. RF 회로(1004)는 전자기 신호를 통해 통신 네트워크 및 다른 통신 디바이스와 통신한다. RF 회로(1004)는 송신을 위해 전기 신호를 전자기 신호로 변환하거나 수신된 전자기 신호를 전기 신호로 변환한다. 선택적으로, RF 회로(1004)는 안테나 시스템, RF 트랜시버, 하나 이상의 증폭기, 튜너, 발진기, 디지털 신호 프로세서, 코덱 칩셋, 가입자 식별 모듈 카드 등을 포함한다. RF 회로(1004)는 적어도 하나의 무선 통신 프로토콜을 이용하여 다른 단말과 통신할 수 있다. 무선 통신 프로토콜에는 대도시 지역 네트워크, 이동 통신 네트워크 세대(2G, 3G, 4G 및 5G), 무선 근거리 통신망 및/또는 무선 충실도(Wi-Fi) 네트워크가 포함되지만 이에 한정되지는 않는다. 일부 실시예에서, RF(1004)는 NFC(near field communication)와 관련된 회로를 더 포함할 수 있으며, 이는 본 출원에 제한되지 않는다.
터치 디스플레이 화면(1005)은 UI를 디스플레이하도록 구성된다. UI는 그래프, 텍스트, 아이콘, 비디오 및 이들의 임의의 조합을 포함할 수 있다. 터치 디스플레이 화면(1005)이 터치 디스플레이 화면일 때, 터치 디스플레이 화면(1005)은 터치 디스플레이 화면(1005)의 표면 상에서 또는 그 위에서 터치 신호를 획득할 수 있다. 터치 신호는 처리를 위해 프로세서(1001)에 입력되는 제어 신호로 사용될 수 있다. 이 경우, 터치 디스플레이 화면(1005)은 가상 버튼 및/또는 가상 키보드를 제공하도록 더 구성될 수 있으며, 이는 또한 소프트 버튼 및/또는 소프트 키보드로도 지칭된다. 일부 실시예에서, 단말(1000)의 전면 패널에 하나의 터치 디스플레이 화면(1005)이 배치될 수 있다. 일부 다른 실시예에서, 단말(1000)의 상이한 표면 상에 각각 또는 접힌 디자인으로 배치된 적어도 2개의 터치 디스플레이 화면(1005)이 있을 수 있다. 일부 실시예에서, 터치 디스플레이 화면(1005)은 단말(1000)의 곡면 또는 접힌 면에 배치된 플렉서블 디스플레이 화면일 수 있다. 또한, 터치 디스플레이 화면(1005)은 직사각형이 아닌 불규칙한 패턴, 즉 특수한 형태의 화면으로 더 설정될 수 있다. 터치 디스플레이 화면(1005)은 LCD(Liquid Crystal Display), OLED(Organic Light Emitting Diode) 등과 같은 물질을 사용하여 제작될 수 있다.
전원 공급 장치(1009)는 단말(1000)의 어셈블리에 전원을 공급하도록 구성된다. 전원 공급 장치(1009)는 교류, 직류, 1차 배터리 또는 재충전 가능한 배터리일 수 있다. 전원 공급 장치(1009)가 충전식 배터리를 포함하는 경우, 충전식 배터리는 유선 충전식 배터리 또는 무선 충전식 배터리일 수 있다. 재충전 가능한 배터리는 급속 충전 기술을 지원하도록 더 구성될 수 있다.
당업자는 도 12에 도시된 구조가 단말(1000)에 대한 제한을 구성하지 않으며, 단말은 도면에 도시된 것보다 많거나 적은 구성 요소를 포함하거나, 일부 구성 요소가 결합되거나, 다른 구성 요소 배치가 사용될 수 있음을 이해할 수 있을 것이다.
예시적인 실시예에서, 컴퓨터가 판독 가능한 저장 매체, 예를 들어, 적어도 하나의 프로그램 코드를 포함하는 메모리가 더 제공된다. 적어도 하나의 프로그램 코드는 전술한 실시예에서 가상 객체 제어 방법을 구현하기 위해 단말의 프로세서에 의해 실행될 수 있다. 예를 들어, 컴퓨터가 판독 가능한 저장 매체는 ROM(Read-Only Memory), RAM, CD-ROM(Compact Disc Read-Only Memory), 자기 테이프, 플로피 디스크, 광 데이터 저장 디바이스 등일 수 있다.
예시적인 실시예에서, 컴퓨터 프로그램 제품 또는 컴퓨터 프로그램이 제공된다. 컴퓨터 프로그램 제품 또는 컴퓨터 프로그램은 컴퓨터 명령을 포함하고, 컴퓨터 명령은 컴퓨터가 판독 가능한 저장 매체에 저장된다. 컴퓨터 디바이스의 프로세서는 컴퓨터가 판독 가능한 저장 매체로부터 컴퓨터 명령을 읽고 컴퓨터 명령을 실행하므로, 컴퓨터 디바이스가 전술한 선택적 구현에서 제공된 가상 객체 제어 방법을 수행한다.

Claims (30)

  1. 단말에 적용 가능한, 가상 객체 제어 방법으로서,
    스킬 컨트롤(skill control)에 대한 제1 클릭/탭 조작(click/tap operation)에 응답하여 스킬의 스킬 유형을 획득하는 단계;
    상기 스킬의 스킬 유형이 타깃 스킬인 것에 응답하여, 제어 대상 가상 객체(controlled virtual object)가 위치된 위치 및 상기 스킬의 캐스팅 범위(casting range)에 따라 상기 스킬의 캐스팅 가능 영역(castable region)을 가상 장면에 디스플레이하는 단계 - 상기 타깃 스킬은 화면 클릭/탭(screen click/tap)에 기반하여 캐스팅 위치를 선택하는 것을 지원하는 스킬임 -; 및
    상기 캐스팅 가능 영역에서의 제2 클릭/탭 조작에 응답하여, 상기 제어 대상 가상 객체를 제어하여, 상기 제2 클릭/탭 조작에 의해 지시된 캐스팅 위치에서 상기 스킬을 캐스팅하는 단계
    를 포함하는 가상 객체 제어 방법.
  2. 제1항에 있어서,
    상기 캐스팅 가능 영역에서의 제2 클릭/탭 조작에 응답하여, 상기 제어 대상 가상 객체를 제어하여, 상기 제2 클릭/탭 조작에 의해 지시된 캐스팅 위치에서 상기 스킬을 캐스팅하는 단계는,
    상기 캐스팅 가능 영역에서의 상기 제2 클릭/탭 조작에 응답하여, 화면에서 상기 제2 클릭/탭 조작에 의해 지시된 상기 캐스팅 위치의 화면 좌표를 획득하는 단계;
    상기 화면 좌표를 상기 가상 장면에서의 상기 캐스팅 위치의 장면 좌표로 매핑하는 단계; 및
    상기 제어 대상 가상 객체를 제어하여 상기 장면 좌표에서 상기 스킬을 캐스팅하는 단계
    를 포함하는, 가상 객체 제어 방법.
  3. 제1항 또는 제2항에 있어서,
    상기 캐스팅 가능 영역에서의 제2 클릭/탭 조작에 응답하여, 상기 제어 대상 가상 객체를 제어하여, 상기 제2 클릭/탭 조작에 의해 지시된 캐스팅 위치에서 상기 스킬을 캐스팅하는 단계 이전에, 상기 가상 객체 제어 방법은,
    맵 컨트롤에 대한 제3 클릭/탭 조작에 응답하여, 상기 맵 컨트롤에서 클릭된/탭된 타깃 영역을 결정하는 단계;
    상기 타깃 영역에 대응하는 타깃 장면을 상기 가상 장면에 디스플레이하는 단계 - 타깃 장면은 상기 캐스팅 가능 영역을 포함함 -; 및
    상기 타깃 장면의 상기 캐스팅 가능 영역에서 상기 제2 클릭/탭 조작을 검출하는 단계
    를 더 포함하는 가상 객체 제어 방법.
  4. 제1항 또는 제2항에 있어서,
    상기 캐스팅 가능 영역이 라운드 영역(round region)인 경우, 상기 제어 대상 가상 객체가 위치된 위치 및 상기 스킬의 캐스팅 범위에 따라 상기 스킬의 캐스팅 가능 영역을 가상 장면에 디스플레이하는 단계는,
    상기 가상 장면에서, 상기 제어 대상 가상 객체가 위치되는 위치를 상기 캐스팅 가능 영역의 중심으로 결정하고, 상기 스킬의 가장 먼 캐스팅 거리를 상기 캐스팅 가능 영역의 반경으로 결정하는 단계; 및
    상기 캐스팅 가능 영역의 캐스팅 템플릿(template)을 상기 가상 장면에 디스플레이하는 단계 - 상기 캐스팅 템플릿은 상기 캐스팅 템플릿 외부의 영역에서 상기 스킬의 캐스팅이 무효임을 지시하는 데 사용됨 -
    를 포함하는, 가상 객체 제어 방법.
  5. 제1항 또는 제2항에 있어서,
    상기 스킬 컨트롤에 대한 제1 클릭/탭 조작에 응답하여 스킬의 스킬 유형을 획득하는 단계 이후에, 상기 가상 객체 제어 방법은,
    상기 스킬이 상기 타깃 스킬인 것에 응답하여 상기 스킬의 캐스팅 카운트다운(casting countdown) 또는 캐스팅 프롬프트(casting prompt) 정보 중 적어도 하나를 상기 가상 장면에 디스플레이하는 단계
    를 더 포함하는 가상 객체 제어 방법.
  6. 제1항 또는 제2항에 있어서,
    상기 스킬의 스킬 유형이 타깃 스킬인 것에 응답하여, 제어 대상 가상 객체가 위치된 위치 및 상기 스킬의 캐스팅 범위에 따라 상기 스킬의 캐스팅 가능 영역을 가상 장면에 디스플레이하는 단계 이후에, 상기 가상 객체 제어 방법은,
    상기 스킬 컨트롤에 대응하는 휠 가상 조이스틱 상에서 수신된 스킬 캐스팅 조작에 응답하여, 상기 제어 대상 가상 객체를 제어하여, 상기 스킬 캐스팅 조작에 의해 지시된 위치에서 상기 스킬을 캐스팅하는 단계
    를 더 포함하는 가상 객체 제어 방법.
  7. 제1항 또는 제2항에 있어서,
    상기 스킬 컨트롤에 대한 제1 클릭/탭 조작에 응답하여 스킬의 스킬 유형을 획득하는 단계 이전에, 상기 가상 객체 제어 방법은,
    상기 화면에서 상기 제1 클릭/탭 조작이 검출된 경우, 상기 제1 클릭/탭 조작에 의해 지시된 위치에 사용자 인터페이스(user interface, UI) 컨트롤의 존재에 응답하여, 상기 UI 컨트롤의 제어 유형을 획득하는 단계;
    상기 UI 컨트롤의 제어 유형이 상기 스킬에 대응하는 스킬 컨트롤인 것에 응답하여, 다른 스킬 컨트롤의 트리거 상태를 획득하는 단계 - 상기 다른 스킬 컨트롤은 상기 스킬과 상이한 다른 스킬의 스킬 컨트롤임 -; 및
    상기 다른 스킬 컨트롤이 트리거된 상태가 아닌 것에 응답하여 상기 스킬 컨트롤에 대한 상기 제1 클릭/탭 조작이 검출되는 것으로 결정하는 단계
    를 더 포함하는 가상 객체 제어 방법.
  8. 제1항 또는 제2항에 있어서,
    상기 캐스팅 가능 영역에서의 제2 클릭/탭 조작에 응답하여, 상기 제어 대상 가상 객체를 제어하여, 상기 제2 클릭/탭 조작에 의해 지시된 캐스팅 위치에서 상기 스킬을 캐스팅하는 단계 이전에, 상기 가상 객체 제어 방법은,
    상기 캐스팅 가능 영역에서의 드래그 조작(drag operation)에 응답하여, 상기 드래그 조작의 드래그 궤적(drag trajectory)에 기반하여 상기 가상 장면에서 상기 드래그 조작에 의해 지시되는 캐스팅 위치를 업데이트하는 단계
    를 더 포함하는 가상 객체 제어 방법.
  9. 제1항 또는 제2항에 있어서,
    상기 제어 대상 가상 객체를 제어하여 상기 캐스팅 위치에서 상기 스킬을 캐스팅하는 단계는,
    상기 캐스팅 위치에 제1 스킬 서클(skill circle)을 디스플레이하는 단계 - 상기 제1 스킬 서클은 상기 스킬을 캐스팅하는 것에 의해 생성되는 스킬 효과의 영향 범위를 식별하는 데 사용됨 -; 및
    상기 제어 대상 가상 객체를 제어하여 상기 제1 스킬 서클에서 상기 스킬을 캐스팅하는 단계
    를 포함하는, 가상 객체 제어 방법.
  10. 제9항에 있어서,
    상기 스킬은 단일 타깃에 대한 스킬 효과를 생성하는 데 사용되며, 상기 제1 스킬 서클은 적어도 2개의 타깃을 포함하고; 그리고
    상기 제어 대상 가상 객체를 제어하여 상기 제1 스킬 서클에서 상기 스킬을 캐스팅하는 단계는,
    타깃 결정 원칙에 따라 상기 제1 스킬 서클에서 적어도 2개의 타깃으로부터 제1 타깃을 결정하는 단계; 및
    상기 제어 대상 가상 객체를 제어하여, 상기 제1 타깃에 대한 스킬 효과를 생성하도록 상기 스킬을 캐스팅하는 단계
    를 포함하고,
    상기 타깃 결정 원칙은, 가장 가까운 거리 우선 원칙(principle of nearest distance first), 가장 낮은 헬스 포인트 우선 원칙(principle of lowest health point first), 가장 낮은 헬스 바 우선 원칙(principle of lowest health bar first)을 포함하는, 가상 객체 제어 방법.
  11. 제1항 또는 제2항에 있어서,
    상기 캐스팅 가능 영역에서 수신된 프레이밍 조작(framing operation)에 응답하여, 상기 제어 대상 가상 객체를 제어하여, 상기 프레이밍 조작에 의해 정의된 캐스팅 영역에서 상기 스킬을 캐스팅하는 단계
    을 더 포함하고,
    상기 프레이밍 조작은 드래그 궤적에 기반하여 상기 캐스팅 가능 영역에서 폐쇄 패턴(closed pattern)을 정의하는 데 사용되고, 상기 캐스팅 영역은 상기 폐쇄 패턴이거나 상기 캐스팅 영역은 상기 폐쇄 패턴의 가장 작은 둘러싸는 서클(smallest enclosing circle)인, 가상 객체 제어 방법.
  12. 제11항에 있어서,
    상기 캐스팅 가능 영역에서 수신된 프레이밍 조작에 응답하여, 상기 제어 대상 가상 객체를 제어하여, 상기 프레이밍 조작에 의해 정의된 캐스팅 영역에서 상기 스킬을 캐스팅하는 단계는,
    상기 캐스팅 가능 영역에서 수신된 상기 프레이밍 조작에 응답하여 상기 프레이밍 조작에 의해 정의된 상기 캐스팅 영역의 영역 면적(region area)을 계산하는 단계; 및
    상기 영역 면적이 면적 임계값보다 작은 것에 응답하여, 상기 제어 대상 가상 객체를 제어하여, 상기 프레이밍 조작에 의해 정의된 상기 캐스팅 영역에서 상기 스킬을 캐스팅하는 단계
    를 포함하는, 가상 객체 제어 방법.
  13. 제12항에 있어서,
    상기 영역 면적이 면적 임계값보다 작은 것에 응답하여, 상기 제어 대상 가상 객체를 제어하여 상기 프레이밍 조작에 의해 정의된 상기 캐스팅 영역에서 상기 스킬을 캐스팅하는 단계는,
    상기 영역 면적이 상기 면적 임계값보다 작은 것에 응답하여 제2 스킬 서클을 상기 캐스팅 영역에 디스플레이하는 단계 - 상기 제2 스킬 서클은 상기 스킬을 캐스팅하는 것에 의해 생성되는 스킬 효과의 영향 범위를 식별하는 데 사용되며, 상기 제2 스킬 서클의 모양은 상기 캐스팅 영역과 동일함 -; 및
    상기 제어 대상 가상 객체를 제어하여 상기 제2 스킬 서클에서 상기 스킬을 캐스팅하는 단계
    를 포함하는, 가상 객체 제어 방법.
  14. 제13항에 있어서,
    상기 스킬은 단일 타깃에 대한 스킬 효과를 생성하는 데 사용되며, 상기 제2 스킬 서클은 적어도 2개의 타깃을 포함하고; 그리고,
    상기 제어 대상 가상 객체를 제어하여 상기 제2 스킬 서클에서 상기 스킬을 캐스팅하는 단계는,
    타깃 결정 원칙에 따라 상기 제2 스킬 서클에서 적어도 2개의 타깃으로부터 제2 타깃을 결정하는 단계; 및
    상기 제어 대상 가상 객체를 제어하여 상기 제2 타깃에 대한 스킬 효과를 생성하도록 상기 스킬을 캐스팅하는 단계
    를 포함하고,
    상기 타깃 결정 원칙은 가장 가까운 거리 우선 원칙, 가장 낮은 헬스 포인트 우선 원칙, 가장 낮은 헬스 바 우선 원칙을 포함하는, 가상 객체 제어 방법.
  15. 가상 객체 제어 장치로서,
    스킬 컨트롤에 대한 제1 클릭/탭 조작에 응답하여 스킬의 스킬 유형을 획득하도록 구성된 검출 모듈;
    상기 스킬의 스킬 유형이 타깃 스킬인 것에 응답하여, 제어 대상 가상 객체가 위치된 위치 및 상기 스킬의 캐스팅 범위에 따라 상기 스킬의 캐스팅 가능 영역을 가상 장면에 디스플레이하도록 구성된 결정 모듈 - 상기 타깃 스킬은 화면 클릭/탭에 기반하여 캐스팅 위치를 선택하는 것을 지원하는 스킬임 -; 및
    상기 캐스팅 가능 영역에서의 제2 클릭/탭 조작에 응답하여, 상기 제어 대상 가상 객체를 제어하여, 상기 제2 클릭/탭 조작에 의해 지시된 캐스팅 위치에서 상기 스킬을 캐스팅하도록 구성된 제어 모듈
    을 포함하는 가상 객체 제어 장치.
  16. 제15항에 있어서,
    상기 제어 모듈은,
    상기 캐스팅 가능 영역에서의 상기 제2 클릭/탭 조작에 응답하여, 화면에서 상기 제2 클릭/탭 조작에 의해 지시된 상기 캐스팅 위치의 화면 좌표를 획득하고;
    상기 화면 좌표를 상기 가상 장면에서의 상기 캐스팅 위치의 장면 좌표로 매핑하며; 그리고
    상기 제어 대상 가상 객체를 제어하여 상기 장면 좌표에서 상기 스킬을 캐스팅하도록 구성되는, 가상 객체 제어 장치.
  17. 제15항 또는 제16항에 있어서,
    맵 컨트롤에 대한 제3 클릭/탭 조작에 응답하여, 상기 맵 컨트롤에서 클릭된/탭된 타깃 영역을 결정하고; 상기 타깃 영역에 대응하는 타깃 장면을 상기 가상 장면에 디스플레이하며 - 타깃 장면은 상기 캐스팅 가능 영역을 포함함 -; 그리고 상기 타깃 장면의 상기 캐스팅 가능 영역에서 상기 제2 클릭/탭 조작을 검출하도록 구성됨 매핑 검출 모듈
    을 더 포함하는 가상 객체 제어 장치.
  18. 제15항 또는 제16항에 있어서,
    상기 캐스팅 가능 영역이 라운드 영역인 경우, 상기 결정 모듈은,
    상기 가상 장면에서, 상기 제어 대상 가상 객체가 위치되는 위치를 상기 캐스팅 가능 영역의 중심으로 결정하고, 상기 스킬의 가장 먼 캐스팅 거리를 상기 캐스팅 가능 영역의 반경으로 결정하며; 그리고
    상기 캐스팅 가능 영역의 캐스팅 템플릿을 상기 가상 장면에 디스플레이하도록 구성되고, 상기 캐스팅 템플릿은 상기 캐스팅 템플릿 외부의 영역에서 상기 스킬의 캐스팅이 무효임을 지시하는 데 사용되는, 가상 객체 제어 장치.
  19. 제15항 또는 제16항에 있어서,
    상기 스킬이 상기 타깃 스킬인 것에 응답하여 상기 스킬의 캐스팅 카운트다운 또는 캐스팅 프롬프트 정보 중 적어도 하나를 상기 가상 장면에 디스플레이하도록 구성된 디스플레이 모듈
    을 더 포함하는 가상 객체 제어 장치.
  20. 제15항 또는 제16항에 있어서,
    상기 제어 모듈은, 상기 스킬 컨트롤에 대응하는 휠 가상 조이스틱 상에서 수신된 스킬 캐스팅 조작에 응답하여, 상기 제어 대상 가상 객체를 제어하여, 상기 스킬 캐스팅 조작에 의해 지시된 위치에서 상기 스킬을 캐스팅하도록 구성되는, 가상 객체 제어 장치.
  21. 제15항 또는 제16항에 있어서,
    상기 검출 모듈은 추가로,
    상기 화면에서 상기 제1 클릭/탭 조작이 검출된 경우, 상기 제1 클릭/탭 조작에 의해 지시된 위치에 사용자 인터페이스(user interface, UI) 컨트롤의 존재에 응답하여, 상기 UI 컨트롤의 제어 유형을 획득하고;
    상기 UI 컨트롤의 제어 유형이 상기 스킬에 대응하는 스킬 컨트롤인 것에 응답하여, 다른 스킬 컨트롤의 트리거 상태를 획득하며 - 상기 다른 스킬 컨트롤은 상기 스킬과 상이한 다른 스킬의 스킬 컨트롤임 -; 그리고
    상기 다른 스킬 컨트롤이 트리거된 상태가 아닌 것에 응답하여 상기 스킬 컨트롤에 대한 상기 제1 클릭/탭 조작이 검출되는 것으로 결정하도록 구성되는, 가상 객체 제어 장치.
  22. 제15항 또는 제16항에 있어서,
    상기 캐스팅 가능 영역에서의 드래그 조작에 응답하여, 상기 드래그 조작의 드래그 궤적에 기반하여 상기 가상 장면에서 상기 드래그 조작에 의해 지시되는 캐스팅 위치를 업데이트하도록 구성된 업데이트 모듈
    을 더 포함하는 가상 객체 제어 장치.
  23. 제15항 또는 제16항에 있어서,
    상기 캐스팅 위치에 제1 스킬 서클을 디스플레이하도록 구성된 디스플레이 모듈 - 상기 제1 스킬 서클은 상기 스킬을 캐스팅하는 것에 의해 생성되는 스킬 효과의 영향 범위를 식별하는 데 사용됨 -
    을 더 포함하고,
    상기 제어 모듈은 상기 제어 대상 가상 객체를 제어하여 상기 제1 스킬 서클에서 상기 스킬을 캐스팅하도록 구성되는, 가상 객체 제어 장치.
  24. 제23항에 있어서,
    상기 스킬은 단일 타깃에 대한 스킬 효과를 생성하는 데 사용되며, 상기 제1 스킬 서클은 적어도 2개의 타깃을 포함하고;
    상기 제어 모듈은 타깃 결정 원칙에 따라 상기 제1 스킬 서클에서 적어도 2개의 타깃으로부터 제1 타깃을 결정하도록 구성되며; 그리고
    상기 제어 모듈은 상기 제어 대상 가상 객체를 제어하여, 상기 제1 타깃에 대한 스킬 효과를 생성하도록 상기 스킬을 캐스팅하도록 구성되고,
    상기 타깃 결정 원칙은, 가장 가까운 거리 우선 원칙, 가장 낮은 헬스 포인트 우선 원칙, 가장 낮은 헬스 바 우선 원칙을 포함하는, 가상 객체 제어 장치.
  25. 제15항 또는 제16항에 있어서,
    상기 제어 모듈은 상기 캐스팅 가능 영역에서 수신된 프레이밍 조작에 응답하여, 상기 제어 대상 가상 객체를 제어하여, 상기 프레이밍 조작에 의해 정의된 캐스팅 영역에서 상기 스킬을 캐스팅하도록 구성되고,
    상기 프레이밍 조작은 드래그 궤적에 기반하여 상기 캐스팅 가능 영역에서 폐쇄 패턴을 정의하는 데 사용되고, 상기 캐스팅 영역은 상기 폐쇄 패턴이거나 상기 캐스팅 영역은 상기 폐쇄 패턴의 가장 작은 둘러싸는 서클인, 가상 객체 제어 장치.
  26. 제25항에 있어서,
    상기 제어 모듈은 상기 캐스팅 가능 영역에서 수신된 상기 프레이밍 조작에 응답하여 상기 프레이밍 조작에 의해 정의된 상기 캐스팅 영역의 영역 면적을 계산하도록 구성되고, 그리고
    상기 제어 모듈은 상기 영역 면적이 면적 임계값보다 작은 것에 응답하여, 상기 제어 대상 가상 객체를 제어하여, 상기 프레이밍 조작에 의해 정의된 상기 캐스팅 영역에서 상기 스킬을 캐스팅하도록 구성되는, 가상 객체 제어 장치.
  27. 제26항에 있어서,
    상기 영역 면적이 상기 면적 임계값보다 작은 것에 응답하여 제2 스킬 서클을 상기 캐스팅 영역에 디스플레이하도록 구성된 디스플레이 모듈 - 상기 제2 스킬 서클은 상기 스킬을 캐스팅하는 것에 의해 생성되는 스킬 효과의 영향 범위를 식별하는 데 사용되며, 상기 제2 스킬 서클의 모양은 상기 캐스팅 영역과 동일함 -
    을 더 포함하고,
    상기 제어 모듈은. 상기 제어 대상 가상 객체를 제어하여 상기 제2 스킬 서클에서 상기 스킬을 캐스팅하도록 구성되는, 가상 객체 제어 장치.
  28. 제27항에 있어서,
    상기 스킬은 단일 타깃에 대한 스킬 효과를 생성하는 데 사용되며, 상기 제2 스킬 서클은 적어도 2개의 타깃을 포함하고;
    상기 제어 모듈은 타깃 결정 원칙에 따라 상기 제2 스킬 서클에서 적어도 2개의 타깃으로부터 제2 타깃을 결정하도록 구성되고; 그리고
    상기 제어 모듈은 상기 제어 대상 가상 객체를 제어하여 상기 제2 타깃에 대한 스킬 효과를 생성하도록 상기 스킬을 캐스팅하도록 구성되며,
    상기 타깃 결정 원칙은 가장 가까운 거리 우선 원칙, 가장 낮은 헬스 포인트 우선 원칙, 가장 낮은 헬스 바 우선 원칙을 포함하는, 가상 객체 제어 방법.
  29. 단말로서,
    하나 이상의 프로세서 및 하나 이상의 메모리
    를 포함하고,
    상기 하나 이상의 메모리는 적어도 하나의 프로그램 코드를 포함하고, 상기 적어도 하나의 프로그램 코드는 상기 하나 이상의 프로세서에 의해 로딩되고 실행되어, 제1항 내지 제14항 중 어느 한 항에 따른 가상 객체 제어 방법에서 수행되는 조작을 구현하는, 단말.
  30. 적어도 하나의 프로그램 코드를 저장하는, 컴퓨터가 판독 가능한 저장 매체로서,
    상기 적어도 하나의 프로그램 코드는 프로세서에 의해 로딩되고 실행되어, 제1항 내지 제14항 중 어느 한 항에 따른 가상 객체 제어 방법에서 수행되는 조작을 구현하는, 컴퓨터가 판독 가능한 저장 매체.
KR1020217035426A 2020-05-14 2021-04-27 가상 객체 제어 방법 및 장치, 단말 그리고 저장 매체 KR20210142739A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN202010408457.1 2020-05-14
CN202010408457.1A CN111589140B (zh) 2020-05-14 2020-05-14 虚拟对象的控制方法、装置、终端及存储介质
PCT/CN2021/090301 WO2021227870A1 (zh) 2020-05-14 2021-04-27 虚拟对象的控制方法、装置、终端及存储介质

Publications (1)

Publication Number Publication Date
KR20210142739A true KR20210142739A (ko) 2021-11-25

Family

ID=72182440

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217035426A KR20210142739A (ko) 2020-05-14 2021-04-27 가상 객체 제어 방법 및 장치, 단말 그리고 저장 매체

Country Status (7)

Country Link
US (1) US20220032183A1 (ko)
EP (1) EP3944881A4 (ko)
JP (2) JP7390400B2 (ko)
KR (1) KR20210142739A (ko)
CN (1) CN111589140B (ko)
SG (1) SG11202111639RA (ko)
WO (1) WO2021227870A1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111589140B (zh) * 2020-05-14 2023-03-14 腾讯科技(深圳)有限公司 虚拟对象的控制方法、装置、终端及存储介质
CN112426715A (zh) * 2020-11-24 2021-03-02 网易(杭州)网络有限公司 一种信息处理方法、装置、设备和存储介质
CN113559510B (zh) * 2021-07-27 2023-10-17 腾讯科技(上海)有限公司 虚拟技能的控制方法、装置、设备及计算机可读存储介质
JP2023539971A (ja) * 2021-08-03 2023-09-21 テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド 仮想オブジェクトによるスキル発動の制御方法及び装置、コンピュータ装置、並びにコンピュータプログラム
CN114712852A (zh) * 2022-03-02 2022-07-08 网易(杭州)网络有限公司 技能指示器的显示方法、装置和电子设备
CN114712859A (zh) * 2022-03-02 2022-07-08 网易(杭州)网络有限公司 技能伤害范围的确定方法、装置和电子设备
CN114939275A (zh) * 2022-05-24 2022-08-26 北京字跳网络技术有限公司 对象交互的方法、装置、设备和存储介质
CN115193064A (zh) * 2022-07-12 2022-10-18 网易(杭州)网络有限公司 虚拟对象的控制方法、装置、存储介质及计算机设备

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5522902B2 (ja) * 2008-03-24 2014-06-18 任天堂株式会社 情報処理プログラムおよび情報処理装置
US20140256389A1 (en) * 2013-03-06 2014-09-11 Ian Wentling Mobile game application
US9937416B2 (en) * 2013-06-11 2018-04-10 Microsoft Technology Licensing, Llc Adaptive touch input controls
JP6227759B2 (ja) * 2013-06-11 2017-11-08 ウィメイド・アイオ・カンパニーリミテッド コンピュータゲームに登場する対象体を自動的にターゲッティングする方法及びその装置
KR101580210B1 (ko) * 2015-01-08 2016-01-04 라인플러스 주식회사 터치 방식에 적합한 스마트 제어를 제공하는 게임 방법 및 게임 시스템
JP5830806B1 (ja) * 2015-04-13 2015-12-09 株式会社Cygames ユーザ入力の操作性を向上させるプログラム、電子装置、及び方法
CN105335065A (zh) * 2015-10-10 2016-02-17 腾讯科技(深圳)有限公司 一种信息处理方法、终端及计算机存储介质
CN106991013B (zh) * 2017-04-18 2018-09-07 腾讯科技(深圳)有限公司 一种对资源请求进行处理的方法及装置
JP6184634B1 (ja) * 2017-04-19 2017-08-23 株式会社 ディー・エヌ・エー 情報処理装置、ゲームプログラム、及び、情報処理方法
CN109550241B (zh) * 2018-09-20 2023-04-07 厦门吉比特网络技术股份有限公司 一种单摇杆控制方法和系统
CN109513209B (zh) * 2018-11-22 2020-04-17 网易(杭州)网络有限公司 虚拟对象处理方法及装置、电子设备以及存储介质
CN110292778A (zh) * 2019-08-02 2019-10-01 网易(杭州)网络有限公司 一种游戏技能释放的方法和装置
CN110694261B (zh) * 2019-10-21 2022-06-21 腾讯科技(深圳)有限公司 控制虚拟对象进行攻击的方法、终端及存储介质
CN111589140B (zh) * 2020-05-14 2023-03-14 腾讯科技(深圳)有限公司 虚拟对象的控制方法、装置、终端及存储介质

Also Published As

Publication number Publication date
JP2024019394A (ja) 2024-02-09
JP2022535675A (ja) 2022-08-10
JP7390400B2 (ja) 2023-12-01
US20220032183A1 (en) 2022-02-03
CN111589140A (zh) 2020-08-28
WO2021227870A1 (zh) 2021-11-18
CN111589140B (zh) 2023-03-14
EP3944881A4 (en) 2022-07-13
EP3944881A1 (en) 2022-02-02
SG11202111639RA (en) 2021-12-30

Similar Documents

Publication Publication Date Title
WO2021227870A1 (zh) 虚拟对象的控制方法、装置、终端及存储介质
US11890541B2 (en) Virtual object control method and apparatus, device, and storage medium
WO2021227682A1 (zh) 虚拟对象的控制方法、装置、设备及介质
CN111672116B (zh) 控制虚拟对象释放技能的方法、装置、终端及存储介质
JP7375043B2 (ja) 仮想環境の画面表示方法、装置、機器及びコンピュータプログラム
WO2021238870A1 (zh) 信息显示方法、装置、设备及存储介质
WO2021213070A1 (zh) 虚拟角色的控制方法、装置、设备及存储介质
WO2022052831A1 (zh) 应用程序内的控件位置调整方法、装置、设备及存储介质
CN111905363A (zh) 虚拟对象的控制方法、装置、终端及存储介质
TWI821779B (zh) 虛擬對象的控制方法、裝置、計算機設備及儲存媒體
CN112221135B (zh) 画面显示方法、装置、设备以及存储介质
JP2023164687A (ja) 仮想オブジェクトの制御方法及び装置並びにコンピュータ装置及びプログラム
WO2023138175A1 (zh) 卡牌施放方法、装置、设备、存储介质及程序产品
WO2023071808A1 (zh) 基于虚拟场景的图形显示方法、装置、设备以及介质
CN114225372B (zh) 虚拟对象的控制方法、装置、终端、存储介质及程序产品
EP3984608A1 (en) Method and apparatus for controlling virtual object, and terminal and storage medium
JP2023539971A (ja) 仮想オブジェクトによるスキル発動の制御方法及び装置、コンピュータ装置、並びにコンピュータプログラム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal