(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-11-14
(45)【発行日】2022-11-22
(54)【発明の名称】仮想オブジェクトの制御方法、装置、機器及びコンピュータプログラム
(51)【国際特許分類】
A63F 13/55 20140101AFI20221115BHJP
A63F 13/5378 20140101ALI20221115BHJP
A63F 13/52 20140101ALI20221115BHJP
【FI】
A63F13/55
A63F13/5378
A63F13/52
(21)【出願番号】P 2021562153
(86)(22)【出願日】2021-03-29
(86)【国際出願番号】 CN2021083656
(87)【国際公開番号】W WO2021227682
(87)【国際公開日】2021-11-18
【審査請求日】2021-10-19
(31)【優先権主張番号】202010412006.5
(32)【優先日】2020-05-15
(33)【優先権主張国・地域又は機関】CN
【早期審査対象出願】
(73)【特許権者】
【識別番号】517392436
【氏名又は名称】▲騰▼▲訊▼科技(深▲セン▼)有限公司
(74)【代理人】
【識別番号】100110364
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100150197
【氏名又は名称】松尾 直樹
(72)【発明者】
【氏名】魏 嘉城
(72)【発明者】
【氏名】胡 ▲勳▼
(72)【発明者】
【氏名】粟 山▲東▼
(72)【発明者】
【氏名】晏 江
(72)【発明者】
【氏名】▲張▼ 康
【審査官】早川 貴之
(56)【参考文献】
【文献】特開2020-36907(JP,A)
【文献】特開2020-39880(JP,A)
【文献】PERFECT Use of MINI MAP | MAP AWARENESS & FARMING Guide | Mobile Legends Bang Bang,Youtube [online] [video],2019年03月24日,https://www.youtube.com/watch?v=jq35rGBhpns,[検索日:2022年5月2日]
【文献】[モバイルレジェンド] 中級者向けの攻略,とろブロ [online],2019年08月23日,http://trokiss-gamer.com/smartphone-game/no-224/,[検索日:2022年5月2日]
(58)【調査した分野】(Int.Cl.,DB名)
A63F 9/24,13/00-13/98
(57)【特許請求の範囲】
【請求項1】
端末が実行する、仮想オブジェクトの制御方法であって、
マップコントロールが表示されている第1仮想シーンを表示するステップと、
前記マップコントロールに対する第1トリガ操作に応答して、第1操作位置に対応する第2仮想シーンを表示するステップであって、前記第1トリガ操作は前記第1操作位置に作用する、ステップと、
目標スキルのスキルコントロールに対する第2トリガ操作に応答して、前記第2トリガ操作の操作位置を示す第2操作位置に基づいて、前記第2仮想シーン内で対応するスキル解放目標を決定するステップと、
第1仮想オブジェクトが前記スキル解放目標に従って前記目標スキルを解放するように制御するステップと、を含み、
目標スキルのスキルコントロールに対する第2トリガ操作に応答して、前記第2トリガ操作の操作位置を示す第2操作位置に基づいて、前記第2仮想シーン内で対応するスキル解放目標を決定する前記ステップが、
前記第2操作位置と前記スキルコントロールとの間の位置関係を決定するステップと、
前記スキルコントロールの操作エリアと前記第2仮想シーンとの間の変換関係に応じて、前記位置関係を変換して、前記第2操作位置の前記第2仮想シーンにおける対応するスキル解放位置と前記第2仮想シーンの中心位置との間の目標位置関係を取得するステップと、
前記中心位置に応じて、前記第2仮想シーンの辺縁位置を決定するステップと、
前記中心位置、前記辺縁位置、及び前記操作エリアのサイズに応じて、前記第2操作位置と前記スキルコントロールとの間の位置関係を変換するステップと、
前記中心位置及び前記目標位置関係に応じて、前記スキル解放目標を決定するステップと、を含む、方法。
【請求項2】
第1操作位置に対応する第2仮想シーンを表示する前記ステップは、
前記第1操作位置及び前記マップコントロールにおける表示情報と仮想シーンとの対応関係に応じて、前記第1操作位置に対応する第2仮想シーンを決定するステップと、
前記第1仮想シーンを前記第2仮想シーンに切り替えるステップと、を含む、請求項1に記載の方法。
【請求項3】
前記第1操作位置及び前記マップコントロールにおける表示情報と仮想シーンとの対応関係に応じて、前記第1操作位置に対応する第2仮想シーンを決定する前記ステップは、
前記第1トリガ操作の第1操作位置に応じて、前記マップコントロールにおいて前記第1操作位置を中心とする、サイズが第1目標サイズである目標エリアを決定し、前記マップコントロールにおける表示情報と仮想シーンとの対応関係に応じて、前記目標エリアの仮想シーン内で対応する第2仮想シーンを決定するステップと、
前記第1操作位置及び前記マップコントロールにおける表示情報と仮想シーンとの対応関係に応じて、前記第1操作位置の前記仮想シーンにおける対応する位置を決定し、前記位置を中心とする、サイズが第2目標サイズである第2仮想シーンを決定するステップとのうちのいずれか1つを含む、請求項2に記載の方法。
【請求項4】
前記スキル解放目標は、前記スキル解放位置、目標仮想オブジェクト又はスキル解放方向のうちのいずれか1つであり、
前記第2操作位置と前記スキルコントロールとの間の位置関係に応じて、前記第2操作位置の前記第2仮想シーンにおける対応するスキル解放目標を決定する前記ステップは、
前記中心位置及び前記目標位置関係に応じて、前記スキル解放位置を決定し、前記スキル解放位置を前記スキル解放目標として決定するか、又は前記スキル解放位置上の仮想オブジェクトを目標仮想オブジェクトとして決定するか、又は前記スキル解放位置の現在制御している第1仮想オブジェクトに対する方向をスキル解放方向として決定するステップ、をさらに含む、請求項1に記載の方法。
【請求項5】
前記第2トリガ操作に応答して、前記第2操作位置の前記第2仮想シーンにおける対応するスキル解放目標を決定する前記ステップは、
前記第2トリガ操作が終了し、前記第2トリガ操作の終了位置を前記第2操作位置とし、かつ、前記第2操作位置は第1操作エリア内にあることに応答して、前記第2操作位置と前記スキルコントロールとの間の位置関係に応じて、前記第2操作位置の前記第2仮想シーンにおける対応するスキル解放目標を決定する前記ステップを実行するステップを含む、請求項1に記載の方法。
【請求項6】
前記第2トリガ操作に応答して、前記第2操作位置の前記第2仮想シーンにおける対応するスキル解放目標を決定する前記ステップは、
前記第2トリガ操作が終了し、前記第2トリガ操作の終了位置を前記第2操作位置とし、かつ、前記第2操作位置は第2操作エリア内にあることに応答して、前記第2仮想シーンにおける少なくとも1つの第2仮想オブジェクトの情報に応じて、前記少なくとも1つの第2仮想オブジェクトから目標仮想オブジェクトを決定し、前記目標仮想オブジェクトを前記スキル解放目標として決定するか、又は前記目標仮想オブジェクトがある位置を前記スキル解放目標として決定するか、又は前記目標仮想オブジェクトの第1仮想オブジェクトに対する方向を前記スキル解放目標として決定するステップであって、前記第1操作エリアは、前記第2操作エリア外に囲まれている、ステップを含む、請求項5に記載の方法。
【請求項7】
前記第2トリガ操作に応答して、前記第2操作位置の前記第2仮想シーンにおける対応するスキル解放目標を決定する前記ステップは、
前記第2トリガ操作が終了し、前記第2トリガ操作の終了位置を前記第2操作位置とすることに応答して、前記第2操作位置の前記第2仮想シーンにおける対応するスキル解放目標を決定するステップを含む、請求項1に記載の方法。
【請求項8】
前記第2トリガ操作の実施過程中に応答して、前記第2トリガ操作のリアルタイム操作位置に応じて、前記第2仮想シーンにおける候補スキル解放目標を決定するステップと、
前記第2仮想シーンにおいて前記候補スキル解放目標を強調表示するステップと、をさらに含む、請求項1に記載の方法。
【請求項9】
前記第2トリガ操作に応答して、前記第2操作位置の前記第2仮想シーンにおける対応するスキル解放目標を決定する前記ステップは、
現在制御している第1仮想オブジェクトの仮想シーンにおける位置及び前記目標スキルの解放範囲に応じて、前記目標スキルの解放可能なエリアを決定するステップと、
前記第2操作位置の前記第2仮想シーンにおける対応する位置が前記解放可能なエリア内にあることに応答して、前記第2操作位置の前記第2仮想シーンにおける対応するスキル解放目標を決定する前記ステップを実行するステップと、を含む、請求項1に記載の方法。
【請求項10】
目標位置が前記解放可能なエリア外にあることに応答して、前記第2操作位置及び前記第1仮想オブジェクトの仮想シーンにおける位置に応じて、前記第2操作位置の前記仮想シーン内で対応するスキル解放目標を決定するステップであって、前記目標位置は前記第2操作位置の前記第2仮想シーンにおける対応する位置である、ステップをさらに含む、請求項9に記載の方法。
【請求項11】
仮想オブジェクトの制御装置であって、
マップコントロールが表示されている仮想シーンを表示し、前記マップコントロールに対する第1トリガ操作に応答して、第1操作位置に対応する第2仮想シーンを表示するための表示モジュールであって、前記第1トリガ操作は前記第1操作位置に作用する、表示モジュールと、
目標スキルのスキルコントロールに対する第2トリガ操作に応答して、前記第2トリガ操作の操作位置を示す第2操作位置に基づいて、前記第2仮想シーン内で対応するスキル解放目標を決定するための決定モジュールでと、
第1仮想オブジェクトが前記スキル解放目標に従って前記目標スキルを解放するように制御するための制御モジュールと、を含み、
前記決定モジュールが、
前記第2操作位置と前記スキルコントロールとの間の位置関係を決定する第2取得ユニットと、
変換ユニットであって、
前記スキルコントロールの操作エリアと前記第2仮想シーンとの間の変換関係に応じて、前記位置関係を変換して、前記第2操作位置の前記第2仮想シーンにおける対応するスキル解放位置と前記第2仮想シーンの中心位置との間の目標位置関係を取得し、
前記中心位置に応じて、前記第2仮想シーンの辺縁位置を決定し、
前記中心位置、前記辺縁位置、及び前記操作エリアのサイズに応じて、前記第2操作位置と前記スキルコントロールとの間の位置関係を変換する
変換ユニットと、
を備え、
前記中心位置及び前記目標位置関係に応じて、前記スキル解放目標を決定する、仮想オブジェクトの制御装置。
【請求項12】
電子機器であって、
前記電子機器は、1つ又は複数のプロセッサと、1つ又は複数のメモリと、を含み、前記1つ又は複数のメモリには、少なくとも1つのプログラムコードが記憶されており、前記少なくとも1つのプログラムコードは、前記1つ又は複数のプロセッサによってロードされて実行されて、請求項1から10のいずれか一項に記載の方法によって実行される操作を実現する、電子機器。
【請求項13】
コンピュータプログラムであって、
プロセッサによってロードされて実行されて、請求項1から10のいずれか一項に記載の方法によって実行される操作を実現するコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本願は、2020年5月15日に中国国家知識産権局に提出された、発明の名称が「仮想オブジェクトの制御方法、装置、機器及び媒体」である中国特許出願第202010412006.5号の優先権を主張し、当該出願の全ての内容は援用することにより本願に組み込まれる。
【0002】
本願は、コンピュータ技術の分野に関し、特に仮想オブジェクトの制御方法、装置、機器及び媒体に関する。
【背景技術】
【0003】
コンピュータ技術の発展及び端末機能の多様化に伴い、端末上でプレイできるゲームの種類はますます多くなっている。ここで、MOBA(Multiplayer Online Battle Arena、マルチプレイヤーオンラインバトルアリーナ)ゲームは、比較的人気のあるゲームであり、端末のインターフェースに仮想シーンを表示し、仮想シーンに仮想オブジェクトを表示することができ、当該仮想オブジェクトはスキルを解放することにより、他の仮想オブジェクトと対戦することができる。
【0004】
一般に、仮想シーンの表示は、現在制御している第1仮想オブジェクトを中心として行われる。現在、仮想オブジェクトの制御方法は、通常、スキルの解放操作が検出されると、現在制御している第1仮想オブジェクトを中心とする仮想シーンにおいて、解放操作の操作位置に応じて、当該スキルの解放目標を決定し、それにより、第1仮想オブジェクトのスキル解放を制御し、当該解放目標は、仮想シーンにおける1つの位置、仮想オブジェクト又は方向である。
【0005】
上記制御方法において、スキルに対して解放操作を行う場合、第1仮想オブジェクトを中心とする仮想シーン内でのみ解放目標を選択することができ、ユーザが影響を与えたいオブジェクトが仮想シーンに表示されていない場合には、大まかに推定してスキル解放を制御する必要があり、こうすると、上記制御方法の精度及び正確性が低い。
【発明の概要】
【発明が解決しようとする課題】
【0006】
本願の実施例は、制御方法の精度及び正確性を向上させることができる仮想オブジェクトの制御方法、装置、機器及び媒体を提供する。当該技術的解決手段は、以下のとおりである。
【課題を解決するための手段】
【0007】
一態様では、仮想オブジェクトの制御方法を提供し、当該方法は、
マップコントロールが表示されている第1仮想シーンを表示するステップと、
前記マップコントロールに対する第1トリガ操作に応答して、第1操作位置に対応する第2仮想シーンを表示するステップであって、前記第1トリガ操作は前記第1操作位置に作用する、ステップと、
目標スキルに対する解放操作に応答して、第2操作位置に基づいて、前記第2仮想シーン内で対応するスキル解放目標を決定するステップであって、前記解放操作は第2操作位置に対応する、ステップと、
第1仮想オブジェクトが前記スキル解放目標に従って前記目標スキルを解放するように制御するステップと、を含む。
【0008】
一態様では、仮想オブジェクトの制御装置を提供し、当該装置は、
マップコントロールが表示されている仮想シーンを表示し、前記マップコントロールに対する第1トリガ操作に応答して、第1操作位置に対応する第2仮想シーンを表示するための表示モジュールであって、前記第1トリガ操作は前記第1操作位置に作用する、表示モジュールと、
目標スキルに対する解放操作に応答して、第2操作位置に基づいて、前記第2仮想シーン内で対応するスキル解放目標を決定するための決定モジュールであって、前記解放操作は第2操作位置に対応する、決定モジュールと、
第1仮想オブジェクトが前記スキル解放目標に従って前記目標スキルを解放するように制御するための制御モジュールと、を含む。
【0009】
一態様では、電子機器を提供し、前記電子機器は、1つ又は複数のプロセッサと、1つ又は複数のメモリと、を含み、当該1つ又は複数のメモリには少なくとも1つのプログラムコードが記憶されており、当該少なくとも1つのプログラムコードは、当該1つ又は複数のプロセッサによってロードされて実行されて、上記のいずれか1つの可能な実現形態の仮想オブジェクトの制御方法が実行する操作を実現する。
【0010】
一態様では、記憶媒体を提供し、当該記憶媒体には少なくとも1つのプログラムコードが記憶され、当該少なくとも1つのプログラムコードは、プロセッサによってロードされて実行されて、上記のいずれか1つの可能な実現形態の仮想オブジェクトの制御方法が実行する操作を実現する。
【0011】
本願の実施例における技術的解決手段をより明確に説明するために、以下では、実施例の記述に使用する必要のある図面について簡単に紹介するが、以下の記述における図面は、本願の一部の実施例にすぎず、当業者であれば、創造的な働きなしこれらの図面に基づいて他の図面を取得することもできることは明らかである。
【図面の簡単な説明】
【0012】
【
図1】本願の実施例にて提供される端末インターフェースの概略図である。
【
図2】本願の実施例にて提供される端末インターフェースの概略図である。
【
図3】本願の実施例にて提供される端末インターフェースの概略図である。
【
図4】本願の実施例にて提供される端末インターフェースの概略図である。
【
図5】本願の実施例にて提供される仮想オブジェクトの制御方法の実施環境の概略図である。
【
図6】本願の実施例にて提供される仮想オブジェクトの制御方法のフローチャートである。
【
図7】本願の実施例にて提供される仮想オブジェクトの制御方法のフローチャートである。
【
図8】本願の実施例にて提供されるミニマップと仮想シーンとの対応関係の概略図である。
【
図9】本願の実施例にて提供される端末インターフェースの概略図である。
【
図10】本願の実施例にて提供されるレンズ位置とキャラクタ位置との関係の概略図である。
【
図11】本願の実施例にて提供される端末インターフェースの概略図である。
【
図12】本願の実施例にて提供される端末インターフェースの概略図である。
【
図13】本願の実施例にて提供される端末インターフェースの概略図である。
【
図14】本願の実施例にて提供される仮想シーンと仮想カメラとの間の位置関係の概略図である。
【
図15】本願の実施例にて提供される操作エリアと仮想シーンとのマッピング関係図である。
【
図16】本願の実施例にて提供される端末インターフェースの概略図である。
【
図17】本願の実施例にて提供される操作エリアと仮想シーンとのマッピング関係図である。
【
図18】本願の実施例にて提供される仮想オブジェクトの制御方法のフローチャートである。
【
図19】本願の実施例にて提供される端末インターフェースの概略図である。
【
図20】本願の実施例にて提供される仮想オブジェクトの制御装置の概略構造図である。
【
図21】本願の実施例にて提供される端末2100の概略構造図である。
【発明を実施するための形態】
【0013】
本願の目的、技術的解決手段及び利点をより明確にするために、以下では、図面を参照しながら本願の実施形態についてさらに詳細に説明する。
【0014】
本願において、「第1」、「第2」などの用語は、基本的に同じ作用及び機能を有する同じアイテム又は類似アイテムを区別するために用いられ、「第1」、「第2」、「第n」の間には、論理的又は時系列的な依存関係がなく、数及び実行順序に対しても限定しないことを理解すべきである。
【0015】
本願において、「少なくとも1つ」という用語は、1つまたは1つ以上を意味し、「少なくとも2つの」とは、2つまたは2つ以上を意味し、例えば、少なくとも2つのノード機器とは、2つまたは2つ以上のノード機器を意味する。
【0016】
以下、本願に係る用語について解釈する。
【0017】
仮想シーンは、アプリケーションプログラムが端末上で実行されるとき、表示(又は提供)される仮想シーンである。当該仮想シーンは、実世界のシミュレーション環境であるか、又は半シミュレーション半架空の仮想環境であるか、又は完全架空の仮想環境である。仮想シーンは、2次元仮想シーン、2.5次元仮想シーン又は3次元仮想シーンのうちのいずれか1つであってもよく、本願の実施例では、仮想シーンの次元に対して限定しない。例えば、仮想シーンは、空、陸地、海洋などを含み、当該陸地は砂漠、都市などの環境要素を含み、ユーザは、仮想オブジェクトが当該仮想シーン内で移動するように制御することができる。選択可能に、当該仮想シーンは、少なくとも2つの仮想オブジェクト間の仮想シーン対戦に用いられ、当該仮想シーンには、少なくとも2つの仮想オブジェクトが使用可能な仮想リソースがある。選択可能に、当該仮想シーンには、対称的な2つのエリアが含まれ、2つの敵対陣営に属する仮想オブジェクトはそれぞれ1つのエリアを占有し、対戦相手のエリアの奥にある目標建物/拠点/基地/クリスタルを破壊することを勝利目標とし、ここで、対称的なエリアは、例えば左下隅のエリア及び右上隅エリア、又例えば左側中間エリア及び右側中間エリアなどである。
【0018】
仮想オブジェクトとは、仮想シーンにおける活動可能なオブジェクトを意味する。当該活動可能なオブジェクトは、仮想人物、仮想動物又はアニメーション人物など、例えば仮想シーンに表示される人物、動物、植物、油樽、壁、石などである。当該仮想オブジェクトは、当該仮想シーンにおける1つの仮想ものである、ユーザを代表するための仮想イメージである。仮想シーンには、仮想オブジェクトが複数含まれてもよく、各仮想オブジェクトは仮想シーンにおいて独自の形状及び体積を有し、仮想シーンのスペースの一部を占有する。選択可能に、仮想シーンが3次元仮想シーンである場合、選択可能に、仮想オブジェクトは、3次元立体モデルであり、当該3次元立体モデルは3次元人間骨格技術に基づいて構築された3次元キャラクタであり、同一の仮想オブジェクトは、異なるスキンを着用することにより異なる外的イメージを展示する。一部の実施例では、仮想オブジェクトは、2.5次元又は2次元モデルを用いて実現されるが、本願の実施例はこれに対して限定しない。
【0019】
選択可能に、当該仮想オブジェクトは、クライアント上の操作により制御されるプレイヤーキャラクタであるか、又は訓練を通じて仮想シーン対戦に設定された人工知能(Artificial Intelligence、AI)であるか、又は仮想シーンの相互作用に設定されたノンプレイヤーキャラクタ(Non-Player Character、NPC)である。選択可能に、当該仮想オブジェクトは、仮想シーン内でバトルする仮想人物である。選択可能に、当該仮想シーンにおいて、相互作用に参加する仮想オブジェクトの数は予め設定されたものであるか、又は相互作用に加入するクライアントの数に応じて動的に決定されるものである。
【0020】
MOBA(Multiplayer Online Battle Arena、マルチプレイヤーオンラインバトルアリーナ)ゲームは、仮想シーンにいくつかの拠点が提供され、異なる陣営に位置するユーザが、仮想オブジェクトが仮想シーン内で対戦するか、拠点を占領するか又は敵対陣営の拠点を破壊するように制御するゲームである。例えば、MOBAゲームは、ユーザを少なくとも2つの敵対陣営に分け、少なくとも2つの敵対陣営にそれぞれ属する異なる仮想チームが、各自のマップエリアをそれぞれ占有し、ある勝利条件を目標としてバトルする。当該勝利条件は、拠点を占領するか又は敵対陣営の拠点を破壊すること、敵対陣営の仮想オブジェクトを殺すこと、指定のシーン及び時間内に自分の生存を保証すること、あるリソースを奪取すること、及び指定の時間内に相互作用スコアが対戦相手を超えることのうちの少なくとも1つ含むが、これらに限定されない。例えば、MOBAゲームにおいて、ユーザを2つの敵対陣営に分け、ユーザが制御する仮想オブジェクトが、仮想シーンに分散して競い合うことで、敵の拠点を全部破壊するか又は占領することを勝利条件とする。
【0021】
選択可能に、各仮想チームは、1つ、2つ、3つ又は5つなどの1つ又は複数の仮想オブジェクトを含み、戦術バトルに参加する各チーム内の仮想オブジェクトの数に応じて、戦術バトルを1V1バトル競技、2V2バトル競技、3V3バトル競技、5V5バトル競技などに分けることができ、ここで、1V1とは「1対1」を意味し、ここでは詳細な説明を省略する。
【0022】
選択可能に、MOBAゲームは、ラウンド(回とも呼ばれる)を単位として行われてもよく、戦術バトルマップはラウンドごとに同じであっても、異なってもよい。1ラウンドのMOBAゲームの持続時間は、ゲームが開始した時点から勝利条件を達成した時点までの時間である。
【0023】
MOBAゲームにおいて、ユーザは、仮想オブジェクトが当該仮想シーンの空で自由落下したり、滑空したり、又は落下傘を開いて落下したりなどをするように、陸上で走ったり、ジャンプしたり、這いたり、前かがみの姿勢で前進したりなどをするように制御することができ、仮想オブジェクトが海で水泳したり、浮遊したり、又は潜水したりなどをするように制御することもでき、ここでは、上記シーンを例に挙げて説明するだけで、本願の実施例ではこれに対して具体的に限定しない。
【0024】
MOBAゲームにおいて、ユーザは、さらに、仮想オブジェクトがスキルを解放するように制御することができ、それにより他の仮想オブジェクトと戦うとき、例えば、当該スキルのスキルタイプには攻撃スキル、防御スキル、治療スキル、補助スキル、殺しスキルなどが含まれてもよく、各仮想オブジェクトは、いずれもそれぞれの固定の1つ又は複数のスキルを有してもよく、通常、異なる仮想オブジェクトは異なるスキルを有し、異なるスキルは異なる作用効果を奏する。例えば、仮想オブジェクトが攻撃スキルを解放して敵対仮想オブジェクトに当たると、敵対仮想オブジェクトに一定のダメージを与え、通常、敵対仮想オブジェクトの仮想ヘルスポイントを一部差し引くことで表現され、又例えば、仮想オブジェクトが治療スキルを解放して味方の仮想オブジェクトに当たると、味方の仮想オブジェクトに一定の治療効果を奏し、通常、味方の仮想オブジェクトの仮想ヘルスポイントが一部回復することで表現され、他の各種類のスキルは、いずれも該当する作用効果を奏することができ、ここでは一々列挙しない。
【0025】
本願の実施例では、2種類のスキル解放方式を提供し、異なるスキル解放方式は異なる操作方式に対応し、ユーザは、自分の使用習慣に応じて、スキル解放方式を任意に選択又は切り替えてスキルを解放して、自分のニーズを満たすことができ、スキル解放の正確性を大幅に向上させた。
【0026】
当該2種類のスキル解放方式は、それぞれ、能動的解放及びクイック解放である。ここで、当該能動的解放とはユーザ操作によりスキルの解放目標を決定することを意味し、クイック解放とは端末がスキルの解放目標を自由に決定することを意味する。
【0027】
一部の実施例では、2種類のスキル解放方式のために、対応する操作エリアを設定し、能動的解放に対応する操作エリアは第1操作エリアであり、クイック解放に対応する操作エリアは第2操作エリアである。当該第1操作エリアは、当該第2操作エリア外を囲んでいる。
【0028】
一部の実施例では、端末は、スキルの解放操作が終了時の操作位置と操作エリアとの関係に応じて、どのスキル解放方式であるかを決定する。例えば、解放操作が終了時に操作位置が第1操作エリア内に位置すると、能動的解放であり、第2操作エリア内に位置すると、クイック解放である。クイック解放により、ユーザが操作して解放目標を選択する必要がなくなり、ユーザ操作を大幅に簡素化させ、操作の複雑さを軽減し、利便性のある操作方式を提供する。能動的解放により、ユーザが解放目標を自由に選択することができ、より精確に解放目標に当たり、ユーザ操作のテクニック性を向上させ、ハイエンドプレイヤーの操作ニーズにより適合し、ユーザ体験を向上させた。
【0029】
以下では、スキルの解放に関連する内容について説明する。
【0030】
スキル解放は、スキルコントロールに対する操作により実現でき、当該スキルコントロールが含まれているエリアはスキルルーレットであってもよく、上記スキルの解放方式はスキルルーレットに対する操作により実現できる。一部の実施例では、当該第2操作エリアは当該スキルコントロールがあるエリアであってもよいし、当該スキルコントロールの中央位置との距離が距離閾値よりも小さいエリアであってもよく、当該第1操作エリアは第2操作エリア以外の1つのエリアであってもよい。スキルルーレットは、上記第1操作エリア及び第2操作エリアがともに構成したエリアである。
【0031】
例えば、
図1に示すように、当該仮想オブジェクトは、スキル1、スキル2、スキル3及びスキル4の複数のスキルを備えてもよく、スキル3に対して解放操作を行う際に、スキルルーレット101を表示することができ、当該スキルルーレット101は第1操作エリア102及び第2操作エリア103を含んでもよく、ここで、当該第2操作エリアにはスキル3のスキルコントロールが表示されており、ドラッグ操作を行うとき、スキルジョイスティック104がスキルルーレット内で移動するように制御することにより、操作位置の変更を実現する。当該スキルジョイスティック104は、当該スキルルーレット101にしか位置することができない。
【0032】
スキルの解放操作がスキルジョイスティックのドラッグにより実現されることを例とすると、ユーザは、スキルジョイスティック104に対してドラッグ操作を行うことができ、スキルジョイスティック104が第2操作エリアからドラッグ外さずに操作が終了された場合、クイック解放であると決定し、スキルジョイスティック104が第2操作エリアからドラッグ外されて第1操作エリアに入り、操作が終了された場合、能動的解放であると決定できる。つまり、当該スキルジョイスティック104に対するドラッグ操作の終了位置が当該第2操作エリア内にある場合、スキルをクイック解放し、当該スキルジョイスティック104に対するドラッグ操作の終了位置が当該第2操作エリア以外にあり、かつ、第1操作エリアに位置する場合、スキルを能動的に解放する。
【0033】
一部の実施例では、端末は、グラフィカルユーザインターフェースに解放キャンセルコントロールを表示し、当該解放キャンセルコントロールは、当該スキルの解放をキャンセルするために用いられる。選択可能に、端末は、スキルに対するトリガ操作が終了し、且つ、当該トリガ操作の終了位置が、当該解放キャンセルコントロールがある位置に位置することに応答して、当該スキルの解放をキャンセルする。解放キャンセルコントロールにより、キャンセルスキル解放のキャンセル方式を提供し、スキル解放操作を豊富にし、ユーザにより多くのスキル解放機能を提供し、ユーザ体験を向上させた。例えば、
図1に示すように、インターフェースには、当該解放キャンセルコントロール105が表示されていてもよい。ユーザが、解放操作をしながら当該解放キャンセルコントロール105まで移動した場合、今回のスキル解放をキャンセルすることができる。
【0034】
仮想オブジェクトのスキルは、異なるタイプのスキルを含み、例えば、一部のスキルは目標型スキルであり、一部のスキルは位置型スキルであり、一部のスキルは方向型スキルである。例えば、
図2に示すように、当該スキルは目標型スキルであり、解放する目標仮想オブジェクトを選定する必要がある。
図3に示すように、当該スキルは位置型スキルであり、解放位置を選定する必要がある。
図4に示すように、当該スキルは方向型スキルであり、解放方向を選定する必要がある。
【0035】
以下、本願に係るシステムアーキテクチャについて紹介する。
【0036】
図5は、本願の実施例にて提供される仮想オブジェクトの制御方法の実施環境の概略図である。
図5を参照すると、当該実施環境は、第1端末120、サーバ140及び第2端末160を含む。
【0037】
第1端末120には、仮想シーンをサポートするアプリケーションプログラムがインストールされて実行されている。当該アプリケーションプログラムは、マルチプレイヤーオンラインバトルアリーナゲーム(Multiplayer Online Battle Arena games、MOBA)、仮想現実アプリケーションプログラム、2次元又は3次元マッププログラム、シミュレーションプログラムのうちのいずれか1つであってもよい。無論、当該アプリケーションプログラムは、マルチプレイヤーシューティングバトルサバイバルゲームなどの他のプログラムであってもよく、本願の実施例ではこれに対して限定しない。第1端末120は第1ユーザが使用する端末であってもよく、第1ユーザは第1端末120を使用して仮想シーン内に位置する第1仮想オブジェクトが活動するように操作し、当該活動は、歩き、走り、体の姿勢の調整、一般攻撃、スキル解放のうちの少なくとも1つを含むが、これらに限定されない。無論、当該活動は、さらに、他の項目、例えばシューティング、投擲などを含んでもよく、本願の実施例ではこれに対して具体的に限定しない。概略的に、第1仮想オブジェクトは、シミュレーション人物キャラクタ又はアニメーション人物キャラクタなどの第1仮想人物である。概略的に、第1仮想オブジェクトは、シミュレーションサル又は他の動物などの第1仮想動物であってもよい。
【0038】
第1端末120及び第2端末160は、無線ネットワーク又は有線ネットワークを介してサーバ140に接続される。
【0039】
サーバ140は、1台のサーバ、複数台のサーバ、クラウドコンピューティングプラットフォーム又は仮想化センタのうちの少なくとも1つを含んでもよい。サーバ140は、仮想シーンをサポートするアプリケーションプログラムにバックグラウンドサービスを提供するために用いられる。選択可能に、サーバ140が主要計算作業を担い、第1端末120及び第2端末160が副計算作業を担うか、又はサーバ140が副計算作業を担い、第1端末120及び第2端末160が主要計算作業を担うか、又はサーバ140、第1端末120及び第2端末160の三者が、分散コンピューティングアーキテクチャを用いて協調計算を行う。
【0040】
ここで、サーバ140は、独立の物理サーバであってもよいし、複数の物理サーバからなるサーバクラスタ又は分散システムであってもよいし、さらに、クラウドサービス、クラウドデータベース、クラウドコンピューティング、クラウド関数、クラウドストレージ、ネットワークサービス、クラウド通信、ミドルウェアサービス、ドメインネームサービス、セキュリティサービス、コンテンツ配信ネットワーク(Content Distribute Network、CDN)、ビッグデータ及び人工知能プラットフォームなどのインフラクラウドコンピューティングサービスを提供するクラウドサーバであってもよい。第1端末120及び第2端末160はスマートフォン、タブレットコンピュータ、ノートブックコンピュータ、デスクトップコンピュータ、スマートスピーカー、スマートウォッチなどであり得るが、これらに限定されない。第1端末120や第2端末160は、有線又は無線通信方式によりサーバに直接又は間接的に接続されることができ、本願の実施例では、これに対して限定しない。
【0041】
概略的に、第1端末120及び第2端末160は、生成されたデータをサーバ140に送信することができ、サーバ140は、それ自体によって生成されるデータを、端末によって生成されたデータと検証し、いずれかの端末との検証結果が、データが一致しないこと指示する場合、サーバによって生成されるデータをいずれかの端末に送信することができ、当該いずれかの端末はサーバによって生成されるデータに準ずる。
【0042】
一部の実施例では、第1端末120及び第2端末160は、ユーザのトリガ操作に応じて、各フレームの仮想シーンを決定して、仮想シーンをサーバ140に送信してもよいし、ユーザのトリガ操作情報をサーバ140に送信してもよく、サーバ140は、当該トリガ操作情報及び仮想シーンを受信して、当該トリガ操作に応じて、仮想シーンを決定することができ、端末によってアップロードされる仮想シーンと比較して、一致すれば、後続の計算を続行でき、一致しなければ、それ自体が決定した仮想シーンを各端末に送信して同期することができる。具体的可能な一実施例では、サーバ140は、さらに、当該トリガ操作情報に応じて、各端末の次のフレームの仮想シーンを決定することができ、次のフレームの仮想シーンを各端末に送信することにより、該当するステップを各端末に実行させ、サーバ140によって決定された次のフレームの仮想シーンと一致する仮想シーンを取得する。
【0043】
第2端末160には、仮想シーンをサポートするアプリケーションプログラムがインストールされて実行されている。当該アプリケーションプログラムは、MOBA、仮想現実アプリケーションプログラム、2次元又は3次元マッププログラム、シミュレーションプログラムのうちのいずれか1つであってもよい。無論、当該アプリケーションプログラムは、さらに、マルチプレイヤーシューティングバトルサバイバルゲームなどの他のプログラムであってもよく、本願の実施例ではこれに対して限定しない。第2端末160は、第2ユーザが使用する端末であってもよいし、第2ユーザは、第2端末160を使用して仮想シーン内に位置する第2仮想オブジェクトが活動するように操作し、当該活動は、歩き、走り、体の姿勢の調整、一般攻撃、スキル解放のうちの少なくとも1つを含むが、これらに限定されない。無論、当該活動は、さらに、例えばシューティング、投擲などの他の項目を含んでもよく、本願の実施例ではこれに対して具体的に限定しない。概略的に、第2仮想オブジェクトは、シミュレーション人物キャラクタ又はアニメーション人物キャラクタなどの第2仮想人物である。概略的に、第2仮想オブジェクトは、シミュレーションサル又は他の動物などの第2仮想動物であってもよい。
【0044】
選択可能に、第1端末120が制御する第1仮想オブジェクト及び第2端末160が制御する第2仮想オブジェクトは、同一の仮想シーンに位置し、このとき、第1仮想オブジェクトは仮想シーンにおいて第2仮想オブジェクトと相互作用することができる。一部の実施例では、第1仮想オブジェクト及び第2仮想オブジェクトは敵対関係であってもよいし、例えば、第1仮想オブジェクトと第2仮想オブジェクトは異なるチーム、組織又は陣営に属してもよいし、敵対関係の仮想オブジェクト間は、仮想シーンにおけるいずれかの位置でスキルを解放することにより対戦方式の相互作用を行うことができる。
【0045】
別の一部の実施例では、当該第2仮想オブジェクトは、当該第1仮想オブジェクトとチームメート関係であってもよく、例えば、第1仮想人物及び第2仮想人物は同一のチーム、同一の組織、同一の陣営に属してもよいし、友人関係を有するか、又は一時的な通信権限を有してもよい。
【0046】
選択可能に、第1端末120及び第2端末160にインストールされているアプリケーションプログラムは同じであってもよいし、端末にインストールされているアプリケーションプログラムは異なる操作システムプラットホームの同一タイプのアプリケーションプログラムであってもよい。第1端末120は、一般的に複数の端末のうちの1つであることを意味でき、第2端末160は、一般的に複数の端末のうちの1つであることを意味し、本実施例では、第1端末120及び第2端末160のみを例に挙げて説明する。第1端末120及び第2端末160の機器タイプは同じであるか又は異なり、当該機器タイプは、スマートフォン、タブレット、電子書籍リーダー、アニメーションの専門家グループレイヤー3(Moving Picture Experts Group Audio Layer III、MP3)プレイヤー、アニメーションの専門家グループレイヤー4(Moving Picture Experts Group Audio Layer IV、MP4)プレイヤー、ラップトップ携帯型コンピュータ及びデスクトップ型コンピュータのうちの少なくとも1つを含む。例えば、第1端末120及び第2端末160はスマートフォンであってもよいし、他の手持ち携帯型ゲーム機器であってもよい。以下の実施例では、端末がスマートフォンを含むことを例に挙げて説明する。
【0047】
当業者であれば、上記端末の数がより多くてもより少なくてもよいことを理解できるだろ。例えば、上記端末は1つだけであってもよいし、上記端末は数十個又は数百個、又はより多くの数であってもよい。本願の実施例では、端末の数及び機器タイプについて限定しない。
【0048】
図6は、本願の実施例にて提供される仮想オブジェクトの制御方法のフローチャートであり、当該方法は電子機器に適用され、電子機器は端末であってもよいし、サーバであってもよく、本願の実施例ではこれに対して限定せず、本実施例では、端末に適用されることを例として説明する。
図6を参照すると、当該方法はステップ601~ステップ603を含み得る。
【0049】
601、端末は、マップコントロールが表示されている第1仮想シーンを表示し、マップコントロールに対する第1トリガ操作に応答して、第1操作位置に対応する第2仮想シーンを表示し、第1トリガ操作は前記第1操作位置に作用する。
【0050】
上記過程において、端末は、マップコントロールに対する第1トリガ操作に応答して、当該第1トリガ操作の第1操作位置に応じて、グラフィカルユーザインターフェースに表示されている仮想シーン(即ち第1仮想シーン)を当該第1操作位置に対応する目標仮想シーン(即ち第2仮想シーン)に切り替える。
【0051】
ここで、当該マップコントロールは、仮想シーンのマップを表示するために用いられ、マップコントロールを操作することにより、現在表示されている仮想シーンを変更する。なお、マップコントロールを操作していないと、現在一般的に表示される仮想シーンは現在制御している第1仮想オブジェクトを中心とする部分仮想シーンであり、即ち第1仮想シーンである。マップコントロール上のある位置点を操作すると、仮想カメラの位置を調整して、他の部分仮想シーンを表示することができる。
【0052】
ここで、当該第1トリガ操作は、クリック操作又はスライド操作であり、本願の実施例では、これに対して限定しない。例えば、第1トリガ操作がクリック操作であることを例とする場合、ユーザがマップコントロールのある位置をクリックすると、当該位置が第1操作位置であり、第2仮想シーンが当該第1操作位置を中心とする仮想シーンであり、又は当該第2仮想シーンは当該第1操作位置を開始点とする仮想シーンであり、本願の実施例では、これに対して限定しない。当該第1トリガ操作がドラッグ操作であることを例とする場合、ユーザがマップコントロール上でスライドでき、こうすると、表示されている仮想シーンに対するより繊細、より正確な調整を容易にするために、スライド時の操作位置に応じて、表示されている仮想シーンをリアルタイムで更新することができる。
【0053】
602、端末は、目標スキルに対する解放操作に応答して、第2操作位置に基づいて、前記第2仮想シーン内で対応するスキル解放目標を決定し、前記解放操作は第2操作位置に対応する。
【0054】
上記過程において、端末は、目標スキルに対する解放操作に応答して、当該解放操作の第2操作位置に応じて、当該第2操作位置の当該目標仮想シーンにおける対応するスキル解放目標を決定する。
【0055】
ここで、当該目標スキルとは、仮想シーン内の仮想オブジェクトの能力である。スキルの解放効果の観点から見ると、当該目標スキルは、動作スキルであってもよいし、属性変更スキルであってもよく、例えば、ある仮想オブジェクトは3つのスキルを持っていてもよく、ここで、1つのスキルは前方へ疾走する動作スキルであり、別のスキルは自分の移動速度を向上させる属性バフ(buff)スキルであり、また別のスキルは附近にあるチームメートが受ける攻撃を弱める属性デバフ(Debuff)スキルである。スキルの解放タイプの観点から見ると、当該目標スキルは位置型スキル、方向型スキル又は目標型スキルのうちの1つであり得る。
【0056】
一部の実施例では、当該解放操作はクリック操作、又はドラッグ操作であり、本願の実施例では、これに対して限定しない。当該2種類のスキル解放方式に対応して、解放操作がクリック操作である場合、クイック解放であり、解放操作がドラッグ操作である場合、解放操作が終了時の操作位置に応じて、どの解放方式であるかを決定することをできる。
【0057】
本願の実施例では、上記ステップ601で、すでに現在表示されている第1仮想シーンをマップコントロールで、選定した第2仮想シーンに切り替え、ユーザが当該第2仮想シーン内のある位置でスキルを解放したい場合、又は第2仮想シーン内のある仮想オブジェクトにスキルを解放する場合、又は当該第2仮想シーン内の仮想オブジェクトの位置に基づいてスキル解放方向を決定する場合、スキルの解放操作を行うことができる。端末が当該解放操作を検出すると、当該解放操作に応答して、第2操作位置に応じてスキル解放目標を決定する。ここで、当該スキル解放目標がスキル解放位置、目標仮想オブジェクト又はスキル解放方向のうちの1つであり、即ち、当該スキル解放目標が当該第2仮想シーンにおける目標仮想オブジェクト、位置、又は位置と第1仮想オブジェクトとで構成される方向である。
【0058】
グラフィカルユーザインターフェースの表示内容を第1操作位置に対応する第2仮想シーンに切り替え、こうすると、スキル解放目標の選択範囲は、仮想オブジェクトを中心とする仮想シーンに限定されなくてもよく、解放操作の自由度がより高く、かつ、現在表示されている仮想シーンにおいて大まかに推定するのではなく、スキル解放時に解放したい位置の状況に応じて精確に選択することができ、仮想オブジェクトの制御方法の精度及び正確性を向上させた。
【0059】
603、端末は、第1仮想オブジェクトが当該スキル解放目標に従って当該目標スキルを解放するように制御する。
【0060】
端末がスキル解放目標を決定すると、第1仮想オブジェクトが当該スキル解放目標に従ってスキルを解放するように制御することができる。一部の実施例では、当該スキルの解放過程は、さらに、端末がグラフィカルユーザインターフェースに、当該目標仮想オブジェクトに向いて当該スキルを解放する時に生成される解放効果を表示することであってもよく、例えば、当該スキル解放目標は目標仮想オブジェクトであり、第1仮想オブジェクトと当該目標仮想オブジェクトとの間にスキルの解放過程の効果を表示し、当該目標仮想オブジェクトの体に解放後の効果を表示してもよい。又例えば、当該スキル解放目標が解放位置である場合、当該解放位置に目標アニメーションを表示して、解放効果を具現化することができ、当該解放位置に第2仮想オブジェクトが含まれている場合、当該第2仮想オブジェクトの属性値が受ける影響を表示することができる。又例えば、当該スキル解放目標が解放方向である場合、当該解放方向に沿ってスキルの解放過程の効果を表示することができる。
【0061】
本願の実施例は、マップコントロールに対する第1トリガ操作の第1操作位置に応じて、グラフィカルユーザインターフェースに当該第1操作位置に対応する第2仮想シーンを表示し、この場合、目標スキルに対する解放操作に応答して、解放操作に対応する操作位置に応じて、当該目標スキルの現在表示されている第2仮想シーン内で対応するスキル解放目標を決定することにより、スキル解放を行い、マップコントロールでスキル解放を制御する上記方式において、マップコントロールに対して第1トリガ操作を行うとき、該当する第2仮想シーンを表示することができ、こうすると、スキル解放目標の選択範囲は、仮想オブジェクトを中心とする仮想シーンに限定されなくてもよく、解放操作の自由度がより高く、かつ、現在表示されている仮想シーンにおいて大まかに推定するのではなく、スキル解放時に解放したい位置の状況に応じて精確に選択することができ、仮想オブジェクトの制御方法の精度及び正確性を向上させた。
【0062】
図7は、本願の実施例にて提供される仮想オブジェクトの制御方法のフローチャートであり、
図7を参照すると、当該方法は、ステップ701~ステップ704を含み得る。
【0063】
701、端末は、マップコントロールに対する第1トリガ操作に応答して、当該第1トリガ操作の第1操作位置及び当該マップコントロールにおける表示情報と仮想シーンとの対応関係に応じて、当該第1操作位置に対応する第2仮想シーンを取得する。
【0064】
ユーザがマップコントロールで現在表示されている仮想シーンを変更したい場合、マップコントロールに対して第1トリガ操作を行い、端末は当該第1トリガ操作の第1操作位置に応じて、仮想シーンを切り替えることができ、それにより、仮想シーンに対する観察視覚の調整を実現し、視野画面の調整を実現できる。
【0065】
一部の実施例では、当該マップコントロールには全体的な仮想シーンの簡略情報が表示されており、例えば、全体的な仮想シーンのサムネイルが表示されている。一部の実施例では、当該マップコントロールにおいて仮想シーン内の一部又は全ての仮想オブジェクトの位置に応じて、一部又は全ての仮想オブジェクトの標識情報を表示し、例えば、当該標識情報はアバタである。
【0066】
ここで、当該マップコントロールにおいて表示情報と仮想シーンは対応関係を有する。例えば、具体的な例示において、当該マップコントロールに表示されている仮想シーンのサムネイルは2Dの情報であり、仮想シーンは3Dの仮想スペースであり、当該サムネイルは、仮想シーンの鳥瞰図を一定の比率に従って縮小後の画像であるか、又は縮小後の画像の一部の重要な情報を含む画像である。
【0067】
例えば、
図8に示すように、当該マップコントロールにおける表示情報と仮想シーンとの対応関係について、ここではマップコントロール(ミニマップとも呼んでもよい)と仮想シーンの鳥瞰図(2D仮想シーン)との間の対応関係を提供し、3次元座標において、y軸を無視してもよく、マップコントロールにおいて、表示情報のx軸とz軸はそれぞれ2D仮想シーンのx軸及びz軸にマッピングされる。
【0068】
具体的な例示において、全体的な仮想シーンが正方形であると仮定し、MapLength及びSceneLengthを使用してミニマップの辺長及びシーンの辺長をそれぞれ表示する。ここで、MimiMapStartPosは、ミニマップの左下隅、即ちミニマップの開始位置を表し、一般に、ミニマップのUI(User Interface、ユーザインターフェース)を初期化する際に、当該パラメータを設定する。SceneStartPosは、仮想シーンの左下隅、即ち仮想シーンの開始位置を表示し、一般に、マップ編集時に当該パラメータを設定できる。第1操作位置をドラッグ位置(DragPos)として命名し、DragPosのミニマップ(MiniMap)における位置が目標レンズ位置(AimCameraPos)の仮想シーン(Scene)における位置に相当することを分かり、即ち、下記の式1で表示できる。
【0069】
「式1」
(DragPos-MiniMapStartPos)/MapLength=(AimCameraPos-SceneStartPos)/SceneLength
【0070】
上記式1により、下記式2を取得することができ、式2によりミニマップにおいて位置DragPosの仮想シーン内で対応する位置AimCameraPosを算出することができる。
【0071】
「式2」
AimCameraPos=(DragPos-MiniMapStartPos)*SceneLength/MapLength+SceneStartPos
【0072】
上記式1及び式2において、MaxAimRadiusはスキルボタンの照準できる最大範囲であり、AimCameraPosは第2仮想シーンのスクーリン中心点のシーン位置であり、DragPosはミニマップにおけるドラッグ位置であり、MiniMapStartPosはミニマップの開始位置であり、SceneLengthはシーンの長さ、即ちシーンの辺長であり、MapLengthはミニマップの長さ、即ちミニマップの辺長であり、SceneStartPosはシーンの開始位置である。ここで、*は乗算を表す。
【0073】
ユーザがマップコントロールを操作していない場合、AimCameraPosをInValidAimCameraPosに割り当て、InValidAimCameraPosは、現在、ミニマップが押されていないことを意味する。
【0074】
一部の実施例では、上記表示情報は、ある位置又はあるエリアである。対応して、ステップ701において第2仮想シーンを決定する過程には2つの実現方法が含まれる。
【0075】
実現方法1、端末は、前記第1トリガ操作の第1操作位置に応じて、前記マップコントロールにおいて前記第1操作位置を中心とする、サイズが第1目標サイズである目標エリアを決定し、前記マップコントロールにおける表示情報と仮想シーンとの対応関係に応じて、前記目標エリアの仮想シーン内で対応する第2仮想シーンを決定する。
【0076】
上記実現方法1において、端末は、当該第1トリガ操作の第1操作位置に応じて、当該マップコントロールにおいて当該第1操作位置を中心とする、サイズが第1目標サイズである目標エリアを取得し、当該マップコントロールにおける表示情報と仮想シーンとの対応関係に応じて、当該目標エリアに対応する目標仮想シーン、即ち第2仮想シーンを取得する。
【0077】
ここで、当該目標エリアは長方形エリア又は他の形状のエリアであってもよく、本願の実施例では、これに対して限定しない。例えば、
図9に示すように、当該目標エリア901は当該マップコントロールにおける第1操作位置を中心とするエリアである。
【0078】
実現方法2、端末は、前記第1操作位置及び前記マップコントロールにおける表示情報と仮想シーンとの対応関係に応じて、前記第1操作位置の前記仮想シーンにおける対応する目標位置を決定し、前記目標位置を中心とする、サイズが第2目標サイズである第2仮想シーンを決定する。
【0079】
端末は、当該第1操作位置及び当該マップコントロールにおける表示情報と仮想シーンとの対応関係に応じて、当該第1操作位置の仮想シーンにおける対応する位置を取得し、当該対応する位置を中心とする、サイズが第2目標サイズである目標仮想シーン、即ち第2仮想シーンを取得する。
【0080】
実現方法2において、ユーザが、マップコントロールに対して第1トリガ操作を行うとき、当該第1トリガ操作の第1操作位置が、第2仮想シーンを取得する根拠である。ユーザは、当該第1操作位置を変更することにより、第2仮想シーンを変更することができる。
【0081】
一部の実施例では、当該第2仮想シーンは、第1操作位置の仮想シーンにおける対応する位置を中心とする仮想シーンである。したがって、端末は上記対応関係を参照して、第1操作位置の仮想シーンにおける対応する位置を決定でき、それにより、第2仮想シーンがどの位置を中心であるかを分析し、第2仮想シーンの表示視野(即ちサイズ)と結合すると、当該第2仮想シーンを取得することができる。
【0082】
具体的な例示において、端末は、マップコントロールにおける表示情報と仮想シーンとの対応関係に応じて、2Dの第1操作位置を仮想シーンにおける3D位置に変換する。一般に、当該仮想シーンを表示する当該過程は、通常、仮想カメラの観察により、あるカメラである実環境を観察するときの観察視野をシミュレートすることを実現する。より良い3D効果を達成するために、当該仮想カメラは仮想シーンの地面の上方のある高さで、ある斜めの視野角で仮想シーンを観察するので、端末は、当該第1操作位置の仮想シーンにおける対応する位置、仮想カメラの高さ及び目標角度に応じて、仮想カメラの位置を取得することができ、当該仮想カメラの位置により、全体的な仮想シーンから当該第2仮想シーンを取得する。
【0083】
例えば、
図10に示すように、上記方式により、第1操作位置DragPosに対応する仮想シーンにおける位置AimCameraPosを決定することができ、さらに、AimCameraPosをActorPosに割り当て、ActorPosで仮想カメラ(レンズと呼んでもよい)の位置を計算することができる。一部の実施例では、端末はマップコントロールに対する第1トリガ操作があるか否かを判断でき、即ち、AimCameraPosがInValidAimCameraPosであるか否かを判断し、はいであれば、レンズは第1仮想オブジェクトを追跡し、第1仮想オブジェクトの位置をActorPosに割り当てることができる。いいえであれば、レンズはミニマップドラッグのレンズ位置を追跡し、即ち、AimCameraPosを取得して、AimCameraPosをActorPosに割り当てることができる。
【0084】
ここで、ActorPosを介して仮想カメラの位置を取得することは、下記式3から式5により実現できる。
【0085】
「式3」
cameraPos.x=ActorPos.x
「式4」
cameraPos.y=ActorPos.y+height*cos(angle)
「式5」
cameraPos.z=ActorPos.z-height*sin(angle)
【0086】
ここで、cameraPos.x、cameraPos.y、cameraPos.zは、それぞれ仮想カメラのx、y、z軸の座標であり、ActorPos.x、ActorPos.y、ActorPos.zはそれぞれActorPosのx、y、z軸の座標であり、heightは仮想カメラの高さ、angleは仮想カメラの斜め角度である。cos()は余弦関数であり、sin()は正弦関数である。
【0087】
702、端末は、グラフィカルユーザインターフェースに表示されている第1仮想シーンを当該第2仮想シーンに切り替える。
【0088】
端末は、第2仮想シーンを取得した後、グラフィカルユーザインターフェースに当該第2仮想シーンを表示し、こうすると、視野を適正に調整したとき、ユーザがスキルの解放操作をより精確に行うことができる。
【0089】
上記ステップ701及びステップ702は、マップコントロールに対する第1トリガ操作に応答して、当該第1トリガ操作の第1操作位置に応じて、グラフィカルユーザインターフェースに表示されている第1仮想シーンを当該第1操作位置に対応する第2仮想シーンに切り替える過程であり、例えば、
図9及び
図11に示すように、端末は第1仮想オブジェクトを中心とする仮想シーン900を表示し、ユーザがマップコントロールに対して第1トリガ操作を行った場合、端末は対応する第2仮想シーンを取得して、仮想シーンを切り替え、切替後は
図11に示すように、第1仮想オブジェクトを中心とする仮想シーンではなく、第2仮想シーン1100であってもよい。
【0090】
703、端末は、目標スキルに対する解放操作に応答して、第2操作位置に基づいて、前記第2仮想シーン内で対応するスキル解放目標を決定し、前記解放操作は第2操作位置に対応する。
【0091】
当該ステップ703において、端末は、目標スキルに対する解放操作に応答して、当該解放操作に対応する第2操作位置に応じて、当該第2操作位置の当該第2仮想シーンにおける対応するスキル解放目標を決定する。
【0092】
当該解放操作の第2操作位置が異なる場合、当該スキルの解放方式も異なる可能性があり、従って、第2操作位置に応じてスキル解放目標を決定する過程もまた異なる。
【0093】
一部の実施例では、当該解放操作はスキルコントロールに対する第2トリガ操作である。例えば、当該解放操作が能動的解放である場合、端末は目標スキルのスキルコントロールに対する第2トリガ操作に応答して、当該第2トリガ操作の第2操作位置と当該スキルコントロールとの間の位置関係に応じて、当該第2操作位置の当該第2仮想シーンにおける対応するスキル解放目標を決定する。
【0094】
一部の実施例では、上記解放操作の持続中に、ユーザは、トリガ操作の操作位置を変更することにより、スキル解放目標を変更することができ、当該目標スキルの最終的なスキル解放目標は解放操作の終了位置によって決定される。例えば、端末は、目標スキルに対する解放操作が終了し、当該解放操作の終了位置を当該第2操作位置として取得し、かつ、当該第2操作位置は第1操作エリア内にあることに応答して、当該第2操作位置と当該スキルコントロールとの間の位置関係に応じて、当該第2操作位置の当該第2仮想シーンにおける対応するスキル解放目標を決定する当該ステップを実行する。
【0095】
当該能動的解放方式において、当該スキルコントロールの操作エリアと仮想シーンとの間には対応関係があり、当該操作エリアにおけるある位置の操作は仮想シーンにおける対応する位置にマッピングされ、当該操作エリアにおける位置関係は、仮想シーンにおける位置関係としてマッピングされてもよい。
【0096】
一部の実施例では、当該スキル解放目標はスキル解放位置、目標仮想オブジェクト又はスキル解放方向のうちのいずれか1つであり、上記ステップ703において、第2操作位置に応じてスキル解放目標を決定する過程は、下記ステップ1からステップ3により実現される。
【0097】
ステップ1、端末は、当該第2操作位置と当該スキルコントロールとの間の位置関係を取得する。
【0098】
一部の実施例では、当該第2操作位置とスキルコントロールの中心位置により当該位置関係を取得する。例えば、当該位置関係は変位を指し、方向ベクトルとして表され、当該方向ベクトルは、スキルコントロールの中心位置は第2操作位置を向く。
図12に示すように、スキルコントロールの中心位置がAで、第2操作位置がBであると仮定すると、当該位置関係は、AからBを向くベクトルB-Aで表現される。
【0099】
ステップ2、端末は、当該スキルコントロールの操作エリアと仮想シーンとの間の変換関係に応じて、当該第2操作位置と当該スキルコントロールとの間の位置関係を変換して、スキル解放位置と当該第2仮想シーンの中心位置との間の目標位置関係を取得する。
【0100】
当該スキルの操作エリアと仮想シーンとの間には、一定の変換関係があり、当該操作エリアは2Dのエリアであり、仮想シーンは3Dの仮想スペースであり、且つ、当該操作エリアのサイズは仮想シーンのサイズと異なるので、両者間には一定のズーム倍率のマッピングがさらに含まれる。
【0101】
以下では、
図13に基づいて当該変換関係について説明するが、「ミニマップ視野の中心」から点「A」までの線分がXであり、「ミニマップ視野の中心」から点「A」までの方向上でスクーリン辺縁まで延長した線分がYであり、第2操作位置からスキルコントロールの中心位置までの線分がZであると仮定すると、「ミニマップ視野の中心」から点「A」までの方向は、ルーレットの中心からスキルジョイスティックまでの方向と同じであり、即ち「XはZに平行する」ことである。X線分の長さとY線分の長さとの比率は、Z線分の長さとルーレットの半径との比率に等しく、即ちX=(Z/ルーレットの半径)*Yである。方向及び長さに基づいて、点「A」の座標を取得できる。続いてスキルインジケータをルールに従って点「A」位置に表示する。
【0102】
図14に示すように、仮想カメラで仮想シーンを観察することにより観察されるエリアは、実は台形エリアである。当該操作エリアが円形エリアであり、当該変換関係は、円形エリアを楕円形エリアに変換するためのマッピング関係、又は円形エリアを台形エリアに変換するためのマッピング関係であり、本願の実施例では、具体的にどの方式を採用するかについて限定しない。
【0103】
一部の実施例では、マッピング関係オプションを提供し、ユーザが自分のニーズに応じてマッピング関係オプションから使用するマッピング関係を選択できる。端末は、当該マッピング関係オプションに設定された目標マッピング関係に応じて上記ステップ2を行う。
【0104】
一部の実施例では、端末は、当該第2仮想シーンの中心位置に応じて、当該第2仮想シーンの辺縁位置を決定し、当該第2仮想シーンの中心位置、当該第2仮想シーンの辺縁位置、及び当該操作エリアのサイズに応じて、当該第2操作位置と当該スキルコントロールとの間の位置関係に対してマッピングを行う。
【0105】
ステップ3、端末は、当該第2仮想シーンの中心位置及び当該目標位置関係に応じて、当該解放操作の第2操作位置の当該第2仮想シーンにおける対応するスキル解放位置を決定し、当該スキル解放位置を当該スキル解放目標として決定するか、又は当該スキル解放位置上の仮想オブジェクトを目標仮想オブジェクトとして決定するか、又は当該スキル解放位置の現在制御している第1仮想オブジェクトに対する方向をスキル解放方向として決定する。
【0106】
目標位置関係を決定すると、当該目標位置関係は、スキル解放位置の第2仮想シーンの中心位置に対する位置関係であり、それにより当該中心位置及び当該目標位置関係に応じて、当該スキル解放位置を取得することができる。
【0107】
以下では、上記の2つの変換関係において、スキル解放位置を決定する過程について説明し、円形エリアを楕円形エリアにマッピングする方式において、
図15に示すように、当該操作エリアをスキルドラッグ範囲と呼んでもよく、
図12に示すように、第1ステップでは、(B-A)でUIベクトルをシーンにおけるベクトルに変換し、スクーリン中心点Taに(B-A)ベクトルを加えてTb点を取得してから、2dから3dに変換する方式によりUI上のTa、Tb点をシーンのDa、Db点に変換し、
図16に示すとおりである。さらに、仮想シーンにおける対応する方向ベクトルAimDirを取得することができ、AimDir=Normalize(Db-Da)である。ここで、Normalizeは正規化関数である。
【0108】
第2ステップでは、スクーリン中心点のシーン位置(AimCameraPos)からスクーリン辺縁までの距離を計算することができる。ここでは、スキル解放位置をスクーリン辺縁にあるUIまでドラッグすることを回避するために、上記距離は境界値を除いた距離であってもよい。具体的には、4つの値を設定して、境界値を除いたスクーリン辺縁までの距離をそれぞれ表すことができ、例えば、当該4つの値は、それぞれpaddingLeft(左マージン)、paddingRight(右マージン)、paddingTop(上マージン)、paddingBot(下マージン)であり、それぞれシーンにおけるスクーリン範囲の左右上下の4辺からAimCameraPos(スクーリン中心点のシーン位置)までの距離を表す。4つの値の取得過程は同様であり、ここでは、paddingTopの計算を例として説明する。まず、AimCameraPosをUICenterPos(UI中心位置)に変換し、即ち3Dの座標点を2D座標点に変換し、続いてUICenterPosにスクーリン高さの半分を加えてから、除く必要のある境界値を減算してUITopPosを取得し、続いてUITopPosを3d仮想シーンにおける位置SceneTopPosに変換し、最後に、(SceneTopPos-AimCameraPos).zを使用すると、paddingTopを取得することができ、他の境界値も同様に取得する。
【0109】
第3ステップにおいて、式6及び式7により、上記ステップで計算して取得したAimCameraPos、方向ベクトルAimDir及び各方向の最大値に応じて、スキル解放位置FocusPointを計算する。
【0110】
「式6」
FocusPoint.x=AimCameraPos.x+AimDir.x*(|B-A|/AimMaxRadius)*(AimDir.x<0?paddingLeft:paddingRight)
「式7」
FocusPoint.z=AimCameraPos.z+AimDir.z*(|B-A|/AimMaxRadius)*(AimDir.y<0?paddingBot:paddingTop)
【0111】
上記式6及び7において、MaxAimRadiusはスキルボタンの照準する最大範囲であり、|(B-A)|はスキルボタンのドラッグ距離を表し、FocusPointはスキル解放位置であり、AimCameraPosは第2仮想シーンにおけるスクーリン中心点のシーン位置であり、BorderLengthはスクーリン中心点とスクーリン辺縁との間の境界の長さであり、AimDirはベクトル(B-A)の仮想シーンにおける対応する方向ベクトルである。(AimDir.x<0?paddingLeft:paddingRight)は、AimDir.x<0を満たす場合、paddingLeftを取り、AimDir.x<0を満たさない場合、paddingRightを取ることを表すために用いられる。
【0112】
円形エリアを台形エリアにマッピングする方式において、
図17に示すように、まず、台形範囲にある4つの頂点のシーンにおける位置を計算し、それぞれLTは左上点であり、LBは左下点であり、RTは右上点であり、RBは右下点である。
【0113】
続いて、AimDirの値に応じて、AimCameraPosのAimDirに沿う台形との交点を判断し、ここでは比較的簡単であり、例えば、AimDir.x>0&&AimDir.y>0とすると、AimCameraPosがAimDirを向く半直線と(RT-LT)線分との交点を判断してから、この半直線を用いて(RT-RB)との交点を見つけて、この2つの交点のうちAimCameraPosまでの距離が近い一点が計算に必要な点であり、線分と線分との交点公式で決定することができ、その後、下記式8でスキル解放位置を計算する。
【0114】
「式8」
FocusPoint=AimCameraPos+(|(B-A)|/MaxAimRadius)*BorderLength*AimDir
【0115】
上記式8において、MaxAimRadiusはスキルボタンの照準する最大範囲であり、|(B-A)|はスキルボタンドラッグの距離を表し、FocusPointはスキル解放位置であり、AimCameraPosは第2仮想シーンにおけるスクーリン中心点のシーン位置であり、BorderLengthはスクーリン中心点とスクーリン辺縁との間の境界の長さであり、AimDirはベクトル(B-A)の仮想シーンにおける対応する方向ベクトルである。
【0116】
上記過程は、能動的解放方式においてスキル解放位置をどのように決定する過程であり、クイック解放である場合、端末は目標スキルに対する解放操作が終了し、かつ、当該解放操作が終了時の第2操作位置は第2操作エリア内にあることに応答して、当該第2仮想シーンにおける少なくとも1つの第2仮想オブジェクトの情報に応じて、当該少なくとも1つの第2仮想オブジェクトから目標仮想オブジェクトを決定し、当該目標仮想オブジェクトを当該スキル解放目標として決定するか、又は当該目標仮想オブジェクトがある位置を当該スキル解放目標として決定するか、又は当該目標仮想オブジェクトの第1仮想オブジェクトに対する方向を当該スキル解放目標として決定し、当該第1操作エリアは、当該第2操作エリア外を囲んでいる。
【0117】
ここで、当該第2仮想シーンにおける少なくとも1つの第2仮想オブジェクトの情報に応じて、当該少なくとも1つの第2仮想オブジェクトから目標仮想オブジェクトを決定する過程が参照できる情報、例えば仮想ヘルスポイント又は第1仮想オブジェクトとの間の距離などは異なってもよく、本願の実施例ではこれに対して具体的に限定しない。一部の実施例では、端末は、仮想シーンにおける少なくとも1つの仮想オブジェクトの情報に応じて、当該スキルの候補解放目標情報を決定する過程は、解放目標の決定ルールにより実現でき、当該解放目標の決定ルールは、解放目標を決定するために用いられ、そのため、当該解放目標の決定ルールを検索ルールと呼んでもよい。当該解放目標の決定ルールは、関連技術者がニーズに応じて設定することができ、当該ユーザが自分の使用習慣に応じて設定することもでき、本願の実施例では、これに対して限定しない。例えば、端末は、仮想シーンにおける少なくとも1つの仮想オブジェクトの情報に応じて、敵又は味方のうちヘルスポイントが最小の目標仮想オブジェクトを選択することができる。又例えば、自分に最も近い1つの仮想オブジェクトを目標仮想オブジェクトとする。又例えば、優先度が最も高い仮想オブジェクトを選択する。
【0118】
上記能動的解放及びクイック解放の2つの方式は、いずれも解放操作が終了時の第2操作位置を基準として、スキル解放目標の決定ステップを行い、即ち、上記ステップ703では、端末が目標スキルに対する解放操作の終了に応答して、当該解放操作が終了時の第2操作位置に応じて、当該第2操作位置の当該第2仮想シーンにおける対応するスキル解放目標を決定することができる。
【0119】
一部の実施例では、解放操作の持続中に、端末は、候補スキル解放目標を取得して強調表示することもでき、それにより、ユーザは、自分のニーズに応じて、期待に合致するか否かを判断する。一部の実施例では、端末は、目標スキルに対する解放操作の持続過程に応答して、当該解放操作の第2操作位置に応じて、当該第2操作位置の当該第2仮想シーンにおける対応する候補スキル解放目標を決定し、当該第2仮想シーンにおいて当該候補スキル解放目標を強調表示することができる。例えば、
図13に示すように、候補スキル解放目標を強調表示することができ、このとき、解放操作が終了すると、それを第2操作位置に対応する解放位置とすることができる。
【0120】
一部の実施例では、当該目標スキルは解放範囲があり、当該目標スキルの解放は当該解放範囲を超えてはいけない。当該実現方法において、端末は、現在制御している第1仮想オブジェクトの仮想シーンにおける位置及び当該目標スキルの解放範囲に応じて、当該目標スキルの解放可能なエリアを決定でき、ここで、当該解放可能なエリアとは、当該スキルを解放できるエリアであり、スキルは当該解放可能なエリア以外の位置に解放されることができない。例えば、一部のスキルは解放距離(即ち解放可能な範囲)があり、当該解放距離に応じて解放可能なエリアを決定でき、スキルを、当該解放距離を超える位置に解放することができず、したがって解放可能なエリア以外の位置に解放することができない。
【0121】
端末が解放可能なエリアを取得した後、現在選定した解放位置が当該解放可能なエリア内にあるか否かを判断でき、端末は当該解放操作の第2操作位置の当該第2仮想シーンにおける対応する位置が当該解放可能なエリア内に位置することに応答して、当該ステップ703を実行する。無論、別の状況もあり、端末は、当該解放操作の第2操作位置の当該第2仮想シーンにおける対応する位置が当該解放可能なエリア以外に位置することに応答して、当該解放操作の第2操作位置及び当該第1仮想オブジェクトの仮想シーンにおける位置に応じて、当該第2操作位置の当該仮想シーンにおける対応するスキル解放目標を決定する。無論、当該別の状況では、端末は当該スキル解放目標の選択ステップを実行せず、目標スキルの解放をキャンセルしてもよい。
【0122】
704、端末は、第1仮想オブジェクトが当該スキル解放目標に従って当該目標スキルを解放するように制御する。
【0123】
端末は、スキル解放目標を決定した後、第1仮想オブジェクトが当該スキルを解放するように制御できる。例えば、目標仮想オブジェクトが第2仮想オブジェクトAであることを決定し、当該スキルは、選択された目標に火球の発射である。端末が表示する解放効果は、第2仮想オブジェクトAに火球を発射することであってもよい。
【0124】
一部の実施例では、当該スキルの解放効果は、当該スキルの解放アニメーションにより実現され、例えば、当該ステップ704において、端末は当該スキルの解放アニメーションを取得して、第1仮想オブジェクトと目標仮想オブジェクトとの間に当該解放アニメーションを再生することができる。
【0125】
本願の実施例は、マップコントロールに対する第1トリガ操作の第1操作位置に応じて、グラフィカルユーザインターフェースに当該第1操作位置に対応する第2仮想シーンを表示し、この場合、目標スキルに対する解放操作に応答して、解放操作の第2操作位置に応じて、当該目標スキルの現在表示されている第2仮想シーンにおける対応するスキル解放目標を決定することにより、スキル解放を行い、マップコントロールでスキル解放を制御する上記方式において、マップコントロールに対して第1トリガ操作を行うとき、該当する第2仮想シーンを表示することができ、こうすると、スキル解放目標の選択範囲は、仮想オブジェクトを中心とする仮想シーンに限定されなくてもよく、解放操作の自由度がより高く、かつ、現在表示されている仮想シーンにおいて大まかに推定するのではなく、スキル解放時に解放したい位置の状況に応じて精確に選択することができ、仮想オブジェクトの制御方法の精度及び正確性を向上させた。
【0126】
以下では、具体的な例示により、上記方法の流れについて例示的に説明する。
図18に示すように、ミニマップ(即ちマップコントロール)のロジックについて、ユーザはミニマップに対する操作、例えばプレス/ドラッグ/リフト操作を行うことができる。端末は、タッチ点の位置(第1操作位置)に応じてシーン位置(即ち第1操作位置の仮想シーンにおける対応する位置)をマッピングすることができ、端末はマッピングしたシーン位置をAimCameraPosに設定でき、当該AimCameraPosは、後で取得(Get)され、後続のロジック計算を行うことができる。ミニマップに対する操作を行わなかった場合、後で計算するとき、CenterActorPos(第1仮想オブジェクトがある位置)を取得して計算することができる。
【0127】
ここで、ミニマップを操作した後にスキルをトリガする方式をミニマップ照準メカニズムと呼び、ミニマップを操作せずにスキルをトリガする方式を一般スキル照準メカニズムと呼ぶ。スキルボタンを操作時に、ドラッグを行ったか否かを判断することができ、いいえであれば、クイック解放方式であり、はいであれば、能動的解放方式である。クイック解放方式において、AimCameraPos(スクーリン中心点のシーン位置)が正当であるか否かを判断でき、つまりミニマップの操作があるか否かを判断し、ミニマップの関連操作がない場合、現在のプレイヤーがヒーロー(第1仮想オブジェクト)を制御する位置CenterActorPosをFocusPoint(スキル解放位置)に割り当て、ミニマップの操作がある場合、AimCameraPosは正当であり、AimCameraPosの値をFocusPointに割り当てる。能動的解放方式においても、AimCameraPosが正当であるか否かを判断でき、正当である場合、ミニマップ照準メカニズムによりFocusPointを計算し、正当でない場合、簡単なスキル照準メカニズムによりFocusPointを計算する。FocusPointを計算で取得した後、一般スキル解放ロジックで同様のステップができ、具体的には次のようである。
【0128】
1.プレイヤーの現在の位置ActorPos、FocusPoint(スキル解放位置)、スキル範囲などをパラメータとして適正のスキル目標を検索する。
【0129】
2.プレイヤーの現在位置ActorPos及びFocusPoint並びに第1ステップで検索された目標をパラメータとしてスキルインジケータを表示し、当該スキルインジケータはスキル目標に対するプレビュー表示のために用いられる。
【0130】
レンズステップから分かるように、ミニマップをドラッグすると、AimCameraPosはスクーリンの中心点であり、クイッククリックの流れにおいてもAimCameraPosをFocusPointに割り当て、スキルの流れにおいて異なるFocusPoint位置に応じて異なるスキルの表現が表現され、レンズ及びスキルが同時にAimCameraPosを基礎点とするロジックにより、操作する時に「見たものが取得したものになる(what you see is what you get)」目的を達成した。
【0131】
一般スキル照準メカニズムについて、ミニマップをドラッグしない解決手段において、下記式9によりスキル解放位置FocusPointを取得できる。
【0132】
「式9」
FocusPoint=H+Normalize(Db-Da)*(|B-A|*M)
【0133】
式9におけるパラメータについて、
図19に示すように、第1仮想オブジェクトはH点にあり、スキル範囲はSkillRangeであると仮定すると、UI層で(B-A)の照準ベクトルを1つ得ることができ、|B-A|は(B-A)の長さであり、H点は第1仮想オブジェクトの現在の位置であり、さらにNormalize(Db-Da)は(Db-Da)の正規化後のベクトルであり、上記式9に代入してFocusPointを取得し、Mはスキル範囲の半径である。
【0134】
レンズの更新ロジックについて、レンズフレームを更新するとき、AimCameraPosが正当であるか否かを判断でき、正当である場合、レンズはミニマップにおけるスクーリン中心点AimCameraPosを追跡し、そうでない場合、レンズは第1仮想オブジェクトの位置(CenterActorPos)を追跡する。
【0135】
図20は、本願の実施例にて提供される仮想オブジェクトの制御装置の概略構造図であり、当該装置は、表示モジュール2001と、決定モジュール2002と、制御モジュール2003とを含む。
【0136】
表示モジュール2001は、マップコントロールに対する第1トリガ操作に応答して、当該第1トリガ操作の第1操作位置に応じて、グラフィカルユーザインターフェースに表示されている仮想シーンを当該第1操作位置に対応する目標仮想シーンに切り替えるために用いられ、一部の実施例では、表示モジュール2001は、マップコントロールが表示されている第1仮想シーンを表示し、前記マップコントロールに対する第1トリガ操作に応答して、第1操作位置に対応する第2仮想シーンを表示するために用いられ、前記第1トリガ操作は前記第1操作位置に作用する。
【0137】
決定モジュール2002は、目標スキルに対する解放操作に応答して、当該解放操作の第2操作位置に応じて、当該第2操作位置の当該目標仮想シーンにおける対応するスキル解放目標を決定するために用いられ、一部の実施例では、決定モジュール2002は、目標スキルに対する解放操作に応答して、第2操作位置に基づいて、前記第2仮想シーン内で対応するスキル解放目標を決定するために用いられ、前記解放操作は第2操作位置に対応する。
【0138】
制御モジュール2003は、第1仮想オブジェクトが当該スキル解放目標に従って当該目標スキルを解放するように制御するために用いられる。
【0139】
一部の実施例では、表示モジュール2001は、第1取得ユニット及び表示ユニットを含む。
【0140】
当該第1取得ユニットは、当該第1トリガ操作の第1操作位置及び当該マップコントロールにおける表示情報と仮想シーンとの対応関係に応じて、当該第1操作位置に対応する目標仮想シーンを取得するために用いられ、一部の実施例では、当該第1取得ユニットは、前記第1操作位置及び前記マップコントロールにおける表示情報と仮想シーンとの対応関係に応じて、前記第1操作位置に対応する第2仮想シーンを決定するために用いられる。
【0141】
当該表示ユニットは、グラフィカルユーザインターフェースに表示されている仮想シーンを当該目標仮想シーンに切り替えるために用いられ、一部の実施例では、当該表示ユニットは、前記第1仮想シーンを前記第2仮想シーンに切り替えるために用いられる。
【0142】
一部の実施例では、当該第1取得ユニットは、
当該第1トリガ操作の第1操作位置に応じて、当該マップコントロールにおいて、当該第1操作位置を中心とする、サイズが第1目標サイズである目標エリアを取得し、当該マップコントロールにおけるエリアと仮想シーンとの対応関係に応じて、当該目標エリアに対応する目標仮想シーンを取得すること、及び、
当該第1操作位置及び当該マップコントロールにおける位置と仮想シーンとの対応関係に応じて、当該第1操作位置に対応する仮想シーンにおける目標位置を取得し、当該目標位置を中心とする、サイズが第2目標サイズである目標仮想シーンを取得すること、のうちのいずれか1つを実行するために用いられる。
【0143】
一部の実施例では、当該第1取得ユニットは、
前記第1トリガ操作の第1操作位置に応じて、前記マップコントロールにおいて、前記第1操作位置を中心とする、サイズが第1目標サイズである目標エリアを決定し、前記マップコントロールにおける表示情報と仮想シーンとの対応関係に応じて、前記目標エリアの仮想シーン内で対応する第2仮想シーンを決定すること、及び、
前記第1操作位置及び前記マップコントロールにおける表示情報と仮想シーンとの対応関係に応じて、前記第1操作位置の前記仮想シーンにおける対応する位置を決定し、前記位置を中心とする、サイズが第2目標サイズである第2仮想シーンを決定することのうちのいずれか1つを実行するために用いられる。
【0144】
一部の実施例では、決定モジュール2002は、目標スキルのスキルコントロールに対する第2トリガ操作に応答して、当該第2トリガ操作の第2操作位置の当該スキルコントロールに対する位置関係に応じて、当該第2操作位置の当該目標仮想シーンにおける対応するスキル解放目標を決定するために用いられる。
【0145】
一部の実施例では、決定モジュール2002は、目標スキルのスキルコントロールに対する第2トリガ操作に応答して、前記第2トリガ操作の操作位置を前記第2操作位置とし、前記第2操作位置と前記スキルコントロールとの間の位置関係に応じて、前記第2操作位置の前記第2仮想シーンにおける対応するスキル解放目標を決定する。
【0146】
一部の実施例では、当該スキル解放目標は、スキル解放位置、目標仮想オブジェクト又はスキル解放方向のうちのいずれか1つであり、
決定モジュール2002は、第2取得ユニット、変換ユニット及び決定ユニットを含み、ここで、
当該第2取得ユニットは、当該第2操作位置の当該スキルコントロールに対する位置関係を取得するために用いられ、
当該変換ユニットは、当該スキルコントロールの操作エリアと仮想シーンとの間の変換関係に応じて、当該第2操作位置の当該スキルコントロールに対する位置関係を変換して、スキル解放位置の当該目標仮想シーンの中心位置に対する目標位置関係を取得するために用いられ、
当該決定ユニットは、当該目標仮想シーンの中心位置及び当該目標位置関係に応じて、当該解放操作的操作位置の当該目標仮想シーンにおける対応するスキル解放位置を決定し、当該スキル解放位置を当該スキル解放目標として決定するか、又は当該スキル解放位置上の仮想オブジェクトを目標仮想オブジェクトとして決定するか、又は当該スキル解放位置の現在制御している第1仮想オブジェクトに対する方向をスキル解放方向として決定するために用いられる。
【0147】
一部の実施例では、当該第2取得ユニットは、前記第2操作位置と前記スキルコントロールとの間の位置関係を決定するために用いられ、当該変換ユニットは、前記スキルコントロールの操作エリアと仮想シーンとの間の変換関係に応じて、前記変位を変換して、スキル解放位置と前記第2仮想シーンの中心位置との間の目標位置関係を取得するために用いられ、当該決定ユニットは、前記第2仮想シーンの中心位置及び前記目標位置関係に応じて、前記第2操作位置の前記第2仮想シーンにおける対応するスキル解放位置を決定し、前記スキル解放位置を前記スキル解放目標として決定するか、又は前記スキル解放位置上の仮想オブジェクトを目標仮想オブジェクトとして決定するか、又は前記スキル解放位置の現在制御している第1仮想オブジェクトに対する方向をスキル解放方向として決定するために用いられる。
【0148】
一部の実施例では、当該変換ユニットは、当該目標仮想シーンの中心位置に応じて、当該目標仮想シーンの辺縁位置を決定し、当該目標仮想シーンの中心位置、当該目標仮想シーンの辺縁位置及び当該操作エリアのサイズに応じて、当該第2操作位置の当該スキルコントロールに対する位置関係を変換するために用いられる。
【0149】
一部の実施例では、当該変換ユニットは、前記第2仮想シーンの中心位置に応じて、前記第2仮想シーンの辺縁位置を決定し、前記第2仮想シーンの中心位置、前記第2仮想シーンの辺縁位置及び前記操作エリアのサイズに応じて、前記第2操作位置と前記スキルコントロールとの間の位置関係を変換するために用いられる。
【0150】
一部の実施例では、決定モジュール2002は、目標スキルに対する解放操作が終了し、かつ、当該解放操作が終了時の第2操作位置が第1操作エリア内にあることに応答して、当該第2トリガ操作の第2操作位置の当該スキルコントロールに対する位置関係に応じて、当該第2操作位置の当該目標仮想シーンにおける対応するスキル解放目標を決定することを実行するために用いられる。
【0151】
一部の実施例では、決定モジュール2002は、目標スキルに対する解放操作が終了し、前記解放操作の終了位置を前記第2操作位置とし、かつ、前記第2操作位置は第1操作エリア内にあることに応答して、前記第2操作位置と前記スキルコントロールとの間の位置関係に応じて、前記第2操作位置の前記第2仮想シーンにおける対応するスキル解放目標を決定することを実行するために用いられる。
【0152】
一部の実施例では、決定モジュール2002は、目標スキルに対する解放操作が終了し、かつ、当該解放操作が終了時の第2操作位置は第2操作エリア内にあることに応答して、当該目標仮想シーンにおける少なくとも1つの第2仮想オブジェクトの情報に応じて、当該少なくとも1つの第2仮想オブジェクトから目標仮想オブジェクトを決定し、当該目標仮想オブジェクトを当該スキル解放目標として決定するか、又は当該目標仮想オブジェクトがある位置を当該スキル解放目標として決定するか、又は当該目標仮想オブジェクトの第1仮想オブジェクトに対する方向を当該スキル解放目標として決定するために用いられ、当該第1操作エリアは、当該第2操作エリア外を囲んでいる。
【0153】
一部の実施例では、決定モジュール2002は、目標スキルに対する解放操作が終了し、前記解放操作の終了位置を前記第2操作位置とし、かつ、前記第2操作位置は第2操作エリア内にあることに応答して、前記第2仮想シーンにおける少なくとも1つの第2仮想オブジェクトの情報に応じて、前記少なくとも1つの第2仮想オブジェクトから目標仮想オブジェクトを決定し、前記目標仮想オブジェクトを前記スキル解放目標として決定するか、又は前記目標仮想オブジェクトがある位置を前記スキル解放目標として決定するか、又は前記目標仮想オブジェクトの第1仮想オブジェクトに対する方向を前記スキル解放目標として決定するために用いられ、前記第1操作エリアは、前記第2操作エリア外に囲まれている。
【0154】
一部の実施例では、決定モジュール2002は、目標スキルに対する解放操作の終了に応答して、当該解放操作が終了時の第2操作位置に応じて、当該第2操作位置の当該目標仮想シーンにおける対応するスキル解放目標を決定するために用いられる。
【0155】
一部の実施例では、決定モジュール2002は、目標スキルに対する解放操作が終了し、前記解放操作の終了位置を前記第2操作位置とすることに応答して、前記第2操作位置の前記第2仮想シーンにおける対応するスキル解放目標を決定するために用いられる。
【0156】
一部の実施例では、決定モジュール2002は、さらに、目標スキルに対する解放操作が持続過程中であることに応答して、当該解放操作の第2操作位置に応じて、当該第2操作位置の当該目標仮想シーンにおける対応する候補スキル解放目標を決定するために用いられ、表示モジュール2001は、さらに、当該目標仮想シーンにおいて当該候補スキル解放目標を強調表示するために用いられる。
【0157】
一部の実施例では、決定モジュール2002は、さらに、目標スキルに対する解放操作の実施過程中に応答して、前記解放操作のリアルタイム操作位置に応じて、前記第2仮想シーンにおける候補スキル解放目標を決定するために用いられ、
表示モジュール2001は、さらに、前記第2仮想シーンにおいて前記候補スキル解放目標を強調表示するために用いられる。
【0158】
一部の実施例では、決定モジュール2002は、現在制御している第1仮想オブジェクトの仮想シーンにおける位置及び当該目標スキルの解放範囲に応じて、当該目標スキルの解放可能なエリアを決定し、当該解放操作の第2操作位置の当該目標仮想シーンにおける対応する位置が当該解放可能なエリア内にあることに応答して、当該解放操作の第2操作位置に応じて、当該第2操作位置の当該目標仮想シーンにおける対応するスキル解放目標を決定することを実行するために用いられる。
【0159】
一部の実施例では、決定モジュール2002は、現在制御している第1仮想オブジェクトの仮想シーンにおける位置及び前記目標スキルの解放範囲に応じて、前記目標スキルの解放可能なエリアを決定し、前記第2操作位置の前記第2仮想シーンにおける対応する位置が前記解放可能なエリア内にあることに応答して、前記第2操作位置の前記第2仮想シーンにおける対応するスキル解放目標を決定することを実行するために用いられる。
【0160】
一部の実施例では、決定モジュール2002は、さらに、当該解放操作の第2操作位置の当該目標仮想シーンにおける対応する位置が当該解放可能なエリア外にあることに応答して、当該解放操作の第2操作位置及び当該第1仮想オブジェクトの仮想シーンにおける位置に応じて、当該第2操作位置の当該仮想シーンにおける対応するスキル解放目標を決定するために用いられる。
【0161】
一部の実施例では、決定モジュール2002は、さらに、目標位置が前記解放可能なエリア外にあることに応答して、前記第2操作位置及び前記第1仮想オブジェクトの仮想シーンにおける位置に応じて、前記第2操作位置の前記仮想シーン内で対応するスキル解放目標を決定するために用いられ、前記目標位置は前記第2操作位置の前記第2仮想シーンにおける対応する位置である。
【0162】
本願の実施例にて提供される装置は、マップコントロールに対する第1トリガ操作の第1操作位置に応じて、グラフィカルユーザインターフェースに当該第1操作位置に対応する目標仮想シーンを表示し、この場合、目標スキルに対する解放操作に応答して、解放操作の第2操作位置に応じて、当該目標スキルの現在表示されている目標仮想シーンにおける対応するスキル解放目標を決定できることにより、スキル解放を行い、マップコントロールでスキル解放を制御する上記方式において、マップコントロールに対して第1トリガ操作を行うとき、該当する目標仮想シーンを表示し、こうすると、スキル解放目標の選択範囲は、仮想オブジェクトを中心とする仮想シーンに限定されなくてもよく、解放操作の自由度がより高く、かつ、現在表示されている仮想シーンにおいて大まかに推定するのではなく、スキル解放時に解放したい位置の状況に応じて精確に選択することができ、仮想オブジェクトの制御方法の精度及び正確性を向上させた。
【0163】
なお、上記実施例にて提供される仮想オブジェクトの制御装置が仮想オブジェクトを制御するとき、上記各機能モジュールの分割を例に挙げて説明しただけで、実際の適用において、ニーズに応じて上記機能を異なる機能モジュールによって完成されるように分配することもでき、即ち、電子機器の内部構造を異なる機能モジュールに分割して、上記した機能の一部又は全部を完成する。また、上記実施例にて提供される仮想オブジェクトの制御装置は、仮想オブジェクトの制御方法の実施例と同じ構想に属し、それの具体的な実現過程の詳細は、仮想オブジェクトの制御方法の実施例を参照することができ、ここでは詳細な説明を省略する。
【0164】
上記電子機器は、下記
図21に示す端末として提供されてもよい。
【0165】
図21は、本願の実施例にて提供される端末2100の概略構造図であり、端末2100は、スマートフォン、タブレット、MP3プレイヤー(Moving Picture Experts Group Audio Layer III、アニメーションの専門家グループレイヤー3)、MP4(Moving Picture Experts Group Audio Layer IV、アニメーションの専門家グループレイヤー4)プレイヤー、ノートパソコン又はデスクトップパソコンであり得る。端末2100は、ユーザ機器、携帯端末、ラップトップ型端末、デスクトップ型端末などの他の名前で呼ばれることもある。
【0166】
通常、端末2100は、プロセッサ2101及びメモリ2102を含む。
【0167】
プロセッサ2101は、例えば4コアプロセッサ、8コアプロセッサなどの1つ又は複数の処理コアを含んでもよい。プロセッサ2101は、DSP(Digital Signal Processing、デジタル信号処理)、FPGA(Field-Programmable Gate Array、フィールドプログラマブルゲートアレイ)、PLA(Programmable Logic Array、プログラマブルロジックアレイ)のうちの少なくとも1つのハードウェア形態を用いて実装され得る。プロセッサ2101は、メインプロセッサ及びコプロセッサも含むことができ、メインプロセッサは、アウェイク状態でのデータを処理するためのプロセッサであり、CPU(Central Processing Unit、中央処理装置)とも呼ばれ、コプロセッサは、待機状態でのデータを処理するための低消費電力プロセッサである。一部の実施例では、プロセッサ2101にGPU(Graphics Processing Unit、グラフィックスプロセッサ)が統合されていてもよく、GPUは、表示画面に表示する必要のある内容のレンダリング及び絵描きを担当するために用いられる。一部の実施例では、プロセッサ2101は、AI(Artificial Intelligence、人工知能)プロセッサをさらに含んでもよく、当該AIプロセッサは、機械学習に関連するコンピューティング操作を処理するために用いられる。
【0168】
メモリ2102は、1つ又は複数のコンピュータ可読記憶媒体を含んでもよく、当該コンピュータ可読記憶媒体は非一時的なものであってもよい。メモリ2102は、高速ランダムアクセスメモリ、及び不揮発性メモリ、例えば1つ又は複数の磁気ディスク記憶装置やフラッシュメモリ記憶装置をさらに含んでもよい。一部の実施例では、メモリ2102における非一時的なコンピュータ可読記憶媒体は、少なくとも1つの命令を記憶するために用いられ、当該少なくとも1つの命令は、本願の方法の実施例にて提供される仮想オブジェクトの制御方法のうち端末側の方法のステップが実現されるように、プロセッサ2101によって実行されるために用いられる。
【0169】
一部の実施例では、端末2100は、選択的に、周辺機器インターフェース2103及び少なくとも1つの周辺機器をさらに含んでもよい。プロセッサ2101、メモリ2102及び周辺機器インターフェース2103の間はバス又は信号線を介して接続される。各周辺機器は、バス、信号線又は回路基板を介して周辺機器インターフェース2103に接続される。一部の実施例では、周辺機器は、無線周波数回路2104、タッチディスプレイ2105、オーディオ回路2106のうちの少なくとも1つを含む。
【0170】
周辺機器インターフェース2103は、I/O(Input/Output、入力/出力)に関連する少なくとも1つの周辺機器をプロセッサ2101及びメモリ2102に接続させるために用いられてもよい。一部の実施例では、プロセッサ2101、メモリ2102及び周辺機器インターフェース2103は、同一のチップ又は回路基板上に統合され、一部の他の実施例では、プロセッサ2101、メモリ2102及び周辺機器インターフェース2103のうちのいずれか1つ又は2つは、独立のチップ又は回路基板に実装されてもよく、本実施例ではこれに対して限定しない。
【0171】
ディスプレイ2105は、UI(User Interface、ユーザインターフェース)の表示のために用いられる。当該UIは、図形、テキスト、アイコン、ビデオ、及びそれらの任意の組合せを含み得る。ディスプレイ2105がタッチディスプレイである場合、ディスプレイ2105は、さらに、ディスプレイ2105の表面又は表面の上方にあるタッチ信号を収集する能力を有する。当該タッチ信号は、制御信号としてプロセッサ2101に入力されて処理されてもよい。このとき、ディスプレイ2105は、さらに、仮想ボタン及び/又は仮想キーボードを提供するために用いられることができ、仮想ボタン及び/又は仮想キーボードは、ソフトボタン及び/又はソフトキーボードとも呼ばれる。一部の実施例では、ディスプレイ2105が1つであってもよく、端末2100のフロントパネルを設置し、別の一部の実施例では、ディスプレイ2105は少なくとも2つであってもよく、それぞれ端末2100の異なる表面に設置されるか、又は折り畳み設計を呈し、又別の一部の実施例では、表示画面2105は、フレキシブルディスプレイであってもよく、端末2100の曲面又は折畳面に設置される。さらには、ディスプレイ2105は、非長方形の不規則な図形、つまり異形スクリーンにも設定され得る。ディスプレイ2105は、LCD(Liquid Crystal Display、液晶ディスプレイ)、OLED(Organic Light-Emitting Diode、有機発光ダイオード)などの材質を用いて製造することができる。
【0172】
オーディオ回路2106は、マイクロフォン及びスピーカを含んでもよい。マイクロフォンは、ユーザ及び環境の音波を収集して、音波を電気信号に変換してプロセッサ2101に入力して処理するか、又は無線周波数回路2104に入力して音声通信を実現するために用いられる。ステレオ集音又はノイズ低減の目的から、マイクロフォンが複数あってもよく、それぞれ端末2100の異なる部位に設置される。マイクロフォンは、さらに、アレイマイクロフォン又は全方向性サウンドコレクションマイクであってもよい。スピーカは、プロセッサ2101又は無線周波数回路2104からの電気信号を音波に変換するために用いられる。スピーカは、従来のフィルームスピーカであってもよいし、圧電セラミックススピーカであってもよい。スピーカが圧電セラミックススピーカである場合、電気信号を人間が聞こえる音波に変換することができるだけでなく、距離測定などの用途のために電気信号を人間が聞こえない音波に変換することもできる。一部の実施例では、オーディオ回路2106は、ヘッドホンジャックを含むこともできる。
【0173】
一部の実施例では、端末2100は、1つ又は複数のセンサ2110を含んでいる。1つ又は複数のセンサ2110は、加速度センサ2111、ジャイロセンサ2112、圧力センサ2113を含むが、これらに限定されない。
【0174】
加速度センサ2111は、端末2100で作成された座標系の3つの座標軸における加速度の大きさを検出することができる。例えば、加速度センサ2111は、重力加速度の3つの座標軸における成分を検出するために用いられてもよい。プロセッサ2101は、加速度センサ2111によって収集された重力加速度信号に応じて、ユーザインターフェースを横方向ビュー又は縦方向ビューでタッチディスプレイ2105に表示するように制御することができる。加速度センサ2111は、さらに、ゲーム又はユーザのスポーツデータの収集にも用いられてもよい。
【0175】
ジャイロセンサ2112は、端末2100の機体の方向及び回転角度を検出でき、ジャイロセンサ2112は、加速度センサ2111と協働でユーザの端末2100に対する3D動作を収集することができる。プロセッサ2101はジャイロセンサ2112に応じてデータを収集し、動作敏感(例えば、ユーザの斜め操作に応じてUIを変更)機能、撮影時の画像を安定にする機能、ゲーム制御機能及び慣性ナビゲーション機能を実現することができる。
【0176】
圧力センサ2113は、端末2100のサイドフレーム及び/又はタッチディスプレイ2105の下層に設置されてもよい。圧力センサ2113は、端末2100のサイドフレームに設置された場合、ユーザの端末2100に対する把持信号を検出することができ、プロセッサ2101が圧力センサ2113によって収集された把持信号に応じて左手と右手の認識又はクイック操作を行う。圧力センサ2113がタッチディスプレイ2105の下層に設置された場合、プロセッサ2101がユーザのタッチディスプレイ2105に対する圧力操作に応じて、UIインターフェースにおける操作可能なコントロールに対する制御を実現する。操作可能なコントロールは、ボタンコントロール、スクロールバーコントロール、アイコンコントロール、メニューコントロールのうちの少なくとも1つを含む。
【0177】
当業者であれば、
図21に示す構造は端末2100を限定するものではなく、図示よりも多い又は少ないコンポーネントを含んでもよいか、又は一部のコンポーネントを組み合わせるか、又は異なるコンポーネントの配置を採用することを含み得ることを理解できる。
【0178】
一部の実施例では、当該少なくとも1つの命令は、プロセッサによって実行されて、前記第1操作位置及び前記マップコントロールにおける表示情報と仮想シーンとの対応関係に応じて、前記第1操作位置に対応する第2仮想シーンを決定するステップと、前記第1仮想シーンを前記第2仮想シーンに切り替えるステップとを実現するために用いられる。
【0179】
一部の実施例では、当該少なくとも1つ命令は、プロセッサによって実行されて、
前記第1トリガ操作の第1操作位置に応じて、前記マップコントロールにおいて前記第1操作位置を中心とする、サイズが第1目標サイズである目標エリアを決定し、前記マップコントロールにおける表示情報と仮想シーンとの対応関係に応じて、前記目標エリアの仮想シーン内で対応する第2仮想シーンを決定するステップと、
前記第1操作位置及び前記マップコントロールにおける表示情報と仮想シーンとの対応関係に応じて、前記第1操作位置の前記仮想シーンにおける対応する位置を決定し、前記位置を中心とする、サイズが第2目標サイズである第2仮想シーンを決定するステップと、のうちのいずれか1つを実現するために用いられる。
【0180】
一部の実施例では、当該少なくとも1つ命令は、プロセッサによって実行されて、目標スキルのスキルコントロールに対する第2トリガ操作に応答して、前記第2トリガ操作の操作位置を前記第2操作位置とし、前記第2操作位置と前記スキルコントロールとの間の位置関係に応じて、前記第2操作位置の前記第2仮想シーンにおける対応するスキル解放目標を決定するステップを実現するために用いられる。
【0181】
一部の実施例では、当該少なくとも1つ命令は、プロセッサによって実行されて、下記のいずれか1つのステップを実現するために用いられ、
前記第2操作位置と前記スキルコントロールとの間の位置関係に応じて、前記第2操作位置の前記第2仮想シーンにおける対応するスキル解放目標を決定する前記ステップは、
前記第2操作位置と前記スキルコントロールとの間の位置関係を決定するステップと、
前記スキルコントロールの操作エリアと仮想シーンとの間の変換関係に応じて、前記変位を変換して、スキル解放位置と前記第2仮想シーンの中心位置との間の目標位置関係を取得するステップと、
前記第2仮想シーンの中心位置及び前記目標位置関係に応じて、前記第2操作位置の前記第2仮想シーンにおける対応するスキル解放位置を決定し、前記スキル解放位置を前記スキル解放目標として決定するか、又は前記スキル解放位置上の仮想オブジェクトを目標仮想オブジェクトとして決定するか、又は前記スキル解放位置の現在制御している第1仮想オブジェクトに対する方向をスキル解放方向として決定するステップと、を含む。
【0182】
一部の実施例では、当該少なくとも1つの命令は、プロセッサによって実行されて、前記第2仮想シーンの中心位置に応じて、前記第2仮想シーンの辺縁位置を決定するステップと、
前記第2仮想シーンの中心位置、前記第2仮想シーンの辺縁位置及び前記操作エリアのサイズに応じて、前記第2操作位置と前記スキルコントロールとの間の位置関係を変換するステップとを実現するために用いられる。
【0183】
一部の実施例では、当該少なくとも1つ命令は、プロセッサによって実行されて、目標スキルに対する解放操作が終了し、前記解放操作の終了位置を前記第2操作位置とし、かつ、前記第2操作位置は第1操作エリア内にあることに応答して、前記第2操作位置と前記スキルコントロールとの間の位置関係に応じて、前記第2操作位置の前記第2仮想シーンにおける対応するスキル解放目標を決定する前記ステップを実行するステップを実現するために用いられる。
【0184】
一部の実施例では、当該少なくとも1つ命令は、プロセッサによって実行されて、目標スキルに対する解放操作が終了し、前記解放操作の終了位置を前記第2操作位置とし、かつ、前記第2操作位置は第2操作エリア内にあることに応答して、前記第2仮想シーンにおける少なくとも1つの第2仮想オブジェクトの情報に応じて、前記少なくとも1つの第2仮想オブジェクトから目標仮想オブジェクトを決定し、前記目標仮想オブジェクトを前記スキル解放目標として決定するか、又は前記目標仮想オブジェクトがある位置を前記スキル解放目標として決定するか、又は前記目標仮想オブジェクトの第1仮想オブジェクトに対する方向を前記スキル解放目標として決定し、前記第1操作エリアは、前記第2操作エリア外に囲まれているステップを実現するために用いられる。
【0185】
一部の実施例では、当該少なくとも1つ命令は、プロセッサによって実行されて、目標スキルに対する解放操作が終了し、前記解放操作の終了位置を前記第2操作位置とすることに応答して、前記第2操作位置の前記第2仮想シーンにおける対応するスキル解放目標を決定するステップを実現するために用いられる。
【0186】
一部の実施例では、当該少なくとも1つ命令は、プロセッサによって実行されて、目標スキルに対する解放操作の実施過程中に応答して、前記解放操作のリアルタイム操作位置に応じて、前記第2仮想シーンにおける候補スキル解放目標を決定するステップと、
前記第2仮想シーンにおいて前記候補スキル解放目標を強調表示するステップとを実現するために用いられる。
【0187】
一部の実施例では、当該少なくとも1つ命令は、プロセッサによって実行されて、現在制御している第1仮想オブジェクトの仮想シーンにおける位置及び前記目標スキルの解放範囲に応じて、前記目標スキルの解放可能なエリアを決定するステップと、
前記第2操作位置の前記第2仮想シーンにおける対応する位置が前記解放可能なエリア内にあることに応答して、前記第2操作位置の前記第2仮想シーンにおける対応するスキル解放目標を決定する前記ステップを実行するステップとを実現するために用いられる。
【0188】
一部の実施例では、当該少なくとも1つ命令は、プロセッサによって実行されて、目標位置が前記解放可能なエリア外にあることに応答して、前記第2操作位置及び前記第1仮想オブジェクトの仮想シーンにおける位置に応じて、前記第2操作位置の前記仮想シーン内で対応するスキル解放目標を決定し、前記目標位置は前記第2操作位置の前記第2仮想シーンにおける対応する位置であるステップを実現するために用いられる。
【0189】
例示的な実施例では、少なくとも1つのプログラムコードを含むメモリなどのコンピュータ可読記憶媒体をさらに提供し、上記少なくとも1つのプログラムコードは、上記実施例における仮想オブジェクトの制御方法を完成するように、電子機器におけるプロセッサによって実行されてもよい。例えば、当該コンピュータ可読記憶媒体は、ROM(Read-Only Memory、読み取り専用メモリ)、RAM(Random-Access Memory、ランダムアクセスメモリ)、CD-ROM(Compact Disc Read-Only Memory、コンパクトディスク読み取り専用メモリ)、磁気テープ、フロッピー(登録商標)ディスク、及び光データストレージデバイスなどであり得る。
【0190】
当業者は、上記実施例を実現するためのステップの全部又は一部は、ハードウェアによって完了されてもよいし、プログラムで関連するハードウェアを命令することにより完了されてもよく、当該プログラムは、コンピュータ可読記憶媒体に記憶されることができ、上に言及された記憶媒体は読み取り専用メモリ、磁気ディスク又は光ディスクなどであり得ることを理解できる。
【0191】
上記は、本願の選択可能な実施例にすぎず、本願を限定することを意図するものではなく、本願の精神及び原則において行われる任意の修正、等価な置換、改良などは、いずれも本願の保護範囲内に含まれるべきある。
【符号の説明】
【0192】
120 第1端末
140 サーバ
160 第2端末
2001 表示モジュール
2002 決定モジュール
2003 制御モジュール
2100 端末
2101 プロセッサ
2102 メモリ
2103 周辺機器インターフェース
2104 無線周波数回路
2105 ディスプレイ
2106 オーディオ回路
2110 センサ
2111 加速度センサ
2112 ジャイロセンサ
2113 圧力センサ