JP2022552306A - 仮想環境における仮想キャラクタ制御方法、装置及び機器 - Google Patents

仮想環境における仮想キャラクタ制御方法、装置及び機器 Download PDF

Info

Publication number
JP2022552306A
JP2022552306A JP2022521474A JP2022521474A JP2022552306A JP 2022552306 A JP2022552306 A JP 2022552306A JP 2022521474 A JP2022521474 A JP 2022521474A JP 2022521474 A JP2022521474 A JP 2022521474A JP 2022552306 A JP2022552306 A JP 2022552306A
Authority
JP
Japan
Prior art keywords
virtual character
target
target area
target virtual
virtual
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
JP2022521474A
Other languages
English (en)
Other versions
JP7431955B2 (ja
Inventor
智洪 ▲劉▼
▲暢▼ 郭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Publication of JP2022552306A publication Critical patent/JP2022552306A/ja
Application granted granted Critical
Publication of JP7431955B2 publication Critical patent/JP7431955B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
    • 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/45Controlling the progress of the video game
    • 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/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
    • A63F13/577Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game using determination of contact between game characters or objects, e.g. to avoid collision between virtual racing cars
    • 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/837Shooting of targets
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • 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/64Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car
    • A63F2300/643Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car by determining the impact between objects, e.g. collision detection
    • 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/65Methods for processing data by generating or executing the game program for computing the condition of a game character
    • 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/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/8076Shooting
    • 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/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/8082Virtual reality

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Architecture (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本願は、コンピュータ技術分野に関する、仮想環境における仮想キャラクタ制御方法、装置、機器及び媒体を提供する。当該方法は、第1画面を表示するステップであって、第1画面は、ターゲット仮想キャラクタの視角から仮想環境を観察した画面であり、第1画面は、仮想環境に位置するターゲット領域を含む、ステップ(101)と、第1移動命令に応答して、ターゲット仮想キャラクタがターゲット領域に入るように制御するステップ(102)と、ターゲット仮想キャラクタがターゲット領域に位置することに応答して、ターゲット仮想キャラクタがターゲット領域に沈下するように制御するステップ(103)とを含む。当該方法は、地形シミュレーションの現実度を向上させ、相互作用率を向上するのに有利である。

Description

関連出願への相互参照
本願は、2020年01月20日に中国特許局に提出された、出願番号が202010065208.7であり、発明の名称が「仮想環境における仮想キャラクタ制御方法、装置、機器及び媒体」である中国特許出願の優先権を主張し、その内容の全てが引用により本願に組み込まれる。
本願実施例は、コンピュータの技術分野に関し、特に、仮想環境における仮想キャラクタ制御方法、装置、機器及び媒体に関する。
一人称シューティングゲームなどの3D仮想環境に基づくアプリケーションにおいて、ユーザは、仮想環境内の仮想キャラクタの歩き、走り、登り、射撃、格闘などのアクションを制御でき、さらに、複数のユーザがオンラインでチームを組んで、同じ仮想環境で協力して特定のタスクを完了することができる。
関連技術では、仮想環境は、草地、山、砂漠、沼地などの様々な地形を含み、仮想キャラクタは、仮想環境内で任意に活動を実行することができる。関連技術では、異なる色、パターンを使用して、異なる地形に対してレンダリング(砂漠を黄色でレンダリングこと、芝生を緑でレンダリングすることなど)することにより、ユーザは、異なる地形を見ることができる。
関連技術では、実世界の地形は、ディスプレイ上のレンダリングによってのみシミュレートされ、ユーザは、レンダリング効果から地形表示の特徴を感知することしかできないが、地形の実際の特性を体験できないため、仮想環境における地形のシミュレーションの現実度が低く、相互作用率が低くなる。
本願実施例は、地形の特性をよりリアルにシミュレートし、相互作用率を向上させることができる、仮想環境における仮想キャラクタ制御方法、装置、機器及び媒体を提供する。
一側面では、仮想環境における仮想キャラクタ制御方法を提供し、前記方法は、
第1画面を表示するステップであって、前記第1画面は、ターゲット仮想キャラクタの視角から仮想環境を観察した画面であり、前記第1画面は、仮想環境に位置するターゲット領域を含む、ステップと、
第1移動命令に応答して、前記ターゲット仮想キャラクタが前記ターゲット領域に入るように制御する、ステップと、
前記ターゲット仮想キャラクタが前記ターゲット領域に位置することに応答して、前記ターゲット仮想キャラクタが前記ターゲット領域に沈下するように制御する、ステップとを含む。
別の一側面では、仮想環境における仮想キャラクタ制御装置を提供し、前記装置は、
第1画面を表示するように構成される表示モジュールであって、前記第1画面は、ターゲット仮想キャラクタの視角から仮想環境を観察した画面であり、前記第1画面は、仮想環境に位置するターゲット領域を含む、前記表示モジュールと、
第1移動命令に応答して、前記ターゲット仮想キャラクタが前記ターゲット領域に入るように制御するように構成される制御モジュールとを備え、
前記制御モジュールはさらに、前記ターゲット仮想キャラクタが前記ターゲット領域に位置することに応答して、前記ターゲット仮想キャラクタが前記ターゲット領域に沈下するように制御するように構成される。
別の一側面では、コンピュータ機器を提供し、前記コンピュータ機器は、プロセッサとメモリとを備え、前記メモリには、少なくとも1つの命令、少なくとも1つのプログラム、コードセット又は命令セットが記憶され、前記少なくとも1つの命令、前記少なくとも1つのプログラム、前記コードセット又は命令セットは、上記の側面に記載の仮想環境における仮想キャラクタ制御方法を実装するように、前記プロセッサによってロードされ実行される。
別の一側面では、非一時的なコンピュータ可読記憶媒体を提供し、前記非一時的なコンピュータ可読記憶媒体には、少なくとも1つの命令、少なくとも1つのプログラム、コードセット又は命令セットが記憶され、前記少なくとも1つの命令、前記少なくとも1つのプログラム、前記コードセット又は命令セットは、上記の側面に記載の仮想環境における仮想キャラクタ制御方法を実装するように、前記プロセッサによってロードされ実行される。
別の一側面では、コンピュータプログラム製品を更に提供し、前記コンピュータプログラム製品には、少なくとも1つの命令、少なくとも1つのプログラム、コードセット又は命令セットが記憶され、前記少なくとも1つの命令、前記少なくとも1つのプログラム、前記コードセット又は命令セットは、上記の側面に記載の仮想環境における仮想キャラクタ制御方法を実装するように、前記プロセッサによってロードされ実行される。
本願実施例によって提供される技術的解決策は、少なくとも以下の有益な効果を有する。
ターゲット仮想キャラクタがターゲット領域に移動した後、ターゲット仮想キャラクタがターゲット領域に沈下するように制御して、沼地や流砂などの自然の地形の沈下特徴をシミュレートし、ユーザは、第1画面で沼地、流砂の地形と、通常の地面との違いを確認できるだけでなく、仮想キャラクタの活動を制御するプロセスで、仮想キャラクタの移動モードに与える沼地又は流砂の地形の影響から、移動モードに与える異なる地形特性の影響を体験することもでき、仮想環境における地形シミュレーションの現実度を向上させ、相互作用率を向上させることができる。
本願実施例の技術的解決策をより明確に説明するために、以下では、実施例の説明に必要な図面を簡単に説明する。明らかに、以下の図面は、本願実施例の一部のみを示すだけであり、当業者にとっては、創造的な労力なしに、これらの図面に基づいて他の関連図面を得ることもできることを理解されたい。
本願の一例示的な実施例による端末の概略構造図である。 本願の一例示的な実施例によるコンピュータシステムの構造ブロック図である。 本願の一例示的な実施例による仮想環境における仮想キャラクタ制御方法のフローチャートである。 本願の一例示的な実施例によるカメラモデルを介してターゲット仮想キャラクタを観察する概略図である。 本願の一例示的な実施例による仮想環境における仮想キャラクタ制御方法の第1ユーザインターフェースの概略図である。 本願の別の例示的な実施例による仮想環境における仮想キャラクタ制御方法のフローチャートである。 本願の別の例示的な実施例による仮想環境における仮想キャラクタ制御方法が実施されるときの仮想環境の概略図である。 本願の別の例示的な実施例による仮想環境における仮想キャラクタ制御方法のフローチャートである。 本願の別の例示的な実施例による仮想環境における仮想キャラクタ制御方法のフローチャートである。 本願の別の例示的な実施例による仮想環境における仮想キャラクタ制御方法が実施されるときの仮想環境の概略図である。 本願の別の例示的な実施例による仮想環境における仮想キャラクタ制御方法のフローチャートである。 本願の別の例示的な実施例による仮想環境における仮想キャラクタ制御方法のフローチャートである。 本願の別の例示的な実施例による仮想環境における仮想キャラクタ制御方法が実施されるときの仮想環境の概略図である。 本願の別の例示的な実施例による仮想環境における仮想キャラクタ制御装置のブロック図である。 本願の一例示的な実施例による端末のブロック図である。
本願の目的、技術的解決策及び利点をより明確に説明するために、以下では、添付の図面を参照して本願の実施形態について更に詳細に説明する。
本願の実施例に関する名詞を簡単に説明する。
仮想環境:アプリケーションが端末で実行されるときに、表示(又は提供)される仮想環境である。当該仮想環境は、実世界をシミュレートした世界、又は半シミュレートされた半架空の世界、又は完全に架空の世界である。仮想環境は、2次元(two-dimensional、2D)仮想環境、2.5D仮想環境及び3D仮想環境のうちのいずれか1つであり、本願はこれを限定しない。下記の実施例では、仮想環境が3D仮想環境であることを例として説明する。
仮想キャラクタ:仮想環境における可動オブジェクトである。例示的に、当該可動オブジェクトは、仮想キャラクタ、仮想動物、アニメーションキャラクタなどであり得、例えば、3D仮想環境に表示される人物、動物、植物、ドラム缶、壁、又は石であり得る。例示的に、仮想キャラクタは、アニメーションスケルトンテクノロジに基づいて作成された3D立体モデルである。各仮想キャラクタは、3D仮想環境において独自の形状及びボリュームを有し、3D仮想環境の空間の一部を占める。
ターゲット領域:仮想環境内の1つの領域である。例示的に、ターゲット領域は、仮想環境内の、地面又は水面に配置された1つの領域である。例示的に、ターゲット領域は、仮想環境では、通常の地面と区別して表示される。例えば、通常の地面はカーキ色で、ターゲット領域はダークブラウン又はブルーである。例示的に、ターゲット領域は、沼地、流砂、ブラックホール、渦、底流の少なくとも1つである。例示的に、ターゲット領域内で、仮想キャラクタの移動速度は遅くなる。例示的に、仮想キャラクタは、ターゲット領域に入った後も継続的に移動する必要があり、一旦移動が停止し且つしばらく続いたら、仮想キャラクタは、沈下し又は/及びダメージを受ける。
ユーザインターフェース(User Interface、UI)コントロール:画像、入力ボックス、テキストボックス、ボタン、ラベルなど、アプリケーションのユーザインターフェイスに表示される視覚的なコントロール又は要素であり、ここで、一部のUIコントロールは、ユーザの動作に応答することができ、例えば、移動コントロールは、仮想キャラクタが仮想環境で移動するように制御する。ユーザは、移動コントロールをトリガーして、仮想キャラクタの前進、後退、左右への移動、登り、水泳、ジャンプなどを制御する。本願実施例におけるUIコントロールは、移動コントロール及びジャンプコントロールを含むが、これらに限定されない。
本願で提供される方法は、仮想環境及び仮想キャラクタをサポートするアプリケーションがインストールされた電子機器に適用され得る。いくつかの実施例では、電子機器は、端末とも呼ばれる。例示的に、仮想環境をサポートするアプリケーションは、仮想キャラクタが仮想環境で移動するように、ユーザによって制御できるアプリケーションである。例示的に、本願で提供される方法は、仮想現実(Virtual Reality、VR)アプリケーション、拡張現実(Augmented Reality、AR)プログラム、3Dマッププログラム、軍事シミュレーションプログラム、仮想現実ゲーム、拡張現実ゲーム、一人称射撃ゲーム(First-Person Shooting Game、FPS)、三人称射撃ゲーム(Third-Personal Shooting Game、TPS)、マルチプレイヤーオンラインバトルアリーナゲーム(Multiplayer Online Battle Arena Games、MOBA)、戦略ゲーム(Simulation Game、SLG)のうちのいずれか一つのプログラムに適用され得る。
例示的に、仮想環境は、1つ又は複数のゲーム世界のマップで構成され、ゲームにおける仮想環境は、実世界のシーンをシミュレートし、ユーザは、仮想キャラクタの歩き、走り、ジャンプ、射撃、格闘、運転、仮想武器を使用する他の仮想キャラクタへの攻撃、仮想武器の使用するチャージによる他の仮想キャラクタへの攻撃などの動作を制御でき、相互作用性が高く、さらに、複数のユーザがオンラインでチームを組んで、アリーナゲームを実行することができる。
いくつかの実施例では、上記のアプリケーションは、射撃ゲーム、レーシングゲーム、ロールプレイングゲーム、アドベンチャーゲーム、サンドボックスゲーム、バトルアリーナゲーム、軍事シミュレーションプログラムなどのプログラムである。上記のアプリケーションは、Windowsオペレーティングシステム、Appleオペレーティングシステム、Androidオペレーティングシステム、IOSオペレーティングシステム、及びLINUXオペレーティングシステムのうちの少なくとも1つのオペレーティングシステムをサポートできる。さらに、異なるオペレーティングシステムのアプリケーションを相互接続することができる。いくつかの実施例では、上記のアプリケーションは、タッチスクリーンを備えたモバイル端末に適したプログラムである。
いくつかの実施例では、上記のアプリケーションは、3Dエンジンに基づいて開発されたアプリケーションであり、例えば、3Dエンジンは、Unityエンジンである。
本願の端末は、デスクトップコンピュータ、ラップトップコンピュータ携帯電話、タブレットコンピュータ、電子書籍リーダー、MP3(Moving Picture Experts Group Audio Layer III、動画エキスパート圧縮標準オーディオレイヤ3)プレーヤ、MP4(Moving Picture Experts Group Audio Layer IV、動画エキスパート圧縮標準オーディオレイヤ4)プレーヤなどである。当該端末には、3D仮想環境をサポートするアプリケーションなど、仮想環境をサポートするアプリケーションがインストールされ、実行される。例示的に、当該アプリケーションは、バトルロワイヤル(Battle Royale、BR)ゲーム、仮想現実プログラム、拡張現実プログラム、3Dマッププログラム、軍事シミュレーションプログラム、三人称射撃ゲーム、一人称射撃ゲーム、マルチプレイヤーオンラインバトルアリーナゲームのうちのいずれか1つである。例示的に、当該アプリケーションは、スタンドアロンバージョンの3Dゲームプログラム、又はオンラインバージョンのアプリケーションなど、スタンドアロンバージョンのアプリケーションである。
図1は、本願の一例示的な実施例による端末の概略構造図である。図1に示されるように、当該端末は、プロセッサ11、タッチスクリーン12及びメモリ13を備える。
例示的に、プロセッサ11は、シングルコアプロセッサ、マルチコアプロセッサ、組み込みチップ、及び命令実行機能を備えたプロセッサのうちの少なくとも1つである。
タッチスクリーン12は、通常のタッチスクリーン又は感圧タッチスクリーンを含む。通常のタッチスクリーンは、タッチスクリーン12に加えられたプレス動作又はスライド動作を測定することができ、感圧タッチスクリーンは、タッチスクリーン12に加えられたプレス力を測定することができる。
メモリ13には、プロセッサ11の実行可能なプログラムが記憶される。例示的に、メモリ13には、仮想環境プログラムA、アプリケーションB、アプリケーションC、タッチ(及び圧力)感知モジュール18、及びオペレーティングシステムのカーネル層19が記憶される。ここで、仮想環境プログラムAは、3D仮想エンジン17に基づいて開発されたアプリケーションである。例示的に、仮想環境プログラムAは、3D仮想エンジン(仮想環境エンジンとも呼ばれる)17によって開発されたゲームプログラム、仮想現実プログラム、3Dマッププログラム、3Dデモプログラムのうちの少なくとも1つを含むが、これらに限定されない。例えば、端末のオペレーティングシステムがAndroidオペレーティングシステムを採用する場合、仮想環境プログラムAは、Javaプログラミング言語及びC#言語で開発され、さらに、例えば、端末のオペレーティングシステムがIOSオペレーティングシステムを採用する場合、仮想環境プログラムAは、Object-Cプログラミング言語とC#言語を使用して開発される。
3D仮想エンジン17は、複数のオペレーティングシステムプラットフォームをサポートする3Dインタラクティブエンジンであり、例示的に、3D仮想エンジンは、ゲーム開発、仮想現実(Virtual Reality、VR)及び3Dマップなどの様々な分野のプログラムの開発に適用され得、本願実施例は、3D仮想エンジン17の特定のタイプを制限しなく、下記の実施例では、3D仮想エンジン17がUnityエンジンであることを例として説明する。
タッチ(及び圧力)感知モジュール18は、タッチスクリーンドライバ191によって報告されたタッチイベント(及び圧力タッチイベント)を受信するためのモジュールであり、例示的に、タッチ感知モジュールは、圧力感知機能を備えず、圧力タッチイベントを受信しない。タッチイベントには、タッチイベントのタイプとタッチイベントの座標値が含まれ、タッチイベントのタイプには、タッチスタートイベント、タッチ移動イベント、及びタッチドロップイベントが含まれるが、これらに限定されない。圧力タッチイベントには、圧力タッチイベントの圧力値及び圧力タッチイベントの座標値が含まれる。圧力タッチイベントの座標値は、表示画面での圧力タッチ動作のタッチ位置を指示するために使用される。例示的に、表示画面の水平方向に横座標軸を確立し、表示画面の垂直方向に縦座標軸を確立して2D座標系を取得し、圧力タッチイベントの座標値は、2D座標系に基づいて決定された座標値である。
例示的に、カーネル層19は、タッチスクリーンドライバ191及び他のドライバ192を含む。タッチスクリーンドライバ191は、圧力タッチイベントを検出するように構成されるモジュールであり、タッチスクリーンドライバ191が圧力タッチイベントを検出した後、圧力タッチイベントをタッチ(及び圧力)感知モジュール18に送信する。
例示的に、他のドライバ192は、プロセッサ11に関連するドライバ、メモリ13に関連するドライバ、ネットワークコンポーネントに関連するドライバ、サウンドコンポーネントに関連するドライバなどである。
当業者は、上記の説明が端末の構造の概要を示した説明にすぎないことを理解することができる。異なる実施例において、端末は、より多い又はより少ないコンポーネントを備えることができる。例えば、端末は、重力加速度センサ、ジャイロスコープセンサ、電源などを備えることができる。
図2は、本願の一例示的な実施例によるコンピュータシステムの構造ブロック図である。当該コンピュータシステム200は、端末210、サーバクラスタ220を含む。
端末210には、仮想環境をサポートするアプリケーション211がインストールされ、実行される。端末が、仮想環境をサポートするアプリケーション211を実行する場合、仮想環境をサポートするアプリケーション211のユーザインターフェースが端末210の画面に表示される。例示的に、当該仮想環境をサポートするアプリケーション211は、FPSゲーム、TPSゲーム、軍事シミュレーションプログラム、MOBAゲーム、バトルアリーナゲーム、及びSLGゲームのうちのいずれか1つである。本実施例では、当該仮想環境をサポートするアプリケーション211がFPSゲームであることを例として説明する。端末210は、第1ユーザ212が使用する端末であり、第1ユーザ212は、端末210を使用して、仮想環境内に配置された第1仮想キャラクタが活動を実行するように制御し、第1仮想キャラクタは、第1ユーザ212のターゲット仮想キャラクタと呼ばれる。第1仮想キャラクタの活動には、体の姿勢の調整、這い、歩き、走り、ライディング、飛び、ジャンプ、運転、拾い、射撃、攻撃、投げなどのうちの少なくとも1つが含まれるが、これらに限定されない。例示的に、第1仮想キャラクタは、シミュレートされたキャラクタ又はアニメーションキャラクタである。
端末210の機器タイプは、スマートフォン、タブレットコンピュータ、電子書籍リーダー、MP3プレーヤ、MP4プレーヤ、ラップトップコンピュータ、及びデスクトップコンピュータのうちの少なくとも1つを含む。
図2には1つの端末のみが示されたが、異なる実施例では、サーバクラスタ220に接続できる複数の他の端末240が存在する。いくつかの実施例では、さらに存在する少なくとも1つの他の端末240は、開発者に対応する端末であり、端末240には、仮想環境をサポートするアプリケーションのための開発及び編集プラットフォームがインストールされ、開発者は、端末240で仮想環境をサポートするアプリケーションを編集及び更新することができ、仮想環境をサポートするアプリケーションの更新されたインストールパッケージを、有線ネットワーク又は無線ネットワークを介してサーバクラスタ220に伝送することもでき、端末210は、サーバクラスタ220から仮想環境をサポートするアプリケーションのインストールパッケージをダウンロードして、仮想環境をサポートするアプリケーションの更新を実現することができる。
端末210及び他の端末240は、無線ネットワーク又は有線ネットワークを介してサーバクラスタ220に接続される。
サーバクラスタ220は、1つのサーバ、複数のサーバ、クラウドコンピューティングプラットフォーム、及び仮想化センターのうちの少なくとも1つを含む。サーバクラスタ220は、仮想環境をサポートするアプリケーションに対してバックグラウンドサービスを提供するために使用される。例示的に、サーバクラスタ220がメインコンピューティング作業を担当し、端末210がセカンダリコンピューティング作業を担当し、又は、サーバクラスタ220がセカンダリコンピューティング作業を担当し、端末210がメインコンピューティング作業を担当し、又は、サーバクラスタ220と端末210との間で、分散コンピューティングアーキテクチャを使用して協調コンピューティングを実行する。
例示的に、上記の端末210及びサーバクラスタ220は、いずれもコンピュータ機器である。
一例では、サーバクラスタ220は、第1サーバ221及び第2サーバ226を含み、第1サーバ221は、プロセッサ222、ユーザアカウントデータベース223、バトルサービスモジュール224、ユーザ向けの入力/出力インターフェース(Input/Output Interface、I/Oインターフェース)225を含む。ここで、プロセッサ222は、第1サーバ221に記憶された命令をロードし、ユーザアカウントデータベース223及びバトルサービスモジュール224内のデータを処理するように構成される。ユーザアカウントデータベース223は、ユーザアカウントのアバタ、ユーザアカウントのニックネーム、ユーザアカウントの戦闘力指数、及びユーザアカウントが配置されたサービスゾーンなど、端末210及び他の端末240によって使用されるユーザアカウントのデータを記憶するように構成され、バトルサービスモジュール224は、ユーザが戦闘するための複数の戦闘室を提供するように構成され、ユーザ向けI/Oインターフェース225は、無線ネットワーク又は有線ネットワークを介して端末210との通信を確立して、データを交換するように構成される。例示的な実施例では、第2サーバ226は、インデントモジュール227を含む。インデントモジュール227は、無線ネットワーク又は有線ネットワークを介して端末210との通信を確立して、データを交換するように構成される。
上記の仮想環境の紹介及び実施環境の説明を組み合わせて、当該方法の実行主体が図1に示される端末であることを例として、本願実施例によって提供される仮想環境における仮想キャラクタ制御方法について説明する。当該端末には、仮想環境をサポートするアプリケーションが実行される。
本願は、仮想環境における仮想キャラクタ制御方法をFPSゲームに適用する例示的な実施例を提供する。例示的に、当該FPSゲームはゾンビモードを提供し、当該ゾンビモードには、AI(Artificial Intelligence、人工知能)によって制御されるゾンビが存在し、ゾンビは、ユーザによって制御される仮想キャラクタを自動的に追跡し、ユーザは、仮想キャラクタを制御して、すべてのゾンビを排除し、又は、仮想環境で一定期間生き残った後こそ、ゲームに勝つことができるようにする必要がある。
本願で提供される仮想環境における仮想キャラクタ制御方法では、ユーザによって制御される仮想キャラクタが沼地に入る場合、沼地は、仮想キャラクタの移動速度を低下させ、仮想キャラクタは沼地で継続的に移動する必要があり、一旦、仮想キャラクタが一箇所にとどまる時間が一定期間を超えたら、仮想キャラクタは沼地の影響で沈下し、沼地は沈下期間に仮想キャラクタにダメージを与え、仮想キャラクタの状態値を低下させる。例示的に、仮想キャラクタは、ジャンプ又は他の方法で沼地の沈下を解除して、仮想キャラクタが沈下前の高さに戻ることができる。
例示的に、沼地はゾンビにも影響を与え、沼地は同じくゾンビの移動速度も低下させる。ゲーム内の仮想キャラクタには、ゾンビを移動できないようにするスキルがあり、ゾンビは沼地に一定期間留まると、沼地の影響で自動的に沈下し、ゾンビが死ぬまでゾンビの沈下を止めることはできない。したがって、ユーザは、ゾンビを沼地に誘導し、且つゾンビを移動できないようにするスキルを使用する方法によって、ゾンビを殺すことができる。
例示的に、沼地には衝突ボックスが設定され、仮想キャラクタが沼地に入る又は沼地を離れるという情報は、衝突ボックスを介して取得する。仮想キャラクタ又はゾンビのモデルが衝突ボックスと衝突した場合、衝突ボックスは衝突情報に戻り、当該衝突情報は、仮想キャラクタ又はゾンビの情報、当該仮想キャラクタ又はゾンビが衝突ボックスに入る/衝突ボックスを出るという情報を含む。
例示的に、沼地は、摩擦係数を設定することによって仮想キャラクタの移動速度を低下させる。仮想キャラクタが特定の沼地に位置する場合、仮想キャラクタの移動速度は、通常の移動速度に、当該沼地に対応する摩擦係数を掛けることによって取得する。例示的に、仮想環境内の異なる位置の沼地は、異なる摩擦係数に対応しており、即ち、異なる沼地での仮想キャラクタの移動速度は異なる。
図3は、本願の一例示的な実施例による仮想環境における仮想キャラクタ制御方法のフローチャートである。当該方法の実行主体が図1に示される端末であることを例として説明すると、当該端末は、仮想環境をサポートするアプリケーションを実行し、当該方法は少なくとも以下のステップを含む。
ステップ101において、第1画面を表示し、第1画面は、ターゲット仮想キャラクタの視角から仮想環境を観察した画面であり、第1画面は、仮想環境に位置するターゲット領域を含む。
例示的に、アプリケーションは、第1ユーザインターフェースを表示する。第1ユーザインターフェースは、第1画面を含み、第1画面は、ターゲット仮想キャラクタの視角から仮想環境を観察して収集された画面である。
例示的に、第1画面は、ターゲット仮想キャラクタの視角から仮想環境を観察した画面である。ターゲット仮想キャラクタの視角は、ターゲット仮想キャラクタの一人称視角又は三人称視角で、仮想環境で観察するときの観察角度である。例示的に、本願実施例では、ターゲット仮想キャラクタの視角は、カメラモデルを介して仮想環境でターゲット仮想キャラクタを観察するときの角度である。
例示的に、カメラモデルは、仮想環境で仮想キャラクタを自動的に追従し、即ち、仮想環境内の仮想キャラクタの位置が変化した場合、仮想環境内の仮想キャラクタを追従するカメラモデルの位置が同時に変化し、且つ当該カメラモデルは、仮想環境で、いつも仮想キャラクタの参照距離範囲内にある。例示的に、自動追従過程では、カメラモデルと仮想キャラクタとの相対位置は変化しない。
カメラモデルは、仮想環境内の仮想キャラクタの周囲に位置する3Dモデルであり、一人称視角を採用する場合、当該カメラモデルは、仮想キャラクタの頭部の近く又は仮想キャラクタの頭部に位置する。三人称視角を採用する場合、当該カメラモデルは、仮想キャラクタの後方に位置し且つ仮想キャラクタにバインドされることができ、さらに、仮想キャラクタから参照距離離れた任意の位置に位置することもできる。当該カメラモデルを介して、異なる角度から仮想環境内に位置した仮想キャラクタを観察することができる。例示的に、当該三人称視角が、一人称の肩越しの視角である場合、カメラモデルは、仮想キャラクタ(仮想キャラクタの頭部と肩など)の後方に位置する。例示的に、一人称視角及び三人称視角の他にも、視角は、トップダウン視角などの他の視角も含む。トップダウン視角を採用する場合、当該カメラモデルは、仮想キャラクタの頭部の上空に位置することができ、トップダウン視角は、空から下を見る角度で仮想環境を観察する視角である。例示的に、当該カメラモデルは、仮想環境では、実際に表示されなく、即ち、ユーザインターフェイスに表示される仮想環境には、当該カメラモデルが表示されない。
当該カメラモデルが仮想キャラクタから参照距離離れた任意の位置に位置することを例として説明する。例示的に、1つの仮想キャラクタは1つのカメラモデルに対応し、当該カメラモデルは、仮想キャラクタを回転中心として回転できる。例えば、仮想キャラクタの任意の1つの点を回転中心としてカメラモデルに対して回転し、カメラモデルは、回転の過程で、角度上で回転するだけでなく、変位にもオフセットがあり、回転するとき、カメラモデルと当該回転中心との距離は変化しない。即ち、カメラモデルは、当該回転中心を球心として球の表面上で回転する。例示的に、仮想キャラクタの任意の1つの点は、仮想キャラクタの頭部、胴体、又は仮想キャラクタの周囲の任意の1つの点であり、本願実施例はこれを限定しない。例示的に、カメラモデルが仮想キャラクタを観察する場合、当該カメラモデルの視角の中心方向は、当該カメラモデルが配置された球の表面上の点が、球心を指す方向である。
例示的に、当該カメラモデルはさらに、仮想キャラクタの異なる方向で、参照の角度で仮想キャラクタを観察することもできる。
例示的に、図4を参照すると、ターゲット仮想キャラクタ31内の1つの点を、回転中心32として決定し、カメラモデルは、当該回転中心32を中心に回転する。例示的に、当該カメラモデルは、1つの初期位置を有し、当該初期位置は、ターゲット仮想キャラクタの後上部の位置(脳部の後方位置など)である。例示的に、図4に示されるように、当該初期位置は、位置33であり、カメラモデルが位置34又は位置35に回転した場合、カメラモデルの視角方向は、カメラモデルの回転によって変更される。
例示的に、第1画面に表示される仮想環境には、山、平地、川、湖、海、砂漠、沼地、流砂、空、植物、建物、車両のうちの少なくとも1つの要素が含まれる。
ターゲット領域は、硬い地面と水面との間の硬度を有する領域である。例示的に、硬度は、画面表示を介して識別できる。例えば、仮想キャラクタがコンクリート地面を歩く場合には、痕跡を残さず、仮想キャラクタが土地又は草地の上を歩く場合には、足跡を残し、仮想キャラクタが水中を歩く場合には、水しぶきがかかったり、水面に波紋が現れたりする。例えば、仮想キャラクタがコンクリート地面を歩く場合には、仮想キャラクタの足は地表に位置し、仮想キャラクタが土地又は草地の上を歩く場合には、仮想キャラクタが踏んだ地面には、ある程度のくぼみがあり、仮想キャラクタが水中を歩く場合には、仮想キャラクタの足は地面(水面)の下に位置し、水面は仮想キャラクタの胴体を覆う。
ターゲット領域は、自然界の特定の地形をシミュレートするために使用される。例示的に、ターゲット領域は、沼地、流砂、海底の渦のうちの少なくとも1つをシミュレートするために使用される。例示的に、ターゲット領域は、一定の流動性を有する。例示的に、ターゲット領域と水平面との傾斜角度は、角度閾値より小さい。例えば、ターゲット領域と水平面との傾斜角度は、60°より小さい。例示的に、ターゲット領域は、仮想環境内の特定の領域を占める地表であり、ターゲット領域で特定の深さを有し、仮想キャラクタがターゲット領域に沈下するようにする。
例示的に、図5に示されるように、図5は、本願実施例による第1ユーザインターフェースの概略図であり、例示的に、第1ユーザインターフェースには、仮想環境の第1画面、及びターゲット仮想キャラクタを制御するために使用されるUIコントロール406が表示され、例示的に、アプリケーションが、他の入力機器を備えたコンピュータ機器で実行される場合、第1ユーザインターフェースには、UIコントロールが表示されない。例示的に、第1画面は、ターゲット仮想キャラクタの一人称視角から仮想環境を観察した画面であり、第1画面には、ターゲット仮想キャラクタの手402が表示される。例示的に、第1画面には、ターゲット領域401及び地面403があり、ここで、ターゲット領域401は、影領域であり、地面403は、白色領域である。例示的に、ターゲット領域401及び地面403には、仮想キャラクタが存在する。第1仮想キャラクタ404は地面403を歩き、第1仮想キャラクタ404の足は地表の上に位置し、第2仮想キャラクタ405はターゲット領域401で歩き、第2仮想キャラクタ405の足は地面の下に位置する。
例示的に、第1画面は、他の仮想キャラクタの視角から仮想環境を観察した画面であり、例えば、図5に示されるように、第1画面は、第3仮想キャラクタの視角から仮想環境を観察した画面であり、ここで、第1画面は、仮想環境に位置するターゲット仮想キャラクタを含み、例えば、第1仮想キャラクタ404は、ターゲット仮想キャラクタである。
ステップ102において、第1移動命令に応答して、ターゲット仮想キャラクタがターゲット領域に入るように制御する。
端末は、第1移動命令に応答して、ターゲット仮想キャラクタがターゲット領域に入るように制御する。
例示的に、第1移動命令は、ターゲット仮想キャラクタの移動を制御するために使用される命令である。例示的に、第1移動命令は、ユーザが移動動作を実行した後生成された命令であり、又は、第1移動命令は、端末が受信した、サーバによって送信されたターゲット仮想キャラクタの移動を制御する命令であり、又は、第1移動命令は、端末のアプリケーションによって自動的に生成された、ターゲット仮想キャラクタの移動を制御する命令である。例示的に、移動動作は、ユーザが第1ユーザインターフェースでUIコントロールをトリガーする動作であり、又は、移動動作は、ユーザがマウス、キーボード、ゲームパッドなどの入力機器を介して入力する動作であり、又は、移動動作は、端末がアクション認識、熱装置、ジェスチャ認識、音声認識などの認識を介して取得したユーザ動作である。例示的に、第1移動命令は、1つの命令、又は複数の命令の組み合わせである。
例示的に、第1移動命令は、ターゲット仮想キャラクタが第1移動を実行するように制御するために使用される。例えば、第1移動は、ターゲット仮想キャラクタが左に10単位距離を移動するように制御することであり、又は、第1移動は、ターゲット仮想キャラクタが前方にジャンプした後、3単位距離スライドするように制御することである。例示的に、単位距離は、1マス、1センチメートル、1デシメートル、及び1メートルのうちの少なくとも1つである。例示的に、ターゲット仮想キャラクタは、第1移動を実行した後にターゲット領域まで移動し、又は、ターゲット仮想キャラクタは、第1移動の実行中にターゲット領域に入ることができる。
例示的に、仮想キャラクタがターゲット領域に入ることは、仮想キャラクタの任意の部分がターゲット領域範囲内に位置することであり、又は、仮想キャラクタの重心/中心がターゲット領域範囲内に位置することである。例えば、仮想環境における仮想キャラクタの位置座標が仮想キャラクタの3Dモデル上の1つの点に従って決定される場合、仮想キャラクタがターゲット領域に入ることは、当該点がターゲット領域範囲に入ることである。
ステップ103において、ターゲット仮想キャラクタがターゲット領域に位置することに応答して、ターゲット仮想キャラクタがターゲット領域に沈下するように制御する。
端末は、ターゲット仮想キャラクタがターゲット領域に位置することに応答して、ターゲット仮想キャラクタがターゲット領域に沈下するように制御する。
例示的に、仮想キャラクタがターゲット領域に位置することは、仮想キャラクタの重心/中心がターゲット領域内に位置し、又は、仮想キャラクタ仮想キャラクタの3Dモデル上の少なくとも1つの点がターゲット領域内に位置することであり、又は、仮想キャラクタの足がターゲット領域内に位置することであり、又は、仮想キャラクタの3Dモデルのすべての部分がターゲット領域内に位置することである。
例示的に、ターゲット仮想キャラクタがターゲット領域に位置した後、ターゲット領域の地形(沼地又は流砂)の影響を受けて、ターゲット仮想キャラクタは、ターゲット領域に沈下する。沈下は、ターゲット仮想キャラクタが徐々に下降することである。例示的に、沈下は、ターゲット仮想キャラクタが垂直方向に下向きに移動することである。例示的に、沈下は、ユーザの制御を受けず、自動的に沈下することである。例示的に、ターゲット仮想キャラクタは、沈下期間で水平方向に移動でき、又は、ターゲット仮想キャラクタは、一旦沈下し始めたら水平方向に移動できなくなる。
まとめると、本願実施例によって提供される方法では、ターゲット仮想キャラクタがターゲット領域に移動した後、ターゲット仮想キャラクタがターゲット領域に沈下するように制御することにより、沼地や流砂などの自然の地形が沈む特徴をシミュレートし、それにより、ユーザは、第1画面で沼地、流砂の地形と通常の地面との違いを確認できるだけでなく、仮想キャラクタの活動を制御するプロセスで、仮想キャラクタの移動モードに与える沼地又は流砂の地形の影響から、移動モードに与える異なる地形特徴の影響を体験することもでき、仮想環境における地形シミュレーションの現実度を向上させ、相互作用率を向上させることができる。
例示的に、ターゲット領域内に位置する仮想キャラクタは、他の影響も受ける。例示的に、ターゲット仮想キャラクタがターゲット領域に入ることを決定する例示的な実施例を更に提供する。
図6は、本願の一例示的な実施例による仮想環境における仮想キャラクタ制御方法のフローチャートである。当該方法の実行主体が図1に示される端末であることを例として説明すると、当該端末は、仮想環境をサポートするアプリケーションを実行し、当該方法は少なくとも以下のステップを含む。
ステップ101において、第1画面を表示し、第1画面は、ターゲット仮想キャラクタの視角から仮想環境を観察した画面であり、第1画面は、仮想環境に位置するターゲット領域を含む。
ステップ1021において、第1移動命令に応答して、ターゲット仮想キャラクタの3Dモデルが衝突ボックスと第1衝突を発生して、第1衝突情報を生成するように制御し、第1衝突情報は、ターゲット仮想キャラクタの3Dモデルが衝突ボックスに入るという情報を含む。
端末は、第1移動命令に応答して、ターゲット仮想キャラクタの3Dモデルが衝突ボックスと第1衝突を発生して、第1衝突情報を生成するように制御する。
例示的に、ターゲット領域には衝突ボックスが設定され、衝突ボックスの底面と、ターゲット領域が配置された水平面との間の距離は、参照閾値より小さい。ターゲット仮想キャラクタがターゲット領域に入るように制御するプロセスは、ターゲット仮想キャラクタの3Dモデルが衝突ボックスと第1衝突を発生して、第1衝突情報を生成するように制御することにより実現される。
仮想キャラクタの3Dモデルは、仮想キャラクタのために作成されたモデルであり、仮想キャラクタの3Dモデルには、一定のサイズ及びボリュームを有する。例示的に、仮想キャラクタの3Dモデルは、シミュレートされたキャラクタモデル、動物モデル、又は他の種類の仮想キャラクタのモデルのうちの少なくとも1つである。
衝突ボックスは、ターゲット領域に設定された、ユーザインターフェイスには表示されない仮想モデルである。例示的に、衝突ボックスの形状は、ターゲット領域の境界をシミュレートし、衝突ボックスの形状、サイズがターゲット領域の範囲に近いほど、衝突ボックスの検出結果はより現実的である。
例示的に、衝突ボックスは、ターゲット領域の上方に設定され、又は、衝突ボックスは、ターゲット領域の下方に設定され、又は、衝突ボックスは、ターゲット領域の上方と下方の両方を含む。例えば、ターゲット領域が水平面に平行することを例として、衝突ボックスの底面は、水平面に平行し、又は水平面よりわずかに高く、又は、衝突ボックスの上表面は、水平面に平行し、又は水平面よりわずかに低く、又は、衝突ボックスの上表面は、水平面より高く、下表面は水平面より低い。
例えば、図7に示されるように、仮想環境には、3つのターゲット領域があり、それぞれ第1ターゲット領域407、第2ターゲット領域408及び第3ターゲット領域409であり、3つのターゲット領域には、3つの衝突ボックスが設定され、それぞれ第1衝突ボックス410、第2衝突ボックス411及び第3衝突ボックス412である。ここで、第1衝突ボックス410の底面は、第1ターゲット領域407が配置された水平面に平行であり、第2衝突ボックス411の上表面は、第2ターゲット領域408が配置された水平面に平行であり、第3衝突ボックス412の上表面は、第3ターゲット領域409が配置された水平面の上方に位置し、第3衝突ボックス412の下表面は、第3ターゲット領域409が配置された水平面の下方に位置する。例示的に、衝突ボックスは、第1衝突ボックス410及び第2衝突ボックス411などのターゲット領域全体をカバーし、又は、衝突ボックスは、第3衝突ボックス412などの一部のターゲット領域をカバーする。
例示的に、衝突ボックスのサイズは、ターゲット領域の全体又はほとんどをカバーする。例示的に、同じターゲット領域には、複数の衝突ボックスが設定され得、当該複数の衝突ボックスの間には交差がない。例示的に、衝突ボックスは、計算を容易にする規則的な形状、又は計算を容易にする複数の規則的な形状の組み合わせである。例えば、衝突ボックスは、直方体、立方体、円柱、球、又は円錐などである。
衝突ボックスは、仮想環境内の他の仮想モデルと衝突ボックスとの衝突を検出するために使用される。例えば、仮想環境内の他の仮想モデルが衝突ボックスと衝突した場合、衝突ボックスは、衝突点、衝突方向などの当該仮想モデルの情報を取得することができる。例示的に、衝突ボックスの検出は、衝突ボックスが他の仮想モデルと交差するか否かを検出することによって、衝突が発生するか否かを判断することである。
例示的に、ターゲット領域に入った後、ターゲット仮想キャラクタは、ターゲット領域に設定された衝突ボックスと衝突して、第1衝突情報を生成し、第1衝突情報は、ターゲット仮想キャラクタの3Dモデルが衝突ボックスに入るという情報、衝突点、ターゲット仮想キャラクタの識別子、ターゲット仮想キャラクタの位置、ターゲット仮想キャラクタのタイプ、ターゲット仮想キャラクタの状態属性のうちの少なくとも1つを含む。例示的に、第1衝突情報は、ターゲット仮想キャラクタがターゲット領域に入ったことを決定するために使用される。例示的に、端末が第1衝突情報からターゲット仮想キャラクタの3Dモデルが衝突ボックスに入るという情報を取得した場合、ターゲット仮想キャラクタが衝突ボックスに入ったと決定する。例示的に、第1衝突情報は、ターゲット仮想キャラクタの3Dモデル上の任意の1つの点が、衝突ボックスと衝突した後生成された情報である。
例示的に、第1衝突情報は、ターゲット仮想キャラクタの3Dモデルが、衝突ボックスの側面又は上表面と衝突したときに生成される情報である。
ステップ1022において、第1衝突情報に従って、ターゲット仮想キャラクタがターゲット領域内に位置すると決定する。
端末は、第1衝突情報に従って、ターゲット仮想キャラクタがターゲット領域内に位置すると決定する。
例示的に、端末は、第1衝突情報内の、ターゲット仮想キャラクタの3Dモデルが衝突ボックスに入るという情報に従って、ターゲット仮想キャラクタがターゲット領域内に位置すると決定する。
例示的に、端末は、第1衝突情報及びターゲット仮想キャラクタの位置情報に従って、ターゲット仮想キャラクタがターゲット領域内に位置すると決定する。例えば、端末が第1衝突情報を受信した後、ターゲット仮想キャラクタの座標を取得し、ターゲット仮想キャラクタの座標がターゲット領域内に位置する場合、ターゲット仮想キャラクタがターゲット領域内に位置すると決定する。
ステップ1031において、ターゲット仮想キャラクタがターゲット領域に位置し、ターゲット仮想キャラクタが参照時間間隔内に移動しなかったことに応答して、ターゲット仮想キャラクタがターゲット領域に沈下するように制御する。
端末は、ターゲット仮想キャラクタがターゲット領域に位置し、ターゲット仮想キャラクタが参照時間間隔内に移動しなかったことに応答して、ターゲット仮想キャラクタがターゲット領域に沈下するように制御する。
例示的に、ターゲット仮想キャラクタは、ターゲット領域に入ったとき、すぐに沈下し始めなく、また、ターゲット仮想キャラクタがターゲット領域内で継続的に移動する場合も沈下しない。ターゲット仮想キャラクタがターゲット領域に入り、一箇所に長時間留まる場合にのみ、沈下し始める。即ち、ターゲット仮想キャラクタがターゲット領域に入った後、沈下を避けるために継続的に移動する必要がある。
例示的に、参照時間間隔は任意であり、例えば、参照時間間隔は、3秒であり、即ち、ターゲット仮想キャラクタがターゲット領域内で3秒以内に移動しなかった場合、ターゲット仮想キャラクタが沈下するように制御する。
例示的に、図8に示されるように、ステップ1031は、ステップ1031-1として実現できる。
ステップ1031-1において、ターゲット仮想キャラクタがターゲット領域に位置し、ターゲット仮想キャラクタが参照時間間隔内に移動しなかったことに応答して、ターゲット仮想キャラクタの3Dモデルがターゲット領域で垂直方向に徐々に下降するように制御する。
端末は、ターゲット仮想キャラクタがターゲット領域に位置し、且つターゲット仮想キャラクタが参照時間間隔内に移動しなかったことに応答して、ターゲット仮想キャラクタの3Dモデルがターゲット領域で垂直方向に徐々に下降するように制御する。
例示的に、沈下は、ターゲット仮想キャラクタの3Dモデルが垂直方向に徐々に下降することである。即ち、ターゲット仮想キャラクタは、水平方向には移動せず、垂直方向にのみ移動する。例えば、ターゲット仮想キャラクタがターゲット領域で長時間留まった後、ターゲット仮想キャラクタは元の場所に固定され、移動できなくなり、徐々に下降していく。即ち、ターゲット仮想キャラクタが沈下するとき、ユーザはターゲット仮想キャラクタの移動を制御できない。
例示的に、ターゲット仮想キャラクタが排除条件を満たす場合、ターゲット仮想キャラクタは排除される。例示的に、第1排除条件及び第2排除条件のうちの少なくとも1つを含む。
例示的に、排除条件は、第1排除条件を含み、第1排除条件は、ターゲット仮想キャラクタの沈下した高さが距離閾値に達することである。
例示的に、ターゲット仮想キャラクタが一定の深さまで沈下した場合、即ち、ターゲット仮想キャラクタの沈下した高さが距離閾値に達した場合、ターゲット仮想キャラクタは排除され、ゲームは失敗する。例えば、ターゲット仮想キャラクタの頭部が、ターゲット領域が配置された水平面の下に沈下した場合、ターゲット仮想キャラクタは排除される。
例示的に、距離閾値は任意である。距離閾値は、ターゲット仮想キャラクタの3Dモデルの高さに従って決定してもよく、ターゲット領域の深さに従って決定してもよく、又は、距離閾値はランダムに生成された値である。例えば、距離閾値は、ターゲット仮想キャラクタの足から目までの距離に等しく、例えば、5単位長さである場合、ターゲット仮想キャラクタが5単位長さ沈下した場合、ターゲット仮想キャラクタが排除されたと決定する。
例示的に、ターゲット仮想キャラクタが沈下した高さは、仮想環境におけるターゲット仮想キャラクタの座標に従って決定する。例えば、水平面に垂直な垂直方向をz軸として使用する場合、ターゲット仮想キャラクタがターゲット領域に位置し、z軸座標が5単位長さ下降した場合、ターゲット仮想キャラクタが排除されたと決定する。又は、水平面がz軸のゼロ点であることを例として、ターゲット仮想キャラクタのz座標が-5である場合、ターゲット仮想キャラクタが排除されたと決定する。
例示的に、排除条件は、第2排除条件を含み、第2排除条件は、ターゲット仮想キャラクタの状態値がポイントの血液量(health point)閾値より小さいことである。例示的に、ターゲット仮想キャラクタの状態値が条件を満たす場合、即ち、ターゲット仮想キャラクタの状態値がライフの閾値より小さい場合、ターゲット仮想キャラクタは排除される。例えば、ターゲット仮想キャラクタの状態値がゼロである場合、ターゲット仮想キャラクタは排除される。ライフの閾値は、任意に設定された値である。例示的に、ライフの閾値はゼロである。又は、ライフの閾値は、状態値の最大値に従って決定し、例えば、ライフの閾値は、状態値の最大値の1パーセントに相当する。
例示的に、さらに、ターゲット仮想キャラクタと衝突ボックスの底面との衝突に従って、ターゲット仮想キャラクタが排除されたと決定する。例えば、ターゲット仮想キャラクタが衝突ボックスの底面と衝突して、第3衝突情報を生成した場合、ターゲット仮想キャラクタが排除されたと決定する。ここで、第3衝突情報は、ターゲット仮想キャラクタの3Dモデルが衝突ボックスの底面から衝突ボックスを出るという情報を含む。
ステップ104において、ターゲット仮想キャラクタがターゲット領域に位置することに応答して、ターゲット仮想キャラクタの状態値が第1速率で減少するように制御する。
端末は、ターゲット仮想キャラクタがターゲット領域に位置することに応答して、ターゲット仮想キャラクタの状態値が第1速率で減少するように制御する。
例示的に、ターゲット仮想キャラクタがターゲット領域に位置する場合、ターゲット仮想キャラクタの状態値は徐々に減少する。状態値は、ターゲット仮想キャラクタのライフ値(life value)、信号値、マナポイント(mana point)値、装備耐久性(equipment durability)、ライフ値回復速度、狂乱(fury)値の少なくとも1つを含む。
例示的に、第1速率は任意である。例えば、第1速率は、1単位/s(秒)である。例示的に、第1速率は、ターゲット仮想キャラクタに従って決定される。例えば、状態値はライフ値(health point)であり、ターゲット仮想キャラクタが保護服を着用した仮想キャラクタである場合、第1速率は、1秒あたり5ポイントの血液量ずつ低下するものであり、ターゲット仮想キャラクタがレジャースーツを着用した仮想キャラクタである場合、第1速率は、1秒あたり10ポイントの血液量ずつ低下するものである。例示的に、第1速率は、ターゲット領域に従って決定される。例えば、同じターゲット仮想キャラクタの場合、ターゲット仮想キャラクタが第1ターゲット領域に位置する場合、第1速率は、1秒あたり10ポイントの血液量ずつ低下するものであり、ターゲット仮想キャラクタが第2ターゲット領域に位置する場合、第1速率は、1秒あたり5ポイントの血液量ずつ低下するものである。例示的に、第1速率はさらに、ターゲット仮想キャラクタが沈下した高さに従って決定され得る。例えば、ターゲット仮想キャラクタが1単位距離沈下した場合、第1速率は、1単位距離あたり5ポイントの血液量ずつ低下するものであり、ターゲット仮想キャラクタが2単位距離沈下した場合、第1速率は、1単位距離あたり10ポイントの血液量ずつ低下するものである
例示的に、ターゲット仮想キャラクタがターゲット領域に位置することに応答して、ターゲット仮想キャラクタの状態値が第1速率で増加するように制御することもできる。ここで、状態値は、空腹値、寒さ値、疲労値のうちの少なくとも1つである。状態値が特定のライフの閾値より高い場合にも、ターゲット仮想キャラクタが排除されるように制御することができる。
例示的に、ターゲット仮想キャラクタがターゲット領域に位置し、且つゲット仮想キャラクタが参照時間間隔内に移動しなかったことに応答して、ターゲット仮想キャラクタの状態値が第1速率で減少するように制御する。又は、ターゲット仮想キャラクタがターゲット領域に沈下することに応答して、ターゲット仮想キャラクタの状態値が第1速率で減少するように制御する。
例示的に、沈下と状態値の減少は同期であり、ターゲット仮想キャラクタが沈下し始める場合、状態値は減少し始める。
ステップ105において、ターゲット仮想キャラクタがターゲット領域に位置することに応答して、ターゲット仮想キャラクタの移動速度が第1移動速度から第2移動速度に変化するように制御し、第2移動速度は、第1移動速度より遅い。
端末は、ターゲット仮想キャラクタがターゲット領域に位置することに応答して、ターゲット仮想キャラクタの移動速度が第1移動速度から第2移動速度に変化するように制御する。
例示的に、ターゲット領域は、ターゲット仮想キャラクタの移動速度も変更する。ターゲット仮想キャラクタがターゲット領域に入る場合、移動速度は低下する。例示的に、第1移動速度は、ターゲット仮想キャラクタが通常の地面を移動するときの移動速度である。第2移動速度は、ターゲット仮想キャラクタがターゲット領域内で移動するときの移動速度である。例示的に、第2移動速度は、第1移動速度に従って決定され、例えば、ターゲット仮想キャラクタがターゲット領域に入った後、第2移動速度は、第1移動速度から速度差を引いたものに等しい。又は、第1移動速度は、基本移動速度及び装備による速度の増加に従って決定し、ターゲット仮想キャラクタがターゲット領域に入る場合、第2移動速度は、基本移動速度のみであり、装備による速度の増加はなく、即ち、装備による速度の増加は、ターゲット領域では無効になる。
例示的に、移動速度の低下は沈下と同期せず、ターゲット仮想キャラクタがターゲット領域に入る場合、移動速度が低下し、ターゲット仮想キャラクタが参照時間間隔内に移動しなかったという条件を満たす必要はない。
例示的に、図9に示されるように、ステップ105は、ステップ1051を含む。
ステップ1051において、ターゲット仮想キャラクタの3Dモデルと衝突ボックスとの衝突によって生成された第1衝突情報に応答して、ターゲット仮想キャラクタの移動速度を第2移動速度として決定し、第2移動速度は、摩擦係数と第1移動速度との積に等しく、第1衝突情報は、ターゲット仮想キャラクタの3Dモデルが衝突ボックスに入るという情報を含む。
端末は、ターゲット仮想キャラクタの3Dモデルと衝突ボックスとの衝突によって生成された第1衝突情報に応答して、ターゲット仮想キャラクタの移動速度を第2移動速度として決定する。
例示的に、ターゲット仮想キャラクタの3Dモデルがターゲット領域の衝突ボックスと衝突した場合、ターゲット仮想キャラクタの移動速度は、第2移動速度になる。例示的に、衝突情報及びターゲット仮想キャラクタの座標に従って、ターゲット仮想キャラクタの位置を総合的に判断した後、ターゲット仮想キャラクタの移動速度を変更するか否かを決定する。
例示的に、各ターゲット領域は、対応する1つの摩擦係数を有する。例示的に、ターゲット領域は、衝突ボックス及び摩擦係数に1対1で対応する。端末は、衝突ボックスに従って、ターゲット仮想キャラクタが入ったターゲット領域を決定し、ターゲット領域に対応する摩擦係数を取得する。例示的に、端末は、摩擦係数及び第1移動速度に従って、第2移動速度を決定する。例示的に、第2移動速度は、摩擦係数と第1移動速度との積に等しい。例示的に、摩擦係数は、0より大きく、1より小さいか等しい値である。例えば、ターゲット仮想キャラクタが衝突ボックスと衝突して、第1衝突情報を生成した場合、端末は、衝突ボックスに対応する摩擦係数0.5を取得し、摩擦係数0.5及びターゲット仮想キャラクタの第1移動速度1m/s(メートル/秒)に従って、ターゲット仮想キャラクタの第2移動速度が0.5m/sであることを計算して取得する。
例示的に、仮想環境は、少なくとも2つのターゲット領域を含み、少なくとも2つのターゲット領域は、対応する少なくとも2つの異なる摩擦係数を有する。
例示的に、仮想環境は、異なるターゲット領域を有する。各ターゲット領域は、すべて対応する異なる摩擦係数を有する。即ち、同じターゲット仮想キャラクタが異なるターゲット領域に入る場合、当該ターゲット仮想キャラクタの第2移動速度も異なる。端末は、ターゲット仮想キャラクタの3Dモデルと衝突ボックスとの衝突情報を取得した後、衝突ボックスに従って、ターゲット領域に対応する摩擦係数を決定し、摩擦係数及び第1移動速度に従って、第2移動速度を計算して取得する。ターゲット仮想キャラクタの移動速度を、第2移動速度に変更する。
例えば、図10に示されるように、仮想環境は、橋413、通常の地面414、第4ターゲット領域415及び第5ターゲット領域416を有する。ここで、橋413及び通常の地面414でのターゲット仮想キャラクタの移動速度が第1移動速度3m/sであり、第4ターゲット領域415の摩擦係数が0.8であり、第5ターゲット領域の摩擦係数が0.2である場合、ターゲット仮想キャラクタが第4ターゲット領域415で移動する第2移動速度は2.4m/sであり、第5ターゲット領域416で移動する第2移動速度は0.6m/sである。
ステップ106において、ターゲット仮想キャラクタが排除条件を満たすことに応答して、ターゲット仮想キャラクタが排除されたと決定する。
端末は、ターゲット仮想キャラクタが排除条件を満たすことに応答して、ターゲット仮想キャラクタが排除されたと決定する。
例示的に、排除条件は、第1排除条件及び第2排除条件のうちの少なくとも1つを含む。第1排除条件は、ターゲット仮想キャラクタの沈下した高さが距離閾値に達することであり、第2排除条件は、ターゲット仮想キャラクタの状態値がライフの閾値より小さいことである。例示的に、ターゲット仮想キャラクタが沈下した高さが過度に高い場合、又は、ターゲット仮想キャラクタの状態値が過度に低い場合、ターゲット仮想キャラクタは排除される。例えば、第2排除条件がターゲット仮想キャラクタのライフ値が0.1より小さいことであり、第1排除条件がターゲット仮想キャラクタが10単位距離沈下することである場合、ターゲット仮想キャラクタが3単位距離沈下し、ライフ値が0である場合、ターゲット仮想キャラクタは排除され、ターゲット仮想キャラクタが10単位距離沈下し、ライフ値が100である場合にも、ターゲット仮想キャラクタは排除される。
例示的に、ターゲット仮想キャラクタが沈下した高さが過度に高く、且つターゲット仮想キャラクタの状態値が過度に低い場合、ターゲット仮想キャラクタは排除される。例えば、第2排除条件がターゲット仮想キャラクタのライフ値が0.1より小さいことであり、第1排除条件がターゲット仮想キャラクタが10単位距離沈下することである場合、ターゲット仮想キャラクタが10単位距離沈下し、且つライフ値が0である場合、ターゲット仮想キャラクタは排除される。
ステップ108において、ターゲット仮想キャラクタの3Dモデルが衝突ボックスと第2衝突して、第2衝突情報を生成するように制御し、第2衝突情報は、ターゲット仮想キャラクタの3Dモデルが衝突ボックスを出るという情報を含む。
端末は、ターゲット仮想キャラクタの3Dモデルが衝突ボックスと第2衝突して、第2衝突情報を生成するように制御する。
例示的に、ターゲット仮想キャラクタがターゲット領域を離れる場合、ターゲット仮想キャラクタの3Dモデルは、衝突ボックスと第2衝突して、第2衝突情報を生成し、第2衝突情報内の内容タイプは、第1衝突情報と類似する。第2衝突情報は、ターゲット仮想キャラクタの3Dモデルが衝突ボックスを出るという情報を含む。端末は、情報第2衝突に従って、ターゲット仮想キャラクタがターゲット領域を離れると決定することができる。
ステップ109において、第2衝突情報に従って、ターゲット仮想キャラクタがターゲット領域を離れると決定する。
端末は、第2衝突情報に従って、ターゲット仮想キャラクタがターゲット領域を離れると決定する。
例示的に、ターゲット仮想キャラクタがターゲット領域を離れることに応答して、ターゲット仮想キャラクタが沈下を停止するように制御し、又は、ターゲット仮想キャラクタが沈下を停止するように制御し、ターゲット仮想キャラクタのz軸座標が沈下前の座標値に復元されるように制御する。
例示的に、ターゲット仮想キャラクタがターゲット領域を離れることに応答して、ターゲット仮想キャラクタの移動速度が第1移動速度から第2移動速度又は第3移動速度になるように制御する。第3移動速度は、第2移動速度より高くてもよく、低くてもよい。例えば、ターゲット仮想キャラクタの移動速度が、ターゲット仮想キャラクタの空腹値に従って決定され、ターゲット仮想キャラクタがターゲット領域を離れる場合、ターゲット領域は、ターゲット仮想キャラクタの移動速度に影響を与えなくなるが、ターゲット仮想キャラクタの空腹値の変化は、ターゲット仮想キャラクタの移動速度が第2移動速度よりも遅くなるようにし、又は、第1移動速度よりも早くなるようにする。
例示的に、ターゲット仮想キャラクタがターゲット領域を離れることに応答して、ターゲット仮想キャラクタの状態値が減少を停止するように制御する。
例示的に、ターゲット仮想キャラクタがターゲット領域を離れることに応答して、ターゲット仮想キャラクタの状態値が第2速率で増加するように制御する。例えば、ターゲット仮想キャラクタがターゲット領域を離れる場合、ターゲット仮想キャラクタのライフ値がゆっくりと回復するように制御する。
まとめると、本願実施例によって提供される方法では、ターゲット仮想キャラクタがターゲット領域に入る場合、ターゲット仮想キャラクタの移動速度が低下するため、ターゲット仮想キャラクタがターゲット領域でゆっくりとしか移動できなくなり、ターゲット仮想キャラクタに対するターゲット領域の影響が沼地と流砂の効果に近くなる。それにより、ユーザは、移動モードに与える異なる地形特徴の影響を体験でき、仮想環境における地形シミュレーションの現実度を向上させ、相互作用率を向上させることができる。
本願実施例で提供される方法では、ターゲット仮想キャラクタがターゲット領域に入った後、ターゲット仮想キャラクタの移動速度を低下させることにより、ターゲット領域の近くにある他の仮想キャラクタがターゲット仮想キャラクタを攻撃しやすくなり、ターゲット仮想キャラクタが容易に排除される。仮想キャラクタの排除される速度をアップし、ゲームをできるだけ早く終わらせることにより、人間とコンピュータの相互作用の効率を向上させ、サーバの計算量を軽減し、サーバの負荷を軽減することができる。
本願実施例で提供される方法では、ターゲット仮想キャラクタがターゲット領域に入る場合、ターゲット仮想キャラクタの状態値が減少するため、体力(stamina)値、空腹値、ライフ値などのターゲット仮想キャラクタの状態値も、ターゲット領域の影響で、ターゲット仮想キャラクタがターゲット領域でゆっくりとしか移動できなくなり、ターゲット仮想キャラクタに対するターゲット領域の影響が沼地と流砂の効果に近くなる。それにより、ユーザは、状態値に対する異なる地形特徴の影響を体験でき、仮想環境における地形シミュレーションの現実度を更に向上させ、相互作用率を向上させることができる。
本願実施例で提供される方法では、ターゲット領域を設定することにより、ターゲット仮想キャラクタがターゲット領域に位置する場合、ターゲット仮想キャラクタは沈下し、ターゲット仮想キャラクタが一定の高さに沈下した後、ターゲット仮想キャラクタは排除される。当該方法は、仮想キャラクタの排除方法を増加させるため、仮想キャラクタの排除方法は、仮想キャラクタの状態値が0であることに限定されない。仮想キャラクタは、他の仮想キャラクタに攻撃されない場合でも、沈下する方法によって排除され、仮想キャラクタの排除される速度をアップし、ゲームをできるだけ早く終わらせることにより、人間とコンピュータの相互作用の効率を向上させ、サーバの計算量を軽減し、サーバの負荷を軽減することができる。
本願実施例で提供される方法では、ターゲット仮想キャラクタがターゲット領域に入り、ターゲット領域で一定時間移動を停止した後、ターゲット仮想キャラクタが沈下し始めるように制御することにより、オンフック(ユーザが離れる/仮想キャラクタを制御しない)した仮想キャラクタがターゲット領域によって排除されるようにし、ゲームの速度をアップし、人間とコンピュータの相互作用の効率を向上させ、サーバの計算量を軽減し、サーバの負荷を軽減することができる。
本願実施例によって提供される方法では、ターゲット仮想キャラクタが沈下すると同時に、ターゲット仮想キャラクタの状態値が減少するように制御することにより、ターゲット仮想キャラクタがライフの閾値より小さいこと及び一定の高さに沈下することのうちのいずれか1つの排除条件を満たす場合、ターゲット仮想キャラクタはすべて排除され、仮想キャラクタの排除される速度をアップし、ゲームをできるだけ早く終わらせることにより、人間とコンピュータの相互作用の効率を向上させ、サーバの計算量を軽減し、サーバの負荷を軽減することができる。
本願実施例によって提供される方法では、ターゲット領域に衝突ボックスを設定することにより、ターゲット仮想キャラクタが衝突ボックスと衝突した後、衝突ボックスは、ターゲット仮想キャラクタが衝突ボックスに入る/衝突ボックスを出ることを示す衝突情報を生成し、端末がターゲット仮想キャラクタの位置を確認しやすくなり、それに応じて、ターゲット仮想キャラクタの移動速度又は他のゲーム状態を変更する。端末がターゲット仮想キャラクタの位置を感知する能力を改善し、端末がターゲット仮想キャラクタの位置を誤って判断する確率を削減し、相互作用率を向上させることができる。
例示的に、端末によって制御される仮想キャラクタ及びAIによって制御される仮想キャラクタに対する、ターゲット領域の異なる作用効果を及ぼす例示的な実施例を提供する。
図11は、本願の一例示的な実施例による仮想環境における仮想キャラクタ制御方法のフローチャートである。当該方法の実行主体が図1に示される端末であることを例として説明すると、当該端末は、仮想環境をサポートするアプリケーションを実行し、図3に示される例示的な実施例に基づいて、ステップ103は、ステップ1032~ステップ1034を含み、ステップ1034の後、ステップ107を更に含む。
ステップ1032において、ターゲット仮想キャラクタのタイプを判断する。
端末は、ターゲット仮想キャラクタのタイプを判断し、ターゲット仮想キャラクタが端末によって制御される仮想キャラクタである場合、ステップ1034を実行し、ターゲット仮想キャラクタがAIによって制御される仮想キャラクタである場合、ステップ1033を実行する。
ステップ1033において、ターゲット仮想キャラクタがターゲット領域に位置することに応答して、ターゲット仮想キャラクタが排除されるまで、ターゲット仮想キャラクタが沈下するように制御する。
端末は、ターゲット仮想キャラクタがターゲット領域に位置することに応答して、ターゲット仮想キャラクタが排除されるまで、ターゲット仮想キャラクタが沈下するように制御する。
例示的に、ターゲット仮想キャラクタがAIによって制御される仮想キャラクタである場合、ターゲット仮想キャラクタは、一旦沈下し始めたら排除されるまで沈下を停止できない。
例示的に、AIによって制御される仮想キャラクタは、野生の怪物、ゾンビ、ゾンビなどを含む。例示的に、AIによって制御される仮想キャラクタは、端末によって制御される仮想キャラクタを追跡して攻撃する。例示的に、端末によって制御される仮想キャラクタは、AIによって制御される仮想キャラクタを殺す必要がある。例示的に、端末によって制御される仮想キャラクタには、AIによって制御される仮想キャラクタを元の位置で動けないようにするスキル及び道具を有し、端末によって制御される仮想キャラクタが、AIによって制御される仮想キャラクタをターゲット領域に誘導した後、スキル又は道具を使用して、AIによって制御される仮想キャラクタがターゲット領域で移動を停止した時間が閾値を満たすようにした後、AIによって制御される仮想キャラクタは、ターゲット領域で沈下し始め、移動できなくなり、AIによって制御される仮想キャラクタの状態値がライフの閾値より小さい場合又は沈下した高さが距離閾値に達した場合、AIによって制御される仮想キャラクタは排除される。このようにして、端末によって制御される仮想キャラクタは、ターゲットの地形を使用して、AIによって制御される仮想キャラクタを殺すことができる。
ステップ1034において、ターゲット仮想キャラクタがターゲット領域に位置することに応答して、ターゲット仮想キャラクタがターゲット領域に沈下するように制御する。
例示的に、ターゲット仮想キャラクタが端末によって制御される仮想キャラクタであり、即ち、ユーザによって制御される仮想キャラクタである場合、ターゲット仮想キャラクタが沈下し始めた後、ターゲット仮想キャラクタは、一定の動作により、ターゲット仮想キャラクタが沈下を停止するように制御する。
ステップ107において、第2移動命令に応答して、ターゲット仮想キャラクタが沈下を停止するように制御する。
端末は、第2移動命令に応答して、ターゲット仮想キャラクタが沈下を停止するように制御する。
例示的に、第2移動命令は、ユーザが移動動作を実行した後生成された移動命令である。第2移動命令は、ターゲット仮想キャラクタの移動を制御するために使用される。例示的に、ターゲット仮想キャラクタがターゲット領域で一定時間移動を停止した後、ターゲット仮想キャラクタは沈下し始め、ユーザは、沈下し始めた後、移動動作により、ターゲット仮想キャラクタが沈下を停止するように制御し、再び移動し始める。
例えば、第2移動命令は、ユーザがジャンプ動作によって生成された移動命令であり、端末は第2移動命令を受信した後、控制ターゲット仮想キャラクタがジャンプして沈下を停止するように制御する。例えば、ターゲット仮想キャラクタが沈下し始める前のz軸座標は0であり、ターゲット仮想キャラクタが-1のz軸座標に沈下したとき、ユーザがジャンプ動作を実行する場合、端末は、ターゲット仮想キャラクタが沈下を停止するように制御するだけでなく、ターゲット仮想キャラクタの垂直座標を、沈下前の座標に変更し、即ち、-1を0に変更して、ターゲット仮想キャラクタが地面に戻るようにする。
例示的に、ターゲット仮想キャラクタが沈下し始めた後、ユーザの移動動作の一部は禁止され、例えば、ユーザは、ターゲット仮想キャラクタがうつ伏せすること、ターゲット仮想キャラクタがしゃがむこと、前後左右に移動することのうちの少なくとも1つを制御できない。例示的に、ユーザは、ジャンプ動作によってターゲット仮想キャラクタが沈下を停止するように制御した後にのみ、他の移動動作を実行できる。
例示的に、端末はまた、他の命令に応答して、ターゲット仮想キャラクタが沈下を停止するように制御することができ、例えば、道具の使用命令に応答して、ターゲット仮想キャラクタが沈下を停止するように制御する。例えば、ターゲット仮想キャラクタが沈下し始めた後、ユーザはターゲット仮想キャラクタが凍結道具を使用してターゲット領域を凍結し、ターゲット仮想キャラクタが沈下を停止するように制御する。
まとめると、本願実施例で提供される方法では、ターゲット仮想キャラクタが端末によって制御される仮想キャラクタである場合、端末は、沈下キャンセル命令を生成することにより、ターゲット仮想キャラクタが沈下をキャンセルするように制御することができる。ターゲット仮想キャラクタがAIによって制御される仮想キャラクタである場合、ターゲット仮想キャラクタは、排除されるまで沈下しかできない。したがって、ユーザはこの特性を介して、AIによって制御される仮想キャラクタをターゲット領域に誘導して、AIによって制御される仮想キャラクタが沈下し、排除されるようにし、仮想キャラクタが排除される速度をアップし、ゲームをできるだけ早く終わらせることにより、人間とコンピュータの相互作用の効率を向上させ、サーバの計算量を軽減し、サーバの負荷を軽減することができる。
例示的に、本願実施例で提供される仮想環境における仮想キャラクタがゾンビモードに適用される例示的な実施例を提供する。
図12は、本願の一例示的な実施例による仮想環境における仮想キャラクタ制御方法のフローチャートである。当該方法の実行主体が図1に示される端末であることを例として説明すると、当該端末は、仮想環境をサポートするアプリケーションを実行し、当該方法は、以下のステップ301~ステップ310を含む。
ステップ301において、ゾンビモードに入る。
端末は、マスター仮想キャラクタがゾンビモードに入るように制御する。例示的に、図13には、ゾンビモードの仮想環境が示され、図13に示されるように、仮想環境は、通常の地面414、橋413及び沼地領域417(ターゲット領域)を含む。
ステップ302において、沼地領域に入るか否かを判断する。
端末は、マスター仮想キャラクタが沼地に入るか否かを判断し、マスター仮想キャラクタが沼地に入る場合には、ステップ303を実行し、そうでない場合には、ステップ301を実行する。
例示的に、端末は、マスター仮想キャラクタ又は/及びゾンビが沼地に入るか否かを判断する。
ステップ303において、移動速度が低下する。
端末は、マスター仮想キャラクタ及び/又はゾンビの移動速度が低下するように制御する。例示的に、端末は、マスター仮想キャラクタの移動速度が第1移動速度から第2移動速度に変化するように制御する。
ステップ304において、ゾンビに静止スキルを使用するか否かを決定する。
端末は、マスター仮想キャラクタがゾンビに対して静止スキルを使用するか否かを判断し、マスター仮想キャラクタに対して静止スキルを使用する場合には、ステップ305を実行し、そうでない場合には、ステップ303を実行する。
ステップ305において、ゾンビが静止する。
端末は、ゾンビが静止するように制御する。
ステップ306において、沼地静止時間を超えたか否かを判断する。
端末は、ゾンビが静止した時間が沼地静止時間(閾値)を超えたか否かを判断し、ゾンビが静止した時間が沼地静止時間を超えた場合には、ステップ307を実行し、そうでない場合には、ステップ305を実行する。
ステップ307において、ゾンビが沈下し、ライフ値が減少する。
端末は、ゾンビが沈下し始めるように制御し、ゾンビのライフ値が第1速率で減少するように制御する。
ステップ308において、プレイヤーが沼地を離れるか否かを判断する。
端末は、マスター仮想キャラクタが沼地領域を離れるか否かを判断し、マスター仮想キャラクタが沼地領域を離れる場合には、ステップ310を実行し、そうでない場合には、ステップ309を実行する。
ステップ309において、継続的に移動する。
端末は、マスター仮想キャラクタが第2移動速度で沼地領域を継続的に移動するように制御する。
ステップ310において、移動速度を復元する。
端末は、マスター仮想キャラクタが移動速度を復元するように制御し、即ち、第2移動速度から第1移動速度に復元する。
まとめると、本願実施例では、本願で提供される方法、及び本願で提供される仮想環境における仮想キャラクタ制御方法をFPSゲームのゾンビモードに適用し、端末(ユーザ)によって制御されるマスター仮想キャラクタは、AIによって制御されるゾンビをターゲット領域(沼地領域)に誘導し、ゾンビに対して静止スキルを使用して、ゾンビがターゲット領域の影響で沈下し、排除されるようにし、仮想キャラクタの排除速度をアップし、ゲームをできるだけ早く終わらせることにより、人間とコンピュータの相互作用の効率を向上させ、サーバの計算量を軽減し、サーバの負荷を軽減することができる。
以下は、本願の装置実施例であり、装置実施例で詳細に説明してない詳細については、上記方法実施例を参照できる。
図14は、本願の一例示的な実施例による仮想環境における仮想キャラクタ制御装置のブロック図である。当該装置は端末に適用され、当該端末は、仮想環境をサポートするアプリケーションを実行し、当該装置は、
第1画面を表示するように構成され、第1画面は、ターゲット仮想キャラクタの視角から仮想環境を観察した画面であり、第1画面は、仮想環境に位置するターゲット領域を含む、表示モジュール201と、
第1移動命令に応答して、ターゲット仮想キャラクタがターゲット領域に入るように制御するように構成される制御モジュール202とを備え、
制御モジュール202はさらに、ターゲット仮想キャラクタがターゲット領域に位置することに応答して、ターゲット仮想キャラクタがターゲット領域に沈下するように制御するように構成される。
1つの選択可能な実施例では、制御モジュール202はさらに、ターゲット仮想キャラクタがターゲット領域に位置し、ターゲット仮想キャラクタが参照時間間隔内に移動しなかったことに応答して、ターゲット仮想キャラクタがターゲット領域に沈下するように制御するように構成される。
1つの選択可能な実施例では、制御モジュール202はさらに、ターゲット仮想キャラクタの3Dモデルがターゲット領域で垂直方向に徐々に下降するように制御するように構成される。
1つの選択可能な実施例では、当該装置はさらに、
ターゲット仮想キャラクタが排除条件を満たすことに応答して、ターゲット仮想キャラクタが排除されたと決定するように構成される決定モジュール203を備え、
ここで、排除条件は、第1排除条件及び第2排除条件のうちの少なくとも1つを含み、第1排除条件は、ターゲット仮想キャラクタの沈下した高さが距離閾値に達することであり、第2排除条件は、ターゲット仮想キャラクタの状態値がライフの閾値より小さいことである。
1つの選択可能な実施例では、制御モジュール202はさらに、ターゲット仮想キャラクタがターゲット領域に位置することに応答して、ターゲット仮想キャラクタの状態値が第1速率で減少するように制御するように構成される。
1つの選択可能な実施例では、制御モジュール202はさらに、ターゲット仮想キャラクタがターゲット領域に位置することに応答して、ターゲット仮想キャラクタの移動速度が第1移動速度から第2移動速度に変化するように制御するように構成され、第2移動速度は、第1移動速度より遅い。
1つの選択可能な実施例では、ターゲット領域には衝突ボックスが設定され、衝突ボックスのとターゲット領域が配置された水平面との間の距離は、参照閾値より小さい。
制御モジュール202はさらに、ターゲット仮想キャラクタの3Dモデルが衝突ボックスと第1衝突を発生して、第1衝突情報を生成するように制御するように構成される。
当該装置はさらに、
第1衝突情報を生成するように構成され、第1衝突情報は、ターゲット仮想キャラクタの3Dモデルが衝突ボックスに入るという情報を含む、衝突モジュール204を備え、
決定モジュール203はさらに、第1衝突情報に従って、ターゲット仮想キャラクタがターゲット領域内に位置すると決定するように構成される。
1つの選択可能な実施例では、制御モジュール202はさらに、ターゲット仮想キャラクタの3Dモデルが衝突ボックスと第1衝突を発生して、第1衝突情報を生成するように制御するように構成され、
衝突モジュール204はさらに、情報第2衝突を生成するように構成され、第2衝突情報は、ターゲット仮想キャラクタの3Dモデルが衝突ボックスを出るという情報を含み、
決定モジュール203はさらに、第2衝突情報に従って、ターゲット仮想キャラクタがターゲット領域を離れると決定するように構成される。
1つの選択可能な実施例では、ターゲット領域には衝突ボックスが設定され、ターゲット領域には、対応する摩擦係数を有し、
制御モジュール202はさらに、ターゲット仮想キャラクタの3Dモデルと衝突ボックスとの衝突によって生成された第1衝突情報に応答して、ターゲット仮想キャラクタの移動速度を第2移動速度として決定するように構成され、第2移動速度は、摩擦係数と第1移動速度との積に等しく、第1衝突情報は、ターゲット仮想キャラクタの3Dモデルが衝突ボックスに入るという情報を含む。
1つの選択可能な実施例では、仮想環境は、少なくとも2つのターゲット領域を含み、少なくとも2つのターゲット領域は、少なくとも2つの異なる摩擦係数に対応する。
1つの選択可能な実施例では、ターゲット仮想キャラクタは、端末によって制御される仮想キャラクタであり、
制御モジュール202はさらに、第2移動命令に応答して、ターゲット仮想キャラクタが沈下を停止するように制御するように構成される。
1つの選択可能な実施例では、ターゲット仮想キャラクタは、人工知能(AI)によって制御される仮想キャラクタであり、
制御モジュール202はさらに、ターゲット仮想キャラクタが排除されるまで、ターゲット仮想キャラクタがターゲット領域に沈下するように制御するように構成される。
本実施例では、ターゲット仮想キャラクタがターゲット領域に移動した後、ターゲット仮想キャラクタがターゲット領域に沈下するように制御することにより、沼地や流砂などの自然の地形が沈む特徴をシミュレートすることにより、ユーザは、第1画面で沼地、流砂の地形と通常の地面との違いを確認できるだけでなく、仮想キャラクタの活動を制御するプロセスで、仮想キャラクタの移動モードに与える沼地又は流砂の地形の影響から、移動モードに与える異なる地形特徴の影響を体験することもでき、仮想環境における地形シミュレーションの現実度を向上させ、相互作用率を向上させることができる。
上記の実施例で提供される仮想環境における仮想キャラクタ制御装置は、上記の各機能モジュールの分割のみを例として説明したが、実際の応用では、必要に応じて、上記の機能を異なる機能モジュールに割り当てて完了させることができ、即ち、機器の内部構造を異なる機能モジュールに分割することにより、以上で説明された機能の全部又は一部を完了することができることに留意されたい。さらに、上記実施例によって提供される仮想環境における仮想キャラクタ制御装置は、仮想環境における仮想キャラクタ制御方法の実施例と同じ構想に属し、その具体的な実現プロセスについては、前記方法の実施例を参照でき、ここでは繰り返して説明しない。
図15は、本願の一例示的な実施例による端末3900の概略構造図である。例示的に、当該端末3900は、スマートフォン、タブレットコンピュータ、MP3(Moving Picture Experts Group Audio Layer III、動画エキスパート圧縮標準オーディオレイヤ3)プレーヤ、MP4(Moving Picture Experts Group Audio Layer IV、動画エキスパート圧縮標準オーディオレイヤ4)プレーヤ、ラップトップ、又はデスクトップコンピュータであり得る。端末3900はさらに、ユーザ機器、携帯端末、ラップトップ端末、デスクトップ端末などの他の名前で呼ばれることができる。
通常、端末3900は、プロセッサ3901とメモリ3902を備える。
プロセッサ3901は、4コアプロセッサ、8コアプロセッサなどのような1つ又は複数の処理コアを含み得る。プロセッサ3901は、DSP(Digital Signal Processing、デジタル信号プロセッサ)、FPGA(Field-Programmable Gate Array、フィールドプログラマブルゲートアレイ)、PLA(Programmable Logic Array、プログラマブル論理アレイ)のうちの少なくとも1つのハードウェア形で実現されることができる。プロセッサ3901はさらに、メインプロセッサ及びコプロセッサを含み得る。メインプロセッサは、アクティブ状態でデータを処理するために使用されるプロセッサであり、CPU(Central Processing Unit、中央処理装置)とも呼ばれる。コプロセッサは、低電力プロセッサであり、待機状態でデータを処理するために使用される。いくつかの実施例では、プロセッサ3901は、GPU(Graphics Processing Unit、画像プロセッサ)と統合されてもより、GPUは、表示画面に表示される必要があるコンテンツをレンダリング及び描画するために使用される。いくつかの実施例では、は、AI(Artificial Intelligence、人工知能)プロセッサを更に備えることができ、当該AIプロセッサは、機械学習に関連する計算動作を処理するために使用される。
メモリ3902は、1つ又は複数のコンピュータ可読記憶媒体を含み、当該コンピュータ可読記憶媒体は非一時的である。メモリ3902はさらに、高速ランダムアクセスメモリ及び不揮発性メモリ、例えば、1つ又は複数の磁気ディスク記憶装置、フラッシュメモリ記憶装置を含み得る。いくつかの実施例では、メモリ3902内の非一時的なコンピュータ可読記憶媒体は、少なくとも1つの命令を記憶するために使用され、当該少なくとも1つの命令は、プロセッサ3901によって実行されることにより、本願の方法の実施例による仮想環境における仮想キャラクタ制御方法を実現するために使用される。
いくつかの実施例では、端末3900はさらに、周辺機器インターフェース3903及び少なくとも1つの周辺機器を含み得る。プロセッサ3901、メモリ3902及び周辺機器インターフェース3903は、バス又は信号線によって接続されることができる。各周辺機器は、バス、信号線、又は回路基板を介して周辺機器インターフェース3903に接続することができる。例示的に、周辺機器は、無線周波数回路3904、表示画面3905、カメラコンポーネント3906、オーディオ回路3907、位置決めコンポーネント3908及び電源3909のうちの少なくとも1つを含む。
周辺機器インターフェース3903は、I/O(Input/Output、入力/出力)に関連する少なくとも1つの周辺機器をプロセッサ3901及びメモリ3902に接続するために使用されることができる。いくつかの実施例では、プロセッサ3901、メモリ3902及び周辺機器インターフェース3903は、同一のチップ又は回路基板に統合されてもよく、他のいくつかの実施例では、プロセッサ3901、メモリ3902及び周辺機器インターフェース3903のいずれか1つ又は2つは、別個のチップ又は回路基板に実装されてもよく、本実施例はこれを限定しない。
無線周波数回路3904は、電磁信号とも呼ばれるRF(Radio Frequency、無線周波数)信号を送受信するために使用される。無線周波数回路3904は、電磁信号を介して通信ネットワーク及び他の通信機器と通信する。無線周波数回路3904は、電気信号を電磁信号に変換して送信し、又は受信した電磁信号を電気信号に変換する。例示的に、無線周波数回路3904は、アンテナシステム、RFトランシーバ、1つ又は複数の増幅器、同調器、発振器、デジタル信号プロセッサ、コーデックチップセット、ユーザ識別モジュールカードなどを含む。無線周波数回路3904は、少なくとも1つの無線通信プロトコルを介して他の端末と通信することができる。当該無線通信プロトコルは、ワールドワイドウェブ、メトロポリタンエリアネットワーク、イントラネット、各世代のモバイル通信ネットワーク(2G、3G、4G及び5G)、無線ローカルエリアネットワーク及び/又はWiFi(Wireless Fidelity、ワイヤレスフィデリティ)ネットワークを含むが、これらに限定されない。いくつかの実施例では、無線周波数回路3904は、NFC(Near Field Communication、近距離無線通信)に関連する回路を更に含み得るが、本願はこれを限定しない。
表示画面3905は、UI(User Interface、ユーザインターフェイス)を表示するために使用される。当該UIは、グラフィック、テキスト、アイコン、ビデオ、及びそれらの任意の組み合わせを含み得る。表示画面3905がタッチ表示画面である場合、表示画面3905はさらに、表示画面3905の表面上又はその上でタッチ信号を収集する能力を有する。当該タッチ信号は、処理のための制御信号としてプロセッサ3901に入力することができる。この場合、表示画面3905はさらに、仮想ボタン及び/又は仮想キーボード(ソフトボタン及び/又はソフトキーボードとも呼ばれる)を提供するために使用されることができる。いくつかの実施例では、端末3900のプロントパネルに配置された1つの表示画面があり、別のいくつかの実施例では、それぞれ端末3900の異なる表面又は折り畳まれた設計でそれぞれ配置された少なくとも2つの表示画面3905があり、さらにいくつかの実施例では、表示画面3905は、端末3900の曲面又は折り畳み面に配置された可撓性表示画面であり得る。さらに、表示画面3905は、非長方形の不規則なパターン、即ち、特殊な形状の画面として設定することもできる。表示画面3905は、LCD(Liquid Crystal Display、液晶ディスプレイ)、OLED(Organic Light-Emitting Diode、有機発光ダイオード)などの材料で作ることができる。
カメラコンポーネント3906は、画像又はビデオを収集するために使用される。例示的に、カメラコンポーネント3906、フロントカメラ及びリアカメラを含む。通常、フロントカメラは、端末3900のフロントパネルに配置され、リアカメラは端末3900の背面に配置される。いくつかの実施例では、リアカメラは少なくとも2つであり、それぞれがメインカメラ、被写界深度カメラ、広角カメラ、及び望遠カメラのうちの1つであり、メインカメラと被写界深度カメラの融合により背景ぼけ機能を実現し、メインカメラと広角カメラの融合により、パノラマ撮影及びVR(Virtual Reality、仮想現実)撮影機能又は他の融合撮影機能を実現する。いくつかの実施例では、カメラコンポーネント3906はさらに、フラッシュを備えることができる。フラッシュは、単色温度フラッシュ又は二色温度フラッシュであり得る。二色温度フラッシュは、暖光フラッシュと冷光フラッシュの組み合わせを指し、異なる色温度での光補正に使用できる。
オーディオ回路3907は、マイクロフォン及びスピーカを含み得る。マイクロフォンは、ユーザ及び環境の音波を収集し、音波を電気信号に変換して、プロセッサ3901に入力して処理するために使用され、又は無線周波数回路3904に入力して音声通信を実現するために使用される。立体音響収集又はノイズ低減の目的で、複数のマイクロフォンがあり得、それらはそれぞれ、端末3900の異なる部分に設定される。マイクロフォンはまた、アレイマイクロフォン又は全方向収集型マイクロフォンであり得る。スピーカは、プロセッサ3901又は無線周波数回路3904からの電気信号を音波に変換するために使用される。スピーカは、従来の薄膜スピーカ又は圧電セラミックスピーカであり得る。スピーカが圧電セラミックスピーカである場合、電気信号を人間の可聴音波に変換するだけでなく、距離測定などの目的で電気信号を人間の非可聴音波に変換することもできる。いくつかの実施例では、オーディオ回路3907はさらに、ヘッドホンジャックを含み得る。
位置決めコンポーネント3908は、端末3900の現在の地理位置を位置決めして、ナビゲーション又はLBS(Location Based Service、ロケーションベースサービス)を実現するために使用される。例示的に、位置決めコンポーネント3908は、米国のGPS(Global Positioning Systemグローバルポジショニングシステム)、中国の北斗システム又はロシアのガリレオシステムに基づく位置決めコンポーネントであり得る。
電源3909は、端末3900内の各コンポーネントに電力を供給するために使用される。例示的に、電源3909は、交流、直流、使い捨て電池又は充電式電池であり得る。電源3909が充電式電池を含む場合、当該充電式電池は、有線充電又は無線充電をサポートすることができる。有線充電式電池は有線回線で充電する電池であり、無線充電式電池は無線コイルで充電する電池である。当該充電式電池は、急速充電技術をサポートすることもできる。
いくつかの実施例では、端末3900はさらに、1つ又は複数のセンサ3910を備えることができる。当該1つ又は複数のセンサ3910は、加速度センサ3911、ジャイロスコープセンサ3912、圧力センサ3913、指紋センサ3914、光学センサ3915及び近接センサ3916を含むが、これらに限定されない。
加速度センサ3911は、端末3900によって確立された座標系の3つの座標軸上の加速度の大きさを検出することができる。例えば、加速度センサー3911は、3つの座標軸上の重力加速度の成分を検出するために使用され得る。プロセッサ3901は、加速度センサ3911によって収集された重力加速度信号に従って、ランドスケープビュー又はポートレートビューでユーザインターフェースを表示するように表示画面3905を制御することができる。加速度センサ3911はさらに、ゲーム又はユーザの運動データの収集に使用され得る。
ジャイロスコープセンサ3912は、端末3900の本体方向及び回転角を検出することができ、ジャイロスコープセンサ3912は、加速度センサ3911と協調して、端末3900上でのユーザの3Dアクションを収集することができる。プロセッサ3901は、ジャイロスコープセンサ3912によって収集されたデータに従って、モーションセンシング(例えば、ユーザの傾斜動作に従ってUIを変更する)、撮影中の画像安定化、ゲーム制御、及び慣性航法などの機能を実現することができる。
圧力センサ3913は、端末3900のサイドフレーム及び/又は表示画面3905の下層に配置することができる。圧力センサ3913が端末3900のサイドフレームに配置される場合、端末3900に対するユーザの保持信号を検出することができ、プロセッサ3901は、圧力センサ3913によって収集された握持信号に従って、左手及び右手認識又はショートカット動作を実行することができる。圧力センサ3913が表示画面3905の下層に配置される場合、プロセッサ3901は表示画面3905に対するユーザの圧力動作に従って、UIインターフェース上の動作可能なコントロールを制御する。動作可能なコントロールは、ボタンコントロール、スクロールバーコントロール、アイコンコントロール、及びメニューコントロールのうちの少なくとも1つを含む。
指紋センサ3914は、ユーザの指紋を収集するために使用され、プロセッサ3901は、指紋センサ3914によって収集された指紋に従ってユーザのアイデンティティを認識し、又は指紋センサ3914は、収集された指紋に従ってユーザのアイデンティティを認識する。ユーザのアイデンティティが信頼できるアイデンティティとして認識される場合、プロセッサ3901は、画面のロック解除、暗号化された情報の表示、ソフトウェアのダウンロード、支払い、設定の変更など、関連する機密動作を実行することをユーザに許可する。指紋センサ3914は、端末3900の正面、背面又は側面に配置することができる。端末3900が物理的ボタン又は製造業者のLogoを備える場合、指紋センサ3914は、物理的ボタン又は製造業者のLogoと統合することができる。
光学センサ3915は、周囲光強度を収集するために使用される。1つの実施例では、プロセッサ3901は、光学センサ3915によって収集された周囲光の強度に従って、表示画面3905の表示輝度を制御することができる。例示的に、周囲光強度が高い場合、表示画面3905の表示輝度が増加し、周囲光強度が低い場合、表示画面3905表示輝度を減少する。別の実施例では、プロセッサ3901は、光学センサ3915によって収集された周囲光の強度に従って、カメラコンポーネント3906の撮影パラメータを動的に調整することができる。
近接センサ3916は、距離センサとも呼ばれ、通常、端末3900のフロントパネルに配置される。近接センサ3916は、ユーザと端末3900の正面との距離を収集するために使用される。1つの実施例では、近接センサ3916が、ユーザと端末3900の正面との距離が徐々に減少していることを検出すると、プロセッサ3901は、表示画面3905が明るい画面状態からオフ画面状態に切り替えるように制御し、ユーザと端末3900の正面との距離が徐々に増加すると、プロセッサ3901は、表示画面3905が画面外状態から明るい画面状態に切り替えるように制御する。
当業者は自明であるが、図15に示される構造が端末3900への制限を構成せず、示されるものよりも多かれ少なかれコンポーネントを含むか、いくつかのコンポーネントを組み合わせ、又は異なるコンポーネント配置を採用することができる。
本願はさらに、コンピュータ機器を提供し、前記コンピュータ機器は、プロセッサと、メモリとを備え、前記メモリには、少なくとも1つの命令、少なくとも1つのプログラム、コードセット又は命令セットが記憶され、前記プロセッサは、前記少なくとも1つの命令、前記少なくとも1つのプログラム、前記コードセット又は命令セットをロード及び実行することにより、上記の例示的な実施例のいずれかによって提供される仮想環境における仮想キャラクタ制御方法を実行する。
本願はさらに、非一時的なコンピュータ可読記憶媒体を提供し、当該非一時的なコンピュータ可読記憶媒体は、少なくとも1つの命令、少なくとも1つのプログラム、コードセット又は命令セットを記憶し、前記少なくとも1つの命令、前記少なくとも1つのプログラム、前記コードセット又は命令セットは、プロセッサによってロード及び実行されることにより、上記の例示的な実施例のいずれかによって提供される仮想環境における仮想キャラクタ制御方法を実行する。
例示的な実施例ではさらに、コンピュータプログラム製品を提供し、当該コンピュータプログラム製品は、少なくとも1つの命令、少なくとも1つのプログラム、コードセット又は命令セットを記憶し、前記少なくとも1つの命令、前記少なくとも1つのプログラム、前記コードセット又は命令セットは、プロセッサによってロード及び実行されることにより、上記の例示的な実施例のいずれかによって提供される仮想環境における仮想キャラクタ制御方法を実行する。
上記実施例の全て又は一部の工程はハードウェアにより実行されてもよいし、プログラム命令に係るハードウェアにより実行されてもよく、該プログラムは、コンピュータ可読記憶媒体に記憶されてもよく、上記言及した記憶媒体は、読み取り専用メモリ、磁気ディスク又は光ディスクなどであってもよいことは当業者であれば理解されるべきである。
上記は本願の選択可能な実施例に過ぎず、本願を限定することを意図するものではなく、本願の精神及び原則内で行われるあらゆる修正、同等の置換、改善などは、本願の保護範囲に含まれるべきである。
11 プロセッサ
12 タッチスクリーン
13 メモリ
17 仮想エンジン(仮想環境エンジンとも呼ばれる)
18 タッチ(及び圧力)感知モジュール
19 カーネル層

Claims (15)

  1. 電子機器に適用する、仮想環境における仮想キャラクタ制御方法であって、
    第1画面を表示するステップであって、前記第1画面は、ターゲット仮想キャラクタの視角から仮想環境を観察した画面であり、前記第1画面は、前記仮想環境に位置するターゲット領域を含む、ステップと、
    第1移動命令に応答して、前記ターゲット仮想キャラクタが前記ターゲット領域に入るように制御する、ステップと、
    前記ターゲット仮想キャラクタが前記ターゲット領域に位置することに応答して、前記ターゲット仮想キャラクタが前記ターゲット領域に沈下するように制御する、ステップと
    を含む、仮想環境における仮想キャラクタ制御方法。
  2. 前記ターゲット仮想キャラクタが前記ターゲット領域に位置することに応答して、前記ターゲット仮想キャラクタが前記ターゲット領域に沈下するように制御する前記ステップは、
    前記ターゲット仮想キャラクタが前記ターゲット領域に位置し、且つ前記ターゲット仮想キャラクタが参照時間間隔内に移動しなかったことに応答して、前記ターゲット仮想キャラクタが前記ターゲット領域に沈下するように制御するステップを含む、
    請求項1に記載の仮想環境における仮想キャラクタ制御方法。
  3. 前記ターゲット仮想キャラクタが前記ターゲット領域に沈下するように制御する前記ステップは、
    前記ターゲット仮想キャラクタの3Dモデルが前記ターゲット領域で垂直方向に徐々に下降するように制御するステップを含む、
    請求項2に記載の仮想環境における仮想キャラクタ制御方法。
  4. 前記仮想環境における仮想キャラクタ制御方法は、
    前記ターゲット仮想キャラクタが排除条件を満たすことに応答して、前記ターゲット仮想キャラクタが排除されたと決定するステップを更に含み、
    前記排除条件は、第1排除条件及び第2排除条件のうちの少なくとも1つを含み、前記第1排除条件は、前記ターゲット仮想キャラクタの沈下した高さが距離閾値に達することであり、前記第2排除条件は、前記ターゲット仮想キャラクタの状態値がライフの閾値(life threshold)より小さいことである、
    請求項1に記載の仮想環境における仮想キャラクタ制御方法。
  5. 前記仮想環境における仮想キャラクタ制御方法は、
    前記ターゲット仮想キャラクタが前記ターゲット領域に位置することに応答して、前記ターゲット仮想キャラクタの状態値が第1速率で減少するように制御するステップを更に含む、
    請求項1に記載の仮想環境における仮想キャラクタ制御方法。
  6. 前記仮想環境における仮想キャラクタ制御方法は、
    前記ターゲット仮想キャラクタが前記ターゲット領域に位置することに応答して、前記ターゲット仮想キャラクタの移動速度が第1移動速度から第2移動速度に変化するように制御するステップを更に含み、前記第2移動速度は、前記第1移動速度より遅い、
    請求項1に記載の仮想環境における仮想キャラクタ制御方法。
  7. 前記ターゲット領域には衝突ボックスが設定され、前記衝突ボックスの底面と、前記ターゲット領域が配置された水平面との間の距離は、参照閾値より小さく、前記ターゲット仮想キャラクタが前記ターゲット領域に入るように制御する前記ステップは、
    前記ターゲット仮想キャラクタの3Dモデルが、前記衝突ボックスと第1衝突を発生して、第1衝突情報を生成するように制御するステップであって、前記第1衝突情報は、前記ターゲット仮想キャラクタの3Dモデルが前記衝突ボックスに入るという情報を含む、ステップと、
    前記第1衝突情報に従って、前記ターゲット仮想キャラクタが前記ターゲット領域内に位置すると決定する、ステップと
    を含む、請求項1ないし6のうちいずれか一項に記載の仮想環境における仮想キャラクタ制御方法。
  8. 前記仮想環境における仮想キャラクタ制御方法は、
    前記ターゲット仮想キャラクタの3Dモデルが、前記衝突ボックスと第2衝突を発生して、第2衝突情報を生成するように制御するステップであって、前記第2衝突情報は、前記ターゲット仮想キャラクタの3Dモデルが前記衝突ボックスを出るという情報を含む、ステップと、
    前記第2衝突情報に従って、前記ターゲット仮想キャラクタが前記ターゲット領域を離れると決定する、ステップと
    を更に含む、請求項7に記載の仮想環境における仮想キャラクタ制御方法。
  9. 前記ターゲット領域には衝突ボックスが設定され、前記ターゲット領域には、対応する摩擦係数を有し、
    前記ターゲット仮想キャラクタが前記ターゲット領域に位置することに応答して、前記ターゲット仮想キャラクタの移動速度が第1移動速度から第2移動速度に変化するように制御する前記ステップは、
    前記ターゲット仮想キャラクタの3Dモデルと前記衝突ボックスとの衝突によって生成された第1衝突情報に応答して、前記ターゲット仮想キャラクタの移動速度を前記第2移動速度として決定するステップであって、前記第2移動速度は、前記摩擦係数と前記第1移動速度との積に等しく、前記第1衝突情報は、前記ターゲット仮想キャラクタの3Dモデルが前記衝突ボックスに入るという情報を含む、ステップを含む、
    請求項6に記載の仮想環境における仮想キャラクタ制御方法。
  10. 前記仮想環境は、少なくとも2つのターゲット領域を含み、前記少なくとも2つのターゲット領域は、少なくとも2つの異なる摩擦係数に対応する、
    請求項9に記載の仮想環境における仮想キャラクタ制御方法。
  11. 前記ターゲット仮想キャラクタは、端末によって制御される仮想キャラクタであり、前記仮想環境における仮想キャラクタ制御方法は、
    第2移動命令に応答して、前記ターゲット仮想キャラクタが沈下を停止するように制御するステップを更に含む、
    請求項1ないし6、8ないし10のうちいずれか一項に記載の仮想環境における仮想キャラクタ制御方法。
  12. 前記ターゲット仮想キャラクタは、人工知能(AI)によって制御される仮想キャラクタであり、前記ターゲット仮想キャラクタが前記ターゲット領域に沈下するように制御する前記ステップは、
    前記ターゲット仮想キャラクタが排除されるまで、前記ターゲット仮想キャラクタが前記ターゲット領域に沈下するように制御するステップを含む、
    請求項1ないし6、8ないし10のうちいずれか一項に記載の方法。
  13. 仮想環境における仮想キャラクタ制御装置であって、
    第1画面を表示するように構成される表示モジュールであり、前記第1画面は、ターゲット仮想キャラクタの視角から仮想環境を観察した画面であり、前記第1画面は、仮想環境に位置するターゲット領域を含む、前記表示モジュールと、
    第1移動命令に応答して、前記ターゲット仮想キャラクタが前記ターゲット領域に入るように制御するように構成される制御モジュール
    とを備え、
    前記制御モジュールは、前記ターゲット仮想キャラクタが前記ターゲット領域に位置することに応答して、前記ターゲット仮想キャラクタが前記ターゲット領域に沈下するように制御するように構成される、前記仮想環境における仮想キャラクタ制御装置。
  14. プロセッサと、メモリとを備え、
    前記メモリは、少なくとも1つの命令、少なくとも1つのプログラム、コードセット又は命令セットを記憶するように構成され、
    前記少なくとも1つの命令、前記少なくとも1つのプログラム、前記コードセット又は命令セットは、請求項1ないし12のうちいずれか一項に記載の仮想環境における仮想キャラクタ制御方法を実装するように、前記プロセッサによってロードされ実行される、
    コンピュータ機器。
  15. 少なくとも1つの命令、少なくとも1つのプログラム、コードセット又は命令セットを記憶し、
    前記少なくとも1つの命令、前記少なくとも1つのプログラム、前記コードセット又は命令セットは、請求項1ないし12のうちいずれか一項に記載の仮想環境における仮想キャラクタ制御方法を実装するように、プロセッサによってロードされ実行される、
    コンピュータプログラム。
JP2022521474A 2020-01-20 2020-11-10 仮想環境における仮想キャラクタ制御方法、装置及びコンピュータプログラム Active JP7431955B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN202010065208.7 2020-01-20
CN202010065208.7A CN111298440A (zh) 2020-01-20 2020-01-20 虚拟环境中的虚拟角色控制方法、装置、设备及介质
PCT/CN2020/127797 WO2021147468A1 (zh) 2020-01-20 2020-11-10 虚拟环境中的虚拟角色控制方法、装置、设备及介质

Publications (2)

Publication Number Publication Date
JP2022552306A true JP2022552306A (ja) 2022-12-15
JP7431955B2 JP7431955B2 (ja) 2024-02-15

Family

ID=71161458

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022521474A Active JP7431955B2 (ja) 2020-01-20 2020-11-10 仮想環境における仮想キャラクタ制御方法、装置及びコンピュータプログラム

Country Status (6)

Country Link
US (1) US20220168646A1 (ja)
EP (1) EP4005651A4 (ja)
JP (1) JP7431955B2 (ja)
KR (1) KR20220027239A (ja)
CN (1) CN111298440A (ja)
WO (1) WO2021147468A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111298440A (zh) * 2020-01-20 2020-06-19 腾讯科技(深圳)有限公司 虚拟环境中的虚拟角色控制方法、装置、设备及介质
CN111589144B (zh) * 2020-06-24 2023-05-16 腾讯科技(深圳)有限公司 虚拟角色的控制方法、装置、设备及介质
CN112604276B (zh) * 2020-12-25 2022-09-02 珠海金山数字网络科技有限公司 一种地形修改方法与装置
JP6928709B1 (ja) * 2020-12-28 2021-09-01 プラチナゲームズ株式会社 情報処理プログラム、情報処理装置、および情報処理方法
CN113713373B (zh) * 2021-08-27 2024-10-18 网易(杭州)网络有限公司 游戏中的信息处理方法、装置、电子设备及可读存储介质
CN117679733A (zh) * 2022-09-09 2024-03-12 腾讯科技(成都)有限公司 信息显示方法、装置和存储介质及电子设备
EP4438144A1 (en) * 2023-03-28 2024-10-02 Sony Interactive Entertainment Inc. Virtual character modelling method and apparatus

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011245015A (ja) * 2010-05-26 2011-12-08 Nintendo Co Ltd ゲームプログラム、ゲームシステム、ゲーム装置、および、ゲーム制御方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000200362A (ja) * 1998-12-28 2000-07-18 Square Co Ltd ゲ―ム装置、及び当たり判定方法並びに当たり判定プログラムを記録した記録媒体
JP4530314B2 (ja) 2000-09-20 2010-08-25 株式会社バンダイナムコゲームス ゲームシステム、情報記憶媒体及び圧縮データの生成方法
JP4040050B2 (ja) * 2005-03-30 2008-01-30 株式会社コナミデジタルエンタテインメント プログラム、キャラクタ制御方法、ならびに、キャラクタ制御装置
JP2012234441A (ja) * 2011-05-06 2012-11-29 Namco Bandai Games Inc プログラム、情報記憶媒体、画像生成システム及びサーバシステム
KR101124287B1 (ko) * 2011-12-05 2012-04-12 주식회사 레드덕 온라인 1인칭 슈팅 게임에서의 듀얼 모드 무기 제공 시스템, 방법 및 컴퓨터 판독 가능한 기록 매체
KR20150095999A (ko) * 2014-02-13 2015-08-24 (주)유즈브레인넷 슈팅 게임을 위한 화면 제어 방법 및 그 장치
JP5980266B2 (ja) * 2014-05-14 2016-08-31 任天堂株式会社 情報処理システム、情報処理プログラム、情報処理装置、及び情報処理方法
US9588586B2 (en) * 2014-06-09 2017-03-07 Immersion Corporation Programmable haptic devices and methods for modifying haptic strength based on perspective and/or proximity
JP6744727B2 (ja) * 2016-02-19 2020-08-19 株式会社バンダイナムコエンターテインメント プログラム及びゲーム装置
CN109364475A (zh) * 2017-12-15 2019-02-22 鲸彩在线科技(大连)有限公司 虚拟角色控制方法、装置、终端、系统及介质
CN108245887A (zh) * 2018-02-09 2018-07-06 腾讯科技(深圳)有限公司 虚拟对象控制方法、装置、电子装置及存储介质
JP6759267B2 (ja) 2018-03-30 2020-09-23 株式会社バンダイナムコエンターテインメント ゲームシステム及びプログラム
CN108983969B (zh) * 2018-06-26 2021-08-06 魔力小鸟(北京)信息技术有限公司 虚拟形象交互式控制及可视化管理的系统
US20200148254A1 (en) * 2018-11-14 2020-05-14 Earl Knight Magrath, III Ride vehicle and track system
CN110507993B (zh) * 2019-08-23 2020-12-11 腾讯科技(深圳)有限公司 控制虚拟对象的方法、装置、设备及介质
CN110613938B (zh) * 2019-10-18 2023-04-11 腾讯科技(深圳)有限公司 控制虚拟对象使用虚拟道具的方法、终端及存储介质
CN111298440A (zh) * 2020-01-20 2020-06-19 腾讯科技(深圳)有限公司 虚拟环境中的虚拟角色控制方法、装置、设备及介质

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011245015A (ja) * 2010-05-26 2011-12-08 Nintendo Co Ltd ゲームプログラム、ゲームシステム、ゲーム装置、および、ゲーム制御方法

Also Published As

Publication number Publication date
KR20220027239A (ko) 2022-03-07
WO2021147468A9 (zh) 2021-08-26
US20220168646A1 (en) 2022-06-02
WO2021147468A1 (zh) 2021-07-29
JP7431955B2 (ja) 2024-02-15
EP4005651A1 (en) 2022-06-01
CN111298440A (zh) 2020-06-19
EP4005651A4 (en) 2022-11-30

Similar Documents

Publication Publication Date Title
JP7431955B2 (ja) 仮想環境における仮想キャラクタ制御方法、装置及びコンピュータプログラム
US11224810B2 (en) Method and terminal for displaying distance information in virtual scene
CN111589142B (zh) 虚拟对象的控制方法、装置、设备及介质
CN110665230B (zh) 虚拟世界中的虚拟角色控制方法、装置、设备及介质
WO2019153836A1 (zh) 虚拟环境中虚拟对象的姿态确定方法、装置及介质
WO2019153750A1 (zh) 用于对虚拟环境进行视角切换的方法、装置、设备及存储介质
CN111013142B (zh) 互动效果显示方法、装置、计算机设备及存储介质
JP2022500224A (ja) ユーザインターフェース表示方法、ユーザインターフェース表示装置、端末、コンピュータ装置、およびプログラム
CN110613938B (zh) 控制虚拟对象使用虚拟道具的方法、终端及存储介质
CN108664231B (zh) 2.5维虚拟环境的显示方法、装置、设备及存储介质
CN111414080B (zh) 虚拟对象的位置显示方法、装置、设备及存储介质
CN111399639B (zh) 虚拟环境中运动状态的控制方法、装置、设备及可读介质
CN111462307A (zh) 虚拟对象的虚拟形象展示方法、装置、设备及存储介质
JP7186901B2 (ja) ホットスポットマップの表示方法、装置、コンピュータ機器および読み取り可能な記憶媒体
CN110585695B (zh) 在虚拟环境中使用近战道具的方法、装置、设备及介质
CN111589141B (zh) 虚拟环境画面的显示方法、装置、设备及介质
CN111921197A (zh) 对局回放画面的显示方法、装置、终端及存储介质
CN111603770A (zh) 虚拟环境画面的显示方法、装置、设备及介质
CN112843679A (zh) 虚拟对象的技能释放方法、装置、设备及介质
CN111672102A (zh) 虚拟场景中的虚拟对象控制方法、装置、设备及存储介质
CN111672104A (zh) 虚拟场景的显示方法、装置、终端及存储介质
CN113559495A (zh) 虚拟对象释放技能的方法、装置、设备及存储介质
JP2024509064A (ja) 位置マークの表示方法及び装置、機器並びにコンピュータプログラム
CN113577765A (zh) 用户界面的显示方法、装置、设备及存储介质
CN110833695B (zh) 基于虚拟场景的业务处理方法、装置、设备及存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220408

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230417

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230419

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230713

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231016

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240105

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240122

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240202

R150 Certificate of patent or registration of utility model

Ref document number: 7431955

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150