IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッドの特許一覧

特許7477640仮想環境画面の表示方法、装置及びコンピュータプログラム
<>
  • 特許-仮想環境画面の表示方法、装置及びコンピュータプログラム 図1
  • 特許-仮想環境画面の表示方法、装置及びコンピュータプログラム 図2
  • 特許-仮想環境画面の表示方法、装置及びコンピュータプログラム 図3
  • 特許-仮想環境画面の表示方法、装置及びコンピュータプログラム 図4
  • 特許-仮想環境画面の表示方法、装置及びコンピュータプログラム 図5
  • 特許-仮想環境画面の表示方法、装置及びコンピュータプログラム 図6
  • 特許-仮想環境画面の表示方法、装置及びコンピュータプログラム 図7
  • 特許-仮想環境画面の表示方法、装置及びコンピュータプログラム 図8
  • 特許-仮想環境画面の表示方法、装置及びコンピュータプログラム 図9
  • 特許-仮想環境画面の表示方法、装置及びコンピュータプログラム 図10
  • 特許-仮想環境画面の表示方法、装置及びコンピュータプログラム 図11
  • 特許-仮想環境画面の表示方法、装置及びコンピュータプログラム 図12
  • 特許-仮想環境画面の表示方法、装置及びコンピュータプログラム 図13
  • 特許-仮想環境画面の表示方法、装置及びコンピュータプログラム 図14
  • 特許-仮想環境画面の表示方法、装置及びコンピュータプログラム 図15
  • 特許-仮想環境画面の表示方法、装置及びコンピュータプログラム 図16
  • 特許-仮想環境画面の表示方法、装置及びコンピュータプログラム 図17
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-22
(45)【発行日】2024-05-01
(54)【発明の名称】仮想環境画面の表示方法、装置及びコンピュータプログラム
(51)【国際特許分類】
   G06F 3/0488 20220101AFI20240423BHJP
   A63F 13/214 20140101ALI20240423BHJP
   A63F 13/50 20140101ALI20240423BHJP
【FI】
G06F3/0488
A63F13/214
A63F13/50
【請求項の数】 12
(21)【出願番号】P 2022560942
(86)(22)【出願日】2021-08-20
(65)【公表番号】
(43)【公表日】2023-06-02
(86)【国際出願番号】 CN2021113710
(87)【国際公開番号】W WO2022042435
(87)【国際公開日】2022-03-03
【審査請求日】2022-11-02
(31)【優先権主張番号】202010870309.1
(32)【優先日】2020-08-26
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】514187420
【氏名又は名称】テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】リン,リンユン
【審査官】酒井 優一
(56)【参考文献】
【文献】中国特許出願公開第109078326(CN,A)
【文献】中国特許出願公開第106126064(CN,A)
【文献】中国特許出願公開第111209000(CN,A)
【文献】国際公開第2020/134059(WO,A1)
【文献】米国特許出願公開第2014/0320507(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/0488
A63F 13/214
A63F 13/50
(57)【特許請求の範囲】
【請求項1】
コンピュータデバイスが実行する仮想環境画面の表示方法であって、
前記コンピュータデバイスに仮想環境画面を表示し前記仮想環境画面に第1のコントロール及び第2のコントロールを表示するステップであって、前記第1のコントロールは、第1の仮想オブジェクトが第1の動作を実行するように制御し、前記第2のコントロールは、前記第1の仮想オブジェクトが前記第1の動作とは異なる第2の動作を実行するように制御し、前記第1のコントロール及び前記第2のコントロールは、複数のコントロールタイプのうちの異なるコントロールタイプに属し、前記複数のコントロールタイプは、仮想オブジェクトの動作をアシストするアシストタイプのUIコントロール、仮想オブジェクトが移動するように制御する移動タイプのUIコントロール、仮想オブジェクトが仮想道具を使用するための照準タイプのUIコントロール及び仮想オブジェクトの姿勢を切り替える状態切り替えタイプのUIコントロールを含み、前記第1及び第2の動作のタイプはそれぞれ、前記第1及び第2のコントロールが属するコントロールタイプに対応する、ステップと、
前記第1のコントロール及び前記第2のコントロールに対する結合設定操作を受信するステップと、
前記結合設定操作に応答して前記第1のコントロール及び前記第2のコントロールを第3のコントロールに結合するステップと、
前記第1のコントロール及び前記第2のコントロールと取り替えて、前記第3のコントロールを更新表示するステップと、
含み、前記第3のコントロールは、前記第1の仮想オブジェクトが前記第1の動作及び前記第2の動作を実行するように制御し、前記第3のコントロールに対する操作が所定の時間閾値を超えるときに前記第1又は前記第2の動作がトリガーされる、仮想環境画面の表示方法。
【請求項2】
前記結合設定操作に応答して前記第1のコントロールと前記第2のコントロールを第3のコントロールに結合する前記ステップは、
前記結合設定操作に応答して前記第1のコントロールの第1のコントロールタイプ及び前記第2のコントロールの第2のコントロールタイプを取得するステップと、
前記第1のコントロールタイプ及び前記第2のコントロールタイプが予め設定された条件を満たすことに応答して、前記第1のコントロール及び前記第2のコントロールを前記第3のコントロールに結合するステップと、を含む請求項1に記載の方法。
【請求項3】
前記予め設定された条件は、
前記第1のコントロールタイプが前記アシストタイプであり、前記第2のコントロールタイプが前記照準タイプである条件と、
前記第1のコントロールタイプが前記アシストタイプであり、前記第2のコントロールタイプが前記移動タイプである条件と、
前記第1のコントロールタイプが前記移動タイプであり、前記第2のコントロールタイプが前記照準タイプである条件と、
前記第1のコントロールタイプが前記移動タイプであり、前記第2のコントロールタイプが前記状態切り替えタイプである条件と、
前記第1のコントロールタイプが前記状態切り替えタイプであり、前記第2のコントロールタイプが前記アシストタイプである条件と、
前記第1のコントロールタイプが前記状態切り替えタイプであり、前記第2のコントロールタイプが前記照準タイプである条件と、
のうちの少なくとも1種を含む、請求項2に記載の方法。
【請求項4】
前記第3のコントロールに対する第1の操作に応答して、前記第1の仮想オブジェクトが前記第1の動作を実行するように制御し、前記第3のコントロールに対する第2の操作に応答して、前記第1の仮想オブジェクトが前記第2の動作を実行するように制御するステップ、
又は、
前記第3のコントロールに対する第3の操作に応答して、前記第1の仮想オブジェクトが前記第1の動作及び前記第2の動作を同時に実行するように制御するステップ、
又は、
前記第3のコントロールに対する第4の操作に応答して、前記第1の動作及び前記第2の動作の優先度を取得し、前記優先度に基づいて前記第1の仮想オブジェクトが予め設定された順序に応じて前記第1の動作及び前記第2の動作を実行するように制御するステップをさらに含む、請求項に記載の方法。
【請求項5】
前記第3のコントロールに対する第1の分割設定操作に応答して、前記第3のコントロールを前記第1のコントロール及び前記第2のコントロールに分割するステップ、
又は、
前記第3のコントロールに対する第2の分割設定操作に応答して、前記第3のコントロールを第4のコントロール及び第5のコントロールに分割するステップであって、前記第4のコントロール及び前記第5のコントロールは、前記複数のコントロールタイプのうち、同じコントロールタイプに属するステップをさらに含む、請求項1~3のいずれか一項に記載の方法。
【請求項6】
前記第3のコントロールに対する第1の分割設定操作に応答して、前記第3のコントロールを前記第1のコントロール及び前記第2のコントロールに分割する前記ステップは、
前記第3のコントロールに対する第1の分割設定操作に応答して、前記第3のコントロールのコントロールタイプに対応する動作タイプを取得するステップと、
前記動作タイプに基づいて前記第3のコントロールを前記第1のコントロール及び前記第2のコントロールに分割するステップと、を含む、請求項に記載の方法。
【請求項7】
前記第3のコントロールに対する第2の分割設定操作に応答して、前記第3のコントロールを前記第4のコントロール及び前記第5のコントロールに分割する前記ステップは、
前記第3のコントロールに対する第2の分割設定操作に応答して、前記第3のコントロールに対応する少なくとも2つの動作の間の相関関係を取得するステップであって、前記相関関係は、前記第3のコントロールがトリガーされるときに、前記第1の仮想オブジェクトが実行する前記少なくとも2つの動作の間の階層関係を示す、ステップと、
前記相関関係に基づいて前記第3のコントロールを前記第4のコントロール及び前記第5のコントロールに分割するステップと、を含む、請求項に記載の方法。
【請求項8】
前記仮想環境画面は、第1の仮想オブジェクトの視角で仮想環境を観察して得られた画面であり、
当該方法は、
前記第1の仮想オブジェクトの視角内に少なくとも2つの第2の仮想オブジェクトがあることに応答して、前記第2の仮想オブジェクトの数に基づいて前記第3のコントロールを分割するステップをさらに含む、請求項に記載の方法。
【請求項9】
前記第3のコントロールを分割した後に前記第3のコントロール取り替えて、少なくとも2つの分割済みコントロールを更新表示するステップをさらに含む、請求項に記載の方法。
【請求項10】
前記第3のコントロールを前記第1のコントロール及び前記第2のコントロールに分割した後、
前記第1のコントロールに対する第1の操作に応答して、前記第1の仮想オブジェクトが前記第1の動作を実行するように制御し、前記第2のコントロールに対する第2の操作に応答して、前記第1の仮想オブジェクトが前記第1の動作を実行すると同時に、第の動作を実行するように制御するステップをさらに含み、
或いは、
前記第3のコントロールを前記第4のコントロール及び前記第5のコントロールに分割した後、
前記第4のコントロールに対する第3の操作に応答して、前記第1の仮想オブジェクトが第4の動作を実行するように制御し、前記第5のコントロールに対する第4の操作に応答して、前記第1の仮想オブジェクトが第5の動作を実行するように制御するステップをさらに含み、
前記第4の動作と前記第5の動作は、相関関係を有する、請求項に記載の方法。
【請求項11】
仮想環境画面を表示し前記仮想環境画面に第1のコントロール及び第2のコントロールを表示する表示モジュールであって、前記第1のコントロールは、第1の仮想オブジェクトが第1の動作を実行するように制御し、前記第2のコントロールは、前記第1の仮想オブジェクトが前記第1の動作とは異なる第2の動作を実行するように制御し、前記第1のコントロール及び前記第2のコントロールは、複数のコントロールタイプのうちの異なるコントロールタイプに属し、前記複数のコントロールタイプは、仮想オブジェクトの動作をアシストするアシストタイプのUIコントロール、仮想オブジェクトが移動するように制御する移動タイプのUIコントロール、仮想オブジェクトが仮想道具を使用するための照準タイプのUIコントロール及び仮想オブジェクトの姿勢を切り替える状態切り替えタイプのUIコントロールを含み、前記第1及び第2の動作のタイプはそれぞれ、前記第1及び第2のコントロールが属するコントロールタイプに対応する、表示モジュールと、
前記第1のコントロール及び前記第2のコントロールに対する結合設定操作を受信する受信モジュールと、
前記結合設定操作に応答して前記第1のコントロール及び前記第2のコントロールを第3のコントロールに結合する処理モジュールと、を含み、
前記表示モジュールは、前記第1のコントロール及び前記第2のコントロールと取り替えて、前記第3のコントロールを更新表示し、前記第3のコントロールは、前記第1の仮想オブジェクトが前記第1の動作及び前記第2の動作を実行するように制御し、前記第3のコントロールに対する操作が所定の時間閾値を超えるときに前記第1又は前記第2の動作がトリガーされる、仮想環境画面の表示装置。
【請求項12】
コンピュータに、請求項1~10のいずれか一項に記載の仮想環境画面の表示方法を実施させる、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、2020年8月26日に出願した、出願番号が第202010870309.1号、発明の名称が「仮想環境画面の表示方法、装置、デバイス及び記憶媒体」の中国特許出願の優先権を主張するものであり、その全ての内容は参照により本出願に組み込まれるものとする。
【0002】
本出願は、ヒューマンコンピュータインタラクションの分野に関し、特に仮想環境画面の表示方法、装置、デバイス及び記憶媒体に関する。
【背景技術】
【0003】
仮想環境に基づくアプリケーションプログラム、例えば、ファーストパーソン・シューティングゲームでは、ユーザーは、仮想オブジェクトがしゃがむ、うつ伏せ、射撃、走るなどの動作を実行するように制御することができる。
【0004】
ゲーム実行時に、仮想環境画面が表示され、仮想環境画面に複数のユーザーインタフェースコントロール(User Interface、UIコントロール)が表示され、複数のUIコントロールは、一定のレイアウトに応じて仮想環境画面に分布し、各UIコントロールは、仮想オブジェクトが1つの動作を実行するように制御することを実現し、例えば、UIコントロール1は、仮想オブジェクトがしゃがむ動作を実行するように制御し、UIコントロール2は、仮想オブジェクトがうつ伏せ動作を実行するように制御する。
【0005】
上記技術手段において、UIコントロールの数が多い場合、UIコントロールの仮想環境画面上のレイアウトは、一般的に複雑であり、ヒューマンコンピュータインタラクション効率が低い。
【発明の概要】
【発明が解決しようとする課題】
【0006】
本願の実施例は、仮想環境画面の表示方法、装置、デバイス及び記憶媒体を提供し、UIコントロールの仮想環境画面上のレイアウトを変更することにより、ヒューマンコンピュータインタラクションの効率を向上させる。当該技術手段は、以下のとおりである。
【課題を解決するための手段】
【0007】
本願の一態様によれば、コンピュータデバイスが実行する仮想環境画面の表示方法が提供され、当該方法は、
仮想環境画面を表示するステップであって、前記仮想環境画面に第1のコントロール及び第2のコントロールが表示され、前記第1のコントロール及び前記第2のコントロールは、異なるコントロールタイプに属するステップと、
前記第1のコントロール及び前記第2のコントロールに対する結合設定操作を受信するステップと、
前記結合設定操作に基づいて前記第1のコントロール及び前記第2のコントロールを第3のコントロールに結合するステップと、を含む。
【0008】
本願の別の態様によれば、仮想環境画面の表示装置を提供し、当該装置は、
仮想環境画面を表示する表示モジュールであって、前記仮想環境画面に第1のコントロール及び第2のコントロールが表示され、前記第1のコントロール及び前記第2のコントロールは、異なるコントロールタイプに属する表示モジュールと、
前記第1のコントロール及び前記第2のコントロールに対する結合設定操作を受信する受信モジュールと、
前記結合設定操作に基づいて前記第1のコントロール及び前記第2のコントロールを第3のコントロールに結合する処理モジュールと、を含む。
【0009】
本願の別の態様によれば、コンピュータデバイスが提供され、当該コンピュータデバイスは、プロセッサ及びメモリを含み、前記メモリに少なくとも1つの命令、少なくとも1つのプログラム、コードセット又は命令セットが記憶され、前記少なくとも1つの命令、前記少なくとも1つのプログラム、前記コードセット又は命令セットは、前記プロセッサがロードし、かつ実行することにより、上記態様に記載の仮想環境画面の表示方法を実現する。
【0010】
本願の別の態様によれば、コンピュータ可読記憶媒体が提供され、当該記憶媒体に少なくとも1つの命令、少なくとも1つのプログラム、コードセット又は命令セットが記憶され、前記少なくとも1つの命令、前記少なくとも1つのプログラム、前記コードセット又は命令セットは、プロセッサがロードし、かつ実行することにより、上記態様に記載の仮想環境画面の表示方法を実現する。
【0011】
本願の別の態様によれば、コンピュータプログラム製品又はコンピュータプログラムが提供され、当該コンピュータプログラム製品又はコンピュータプログラムは、コンピュータ命令を含み、前記コンピュータ命令は、コンピュータ可読記憶媒体に記憶される。コンピュータデバイスのプロセッサは、前記コンピュータ可読記憶媒体から前記コンピュータ命令を読み取り、前記プロセッサは、前記コンピュータ命令を実行することにより、前記コンピュータデバイスに上記態様に記載の仮想環境画面の表示方法を実行させる。
【発明の効果】
【0012】
本願の実施例に係る技術手段によって得られる有利な効果は、少なくとも以下を含む。
【0013】
受信された結合設定操作に応じて、仮想環境画面に表示された異なるタイプのコントロールを結合することにより、ユーザーは、自主的に設定して、あまり使われないUIコントロールを同一のUIコントロールに結合するか、又は組み合わせて使用する必要があるUIコントロールを同一のUIコントロールに結合することができる。UIコントロールを結合することによりUIコントロールの仮想環境画面上のレイアウトを簡略化し、それによりユーザーが仮想オブジェクトを制御する過程を簡略化し、ヒューマンコンピュータインタラクションの効率を向上させる。
【図面の簡単な説明】
【0014】
本願の実施例における技術手段をより明確に説明するために、以下、実施例の説明に使用される必要がある図面を簡単に説明する。明らかなように、以下の説明における図面は、本願のいくつかの実施例にすぎず、当業者であれば、創造的な労働をせずに、これらの図面に基づいて他の図面を得ることができる。
【0015】
図1】本願の例示的な実施例に係るコンピュータシステムのブロック図である。
図2】本願の例示的な実施例に係る状態同期技術の概略図である。
図3】本願の例示的な実施例に係るフレーム同期技術の概略図である。
図4】本願の例示的な実施例に係る仮想環境画面の表示方法のフローチャートである。
図5】本願の別の例示的な実施例に係る仮想環境画面の表示方法のフローチャートである。
図6】本願の例示的な実施例に係るコントロールを結合する前の仮想環境画面の概略図である。
図7】本願の例示的な実施例に係る結合設定操作に対応する設定インタフェースの概略図である。
図8】本願の例示的な実施例に係る更新後の仮想環境画面の概略図である。
図9】本願の別の例示的な実施例に係る仮想環境画面の表示方法のフローチャートである。
図10】本願の別の例示的な実施例に係る仮想環境画面の表示方法のフローチャートである。
図11】本願の例示的な実施例に係るコントロールを分割する概略図である。
図12】本願の別の例示的な実施例に係る更新後の仮想環境画面の概略図である。
図13】本願の別の例示的な実施例に係る仮想環境画面の表示方法のフローチャートである。
図14】本願の例示的な実施例に係る結合設定操作の方法のフローチャートである。
図15】本願の例示的な実施例に係る仮想オブジェクトの状態を判断する方法のフローチャートである。
図16】本願の例示的な実施例に係る仮想環境画面の表示装置のブロック図である。
図17】本願の例示的な実施例に係るコンピュータデバイスの概略構成図である。
【発明を実施するための形態】
【0016】
本願の目的、技術手段及び利点をより明確にするために、以下、図面を参照しながら本願の実施形態をさらに詳細に説明する。
【0017】
まず、本願の実施例に係る名詞を解釈する。
【0018】
仮想環境とは、アプリケーションプログラムが端末上で実行されるときに表示(又は提供)される仮想環境である。当該仮想環境は、現実世界のシミュレーション環境であってもよく、半シミュレーション・半架空の環境であってもよく、純粋に架空の環境であってもよい。仮想環境は、2次元仮想環境、2.5次元仮想環境及び3次元仮想環境のうちの任意の1種であってもよく、本願は、これについて限定しない。下記実施例では、仮想環境が3次元仮想環境であるとして例示して説明する。
【0019】
仮想オブジェクトとは、仮想環境における可動オブジェクトである。当該可動オブジェクトは、仮想キャラクター、仮想動物、及びアニメーションキャラクターなどであってもよく、例えば、3次元仮想環境に表示されたキャラクター、動物、植生、ドラム缶、壁、石などである。好ましくは、仮想オブジェクトは、アニメーション骨格技術に基づいて構築された3次元立体モデルである。各仮想オブジェクトは、3次元仮想環境でその形状及び体積を有し、3次元仮想環境における一部の空間を占める。仮想オブジェクトは、仮想環境における1つ又は複数の仮想オブジェクトを広く指す。
【0020】
ユーザーインタフェース(User Interface、UI)コントロールとは、アプリケーションプログラムのユーザーインタフェース上に見える任意の可視コントロール又は要素を指し、例えば、画像、入力ボックス、テキストボックス、ボタン、タグなどのコントロールである。そのうちのいくつかのUIコントロールは、ユーザーの操作に応答し、例えば、ユーザーは、入力ボックスに文字を入力することができ、ユーザーは、上記UIコントロールによりユーザーインタフェースと情報のやり取りを行う。
【0021】
本願に係る方法は、仮想現実アプリケーションプログラム、3次元地図プログラム、軍事シミュレーションプログラム、ファーストパーソン・シューティング(First-Person Shooting Game、FPS)ゲーム、マルチプレイヤーオンラインバトルアリーナゲーム(Multiplayer Online Battle Arena Games、MOBA)、バトルロワイアルタイプのシューティングゲーム、仮想現実(Virtual Reality、VR)アプリケーションプログラム、拡張現実(Augmented Reality、AR)などに適用することができ、下記実施例は、ゲームにおける応用を例として説明する。
【0022】
仮想環境に基づくゲームは、1つ又は複数のゲーム世界の地図で構成され、ゲーム中の仮想環境は、現実世界のシーンをシミュレーションし、ユーザーは、ゲーム中の仮想オブジェクトが仮想環境において歩き、走り、ジャンプし、射撃し、格闘し、運転し、他の仮想オブジェクトからの攻撃を受け、仮想環境からの傷害を受け、他の仮想オブジェクトを攻撃し、妨害型投げ類道具を使用し、同じチームのチームメイトを救うなどの動作を実行するように制御することができ、インタラクション性が高く、かつ複数のユーザーは、オンラインでチームを作って競技ゲームを行うことができる。ユーザーが使用する端末には、ゲームに対応する仮想環境画面が表示され、仮想環境画面は、ユーザーが制御する仮想オブジェクトの視角で仮想環境を観察して得られる。仮想環境画面に複数のUIコントロールが表示され、ユーザーインタフェースを形成し、各UIコントロールは、仮想オブジェクトが異なる動作を実行するように制御する。例えば、ユーザーは、UIコントロール1をトリガーすると、仮想オブジェクトが前向きに走るように制御する。
【0023】
図1は、本願の例示的な実施例に係るコンピュータシステムのブロック構成図を示す。当該コンピュータシステム100は、第1の端末120、サーバ140及び第2の端末160を含む。
【0024】
第1の端末120には、仮想環境をサポートするアプリケーションプログラムがインストールされて、実行される。第1の端末120は、第1のユーザーが使用する端末であり、第1のユーザーは、第1の端末120を使用して、仮想環境中に位置する第1の仮想オブジェクトの動作を制御する。当該動作は、身体姿勢の調整、歩く、走る、ジャンプ、騎行、照準、拾う、投げ類道具の使用、他の仮想オブジェクトへの攻撃のうちの少なくとも1種を含むが、これらに限定されない。例示的には、第1の仮想オブジェクトは、第1の仮想キャラクターであり、例えば、シミュレーションキャラクターオブジェクト又はアニメキャラクターオブジェクトである。
【0025】
第1の端末120は、無線ネットワーク又は有線ネットワークを介してサーバ140に接続される。
【0026】
サーバ140は、1台のサーバ、複数台のサーバ、クラウドコンピューティングプラットフォーム及び仮想化センターのうちの少なくとも1種を含む。例示的には、サーバ140は、プロセッサ144及びメモリ142を含む。メモリ142は、受信モジュール1421、制御モジュール1422及び送信モジュール1423をさらに含む。受信モジュール1421は、クライアントから送信された要求、例えば、チーム作り要求を受信し、制御モジュール1422は、仮想環境画面のレンダリングを制御し、送信モジュール1423は、クライアントに応答を送信し、例えば、クライアントにチーム作りに成功したという通知情報を送信する。サーバ140は、3次元仮想環境をサポートするアプリケーションプログラムにバックグラウンドサービスを提供する。好ましくは、サーバ140は、主計算作業を担い、第1の端末120及び第2の端末160は、副計算作業を担い、或いは、サーバ140は、副計算作業を担い、第1の端末120及び第2の端末160は、主計算作業を担い、或いは、サーバ140、第1の端末120及び第2の端末160の三者間は、分散型計算アーキテクチャを採用して協調計算を行う。
【0027】
サーバ140は、同期技術を採用して複数のクライアントの間の画面表現を一致させることができる。例示的には、サーバ140が採用する同期技術は、状態同期技術又はフレーム同期技術を含む。
【0028】
状態同期技術
図1に基づく好ましい実施例では、サーバ140は、状態同期技術を採用して複数のクライアントの間で同期を行う。図2に示すように、戦闘ロジックは、サーバ140側で実行される。仮想環境におけるある仮想オブジェクトに状態変化が発生する場合、サーバ140により全てのクライアント、例えば、クライアント1からクライアント10に状態同期結果を送信する。
【0029】
一例では、クライアント1がサーバ140に要求を送信し、当該要求は、仮想オブジェクト1が仮想オブジェクト2を攻撃する動作を実行するように要求する場合、サーバ140は、仮想オブジェクト1が仮想オブジェクト2を攻撃できるか否か、及び仮想オブジェクト1が攻撃動作を実行した後に仮想オブジェクト2の残りのヒットポイントを判断する。サーバ140は、仮想オブジェクト2の残りのヒットポイントを全てのクライアントに同期させ、全てのクライアントは、仮想オブジェクト2の残りのヒットポイントに基づいてローカルデータ及びインタフェース表現を更新する。
【0030】
フレーム同期技術
図1に基づく好ましい実施例では、サーバ140は、フレーム同期技術を採用して複数のクライアントの間で同期を行う。図3に示すように、戦闘ロジックは、各クライアント側で実行される。クライアントは、サーバにフレーム同期要求を送信し、当該フレーム同期要求にクライアントのローカルデータの変化が載せられる。サーバ140は、あるフレーム同期要求を受信した後、全てのクライアントに当該フレーム同期要求を転送する。各クライアントは、フレーム同期要求を受信した後、ローカルの戦闘ロジックに応じて当該フレーム同期要求を処理し、ローカルデータ及びインタフェース表現を更新する。
【0031】
第2の端末160には、仮想環境をサポートするアプリケーションプログラムがインストールされて、実行される。第2の端末160は、第2のユーザーが使用する端末であり、第2のユーザーは、第2の端末160を使用して、仮想環境内に位置する第2の仮想オブジェクトの動作を制御する。当該動作は、身体の姿勢の調整、歩く、走る、ジャンプ、騎行、照準、拾う、投げ類道具の使用、他の仮想オブジェクトへの攻撃のうちの少なくとも1種を含むが、これらに限定されない。例示的には、第2の仮想オブジェクトは、第2の仮想キャラクターであり、例えば、シミュレーションキャラクターオブジェクト又はアニメキャラクターオブジェクトである。
【0032】
好ましくは、第1の仮想オブジェクトと第2の仮想オブジェクトは、同一の仮想環境にある。好ましくは、第1の仮想オブジェクトと第2の仮想オブジェクトは、同一のチーム、同一の組織、同一の陣営に属し、友達関係を有し、又は一時的な通信権限を有するようにしてもよく、或いは、第1の仮想キャラクターオブジェクトと第2の仮想キャラクターオブジェクトは、異なる陣営、異なるチーム、異なる組織に属し、又は敵対関係を有するようにしてもよい。
【0033】
好ましくは、第1の端末120と第2の端末160にインストールされたアプリケーションプログラムは同じであり、又は2つの端末にインストールされたアプリケーションプログラムは、異なるオペレーティングシステムプラットフォーム(アンドロイド(登録商標)又はIOS)上の同一タイプのアプリケーションプログラムである。第1の端末120は、一般的に複数の端末のうちの1つを指し、第2の端末160は、一般的に複数の端末のうちの1つを指し、本実施例は、第1の端末120と第2の端末160のみを例示して説明する。第1の端末120及び第2の端末160のデバイスタイプは、同じであるか又は異なり、当該デバイスタイプは、スマートフォン、タブレットコンピュータ、電子書リーダー、MP3プレーヤー、MP4プレーヤー、ラップトップポータブルコンピュータ及びデスクトップコンピュータのうちの少なくとも1種を含む。以下の実施例は、端末がスマートフォンを含むことを例示して説明する。
【0034】
当業者であれば分かるように、上記端末の数は、より多くても少なくてもよい。例えば、上記端末は、1つのみであってもよく、或いは、上記端末は、数十個又は数百個、又はより多くの数である。本願の実施例は、端末の数及びデバイスタイプを限定しない。
【0035】
図4は、本願の例示的な実施例に係る仮想環境画面の表示方法のフローチャートを示す。当該方法は、コンピュータデバイスに適用することができ、当該コンピュータデバイスが図1に示す第1の端末120又は第2の端末160、又は当該コンピュータシステム100における他の端末として実現されることを例として説明する。当該方法は、以下のステップ401~ステップ403を含む。
【0036】
ステップ401では、仮想環境画面、第1のコントロール及び第2のコントロールを表示し、第1のコントロール及び第2のコントロールは、異なるコントロールタイプに属する。
【0037】
いくつかの実施例では、第1のコントロールは、第1の仮想オブジェクトが第1の動作を実行するように制御し、第2のコントロールは、第1の仮想オブジェクトが第2の動作を実行するように制御する。第1の動作及び第2の動作は、異なるタイプの動作に属し、或いは、第1の動作及び第2の動作は、異なる動作である。
【0038】
例示的には、第1のコントロールは、第1の仮想オブジェクトが仮想環境において第1の表現を行うように制御し、或いは、第1のコントロールは、第1の仮想オブジェクトが仮想環境において第1の道具を使用するように制御し、或いは、第1のコントロールは、第1の仮想オブジェクトが第1のスキルをトリガーするように制御し、或いは、第1のコントロールは、第1の仮想オブジェクトが第1の移動状態にあるように制御する。同様に、第2のコントロールに対応する第2の動作は、第2の表現、第2の道具の使用、第2のスキルのトリガー、第2の移動状態の保持などを含み、本実施例は、第1のコントロール及び第2のコントロールのコントロール作用を限定しない。
【0039】
ユーザーが使用する端末では、仮想環境をサポートするアプリケーションプログラムが実行され、これは、例えば、ファーストパーソン・シューティングゲームである。ゲームアプリケーションプログラムを例とすると、ゲームアプリケーションプログラムを実行する場合、仮想環境画面が表示され、当該仮想環境画面は、第1の仮想オブジェクトの視角で仮想環境を観察して得られた画面である。いくつかの実施例では、仮想環境画面に表示された仮想環境は、山や川、平地、河、湖、海、砂漠、空、植生、建物及び交通機関のうちの少なくとも1種の形態を含む。
【0040】
UIコントロールのコントロールタイプは、主にUIコントロールに対応するトリガーの機能タイプを指示する。仮想環境画面にUIコントロールが表示され、例示的には、UIコントロールは、アシストタイプのUIコントロール、移動タイプのUIコントロール、照準タイプのUIコントロール及び状態切り替えタイプのUIコントロールのうちの少なくとも1種を含む。
【0041】
アシストタイプのUIコントロールは、仮想オブジェクトの動作をアシストする。いくつかの実施例では、アシストタイプのUIコントロールは、仮想オブジェクトがアシストタイプの仮想道具を使用して動作をアシストするように制御し、或いは、アシストタイプのUIコントロールは、仮想オブジェクトがアシストタイプのスキルをトリガーして動作をアシストするように制御し、例えば、照準器使用コントロールは、アシストタイプのUIコントロールに属し、仮想オブジェクトが射撃動作を実行する場合に照準器道具を使用して目標を照準するように制御する。移動タイプのUIコントロールは、仮想オブジェクトが仮想環境において移動するように制御し、例えば、方向移動コントロールは、移動タイプのUIコントロールに属し、方向移動コントロールがトリガーされる場合、仮想オブジェクトが仮想環境において前、後、左、右に移動する。照準タイプのUIコントロールは、仮想オブジェクトが仮想道具を使用する場合に対応するUIコントロールである。いくつかの実施例では、照準タイプのUIコントロールは、仮想オブジェクトが攻撃道具を使用する場合に対応するUIコントロールであり、例えば、射撃コントロールは、照準タイプのUIコントロールに属し、射撃コントロールがトリガーされる場合、仮想オブジェクトが目標を射撃する。状態切り替えタイプのUIコントロールは、仮想環境における仮想オブジェクトの姿勢を切り替え、例えば、しゃがみコントロールは、状態切り替えタイプのUIコントロールに属し、しゃがみコントロールがトリガーされる場合、仮想オブジェクトが立った状態からしゃがんだ状態に切り替えられるか、又は他の姿勢からしゃがんだ状態に切り替えられる。
【0042】
ステップ402では、第1のコントロール及び第2のコントロールに対する結合設定操作を受信する。
【0043】
ユーザーがタッチディスプレイを有する端末を使用する場合、一般的に、スマートフォン又はタブレットコンピュータなどのような端末のタッチディスプレイにUIコントロールが表示される。例示的には、ユーザーは、結合設定操作に対応するUIコントロールをトリガーすることにより結合設定操作を実施し、或いは、ユーザーは、タッチディスプレイに結合設定操作に対応するジェスチャー操作を実施し、例えば、シングルタップ操作、長押し操作、ダブルタップ操作(1本指ダブルタップ操作、複数指ダブルタップ操作のうちの少なくとも1種を含む)、ホバリング操作、ドラッグ操作及びそれらの組み合わせ操作などである。
【0044】
ユーザーが使用する端末は、外部入力デバイスが接続された端末である場合、さらに外部入力デバイスにより結合設定操作を実行することができる。例示的には、端末は、マウスが接続されたノートパソコンとして実現され、ユーザーは、マウスポインタを結合設定操作に対応するUIコントロールに移動させ、マウスをクリックすることにより結合設定操作を実施する。いくつかの実施例では、ユーザーは、さらにキーボードのキーを押し、マウスをクリックすることにより結合設定操作を実施することができる。
【0045】
いくつかの実施例では、仮想環境画面には、結合設定操作に対応するUIコントロールが単独で表示され、当該UIコントロールは、結合UIコントロールと名付けられる。他の実施例では、仮想環境画面は、ゲームアプリケーションプログラムを設定する設定ページを含み、当該設定ページは、結合設定操作に対応するUIコントロールを含む。
【0046】
ステップ403では、結合設定操作に応答して第1のコントロール及び第2のコントロールを第3のコントロールに結合する。
【0047】
好ましくは、第3のコントロールは、第1の仮想オブジェクトが第1の動作(第1のコントロールに対応する)及び第2の動作(第2のコントロールに対応する)を実行するように制御する。或いは、第3のコントロールは、第1の仮想オブジェクトが第1の動作及び第2の動作から独立している第3の動作を実行するように制御する。
【0048】
結合とは、少なくとも2つのコントロールを1つのコントロールに合成し、かつ仮想環境画面に結合後のコントロールのみを表示し、結合後のコントロールが結合前のコントロールの機能を兼ねることである。結合設定操作を受信した後、仮想環境画面に第3のコントロールを表示し、かつ第1のコントロール及び第2のコントロールの表示をキャンセルする。第3のコントロールは、第1のコントロールに対応する機能及び第2のコントロールに対応する機能を兼ね、ユーザーは、第3のコントロールをトリガーすることにより第1の仮想オブジェクトが第1の動作及び第2の動作を実行するように制御することを実現できる。
【0049】
例示的には、ユーザーが第3のコントロールをクリックする場合、第1の仮想オブジェクトは、第1の動作を実行する。ユーザーが第3のコントロールを長押しする場合、第1の仮想オブジェクトは、第2の動作を実行する。或いは、ユーザーが第3のコントロールをクリックする場合、第1の仮想オブジェクトは、第1の動作を実行し、ユーザーが再び第3のコントロールをクリックする場合、ゲームアプリケーションプログラムは、第1の仮想オブジェクトが第1の動作を実行していると判断すると、第1の仮想オブジェクトが第1の動作を実行すると同時に、第2の動作を実行するように制御する。或いは、ユーザーが第3のコントロールをクリックする場合、第1の仮想オブジェクトは、第1の動作を実行し、ユーザーが再び第3のコントロールをクリックする場合、ゲームアプリケーションプログラムは、第1の仮想オブジェクトが既に第1の動作を実行した(第1の動作が既に実行済みである)と判断すると、第1の仮想オブジェクトが第2の動作を実行するように制御する。
【0050】
好ましくは、UIコントロールは、アプリケーションプログラムにおいて対応するコントロール識別子を有し、結合設定操作を受信した場合、第1のコントロール及び第2のコントロールに対応するコントロール識別子を決定し、第1のコントロール及び第2のコントロールに対応するコントロール識別子に基づいて第3のコントロールに対応するコントロール識別子を決定し、インタフェースをレンダリングする場合、第3のコントロールのコントロール識別子に基づいて第3のコントロールをレンダリングし、第1のコントロール及び第2のコントロールに対するレンダリングをキャンセルする。
【0051】
理解できるように、ユーザーは、結合設定操作を1回実施して、少なくとも2つのコントロールを結合する。
【0052】
以上のように、本実施例に係る方法は、受信された結合設定操作に応じて、仮想環境画面に表示された異なるタイプのコントロールを結合することにより、ユーザーが自主的に設定して、あまり使われないUIコントロールを同一のUIコントロールに結合するか、又は組み合わせて使用する必要があるUIコントロールを同一のUIコントロールに結合することができ、UIコントロールの仮想環境画面上のレイアウトを変更することにより、ユーザーが仮想オブジェクトを制御する過程を簡略化し、ヒューマンコンピュータインタラクションの効率を向上させる。
【0053】
好ましくは、仮想環境画面に結合設定操作を実施することにより、少なくとも2つのコントロールを結合し、或いは、仮想環境画面に分割設定操作を実施することにより、1つのコントロールを少なくとも2つのコントロールに分割する。ゲームアプリケーションプログラムを例にして、ゲームアプリケーションプログラムにおけるユーザーインタフェースに合わせてコントロールを結合する過程及びコントロールを分割する過程を説明する。
【0054】
1.コントロールを結合するプロセス
【0055】
図5は、本願の別の例示的な実施例に係る仮想環境画面の表示方法のフローチャートを示す。当該方法は、コンピュータデバイスに適用することができ、当該コンピュータデバイスは、図1に示す第1の端末120又は第2の端末160、又は当該コンピュータシステム100における他の端末として実現される。当該方法は、以下のステップ501~ステップ505を含む。
【0056】
ステップ501では、仮想環境画面を表示し、仮想環境画面に第1のコントロール及び第2のコントロールが表示され、第1のコントロール及び第2のコントロールは、異なるコントロールタイプに属する。
【0057】
第1のコントロールは、第1の仮想オブジェクトが第1の動作を実行するように制御し、第2のコントロールは、第1の仮想オブジェクトが第2の動作を実行するように制御する。
【0058】
図6に示すように、仮想環境画面に第1のコントロール11及び第2のコントロール12が表示される。第1のコントロール11がしゃがみコントロールであり、第2のコントロール12が照準コントロールであり、第1のコントロール11が状態切り替えタイプのコントロールに属し、第2のコントロール12が移動タイプのコントロールに属し、第1のコントロール11及び第2のコントロール12は、仮想環境画面の右側に位置する。
【0059】
ステップ502では、第1のコントロール及び第2のコントロールに対する結合設定操作を受信する。
【0060】
例示的には、結合設定操作は、結合しようとするコントロールを同一位置にドラッグする操作として実現される。例えば、ユーザーは、第1のコントロール11を第2のコントロール12の位置にドラッグし、或いは、ユーザーは、第2のコントロール12を第1のコントロール11の位置にドラッグする。
【0061】
例示的には、図7に示すように、結合設定操作は、設定インタフェースにおいてユーザーによって行われる操作であり、ユーザーは、結合設定操作に対応するコントロール20をアクティブ状態にすると、ゲームアプリケーションプログラムにおいて第1のコントロール11及び第2のコントロール12を結合することができる。
【0062】
ステップ503では、第1のコントロールの第1のコントロールタイプ及び第2のコントロールの第2のコントロールタイプを取得する。
【0063】
例示的には、ゲームアプリケーションプログラムは、ユーザーがドラッグする場合に選択したコントロールに基づいて、第1のコントロール及び第2のコントロールのコントロールタイプを取得する。
【0064】
例示的には、ユーザーの設定インタフェース上の操作に基づいて、コントロールを結合するコントロールタイプを取得する。
【0065】
いくつかの実施例では、ユーザーの設定インタフェース上の操作は、全ての同じタイプのコントロールを結合するか、又は予め設定されたタイプのコントロールを結合するか(例えば、射撃タイプのコントロールと、移動タイプのコントロールを結合する)、又は予め設定されたコントロールを結合する(例えば、しゃがみコントロールと、うつ伏せコントロールを結合する)。
【0066】
ステップ504では、第1のコントロールタイプ及び第2のコントロールタイプが予め設定された条件を満たすことに応答して、第1のコントロール及び第2のコントロールを第3のコントロールに結合する。
【0067】
予め設定された条件は、
第1のコントロールタイプがアシストタイプであり、第2のコントロールタイプが照準タイプである条件であって、例示的には、第1のコントロールが照準器使用コントロール(銃器類の仮想道具の照準器を使うコントロール)であり、第2のコントロールが射撃コントロールである条件と、
第1のコントロールタイプがアシストタイプであり、第2のコントロールタイプが移動タイプである条件であって、例示的には、第1のコントロールが照準器使用コントロールであり、第2のコントロールが方向移動コントロール(左向き移動コントロール、右向き移動コントロール、前向き移動コントロール、後向き移動コントロールを含む)である条件と、
第1のコントロールタイプが移動タイプであり、第2のコントロールタイプが照準タイプである条件であって、例示的には、第1のコントロールが方向移動コントロールであり、第2のコントロールが射撃コントロールであり、或いは、第1のコントロールが方向移動コントロールであり、第2のコントロールが投げコントロール(投げ類の仮想道具を使用するコントロール)である条件と、
第1のコントロールタイプが移動タイプであり、第2のコントロールタイプが状態切り替えタイプである条件であって、例示的には、第1のコントロールが方向移動コントロールであり、第2のコントロールがしゃがみコントロールである条件と、
第1のコントロールタイプが状態切り替えタイプであり、第2のコントロールタイプがアシストタイプである条件であって、例示的には、第1のコントロールがうつ伏せコントロール(仮想オブジェクトがうつ伏せ姿勢を作るように制御するコントロール)であり、第2のコントロールが照準器使用コントロールである条件と、
第1のコントロールタイプが状態切り替えタイプであり、第2のコントロールタイプが照準タイプである条件であって、例示的には、第1のコントロールがしゃがみコントロールであり、第2のコントロールが射撃コントロールである条件と、
のうちの少なくとも1種を含む。
【0068】
第1のコントロールのタイプ及び第2のコントロールのタイプが上記タイプである場合、ゲームアプリケーションプログラムは、第1のコントロール及び第2のコントロールを結合する。
【0069】
ステップ505では、第1のコントロール及び第2のコントロールを取り替えるための第3のコントロールを更新表示する。
【0070】
仮想環境画面に第3のコントロールを更新表示し、更新後の仮想環境画面は、第1のコントロール及び第2のコントロールを含まない。
【0071】
ユーザーが結合設定操作を実施する場合、ゲームアプリケーションプログラムは、結合設定操作に対応するユーザーアカウントを識別し、ユーザーアカウントに基づいてユーザーアカウントに対応する仮想環境画面を更新する。
【0072】
図8に示すように、更新後の仮想環境画面に第3のコントロール13が表示される。例示的には、図8において、図6に示す第1のコントロール11のコントロール識別子を現在更新後の第3のコントロール13のコントロール識別子とすることを例とする。好ましくは、第2のコントロールのコントロール識別子を第3のコントロールのコントロール識別子としてもよく、1つの新たなコントロール識別子を生成して第3のコントロールのコントロール識別子としてもよく、当該コントロール識別子は、第1のコントロールのコントロール識別子及び第2のコントロールのコントロール識別子とは異なる。
【0073】
第3のコントロールを使用して第1の仮想オブジェクトが動作を実行するように制御する場合、図9に示すように、以下のケース1~3のうちの少なくとも1種を含む。
【0074】
ケース1では、第1の仮想オブジェクトが実行する動作は、第3のコントロールが受信した操作に関連する。
【0075】
ステップ507aでは、第3のコントロールに対する第1の操作に応答して、第1の仮想オブジェクトが第1の動作を実行するように制御する。
【0076】
第1の操作は、シングルタップ操作、長押し操作、スワイプ操作、ホバリング操作、ドラッグ操作、ダブルタップ操作(1本指ダブルタップ操作、複数指ダブルタップ操作のうちの少なくとも1種を含む)、及びそれらの組み合わせ操作の少なくとも1種を含む。
【0077】
一例では、第3のコントロールで長押し操作を受信したことに応答して、第1の仮想オブジェクトが走る動作を実行するように制御する。
【0078】
ステップ508aでは、第3のコントロールに対する第2の操作に応答して、第1の仮想オブジェクトが第2の動作を実行するように制御する。
【0079】
第2の操作は、シングルタップ操作、長押し操作、スワイプ操作、ホバリング操作、ドラッグ操作、ダブルタップ操作(1本指ダブルタップ操作、複数指ダブルタップ操作のうちの少なくとも1種を含む)、及びそれらの組み合わせ操作の少なくとも1種を含む。第1の操作は、第2の操作と異なる。
【0080】
一例では、第3のコントロールでダブルタップ操作を受信したことに応答して、第1の仮想オブジェクトが照準器使用動作を実行するように制御する。
【0081】
第3のコントロールは、受信された操作タイプに基づいて制御命令を生成し、第1の仮想オブジェクトが異なる動作を実行するように制御する。ステップ507aは、ステップ507bより先に実行されてもよく、或いは、ステップ507bは、ステップ507aより先に実行されてもよい。いくつかの実施例では、第1の仮想オブジェクトが動作aを実行する場合、第3のコントロールが動作bに対応する実行操作を受信すると、第1の仮想オブジェクトは、動作aを実行すると同時に動作bを実行する。一例では、第3のコントロールでダブルタップ操作を受信したことに応答して、第1の仮想オブジェクトは、走る動作を実行し、第1の仮想オブジェクトの走る間に、第3のコントロールで長押し動作を受信したことに応答して、第1の仮想オブジェクトは、走る間に照準器使用動作を実行する。
【0082】
ケース2では、第1の仮想オブジェクトは、第3のコントロールに対応する動作を同時に実行する。
【0083】
ステップ507bでは、第3のコントロールに対する第3の操作に応答して、第1の仮想オブジェクトが第1の動作及び第2の動作を同時に実行するように制御する。
【0084】
第3の操作は、シングルタップ操作、長押し操作、スワイプ操作、ホバリング操作、ドラッグ操作、ダブルタップ操作(1本指ダブルタップ操作、複数指ダブルタップ操作のうちの少なくとも1種を含む)、及びそれらの組み合わせ操作の少なくとも1種を含む。
【0085】
一例では、第3のコントロールでドラッグ操作を受信したことに応答して、ゲームアプリケーションプログラムは、第1の仮想オブジェクトが走る動作及び弾倉交換動作を同時に実行するように制御する。
【0086】
ケース3では、第1の仮想オブジェクトは、動作の優先度に基づいて動作を実行する。
【0087】
ステップ507cでは、第3のコントロールに対する第4の操作に応答して、第1の動作及び第2の動作の優先度を取得する。
【0088】
第4の操作は、シングルタップ操作、長押し操作、スワイプ操作、ホバリング操作、ドラッグ操作、ダブルタップ操作(1本指ダブルタップ操作、複数指ダブルタップ操作のうちの少なくとも1種を含む)、及びそれらの組み合わせ操作の少なくとも1種を含む。
【0089】
一例では、第3のコントロールで長押し操作を受信したことに応答して、ゲームアプリケーションプログラムは、第3のコントロールに対応する動作の優先度を取得する。例示的には、優先度の順位付けは、走る動作>射撃動作(又は投げ動作)>しゃがむ動作(又はうつ伏せ動作)>照準器使用動作(弾倉交換動作)である。
【0090】
ステップ508cでは、優先度に基づいて第1の仮想オブジェクトが予め設定された順序に応じて第1の動作及び第2の動作を実行するように制御する。
【0091】
例えば、第3のコントロールに対する長押し操作に応答して、第1の動作の優先度が第2の動作の優先度より低いことを取得すると、ゲームアプリケーションプログラムは、第1の仮想オブジェクトがまず第2の動作を実行し、次に第1の動作を実行するように制御する。
【0092】
以上のように、本実施例に係る方法は、受信された結合設定操作に応じて、仮想環境画面に表示された異なるタイプのコントロールを結合することにより、ユーザーが自主的に設定して、よく使われないUIコントロールを同一のUIコントロールに結合するか、又は組み合わせて使用する必要があるUIコントロールを同一のUIコントロールに結合することができ、UIコントロールの仮想環境画面上のレイアウトを変更することにより、ユーザーが仮想オブジェクトを制御する過程を簡略化し、ヒューマンコンピュータインタラクションの効率を向上させる。
【0093】
第1のコントロールの第1のコントロールタイプ及び第2のコントロールの第2のコントロールタイプが予め設定された条件を満たすと判断すると、第1のコントロール及び第2のコントロールを第3のコントロールに結合することにより、ユーザーは、結合設定操作により異なるタイプのコントロールを結合することができ、それにより、UIコントロールの仮想環境画面上のレイアウトがより柔軟になる。
【0094】
予め設定された条件を満たすUIコントロールのタイプを列挙することにより、ユーザーは、結合可能なUIコントロールのタイプを決定し、UIコントロールを柔軟に結合する。
【0095】
第1のコントロール及び第2のコントロールを結合した後、仮想環境画面を更新表示し、更新後の仮想環境画面に結合後の第3のコントロールが表示され、ユーザーは、更新後の仮想環境画面により仮想オブジェクトをより直感的に制御することができる。
【0096】
第3のコントロールで異なる操作を受信する場合、仮想オブジェクトが異なるルールに応じて異なる動作を実行するように制御し、それにより、仮想オブジェクトの制御方式がより柔軟で多様になり、ユーザーが自分の好みに合致するか又は自分の使用習慣に適するUIコントロールのレイアウトを設定することに役立つ。
【0097】
理解できるように、上記3種類のケースは、それぞれ単独で実施してもよく、組み合わせて実施してもよい。
【0098】
2.コントロールを分割する過程
【0099】
図10に示すように、コントロールを分割する過程において、以下の3種類のケースを含む。
【0100】
ケース1では、分割されたコントロールは、異なるタイプのコントロールに属する。
【0101】
第3のコントロールに対する第1の分割設定操作に応答して、第3のコントロールを第1のコントロール及び第2のコントロールに分割する。
【0102】
ステップ511aでは、第3のコントロールに対する第1の分割設定操作に応答して、第3のコントロールに対応する動作タイプを取得する。
【0103】
結合設定操作と区別するために、分割設定操作は、結合設定操作の実施形態と逆であってもよく、例えば、結合設定操作は、左向きドラッグ操作であり、分割設定操作は、右向きドラッグ操作であり、また例えば、結合設定操作は、第1のコントロールを第2のコントロールにドラッグすることにより、第3のコントロールを形成し、分割設定操作は、第3のコントロール13を開始点とし、第3のコントロール13から外向きにコントロールをドラッグして第1のコントロール11又は第2のコントロール12とし、図11に示すように、矢印は、ドラッグ方向を示す。
【0104】
動作タイプは、コントロールのコントロールタイプに対応する。例示的には、コントロール1のコントロールタイプがアシストタイプであれば、コントロール1がトリガーされた場合、仮想オブジェクトがアシストタイプの動作を実行し、例えば、コントロール1が照準器使用コントロールであれば、照準器使用コントロールがトリガーされた場合、仮想オブジェクトが照準器使用動作を実行し、照準器使用動作の動作タイプがアシストタイプである。
【0105】
第3のコントロールが結合後のコントロールであるため、第3のコントロールは、少なくとも2種のコントロールの機能を兼ねる。いくつかの実施例では、仮想環境画面上の分割設定操作を受信したことに応答して、ゲームアプリケーションプログラムは、第3のコントロールに対応する動作リストを取得し、当該動作リストは、第3のコントロールのコントロール構成状況を提供する。例えば、仮想環境画面に結合後のコントロールが存在する場合、ゲームアプリケーションプログラム又はバックグラウンドサーバは、結合後のコントロールに対応する動作リストを確立し、かつ当該動作リストを結合後のコントロールとバインディングする。好ましくは、動作リストに第3のコントロールのコントロール識別子、及び第3のコントロールと分割関係を有する少なくとも2つのコントロールに対応するコントロール識別子が記憶され、それにより第3のコントロールを分割する必要がある場合、インタフェースレンダリングプロセスにおいて第3のコントロールに対するレンダリングをキャンセルし、リストにおける第3のコントロールのコントロール識別子に対応する少なくとも2つのコントロールをレンダリングする。
【0106】
ステップ512aでは、動作タイプに基づいて第3のコントロールを第1のコントロール及び第2のコントロールに分割する。
【0107】
一例では、第3のコントロールに対応する動作リストがしゃがむ動作及び照準器使用動作を含んでいれば、第3のコントロールをしゃがみコントロール及び照準器使用コントロールに分割する。
【0108】
ケース2では、分割されたコントロールは、同じタイプのコントロールに属する。
【0109】
第3のコントロールに対する第2の分割設定操作に応答して、第3のコントロールを第4のコントロール及び第5のコントロールに分割し、第4のコントロール及び第5のコントロールは、同じタイプのコントロールに属する。
【0110】
ステップ511bでは、第3のコントロールに対する第2の分割設定操作に応答して、第3のコントロールに対応する少なくとも2つの動作の間の相関関係を取得する。
【0111】
相関関係とは、第3のコントロールがトリガーされる場合、仮想オブジェクトが実行する動作の間の階層関係を指す。例示的には、第3のコントロールに対応する動作は、姿勢切り替え動作であり、各姿勢切り替え動作の間に階層関係があり、例えば、第3のコントロールがトリガーされる場合、仮想オブジェクトが全しゃがみ動作(両膝が屈曲し、両脚が臀部に近づく)及び半しゃがみ動作(片膝をつく状態)を実行するように制御し、全しゃがみ動作と半しゃがみ動作との間の階層関係を取得する。
【0112】
ステップ512bでは、相関関係に基づいて第3のコントロールを第4のコントロール及び第5のコントロールに分割する。
【0113】
一例では、相関関係に基づいて第3のコントロールを全しゃがみコントロール及び半しゃがみコントロールに分割し、別の例では、ゲームアプリケーションプログラムは、相関関係に基づいて第3のコントロールをしゃがみコントロール及びうつ伏せコントロールに分割し、別の例では、ゲームアプリケーションプログラムは、相関関係に基づいて第3のコントロールを高倍率照準器使用コントロール及び低倍率照準器使用コントロールに分割する。
【0114】
ケース3では、仮想オブジェクトの数に基づいて分割する。
【0115】
例示的には、仮想環境画面は、第1の仮想オブジェクトの視角で仮想環境を観察して得られた画面であり、一般的に第1の仮想オブジェクトにカメラモデルがバインディングされ、カメラモデルにより仮想環境を撮影し、仮想環境画面を得る。仮想環境画面における仮想オブジェクトの数に基づいて第3のコントロールを分割する。
【0116】
例示的には、第1の仮想オブジェクトの視角内に少なくとも2つの第2の仮想オブジェクトがあることに応答して、第2の仮想オブジェクトの数に基づいて第3のコントロールを分割する。
【0117】
ステップ511cでは、第1の仮想オブジェクトの視角内に少なくとも2つの第2の仮想オブジェクトがあることに応答して、第2の仮想オブジェクトの数を取得する。
【0118】
第1の仮想オブジェクトと第2の仮想オブジェクトとが同一の仮想環境にあり、第1の仮想オブジェクトは、仮想環境で動作している間に、仮想環境における第2の仮想オブジェクトを見ることができる。例示的には、第2の仮想オブジェクトと第1の仮想オブジェクトは、チームメイト関係を有する。一例では、第1の仮想オブジェクトの視角には、3つの第2の仮想オブジェクトがあり、ゲームアプリケーションプログラムは、第2の仮想オブジェクトの数を第1の仮想オブジェクトが観察する仮想環境画面とバインディングする。
【0119】
ステップ512cでは、第2の仮想オブジェクトの数に基づいて第3のコントロールを分割する。
【0120】
例示的には、3つの仮想オブジェクトに基づいて第3のコントロールを3つのコントロールに分割する。例えば、第3のコントロールをコントロール1、コントロール2及びコントロール3に分割し、コントロール1は、仮想オブジェクト1を攻撃するためのものであり、コントロール2は、仮想オブジェクト2を攻撃するためのものであり、コントロール3は、仮想オブジェクト3を攻撃するためのものである。
【0121】
いくつかの実施例では、第2の仮想オブジェクトが仮想道具を使用したことに応答して、第2の仮想オブジェクト及び第2の仮想オブジェクトが使用した仮想道具に基づいて第3のコントロールを分割する。例えば、第2の仮想オブジェクトが使用した仮想道具が盾(仮想オブジェクトに与える傷害を減少させる)である場合、第3のコントロールを2つのコントロールに分割し、1つのコントロールは、第2の仮想オブジェクトが使用した仮想道具(盾)を破壊し、もう1つのコントロールは、第2の仮想オブジェクトを攻撃する。いくつかの実施例では、仮想道具を破壊するためのコントロールの持続時間は、第2の仮想オブジェクトを攻撃するためのコントロールの持続時間より長い。
【0122】
理解できるように、上記3種類のケースは、それぞれ単独で実施してもよく、組み合わせて実施してもよい。
【0123】
ステップ513では、第3のコントロールを分割した後に第3のコントロールを取り替えるための少なくとも2つの分割済みコントロールを更新表示する。
【0124】
例示的には、第3のコントロールを分割した後に対応する少なくとも2つの分割済みコントロールを更新表示し、更新後の仮想環境画面は、第3のコントロールを含まない。
【0125】
ユーザーが分割設定操作を実施する場合、ゲームアプリケーションプログラムは、分割設定操作に対応するユーザーアカウントを識別し、ユーザーアカウントに基づいてユーザーアカウントに対応する仮想環境画面を更新する。
【0126】
図12に示すように、更新後の仮想環境画面に、分割された第4のコントロール14及び第5のコントロール15が表示され、第4のコントロール14(全しゃがみコントロール)及び第5のコントロール15(半しゃがみコントロール)は、しゃがみコントロール13を分割した後に得られるものである。更新後の仮想環境画面には、しゃがみコントロール13(図では概略的なものである)が表示されない。例示的には、第4のコントロール14のコントロール識別子及び第5のコントロール15のコントロール識別子は、新たに生成されたコントロール識別子であり、かつ、この2つのコントロール識別子は、第3のコントロール13のコントロール識別子とは異なる。或いは、第3のコントロール13のコントロール識別子を第4のコントロール14のコントロール識別子とし、第5のコントロール15のコントロール識別子は、新たに生成されたコントロール識別子である。或いは、第3のコントロール13のコントロール識別子を第5のコントロール15のコントロール識別子とし、第4のコントロール14のコントロール識別子は、新たに生成されたコントロール識別子である。
【0127】
第3のコントロールを分割した後のコントロールを使用して第1の仮想オブジェクトが動作を実行するように制御する場合、図13に示すように、以下の2種類のケースを含む。
【0128】
ケース1では、第1の仮想オブジェクトは、少なくとも2つの動作を同時に実行する。
【0129】
ステップ516aでは、第1のコントロールに対する第1の操作に応答して、第1の仮想オブジェクトが第1の動作を実行するように制御する。
【0130】
第1のコントロールのコントロールタイプと第2のコントロールのコントロールタイプは異なる。
【0131】
ステップ517aでは、第2のコントロールに対する第2の操作に応答して、第2の仮想オブジェクトが第1の動作を実行すると同時に、第2の動作を実行するように制御する。
【0132】
例示的には、第1の仮想オブジェクトが投げる動作を実行している間に(投げる動作がまだ終了していない)、第2のコントロールで長押し操作を受信したことに応答して、ゲームアプリケーションプログラムは、第1の仮想オブジェクトがしゃがむ動作を実行している間に仮想道具を投げるように制御する。ユーザーは、しゃがむ角度に基づいて第1の仮想オブジェクトが目標を正確に命中するように制御することができる。
【0133】
ケース2では、第1の仮想オブジェクトは、順序に応じて少なくとも2つの動作を実行する。
【0134】
ステップ516bでは、第4のコントロールに対する第3の操作に応答して、第1の仮想オブジェクトが第4の動作を実行するように制御する。
【0135】
例示的には、第4のコントロールは、うつ伏せコントロールであり、うつ伏せコントロールでドラッグ操作を受信したことに応答して、ゲームアプリケーションプログラムは、第1の仮想オブジェクトがうつ伏せ動作を実行するように制御する。
【0136】
ステップ517bでは、第5のコントロールに対する第4の操作に応答して、第1の仮想オブジェクトが第5の動作を実行するように制御し、第4の動作と第5の動作は、相関関係を有する。
【0137】
理解できるように、第3の操作と第4の操作は、同じであるか又は異なる。
【0138】
相関関係とは、動作の間に一定の階層関係があることを指し、それらは、同じタイプの動作に属する。例示的には、第5のコントロールは、匍匐コントロール(第1の仮想オブジェクトが匍匐前進するように制御する)であり、匍匐コントロールでダブルタップ操作を受信したことに応答して、ゲームアプリケーションプログラムは、第1の仮想オブジェクトが仮想環境において匍匐移動するように制御する。理解できるように、ステップ516bは、ステップ517bより先に実行されてもよく、ステップ517bは、ステップ516bより先に実行されてもよい。
【0139】
以上のように、本実施例の提供する方法は、分割設定操作を受信すると、第3のコントロールを同じタイプのコントロール又は異なるタイプのコントロールに分割することにより、ユーザーは、異なる戦況に対してコントロールを意図的に分割することができ、ユーザーの操作習慣に適すると同時に、ユーザーが制御した仮想オブジェクトの対戦効率を向上させることを保証する。
【0140】
第3のコントロールがトリガーされた場合に対応する動作タイプに基づいて第3のコントロールを分割することにより、分割されたコントロールは、異なるタイプの動作に対応する機能を実現することができ、ユーザーは、異なる機能に基づいて第3のコントロールを分割しやすい。
【0141】
第3のコントロールがトリガーされた場合に対応する少なくとも2つの動作の間の相関関係に基づいて第3のコントロールを分割することにより、分割されたコントロールは、同じタイプの動作の異なる階層を実現することができ、ユーザーは、異なる対戦状況に基づいて異なる階層の動作を実行しやすく、仮想オブジェクトの作戦効率を向上させることに役立つ。
【0142】
第1の仮想オブジェクトの視野内の第2の仮想オブジェクトの数に基づいて第3のコントロールを分割することにより、分割されたコントロールは、異なる仮想オブジェクトに対して攻撃を行うことができ、仮想オブジェクトの作戦効率を向上させることに役立つ。
【0143】
第3のコントロールを分割した後、仮想環境画面を更新表示し、更新後の仮想環境画面に分割済みコントロールが表示され、ユーザーは、更新後の仮想環境画面により仮想オブジェクトをより直感的に制御することができる。
【0144】
分割されたコントロールで異なる操作を受信する場合、仮想オブジェクトが異なる操作を実行するように制御することができ、それにより、仮想オブジェクトの制御方式がより柔軟で多様になり、ユーザーが自分の好みに合致するか又は自分の使用習慣に適するUIコントロールのレイアウトを設定することに役立つ。
【0145】
理解できるように、上記2種類のケースは、それぞれ単独で実施してもよく、組み合わせて実施してもよい。
【0146】
一例では、図14に示すように、コントロールの結合は、以下のステップ1401~1405を含む。
【0147】
ステップ1401で開始する。
【0148】
ステップ1402では、ユーザーが結合設定操作を行うか否かを判断する。
【0149】
ユーザーが結合設定操作を行う場合、ステップ1403aに進み、ユーザーが結合設定操作を行わない場合、ステップ1403bに進む。
【0150】
ステップ1403aでは、うつ伏せコントロールをトリガーする時間が時間閾値を超える。
【0151】
ユーザーが結合設定操作を行う場合、ゲームアプリケーションプログラムは、第1のコントロール及び第2のコントロールを結合し、第3のコントロールを取得する。例示的には、第1のコントロールは、しゃがみコントロールであり、第2のコントロールは、うつ伏せコントロールである。第1のコントロール(しゃがみコントロール)のコントロール識別子を第3のコントロールのコントロール識別子とし、第2のコントロール(うつ伏せコントロール)のコントロール識別子を隠して表示する。
【0152】
例示的には、時間閾値は、0.5秒であり、第3のコントロールで受信されたトリガー操作は0.5秒を超える。
【0153】
ステップ1404aでは、うつ伏せコントロールを隠して表示する。
【0154】
このとき、うつ伏せ動作の実行条件を満たすが、仮想環境画面に元の第2のコントロール(うつ伏せコントロール)が表示されない。
【0155】
ステップ1405aでは、しゃがみコントロールのうつ伏せ状態通知をオンにする。
【0156】
このとき、結合後の第3のコントロールは、しゃがむ動作と、うつ伏せ動作とをサポートする2つの機能を有する。例示的には、しゃがみコントロールをハイライト表示する形式でユーザーへ通知し、このときのしゃがみコントロールは、第1の仮想オブジェクトがうつ伏せ動作を実行するように制御する。しゃがみコントロールがハイライト状態にない場合、しゃがみコントロールは、第1の仮想オブジェクトがしゃがむ動作を実行するように制御する。
【0157】
ステップ1403bでは、しゃがみコントロールを長押しすることで、うつ伏せ操作をトリガーすることをオフにする。
【0158】
ユーザーが結合設定操作を行わない場合、このときに第1のコントロール(しゃがみコントロール)と第2のコントロール(うつ伏せコントロール)は、結合されない。
【0159】
ステップ1404bでは、うつ伏せコントロールを表示する。
【0160】
仮想環境画面にうつ伏せコントロールが単独で表示される。
【0161】
ステップ1405bでは、しゃがみコントロールのうつ伏せ状態通知をオフにする。
【0162】
しゃがみコントロールは、第1の仮想オブジェクトがしゃがむ動作を実行するように制御し、うつ伏せコントロールは、第1の仮想オブジェクトがうつ伏せ動作を実行するように制御する。2種類のコントロールの機能は、結合されない。
【0163】
1回のゲームにおいて、上記ステップ1402~ステップ1405a(ステップ1405b)は、ゲームが終了するまで、繰り返して実施することができる。
【0164】
一例では、コントロールを結合した後、ゲームアプリケーションプログラムは、ユーザーの操作が第1の仮想オブジェクトがうつ伏せ動作を実行するように制御するか、又はしゃがむ動作を実行するように制御するかを判断し、図15に示すように、以下のステップ1051~ステップ1057を含む。
【0165】
ステップ1501で開始する。
【0166】
ステップ1502では、結合後のコントロールをトリガーするか否かを判断する。
【0167】
ユーザーが結合操作を設定した後、ゲームアプリケーションプログラムは、第1のコントロール及び第2のコントロールを結合し、第3のコントロールを取得する。ユーザーが第3のコントロールをトリガーする場合、ステップ1503aに進み、ユーザーが第3のコントロールをトリガーしない場合、ステップ1503bに進む。
【0168】
ステップ1503aでは、初期時間Δt=0を記録する。
【0169】
第3のコントロールがトリガーされ、ゲームアプリケーションプログラムは、初期時間、及びトリガープロセスに対応する時間Tを記録する。
【0170】
ステップ1503bでは、仮想環境画面が変化しない。
【0171】
第3のコントロールがトリガーされず、仮想環境画面が変化しない。
【0172】
ステップ1504では、Δt=Δt+Tを計算する。
【0173】
トリガーの初期時間Δtとトリガー時間Tの総時間を計算する。
【0174】
ステップ1505では、ユーザーが手を離すか否かを判断する。
【0175】
ゲームアプリケーションプログラムは、ユーザーが手を離すか否かを判断し、ユーザーが手を離すと、ステップ1506に進み、ユーザーが手を離さないと、ステップ1504に戻る(時間を計算し続ける)。
【0176】
ステップ1506では、Δt>0.5が成立するか否かを判断する。
【0177】
ゲームアプリケーションプログラムは、第3のコントロールがトリガーされた時間が時間閾値を超えるか否かを判断し、第3のコントロールがトリガーされた時間が時間閾値を超えない場合、ステップ1507aに進み、第3のコントロールがトリガーされた時間が時間閾値を超える場合、ステップ1507bに進む。
【0178】
ステップ1507aでは、しゃがむ動作をトリガーする。
【0179】
第3のコントロールがトリガーされた時間が時間閾値を超えないと、ゲームアプリケーションプログラムは、第1の仮想オブジェクトがしゃがむ動作を実行するように制御する。
【0180】
ステップ1507bでは、うつ伏せ動作をトリガーする。
【0181】
第3のコントロールがトリガーされた時間が時間閾値を超えると、ゲームアプリケーションプログラムは、第1の仮想オブジェクトがうつ伏せ動作を実行するように制御する。
【0182】
なお、ユーザーは、操作オプションを修正するたびにメモリに現在のオプション設定を記録し、主キー値は、SettingKeys.HideProneBtnであり、値内容は、現在のオプションの状態(true又はfalse)である。この部分の情報は、ユーザーに対応するコンピュータデバイスのローカルデータに記憶され、ユーザーが当該コンピュータデバイスを使用してゲームに再ログインするか又はユーザーがゲームを再開始する場合、いずれもローカルデータから当該オプションの値を取得し、これによりユーザーの操作設定の一致性を保持する。
【0183】
1回のゲームにおいて、上記ステップ1502~ステップ1507a(ステップ1507b)は、ゲームが終了するまで、繰り返して実施することができる。
【0184】
上記実施例は、ゲームの応用シナリオに基づいて上記方法を説明し、以下、軍事シミュレーションの応用シナリオで上記方法を例示的に説明する。
【0185】
シミュレーション技術は、ソフトウェアとハードウェアを使用して現実世界の実験を模擬し、システムの行為又は過程を反映するモデル技術である。
【0186】
軍事シミュレーションプログラムは、シミュレーション技術を利用して軍事用途に対して特別に構築されたプログラムであり、海、陸、空などの作戦要素、武器装備の性能及び作戦行動などを定量的に分析し、さらに戦場環境を正確にシミュレーションし、戦場状況を提示し、作戦体系の評価及び決定の支援を実現する。
【0187】
一例では、兵士は、軍事シミュレーションプログラムが存在する端末で1つの仮想戦場を構築し、かつチームの形で対戦する。兵士は、戦場仮想環境における仮想オブジェクトが戦場仮想環境下で、立ち、しゃがみ、座り、仰臥、腹臥、側臥、歩き、走り、登り、運転、射撃、投げ、攻撃、負傷、偵察、近接格闘などの動作のうちの少なくとも1種の操作を行うように制御する。戦場の仮想環境は、平地、山や川、高原、盆地、砂漠、河、湖、海、植生のうちの少なくとも1種の自然形態、及び建物、交通機関、廃墟、訓練場などの場所形態を含む。仮想オブジェクトは、仮想キャラクター、仮想動物、アニメーションキャラクターなどを含み、各仮想オブジェクトは、3次元仮想環境でその形状及び体積を有し、3次元仮想環境における一部の空間を占める。
【0188】
上記状況に基づいて、一例では、兵士Aは、仮想オブジェクトaを制御し、兵士Bは、仮想オブジェクトbを制御し、兵士Cは、仮想オブジェクトcを制御し、兵士Aと兵士Bは、同じチームの兵士であり、兵士Cと兵士A及び兵士Bは、同じチームに属しない。仮想オブジェクトcの視角で仮想オブジェクトa及び仮想オブジェクトbを見ると、兵士cは、軍事シミュレーションプログラムにおいて分割操作を設定し、射撃コントロールを2つの射撃コントロールに分割し、それぞれ射撃コントロール1及び射撃コントロール2であり、射撃コントロール1は、仮想オブジェクト1を攻撃するためのものであり、射撃コントロール2は、仮想オブジェクト2を攻撃するためのものであり、射撃コントロール1及び射撃コントロール2がトリガーされる場合、射撃コントロール1の持続時間は、射撃コントロール2の持続時間より長い(仮想オブジェクト1に防護仮想道具が着用されるため、より長い時間で攻撃する必要がある)。
【0189】
以上のように、本実施例では、上記仮想環境画面の表示方法を軍事シミュレーションプログラムに適用し、兵士は、戦術レイアウトに合わせてコントロールを結合するか又はコントロールを分割することにより、コントロールのレイアウトが個人の使用習慣に適し、それにより兵士のヒューマンコンピュータインタラクションの効率を向上させ、実戦現場に対してよりリアルなシミュレーションを行い、兵士が良く訓練される。
【0190】
以下は、本願の装置の実施例であり、装置の実施例では詳細に説明されていない詳細について、上記方法の実施例における対応する記載を参照することができ、本明細書では、説明を省略する。
【0191】
図16は、本願の例示的な実施例に係る仮想環境画面の表示装置の概略構成図を示す。当該装置は、ソフトウェア、ハードウェア又は両者の組み合わせにより端末の全部又は一部になることを実現することができ、当該装置は、
仮想環境画面、第1のコントロール及び第2のコントロールを表示する表示モジュールであって、第1のコントロール及び第2のコントロールは、異なるコントロールタイプに属する表示モジュール1610と、
前記第1のコントロール及び前記第2のコントロールに対する結合設定操作を受信する受信モジュール1620と、
結合設定操作に応答して第1のコントロール及び第2のコントロールを第3のコントロールに結合する処理モジュール1630と、を含む。
好ましい一実施例では、当該装置は、取得モジュール1640を含み、
前記取得モジュール1640は、前記結合設定操作に応答して第1のコントロールの第1のコントロールタイプ及び第2のコントロールの第2のコントロールタイプを取得し、前記処理モジュール1630は、第1のコントロールタイプ及び第2のコントロールタイプが予め設定された条件を満たすことに応答し、第1のコントロール及び第2のコントロールを第3のコントロールに結合する。
【0192】
好ましい一実施例では、予め設定された条件は、
第1のコントロールタイプがアシストタイプであり、第2のコントロールタイプが照準タイプである条件と、
第1のコントロールタイプがアシストタイプであり、第2のコントロールタイプが移動タイプである条件と、
第1のコントロールタイプが移動タイプであり、第2のコントロールタイプが照準タイプである条件と、
第1のコントロールタイプが移動タイプであり、第2のコントロールタイプが状態切り替えタイプである条件と、
第1のコントロールタイプが状態切り替えタイプであり、第2のコントロールタイプがアシストタイプである条件と、
第1のコントロールタイプが状態切り替えタイプであり、第2のコントロールタイプが照準タイプである条件と、
のうちの少なくとも1種を含む。
【0193】
好ましい一実施例では、前記表示モジュール1610は、前記第1のコントロール及び前記第2のコントロールを取り替えるための前記第3のコントロールを更新表示する。
【0194】
好ましい一実施例では、前記第1のコントロールは、第1の仮想オブジェクトが第1の動作を実行するように制御し、
前記第2のコントロールは、前記第1の仮想オブジェクトが第2の動作を実行するように制御し、
前記第3のコントロールは、前記第1の仮想オブジェクトが前記第1の動作及び前記第2の動作を実行するように制御する。
【0195】
好ましい一実施例では、前記処理モジュール1630は、第3のコントロールに対する第1の操作に応答して、第1の仮想オブジェクトが第1の動作を実行するように制御し、第3のコントロールに対する第2の操作に応答して、第1の仮想オブジェクトが第2の動作を実行するように制御し、或いは、第3のコントロールに対する第3の操作に応答して、第1の仮想オブジェクトが第1の動作及び第2の動作を同時に実行するように制御し、或いは、第3のコントロールに対する第4の操作に応答して、第1の動作及び第2の動作の優先度を取得し、優先度に基づいて第1の仮想オブジェクトが予め設定された順序に応じて第1の動作及び第2の動作を実行するように制御する。
【0196】
好ましい一実施例では、前記処理モジュール1630は、前記第3のコントロールに対する第1の分割設定操作に応答して、第3のコントロールを第1のコントロール及び第2のコントロールに分割し、或いは、前記第3のコントロールに対する第2の分割設定操作に応答して、第3のコントロールを第4のコントロール及び第5のコントロールに分割し、第4のコントロール及び第5のコントロールは、同じタイプのコントロールに属する。
【0197】
好ましい一実施例では、前記取得モジュール1640は、前記第3のコントロールに対する第1の分割設定操作に応答して、第3のコントロールに対応する動作タイプを取得し、前記処理モジュール1630は、動作タイプに基づいて第3のコントロールを第1のコントロール及び第2のコントロールに分割する。
【0198】
好ましい一実施例では、前記取得モジュール1640は、前記第3のコントロールに対する第2の分割設定操作に応答して、第3のコントロールに対応する少なくとも2つの動作の間の相関関係を取得し、前記処理モジュール1630は、相関関係に基づいて第3のコントロールを第4のコントロール及び第5のコントロールに分割する。
【0199】
好ましい一実施例では、仮想環境画面は、第1の仮想オブジェクトの視角で仮想環境を観察して得られた画面であり、
前記取得モジュール1640は、第1の仮想オブジェクトの視角内に少なくとも2つの第2の仮想オブジェクトがあることに応答して、第2の仮想オブジェクトの数を取得し、前記処理モジュール1630は、第2の仮想オブジェクトの数に基づいて第3のコントロールを分割する。
【0200】
好ましい一実施例では、前記表示モジュール1610は、前記第3のコントロールを分割した後に前記第3のコントロールを取り替えるための少なくとも2つの分割済みコントロールを更新表示する。
【0201】
好ましい一実施例では、前記処理モジュール1630は、第1のコントロールに対する第1の操作に応答して、第1の仮想オブジェクトが第1の動作を実行するように制御し、第2のコントロールに対する第2の操作に応答して、第1の仮想オブジェクトが第1の動作を実行すると同時に、第2の動作を実行するように制御し、或いは、第4のコントロールに対する第3の操作に応答して、第1の仮想オブジェクトが第4の動作を実行するように制御し、第5のコントロールに対する第4の操作に応答して、第1の仮想オブジェクトが第5の動作を実行するように制御し、第4の動作と第5の動作は、相関関係を有する。
【0202】
以上のように、本実施例に係る装置は、受信された結合設定操作に応じて、仮想環境画面に表示された異なるタイプのコントロールを結合することにより、ユーザーが自主的に設定して、あまり使われないUIコントロールを同一のUIコントロールに結合するか、又は組み合わせて使用する必要があるUIコントロールを同一のUIコントロールに結合することができ、UIコントロールの仮想環境画面上のレイアウトを変更することにより、ユーザーが仮想オブジェクトを制御する過程を簡略化し、ヒューマンコンピュータインタラクションの効率を向上させる。
【0203】
第1のコントロールの第1のコントロールタイプ及び第2のコントロールの第2のコントロールタイプが予め設定された条件を満たすか否かを判断すると、第1のコントロール及び第2のコントロールを第3のコントロールに結合することにより、ユーザーは、結合設定操作により異なるタイプのコントロールを結合することができ、それにより、UIコントロールの仮想環境画面上のレイアウトがより柔軟になる。
【0204】
予め設定された条件を満たすUIコントロールのタイプを列挙することにより、ユーザーは、結合可能なUIコントロールのタイプを決定し、UIコントロールを柔軟に結合する。
【0205】
第1のコントロール及び第2のコントロールを結合した後、仮想環境画面を更新表示し、更新後の仮想環境画面に結合後の第3のコントロールが表示され、ユーザーは、更新後の仮想環境画面により仮想オブジェクトをより直感的に制御することができる。
【0206】
第3のコントロールで異なる操作を受信する場合、仮想オブジェクトが異なるルールに応じて異なる動作を実行するように制御し、それにより、仮想オブジェクトの制御方式がより柔軟で多様になり、ユーザーが自分の好みに合致するか又は自分の使用習慣に適するUIコントロールのレイアウトを設定することに役立つ。
【0207】
分割設定操作を受信すると、第3のコントロールを同じタイプのコントロール又は異なるタイプのコントロールに分割することにより、ユーザーは、異なる戦況に対してコントロールを意図的に分割することができ、ユーザーの操作習慣に適すると同時に、ユーザーが制御した仮想オブジェクトの対戦効率を向上させることを保証する。
【0208】
第3のコントロールがトリガーされた場合に対応する動作タイプに基づいて第3のコントロールを分割することにより、分割されたコントロールは、異なるタイプの動作に対応する機能を実現することができ、ユーザーは、異なる機能に基づいて第3のコントロールを分割しやすい。
【0209】
第3のコントロールがトリガーされた場合に対応する少なくとも2つの動作の間の相関関係に基づいて第3のコントロールを分割することにより、分割されたコントロールは、同じタイプの動作の異なる階層を実現することができ、ユーザーは、異なる対戦状況に基づいて異なる階層の動作を実行しやすく、仮想オブジェクトの作戦効率を向上させることに役立つ。
【0210】
第1の仮想オブジェクトの視野内の第2の仮想オブジェクトの数に基づいて第3のコントロールを分割することにより、分割されたコントロールは、異なる仮想オブジェクトに対して攻撃を行うことができ、仮想オブジェクトの作戦効率を向上させることに役立つ。
【0211】
第3のコントロールを分割した後、仮想環境画面を更新表示し、更新後の仮想環境画面に分割済みコントロールが表示され、ユーザーは、更新後の仮想環境画面により仮想オブジェクトをより直感的に制御することができる。
【0212】
分割されたコントロールで異なる操作を受信する場合、仮想オブジェクトが異なる操作を実行するように制御することができ、それにより、仮想オブジェクトの制御方式がより柔軟で多様になり、ユーザーが自分の好みに合致するか又は自分の使用習慣に適するUIコントロールのレイアウトを設定することに役立つ。
【0213】
なお、上記実施例に係る仮想環境画面の表示装置は、上記各機能モジュールの分割を例に挙げて説明しただけであり、実際の適用において、必要に応じて上記機能を異なる機能モジュールによって完成されるように分配することもでき、即ち、装置の内部構造を異なる機能モジュールに分割して、上記した機能の一部又は全部を完成する。また、上記実施例に係る仮想環境画面の表示装置は、仮想環境画面の表示方法の実施例と同じ構想に属し、その具体的な実現過程の詳細は、方法の実施例を参照することができ、ここでは詳細な説明を省略する。
【0214】
図17に示すように、本出願の例示的な実施例に係るコンピュータデバイス1700のブロック構成図を示す。当該コンピュータデバイス1700は、スマートフォン、タブレットコンピュータ、MP3プレーヤー(Moving Picture Experts Group Audio Layer III、動画専門家グループオーディオレイヤー3)、MP 4(Moving Picture Experts Group Audio Layer IV、動画エキスパートグループオーディオレイヤー4)プレーヤーのような携帯型移動端末であってもよい。コンピュータデバイス1700は、ユーザーデバイス、携帯端末などの他の名前で呼ばれることもある。
【0215】
一般的に、コンピュータデバイス1700は、プロセッサ1701及びメモリ1702を含む。
【0216】
プロセッサ1701は、例えば、4コアプロセッサ、8コアプロセッサなどの1つ又は複数の処理コアを含んでもよい。
【0217】
メモリ1702は、1つ又は複数のコンピュータ可読記憶媒体を含んでもよく、当該コンピュータ可読記憶媒体は、有形かつ非一時的なものであってもよい。メモリ1702は、高速ランダムアクセスメモリ、及び不揮発性メモリをさらに含んでもよく、例えば、1つ又は複数の磁気ディスク記憶デバイス、フラッシュメモリ記憶デバイスである。いくつかの実施例では、メモリ1702における非一時的なコンピュータ可読記憶媒体は、少なくとも1つの命令を記憶し、当該少なくとも1つの命令は、プロセッサ1701によって実行されて本願の実施例に係る仮想環境画面の表示方法を実現する。
【0218】
いくつかの実施例では、コンピュータデバイス1700は、好ましくは、周辺装置インタフェース1703及び少なくとも1つの周辺装置をさらに含んでもよい。具体的には、周辺装置は、無線周波数回路1704、タッチディスプレイ1705、カメラコンポーネント1706、オーディオ回路1707、測位コンポーネント1708及び電源1709のうちの少なくとも1つを含む。
【0219】
周辺装置インタフェース1703は、I/O(Input/Output、入力/出力)に関連する少なくとも1つの周辺装置をプロセッサ1701及びメモリ1702に接続することに用いられ得る。
【0220】
無線周波数回路1704は、電磁信号とも呼ばれるRF(Radio Frequency、無線周波数)信号を送受信する。無線周波数回路1704は、電磁信号を介して通信ネットワーク及び他の通信デバイスと通信する。無線周波数回路1704は、電気信号を電磁信号に変換して送信するか、又は受信された電磁信号を電気信号に変換する。
【0221】
タッチディスプレイ1705は、UI(User Interface、ユーザーインタフェース)を表示する。
【0222】
カメラコンポーネント1706は、画像又はビデオを収集する。オーディオ回路1707は、ユーザーとコンピュータデバイス1700との間のオーディオインタフェースを提供する。オーディオ回路1707は、マイクロフォン及びスピーカーを含んでもよい。
【0223】
測位コンポーネント1708は、コンピュータデバイス1700の現在の地理的位置を測位することにより、ナビゲーション又はLBS(Location Based Service、位置情報サービス)を実現する。
【0224】
電源1709は、コンピュータデバイス1700における各コンポーネントに給電する。
【0225】
いくつかの実施例では、コンピュータデバイス1700は、1つ又は複数のセンサ1710をさらに含む。当該1つ又は複数のセンサ1710は、加速度センサ1711、ジャイロセンサ1712、圧力センサ1713、指紋センサ1714、光学センサ1715及び近接センサ1716を含むが、これらに限定されない。
【0226】
当業者が理解できるように、図17に示す構造は、コンピュータデバイス1700を限定するものではなく、図示より多いか又は少ないコンポーネントを含み、又はいくつかのコンポーネントを組み合わせ、又は異なるコンポーネント配置を採用して配置するようにしてもよい。
【0227】
本願の実施例は、さらに、コンピュータデバイスを提供し、当該コンピュータデバイスは、プロセッサ及びメモリを含み、当該メモリに少なくとも1つの命令、少なくとも1つのプログラム、コードセット又は命令セットが記憶され、当該少なくとも1つの命令、当該少なくとも1つのプログラム、当該コードセット又は命令セットは、当該プロセッサがロードし、かつ実行することにより、上記各方法の実施例に係る仮想環境画面の表示方法を実現する。
【0228】
本願の実施例は、さらに、コンピュータ可読記憶媒体を提供し、当該記憶媒体に少なくとも1つの命令、少なくとも1つのプログラム、コードセット又は命令セットが記憶され、当該少なくとも1つの命令、少なくとも1つのプログラム、コードセット又は命令セットは、プロセッサがロードし、かつ実行することにより、上記各方法の実施例に係る仮想環境画面の表示方法を実現する。
【0229】
本願の実施例は、さらに、コンピュータプログラム製品又はコンピュータプログラムを提供し、前記コンピュータプログラム製品又はコンピュータプログラムは、コンピュータ命令を含み、前記コンピュータ命令は、コンピュータ可読記憶媒体に記憶される。コンピュータデバイスのプロセッサは、前記コンピュータ可読記憶媒体から前記コンピュータ命令を読み取り、前記プロセッサは、前記コンピュータ命令を実行することにより、前記コンピュータデバイスに上記態様に記載の仮想環境画面の表示方法を実行させる。
【0230】
理解されるように、本明細書で言及された「複数」は、2つ又は2つ以上を指す。「及び/又は」は、相関オブジェクトの相関関係を説明するためのものであり、3つの関係が存在してもよいことを示し、例えば、「A及び/又はB」は、「Aが独立して存在する」、「AとBが同時に存在する」、「Bが独立して存在する」の3つの状況を示してもよい。文字「/」は、一般的に、前後関連オブジェクトが「又は」の関係であることを示す。
【0231】
当業者は、上記実施例を実現するためのステップの全部又は一部は、ハードウェアによって完了されてもよいし、プログラムで関連するハードウェアを命令することにより完了されてもよく、当該プログラムは、コンピュータ可読記憶媒体に記憶されることができ、上に言及された記憶媒体は読み取り専用メモリ、磁気ディスク又は光ディスクなどであり得ることを理解できる。
【0232】
上記は、本願の選択可能な実施例にすぎず、本願を限定することを意図するものではなく、本願の精神及び原則において行われる任意の修正、等価な置換、改良などは、いずれも本願の保護範囲内に含まれるべきある。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17