KR20190103307A - 정보 처리 방법 및 장치 그리고 서버 - Google Patents

정보 처리 방법 및 장치 그리고 서버 Download PDF

Info

Publication number
KR20190103307A
KR20190103307A KR1020197022877A KR20197022877A KR20190103307A KR 20190103307 A KR20190103307 A KR 20190103307A KR 1020197022877 A KR1020197022877 A KR 1020197022877A KR 20197022877 A KR20197022877 A KR 20197022877A KR 20190103307 A KR20190103307 A KR 20190103307A
Authority
KR
South Korea
Prior art keywords
target
virtual object
virtual
skill
resource
Prior art date
Application number
KR1020197022877A
Other languages
English (en)
Other versions
KR102319206B1 (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 CN201710007956.8A external-priority patent/CN106657127B/zh
Priority claimed from CN201710058471.1A external-priority patent/CN106807087B/zh
Application filed by 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 filed Critical 텐센트 테크놀로지(센젠) 컴퍼니 리미티드
Publication of KR20190103307A publication Critical patent/KR20190103307A/ko
Application granted granted Critical
Publication of KR102319206B1 publication Critical patent/KR102319206B1/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/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/67Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor adaptively or by learning from player actions, e.g. skill level adjustment or by storing successful combat sequences for re-use
    • 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/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/31Communication aspects specific to video games, e.g. between several handheld game devices at close range
    • 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/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/33Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections
    • A63F13/332Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections using wireless networks, e.g. cellular phone networks
    • 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
    • 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
    • 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/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/65Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • 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/53Features 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 details of basic data processing
    • 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/6027Methods for processing data by generating or executing the game program using adaptive systems learning from user actions, e.g. for skill level adjustment

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

본 발명의 실시예는 정보 처리 방법 및 장치 그리고 서버를 제공한다. 상기 정보 처리 방법은, 제1 클라이언트에 의해 전송되는 제1 가상 대상의 스킬 발휘 요청을 수신하는 단계 - 상기 스킬 발휘 요청은 제1 스킬을 발휘하도록 요청하는 데 사용됨 -; 가상 장면에서 상기 제1 가상 대상의 시야 내의 가상 대상의 수량을 결정하는 단계; 상기 시야 내의 가상 대상의 수량이 미리 결정된 임계치보다 크면, 상기 제1 가상 대상의 시야 내의 가상 대상 중에서 타깃 가상 대상을 선택하는 단계; 및 상기 스킬 발휘 요청에 응답하여 생성된 제1 브로드캐스트 통지를 획득하고, 상기 제1 브로드캐스트 통지를 상기 타깃 가상 대상에 대응하는 클라이언트에 전송하는 단계 - 상기 제1 브로드캐스트 통지는 상기 제1 가상 대상에 의해 상기 제1 스킬이 발휘되는 동작을 제시하도록 상기 클라이언트에 명령하는 데 사용됨 -를 포함한다. 본 발명의 실시예는 서버에 의해 클라언트에 전달되는 정보량을 줄이고 클라이언트의 정보 처리 압력을 줄일 수 있다.

Description

정보 처리 방법 및 장치 그리고 서버
관련 출원에 대한 상호 참조
본 출원은 2017년 1월 5일자로 중국 특허청에 제출된 "정보 처리 방법 및 장치 그리고 서버(INFORMATION PROCESSING METHOD AND APPARATUS AND SERVER)"라는 명칭의 중국 특허출원 제201710007956.8호 및 2017년 1월 23일자로 중국 특허청에 제출된 "애플리케이션 및 이동 단말기에서 가상 대상을 처리하는 방법"이라는 명칭의 중국 특허출원 제201710058471.1호의 우선권을 주장하며, 이들 특허출원의 내용 전부는 인용에 의해 본 명세서에 포함된다.
본 발명은 정보 처리 기술 분야에 관한 것으로, 특히 정보 처리 방법 및 장치 리고 서버에 관한 것이다.
게임, 시뮬레이션 및 기타 유형의 네트워크 애플리케이션의 등장으로, 복수의 사용자는 사용자에 의해 생성된 가상 대상을 통해 네트워크 애플리케이션에 의해 제공되는 가상 장면에서의 경쟁과 같은 활동에 참여할 수 있다. 일반적으로, 한 사용자는 하나의 클라이언트를 통해 적어도 하나의 가상 대상을 제어하여 가상 장면에서 활동을 수행할 수 있다. 예를 들어, 게임 네트워크 애플리케이션에서, 복수의 사용자는 생성된 게임 캐릭터를 그 각각의 게임 클라이언트를 통해 제어하여 게임 맵에서 싸울 수 있다.
가상 장면에서 하나의 가상 대상의 활동은 가상 장면 내의 다른 가상 대상에 영향을 미친다. 예를 들어, 가상 대상이 스킬을 발휘할 때, 가상 장면 내의 다른 가상 대상의 클라이언트는 그에 상응하여 가상 대상의 스킬 발휘 동작을 제시하여 가상 장면에서 가상 대상의 활동의 진실성 나타낼 필요가 있다. 따라서, 가상 장면에 활성 가상 대상이 존재하는 경우, 서버는 가상 대상의 활동을 가상 장면 내의 다른 가상 대상의 클라이언트에게 적시에 통지할 필요가 있다.
그러나, 가상 장면에서 동시에 활동중인 대량의 가상 대상이 있을 수 있다. 따라서 서버는 대량의 통지를 클라이언트에 전달해야 하여, 정보 다운링크 압력이 크다. 또한 현재 비교적 대량의 활동중인 가상 대상이 있는 경우, 클라이언트는 대량의 전달 통지를 처리하여 정보 동기화를 달성해야 한다. 따라서 클라이언트의 정보 처리 압력이 크다. 이 경우, 서버에 의해 클라이언트로 전달되는 정보의 양을 어떻게 줄이고, 클라이언트의 정보 처리 압력을 어떻게 줄일지가 고려되어야 할 문제가 되었다.
기존의 기술에서는 유니티(Unity) 이외의 게임 엔진의 프로젝트 개발에 계층 적 시야 원 관리 기술(hierarchical visual field circle management technology)을 사용하고, 복수의 가상 대상이 동시에 표시되는 일부 상호작용 애플리케이션(interactive application)에서는 캐릭터 렌더링 압력(character rendering pressure) 및 로드/언로드 속도(load/unload speed)를 최적화하기 위해, 서버 전달 원(server delivery circle) 및 자원 로딩 원(resource loading circle)이라는 개념이 있다.
복수의 가상 대상이 동시에 표시되는 상호작용 애플리케이션은 프로젝트 요건에 따라 수정된 GameBryo 엔진에 기초하여 구현되며, 서버 전달 원과 자원 로딩 원이라는 두 계층만이 존재한다. 캐릭터가 서버 전달 원에 진입한 후, 캐릭터의 논리 대상과 이름 태그가 즉시 생성된다. 플레이어가 추가로 자원 로딩 원에 진입한 후, 캐릭터 자원은 비동기적으로 로드되기 시작하고, 로딩이 완료된 후에 캐릭터 모델 인스턴스가 즉시 생성되어 표시된다.
이러한 기술적 방안은 대부분의 개인용 컴퓨터(PC) 게임의 다중플레이어 한 화면 표시 효율 요건(multi-player one-screen display efficiency requirement)을 충족시킬 수 있다. PC 플랫폼에서는 중앙 처리 장치(central processing unit, CPU)와 그래픽 처리 장치(graphics processing unit, GPU)의 성능이 이동 전화와 같은 이동단 기기(mobile end device)의 성능보다 훨씬 더 우수하기 때문에, 자원 로딩 원이 비동기 자원 로딩 및 캐릭터 인스턴스 생성 조작을 구현하는 데 사용되는 경우에 프레임 정지(frame freezing)는 거의 발생하지 않는다. 그러나 제한된 성능과 전력 소비 및 발열에 대한 엄격한 요건을 가진 이동 기기의 경우, 다중플레이어 한 화면 유형의 게임에서, 자원 로딩 원을 사용하여 비동기 자원 로드 및 캐릭터 인스턴스 생성 조작을 구현하는 경우에 프레임 정지가 자주 발생하여 게임을 원활하게 실행할 수 없다.
이러한 관점에서, 본 발명의 실시예는 서버에 의해 클라이언트로 전달되는 정보량을 줄이고 클라이언트의 정보 처리 압력을 줄이기 위한 정보 처리 방법 및 장치 그리고 서버를 제공한다.
상기한 목적을 달성하기 위해, 본 발명의 실시예는 다음의 기술적 방안을 제공한다:
정보 처리 방법은,
제1 클라이언트에 의해 전송되는 제1 가상 대상(virtual object)의 스킬 발휘 요청(skill casting request)을 수신하는 단계 - 상기 스킬 발휘 요청은 제1 스킬을 발휘하도록 요청하는 데 사용됨 -;
가상 장면(virtual scene)에서 상기 제1 가상 대상의 시야 내의 가상 대상의 수량을 결정하는 단계;
상기 시야 내의 가상 대상의 수량이 미리 결정된 임계치보다 크면, 상기 제1 가상 대상의 시야 내의 가상 대상 중에서 타깃 가상 대상(target virtual object)을 선택하는 단계; 및
상기 스킬 발휘 요청에 응답하여 생성된 제1 브로드캐스트 통지(broadcast notification)를 획득하고, 상기 제1 브로드캐스트 통지를 상기 타깃 가상 대상에 대응하는 클라이언트에 전송하는 단계 - 상기 제1 브로드캐스트 통지는 상기 제1 가상 대상에 의해 상기 제1 스킬이 발휘되는 동작을 제시하도록 상기 클라이언트에 명령하는 데 사용됨 -를 포함한다.
본 발명의 실시예는 정보 처리 장치를 더 제공하며, 상기 정보 처리 장티는 이동 단말기에 적용되고, 상기 이동 단말기는 동일한 화면상에 복수의 가상 대상이 표시되는 제1 클라이언트를 포함하는 이동 단말기에 적용되는 정보 처리 장치로서,
상기 제1 클라이언트의 디스플레이 인터페이스상에 제1 가상 대상이 표시되고, 상기 정보 처리 장치는,
상기 제1 클라이언트에 의해 전송되는 상기 제1 가상 대상의 스킬 발휘 요청을 수신하도록 구성된 송수신기 모듈 - 상기 스킬 발휘 요청은 제1 스킬을 발휘하도록 요청하는 데 사용됨 -; 및
가상 장면에서 상기 제1 가상 대상의 시야 내의 가상 대상의 수량을 결정하고; 상기 시야 내의 가상 대상의 수량이 미리 결정된 임계치보다 크면, 상기 제1 가상 대상의 시야 내의 가상 대상 중에서 타깃 가상 대상을 선택하도록 구성된 처리 모듈을 포함하고,
상기 송수신기 모듈은 추가로, 상기 스킬 발휘 요청에 응답하여 생성된 제1 브로드캐스트 통지를 획득하고, 상기 제1 브로드캐스트 통지를 상기 타깃 가상 대상에 대응하는 클라이언트에 전송하도록 구성되며, 상기 제1 브로드캐스트 통지는 상기 제1 가상 대상에 의해 상기 제1 스킬이 발휘되는 동작을 제시하도록 상기 클라이언트에 명령하는 데 사용된다.
본 발명의 실시예는 전술한 정보 처리 장치를 포함하는 서버를 제공한다.
전술한 기술적 방안에 기초하여, 본 발명의 실시예에서, 서버는 제1 클라이언트에 의해 제1 가상 대상이 제1 스킬을 발휘하도록 요청하기 위해 전송되는 스킬 발휘 요청을 수신하는 경우, 서버는 가상 장면에서 제1 가상 대상의 시야 내의 가상 대상의 수량을 결정하고, 시야 내의 가상 대상의 수량이 미리 결정된 임계치보다 큰 경우, 제1 가상 대상의 시야에서 미리 결정된 임계치에 대응하는 수량의 타깃 가상 대상을 선택하고, 스킬 발휘 요청에 응답하여 생성된 제1 브로드캐스트 통지를 결정하고, 제1 브로드캐스트 통지를 타깃 가상 대상의 클라이언트에 전송하여, 타깃 가상 대상의 클라이언트가 제1 가상 대상에 의해 제1 스킬이 발휘되는 동작을 제시할 수 있도록 하고, 제1 클라이언트의 제1 가상 대상이 제1 스킬을 발휘하는 경우, 제1 가상 대상의 시야 내의 가상 대상의 클라이언트는 제1 가상 대상에 의해 제1 스킬이 발휘되는 동작에 대한 대응하는 제시를 수행함으로써, 가상 장면에서 가상 대상의 활동 진실성을 유지한다.
서버는 미리 결정된 임계치에 따라, 제1 가상 대상이 스킬을 발휘하고 제1 가상 대상의 시야 내의 가상 대상의 수량이 미리 결정된 임계치보다 큰 경우에 수량이 가상 대상의 수량보다 적은 클라이언트에 제1 브로드캐스트 통지를 전송할 수 있다. 따라서 서버에 의해 클라이언트에 전달하는 정보량이 감소된다. 또한, 현재 동시에 스킬을 발휘하는 가상 대상이 비교적 대량 있는 경우, 클라이언트에 의해 획득되는 정보량이 줄어들 수 있고, 그에 따라 클라이언트의 정보 처리 압력이 줄어들 수 있다.
본 발명의 실시예는 애플리케이션 및 이동 단말기에서 가상 대상을 처리하는 방법을 더 제공하므로, 이동 단말기는 각각의 제어 범위에서 대응하는 조작을 수행할 수 있다. 렌더링된 타깃 가상 대상의 최종 표시를 위한 준비를 하고, 동일한 화면 상에 대량의 가상 대상이 표시되는 경우에 자원 할당을 최적화하고, 프레임 정지가 발생할 확률을 감소시키고 또한 프레임 레이트(초당 프레임 수)를 최적화하는, 각각의 제어 범위에 대한 적절한 조작 안배가 존재한다.
본 발명의 실시예의 제1 측면은 애플리케이션에서 가상 대상을 처리하는 방법을 제공하며, 상기 방법은 이동 단말기상의, 동일한 화면상에 복수의 가상 대상이 표시되는 상호작용 애플리케이션에 적용되고, 상기 상호작용 애플리케이션의 디스플레이 인터페이스상에 주 가상 대상(main virtual object)이 표시된다. 상기 방법은,
상기 이동 단말기가 상기 주 가상 대상을 중심으로 하여 검출 범위를 검출하는 단계 - 상기 검출 범위는 복수의 제어 범위를 포함하고, 각각의 제어 범위는 상기 제어 범위 내의 조작과 일대일 대응관계에 있고, 상기 조작은 상기 제어 범위로 진입하는 가상 대상에 의해 수행되는 조작임 -;
상기 검출 범위 내에서 타깃 가상 대상이 검출되는 경우, 상기 타깃 가상 대상과 상기 주 가상 대상 사이의 거리를 결정하는 단계;
상기 거리에 따라, 상기 타깃 가상 대상이 속하는 제어 범위를 결정하는 단계; 및
상기 타깃 가상 대상이 위치하는 제어 범위에서 수행되는 조작에 따라, 상기 타깃 가상 대상을 처리하는 단계를 포함할 수 있다.
본 발명의 실시예의 제2 측면은 이동 단말기를 제공하며, 상기 이동 단말기는 동일한 화면상에 복수의 가상 대상이 표시되는 상호작용 애플리케이션을 포함하고, 상기 상호작용 애플리케이션의 디스플레이 인터페이스상에 주 가상 대상이 표시된다. 상기 이동 단말기는,
상기 주 가상 대상을 중심으로 하여 검출 범위를 검출하도록 구성된 검출 모듈 - 상기 검출 범위는 복수의 제어 범위를 포함하고, 각각의 제어 범위는 상기 제어 범위 내의 조작과 일대일 대응관계에 있으며, 상기 조작은 상기 제어 범위로 진입하는 가상 대상에 의해 수행되는 조작임 -;
상기 검출 범위 내에서 타깃 가상 대상이 검출되는 경우, 상기 타깃 가상 대상과 상기 주 가상 대상 사이의 거리를 결정하도록 구성된 제1 결정 모듈;
상기 거리에 따라, 상기 타깃 가상 대상이 속하는 제어 범위를 결정하도록 구성된 제2 결정 모듈; 및
상기 타깃 가상 대상이 위치하는 제어 범위에서 수행되는 조작에 따라, 상기 타깃 가상 대상을 처리하도록 구성된 처리 모듈을 포함할 수 있다.
전술한 기술적 방안으로부터, 본 발명의 실시예가 다음과 같은 이점을 갖는다는 것을 알 수 있다:
본 발명의 실시예에서, 상기 방법은 이동 단말기상의, 동일한 화면상에 복수의 가상 대상이 표시되는 상호작용 애플리케이션에 적용된다. 주 가상 대상은 상호작용 애플리케이션의 디스플레이 인터페이스에 표시된다. 이동 단말기는 주 가상 대상을 중심으로 하여 검출 범위를 검출한다. 검출 범위는 복수의 제어 범위를 포함한다. 각각의 제어 범위는 제어 범위에서 수행되는 조작에 대응한다. 검출 대상 범위 내에서 타깃 가상 대상이 검출되는 경우, 그 타깃 가상 대상과 주 가상 대상 사이의 거리가 결정된다. 타깃 가상 대상이 속하는 제어 범위는 거리에 따라 결정된다. 타깃 가상 대상은 타깃 가상 대상이 속한 제어 범위에 대응하는 실행 조작에 따라 처리된다. 이동 단말기는 각각의 제어 범위에서 대응하는 조작을 수행하기 때문에, 렌더링된 타깃 가상 대상의 최종 표시를 위한 준비를 하고, 동일한 화면 상에 대량의 가상 대상이 표시되는 경우에 자원 할당을 최적화하고, 프레임 정지가 발생할 확률을 감소시키는, 각각의 제어 범위에 대한 적절한 조작 안배가 존재한다.
본 발명의 실시예 또는 종래기술의 기술적 방안을 보다 명확하게 설명하기 위해, 이하에서는 실시예 또는 종래기술을 설명하기 위한 첨부도면을 간단히 소개할 것이다. 명백하게, 이하의 설명에서의 도면은 본 발명의 단지 일부 실시예일 뿐이며, 본 발명의 속하는 기술분야의 통상의 지식을 가진자(이하, 당업자)는 창의적인 노력없이 이들 도면을 기초로 다른 도면을 도출할 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 정보 처리 방법을 구현하기 위한 시스템 아키텍처의 개략도이다.
도 2는 본 발명의 일 실시예에 따른 정보 처리 방법의 시그널링 흐름도이다.
도 3은 제1 가상 대상의 시야 내의 가상 대상을 결정하는 개략도이다.
도 4는 본 발명의 일 실시예에 따른 정보 처리 방법의 다른 신호 흐름도이다.
도 5는 게임 서버가 클라이언트에게 게임 캐릭터에 의한 스킬 발휘 동작을 제시하도록 명령하는 것을 나타낸 개략도이다.
도 6은 게임 서버가 클라이언트에게 게임 캐릭터에 의한 스킬 발휘 동작을 제시하도록 명령하는 것을 나타낸 다른 개략도이다.
도 7은 서버가 클라이언트에게 스킬 효과를 제시하도록 명령하는 방법의 흐름도이다.
도 8은 게임 서버가 클라이언트에게 스킬 효과를 제시하도록 명령하는 것을 나타낸 개략도이다.
도 9는 본 발명의 일 실시예에 따른 정보 처리 장치의 구성 블록도이다.
도 10은 본 발명의 일 실시예에 따른 정보 처리 장치의 다른 구성 블록도이다.
도 11은 본 발명의 일 실시예에 따른 정보 처리 장치의 또 다른 구성 블록도이다.
도 12는 서버의 하드웨어 구성 블록도이다.
도 13은 본 발명의 일 실시예에 따른 가상 대상의 시야 원을 관리하는 개략도이다.
도 14는 본 발명의 일 실시예에 따른 이동 단말기에서 복수의 가상 대상이 동일 화면상에 표시되는 것을 나타낸 개략도이다.
도 15는 본 발명의 일 실시예에 따른 자원 관리기 및 캐릭터 인스턴스 대상 풀(instance object pool)의 프레임 개략도이다.
도 16은 본 발명의 일 실시예에 따른 애플리케이션에서 가상 대상을 처리하는 방법의 실시예 개략도이다.
도 17은 본 발명의 일 실시예에 따른 애플리케이션에서 가상 대상의 시야 원을 관리하는 다른 개략도이다.
도 18은 본 발명의 일 실시예에 따른 이동 단말기의 다른 실시예 개략도이다.
도 19는 본 발명의 일 실시예에 따른 이동 단말기의 다른 실시예 개략도이다.
도 20은 본 발명의 일 실시예에 따른 이동 단말기의 다른 실시예 개략도이다.
이하에서는 본 발명의 실시예에서의 첨부도면을 참조하여 본 발명의 실시예에서의 기술적 방안을 명확하고 완전하게 설명한다. 명백하게, 설명된 실시예는 모든 실시예가 아닌 본 발명의 실시예 중 일부이다. 창의적인 노력없이 본 발명의 실시예에 기초하여 당업자에 의해 획득된 다른 모든 실시예는 본 발명의 보호 범위에 속해야 한다.
도 1은 본 발명의 일 실시예에 따른 정보 처리 방법을 구현하기 위한 시스템 아키텍처의 개략도이다. 도 1을 참조하면, 이 시스템 아키텍처는 복수의 클라이언트(10) 및 서버(20)를 포함할 수 있다.
클라이언트(10)는 스마트폰 또는 태블릿 컴퓨터와 같은 이동 단말기상에 탑재될 수 있고, 게임, 시뮬레이션 및 기타 유형의 네트워크 애플리케이션을 위한 로컬 서비스를 제공한다. 선택적으로, 클라이언트(10)는 예를 들어 게임 클라이언트이다.
서버(20)는 게임, 시뮬레이션 및 기타 유형의 네트워크 애플리케이션을 위한 네트워크 서비스를 제공하기 위해 네트워크 측에 배치된 서비스 기기이다. 서버(20)는, 복수의 서버를 포함하는 서버 그룹일 수 있거나, 독립된 서버로 구현될 수도 있다. 선택적으로, 서버(20)는 예를 들어 게임 서버이다.
본 발명의 본 실시예에서, 도 1에 도시된 복수의 클라이언트(10)는 서로 다른 장소에 배치될 수 있다. 복수의 클라이언트(10)와 서버(20)는 서로 정보를 교환하고, 동일한 가상 장면을 로딩하고, 각자 제어되는 가상 대상을 가상 장면에 추가한다. 클라이언트의 조작을 통해, 클라이언트에 의해 제어되는 가상 대상은 가상 장면에서 활동을 수행할 수 있다. 선택적으로, 하나의 클라이언트(10)는 하나 이상의 가상 대상(일반적으로 클라이언트의 사용자에 의해 생성된 가상 대상)를 제어하여 가상 장면에서 활동을 수행하도록 할 수 있다.
스킬 발휘는 가상 대상의 전형적인 활동 형태이다. 클라이언트가 스킬을 발휘하도록 가상 대상을 제어하는 경우, 서버는 가상 대상의 시야 내에 있는 가상 대상의 클라이언트에 가상 대상에 의해 스킬이 발휘되는 동작을 제공하도록 지시할 필요가 있다 이 프로세스에서, 서버에 의해 클라이언트에 전달되는 정보의 양을 어떻게 감소시키고 클라이언트의 정보 처리 압력을 어떻게 감소시킬지가 본 발영의 실시예에서 해결되어야 할 문제이다.
이 문제를 해결하기 위해, 도 2는 본 발명의 일 실시예에 따른 정보 처리 방법의 시그널링 흐름도이다. 이 정보 처리 방법은 이동 단말기상의, 복수의 가상 대상이 동일한 화면상에 표시되는 제1 클라이언트에 적용된다. 제1 가상 대상은 제1 클라이언트의 디스플레이 인터페이스 상에 디스플레이된다. 제1 클라이언트는 또한 상호작용 애플리케이션으로 지칭될 수 있고, 가상 대상은 또한 가상 대상으로 지칭될 수 있다. 도 1 및 도 2를 참조하면, 그 프로시저는 다음을 포함할 수 있다:
단계 S10. 제1 클라이언트가 제1 가상 대상의 스킬 발휘 요청을 서버에 전송하며, 스킬 발휘 요청은 제1 스킬을 발휘하도록 요청하는 데 사용된다.
제1 가상 대상은 제1 클라이언트에 의해 제어되는 가상 대상이다. 제1 클라이언트에 의해 제시되는 가상 장면의 시야는 일반적으로 가상 장면의 제1 가상 대상의 시야에 종속된다. 제1 클라이언트는 도 1에 도시된 복수의 클라이언트에서 스킬을 발휘하는 임의의 가상 대상에 대응하는 클라이언트일 수 있다.
제1 가상 대상의 스킬 발휘 요청은, 제1 클라이언트의 사용자의 조작이 제1 스킬을 발휘하기 위해 제1 가상 대상을 트리거할 때에 제1 클라이언트에 의해 서버로 전송될 수 있다. 예를 들어, 제1 클라이언트의 사용자가 화면상의 제1 스킬에 대한 발휘 아이콘(cast icon)을 클릭하여, 제1 스킬을 발휘하도록 제1 가상 대상을 트리거할 수 있거나, 또는 제1 클라이언트의 사용자가 외부의 키보드 또는 마우스와 같은 입력 기기를 사용하여 제1 스킬을 발휘하도록 제1 가상 대상을 트거할 수 있으므로, 제1 클라이언트는 제1 가상 대상의 스킬 발휘 요청을 서버에 전송할 수 있다.
이에 상응하여, 서버는 제1 클라이언트에 의해 전송되는 제1 가상 대상의 스킬 발휘 요청을 수신할 수 있다.
단계 S11. 서버는 가상 장면에서 제1 가상 대상의 시야 내의 가상 대상의 수량을 결정한다.
가상 장면에서 제1 가상 대상의 시야 내의 가상 대상의 수량을 결정하는 것은 얼마나 많은 가상 대상이 제1 가상 대상의 시야 내에 있는지를 결정하는 것이다.
선택적으로, 제1 가상 대상의 시야 내의 가상 대상의 수량은 가상 장면 내의 가상 대상의 좌표를 제1 가상 대상의 시야에 대응하는 좌표 범위와 매칭시킴으로써 결정될 수 있다. 본 발명의 본 실시예에서는 가상 장면 내의 제1 가상 대상의 좌표를 결정할 수 있고, 제1 가상 대상의 좌표가 중심으로 사용되며, 제1 가상 대상의 좌표를 포함하는 설정된 좌표 범위(일반적으로 단일 화면상에 표시될 수 있는 가상 장면 좌표 범위)가 제1 가상 대상의 시야로 사용된다. 이에 상응하여, 가상 장면에서 제1 가상 대상의 시야의 대응하는 좌표 범위가 획득될 수 있다. 그런 다음 가상 장면에서의 가상 대상의 좌표를 좌표 범위와 매칭시켜, 좌표가 좌표 범위 내에 속하는 가상 대상의 수량을 결정하여 가상 대상의 수량을 획득하다.
선택적으로, 제1 가상 대상의 시야에 대응하는 좌표 범위는 제1 가상 대상의 좌표를 중심으로 하는 설정된 범위일 수 있다. 도 3에 도시된 바와 같이, 본 발명의 본 실시예에서는 제1 가상 대상의 좌표를 중심으로 하여 설정된 크기의 9개의 정사각형 범위를 구성하여, 제1 가상 대상의 시야에 대응하는 좌표 범위를 결정할 수 있다. 이러한 방식으로, 가상장면에서의 좌표가 9개의 정사각형 범위 내에 속하는 가상 대상이 제1 가상 대상의 시야 내의 가상 대상(예를 들어, 도 3에서 9개의 정사각형 범위 내에 속하는 가상 대상, 가상 대상은 도 3에서 흑색 점으로 표현됨)으로 결정되어, 제1 가상 대상의 시야 내의 가상 대상의 수량이 획득된다.
단계 S12. 시야 내의 가상 대상의 수량이 미리 결정된 임계치보다 크면, 서버는 제1 가상 대상의 시야 내의 가상 대상 중에서 타깃 가상 대상을 선택한다.
선택적으로, 본 발명의 본 실시예에서, 임계치는 미리 결정될 수 있고, 시야 내의 가상 대상의 수량이 미리 결정된 임계치보다 큰지는 시야 내의 가상 대상의 수량이 결정된 후에 결정된다.
시야 내의 가상 대상의 수량이 미리 결정된 임계치보다 크면, 제1 가상 대상의 시야 내에 비교적 대량의 가상 대상이 있다고 결정될 수 있다. 제1 가상 대상의 시야 내의 모든 가상 대상의 클라이언트가 제1 가상 대상에 의해 제1 스킬이 발휘되는 동작을 제시하도록 명령을 받으면, 서버에 의해 클라이언트로 전달되는 정보의 양은 많다. 현재 스킬을 동시에 발휘하는 가상 대상이 비교적 대량이면, 클라이언트에 의해 수신되어 서버에 의해 전달되는 정보의 양은 비교적 많고, 클라이언트의 정보 처리 압력이 증가한다. 이에 기초하여, 본 발명의 본 실시예에서, 제1 가상 대상의 시야 내의 가상 대상의 수량이 미리 결정된 임계치보다 큰 경우, 미리 결정된 임계치에 대응하는 수량의 타깃 가상 대상만이 제1 가상 대상의 시야에서 선택될 수 있고, 이어서 그 타깃 가상 대상의 클라이언트만이 제1 가상 대상에 의해 제1 스킬이 발휘되는 동작을 제시하도록 명령을 받는다.
선택적으로, 미리 결정된 임계치는 복수의 실제 테스트 결과에 따라 정의된 값일 수 있다. 미리 결정된 임계치는 서버가 비교적 소량의 정보를 전달하도록 보장할 수 있고, 클라이언트에서 제시되고 현재 스킬을 발휘하는 비교적 대량의 가상 대상이 여전히 존재하므로, 스킬 발휘 동작의 제시 효과는 크게 저하되지 않으며, 가상 장면에서 가상 대상의 활동 진실성은 여전히 나타낼 수 있다(예를 들어, 게임 싸움 장면의 격렬함을 유지하는 효과). 본 발명의 본 실시예에서, 미리 결정된 임계치는 특정 값으로 제한되지 않으며, 테스트가 수행된 후에 구체적인 네트워크 애플리케이션 유형 또는 실제 네트워크 애플리케이션 상태에 따라 설정될 수 있다.
단계 S13. 서버가 스킬 발휘 요청에 응답하여 생성된 제1 브로드캐스트 통지를 획득하고, 제1 브로드캐스트 통지를 타깃 가상 대상에 대응하는 클라이언트에 전송하며, 제1 브로드캐스트 통지는 제1 가상 대상에 의해 제1 스킬이 발휘되는 동작을 제시하도록 클라이언트에 명령하는 데 사용된다.
선택적으로, 제1 브로드캐스트 통지는, 서버가 스킬 발휘 요청을 수신한 경우 또는 제1 브로드캐스트 통지가 전달될 필요가 있는, 가상 다상의 클라이언트가 결정된 후에 스킬 발휘 요청에 응답하여 생성될 수 있다 .
선택적으로, 제1 브로드캐스트 통보는 제1 가상 대상에 의해 제1 스킬이 발휘되는 동작의 제시를 트리거하는 브로드캐스트 통지일 수 있으며, 제1 가상 대상에 의해 제1 스킬이 발휘되는 동작은, 제1 가상 대상이 제1 스킬을 발휘할 때 수행되어야 하는 스킬 발휘 동작이다. 스킬 발휘 동작을 수행한 후, 제1 가상 대상이 제1 스킬을 발휘할 수 있다.
본 발명의 실시예에서, 서버가 제1 클라이언트에 의해 제1 가상 대상이 제1 스킬을 발휘하도록 요청하기 위해 전송되는 스킬 발휘 요청을 수신하는 경우, 서버는 가상 장면에서 제1 가상 대상의 시야 내의 가상 대상의 수량을 결정하고, 시야 내의 가상 대상의 수량이 미리 결정된 임계치보다 큰 경우, 제1 가상 대상의 시야에서 미리 결정된 임계치에 대응하는 수량의 타깃 가상 대상을 선택하고, 스킬 발휘 요청에 응답하여 생성된 제1 브로드캐스트 통지를 결정하고, 제1 브로드캐스트 통지를 타깃 가상 대상의 클라이언트에 전송하여, 타깃 가상 대상의 클라이언트가 제1 가상 대상에 의해 제1 스킬이 발휘되는 동작을 제시할 수 있도록 하고, 제1 클라이언트의 제1 가상 대상이 제1 스킬을 발휘하는 경우, 제1 가상 대상의 시야 내의 가상 대상의 클라이언트는 제1 가상 대상에 의해 제1 스킬이 발휘되는 동작에 대한 대응하는 제시를 수행함으로써, 가상 장면에서 가상 대상의 활동 진실성을 유지한다.
서버는 미리 결정된 임계치에 따라, 제1 가상 대상이 스킬을 발휘하고 제1 가상 대상의 시야 내의 가상 대상의 수량이 미리 결정된 임계치보다 큰 경우에 수량이 가상 대상의 수량보다 적은 클라이언트에 제1 브로드캐스트 통지를 전송할 수 있다. 따라서 서버에 의해 클라이언트에 전달하는 정보량이 감소된다. 또한, 현재 동시에 스킬을 발휘하는 가상 대상이 비교적 대량 있는 경우, 클라이언트에 의해 획득되는 정보량이 감소될 수 있고, 그에 따라 클라이언트의 정보 처리 압력이 줄어들 수 있다.
선택적으로, 단계 S11에서 결정된 제1 가상 대상의 시야 내의 가상 대상의 수량이 미리 결정된 임계치 이하이면, 제1 가상 대상의 시야 내에 비교적 소량의 가상 대상이 존재한다고 결정될 수 있다. 서버가 제1 가상 대상의 시야 내의 모든 가상 대상의 클라이언트에 명령하여 제1 가상 대상에 의해 제1 스킬이 발휘되는 동작을 제시하도록 하더라도, 서버에 의해 전달될 정보의 양은 소량의 범위 내로 제어될 수 있다. 따라서, 서버는 시야 내의 가상 대상의 수량이 미리 결정된 임계치 이하인 경우에 제1 가상 대상의 시야 내의 모든 가상 대상의 클라이언트에 제2 브로드캐스트 통지를 전송하여, 제1 가상 대상에 의해 제1 스킬이 발휘되는 동작을 제시하도록 제1 가상 대상의 시야 내의 모든 가상 대상의 클라이언트에 명령할 수 있다.
선택적으로, 서버는 제1 가상 대상에 의해 발휘될 제1 스킬이 가상 장면에서의 제1 가상 대상의 위치를 조정하는지(예를 들어, 제1 스킬이 변위 스킬(displacement skill)인지)에 따라, 도 2에 도시된 방법을 사용하여 정보 처리를 수행할 것인지를 결정한다.
선택적으로, 도 4는 본 발명의 일 실시예에 따른 정보 처리 방법의 다른 시그널링 프로시저를 나타낸다. 도 1 및 도 4를 참조하면, 그 프로시저는 다음을 포함할 수 있다:
단계 S20. 제1 클라이언트가 제1 가상 대상의 스킬 발휘 요청을 서버에 전송하며, 스킬 발휘 요청은 제1 스킬을 발휘하도록 요청하는 데 사용된다.
단계 S21. 서버가 제1 스킬이 가상 장면에서의 제1 가상 대상의 위치를 조정하는지를 결정하고, 만약 그렇다면 단계 S22를 수행하고, 그렇지 않으면 단계 S23을 수행한다.
선택적으로, 서버는 스킬 식별자를 미리 기록할 수 있으며, 미리 기록된 스킬 식별자에 대응하는 스킬은 가상 장면에서의 제1 가상 대상의 위치를 조정할 수 있다. 따라서, 스킬 발휘 요청을 수신한 후, 서버는 스킬 발휘 요청에 의해 요청되는 제1 스킬의 스킬 식별자를 미리 기록된 스킬 식별자와 매칭시킬 수 있다. 제1 스킬의 스킬 식별자가 미리 기록된 스킬 식별자와 매칭되면, 제1 스킬이 가상 장면에서의 제1 가상 대상의 위치를 조정할 수 있다고 결정될 수 있다. 제1 스킬의 스킬 식별자가 미리 기록된 스킬 식별자와 매칭되지 않으면, 제1 스킬이 가상 장면에서의 제1 가상 대상의 위치를 조정할 수 없다고 결정될 수 있다.
제1 스킬이 가상 장면에서의 제1 가상 대상의 위치를 조정하는 데 사용되면, 제1 가상 대상의 위치 변경은 제1 가상 대상의 최신 위치가 다른 클라이언트들 사이에서 동기화되기 전에 적시에 제1 가상 대상의 시야 내의 다른 가상 대상에 통지될 필요가 있기 때문이다. 본 발명의 본 실시예에서, 제1 가상 대상의 시야 내의 모든 가상 대상의 클라이언트는 다른 클라이언트들 사이에서 제1 가상 대상의 새로운 위치의 동기화를 보장하기 위해, 제1 가상 대상의 위치를 조정하도록 명령을 받을 필요가 있다.
제1 스킬이 가상 장면에서의 제1 가상 대상의 위치를 조정하는 데 사용되지 않으면, 제1 가상 대상의 시야 내의 모든 가상 대상의 클라이언트는 제1 가상 대상의 위치 요건을 적시에 갱신하지 않으면, 본 발명의 본 실시예에서, 제1 가상 대상에 의해 제1 스킬이 발휘되는 동작이 통지될 클라이언트의 범위는, 제1 가상 대상의 시야 내의 가상 대상의 수량과 미리 결정된 임계치 사이의 비교 결과에 기초하여 결정될 수 있다.
단계 S22. 서버가 가상 장면에서의 제1 가상 대상의 조정된 새로운 위치를 결정하고, 제1 가상 대상의 시야 내의 모든 가상 대상의 클라이언트에 제3 브로드캐스트 통지를 전송하며, 제3 브로드캐스트 통지는 가상 장면에서의 제1 가상 대상의 위치를 새로운 위치로 갱신하도록 명령하는 데 사용된다..
단계 S23. 서버가 가상 장면에서 제1 가상 대상의 시야 내의 가상 대상의 수량을 결정한다.
단계 S24. 서버가 시야 내의 가상 대상의 수량이 미리 결정된 임계치보다 큰지를 판정하고, 그렇다면 단계 S25를 수행하고, 그렇지 않으면 단계 S27을 수행한다.
단계 S25. 서버가 제1 가상 대상의 시야에서 미리 결정된 임계치에 대응하는 수량의 타깃 가상 대상을 선택한다.
단계 S26. 서버가 스킬 발휘 요청에 응답하여 생성된 제3 브로드캐스트 통지를 결정하고, 제1 브로드캐스트 통지를 타깃 가상 대상의 클라이언트에 전송한다.
단계 S27. 서버가 스킬 발휘 요청에 응답하여 생성된 제3 브로드캐스트 통지를 결정하고, 제3 브로캐스트 통지를 제1 가상 대상의 시야 내의 모든 가상 대상의 클라이언트에 전송한다.
알 수 있는 바와 같이, 본 발명의 본 실시예에서, 도 2에 도시된 단계 S11은 제1 가상 대상에 의해 발휘되는 제1 스킬이 가상 장면에서의 제1 가상 대상의 위치를 조정하지 않는 경우에 수행될 수 있다. 제1 가상 대상에 의해 발휘되는 제1 스킬이 가상 장면에서의 제1 가상 대상의 위치를 조정하는 경우, 가상 장면에서의 제1 가상 대상의 위치를 새로운 위치로 조정하기 위한 제3 브로드캐스트 통지가 제1 가상 대상의 시야 내의 모든 가상 대상의 클라이언트에 전송된다. 제1 가상 대상에 의해 발휘되는 제1 스킬이 가상 장면에서의 제1 가상 대상의 위치를 조정하지 않지만, 제1 가상 대상의 시야 내의 가상 대상의 수량이 미리 결정된 임계치보다 크지 않은 경우, 제1 브로드캐스트 통지는 제1 가상 대상의 시야 내의 모든 가상 대상들의 클라이언트에 전송된다.
선택적으로, 서버가 제1 가상 대상의 시야에서 미리 결정된 임계치에 대응하는 수량의 타깃 가상 대상을 선택하는 방식에는 다음과 같은 방식을 포함하지만, 이에 한정되는 것은 아니다:
제1 방식: 본 발명의 본 실시예에서, 미리 결정된 임계치에 대응하는 수량의 타깃 가상 대상이 제1 가상 대상의 시야에서 무작위로 선택될 수 있다. 예를 들어, 미리 결정된 임계치와 동일한 수량의 타깃 가상 대상이 선택된다.
제2 방식: 제1 가상 대상의 시야 내의 가상 대상은 상이한 그룹에 속할 수 있고, 그룹의 가상 대상은 적대적인 관계에 있을 수 있다. 본 발명의 실시예에서는, 상이한 그룹에서의 재1 가상 대상에 의해 제1 스킬이 발휘되는 동작의 제시에 균형을 맞추기 위해, 제1 가상 대상의 시야 내의 모든 가상 대상이 속하는 다양한 유형의 그룹이 결정된 다음, 미리 결정된 임계치에 대응하는 수량의 타깃 가상 대상이 제1 가상 대상의 시야에서, 설정된 요건을 충족시키는 각각의 유형의 그룹 내의 타깃 가상 대상의 대응하는 수량으로 선택된다. 각각의 유형의 그룹 내의 타깃 가상 대상의 대응하는 수량이 설정된 요건을 충족시킨다는 것은, 예를 들어, 모든 유형의 그룹 내의 타깃 가상 대상의 대응하는 수량이 동일하다는 것이다. 각각의 유형의 그룹 내의 타깃 가상 대상의 대응하는 수량이 설정된 요건을 충족시킨다는 것은, 다른 예를 들어, 제1 스킬이 제1 그룹의 가상 대상에서 제1 가상 대상에 의해 타깃으로 되는 스킬이면, 타깃 가상 대상에서의 제1 그룹의 가상 대상의 비율은 증대될 수 있고 타깃 가상 대상에서 제1 그룹이 아닌 그룹의 가상 대상의 비율은 감소될 수 있다는 것이다.
제3 방식: 본 발명의 본 실시예에서, 미리 결정된 임계치에 대응하는 수량의 타깃 가상 대상은 제1 가상 대상의 시야 내의 가상 대상들 사이의 관계도에 따라 대안적으로 선택될 수 있다. 예를 들어, 미리 결정된 임계치와 동일한 수량의 타깃 가상 대상이 선택된다. 예를 들어, 제1 가상 대상의 시야에서, 제1 가상 대상과의 관계도의 등급이 높고 미리 결정된 임계치에 대응하는 수량의 타깃 가상 대상이 우선 선택된다(관계도 등급이 높다는 것은, 내림차순 정렬에서 관계도 등급이 높다는 것 또는 오름차순 정렬에서 관계도 등급이 높다는 것일 수 있으며; 내림차순 정렬에서 관계도 등급이 높다는 것은 일반적으로 가상 대상 등급이 높을수록 제1 가상 대상에 더 친한 것으로 생각되고, 오름차순 정렬에서 관계도 등급이 높다는 것은 일반적으로 가상 대상 등급이 높을수록 제1 가상 대상에 더 적대적인 것으로 생각된다).
선택적으로, 제1 클라이언트에 의해 전송되는 제1 가상 대상의 스킬 발휘 요청을 수신한 후, 서버는 제1 가상 대상의 스킬 발휘 소비를 먼저 처리할 수 있다. 예를 들어, 제1 스킬을 발휘하기 위해, 제1 가상 대상은 마법 포인트(magic point), 히트 포인트(hit point), 분노 포인트(rage point) 등을 소비해야 하며, 서버는 제1 스킬을 발휘하기 위해 제1 가상 대상에 의해 소비되어야 하는 마법 포인트, 히트 포인트, 분노 포인트 등을 먼저 브로드캐스트할 수 있다.
예를 들어, 게임 네트워크 애플리케이션에서, 상응하게, 클라이언트는 게임 클라이언트일 수 있고, 서버는 게임 서버일 수 있으며, 가상 대상은 사용자에 의해 게임 클라이언트를 사용하여 제어되는 게임 캐릭터일 수 있다. 현재, 게임에서 상이한 그룹 간의 싸움은 동일한 게임 맵 내의 상이한 그룹의 다수의 게임 캐릭터 간의 싸움과 관련된다. 게임 캐릭터 간의 싸움은 매우 격렬하고, 스킬이 꽤 자주 발휘된다. 게임 캐릭터가 스킬을 발휘하는 경우에 각각의게임 캐릭터에 의한 스킬 발휘에 관한 정보가 게임 캐릭터의 시야 내의 다른 게임 캐릭터의 게임 클라이언트에 브로드캐스트되면, 게임 서버에 의해 엄청난 양의 정보가 전달되고, 게임 클라이언트는 엄청난 정보량 압력을 받느다.
도 5에 도시된 바와 같이, 게임 캐릭터 A가 스킬을 발휘하는 경우, 게임 캐릭터 A의 게임 클라이언트는 게임 캐릭터 A의 스킬 발휘 요청을 게임 서버에 전송하고, 서버는 게임 캐릭터 A에 의한 스킬 발휘에 관한 정보를 게임 캐릭터 A의 시야 내의 다른 게임 캐릭터(i1 내지 in)의 게임 클라이언트에 전송하므로, 게임 캐릭터 A의 시야 내의 다른 게임 캐릭터의 게임 클라이언트는 게임 캐릭터 A에 의한 스킬을 발휘하는 동작을 제시할 수 있다. 도 5는 하나의 게임 캐릭터가 스킬을 발동 할 때의 서버의 정보 전달 상황을 나타낸다. 그러나, 그룹 싸움에서, 동시에 많은 게임 캐릭터가 하나의 게임 맵에서 기술을 발휘한다. 이것은 의심할 여지없이 서버에 의해 전달되는 정보의 양을 증가시키고 게임 클라이언트의 정보 처리 압력을 증가시킨다.
따라서, 본 발명의 본 실시예에서는, 게임 캐릭터 A가 스킬을 발휘하고 게임 서버가 게임 캐릭터 A의 스킬 발휘의 요구를 수신하는 경우, 게임 서버는 게임 캐릭터 A의 시야 내의 게임 캐릭터의 수량을 결정할 수 있다. 게임 캐릭터의 수량 미리 결정된 임계치보다 큰 것으로 판정한 경우, 게임 서버는 게임 캐릭터 A의 시야에서 미리 결정된 임계치에 대응하는 수량의 게임 캐릭터를 선택하고, 게임 캐릭터 A에 의한 스킬 발휘에 관한 정보를 선택된 게임 캐릭터의 게임 클라이언트에 브로드캐스트할 수 있으므로, 선택된 가상 캐릭터의 게임 클라이언트는 게임 캐릭터 A에 의한 스킬 발휘의 동작을 제시할 수 있다. 적절한 미리 결정된 임계치를 설정하는 것은, 비교적 많은 수량의 게임 캐릭터가 시야 내에 있는 경우에 미리 결정된 임계치에 대응하는 수량의 게임 캐릭터만의 게임 클라이언트가 게임 캐릭터에 의한 스킬 발휘의 동작을 제시할 수 있도록 하여, 게임 싸움의 격렬함 및 게임 캐릭터의 활동 진실성을 유지하면서 게임 서버의 정보 다운링크량을 감소시키고, 게임 클라이언트의 정보 처리 압력을 줄인다.
도 6에 도시된 바와 같이, 미리 결정된 임계치는 M이고, M=20으로 설정된다. 게임 서버는 게임 캐릭터 A의 시야 내의 게임 캐릭터의 수량이 N이고, N> M으로 결정하는 경우, 게임 서버는 게임 캐릭터 A에 의한 스킬 발휘에 관한 정보를 N개의 게임 캐릭터의 게임 클라이언트에 브로드캐스트할 수 없지만, N개의 캐릭터 중에서 수량이 보다 적은 M개의 게임 캐릭터만을 선택하고, N개의 게임 캐릭터의 게임 클라이언트에 게임 캐릭터 A에 의한 스킬 발휘에 관한 정보를 브로드캐스트한다. 이러한 방식으로, 게임 서버에 의해 전달될 브로드캐스트 통지의 수량은 더 큰 N에서 더 작은 M으로 감소되므로, 게임 서버에 의해 전달되는 정보의 양을 감소시킨다.
선택적으로, 게임 캐릭터 A의 시야 내의 게임 캐릭터의 수량이 미리 결정된 임계치 이하인 경우, 게임 캐릭터 A에 의한 스킬 발휘에 관한 정보는 게임 캐릭터 A의 시야 내의 모든 게임 캐릭터의 게임 클라이언트에 브로드캐스트될 수 있다
또한, 제1 가상 대상에 의해 발휘되는 제1 스킬이 하나 이상의 제2 가상 대상(여기서 제2 가상 대상은 가상장 면에서 제1 가상 대상 이외의 가상 대상일 수 있음)을 타깃으로 하고, 제1 스킬의 스킬 효과가 하나 이상의 제2 가상 대상의 속성 값에 영향을 미치면(예를 들어, 속성 값에 대해 버프 영향(buff influence) 또는 디버프 영향(debuff influence)을 미침), 본 발명의 본 실시예에서, 서버는 제2 가상 대상에 대한 제1 스킬의 영향의 스킬 효과에 관한 정보를 제시하도록, 상이한 상황에따라 브로드캐스트할 수 있다. 선택적으로, 여기서 제1 가상 대상에 의해 발휘되는 제1 스킬은 가상 장면에서 제2 가상 대상의 속성 값에 영향을 미친다.
선택적으로, 서버의 관점에서, 도 7은 서버가 스킬 효과를 제시하도록 클라이언트에 명령하는 방법의 흐름도이다. 이 방법은 서버에 적용될 수 있다. 도 7을 참조하면, 이 방법은 다음을 포함할 수 있다:
단계 S100. 서버가 스킬 발휘 요청에 따라, 제1 스킬이 티깃으로 하는 하나 이상의 제2 가상 대상을 결정한다.
선택적으로, 제1 스킬이 발휘될 타깃으로 대상(targeted to-be-cast object)을 갖는 경우, 스킬 발휘 요청은 제1 스킬의 스킬 식별자를 포함하는 것에 부가하여, 제1 스킬이 타깃으로 하는 가상 대상 리스트를 더 포함할 수 있고, 가상 대상 리스트는, 제1 가상 대상에 의해 발휘되는 제1 스킬이 타깃으로 하는 하나의 제2 가상 대상을 기록할 수 있다.
제1 스킬이 타깃으로 하는 제2 가상 대상은 상기 제1 클라이언트의 사용자에 의해 지시되고, 가상 대상 리스트에 기록될 수 있다.
단계 S110. 서버는 제1 스킬에 의해 영향을 받은 각각의 제2 가상 대상의 남은 속성 값을 결정한다.
선택적으로, 남은 속성 값은 제2 가상 대상의 남은 히트 포인트, 남은 마법 포인트, 남은 분노 포인트 등일 수 있다. 남은 속성 값의 구체적인 형태는 실제 상황에 따라 설정될 수 있다.
예를 들면, 남은 속성 값은 제2 가상 대상의 남은 히트 포인트이다. 서버는 제1 스킬이 타깃으로 하는 각각의 제2 가상 대상을 결정한 후, 서버는 제2 가상 대상의 방어력(defense power) 및 제1 가상 대상의 공격력(attack power)을 호출하고, 제1 스킬에 의해 공격받은 제2 가상 대상 각각의 상해 포인트(damage point)를 계산하고, 제2 가상 대상의 현재 히트 포인트에서 상해 포인트를 감산하여, 제2 가상 대상의 남은 히트 포인트를 획득할 수 있다.
명백히, 이 단락에서는 제1 스킬에 의해 공격받은 제2 가상 대상의 상해 포인트를 계산하기 위한 선택적인 방법만 설명한다. 또한, 제1 스킬에 의해 공격받은 제2 가상 대상의 상해 포인트는 추가로 제1 스킬의 상해 베이스(damage base) 및 상해 유형(damage type), 제2 가상 대상의 상해 저항(damage resistance) 등을 참조하여 결정될 수 있다. 선택적인 방법에서의 계산 및 남은 속성 값이 제2 가상 대상의 남은 마법 포인트, 남은 분노 포인트 등인 경우의 계산은 서로 유사하며, 서로를 참조할 수 있다.
단계 S120. 상응하게, 제1 스킬에 의해 영향을 받은 각각의 제2 가상 대상의 남은 속성 값에 따라 제2 가상 대상에 대한 제1 스킬의 영향의 효과를 제시하도록 명령하기 위한 브로드캐스트 통지를 생성한다.
상이한 제2 가상 대상이 상이한 상해 저항을 가지기 때문에, 제1 스킬의 영향을받는 서로 다른 제2 가상 대상의 남은 속성 값이 다르므로, 제2 가상 대상에 대응하는 브로드캐스트 통지를 나머지의 속성 값에 대해 각각 생성 할 필요가 있다. 제2 가상 대상은 제1 스킬에 의해 영향을 받는다.
단계 S130. 남은 속성 값이 미리 설정된 조건을 충족시키는 제2 가상 대상에 대해, 제2 가상 대상에 대응하는 제2 브로드캐스트 통지를 제2 가상 대상의 시야 내의 모든 가상 대상의 클라이언트로 전송하며, 제2 브로드캐스트 통지는 제2 가상 대상에 미치는 제1 스킬의 영향의 효과를 제시하도록 명령하는 데 사용된다.
선택적으로, 상기 제1 스킬은 제2 가상 대상을 타깃으로 하는 디버프 스킬(debuff skill)일 수 있다. 예를 들어 남은 속성 값은 남은 히트 포인트이다. 본 발명의 본 실시예에서, 제2 브로드캐스트 통지가 제2 가상 대상의 시야 내의 모든 가상 대상에 전송되는 미리 설정된 조건이 설정될 수 있다. 예를 들어, 미리 설정된 조건은, 제1 스킬에 의해 영향을 받은 제2 가상 대상의 남은 히트 포인트가 설정 히트 포인트보다 작거나, 남은 히트 포인트가 0(zero)(즉, 제1 스킬에 의해 공격을 받은 후, 가상 대상이 사망) 등이 있다.
선택적으로, 제1 스킬은 대안적으로 제2 가상 대상을 타깃으로 하는 버프 스킬일 수 있다. 예를 들어 남은 속성 값은 남은 히트 포인트이다. 또한, 미리 설정된 조건은 대안적으로, 제1 스킬에 의해 영향을 받은 제2 가상 대상의 남은 히트 포인트가 완전 회복되는 것(예를 들어, 남은 히트 포인트가 최대 히트 포인트)일 수 있다.
선택적으로, 남아있는 속성 값이 제2 가상 대상의 남은 마법 포인트, 남은 분노 포인트 등인 경우에 미리 설정된 조건은 남은 속성 값인 남은 히트 포인트인 경우를 참조하여 설정될 수 있다. 본 발명의 본 실시예에서, 미리 설정된 조건은 고정된 방식 대신에 실제 상황에 따라 구체적인 형태로 설정될 수 있다.
제2 가상 대상의 남은 속성 값이 계산된 후, 제2 가상 대상의 남은 속성 값이 미리 설정된 조건을 충족시키면, 서버는 제2 브로드캐스트 통지를 제2 가상 대상의 시야 내의 모든 가상 대상의 클라이언트에 전송할 수 있으므로, 제2 가상 대상의 시야 내의 모든 가상 대상의 클라이언트는 제2 가상 대상에 미치는 제1 스킬의 영향의 효과를 제시할 수 있다. 예를 들어, 제1 스킬에 의해 공격받은 후에 제2 가상 대상이 사망한 것으로 결정되는 경우, 제2 가상 대상에 미치는 제1 스킬의 영향의 효과에 관한 정보가 제2 가상 대상의 시야 내의 모든 가상 대상의 클라이언트에 브로드캐스트될 수 있으므로, 제2 가상 대상의 시야 내의 모든 가상 대상의 클라이언트는 제2 가상 대상의 사망에 관한 정보를 알 수 있다.
단계 S140. 남은 속성 값이 미리 설정된 조건을 충족시키지 못하는 제2 가상 대상에 대해, 제2 가상 대상에 대응하는 제2 브로드캐스트 통지를 제2 가상 대상의 클라이언트 및 제1 클라이언트에 전송한다.
선택적으로, 제2 가상 대상의 남은 속성 값이 계산된 후, 제2 가상 대상의 남은 속성 값이 미리 설정된 조건을 충족시키지 못하면(예를 들어, 제2 가상 대상의 남은 히트 포인트가 0이 아니고, 제2 가상 대상이 아직 살아 있거나, 또는 제2 가상 대상의 남은 히트 포인트가 설정 히트 포인트보다 작지 않음), 제2 브로드캐스트 통지를 모든 가상 대상의 시야 내의 모든 가상 대상의 클라이언트에 전송할 필요가 없다. 서버에 의해 전달되는 정보의 양을 줄이기 위해, 서버는 제2 가상 대상의 클라이언트 및 제1 클라이언트에게만 제2 브로드캐스트 통지를 전송할 수 있으므로, 제2 가상 대상의 클라이언트 및 제1 클라이언트는 제2 가상 대상에 미치는 제1 스킬의 영향의 효과를 제시할 수 있다.
선택적으로, 클라이언트가 제2 가상 대상에 미치는 제1 스킬의 영향의 효과를 제시하는 경우, 클라이언트는 제1 스킬에 의해 영향을 받은 제2 가상 대상의 속성 조정 값, 및 현재의 속성 값과 속성 조정 값을 결합하여 획득되는 남은 속성 값을 제시할 수 있다. 상응하게, 제2 브로드캐스트 통지는 제2 가상 대상의 속성 조정 값 및 남은 속성 값을 포함할 수 있다. 예를 들어 속성 값은 히트 포인트이며, 제1 스킬은 공격 스킬이다. 제2 브로드캐스트 통지는 제1 스킬에 의해 공격받은 제2 가상 대상의 잃은 히트 포인트(즉, 상해 포인트) 및 남은 히트 포인트를 포함할 수 있다.
여기서 유의해야 할 것은, 남은 히트 포인트가 0일 경우, 제2 가상 대상의 사망 이벤트(death event)가 트리거되고, 대응하는 가상 대상의 사망 논리(death logic)(일반적으로, 가상 대상이 사망하게 되는 경우 가상 대상이 땅에 쓰러짐 )가 실행될 필요가 있고, 가상 대상의 부활 논리(respawning logic)가 추가로 인에이블될 수 있다는 것이다.
상응하게, 클라이언트는 제2 브로드캐스트 통지에 포함되어 있는, 제2 가상 대상의 속성 조정 값 및 남은 속성 값에 따라, 제1 스킬에 의해 영향을 받은 제2 가상 대상의 속성 조정 값 및 남은 속성 값을 직접 제시할 수 있다. 예를 들어, 클라이언트는 클라이언트상의 제2 가상 대상의 속성 값을 증분적으로로 갱신하지 않고서, 제2 가상 대상의 잃은 히트 포인트 및 남은 히트 포인트를 직접 제시할 수 있다.
선택적으로, 제1 스킬이 가상 장면에서의 제1 가상 대상의 위치를 조정할 수 있으면, 제1 가상 대상의 위치 변경은 적시에 제1 가상 대상의 시야 내의 다른 가상 대상에 통지될 필요가 있기 때문에, 본 발명의 본 실시예에서, 서버는 제2 가상 대상의 시야 내의 모든 가상 대상의 클라이언트에 제3 브로드캐스트 통지를 전송할 필요가 있으며, 제3 브로드캐스트 통지는 가상 장면에서의 제1 가상 대상의 조정된 위치를 제시하도록 명령하는 데 사용된다. 가상 장면에서의 제1 가상 대상의 조정된 위치는 제1 가상 대상이 제1 스킬을 발휘할 때의 제1 가상 대상의 위치와 제1 스킬에 대응하는 조정된 위치 사이의 위치 차이에 따라 서버에 의해 결정될 수 있다.
예를 들어, 게임 네트워크 애플리케이션의 경우, 본 발명의 본 실시예에서는, 미리 설정된 조건은, 제1 스킬에 의해 영향을 받은 게임 캐릭터의 남은 히트 포인트가 0이다(즉, 제1 스킬에 의해 영향을 받은 게임 캐릭터가 사망). 게임에서 다른 그룹 간의 싸움은 같은 게임 맵에서 여러 그룹의 수많은 게임 캐릭터 간의 싸움과 관련이 있다. 게임 캐릭터 간의 싸움은 매우 격렬하고, 스킬이 꽤 자주 발휘된다. 게임 캐릭터가 스킬에 의해 영향을 받은 경우에 각각의 게임 캐릭터에 미치는 스킬의 영향이 그 게임 캐릭터의 시야 내의 다른 게임 캐릭터의 게임 클라이언트에 브로드캐스트되면, 엄청난 양의 정보가 게임 서버에 의해 전달되고, 게임 클라이언트는 큰 정보 처리 압력을 받는다.
도 8에 도시된 바와 같이, 게임 캐릭터 A가 게임 캐릭터 B 및 C에 디버프 스킬(예를 들어, 상해 스킬)을 발휘한 후, 게임 서버는 게임 캐릭터 B 및 C의 남은 히트 포인트를 계산할 수 있다. 게임 캐릭터 B의 남은 히트 포인트가 0이면, 즉 게임 캐릭터 B가 사망하면, 게임 캐릭터 B의 남은 히트 포인트는 미리 설정된 조건을 충족시키고, 게임 서버는 게임 캐릭터 B에 미치는 스킬의 영향의 효과에 관한 정보를 게임 캐릭터 B의 시야 내의 모든 게임 캐릭터의 게임 클라이언트에 브로드캐스트할 수 있다. 상기 효과에 관한 정보는 게임 캐릭터 B의 상해 포인트 및 남은 히트 포인트를 포함할 수 있다. 게임 캐릭터 B의 시야 내의 모든 게임 캐릭터의 게임 클라이언트는 스킬에 의해 영향을 받은 게임 캐릭터 B의 상해 포인트를 제시할 수 있다. 또한, 게임 캐릭터 B의 남은 히트 포인트가 0일 때, 게임 캐릭터 B의 사망의 효과의 제시가 트리거된다(예를 들어, 게임 캐릭터 B가 사망하면, 게임 캐릭터 B가 땅에 쓰러지도록 트리거된다).
게임 서버에 의해 계산된 게임 캐릭터 C의 남은 히트 포인트가 0이 아니면, 게임 캐릭터 C의 남은 히트 포인트가 미리 설정된 조건을 충족시키지 못한다고 결정될 수 있다. 게임 서버는 게임 캐릭터 C에 미치는 스킬의 영향의 효과에 관한 정보를 게임 캐릭터 C의 게임 클라이언트 및 게임 캐릭터 A의 게임 클라이언트에 브로드캐스트할 수 있다. 상기 효과에 관한 정보는 게임 캐릭터 C의 상해 포인트 및 남은 히트 포인트를 포함할 수 있다. 게임 캐릭터 C의 게임 클라이언트 및 게임 캐릭터 A의 게임 클라이언트는 스킬에 의해 영향을 받은 게임 캐릭터 C의 상해 포인트를 제시할 수 있다.
물론, 게임 캐릭터 A는 대안으로 다른 게임 캐릭터에 버프 스킬(예를 들어 치유 스킬(healing skill))을 발휘할 수도 있다. 버프 스킬이 타깃으로 하는 각각의 게임 캐릭터에 대하여, 게임 서버는 게임 캐릭터에 미치는 버프 스킬의 영향의 효과에 관한 정보를 게임 캐릭터의 게임 클라이언트 및 게임 캐릭터 A의 게임 클라이언트에 통지할 수 있다.
본 발명의 본 실시예에서 제공되는 정보 처리 방법에 따르면, 서버가 클라이언트에 가상 대상에 의해 스킬이 발휘되는 동작을 제시하도록 브로드캐스트하는 단계 및 서버가 클라이언트에 가상 대상에 미치는 스킬의 영향의 효과를 제시하도록 브로드캐스트하는 단계에서, 서버에 의해 전달된 정보량이 감소될 수 있고, 클라이언트의 정보 처리 압력을 줄일 수 있다. 테스트를 통해, 게임형 네트워크 애플리케이션에서, 기존 기술에서 가상 대상의 시야 내의 모든 가상 대상의 클라이언트에게 브로드캐스트하는 방식과 비교하면, 본 발명의 실시예에 제공되는 정보 처리 방법에 따라 서버에 의한 클라이언트에의 브로드캐스트는 다음의 이점이 있을 수 있다:
본 발명의 실시예에서, 서버가 클라이언트에 가상 대상에 의해 스킬이 발휘되는 동작을 제시하도록 브로드캐스트하는 단계에서, 다운링크 패킷의 총량에서 브로드캐스트 다운링크 정보 패킷의 수량의 비율은 23%에서 16%로 감소될 수 있고, 다운링크 패킷의 총량에서 브로드캐스트 다운링크 정보 패킷의 수량의 비율은 18%에서 11%로 감소된다.
서버가 가상 대상에 미치는 스킬의 영향의 효과를 제시하도록 클라이언트에 브로드캐스트하는 단계에서, 다운링크 패킷의 총량에서 브로드캐스트 다운링크 정보 패킷의 수량의 비율은 17%에서 6%로 감소될 수 있고, 다운링크 패킷의 총량에서 브로드캐스트 다운링크 정보 패킷의 수량의 비율은 37%에서 7%로 감소된다.
본 발명의 본 실시예에서, 서버에 의해 클라이언트에 전달되는 정보의 양이 매우 감소될 수 있고, 클라이언트의 정보 처리 압력이 매우 낮아질 수 있음을 알 수 있다.
이하 본 발명의 실시예에서 제공되는 정보 처리 장치에 대하여 설명한다. 이하에 설명하는 정보 처리 장치와 상술 한 정보 처리 방법은 서로 참조할 수 있다.
도 9는 본 발명의 일 실시예에 따른 정보 처리 장치의 구성 블록도이다. 이 정보 처리 장치는 클라이언트에 적용될 수 있다. 도 9를 참조하면, 이 정보 처리 장치는,
제1 클라이언트에 의해 전송되는 제1 가상 대상의 스킬 발휘 요청을 수신하도록 구성된 송수신기 모듈(100) - 스킬 발휘 요청은 제1 스킬을 발휘하도록 요청하는 데 사용됨 -; 및
처리 모듈(200) - 본 발명의 본 실시예에서의 처리 모듈(200)은 소프웨어 모듈 및/또는 하드웨어 모듈일 수 있고, 본 출원에서는 이를 특별히 한정하지 않음 -을 포함하고, 처리 모듈은(200)은,
가상 장면에서 제1 가상 대상의 시야 내의 가상 대상의 수량을 결정하고;
시야 내의 가상 대상의 수량이 미리 결정된 임계치보다 크면, 제1 가상 대상의 시야 내의 가상 대상 중에서 타깃 가상 대상을 선택하고;
스킬 발휘 요청에 응답하여 생성된 제1 브로드캐스트 통지를 결정하고, 송수신기 모듈(100)을 사용하여, 제1 브로드캐스트 통지를 타깃 가상 대상의 클라이언트에 전송하도록 구성되며, 제1 브로드캐스트 통지는 제1 가상 대상에 의해 제1 스킬이 발휘되는 동작을 제시하도록 클라이언트에 명령하는 데 사용된다.
선택적으로, 도 10은 본 발명의 일 실시예에 따른 정보 처리 장치의 다른 구성 블록도이다. 도 9 및도 11을 참조하면, 처리 모듈(200)은 추가로,
시야 내의 가상 대상의 수량이 미리 결정된 임계치 이하이면, 송수신기 모듈(100)을 사용하여, 제1 가상 대상의 시야 내의 모든 가상 대상의 클라이언트에 제2 브로드캐스트 통지를 전송하도록 구성된다.
선택적으로,도 10에 도시된 바와 같이, 처리 모듈(200)은,
제1 스킬이 가상 장면에서의 제1 가상 대상의 위치를 조정하는지를 판정하도록 구성된 스킬 판정 모듈(600); 및
제1 스킬이 가상 장면에서의 제1 가상 대상의 위치를 조정하지 않으면, 제1 가상 대상의 시야 내의 가상 대상의 수량을 결정하도록 수량 결정 모듈을 트리거하거나; 또는
제1 스킬이 가상 장면에서의 제1 가상 대상의 위치를 조정하면, 가상 장면에서의 제1 가상 대상의 조정된 위치를 결정하고, 트랜시버 모듈(100)을 사용하여 제1 가상 대상의 시야 내의 모든 가상 대상의 클라이언트에 가상 장면에서의 제1 가상 대상의 위치를 조정된 위치로 조정하기 위한 브로드캐스트 통지를 전송하도록 구성된 트리거 모듈(700)을 더 포함한다.
선택적으로, 처리 모듈(200)은 추가로,
제1 가상 대상의 좌표를 중심으로 하여 제1 가상 대상의 시야에 대응하는 좌표 범위를 결정하고;
가상 장면 내의 각각의 가상 대상의 좌표를 좌표 범위와 매칭시켜, 좌표 범위 내에 속하는 가상 대상의 수량을 결정하여, 가상 대상의 수량을 획득하도록 구성된다.
선택적으로, 처리 모듈(200)은 추가로,
제1 가상 대상의 시야에서 미리 결정된 임계치에 대응하는 수량의 타깃 가상 대상을 무작위로 선택하거나; 또는
제1 가상 대상의 시야 내의 모든 가상 대상이 속하는 다양한 유형의 그룹을 결정하고, 제1 가상 대상의 시야에서 미리 결정된 임계치에 대응하는 타깃 가상 대상을 선택하거나 - 각각의 유형의 그룹 내의 타깃 가상 대상의 대응하는 수량은 설정 요건을 충족시킴 -; 또는
제1 가상 대상의 시야 내의 가상 대상과 제1 가상 대상 사이의 관계도에 따라, 미리 결정된 임계치에 대응하는 수량의 타깃 가상 대상을 선택하도록 구성된 대상 선택 모듈(300)을 더 포함한다.
선택적으로, 도 11은 본 발명의 일 실시예에 따른 정보 처리 장치의 또 다른 구성 블록도이다. 도 9를 참조하면, 처리 모듈(200)은,
스킬 발휘 요청에 따라, 제1 스킬이 타깃으로 하는 하나 이상의 제2 가상 대상을 결정하도록 구성된 스킬 타깃 대상 결정 모듈(900);
제1 스킬에 의해 영향을 받은 각각의 제2 가상 대상의 남은 속성 값을 결정하는 남은 속성 값 결정 모듈(1000); 및
제2 브로드캐스트 통지 생성 모듈(1100)을 더 포함하고, 제2 브로드캐스트 통지 생성 모듈(1100)은,
제1 스킬에 의해 영향을 받은 제2 가상 대상의 남은 속성 값에 따라, 각각의 제2 가상 대상에 대응하는 제2 브로드캐스트 통지를 생성하고;
남은 속성 값이 미리 설정된 조건을 충족시키는 제2 가상 대상에 대해서는, 송수신 모듈(100)을 사용하여, 제2 가상 대상에 대응하는 제2 브로드캐스트 통지를 제2 가상 대상의 시야 내의 모든 가상 대상의 클라이언트에 전송하고;
남은 속성 값이 미리 설정된 조건을 충족시키지 못하는 제2 가상 대상에 대해서는, 송수신 모듈(100)을 사용하여, 제2 가상 대상에 대응하는 제2 브로드캐스트 통지를 제2 가상 대상의 클라이언트 및 제1 클라이언트에 전송하도록 구성된다.
선택적으로, 스킬 타깃 대상 결정 모듈(900)은 구체적으로,
스킬 발휘 요청에 포함된 가상 대상 리스트에 따라, 제1 스킬이 타깃으로 하는 하나 이상의 제2 가상 대상을 결정하도록 구성되며, 가상 대상 리스트는 제1 가상 대상에 의해 발휘되는 제1 스킬이 타깃으로 하는 하나 이상의 제2 가상 대상을 기록한다.
선택적으로, 남은 속성 값은 남은 히트 포인트를 포함하고, 남은 속성 값이 미리 설정된 조건을 충족시키는 것은, 남은 히트 포인트가 0인 것을 포함한다.
선택적으로, 제1 스킬은 공격 스킬이고, 제2 브로드캐스트 통지는 제1 스킬에 의해 공격을 받은 제2 가상 대상의 잃은 히트 포인트 및 남은 히트 포인트를 포함하고, 남은 히트 포인트가 0이면 제2 가상 대상의 사망 이벤트가 트리거된다.
본 발명의 본 실시예에서 제공되는 정보 처리 장치는, 서버에 의해 클라이언트에 전달되는 정보량을 감소시킬 수 있어, 다른 가상 대상에 의해 스킬이 발휘되는 동작을 제시하도록 서버가 클라이언트에 통지를 전달하는 단계, 및 가상 대상에 미치는 스킬의 영향의 효과를 제시하도록 서버가 클라이언트에 브로드캐스트하는 단계에서 클라이언트의 정보 처리 압력을 줄인다.
선택적으로, 도 12는 서버의 구조적 하드웨어 블록도이다. 도 12를 참조하면, 서버는 프로세서(1), 통신 인터페이스(2), 메모리(3) 및 통신 버스(4)를 포함할 수 있다.
프로세서(1), 통신 인터페이스(2) 및 메모리(3)는 통신 버스(4)를 사용하여 서로 통신한다.
선택적으로, 통신 인터페이스(2)는 예를 들어 GSM 모듈의 인터페이스와 같은 통신 모듈의 인터페이스일 수 있다.
프로세서(1)는 중앙 처리 유닛(CPU) 또는 주문형 집적 회로(ASIC), 또는 본 개시의 실시예를 구현하도록 구성된 하나 이상의 집적 회로일 수 있다.
메모리(3)는 고속 RAM을 포함할 수 있거나, 예를 들어 적어도 하나의 자기 디스크 메모리와 같은 비휘발성 메모리를 더 포함할 수 있다.
프로세서(1)는 구체적으로,
제1 클라이언트에 의해 전송되는 제1 가상 대상의 스킬 발휘 요청을 수신하고 - 스킬 발휘 요청은 제1 스킬을 발휘하도록 요청하는 데 사용됨 -;
가상 장면에서 제1 가상 대상의 시야 내의 가상 대상의 수량을 결정하고;
시야 내의 가상 대상의 수량이 미리 결정된 임계치보다 크면, 시야 내의 가상 대상 중에서 타깃 가상 대상을 선택하고 - 타깃 가상 대상의 수량은 미리 결정된 임계치에 대응함 -;
스킬 발휘 요청에 응답하여 생성된 제1 브로드캐스트 통지를 결정하고, 제1 브로드캐스트 통지를 타깃 가상 대상의 클라이언트에 전송하도록 구성되며, 제1 브로드캐스트 통지는 제1 가상 대상에 의해 제1 스킬이 발휘되는 동작을 제시하도록 명령하는 데 사용된다.
유의해야 할 것은, 본 명세서의 실시예는 모두 점진적인 방식으로 기술된다는 것이다. 각각의 실시예의 설명은 다른 실시예와의 차이점에 초점을 맞추고, 각각 실시예 중에서 동일하거나 유사한 부분을 서로 참조할 수 있다. 장치 실시예는 방법의 실시예와 실질적으로 유사하므로 간략하게 설명하고, 관련 부분에 대한 방법 실시예를 참조할 수 있다.
당업자라면, 본 명세서의 실시예와 조합하여, 기술된 각각 예의 유닛 및 알고리즘, 단계가 전자적인 하드웨어, 컴퓨터 소프트웨어, 또는 이들의 조합으로 구현될 수 있다는 것을 더 알 수 있을 것이다. 하드웨어와 소프트웨어 간의 상호 교환 가능성을 명확하게 설명하기 위해, 각각의 예의 구성 및 단계는 전술한 설명에서는 기능에 따라 일반적으로 설명하였다. 기능이 하드웨어 모드로 실행되는지 또는 소프트웨어 모드로 실행되는지 여부는 기술적 방안의 구체적인 적용 및 설계 제약 조건에 따라 달라진다. 당업자라면, 각각의 구체적인 애플리케이션에 대해 기술된 기능을 구현하기 위해 상이한 방법을 사용할 수 있지만, 구현이 본 개시의 실시예의 범위를 벗어나는 것으로 간주되어서는 안된다.
본 명세서의 실시예와 함께, 기술된 방법 또는 알고리즘의 단계들은 하드웨어, 프로세서에 의해 실행되는 소프트웨어 모듈, 또는 이들의 조합을 사용하여 직접 구현될 수 있다. 소프트웨어 모듈은 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 적기적으로 프로그램 가능한 ROM(EPROM), 전기적으로 소거/프로그램 ㄱ가가능한 ROM(EEPROM), 레지스터, 하드 디스크(hard disk), 착탈식 자기 디스크, CD-ROM, 또는 해당 기술분야에서 널리 공지된 다른 형태의 임의의 저장 매체일 수 있다.
개시된 실시예에 대한 이상의 설명은 당업자가 본 발명(개시 내용)을 구현하거나 사용할 수 있게 한다. 이들 실시예에 대한 다양한 변경은 당업자에게는 자명하며, 본 발명에서 정의된 일반적인 원리는 본 발명의 사상 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 따라서, 본 발명은 본 발명에 예시된 이들 실시예에 한정되지 않으며, 본 발명에 개시된 원리 및 신규한 특징과 일치하는 가장 넓은 범위를 따라야 한다.
본 발명의 실시예는 애플리케이션 및 이동 단말기에서 가상 대상을 처리하는 방법을 제공하므로, 이동 단말기는 각각의 링 조작 범위 내에서 대응하는 조작을 수행할 수 있다. 렌더링된 타깃 가상 대상의 최종 표시를 위한 준비를 하고, 동일한 화면 상에 대량의 가상 대상이 표시되는 경우에 자원 할당을 최적화하고, 프레임 정지가 발생할 확률을 감소시키고 또한 프레임 레이트(초당 프레임 수)를 최적화하는, 각각의 제어 범위에 대한 적절한 조작 안배가 존재한다.
본 발명이 속하는 기술분야의 당업자가 본 발명의 방안을 보다 이해하기 쉽도록, 본 발명의 실시예에서는 기술적 방안을 본 발명의 실시예에서의 첨부된 도면을 참조하여 명확하고 완전하게 설명한다. 명백하게, 설명된 실시예는 본 발명의 모든 실시예가 아니라 일부에 불과하다. 본 발명의 실시예에 기초하여, 기술된 실시예는 본 개시의 보호 범위에 속해야 한다.
대규모의 다중플레이어 한 화면 표시 캐릭터 표시 요건을 갖는 게임에서는, 각 캐릭터마다, 캐릭터 모델이 게임 장면, 즉 플레이어 캐릭터의 인스턴스에 표시된다. 가상 대상은 일반적으로 릭터로 지칭될 수 있다. 기존 기술의 일부 다중플레이어 네트워크 게임은 프로젝트 요건 수정에 따라 수정된 Gamebryo 엔진을 기반으로 구현되며, 서버 전달 원과 자원 로딩 원의 두 가지 계층만 있다. 도 13은 가상 대상의 시야 원을 관리하는 개략도이다. 캐릭터가 서버 전달 원에 진입하면 캐릭터의 논리 대상과 이름 태그가 즉시 생성된다. 플레이어가 자원 로딩 원에 더 들어가면 캐릭터 자원이 비동기적으로 로딩되기 시작하고 로딩이 완료된 후에 캐릭터 모델 인스턴스가 즉시 생성되어 표시된다. 그러나 자원 로딩, 인스턴스 생성 및 렌더링과 같은 작업은 자원 로딩 원에서 수행되어야 하며, PC 플랫폼에서 CPU와 GPU 모두의 성능은 이동 전화와 같은 이동단 기기의 성능보다 훨씬 더 우수하다. 따라서 자원 로딩 원이 비동기 자원 로딩 및 캐릭터 인스턴스 생성 작업을 구현하는 데 사용되는 경우 프레임 정지가 거의 발생하지 않다. 그러나 제한된 성능과 전력 소모량 및 열 방출에 대한 엄격한 요건을 가진 이동 기기는 빈약한 경험을 초래하고, 이러한 작업이 수행될 때 종종 프레임 정지가 발생한다.
이하에 먼저 본 발명의 기술적 방안에서 사용되는 몇몇 약어 및 주요 용어를 정의한다:
유니티(Unity): 업계에서 널리 사용되는 3D 게임 엔진으로, 게임 개발을 위한 기본적인 기능 및 개발 툴을 제공하며, 제품 개발의 효율성을 크게 향상시킬 수 있다. 그러나 특정 유형의 게임에 대한 성능 및 적용 가능성에는 몇 가지 문제가 있으며 프로젝트 팀은 개선을 수행해야 한다.
프리팹(Prefab): Unity 엔진의 아트 자원의 기본 관리 단위로서, 모델, 맵 또는 아트 프로덕션의 애니메이션을 사전 편집된 파일(pre-edited file)로 저장할 수 있다.
Game Object: Unity 엔진에서 게임을 실행하는 동안의 대상이며, 상이한 캐릭터 및 모델은 표시를 위해 상이한 GameObject 대상을 생성할 필요가 있다.
캐릭터 인스턴스(Character instance): 대규모 다중플레이어 네트워크 게임의 각 플레이어는 게임 내의 캐릭터를 제어하고, 캐릭터 모델, 즉 플레이어 캐릭터 인스턴스가 캐릭터마다 장면에 표시된다.
인스턴스화(Instantiation): 복수의 캐릭터가 아트 퍼포먼스에서 동일한 자원(템플릿)를 사용할 수 있지만, 퍼포먼스에서는 복수의 대상 인스턴스로서 표시된다. 인스턴스화는 아트 자원에 따라 복수의 게임 대상 인스턴스를 생성하는 프로세스를 말한다.
드레스 교체(Dress replacement): 플레이어가 다른 무기를 장착하거나 다른 의상을 입었을 때, 플레이어의 캐릭터 모델의 외관이 그에 따라 변화되고, 이 과정을 드레스 교체라고한다.
이름 태그: 캐릭터 모델 위에 매달린 정보 패널이며, 플레이어 이름, 성 또는 타이틀과 같은 텍스트를 표시하는 데 사용된다.
이 기술은 주로 다음과 같은 시나리오에 적용된다: 대규모의 다중 플레이어 원 화면 캐릭터 디스플레이 요건을 갖는 게임에서, 다수의 플레이어가 동적으로 장면 시야를 들어오거나 나갈 때, 플레이어 캐릭터 렌더링 계산 오버헤드 및 캐릭터 생성/삭제 프레임 정지 오버헤드가 최대로 감소된다. 도 14는 복수의 가상 대상이 동일한 화면 상에 표시되는 것을 나타내는 개략도이다. 기존 기술의 주요 문제점은 다음과 같다:
프리팹(Prefab) 및 그 프리팹에 포함되는 모델, 텍스처 및 애니메이션과 같은 자원의 로딩 오버헤드; Prefab 인스턴스 생성 오버헤드; 오버헤드 렌더링; 애니메이션 갱신 오버헤드; GameObject가 인에이블되는 경우에 엔진 데이터 갱신 오버헤드. 본 바명의 기술적 방안은 이러한 성능 문제를 효과적으로 해결할 수 있다.
도 15는 자원 관리기 및 캐릭터 인스턴스 대상 풀의 프레임 개략도이다. 기술 원리는 아래에 설명되어 있다. 도 15에 도시된 바와 같이, 캐릭터 관리자저(Actor Manager)는 모든 플레이어 캐릭터 대상 프로그램 클래스를 관리한다. 새로운 캐릭터 캐릭터에 대해 캐릭터 인스턴스를 생성해야 하는 경우 인스턴스 풀(Instance Pool)사용하여 애플리케이션을 제출한다. 인스턴스 풀은 새로운 인스턴스를 생성하기 전에 인스턴스 캐시(Instance Cache)의 복구 풀에서 기존 유휴 대상 인스턴스를 먼저 사용하여 새 인스턴스 생성의 오버헤드를 피하려고 한다.
인스턴스 풀이 인스턴스에 의해 요구되는 자원을 생성할 때, 인스턴스 풀은 자원 관리기(Resource Manager)를 사용하여 자원을 로딩한다. 자원 관리기에는 자원 인덱스 목록이 포함되어 있으며 동일한 자원을 인용할 때, 자원을 직접 추출할 수 있으므로 높은 오버헤드로 Unity 엔진 인터페이스를 통해 자원을 재로드하지 않도록 한다.
또한, 도 15는 단지 설계에 대한 간략한 설명을 도시한다. 구체적인 구현 시에, 캐릭터 인스턴스 대상 풀, 특수 효과 인스턴스 대상 풀, 무기 구성요소 대상 풀 및 기타 타깃 유형은 분할을 통해 추가로 획득되어 구별을 위해 구현을 특화하고 언로딩 알고리즘을 지연시킬 수 있다.
다음은 실시예를 사용하여 본 발명의 기술적 방안을 더 설명한다. 기술적 방안은 이동 단말기상의, 다수의 가상 대상이 동일한 화면 상에 표시되는 상호 작용 애플리케이션에 주로 적용된다. 주 가상 대상은 상호작용 애플리케이션의 디스플레이 인터페이스에 표시된다. 상호작용 애플리케이션은 이동 단말기상에 설치된 클라이언트로 지칭될 수 있다. 도 16은 본 발명의 실시예에 따라 애플리케이션에서 가상 대상을 처리하는 방법의 개략적인 실시예도이다. 이 방법은 다음을 포함한다:
401. 이동 단말기가, 제어 범위 내의 조작과 1 대 1로 대응하는 복수의 제어 범위를 포함하는 주 가상 대상을 중심으로 한 검출 범위를 검출하며, 이 조작은 제어 범위에 진입하는 가상 대상에 의해 수행되는 조작이다.
본 발명의 본 실시예에서, 이동 단말기는 주 가상 대상을 중심으로 하여 검출 범위를 검출한다. 검출 범위는 복수의 제어 범위를 포함한다. 복수의 제어 범위는 중심으로부터 다른 거리를 갖는 동심 제어 범위이며, 각각의 제어 범위는 제어 범위에서 수행되는 조작에 대응한다. 이 애플리케이션의 가상 대상(virtual object)는 가상 대상이라고도 한다.
예를 들어, 시야 원 내의 캐릭터 관리에 기초하여, 도 17은 이동 단말기상의 복수의 가상 대상의 시야 원 관리의 개략도이다. 복수의 제어 범위는 주 캐릭터를 중심으로 하여 설정되는 캐릭터 시야 원의 4개 계층, 즉 서버 전달 원, 자원 준비 원, 캐릭터 인스턴스화 원 및 가시화 원으로 이루어질 수 있다. 자원 준비 원은 자원 로딩 원이라고도 하고, 가시화 원은 시각 원이라고도 한다. 또한 프레임 정지를 줄이기 위해 해당 프로그램 알고리즘 정책이 구성된다. 즉, 다수의 플레이어 캐릭터가 동일 화면 상에 표시될 때의 계산 압박 및 시야를 반복적으로 출입하는 경우의 캐릭터 로딩 및 삭제 압력 등을 경감시킬 수 있다.
유의할 것은, 제어 범위는 주 캐릭터를 중심으로 하여 다른 반지름을 갖는 복수의 원이 될 수도 있고, 정사각형, 타원형 또는 다른 형태의 캐릭터 시야 원이 될 수도 있다는 것이다. 이것은 특별히 제한되지 않는다. 또한 3개 이상의 제어 범위가 있으며, 각각의 제어 범위는 대응하는 조작을 수행한다.
여기서 이동 단말기는 이동 전화, 태블릿 컴퓨터, 개인 휴대형 정보 단말기(PDA) 또는 온보드 컴퓨터와 같은 임의의 단말 기기를 포함할 수 있다. 유의해야 할 것은, 타깃 가상 대상 및 주 가상 대상은 게임에서의 캐릭터이며, 예를 들면 게임의 소장이나 병사와 같은 캐릭터가 될 수 있고, 이름은 Siliedetiantang, Fengchuipiyashuang, Mini`shihun, Bufulaima, Congxiaolizhidangjianke, Jiejiao, Shahongyan 등이 있다.
402. 검출 범위에서 타깃 가상 대상이 검출되면, 그 타깃 가상 대상과 주 가상 대상 사이의 거리를 결정한다.
본 발명의 실시예에서, 이동 단말기는 검출 범위 내의 타깃 가상 대상을 검출할 때, 타깃 가상 대상과 주 가상 대상 사이의 거리를 결정한다. 여기서, 주 가상 대상은 주 캐릭터이고, 타깃 가상 대상은 이미 이전에 온라인이었던 타깃 캐릭터일 수도 있고, 방금 온라인 상태였고 현재 검출 범위에 나타나는 타깃 캐릭터일 수도 있다. 이러한 방식으로, 주 캐릭터와 타깃 캐릭터 사이의 거리가 결정될 수 있다.
403. 거리에 따라, 타깃 가상 대상이 위치하는 제어 범위를 결정한다.
본 발명의 실시예에서, 이동 단말기는 검출 범위에서 타깃 가상 대상을 검출하면, 타깃 가상 대상과 주 가상 대상 사이의 거리를 결정한 후, 타깃 가상 대상이 속하는 제어 범위를 거리에 가깝게 설정한다.
도 17에 도시된 바와 같이, 복수의 제어 범위와 중심 사이의 거리는 서버 전달 범위, 자원 로딩 범위, 인스턴스화 범위 및 시각 범위를 포함하는 내림차순으로 정렬된다. 이 경우, 거리에 따라 타깃 가상 대상이 속하고 이동 단말기가 결정한 제어 범위는 서버 전달 범위, 자원 적재 범위, 인스턴스화 범위 또는 시각 범위일 수 있다. 구체적으로, 거리가 8m이면, 타깃 가상 대상이 속하는 제어 범위는 서버 전달 범위이다. 거리가 6m이면, 타깃 가상 대상이 속하는 제어 범위는 자원 로딩 범위이다. 거리가 4m이면, 타깃 가상 대상이 속하는 제어 범위는 인스턴스화 범위이다. 거리가 2m이면, 타깃 가상 대상이 속하는 제어 범위는 시각 범위이다. 본 명세서에서 단위 m는 가상 게임 세계에서의 단위로서 사용하는 미터임을 이해해야 한다.
404. 타깃 가상 대상이 위치하는 제어 범위에서 수행되는 조작에 따라 타깃 가상 대상을 처리한다.
본 발명의 실시예에서, 거리에 따라 타깃 가상 대상이 속한 제어 범위를 결정한 후, 이동 단말기는 타깃 가상 대상이 속하는 제어 대상 범위에 대응하는 실행 조작에 따라 타깃 가상 대상을 처리한다.
도 17에 도시된 바와 같이, 구체적으로, 타깃 가상 대상이 속하는 제어 범위에 대응하는 실행 조작에 따른 타깃 가상 대상의 처리는 다음 중 어느 하나를 포함한다:
(1) 타깃 가상 대상이 속하는 제어 범위가 서버 전달 범위를 포함할 때, 타깃 가상 대상에 대한 논리 대상을 생성하고, 논리 대상이 생성된 타깃 가상 대상에 대응하는 이름 태그 표시; 또는
(2) 타깃 가상 대상이 위치하는 제어 범위가 자원 로딩 범위를 포함할 때, 타깃 가상 대상에 대한 대응하는 자원 로딩; 또는
(3) 타깃 가상 대상이 위치하는 제어 범위가 인스턴스화 범위를 포함하는 경우, 타깃 가상 대상을 위해 로딩된 자원을 사용하여 타깃 가상 대상에 대응하는 타깃 인스턴스(target instance) 생성; 또는
(4) 타깃 가상 대상이 위치하는 제어 범위가 가시 범위를 포함하는 경우, 타깃 인스턴스에 대한 렌더링 계산을 수행하고 렌더링된 타깃 가상 대상 표시.
유의해야 할 것은 선택적으로, 몇몇 가능한 구현예에서, 이동 단말기는 자원 캐시를 포함한다는 것이다. 이 경우에, 타깃 가상 대상에 대한 대응하는 자원을 로딩하는 것은 다음을 포함할 수 있다:
① 자원 캐시가 타깃 가상 대상에 대한 인스턴스를 생성하기 위한 타깃 자원을 포함하는 경우, 자원 캐시로부터의 타깃 자원을 추출; 또는
② 자원 캐시에 타깃 가상 대상에 대한 인스턴스를 생성하기 위한 타깃 자원이 포함되어 있지 않은 경우 타깃 자원을 비동기적으로 로딩.
또한, 선택적으로, 몇몇 가능한 구현예에서, 이동 단말기는 인스턴스 캐시를 더 포함할 수 있다. 타깃 인스턴스에 대해 렌더링 계산을 수행하고 렌더링된 타깃 가상 대상을 표시하기 전에,
인스턴스 캐시가 타깃 가상 대상에 대응하는 타깃 인스턴스를 포함하는 경우, 타깃 인스턴스를 재사용하는 단계가 더 수행될 수 있으며; 타깃 인스턴스에 대한 렌더링 계산을 수행하고 렌더링된 타깃 가상 대상을 표시하는 것은 타깃 인스턴스에 대한 렌더링 계산을 수행하고 렌더링된 타깃 가상 대상을 표시하는 단계를 포함할 수 있다.
선택적으로, 몇몇 가능한 구현예에서, 대응하는 자원을 사용하여 타깃 가상 대상에 대응하는 타깃 인스턴스를 생성하는 것은, 인스턴스 캐시가 타깃 가상 대상에 대응하는 타깃 인스턴스를 포함하지 않으면, 타깃 가상 대상에 대한 인스턴스를 생성하기 위한 자원을 획득하고; 타깃 자원을 사용하여 타깃 인스턴스를 생성하는 것을 더 포함할 수 있다.
다음은 타깃 캐릭터가 처음으로 온라인일 때 상이한 제어 범위에서 수행되는 상이한 동작을 더 설명한다:
1. 타깃 캐릭터가 속하는 제어 범위는 서버 전달 원이며, 타깃 캐릭터는 자원 로딩 원, 인스턴스화 원 및 시각 원을 통과하도록 연속적으로 이동한다.
(1) 타깃 캐릭터가 현재 서버 전달 원에 있는 경우, 이동 단말기는 타깃 캐릭터에 대한 결정을 수행하여 논리 대상이 생성되었는지를 판정한다. 논리 대상이 생성되지 않은 경우, 이동 단말기는 타깃 캐릭터의 논리 대상을 생성하고, 타깃 대상의 이름 태그를 표시한다. 논리 대상이 생성되면, 이동 단말기는 타깃 대상의 이름 태그를 직접 표시한다.
(2) 타깃 캐릭터가 자원 로딩 원으로 이동하면, 이동 단말기는 먼저 타깃 캐릭터에 대한 논리 대상이 생성되었는지를 판정한다. 논리 대상이 생성된 경우, 이동 단말기는 타깃 캐릭터에 대한 자원을 로딩한다. 물론, 타깃 캐릭터가 서버 전달 원에서 자원 로딩 원으로 이동하기 때문에, 판정 결과는 논리 대상이 생성되었다는 것이다. 논리 대상이 생성되지 않은 경우, 이동 단말기는 먼저 타깃 캐릭터에 대한 논리 대상을 생성한 다음, 자원을 로딩한다.
또한, 이동 단말기는 타깃 캐릭터에 대한 자원을 로딩하는 경우, 자원 캐시에 타깃 캐릭터의 자원이 저장되어 있는지를 판정하고, 그렇다면, 자원을 직접 재사용할 수 있지만, 그렇지 않다면, 이동 단말기는 타깃 캐릭터에 대해 비동기 인스턴스 로딩에 필요한 자원을 생성하기 위해 자원 관리기를 사용할 필요가 있다. 타깃 캐릭터가 자원 로딩 원에 있을 때, 이동 단말기는 여전히 타깃 캐릭터의 이름 태그를 표시한다.
(3) 타깃 캐릭터가 캐릭터 인스턴스화 원으로 이동하면, 이동 단말기는 우선 타깃 캐릭터에 대해 논리 대상이 생성되었는지를 판정한다. 논리 대상이 생성된 경우, 이동 단말기는 타깃 캐릭터에 대한 자원을 로딩한다. 물론, 타깃 캐릭터가 서버 전달 원에서 자원 로딩 원으로 이동한 다음 여기에서 캐릭터 인스턴스화 원으로 이동하기 때문에, 판정 결과는 논리 대상이 생성되었다는 것이다. 논리 대상이 생성되지 않은 경우, 이동 단말기는 먼저 타깃 캐릭터에 대한 논리 대상을 생성한 다음, 자원을 로딩한다.
또한, 이동 단말기가 타깃 캐릭터에 대한 자원을 로딩하는 경우, 이동 단말기는 우선 타깃 캐릭터에 대한 인스턴스를 생성하기 위한 자원이 자원 캐시에 저장되어 있는지를 판단하고, 그렇다면 이동 단말기는 자원을 직접 재사용하지만, 그렇지 않다면, 이동 단말기는 타깃 캐릭터에 대해 비동기 인스턴스 로딩에 필요한 자원을 생성하기 위해 자원 관리기를 사용할 필요가 있다.
또한, 이동 단말기는 자원 로딩 원에 의해 획득된 자원을 이용하여 타깃 캐릭터에 대한 인스턴스를 생성할 수 있다. 타깃 캐릭터가 캐릭터 인스턴스화 원에 있으면 타깃 캐릭터가 표시되지 않으며, 즉 렌더링 및 인스턴스 갱신트 계산 오버헤드가 발생하지 않고 타깃 캐릭터의 이름 태그가 계속 표시된다.
(4) 타깃 캐릭터가 시각 원으로 이동하면, 이동 단말기는 먼저 타깃 캐릭터에 대해 논리 대상이 생성되었는지를 판정한다. 논리 대상이 생성된 경우, 이동 단말기는 타깃 캐릭터에 대한 자원을 로딩한다. 물론, 타깃 캐릭터가 서버 전달 원에서 자원 로딩 원으로 이동하고, 캐릭터 인스턴스화 원으로 이동한 다음 최종적으로 시각 원으로 이동하기 때문에, 판정 결과는 논리 대상이 생성되었다고 결정한다. 논리 대상이 생성되지 않은 경우, 이동 단말기는 먼저 타깃 캐릭터에 대한 논리 대상을 생성한 다음, 자원을 로딩한다.
또한, 이동 단말기가 타깃 캐릭터에 대한 자원을 로딩하는 경우, 이동 단말기는 먼저 타깃 캐릭터에 대한 인스턴스를 생성하기 위한 자원이 자원 캐시에 저장되어 있는지를 판정하고, 그렇다면 이동 단말기는 자원을 직접 재사용하지만, 그렇지 않으면, 이동 단말기는 타깃 캐릭터에 대해 비동기 인스턴스 로딩에 필요한 자원을 생성하기 위해 자원 관리기를 사용할 필요가 있다.
또한, 상기 이동 단말기는 자원 로딩 원에 의해 획득된 자원을 이용하여 타깃 캐릭터에 대한 인스턴스를 생성할 수 있다. 타깃 캐릭터가 캐릭터 인스턴스화 원에 있으면 타깃 캐릭터가 표시되지 않고, 즉 렌더링 및 인스턴스 갱신 계산 오버헤드가 발생하지 않고 타깃 캐릭터의 이름 태그가 계속 표시된다.
마지막으로, 이동 단말기는 타깃 캐릭터에 대해 생성된 캐릭터 인스턴스를 인에이블하고, 실제 렌더링 및 계산을 수행하며, 랜더링된 타깃 캐릭터를 이동 단말기에 표시한다.
유의해야 할 것은, "1"의 설명에서, 온라인인 타깃 캐릭터가 속한 제어 범위가 서버 전달 원인 경우, 타깃 캐릭터가 자원 로딩 원을 통과하여 계속해서 이동하여, 이동 중지하거나 또는 오프라인으로 이동하거나, 자원 로딩 원과 인스턴스화 원을 계속 통과한 다음 이동을 중지하거나 오프라인으로 전환하면, 앞의 설명을 참조할 수 있다. 세부사항은 여기에서 다시 설명하지 않는다.
2. 타깃 캐릭터가 속하는 제어 범위는 시각원이며, 타깃 캐릭터는 인스턴스화 원, 자원 로딩 원 및 서버 전달 원을 통과하도록 연속적으로 이동한다.
(1) 타깃 캐릭터가 처음으로 비주얼 원에 나타나도록 온라인으로 되면, 이동 단말기는 먼저 타깃 캐릭터에 대한 논리 대상이 생성되었는지를 판정하고, 논리 대상이 생성되지 않은 경우, 이동 단말기는 타깃 캐릭터의 논리 대상을 생성하고; 또는 논리 대상이 생성된 경우, 이동 단말기는 생성된 논리 대상을 직접 재사용한다. 논리 대상이 생성되지 않은 경우, 이동 단말기는 타깃 애플리케이션을 위한 순수한 논리 캐릭터 대상을 생성한다.
다음으로, 이동 단말기는 타깃 캐릭터에 대한 인스턴스가 생성되었는지를 판정한다. 인스턴스가 생성된 경우, 이동 단말기는 인스턴스 캐시의 타깃 캐릭터의 인스턴스를 재사용하여 인스턴스의 재사용을 달성하고, 새로운 인스턴스를 생성하기 위한 오버헤드를 회피할 수 있다. 인스턴스가 생성되지 않은 경우, 이동 단말기는 타깃 캐릭터에 대한 인스턴스를 생성하기 위한 자원을 획득할 필요가 있다.
또한, 이동 단말기는 타깃 캐릭터에 대한 인스턴스를 생성하기 위한 자원을 획득하기 위해 먼저 타깃 캐릭터의 자원이 캐싱되었는지 여부를 판단하고, 캐싱된 자원이 있다면 자원 캐시로부터 캐싱 자원을 직접 추출할 수 있고; 그렇지 않으면, 이동 단말기는 타깃 캐릭터에 대한 인스턴스를 생성하기 위한 자원을 획득하기 위해 비동기 자원 로딩을 수행하기 위해 자원 관리기를 사용할 필요가 있다.
또한, 이동 단말기는 획득된 자원을 사용하여 타깃 캐릭터에 대한 인스턴스를 생성한다.
마지막으로, 생성된 타깃 캐릭터의 인스턴스를 인에이블하고, 실제의 렌더링 및 계산을 수행하고, 이동 단말기상에 렌더링된 타깃 캐릭터를 표시한다, 즉 캐릭터를 표시한다.
(2) 타깃 캐릭터가 인스턴스화 원으로 이동하면, 이동 단말기는 타깃 캐릭터에 대한 논리 대상이 생성되었는지를 더 판정하고, 그렇지 않은 경우, 타깃 캐릭터의 논리 대상을 생성하거나, 또는 그렇다면, 이동 단말기는 타깃 캐릭터의 인스턴스가 생성되었는지를 판정하고, 타깃 캐릭터의 인스턴스가 생성되었다면, 이동 단말기는 인스턴스 캐시로부터 인스턴스를 직접 재사용하고; 타깃 캐릭터의 인스턴스가 생성되지 않은 경우, 이동 단말기는 타깃 캐릭터의 인스턴스를 생성하기 위한 자원을 획득하고, 자원을 사용하여 타깃 캐릭터의 인스턴스를 생성할 필요가 있다.
타깃 캐릭터의 인스턴스를 생성하기 위한 자원을 획득하기 위해, 이동 단말기는 먼저 타깃 캐릭터의 인스턴스를 생성하기 위한 자원이 캐싱되었는지를 판정할 수 있고, 그렇다면 이동 단말기는 캐싱된 데이터를 직접 추출할 수 있고, 그렇지 않다면, 이동 단말기는 타깃 인스턴스를 생성하는 데 필요한 자원을 비동기적으로로딩하기 위해 자원 관리기를 사용할 필요가 있다.
타깃 캐릭터에 대한 인스턴스를 생성하기 위한 자원을 획득하기 위해, 이동 단말기는 자원을 사용하여 타깃 캐릭터의 인스턴스를 생성할 수 있다. 그러나, 이 경우 이동 단말기에는 타깃 캐릭터의 이름 태그가 표시된다.
(3) 타깃 캐릭터가 자원 로딩 원으로 이동하면, 이동 단말기는 타깃 캐릭터에 대한 논리 대상이 생성되었는지를 더 판정하고, 그렇다면 이동 단말기는 타깃 캐릭터에 대한 인스턴스를 생성하기 위한 자원을 획득하고; 그렇지 않다면, 이동 단말기는 타깃 캐릭터의 논리 대상을 생성한다. 이동 단말기가 타깃 캐릭터에 대한 인스턴스를 생성하기 위한 자원을 획득하는 것은 대안으로, 이동 단말기가 타깃 캐릭터의 인스턴스를 생성하기 위한 자원이 캐싱되었는지를 판정하고, 그렇다면 이동 단말기는 캐싱된 데이터를 직접 추출할 수 있고; 그렇지 않다면, 이동 단말기가 타깃 인스턴스를 생성하는 데 필요한 자원을 비동기적으로 로딩하기 위해 자원 관리기를 사용할 필요가 있다는 것이다. 이 경우, 이동 단말기에는 여전히 타깃 캐릭터의 이름 태그가 표시된다.
(4) 타깃 캐릭터가 서버 전달 원으로 이동한 경우, 이동 단말기는 타깃 캐릭터에 대한 논리 대상이 생성되었는지를 더 판정하고, 그렇다면 이동 대상은 논리 대상을 직접 사용하고, 그렇지 않다면, 이동 단말기는 타깃 캐릭터의 논리 대상을 생성한다.
유의해야 할 것은, "2"의 설명에서, 온라인인 타깃 캐릭터가 속하는 제어 범위가 시각 원이면, 타깃 캐릭터가 인스턴스화 원을 통과하여 계속해서 이동하거나, 이동을 중지하거나, 오프라인으로 갈 수 있는 경우 또는 타깃 캐릭터는 인스턴스화 원 및 자원 로딩 원을 통과하여 계속 이동한 다음 이동을 중지하거나 오프라인으로 갈수 있는 경우, 이전 설명을 참조할 수 있다. 세부사항은 여기에서 다시 설명하지 않는다.
이해해야 할 것은 전술한 설명은 단지 하나의 타깃 캐릭터에 대해서만 제공된다는 것이다. 실제 적용 시에, 다중플레이어 한 화면 표시 중에 다수의 타깃 캐릭터가 포함되고, 각각의 타깃 캐릭터는 전술한 방법과 유사한 방법을 사용하여 처리된다. 자원 관리기, 인스턴스 대상 풀 및 시야 원 관리 기술을 참조하면 캐릭터가 반복적으로 시야에 들어 오거나 나가는 경우 자원 로딩 및 인스턴스 생성/삭제오버헤드가 크게 감소된다. 또한 하드웨어 성능 및 실시간 프레임 레이트에 따른 동적 파라미터 조정 메커니즘과 게임 플레이 방식에 따라 설계된 캐릭터 숨기기 정책을 사용하여 한 화면에 수많은 캐릭터를 표시하는 렌더링 및 계산 오버헤드가 현저하게 감소된다.
405. 타깃 가상 대상에 대한 스킨 교체 명령을 수신한다.
본 발명의 본 실시예에서, 이동 단말기는 타깃 가상 대상에 대한 스킨 교체 명령을 수신한다. 여기서의 타깃 가상 대상은 주 캐릭터일 수도 있고, 다른 타깃 캐릭터일 수도 있다. 유의해야 할 것은, 이동 단말기가 주 캐릭터 또는 타깃 캐릭터에 대해 스킨 교체를 수행하기 전에, 골격 및 모델의 무결성이 보장될 필요가 있다는 것이다. 본 명세서에서의 스킨 교체는 드레스 교체라고도 할 수 있다.
롤 플레잉 게임(role-playing game, RPG) 유형의 게임에서, 통상 캐릭터에 대한 무기 교체 중에 외관 스킨을 동기적으로 스위칭하는 기능적 요건이 있다. 수많은 캐릭터가 시야에 들어가거나 나오거나 무기를 교체할 때 표시 스킨을 전환하는 데 많은 자원이 로딩되기 때문에 심각한 프레임 정지가 발생한다.
406. 타깃 가상 대상에 대응하는 골격 데이터(skeleton data), 타깃 메시 데이터(target mesh data) 및 타깃 재료 데이터(target material data)를 획득한다.
기존 기술에서 Unity 엔진에 의해 공식적으로 제공되는 구현 단계는 다음과 같다:
1. 새로운 스킨의 프리팹을 로딩한다.
2. 새로운 스킨의 프리팹을 인스턴스화한다.
3. 원래 인스턴스에서의 모델 노드를 새로운 인스턴스에서의 모델 노드로 교체한다.
4. 골격 이름에 따라 원래 인스턴스의 모든 골격 노드를 탐색하고 결과에 따라 스킨된 메시 렌더러(skinned mesh renderer)에서 골격 인덱스를 다시 정렬한다.
본 발명의 실시예에서, 이동 단말기는 타깃 가상 대상에 대한 스킨 교체 명령을 수신한 후, 타깃 가상 대상에 대응하는 골격 데이터와, 교체를 위한 타깃 메시 데이터 및 타깃 재료 데이터를 획득한다. 즉, 이동 단말기는 새로운 스킨의 메시 및 재료 자원(모델로부터 도출된 골격의 일관성이 보장되어야 함)을 직접 로딩할 수 있다.
407. 골격 데이터에 바인딩된 원 매시 데이터를 타깃 메시 데이터로 교체하고 골격 데이터에 바인딩된 원 재료 데이터를 타깃 재료 데이터로 교체한다.
본 발명의 본 실시예에서는, 타깃 가상 대상에 대응하는 골격 데이터와, 교체를 위한 타깃 메시 데이터 및 타깃 재료 데이터를 획득한 후에, 상응하게 골격 데이터에 바인딩된 원 메시 데이터와 원 재료 데이터를 타깃 메시 데이터 및 타깃 재료 데이터로 교체한다.
즉, 이동 단말기는 스킨 메시 렌더러에서 교체를 위한 메시와 재료를 직접 사용한다. 수정 후에, 프리팹 계층적 로딩 및 인스턴스화 단계가 생략되었으므로, 스킨 교체 오버헤드가 크게 감소된. 다수의 플레이어가 시야에 들어 오거나 나갈 때 이동 단말기의 프레임 정지의 원래 경험은 크게 개선된다. 드레스 교체 최적화 메커니즘에서 골격과 모델의 무결성이 보장되고 유니티 엔진의 프리팹 계층적 인스턴스화 단계가 생략되고, 기본 노드 모델과 재료 자원을 직접 교체하는 방법이 사용되므로, 스킨 교체 프로그램의 실행의 효율이 향상된다.
단계 405 내지 단계 407은 선택적인 단계임을 유의해야 한다. 실제 적용 시에, 단계 405 내지 407가 수행되는지 여부는 실제 요건에 따라 결정될 수 있다. 또한, 단계 405 내지 407의 시퀀스 순서 및 단계 401 내지 404의 시퀀스 순서는 한정되지 않는다.
본 명세서에서 언급된 기술적 방안은 단지 전체적인 설계 아이디어를 기술하기 위한 것이며, 구체적인 알고리즘은 상이한 프로젝트에 대해 유도될 수 있다는 것을 이해해야 한다. 예를 들어, 시야 원은 자원 미리 로딩 원 또는 시각 원을 사용할 수 없지만 다른 원에 결합된다. 구체적인 스킨 교체 알고리즘은 일부 골격과 함께 교체되거나, 재료는 직접 교체되고 스킨과 프리팹이 함께 로딩될 수 있다.
본 발명의 실시예에서, 상기 방법은 이동 단말기상의, 복수의 가상 대상이 동일한 화면 상에 표시되는 상호작용 애플리케이션에 적용된다. 주 가상 대상은 상호작용 애플리케이션의 디스플레이 인터페이스에 표시된다. 이동 단말기는 주 가상 대상을 중심으로 검출 범위를 검출한다. 검출 범위는 복수의 제어 범위를 포함한다. 복수의 제어 범위는 중앙으로부터 상이한 거리를 갖는 동심 제어 범위이며, 복수의 제어 범위는 서로 겹치지 않으며, 각각의 제어 범위는 제어 범위에서 수행되는 조작에 대응한다. 검출 대상 범위 내에서 타깃 가상 대상이 검출되면, 그 타깃 가상 대상과 주 가상 대상과의 거리가 결정된다. 타깃 가상 대상이 속하는 제어 범위는 거리에 따라 결정된다. 타깃 가상 대상은 자신이 속한 제어 범위에 대응하는 조작에 따라 처리된다. 이동 단말기는 각각의 제어 범위에서 대응하는 조작을 수행하기 때문에, 렌더링된 타깃 가상 대상의 최종 표시를 위한 준비를 하고, 동일한 화면 상에 대량의 가상 대상이 표시되는 경우에 자원 할당을 최적화하고, 프레임 정지가 발생할 확률을 감소시키는, 각각의 제어 범위에 대한 적절한 조작 안배가 존재한다.
자원 관리기와 인스턴스 대상 풀을 시야 원 관리 기술과 조합하여 사용함으로써, 캐릭터가 반복적으로 시야에 출입하는 경우의 자원 로딩 및 인스턴스 생성/삭제 오버헤드가 크게 감소된다. 또한 하드웨어 성능 및 실시간 프레임 속도에 따른 동적 파라미터 조정 메커니즘과 게임 플레이 방식에 따라 설계된 캐릭터 숨기기 정책을 사용하여 한 화면에 수많은 캐릭터를 표시하는 렌더링 및 계산 오버헤드가 현저하게 감소된다. 캐릭터 스킨 교체 메커니즘의 최적화는 프로젝트 기능을 대상으로 하며 앞서 언급한 기술을 기반으로 무기 교체 중 필연적인 자원 로딩 및 전환 오버헤드가 더욱 개선된다.
다음은 실제 적용 시나리오를 사용하여 본 발명의 기술적 방안을 더 설명한다. 아래와 같다:
이동 전화상의 다중 롤 플레이잉 게임(multi-role playing game)에서, 주 캐릭터는 Aozhan이고, 타깃 캐릭터 1은 Kaiguomengjiang이고, 타깃 캐릭터 2는 Zhenbianjiangjun이고, 타깃 캐릭터 3은 Zhenguanjiangjun이라고 가정한다.
이동 전화상에서, 주 캐릭터 인 Aozhan을 중심으로하여, 시야 원 관리를 도 17에 도시하는 4개의 원, 즉 서버 전달 원, 자원 준비 원, 캐릭터 인스턴스화 원 및 가시화 원으로 분할한다. 이 경우, 타깃 캐릭터 1이 온라인일 때, 타깃 캐릭터 1로부터 주 캐릭터까지의 거리 S1이 결정되고, 거리 S1에 따라 타깃 캐릭터 1이 속하는 링 조작 범위(ring operating range)가 결정된다. 여기에서 결정된 링 조작 범위는 자원 로딩 원이다. 이동 전화는 타깃 캐릭터 1에 대한 결정을 수행하여 논리 대상이 생성되었는지를 결정하고, 그렇다면 타깃 캐릭터 1에 대한 자원을 로딩할 수 있다; 또는 그렇지 않다면, 이동 전화는 먼저 타깃 캐릭터 1에 대한 논리 대상을 생성한 다음 그 자원을로딩 할 필요가 있다. 또한, 자원 로딩 중에, 자원 캐시가 타깃 캐릭터 1의 자원을 포함하는지를 먼저 판정할 수 있고, 그렇다면 직접 자원을 획득할 수 있거나, 그렇지 않다면, 이동 전화는 자원 관리기를 사용하여 자원을 비동기적으로 로딩할 필요가 있다. 이름 태그, 즉 타깃 캐릭터의 Kaiguomengjiang이 자원 로딩 원에 표시된다.
계속해서, 타깃 캐릭터 1이 더 이동한다. 이동 전화는 타깃 캐릭터 1과 주 캐릭터 사이의 거리를 획득하고, 그 거리에 따라 타깃 캐릭터 1이 속하는 링 조작 범위를 결정한다. 타깃 캐릭터 1이 서버 전달 원에 속하는 경우, 이동 전화기는 타깃 캐릭터 1에 대한 판정을 더 수행하여 논리 대상이 생성되었는지를 판정하고, 그렇다면 이동 전화는 타깃 캐릭터 1의 이름 태그를 직접 표시하고, 그렇지 않다면, 먼저 타깃 캐릭터 1에 대한 논리 대상을 생성하고 타깃 캐릭터 1의 이름 태그 인 Kaiguomengjiang을 표시한다.
타깃 캐릭터 1과 주 캐릭터 사이의 거리가 서버 전달 원의 최대 직경보다 큰 경우, 타깃 캐릭터 1은 이동 전화에 표시되지 않고, 타깃 캐릭터 1은 오프라인일 수 있거나, 방황하면서 서버 전달 원 밖에서 머무를 수 있다.
타깃 캐릭터 2가 온라인인 경우, 타깃 캐릭터 2와 주 캐릭터 사이의 거리 S2에 따라, 타깃 캐릭터 2가 속하는 링 조작 범위가 시각 원에 속하는 것으로 결정된다. 이 경우, 이동 전화는 먼저 타깃 캐릭터 2에 대한 인스턴스가 생성되었는지 여부를 결정할 수 있고, 그렇다면 타깃 캐릭터는 인스턴스를 직접 재사용하여 실제 렌더링 및 계산을 수행하고 렌더링된 타깃 캐릭터 2(타깃 캐릭터 2의 이름 태그인 Zhenbianjiangjun을 포함)를 이동 전화에 표시한다. 생성된 인스턴스의 자원을 직접 사용할 수 있으므로 자원 오버헤드가 감소된다.
인스턴스가 생성되지 않은 경우, 이동 전화는 타깃 캐릭터 2에 대한 결정을 수행하여 논리 대상이 생성되었는지 여부를 결정하고, 그렇다면 이동 전화는 타깃 캐릭터 2의 이름 태그를 직접 표시하고; 그렇지 않다면, 이동 전화는 타깃 캐릭터에 대한 논리 대상을 생성한다. 그 다음, 이동 전화는 타깃 캐릭터 2에 대한 인스턴스를 생성하기 위한 자원이 캐싱되었는지 여부를 결정하고, 그렇다면 이동 전화는 캐싱된 자원을 직접 획득하여, 엔진의 반복된 자원 로딩으로 인한 오버헤드를 회피할 수 있고; 그렇지 않다면, 이동 전화기는 비동기적으로 자원을 로딩할 필요가 있다.
이동 전화는 타깃 캐릭터 2에 대한 인스턴스를 생성하기 위한 자원을 획득하면, 자원을 사용하여 타깃 캐릭터 2에 대한 인스턴스를 생성한다. 인스턴스를 생성한 후에, 이동 전화는 생성된 캐릭터 인스턴스를 인에이블시키고, 실제 렌더링 및 계산을 수행하고 렌더링된 타깃 캐릭터 2(타깃 캐릭터 2의 이름 태그인 Zhenbianjiangjun 포함)를 표시한다.
타깃 캐릭터 3이 온라인인 경우, 이동 전화는 타깃 캐릭터 3과 주 캐릭터 사이의 거리 S3을 결정하고, 거리 S3에 따라 타깃 캐릭터 3이 인스턴스화 원에 위치 하는지를 결정한다. 이동 전화는 우선 인스턴스가 타깃 캐릭터 3에 대해 생성되었는지 여부를 결정하고, 그렇다면, 이동 전화는 인스턴스 캐시로부터 인스턴스를 직접 재사용할 수 있고, 새로운 인스턴스를 생성할 필요가 없으므로 자원 오버헤드를 감소시킬 수 있다. 인스턴스가 생성되지 않다면, 이동 전화는 타깃 캐릭터 3에 대한 인스턴스를 생성해야 하며 인스턴스 생성 중에 이동 전화는 먼저 인스턴스를 생성하기 위한 자원을 획득해야 한다. 자원 캐시가 타깃 캐릭터 3에 대한 인스턴스를 생성하기 위한 자원을 포함하는 경우, 자원은 직접 획득될 수 있고; 그렇지 않은 경우, 이동 전화는 인스턴스를 생성하기 위한 자원을 로딩하고, 획득된 자원에 따라 타깃 캐릭터 3에 대한 인스턴스를 생성해야 한다. 이 경우, 타깃 캐릭터 3의 이름이 Zhenguanjiangjun 이동 전화에 표시된다.
타깃 캐릭터 3이 시각 원으로 이동하면, 타깃 캐릭터 3의 생성된 인스턴스를 인에이블하고, 렌더링 및 계산을 수행하며, 렌더링된 타깃 캐릭터 3을 표시할 수 있다.
본 발명의 본 실시예에서는, 시야 원 관리 기술과 조합하여 자원 관리기와 인스턴스 대상 풀을 사용함으로써, 캐릭터가 반복적으로 시야에 출입하는 경우의 자원 로딩 및 인스턴스 생성/삭제 오버헤드가 크게 줄어든다.
이상, 본 발명의 실시예에에서 애플리케이션에서의 가상 대상의 처리 방법을 설명하였다. 다음은 본 발명의 실시예에 따른 이동 단말기를 설명한다. 도 18은 이동 단말기의 개략 실시예도이다. 본 발명의 실시예에 따른 이동 단말기는 다수의 가상 대상이 동일 화면 상에 표시되는 상호작용 애플리케이션을 포함하고, 상호작용 애플리케이션의 디스플레이 인터페이스 상에 주 가상 대상이 표시된다. 상기 이동 단말기는,
주 가상 대상을 중심으로 하여 검출 범위를 검출하도록 구성된 검출 모듈(601) - 검출 범위는 복수의 제어 범위를 포함하고, 각각의 제어 범위는 제어 범위 내의 조작에 대응함 - ;
검출 범위 내에서 타깃 가상 대상이 검출되는 경우, 타깃 가상 대상과 주 가상 대상 사이의 거리를 결정하도록 구성된 제1 결정 모듈(602);
거리에 따라, 타깃 가상 대상이 위치하는 제어 범위를 결정하도록 구성된 제2 결정 모듈(603); 및
타깃 가상 대상이 속하는 제어 범위에 대응하는 실행 조작에 따라, 타깃 가상 대상을 처리하도록 구성된 처리 모듈(604)을 포함한다.
선택적으로, 본 발명의 일부 실시예에서, 복수의 제어 범위와 중심 사이의 거리는, 서버 전달 범위, 자원 로딩 범위, 인스턴스화 범위 및 시각 범위를 포함하하여, 내림차순으로 배열된다.
처리 모듈(604)은 구체적으로,
가상 대상이 위치하는 제어 범위가 서버 전달 범위인 경우, 가상 대상에 대한 논리 대상을 생성하고, 논리 대상이 생성된 타깃 가상 대상에 대응하는 이름 태그 표시; 또는
타깃 가상 대상이 위치하는 제어 범위가 자원 로딩 범위인 경우, 타깃 가상 대상에 대한 대응하는 자원 로딩; 또는
타깃 가상 대상이 위치하는 제어 범위가 인스턴스화 범위인 경우, 타깃 가상 대상에 대한 로딩된 자원을 사용하여 타깃 가상 대상에 대응하는 타깃 인스턴스 생성; 또는
가상 대상이 위치하는 제어 범위가 가시화 범위인 경우, 타깃 인스턴스에 대해 렌더링 계산을 수행하고 렌더링된 타깃 가상 대상 표시 중 적어도 하나를 수행하도록 구성된다.
선택적으로, 본 발명의 일부 실시예에서, 이동 단말기는 자원 캐시를 포함하고,
처리 모듈(604)은 구체적으로, 자원 캐시가 타깃 가상 대상에 대한 인스턴스를 생성하기 위한 제1 자원을 포함하면, 자원 캐시로부터 제1 자원을 추출하도록 구성되거나; 또는
처리 모듈(604)은 구체적으로, 자원 캐시가 타깃 가상 대상에 대한 인스턴스를 생성하기 위한 제1 자원을 포함하지 않으면, 제1 자원을 비동기적으로 로딩하도록 구성된다.
선택적으로, 본 발명의 일부 실시예에서, 이동 단말기는 인스턴스 캐시를 포함하고, 이동 단말기는 다음을 더 포함한다:
처리 모듈(604)이 구체적으로, 인스턴스 캐시가 타깃 가상 대상에 대한 제1 인스턴스를 포함하면, 제1 인스턴스를 재사용하고; 제1 인스턴스에 대한 렌더링 계산을 수행하여 랜더링된 타깃 가상 대상을 표시하도록 구성된다.
선택적으로, 본 개시의 일부 실시예에서, 이동 단말기는 인스턴스 캐시를 포함하고,
처리 모듈(604)은 구체적으로, 인스턴스 캐시가 타깃 가상 대상에 대응하는 제1 인스턴스를 포함하지 않으면, 타깃 가상 대상을 위한 인스턴슬르 생성하기 위한 제1 자원을 획득하고; 제1 자원을 사용하여 제1 인스턴스를 생성하도록 구성된다.
선택적으로, 본 발명의 일부 실시예에서, 도 18에 기초하여, 도 19는 이동 단말기의 또 다른 개략 실시예도이다. 이동 단말기는,
타깃 가상 대상에 대한 스킨 교체 명령을 수신하도록 구성된 수신 모듈(605);
타깃 가상 대상에 대응하는 골격 데이터와, 교체를 위한 타깃 메시 데이터 및 타깃 재료 데이터를 획득하도록 구성된 획득 모듈(606); 및
골격 데이터에 바인딩 원 메시 데이터 및 원 재료 데이터를 타깃 메시 데이터 및 타깃 재료 데이터로 상응하게 교체하도록 구성된 대체 모듈(607)을 포함한다.
도 20은 본 발명의 일 실시예에 따른 이동 단말기의 또 다른 개략 실시예도이다. 설명의 용이함을 위해, 본 발명의 본 실시예와 관련된 부분 만이 도시된다. 개시되지 않은 구체적인 기술적 세부 사항에 대해서는, 본 발명의 실시예의 방법 부분을 참조한다.
도 20은 본 발명의 일 실시예에 따른 단말기와 관련된 이동 전화의 일부 구성을 나타낸 블록도이다. 도 20에 도시된 바와 같이, 이동 전화는 RF 회로(810), 메모리(820), 입력 유닛(830), 디스플레이 유닛(840), 센서(850), 오디오 회로(860), 와이파이(Wi-Fi) 모듈(870), 프로세서(880) 및 전원(890)을 포함할 수 있다. 도 20에 도시된 구성 요소는 이동 전화에 대한 제한을 구성하지 않으며, 이동 전화는 도면에 도시된 구성요소보다 많은 구성요소 또는 보다 적은 구성요소를 포함할 수 있거나 일부 구성요소가 결합되거나 다른 구성 배치가 사용될 수 있다.
이하, 이동 전화기의 각 구성 요소에 대해 도 20을 참조하여 구체적으로 설명한다.
RF 회로(810)는 정보의 수신 및 전성 처리 또는 호 처리 중에 신호를 송수신하도록 구성될 수 있다. 구체적으로, RF 회로는 기지국으로부터 다운링크 정보를 수신하고, 처리를 위해 프로세서(880)에 다운링크 정보를 전달하고, 관련된 업링크 데이터를 기지국에 전송한다. 일반적으로, RF 회로(810)는 안테나, 적어도 하나의 증폭기, 송수신기, 커플러, 저잡음 증폭기(LNA) 및 듀플렉서를 포함하지만, 이에 한정되는 것은 아니다. 또한, RF 회로(810)는 또한 무선 통신에 의해 네트워크 및 다른 장치와 통신할 수 있다. 무선 통신은 GSM(Global System for Mobile communications), GPRS(General Packet Radio Service), CDMA(Code Division Multiple Access), WCDMA(Wideband Code Division Multiple Access), LTE(Long Term Evolution), 전자 메일, SMS(Short Messaging Service) 등의 임의의 통신 표준 또는 프로토콜을 사용할 수 있지만, 이에 한정되는 것은 아니다.
메모리(820)는 소프트웨어 프로그램 및 모듈을 저장하도록 구성될 수 있다. 프로세서(880)는 메모리(820)에 저장된 소프트웨어 프로그램 및 모듈을 실행하여 이동 전화의 다양한 기능적 애플리케이션 및 데이터 처리를 구현한다. 메모리(820)는 주로 프로그램 저장 영역 및 데이터 저장 영역을 포함할 수 있다. 프로그램 저장 영역은 운영체제, 적어도 하나의 기능(사운드 재생 기능 및 이미지 표시 기능과 같은)에 의해 요구되는 애플리케이션 프로그램 등을 저장할 수 있다. 데이터 저장 영역은 이동 전화의 사용 등에 따라 생성된 데이터(오디오 데이터 및 주소록 등)를 저장할 수 있다. 또한, 메모리(820)는 고속 랜덤 액세스 메모리를 포함할 수 있고, 또한 적어도 하나의 자기 디스크 저장장치, 플래시 메모리 또는 다른 휘발성 고체 상태 저장 장치와 같은 비휘발성 메모리를 포함할 수 있다.
입력 유닛(830)은 입력된 숫자 또는 캐릭터 정보를 수신하고 이동 전화의 사용자 설정 및 기능 제어와 관련된 키보드 신호 입력을 생성하도록 구성될 수 있다. 특히, 입력 유닛(830)은 터치 패널(831) 및 다른 입력 장치(832)를 포함할 수 있다. 터치 패널로도 지칭될 수 있는 터치 패널(831)은 터치 패널상 또는 그 부근에서 사용자의 터치 조작( 손가락 또는 스타일러스와 같은 액세서리 또는 액세서리를 사용하여 터치 패널(831)상 또는 그 부근의 사용자의 조작)을 수집하여, 미리 설정된 프로그램에 따라 대응하는 연결 장치를 구동할 수 있다. 선택적으로, 터치 패널(831)은 두 부분, 즉 터치 검출 장치 및 터치 제어기를 포함할 수 있다. 터치 검출 장치는 사용자의 터치 위치를 검출하고, 터치 조작에 의해 발생한 신호를 검출하여 터치 제어기에 전달한다. 터치 제어기는 터치 검출 장치로부터 터치 정보를 수신하여 터치 포인트 좌표로 변환하여 프로세서(880)로 전송한다. 터치 제어기는 프로세서(880)로부터 전송된 명령을 수신하여 실행할 수 있다. 또한, 터치 패널(831)은 저항성, 용량성, 적외선 또는 표면 음파형 터치 패널일 수 있다. 입력 유닛(830)은 터치 패널(831) 이외에 다른 입력 장치(832)를 더 포함할 수 있다. 구체적으로, 기타른 입력 기기(832)는 물리 키보드, 기능 키(볼륨 제어 키 또는 스위치 키), 트랙 볼, 마우스 및 조이스틱을 포함할 수 있다.
디스플레이 유닛(840)은 사용자가 입력한 정보 또는 사용자에게 제공되는 정보 및 이동 전화기의 각종 메뉴를 표시하도록 구성될 수 있다. 디스플레이 유닛(840)는 디스플레이 패널(841)을 포함할 수 있다. 선택적으로, 디스플레이 패널(841)은 LCD(liquid crystal display) 또는 OLED(organic light-emitting diode) 등을 이용하여 구성될 수 있다. 또한, 터치 패널(831)은 디스플레이 패널(841)을 덮을 수 있다. 터치 패널(831) 또는 그 근방의 터치 동작을 검출 한 후, 터치 패널(531)은 터치 조작을 프로세서(880)에 전달하여 터치 이벤트의 유형을 결정할 수 있다. 그 후, 프로세서(880)는 터치 이벤트의 유형에 따라 디스플레이 패널(841) 상에 대응하는 시각적 출력을 제공한다. 또한, 도 20에 도시된 바와 같이, 터치 패널(831)과 디스플레이 패널(841)을 별도의 부품으로 하여 이동 전화의 입출력 기능을 구현할 수 있으며, 터치 패널(831)과 디스플레이 패널(841)을 일체화하여 입출력 이동 전화의 기능을 구현할 수 있다.
이동 전화는 광 센서, 동작 센서 및 기타 센서와 같은 적어도 하나의 센서(850)를 더 포함할 수 있다. 특히, 광학 센서는 주변 광 센서 및 근접 센서를 포함할 수 있다. 외광 센서는 외광의 밝기에 따라 디스플레이 패널(841)의 휘도를 조절할 수 있다. 근접 센서는 이동 전화가 귀로 이동될 때 디스플레이 패널(841) 및/또는 백라이트를 스위치 오프할 수 있다. 운동 센서의 한 종류로서, 가속도 센서는 다양한 방향(일반적으로 3축)의 가속도를 검출할 수 있고, 정적일 때 중력의 크기 및 방향을 검출할 수 있으며, 그 자세를 인식하는 애플리케이션에 적용될 수 있다(예를 들면, 가로 방향과 세로 방향의 전환, 관련 게임, 자력계 자세 교정), 진동 인식에 관한 기능(보수계, 노크 등) 등이 있다. 이동 전화에 구성될 수 있는 자이로스코프, 기압계, 습도계, 온도계 및 적외선 센서와 같은 다른 센서는 더 이상 설명하지 않는다.
오디오 회로(860), 스피커(861) 및 마이크로폰(862)은 사용자와 이동 전화 사이에 오디오 인터페이스를 제공할 수 있다. 오디오 회로(860)는 수신된 오디오 데이터를 전기 신호로 변환하여 스피커(861)로 전송할 수 있다. 스피커(861)는 전기 신호를 사운드 신호로 변환하여 출력한다. 한편, 마이크로폰(862)은 수집된 음향 신호를 전기 신호로 변환한다. 오디오 회로(860)는 전기 신호를 수신하여 전기 신호를 오디오 데이터로 변환하고 처리를 위해 프로세서(880)로 오디오 데이터를 출력한다. 그런 다음, 프로세서(880)는 RF 회로(810)를 사용하여 예를 들어 또 다른 이동 전화에 오디오 데이터를 전송하거나, 추가 처리를 위해 오디오 데이터를 메모리(820)로 출력한다.
Wi-Fi는 근거리 무선 전송 기술이다. 이동 전화는 Wi-Fi 모듈(870)을 사용하여 사용자에게 이메일을 수신 및 송신하고, 웹 페이지를 브라우징하고, 스트리밍 미디어에 액세스하는 것을 도울 수 있으며, 이는 사용자에 대한 무선 광대역 인터넷 액세스를 제공한다. 또한, 도 20은 Wi-Fi 모듈(870)을 나타내지만, Wi-Fi 모듈(870)은 이동 전화의 필수 구성요소가 아니며 본 발명의 본질은 변경되지 않는 한 필요시 Wi-Fi 모듈(870)는 생략될 수 있다.
프로세서(880)는 이동 전화의 제어 센터이며, 다양한 인터페이스 및 라인을 사용하여 이동 전화의 다양한 부분에 연결된다. 프로세서(880)는 메모리(820)에 저장된 소프트웨어 프로그램 및/또는 모듈을 실행하고, 메모리(820)에 저장된 데이터를 호출함으로써, 이동 전화의 다양한 기능 및 데이터 처리를 수행하여 이동 전화기에 대한 전반적인 모니터링을 수행한다. 선택적으로, 프로세서(880)는 하나 이상의 처리 유닛을 포함할 수 있다. 바람직하게, 프로세서(880)는 애플리케이션 프로세서 및 모뎀을 통합할 수 있다. 애플리케이션 프로세서는 주로 운영체제, 사용자 인터페이스, 애플리케이션 등을 처리한다. 모뎀은 주로 무선 통신을 처리한다. 전술한 모뎀은 또한 프로세서(880)에 통합될 수 없는 것으로 이해될 수 있다.
이동 전화는 구성 요소에 전력을 공급하기위 한 전원(890)(배터리 등)을 더 포함한다. 바람직하게는, 전력 공급 시스템은 전력 관리 시스템을 사용함으로써 프로세서(880)에 논리적으로 접속될 수 있어서, 전력 관리 시스템을 사용하여 충전, 방전 및 전력 소비 관리와 같은 기능을 구현한다.
도면에 도시되지는 않았지만, 이동 전화는 카메라, 블루투스 모듈 등을 더 포함할 수 있으며, 여기서는 더 이상 설명하지 않는다.
본 발명의 실시예에서, 단말기에 포함된 프로세서(880)는,
제어 범위 내에서 행해지는 조작에 대응하는 복수의 제어 범위를 포함하는 주 가상 대상을 중심으로 하여 검출 범위 검출 기능; 검출 범위에서 타깃 가상 대상이 검출되면, 타깃 가상 대상과 주 가상 대상 사이의 거리 결정 기능; 거리에 따라 타깃 가상 대상이 속하는 제어 범위 결정 기능; 및 타깃 가상 대상이 속하는 제어 범위에 대응하는 실행 동작에 따라 타깃 가상 대상을 처리하는 기능을 더 구비한다.
선택적으로, 본 발명의 일부 실시예에서, 복수의 제어 범위와 중심 사이의 거리는 서버 전달 범위, 자원 로딩 범위, 인스턴스화 범위, 및 시각 범위를 포함하여, 내림차순으로 정렬된다. 범위. 프로세서(880)는,
가상 대상이 속한 제어 범위가 상기 서버 제공 범위인 경우, 가상 대상에 대한 논리 대상을 생성하고, 논리 대상이 생성된 타깃 가상 대상에 대응하는 이름 태그를 표시하는기능계; 또는
상기 가상 대상이 속하는 제어 범위가 상기 자원 로딩 범위 인 경우, 상기 가상 대상에 대응하는 자원을 로딩하는 기능; 또는
상기 타깃 가상 대상이 속한 제어 범위가 상기 인스턴스화 범위 일 때, 대응하는 자원을 이용하여 상기 타깃 가상 대상에 대응하는 타깃 인스턴스를 생성하는 기능; 또는
상기 가상 대상이 속한 제어 범위가 상기 시각 범위 인 경우에, 상기 가상 대상의 묘화 계산을 실행하고, 묘화된 가상 대상을 표시하는 기능을 더 구비한다.
선택적으로, 본 개시의 일부 실시예에서, 이동 단말기는 자원 캐시를 포함하고, 프로세서(880)는,
상기 자원 캐시가 상기 타깃 가상 대상에 대한 인스턴스를 생성하기 위한 제1 자원을 포함하는 경우, 상기 자원 캐시로부터의 상기 제1 자원을 추출하는 기능; 또는
상기 자원 캐시가 상기 타깃 가상 대상에 대한 인스턴스를 생성하기 위한 제1 자원을 포함하지 않는 경우, 상기 제1 자원을 비동기적으로 로딩하는 기능을 구비한다.
선택적으로, 본 개시의 일부 실시예에서, 이동 단말기는 인스턴스 캐시를 포함하고, 프로세서(880)는,
인스턴스 캐시가 타깃 가상 대상에 대응하는 제1 인스턴스를 포함하는 경우, 제1 인스턴스를 재사용하고; 제1 인스턴스에 대한 렌더링 계산을 수행하고, 렌더링된 타깃 가상 대상을 표시하는 기능을 더 구비한다.
선택적으로, 본 발명의 일부 실시예에서, 이동 단말기는 인스턴스 캐시를 포함하고, 프로세서(880)는,
인스턴스 캐시가 상기 타깃 가상 대상에 대응하는 제1 인스턴스를 포함하지 않는 경우, 타깃 가상 대상에 대한 인스턴스를 생성하기 위한 제1 자원을 획득하는 기능; 및 제1 자원을 사용하여 제1 인스턴스를 생성하는 기능을 더 구비한다.
선택적으로, 본 개시의 일부 실시예에서, 프로세서(880)는,
타깃 가상 대상에 대한 스킨 교체 명령을 수신하는 기능; 타깃 가상 대상에 대응하는 골격 데이터 및 교체를 위한 타깃 메시 데이터 및 타깃 재료 데이터를 획득하는 기능; 골격 데이터에 바인딩된 원 메시 데이터 및 원 재료 데이터를 타깃 메시 데이터 및 타깃 재료 데이터로 교체하는 기능을 더 구비한다.
전술한 시스템, 장치 및 유닛의 상세한 작동 프로세스에 대한 설명의 편의 및 간략한 설명을 위해, 전술한 방법 실시예에서 대응하는 프로세스가 참조될 수 있다는 것이 당업자에게 명확하게 이해될 수 있으며, 상세한 설명은 여기에서 다시 설명하지 않는다.
본 출원에 제공된 몇몇 실시예에서, 개시된 시스템, 장치 및 방법은 다른 방식으로 구현될 수 있다는 것을 이해해야한다. 설명된 장치 실시예는 단지 예시적인 것이다. 예를 들어, 유닛 구분은 논리적인 기능 구분일 뿐이며 실제 구현 시에는 다른 구분일 수 있다. 예를 들어, 복수의 유닛 또는 구성요소가 결합되거나 다른 시스템에 통합되거나, 일부 특징이 무시되거나 수행되지 않을 수 있다. 또한, 표시되거나 논의된 상호 결합 또는 직접 결합 또는 통신 연결은 일부 인터페이스를 통해 구현될 수 있다. 장치 또는 유닛들 간의 간접적 결합 또는 통신 연결은 전자적, 기계적 또는 다른 형태로 구현될 수 있다.
개별 부품(separate parts) 기술된 유닛들은 물리적으로 분리될 수도 있고 그렇지 않을 수도 있고, 유닛으로 표시된 구성요소는 물리 유닛일 수도 있고 아닐 수도 있으며, 한 장소에 위치될 수 있거나 또는 복수의 네트워크 유닛 상에 분산될 수 있다. 유닛의 일부 또는 전부는 실시예의 방안의 목적을 달성하기 위해 실제 필요에 따라 선택될 수 있다.
또한, 본 발명의 실시예에 따른 기능 유닛은 하나의 처리 유닛에 통합되거나 별도의 물리 유닛으로서 존재할 수도 있고, 또는 둘 이상의 유닛이 하나의 유닛에 통합될 수도 있다. 통합 유닛은 하드웨어의 형태로 구현될 수 있거나 소프트웨어 기능 유닛의 형태로 구현될 수 있다.
소프트웨어 기능 유닛의 형태로 구현되고 독립적인 제품으로서 판매되거나 사용되는 경우, 통합 유닛은 또한 컴퓨터 판독 가능 저장 매체에 저장될 수 있다. 이러한 이해에 기초하여, 본 발명의 기술적 방안 또는 본 기술 분야에 기여하는 부분 또는 기술적 방안의 전부 또는 일부는 소프트웨어 제품의 형태로 구현될 수 있다. 컴퓨터 소프트웨어 제품은 저장 매체에 저장되며, 하나 이상의 컴퓨터 기기(개인용 컴퓨터, 서버, 네트워크 기기 등일 수 있음)가 본 발명의 실시예에서 설명된 방법의 단계의 일부 또는 전부를 수행하도록 명령하기 위한 여러 명령어를 포함한다. 전술한 저장 매체는 USB 플래시 드라이브, 탈착식 하드 디스크, 판독 전용 메모리(ROM), 랜덤 액세스 메모리(RAM), 자기 디스크 또는 광학 디스크와 같은 프로그램 코드를 저장할 수 있는 임의의 매체를 포함한다.
전술한 실시예는 단지 본 발명의 기술적 방안을 설명하기 위한 것이지, 본 발명을 한정하려는 것은 아니다. 본 발명은 전술한 실시예를 참조하여 상세하게 설명되었지만, 당업자라면 본 발명의 실시예의 기술적 방안의 원리 및 범위를 벗어나지 않으면서 전술한 실시예들에서 설명된 기술적 방안들에 여전히 수정을 가할 수 있거나 또는 본 발명의 기술적 특징들에 대한 동등한 대체물을 만들 수 있음을 이해해야 한다.

Claims (27)

  1. 이동 단말기상의 제1 클라이언트에 적용되는 정보 처리 방법으로서,
    복수의 가상 대상(virtual object)이 동일한 화면상에 표시되며, 상기 제1 클라이언트의 디스플레이 인터페이스상에 제1 가상 대상이 표시되고, 상기 정보 처리 방법은,
    상기 제1 클라이언트에 의해 전송되는 상기 제1 가상 대상의 스킬 발휘 요청(skill casting request)을 수신하는 단계 - 상기 스킬 발휘 요청은 제1 스킬을 발휘하도록 요청하는 데 사용됨 -;
    가상 장면에서 상기 제1 가상 대상의 시야 내의 가상 대상의 수량을 결정하는 단계;
    상기 시야 내의 가상 대상의 수량이 미리 결정된 임계치보다 크면, 상기 시야 내의 가상 대상 중에서 타깃 가상 대상을 선택하는 단계; 및
    상기 스킬 발휘 요청에 응답하여 생성된 제1 브로드캐스트 통지를 획득하고, 상기 제1 브로드캐스트 통지를 상기 타깃 가상 대상에 대응하는 클라이언트에 전송하는 단계 - 상기 제1 브로드캐스트 통지는 상기 제1 가상 대상에 의해 상기 제1 스킬이 발휘되는 동작을 제시하도록 상기 클라이언트에 명령하는 데 사용됨 -
    정보 처리 방법.
  2. 제1항에 있어서,
    상기 정보 처리 방법은,
    상기 시야 내의 가상 대상의 수량이 미리 결정된 임계치 이하이면, 상기 제1 가상 대상의 시야 내의 모든 가상 대상에 대응하는 클라이언트에 상기 스킬 발휘 요청에 응답하여 생성된 제2 브로드캐스트 통지를 전송하는 단계를 더 포함하는 정보 처리 방법.
  3. 제2항에 있어서,
    상기 정보 처리 방법은,
    상기 제1 스킬이 상기 가상 장면에서의 상기 제1 가상 대상의 위치를 조정하는 데 사용되는지를 판정하는 단계; 및
    상기 제1 스킬이 상기 가상 장면에서의 상기 제1 가상 대상의 위치를 조정하는 데 사용되지 않으면, 상기 가상 장면에서 상기 제1 가상 대상의 시야 내의 가상 대상의 수량을 결정하는 단계를 트리거하는 단계를 더 포함하는 정보 처리 방법.
  4. 제3항에 있어서,
    상기 정보 처리 방법은,
    상기 제1 스킬이 상기 가상 장면에서의 상기 제1 가상 대상의 위치를 조정하는 데 사용되면, 상기 가상 장면에서의 상기 제1 가상 대상의 조정된 새로운 위치를 결정하고, 상기 시야 내의 모든 가상 대상에 대응하는 클라이언트에 제3 브로드캐스트 통지를 전송하는 단계 - 상기 제3 브로드캐스트 통지는 상기 가상 장면에서의 상기 제1 가상 대상의 위치를 상기 새로운 위치로 갱신하도록 명령하는 데 사용됨 -를 더 포함하는 정보 처리 방법.
  5. 제1항에 있어서,
    상기 가상 장면에서 상기 제1 가상 대상의 시야 내의 가상 대상의 수량을 결정하는 단계는,
    상기 제1 가상 대상의 좌표를 중심으로 하여 상기 시야에 대응하는 좌표 범위를 결정하는 단계; 및
    상기 가상 장면 내의 각각의 가상 대상의 현재 좌표를 상기 좌표 범위와 매칭시켜, 상기 좌표 범위 내에 속하는 가상 대상의 수량을 결정하여, 상기 가상 대상의 수량을 획득하는 단계를 포함하는, 정보 처리 방법.
  6. 제1항에 있어서,
    상기 시야 내의 가상 대상 중에서 타깃 가상 대상을 선택하는 단계는,
    상기 시야에서 상기 미리 결정된 임계치와 동일한 수량의 타깃 가상 대상을 선택하는 단계; 또는
    상기 시야 내의 모든 가상 대상이 속하는 다양한 유형의 그룹을 결정하고, 상기 시야에서 상기 미리 결정된 임계치와 동일한 수량의 타깃 가상 대상을 선택하는 단계 - 각각의 유형의 그룹 내의 상기 타깃 가상 대상의 대응하는 수량은 설정 요건을 충족시킴 -; 또는
    상기 시야 내의 가상 대상과 상기 제1 가상 대상 사이의 관계도(relationship degree)에 따라, 상기 미리 결정된 임계치와 동일한 수량의 타깃 가상 대상을 선택하는 단계를 포함하는, 정보 처리 방법.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서,
    상기 정보 처리 방법은,
    상기 스킬 발휘 요청에 따라, 상기 제1 스킬이 타깃으로 하는 하나 이상의 제2 가상 대상을 결정하는 단계;
    상기 제1 스킬에 의해 영향을 받은 각각의 제2 가상 대상의 남은 속성 값(remaining attribute value)을 결정하는 단계;
    상기 제1 스킬에 의해 영향을 받은 각각의 제2 가상 대상의 남은 속성 값에 따라, 상기 제2 가상 대상에 미치는 상기 제1 스킬의 영향의 효과를 제시하도록 명령하기 위한 브로드캐스트 통지를 상응하게 생성하는 단계;
    남은 속성 값이 미리 설정된 조건을 충족시키는 제2 가상 대상에 대해, 상기 제2 가상 대상에 대응하는 브로드캐스트 통지를 상기 제2 가상 대상의 시야 내의 모든 가상 대상에 대응하는 클라이언트에 전송하는 단계; 및
    남은 속성 값이 미리 설정된 조건을 충족시키지 못하는 제2 가상 대상에 대해, 상기 제2 가상 대상에 대응하는 브로드캐스트 통지를 상기 제2 가상 대상에 대응하는 클라이언트와 상기 제1 클라이언트에 개별적으로 전송하는 단계를 더 포함하는 정보 처리 방법.
  8. 제7항에 있어서,
    상기 스킬 발휘 요청에 따라, 상기 제1 스킬이 타깃으로 하는 하나 이상의 제2 가상 대상을 결정하는 단계는,
    상기 스킬 발휘 요청에 포함된 가상 대상 리스트에 따라, 상기 제1 스킬이 타깃으로 하는 하나 이상의 제2 가상 대상을 결정하는 단계 - 상기 가상 대상 리스트는 상기 제1 가상 대상에 의해 발휘되는 제1 스킬이 타깃으로 하는 하나 이상의 제2 가상 대상을 기록함 -를 포함하는, 정보 처리 방법.
  9. 제7항에 있어서,
    상기 남은 속성 값은 남은 히트 포인트(remaining hit point)를 포함하고, 상기 남은 속성 값이 미리 설정된 조건을 충족시키는 것은, 상기 남은 히트 포인트가 0(zero)인 것을 포함하는, 정보 처리 방법.
  10. 제9항에 있어서,
    상기 제1 스킬은 공격 스킬이고, 상기 브로드캐스트 통지는 상기 제1 스킬에 의해 공격받은 제2 가상 대상의 잃은 히트 포인트 및 남은 히트 포인트를 포함하고, 상기 남은 히트 포인트가 0이면 상기 브로드캐스트 통지는 상기 제2 가상 대상의 사망 이벤트를 트리거하는, 정보 처리 방법.
  11. 제1 클라이언트를 포함하는 이동 단말기에 적용되는 정보 처리 장치로서,
    동일한 화면상에 복수의 가상 대상이 표시되며, 상기 제1 클라이언트의 디스플레이 인터페이스상에 제1 가상 대상이 표시되고, 상기 정보 처리 장치는,
    상기 제1 클라이언트에 의해 전송되는 상기 제1 가상 대상의 스킬 발휘 요청을 수신하도록 구성된 송수신기 모듈 - 상기 스킬 발휘 요청은 제1 스킬을 발휘하도록 요청하는 데 사용됨 -; 및
    가상 장면에서 상기 제1 가상 대상의 시야 내의 가상 대상의 수량을 결정하고, 상기 시야 내의 가상 대상의 수량이 미리 결정된 임계치보다 크면, 상기 시야 내의 가상 대상 중에서 타깃 가상 대상을 선택하도록 구성된 처리 모듈을 포함하고,
    상기 송수신기 모듈은 추가로, 상기 스킬 발휘 요청에 응답하여 생성된 제1 브로드캐스트 통지를 획득하고, 상기 제1 브로드캐스트 통지를 상기 타깃 가상 대상에 대응하는 클라이언트에 전송하도록 구성되는 - 상기 제1 브로드캐스트 통지는 상기 제1 가상 대상에 의해 상기 제1 스킬이 발휘되는 동작을 제시하도록 상기 클라이언트에 명령하는 데 사용됨 -,
    정보 처리 장치.
  12. 제11항에 있어서,
    상기 송수신기 모듈은 추가로,
    상기 시야 내의 가상 대상의 수량이 미리 결정된 임계치 이하이면, 상기 시야 내의 모든 가상 대상에 대응하는 클라이언트에 상기 스킬 발휘 요청에 응답하여 생성된 제2 브로드캐스트 통지를 전송하도록 구성되는, 정보 처리 장치.
  13. 제12항에 있어서,
    상기 처리 모듈은 추가로,
    상기 제1 스킬이 상기 가상 장면에서의 상기 제1 가상 대상의 위치를 조정하는 데 사용되는지를 판정하고,
    상기 제1 스킬이 상기 가상 장면에서의 상기 제1 가상 대상의 위치를 조정하는 데 사용되지 않으면, 상기 가상 장면에서 상기 제1 가상 대상의 시야 내의 가상 대상의 수량을 결정하거나; 또는
    상기 제1 스킬이 상기 가상 장면에서의 상기 제1 가상 대상의 위치를 조정하는 데 사용되면, 상기 가상 장면에서의 상기 제1 가상 대상의 조정된 새로운 위치를 결정하고, 상기 시야 내의 모든 가상 대상에 대응하는 클라이언트에 제3 브로드캐스트 통지를 전송하도록 구성되는 - 상기 제3 브로드캐스트 통지는 상기 가상 장면에서의 상기 제1 가상 대상의 위치를 상기 새로운 위치로 갱신하도록 명령하는 데 사용됨 -, 정보 처리 장치.
  14. 제11항 내지 제13항 중 어느 한 항에 있어서,
    상기 처리 모듈은 추가로,
    상기 스킬 발휘 요청에 따라, 상기 제1 스킬이 타깃으로 하는 하나 이상의 제2 가상 대상을 결정하고;
    상기 제1 스킬에 의해 영향을 받은 각각의 제2 가상 대상의 남은 속성 값을 결정하고;
    상기 제1 스킬에 의해 영향을 받은 각각의 제2 가상 대상의 남은 속성 값에 따라, 상기 제2 가상 대상에 미치는 상기 제1 스킬의 영향의 효과를 제시하도록 명령하기 위한 브로드캐스트 통지를 상응하게 생성하고;
    남은 속성 값이 미리 설정된 조건을 충족시키는 제2 가상 대상에 대해, 상기 송수신기 모듈을 사용하여, 상기 제2 가상 대상에 대응하는 브로드캐스트 통지를 상기 제2 가상 대상의 시야 내의 모든 가상 대상에 대응하는 클라이언트에 전송하고;
    남은 속성 값이 미리 설정된 조건을 충족시키지 못하는 제2 가상 대상에 대해, 상기 송수신기 모듈을 사용하여, 상기 제2 가상 대상에 대응하는 브로드캐스트 통지를 상기 제2 가상 대상에 대응하는 클라이언트와 상기 제1 클라이언트에 개별적으로 전송하도록 구성되는, 정보 처리 장치.
  15. 제11항 내지 제14항 중 어느 한 항에 따른 정보 처리 장치를 포함하는 서버.
  16. 이동 단말기상의 클라이언트에 적용되는, 애플리케이션에서 가상 대상을 처리하는 방법으로서,
    동일한 화면상에 복수의 가상 대상이 표시되며, 상기 클라이언트의 디스플레이 인터페이스상에 주 가상 대상이 표시되고, 상기 방법은,
    상기 이동 단말기가 상기 주 가상 대상을 중심으로 하여 검출 범위를 검출하는 단계 - 상기 검출 범위는 복수의 제어 범위를 포함하고, 각각의 제어 범위는 상기 제어 범위 내의 조작과 일대일 대응관계에 있고, 상기 조작은 상기 제어 범위로 진입하는 가상 대상에 의해 수행되는 조작임 -;
    상기 검출 범위 내에서 타깃 가상 대상이 검출되는 경우, 상기 타깃 가상 대상과 상기 주 가상 대상 사이의 거리를 결정하는 단계;
    상기 거리에 따라, 상기 타깃 가상 대상이 위치하는 제어 범위를 결정하는 단계; 및
    상기 타깃 가상 대상이 위치하는 제어 범위에서 수행되는 조작에 따라, 상기 타깃 가상 대상을 처리하는 단계
    를 포함하는 방법.
  17. 제16항에 있어서,
    상기 복수의 제어 범위와 상기 중심 사이의 거리는 서버 전달 범위, 자원 로딩 범위, 인스턴스화 범위 및 가시화 범위를 포함하여, 내림차순으로 정렬되고;
    상기 타깃 가상 대상이 위치하는 제어 범위에 대응하는 실행 조작에 따라, 상기 타깃 가상 대상을 처리하는 단계는,
    상기 가상 대상이 위치하는 제어 범위가 상기 서버 전달 범위인 경우, 상기 가상 대상에 대한 논리 대상을 생성하고, 상기 논리 대상이 생성된 타깃 가상 대상에 대응하는 이름 태그를 표시하는 단계; 또는
    상기 타깃 가상 대상이 위치하는 제어 범위가 상기 자원 로딩 범위인 경우, 상기 타깃 가상 대상에 대한 대응하는 자원을 로딩하는 단계; 또는
    상기 타깃 가상 대상이 위치하는 제어 범위가 상기 인스턴스화 범위인 경우, 상기 타깃 가상 대상에 대한 로딩된 자원을 사용하여 상기 타깃 가상 대상에 대응하는 타깃 인스턴스를 생성하는 단계; 또는
    상기 가상 대상이 위치하는 제어 범위가 상기 가시화 범위인 경우, 타깃 인스턴스에 대해 렌더링 계산을 수행하고 렌더링된 타깃 가상 대상을 표시하는 단계를 포함하는, 방법.
  18. 제16항 또는 제17항에 있어서,
    상기 이동 단말기는 자원 캐시를 포함하고, 상기 타깃 가상 대상에 대한 대응하는 자원을 로딩하는 단계는,
    상기 자원 캐시가 상기 타깃 가상 대상에 대한 인스턴스를 생성하기 위한 타깃 자원을 포함하면, 상기 자원 캐시로부터 상기 타깃 자원을 추출하는 단계; 또는
    상기 자원 캐시가 상기 타깃 가상 대상에 대한 인스턴스를 생성하기 위한 타깃 자원을 포함하지 않으면, 자원 관리기를 사용하여 상기 타깃 가상 대상을 위한 타깃 자원을 비동기적으로 로딩하는 단계를 포함하는, 방법.
  19. 제17항에 있어서,
    상기 이동 단말기는 인스턴스 캐시를 포함하고, 상기 타깃 인스턴스에 대해 렌더링 계산을 수행하고 렌더링된 타깃 가상 대상을 표시하는 단계 전에, 상기 방법은,
    상기 인스턴스 캐시가 상기 타깃 인스턴스를 포함하면, 상기 타깃 가상 대상에 대응하는 타깃 인스턴스를 재사용하는 단계를 더 포함하는 방법.
  20. 제18항에 있어서,
    상기 이동 단말기는 인스턴스 캐시를 포함하고, 대응하는 자원을 사용하여 상기 타깃 가상 대상에 대응하는 타깃 인스턴스를 생성하는 단계는,
    상기 인스턴스 캐시가 상기 타깃 가상 대상에 대응하는 타깃 인스턴스를 포함하지 않으면, 상기 타깃 가상 대상에 대한 인스턴스를 생성하기 위한 타깃 자원을 획득하는 단계; 및
    상기 타깃 자원을 사용하여 상기 타깃 인스턴스를 생성하는 단계를 포함하는, 방법.
  21. 제19항 또는 제20항에 있어서,
    상기 방법은,
    상기 타깃 가상 대상에 대한 스킨(skin) 교체 명령을 수신하는 단계;
    상기 타깃 가상 대상에 대응하는 골격 데이터(skeleton data), 타깃 메시 데이터(target mesh data), 및 타깃 재료 데이터(target material data)를 획득하는 단계; 및
    상기 골격 데이터에 바인딩된 원 메시 데이터(source mesh data)를 상기 타깃 메시 데이터로 교체하고, 상기 골격 데이터에 바인딩된 원 재료 데이터(source material data)를 상기 타깃 재료 데이터로 교체하는 단계를 포함하는, 방법.
  22. 상호작용 애플리케이션을 포함하는 이동 단말기로서,
    동일한 화면상에 복수의 가상 대상이 표시되며, 상기 상호작용 애플리케이션의 디스플레이 인터페이스상에 주 가상 대상이 표시되고, 상기 이동 단말기는,
    상기 주 가상 대상을 중심으로 하여 검출 범위를 검출하도록 구성된 검출 모듈 - 상기 검출 범위는 복수의 제어 범위를 포함하고, 각각의 제어 범위는 상기 제어 범위 내의 조작과 일대일 대응관계에 있고, 상기 조작은 상기 제어 범위로 진입하는 가상 대상에 의해 수행되는 조작임 -;
    상기 검출 범위 내에서 타깃 가상 대상이 검출되는 경우, 상기 타깃 가상 대상과 상기 주 가상 대상 사이의 거리를 결정하도록 구성된 제1 결정 모듈;
    상기 거리에 따라, 상기 타깃 가상 대상이 위치하는 제어 범위를 결정하도록 구성된 제2 결정 모듈; 및
    상기 타깃 가상 대상이 위치하는 제어 범위에서 수행되는 조작에 따라, 상기 타깃 가상 대상을 처리하도록 구성된 처리 모듈
    을 포함하는 이동 단말기.
  23. 제22항에 있어서,
    상기 복수의 제어 범위와 상기 중심 사이의 거리는 서버 전달 범위, 자원 로딩 범위, 인스턴스화 범위 및 가시화 범위를 포함하여, 내림차순으로 정렬되고;
    상기 처리 모듈은 구체적으로,
    상기 가상 대상이 위치하는 제어 범위가 상기 서버 전달 범위인 경우, 상기 가상 대상에 대한 논리 대상을 생성하고, 상기 논리 대상이 생성된 타깃 가상 대상에 대응하는 이름 태그 표시; 또는
    상기 타깃 가상 대상이 위치하는 제어 범위가 상기 자원 로딩 범위인 경우, 상기 타깃 가상 대상에 대한 대응하는 자원 로딩; 또는
    상기 타깃 가상 대상이 위치하는 제어 범위가 상기 인스턴스화 범위인 경우, 상기 타깃 가상 대상에 대한 로딩된 자원을 사용하여 상기 타깃 가상 대상에 대응하는 타깃 인스턴스 생성; 또는
    상기 가상 대상이 위치하는 제어 범위가 상기 가시화 범위인 경우, 상기 타깃 인스턴스에 대해 렌더링 계산을 수행하고 렌더링된 타깃 가상 대상 표시
    중 적어도 하나를 수행하도록 구성되는, 이동 단말기.
  24. 제22항 또는 제23항에 있어서,
    상기 이동 단말기는 자원 캐시를 포함하고,
    상기 처리 모듈은 구체적으로, 상기 자원 캐시가 상기 타깃 가상 대상에 대한 인스턴스를 생성하기 위한 타깃 자원을 포함하면, 상기 자원 캐시로부터 상기 타깃 자원을 추출하도록 구성되거나; 또는
    상기 처리 모듈은 구체적으로, 상기 자원 캐시가 상기 타깃 가상 대상에 대한 인스턴스를 생성하기 위한 타깃 자원을 포함하지 않으면, 자원 관리기를 사용하여 상기 타깃 가상 대상을 위한 타깃 자원을 비동기적으로 로딩하도록 구성되는, 이동 단말기.
  25. 제23항에 있어서,
    상기 이동 단말기는 인스턴스 캐시를 포함하고, 상기 처리 모듈은 추가로,
    상기 인스턴스 캐시가 상기 타깃 인스턴스를 포함하면, 상기 타깃 가상 대상에 대응하는 타깃 인스턴스를 재사용하도록 구성되는, 이동 단말기.
  26. 제24항에 있어서,
    상기 이동 단말기는 인스턴스 캐시를 포함하고, 상기 처리 모듈은 구체적으로,
    상기 인스턴스 캐시가 상기 타깃 가상 대상에 대응하는 타깃 인스턴스를 포함하지 않으면, 상기 타깃 가상 대상에 대한 인스턴스를 생성하기 위한 타깃 자원을 획득하고; 상기 타깃 자원을 사용하여 상기 타깃 인스턴스를 생성하도록 구성되는, 이동 단말기.
  27. 제25항 또는 제26항에 있어서,
    상기 이동 단말기는,
    상기 타깃 가상 대상에 대한 스킨 교체 명령을 수신하도록 구성된 수신 모듈;
    상기 타깃 가상 대상에 대응하는 골격 데이터, 타깃 메시 데이터, 및 타깃 재료 데이터를 획득하도록 구성된 획득 모듈; 및
    상기 골격 데이터에 바인딩된 원 메시 데이터를 상기 타깃 메시 데이터로 교체하고, 상기 골격 데이터에 바인딩된 원 재료 데이터를 상기 타깃 재료 데이터로 교체하도록 구성된 교체 모듈을 더 포함하는 이동 단말기.
KR1020197022877A 2017-01-05 2017-12-27 정보 처리 방법 및 장치 그리고 서버 KR102319206B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
CN201710007956.8 2017-01-05
CN201710007956.8A CN106657127B (zh) 2017-01-05 2017-01-05 一种信息处理方法、装置及服务器
CN201710058471.1 2017-01-23
CN201710058471.1A CN106807087B (zh) 2017-01-23 2017-01-23 一种应用中模拟对象处理的方法以及移动终端
PCT/CN2017/118874 WO2018126956A1 (zh) 2017-01-05 2017-12-27 一种信息处理方法、装置及服务器

Publications (2)

Publication Number Publication Date
KR20190103307A true KR20190103307A (ko) 2019-09-04
KR102319206B1 KR102319206B1 (ko) 2021-10-28

Family

ID=62789090

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197022877A KR102319206B1 (ko) 2017-01-05 2017-12-27 정보 처리 방법 및 장치 그리고 서버

Country Status (4)

Country Link
US (1) US11135515B2 (ko)
JP (1) JP6850884B2 (ko)
KR (1) KR102319206B1 (ko)
WO (1) WO2018126956A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210088909A (ko) * 2020-01-07 2021-07-15 주식회사 게임빌 이전 시즌의 게임 캐릭터의 능력치를 감소시키기 위해 신규 시즌의 게임 캐릭터에게 부여되는 능력을 이용하여 게임을 진행하는 방법 및 시스템

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110083408A (zh) * 2019-04-30 2019-08-02 珠海天燕科技有限公司 一种游戏场景中操作预定对象的方法和装置
CN110465090B (zh) * 2019-08-16 2023-05-30 腾讯科技(深圳)有限公司 虚拟对象的控制方法、装置、终端及存储介质
CN110433493B (zh) * 2019-08-16 2023-05-30 腾讯科技(深圳)有限公司 虚拟对象的位置标记方法、装置、终端及存储介质
CN110975287A (zh) * 2019-12-06 2020-04-10 珠海金山网络游戏科技有限公司 一种基于Unity3D的组件优化方法及装置
CN111124579B (zh) * 2019-12-24 2023-12-19 北京金山安全软件有限公司 一种特效渲染方法、装置、电子设备及存储介质
CN111228805B (zh) * 2020-01-08 2023-07-14 腾讯科技(深圳)有限公司 虚拟操作对象的控制方法和装置、存储介质及电子装置
JP7395139B2 (ja) * 2020-01-29 2023-12-11 任天堂株式会社 情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法
CN111476115B (zh) * 2020-03-23 2023-08-29 深圳市联合视觉创新科技有限公司 一种人体行为识别方法、装置及设备
CN111744178A (zh) * 2020-05-26 2020-10-09 广州尊游软件科技有限公司 一种共享资源方法
CN111589115B (zh) * 2020-07-08 2023-06-13 腾讯科技(深圳)有限公司 虚拟对象的视野控制方法、装置、存储介质及计算机设备
CN111905363B (zh) * 2020-08-21 2023-10-13 腾讯科技(深圳)有限公司 虚拟对象的控制方法、装置、终端及存储介质
CN114339270B (zh) * 2020-10-12 2024-01-09 腾讯科技(深圳)有限公司 直播中发放物品的控制方法、系统、电子设备及存储介质
CN114430492B (zh) * 2020-10-29 2023-10-13 海信视像科技股份有限公司 显示设备、移动终端及图片同步缩放方法
CN112529993B (zh) * 2020-12-09 2024-02-06 威创集团股份有限公司 基于Unity的撒点图标优化方法及存储介质
CN113163224B (zh) * 2021-04-27 2022-08-19 思享智汇(海南)科技有限责任公司 一种虚拟形象的发放方法、系统
CN113633970B (zh) * 2021-08-18 2024-03-08 腾讯科技(成都)有限公司 动作效果的显示方法、装置、设备及介质
CN116861117B (zh) * 2023-09-04 2023-11-24 深圳有咖互动科技有限公司 虚拟物品信息处理方法、装置、电子设备和可读介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100452089B1 (ko) * 2004-06-23 2004-10-13 엔에이치엔(주) 게임 화면을 갱신하기 위한 오브젝트를 로딩하는 이미지리소스 로딩 시스템 및 이미지 리소스 로딩 방법
JP2009230442A (ja) * 2008-03-21 2009-10-08 Internatl Business Mach Corp <Ibm> オブジェクト移動制御システム、オブジェクト移動制御方法、サーバ及びコンピュータプログラム
JP2014061423A (ja) * 2008-05-30 2014-04-10 Copcom Co Ltd ゲームプログラムおよびゲーム装置
CN104915117A (zh) * 2015-06-16 2015-09-16 深圳市腾讯计算机系统有限公司 控制与虚拟目标进行交互的方法和装置

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4003898B2 (ja) * 1997-11-10 2007-11-07 株式会社バンダイナムコゲームス 画像生成装置及び情報記憶媒体
US6283861B1 (en) * 1999-03-23 2001-09-04 Square Co., Ltd. Video game device and video game method
CN101136775B (zh) 2007-08-02 2010-07-07 北京航空航天大学 基于出生地管理的虚拟对象所有权组织方法
WO2013035215A1 (ja) * 2011-09-06 2013-03-14 株式会社カプコン ゲームシステム、ゲーム制御方法および記憶媒体
JP5922963B2 (ja) 2012-03-27 2016-05-24 任天堂株式会社 情報処理プログラム、情報処理装置、情報処理方法、および情報処理システム
CN103379163B (zh) 2012-04-25 2016-04-06 阿里巴巴集团控股有限公司 一种业务对象的确定方法以及确定装置
CN103593546B (zh) * 2012-08-17 2015-03-18 腾讯科技(深圳)有限公司 一种无动态阻挡网络游戏系统及其处理方法
EP3000232A4 (en) * 2013-05-23 2017-01-25 Kabushiki Kaisha Square Enix Holdings (also trading as Square Enix Holdings Co., Ltd) Dynamic allocation of rendering resources in a cloud gaming system
WO2014200255A1 (en) * 2013-06-11 2014-12-18 Wemade Entertainment Co., Ltd. Method and apparatus for automatically targeting target objects in a computer game
CN103838982B (zh) * 2014-03-27 2017-05-03 广州爱九游信息技术有限公司 一种虚拟游戏对象生成方法及装置
JP5678368B1 (ja) * 2014-08-12 2015-03-04 株式会社gloops ゲームサーバ、ゲーム制御方法、ゲームプログラム及びゲームプログラム記録媒体
CN105335065A (zh) * 2015-10-10 2016-02-17 腾讯科技(深圳)有限公司 一种信息处理方法、终端及计算机存储介质
CN105194873B (zh) 2015-10-10 2019-01-04 腾讯科技(成都)有限公司 一种信息处理方法、终端及计算机存储介质
CN106139593B (zh) * 2016-06-23 2019-02-05 腾讯科技(深圳)有限公司 一种游戏数据处理方法及游戏客户端
CN106657127B (zh) * 2017-01-05 2020-09-08 腾讯科技(深圳)有限公司 一种信息处理方法、装置及服务器
CN106807087B (zh) * 2017-01-23 2018-07-06 腾讯科技(深圳)有限公司 一种应用中模拟对象处理的方法以及移动终端

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100452089B1 (ko) * 2004-06-23 2004-10-13 엔에이치엔(주) 게임 화면을 갱신하기 위한 오브젝트를 로딩하는 이미지리소스 로딩 시스템 및 이미지 리소스 로딩 방법
JP2009230442A (ja) * 2008-03-21 2009-10-08 Internatl Business Mach Corp <Ibm> オブジェクト移動制御システム、オブジェクト移動制御方法、サーバ及びコンピュータプログラム
JP2014061423A (ja) * 2008-05-30 2014-04-10 Copcom Co Ltd ゲームプログラムおよびゲーム装置
CN104915117A (zh) * 2015-06-16 2015-09-16 深圳市腾讯计算机系统有限公司 控制与虚拟目标进行交互的方法和装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210088909A (ko) * 2020-01-07 2021-07-15 주식회사 게임빌 이전 시즌의 게임 캐릭터의 능력치를 감소시키기 위해 신규 시즌의 게임 캐릭터에게 부여되는 능력을 이용하여 게임을 진행하는 방법 및 시스템

Also Published As

Publication number Publication date
KR102319206B1 (ko) 2021-10-28
US11135515B2 (en) 2021-10-05
JP6850884B2 (ja) 2021-03-31
US20190275429A1 (en) 2019-09-12
WO2018126956A1 (zh) 2018-07-12
JP2020518293A (ja) 2020-06-25

Similar Documents

Publication Publication Date Title
KR102319206B1 (ko) 정보 처리 방법 및 장치 그리고 서버
US10965994B2 (en) Video recommendation determination, information display, data processing method based on frame synchronization
WO2022134980A1 (zh) 虚拟对象的控制方法、装置、终端及存储介质
CN106693367B (zh) 一种在客户端显示数据的处理方法和服务器以及客户端
CN113101652A (zh) 信息展示方法、装置、计算机设备及存储介质
CN113018848B (zh) 一种游戏画面的显示方法、相关装置、设备以及存储介质
CN110141859A (zh) 虚拟对象控制方法、装置、终端及存储介质
CN109963187B (zh) 一种动画实现方法和装置
CN111686447B (zh) 一种虚拟场景中数据处理的方法以及相关装置
JP2022533919A (ja) 仮想キャラクタの制御方法並びにそのコンピュータ機器、コンピュータプログラム、及び仮想キャラクタの制御装置
CN113426124A (zh) 游戏中的显示控制方法、装置、存储介质及计算机设备
WO2023005234A1 (zh) 虚拟资源的投放控制方法、装置、计算机设备及存储介质
KR20220088797A (ko) 선택된 타깃을 결정하기 위한 방법 및 장치, 디바이스 및 저장 매체
CN111589117B (zh) 显示功能选项的方法、装置、终端及存储介质
WO2024103623A1 (zh) 一种虚拟物品的标记方法、装置、计算机设备及存储介质
CN110743167A (zh) 一种交互功能的实现方法和装置
JP2024522484A (ja) 仮想シーンに基づくグラフィック表示方法、装置、機器及びコンピュータプログラム
WO2021143262A1 (zh) 地图元素添加方法、装置、终端及存储介质
CN114225412A (zh) 信息处理方法、装置、计算机设备及存储介质
CN111346374B (zh) 一种互动方法和相关装置
CN112843682B (zh) 数据同步方法、装置、设备及存储介质
US20240226745A9 (en) Method and apparatus for controlling put of virtual resource, computer device, and storage medium
WO2024098984A1 (zh) 一种虚拟道具的控制方法、装置、设备以及存储介质
WO2024098984A9 (zh) 一种虚拟道具的控制方法、装置、设备以及存储介质
CN113546424B (zh) 虚拟资源的使用控制方法、装置、计算机设备及存储介质

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant