(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-05-10
(45)【発行日】2022-05-18
(54)【発明の名称】仮想キャラクタの方位確定方法、装置及びコンピュータプログラム
(51)【国際特許分類】
A63F 13/5378 20140101AFI20220511BHJP
A63F 13/55 20140101ALI20220511BHJP
【FI】
A63F13/5378
A63F13/55
(21)【出願番号】P 2019520851
(86)(22)【出願日】2018-01-08
(86)【国際出願番号】 CN2018071749
(87)【国際公開番号】W WO2018133688
(87)【国際公開日】2018-07-26
【審査請求日】2019-04-18
(31)【優先権主張番号】201710040064.8
(32)【優先日】2017-01-18
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】517392436
【氏名又は名称】▲騰▼▲訊▼科技(深▲セン▼)有限公司
(74)【代理人】
【識別番号】100110364
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100140534
【氏名又は名称】木内 敬二
(72)【発明者】
【氏名】姜 ▲進▼
【審査官】比嘉 翔一
(56)【参考文献】
【文献】特開2005-025563(JP,A)
【文献】特開2003-296757(JP,A)
【文献】特開平11-195131(JP,A)
【文献】特開2015-095045(JP,A)
【文献】特許第6058184(JP,B1)
【文献】国際公開第2016/144452(WO,A1)
【文献】特開2000-075779(JP,A)
【文献】AboveAndBeyondSoftware,Announcing WalkAbout,YouTube [online] [video],2016年03月23日,https://www.youtube.com/watch?v=pW6nlLV88Zk,[2020年5月13日検索],インターネット
【文献】VR overview,Unity Manual(Version: 5.4)[online],Unity Technologies,2016年09月08日,https://web.archive.org/web/20160908111923/https://docs.unity3d.com/540/Documentation/Manual/VROverview.html,[2020年5月13日検索],インターネット
【文献】slayemin,Design Guide for Room Scale VR,gamedev.net[online],2016年05月19日,https://www.gamedev.net/articles/game-design/game-design-and-theory/design-guide-for-room-scale-vr-r4355/,[2020年5月13日検索],インターネット
【文献】AboveAndBeyondSoftware,Announcing WalkAbout,YouTube [online] [video],2016年03月23日,https://www.youtube.com/watch?v=pW6nlLV88Zk,[2020年5月13日検索],インターネット
【文献】VR overview,Unity Manual(Version: 5.4)[online],Unity Technologies,2016年09月08日,https://web.archive.org/web/20160908111923/https://docs.unity3d.com/540/Documentation/Manual/VROverview.html,[2020年5月13日検索],インターネット
【文献】slayemin,Design Guide for Room Scale VR,gamedev.net[online],2016年05月19日,https://www.gamedev.net/articles/game-design/game-design-and-theory/design-guide-for-room-scale-vr-r4355/,[2020年5月13日検索],インターネット
(58)【調査した分野】(Int.Cl.,DB名)
A63F 13/00 - 13/98
A63F 9/24
G06T 1/00
G06T 11/60 - 13/80
G06T 17/05
G06T 19/00 - 19/20
(57)【特許請求の範囲】
【請求項1】
仮想キャラクタの位置及び向きの確定装置の作動方法であって、
仮想アプリケーションのプリセットシーンにおいて、仮想キャラクタの位置および向きを確定する時に参照されるリファレンスオブジェクトの第一のリファレンス位置及び第一のリファレンス向きを取得し、ここで、前記第一のリファレンス位置及び第一のリファレンス向きが、初期化位置及び向きとして設定された前記仮想キャラクタの到達しようとする所定位置及び所定向きであることと、
前記第一のリファレンス位置及び第一のリファレンス向きに対する、センサーによって確定された前記仮想キャラクタの現在の位置及び現在の向きの座標差及び角度差を取得することによって、第一の相対位置及び第一の相対向きを取得することと、
前記第一のリファレンス向きを前記角度差だけ
前記第一のリファレンス向きに対する前記現在の向きの方向に対して逆方向に回転し、前記第一のリファレンス位置を前記座標差だけ
前記第一のリファレンス位置の座標に対する前記現在の位置の座標の方向に対して逆方向に移動することによって、前記第一のリファレンス位置及び第一のリファレンス向きを第二のリファレンス位置及び第二のリファレンス向きに調整し、ここで、前記第二のリファレンス位置及び第二のリファレンス向きに対する前記所定位置及び所定向きの相対位置及び相対向きが前記第一の相対位置及び第一の相対向きであることと、
前記仮想キャラクタの現在の位置及び現在の向きを前記所定位置及び所定向きに更新し、更新された前記現在の位置及び現在の向きと調整された前記第一のリファレンス位置及び第一のリファレンス向きの間の相対位置及び相対向きが前記第一の相対位置及び第一の相対向きであることとを含む、方法。
【請求項2】
前記第一のリファレンス向きを取得することは、
前記現在の位置が前記所定位置である場合、前記所定向きと一致する前記第一のリファレンス向きを取得することを特徴とする
請求項1に記載の方法。
【請求項3】
前記第一の相対位置及び第一の相対向きを取得することは、
前記現在の向きの前記第一のリファレンス向きに対する第一の相対角度を取得することを含むことを特徴とする
請求項2に記載の方法。
【請求項4】
前記第一のリファレンス位置及び第一のリファレンス向きを第二のリファレンス位置及び第二のリファレンス向きに調整することは、
前記第一のリファレンス向きを前記第一の相対角度に従って前記第二のリファレンス向きに調整し、ここで、前記第二のリファレンス向きに対する前記所定向きの相対角度が前記第一の相対角度であり、前記現在の向きが前記第一のリファレンス向きの調整に伴って更新され、更新された前記現在の向きと調整された前記第一のリファレンス向きの間の相対角度が前記第一の相対角度であり、前記第一の相対位置及び第一の相対向きが前記第一の相対角度を含むことを含むことを特徴とする
請求項3に記載の方法。
【請求項5】
前記第一のリファレンス向きを前記第一の相対角度に従って前記第二のリファレンス向きに調整することは、
前記第一のリファレンス向きに対する前記現在の向きの方向を前記第一の相対角度に示される角度方向として確定することと、
前記第一のリファレンス向きを前記角度方向の逆方向に従って前記第一の相対角度に示される角度差で前記第二のリファレンス向きに回転することとを含むことを特徴とする
請求項4に記載の方法。
【請求項6】
前記仮想キャラクタの現在の位置及び現在の向きを前記所定位置及び所定向きに更新することは、
前記仮想キャラクタの現在の向きを前記所定向きに更新することを含むことを特徴とする
請求項4に記載の方法。
【請求項7】
前記第一のリファレンス位置を取得することは、
前記現在の向きが前記所定向きである場合、前記所定位置と一致する前記第一のリファレンス位置を取得することを特徴とする
請求項1に記載の方法。
【請求項8】
前記第一の相対位置及び第一の相対向きを取得することは、
前記現在の位置の座標の前記第一のリファレンス位置の座標に対する第一の相対座標を取得することを含むことを特徴とする
請求項7に記載の方法。
【請求項9】
前記第一のリファレンス位置及び第一のリファレンス向きを第二のリファレンス位置及び第二のリファレンス向きに調整することは、
前記第一のリファレンス位置の座標を前記第一の相対座標に従って前記第二のリファレンス位置の座標に調整することを含み、ここで、前記第二のリファレンス位置の座標に対する前記所定位置の座標の相対座標が前記第一の相対座標であり、前記現在の位置の座標が前記第一のリファレンス位置の座標の調整に伴って更新され、更新された前記現在の位置の座標と調整された前記第一のリファレンス位置の座標の間の相対座標が前記第一の相
対座標であり、前記第一の相対位置及び第一の相対向きが前記第一の相対座標を含むことを特徴とする
請求項8に記載の方法。
【請求項10】
前記第一のリファレンス位置の座標を前記第一の相対座標に従って前記第二のリファレンス位置の座標に調整することは、
前記第一のリファレンス位置の座標に対する前記現在の位置の座標の方向を前記第一の相対座標に示される座標方向として確定することと、
前記第一のリファレンス位置の座標を前記座標方向の逆方向に従って前記第一の相対座標に示される座標差で前記第二のリファレンス位置にシフトすることとを含むことを特徴とする
請求項9に記載の方法。
【請求項11】
前記仮想キャラクタの現在の位置及び現在の向きを前記所定位置及び所定向きに更新することは、
前記仮想キャラクタの現在の位置の座標を前記所定位置の座標に更新することを含むことを特徴とする
請求項9に記載の方法。
【請求項12】
前記第一のリファレンス位置及び第一のリファレンス向きを取得することは、
前記現在の位置が前記所定位置でなく、かつ前記現在の向きが前記所定向きでない場合、前記所定向きと一致する前記第一のリファレンス向きおよび前記所定位置と一致する第一のリファレンス位置を取得することを含むことを特徴とする
請求項1に記載の方法。
【請求項13】
前記第一の相対位置及び第一の相対向きを取得することは、
前記現在の向きの前記第一のリファレンス向きに対する第一の相対角度を取得することと、
前記現在の位置の座標の前記第一のリファレンス位置の座標に対する第一の相対座標を取得することとを含むことを特徴とする
請求項12に記載の方法。
【請求項14】
前記第一のリファレンス位置及び第一のリファレンス向きを第二のリファレンス位置及び第二のリファレンス向きに調整することは、前記第一のリファレンス向きを前記第一の相対角度に従って前記第二のリファレンス向きに調整することを含み、ここで、前記第二のリファレンス向きに対する前記所定向きの相対角度が前記第一の相対角度であり、前記現在の向きが前記第一のリファレンス向きの調整に伴って更新され、更新された前記現在の向きと調整された前記第一のリファレンス向きの間の相対角度が前記第一の相対角度であり、前記第一の相対位置及び第一の相対向きが前記第一の相対角度を含み、
前記仮想キャラクタの現在の位置及び現在の向きを前記所定位置及び所定向きに更新することは、前記仮想キャラクタの現在の向きを前記所定向きに更新することを含むことを特徴とする
請求項13に記載の方法。
【請求項15】
前記仮想キャラクタの現在の向きを前記所定向きに更新した後、
前記第一のリファレンス位置及び第一のリファレンス向きを第二のリファレンス位置及び第二のリファレンス向きに調整することは、前記第一のリファレンス位置の座標を前記第一の相対座標に従って前記第二のリファレンス位置の座標に調整することを含み、ここで、前記第二のリファレンス位置の座標に対する前記所定位置の座標の相対座標が前記第一の相対座標であり、前記現在の位置の座標が前記第一のリファレンス位置の座標の調整に伴って更新され、更新された前記現在の位置の座標と調整された前記第一のリファレンス位置の座標の間の相対座標が前記第一の相対座標であり、前記第一の相対位置及び第一の相対向きが前記第一の相対座標を含み、
前記仮想キャラクタの現在の位置及び現在の向きを前記所定位置及び所定向きに更新することは、前記仮想キャラクタの現在の位置の座標を前記所定位置の座標に更新することをさらに含むことを特徴とする
請求項14に記載の方法。
【請求項16】
前記仮想キャラクタの現在の位置及び現在の向きを前記所定位置及び所定向きに更新した後、前記方法は、
仮想アプリケーションでプリセットイベントを実行するように仮想キャラクタを制御することをさらに含むことを特徴とする
請求項1-15のいずれか一項に記載の方法。
【請求項17】
前記仮想アプリケーションは仮想現実アプリケーションであることを特徴とする
請求項16に記載の方法。
【請求項18】
請求項1~17のいずれか1項に記載の方法を行うように構成された仮想キャラクタの位置及び向きの確定装置。
【請求項19】
仮想キャラクタの位置及び向きの確定装置のプロセッサに、請求項1~17のいずれか一項に記載の方法を実行させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は2017年1月18日に中国特許庁に提出された、優先権番号が2017100400648であり、発明の名称が「仮想キャラクタの方位確定方法及び装置」である中国特許出願に対する優先権を主張し、その全ての内容が参照により本明細書に組み込まれる。
【0002】
本発明の実施例はコンピュータ分野に関し、具体的には、仮想キャラクタの方位確定方法、装置及び記憶媒体に関する。
【背景技術】
【0003】
現在、仮想アプリケーションでは、現実環境内の区域の仮想現実の対応する仮想区域の位置のみを設定することができ、仮想区域における、ユーザに対応する仮想キャラクタの相対位置がハードウエアによって確定され、プログラムで仮想キャラクタの位置及び向きを直接変更することができないため、一般的に仮想アプリケーションの位置及び向きを仮想アプリケーション内のプリセットされた位置及び向きに設定する。仮想アプリケーションが起動された後、ユーザに対応する仮想キャラクタは、仮想ゲームを開始するために仮想区域内にあるべき位置及び向きを自ら見つけ出す必要がある。
【0004】
ユーザに対応する仮想キャラクタが仮想アプリケーションに入るたびに、ユーザは所定方位、例えば初期位置及び向きを自ら見つけ出すように仮想キャラクタを制御する必要があり、そのため仮想キャラクタの方位の確定は柔軟性が低く、仮想アプリケーションのユーザ体験が低下する。
【0005】
仮想キャラクタの方位の確定の柔軟性が低いという上記問題に対して、現在まで効果的な解決策が提案されない。
【発明の概要】
【発明が解決しようとする課題】
【0006】
本発明の実施例は、関連技術における仮想キャラクタの方位の確定の柔軟性が低いという技術的問題を少なくとも解決するように、仮想キャラクタの方位確定方法、装置及び記憶媒体を提供する。
【課題を解決するための手段】
【0007】
本発明の実施例の一つの態様による仮想キャラクタの方位確定方法は、プリセットシーンにおいて、仮想キャラクタの第一のリファレンス方位を取得し、ここで、第一のリファレンス方位が仮想キャラクタの到達しようとする所定方位と重なることと、第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得することと、第一のリファレンス方位を第一の相対方位に従って第二のリファレンス方位に調整し、ここで、第二のリファレンス方位に対する所定方位の相対方位が第一の相対方位であり、現在の方位が第一のリファレンス方位の調整に伴って更新され、更新された現在の方位と調整された第一のリファレンス方位の間の相対方位が第一の相対方位であることと、第二のリファレンス方位と第一の相対方位に基づいて仮想キャラクタの現在の方位を所定方位に更新することとを含む。
【0008】
本発明の実施例の別の態様による仮想キャラクタの方位確定装置は、一つ又は複数のプロセッサ、及びプログラムユニットを記憶するための一つ又は複数のメモリを備え、ここで、プログラムユニットがプロセットによって実行され、プログラムユニットが、プリセットシーンにおいて、仮想キャラクタの第一のリファレンス方位を取得するように構成され、ここで、第一のリファレンス方位が仮想キャラクタの到達しようとする所定方位と重なる第一の取得ユニットと、第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得するように構成される第二の取得ユニットと、第一のリファレンス方位を第一の相対方位に従って第二のリファレンス方位に調整するように構成され、ここで、第二のリファレンス方位に対する所定方位の相対方位が第一の相対方位であり、現在の方位が第一のリファレンス方位の調整に伴って更新され、更新された現在の方位と調整された第一のリファレンス方位の間の相対方位が第一の相対方位である調整ユニットと、第二のリファレンス方位と第一の相対方位に基づいて仮想キャラクタの現在の方位を所定方位に更新するように構成される更新ユニットとを含む。
【0009】
本発明の実施例の別の態様による記憶媒体は、コンピュータプログラムを記憶し、コンピュータプログラムが実行される時に本発明の実施例の仮想キャラクタの方位確定方法を実行するように設定される。
【0010】
本発明の実施例の別の態様による電子装置は、該電子装置は、メモリとプロセッサを備え、ここで、メモリにコンピュータプログラムが記憶され、プロセッサが本発明の実施例の仮想キャラクタの方位確定方法を実行するためにコンピュータプログラムを実行するように構成される。
【発明の効果】
【0011】
本発明の実施例では、プリセットシーンにおいて、仮想キャラクタの第一のリファレンス方位を取得し、ここで、第一のリファレンス方位が仮想キャラクタの到達しようとする所定方位と重なり、第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得し、第一のリファレンス方位を第一の相対方位に従って第二のリファレンス方位に調整し、ここで、第二のリファレンス方位に対する所定方位の相対方位が第一の相対方位であり、現在の方位が第一のリファレンス方位の調整に伴って更新され、更新された現在の方位と調整された第一のリファレンス方位の間の相対方位が第一の相対方位であり、第二のリファレンス方位と第一の相対方位に基づいて仮想キャラクタの現在の方位を所定方位に更新する。第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得し、第一のリファレンス方位を上記第一の相対方位に従って第二のリファレンス方位に調整し、さらに第二のリファレンス方位と第一の相対方位に基づいて仮想キャラクタの現在の方位を所定方位に更新することにより、プリセットシーンにおける仮想キャラクタの位置への調整の目的を達成し、ユーザが所定方位を自ら見つけるように仮想キャラクタを制御する必要があることを回避し、それによって仮想キャラクタの方位の確定の柔軟性の技術的効果を達成し、さらに相関技術における仮想キャラクタの方位の確定の柔軟性が低いという技術的問題を解決する。
【図面の簡単な説明】
【0012】
【
図1】本発明の実施例による仮想現実ヘルメットの概略図である。
【
図2】本発明の実施例による仮想キャラクタの方位確定方法のフローチャートである。
【
図3】本発明の実施例による第一のリファレンス向きを第一の相対角度に従って第二のリファレンス方位に示される第二のリファレンス向きに調整する方法のフローチャートである。
【
図4】本発明の実施例による第一のリファレンス位置の座標を第一の相対座標に従って第二のリファレンス方位に示される第二のリファレンス位置に調整する方法のフローチャートである。
【
図5】本発明の実施例による第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得する方法のフローチャートである。
【
図6】本発明の実施例による仮想現実アプリケーションでの仮想キャラクタの初期状態の概略図である。
【
図7】本発明の実施例による仮想キャラクタの向きを調整する概略図である。
【
図8】本発明の実施例による仮想キャラクタの位置を調整する概略図である。
【
図9】本発明の実施例による仮想キャラクタの方位確定装置の概略図である。
【
図10】本発明の実施例に係る電子装置の構造ブロック図である。
【発明を実施するための形態】
【0013】
ここで記載される図面は本発明の実施例をさらに理解するためのものであり、本出願の一部を構成し、本発明の例示的な実施例及びその説明は本発明を解釈するためのものであり、本発明を不当に限定するものではない。
【0014】
当業者が本発明の解決策をより良く理解するために、以下に本発明の実施例の図面を組み合わせながら、本発明の実施例における技術的解決策を明確に、完全に説明し、明らかに、説明される実施例が本発明の実施例の一部だけであり、全ての実施例ではない。本発明の実施例に基づき、当業者が創造的な労力を要せずに想到し得る全ての他の実施例は、本発明の保護範囲に属するべきである。
【0015】
説明すべきものとして、本発明の明細書と特許請求の範囲及び上記図面中の用語「第一」、「第二」などは類似のオブジェクトを区別するためのものであり、特定の順序又は前後順序を説明することに用いられる必要がない。このように用いられるデータは、ここで説明される本発明の実施例がここで図示又は記載されるもの以外の順序で実施されることができるように、適切な場合で交換可能であると理解すべきである。また、用語「含む」と「有する」及びそれらの任意の変形は、非排他的な包括を覆うことを意図し、例えば、一連のステップ又はユニットを含む過程、方法、システム、製品又は装置は明確に列挙されたステップ又はユニットに限定される必要がなく、明確に列挙されないもの又はこれらのプロセス、方法、製品又は装置の固有の他のステップ又はユニットを含むことができる。
【0016】
本発明の実施例の一つの態様によれば、仮想キャラクタの方位確定方法の実施例が提供される。
【0017】
選択可能に、本実施例では、上記仮想キャラクタの方位確定方法は
図1に示す仮想現実(VR:Virtual Reality)ヘルメットに応用されてもよい。
図1は本発明の実施例による仮想現実ヘルメットの概略図である。
図1に示すように、本発明の実施例による仮想キャラクタの方位確定方法は仮想現実ヘルメットによって実行されてもよく、該仮想現実ヘルメットが表示機能を有することができ、仮想現実アプリケーションがインストールされ、仮想現実シーンに適用する。
【0018】
以下に本発明の実施例における上記の仮想キャラクタの方位確定方法を詳細に説明する。
【0019】
図2は本発明の実施例による仮想キャラクタの方位確定方法のフローチャートである。
図2に示すように、該仮想キャラクタの方位確定方法は以下のステップを含む。
【0020】
ステップS202において、プリセットシーンにおいて、仮想キャラクタの第一のリファレンス方位を取得する。
【0021】
本発明の上記ステップS202で提供される技術的解決策では、プリセットシーンにおいて、仮想キャラクタの第一のリファレンス方位を取得し、ここで、第一のリファレンス方位が仮想キャラクタの到達しようとする所定方位と重なる。
【0022】
該実施例では、仮想キャラクタは、仮想アプリケーションにおけるユーザに対応するキャラクタであり、ユーザの実際動作に対応し、例えば、ユーザが前進、後退、回転などの動作により、仮想キャラクタに前進、後退、回転などの動作を実行させる。仮想アプリケーションのプリセットシーンは仮想キャラクタが動作するシーンであり、一定のゲームルールを有するゲームシーンであってもよい。選択可能に、仮想アプリケーションは仮想現実(VR)アプリケーションである。
【0023】
プリセットシーンにおける仮想キャラクタの第一のリファレンス方位を取得し、ここで、第一のリファレンス方位が仮想キャラクタの到達しようとする所定方位と重なり、該所定方位が、仮想キャラクタが仮想アプリケーションでプリセットイベントを実行する時にプリセットされた方位であり、仮想アプリケーションのプログラムによってプリセットされ、例えば、該プリセット方位が、仮想キャラクタがプリセットシーンにおいてゲームルールに従って設定する必要がある方位と向きであり、プリセットイベントがゲームを起動するイベントである場合、プリセット方位がゲームを起動する時のプリセットシーンにおける仮想キャラクタのプリセットされた初期化位置及び向きであってもよく、即ち、仮想キャラクタが最終的に該所定方位に位置する場合、仮想アプリケーションで設定された、ゲームを起動するプリセットイベントが実行される。第一のリファレンス方位はプリセットシーンにおけるリファレンスオブジェクトの方位であってもよく、ここで、リファレンスオブジェクトがプリセットシーンにおける仮想キャラクタの方位を設定する時に参照するためのオブジェクトである。例えば、現実シーンにおいて、ユーザが一定の区域に入る場合、仮想現実アプリケーションにおけるユーザに対応する仮想キャラクタが現実シーンにおける区域に対応する仮想区域に入り、該仮想区域が仮想キャラクタのリファレンスオブジェクトとなる。
【0024】
第一のリファレンス方位が所定方位と重なり、選択可能に、プログラムによりリファレンスオブジェクトのリファレンス方位を所定方位と重なる方位に設定する。例えば、リファレンスオブジェクトの向きを仮想アプリケーションでプリセットされたターゲット向きに設定する。プリセット座標系において、リファレンスオブジェクトの角度が仮想アプリケーションでプリセットされた角度と重なり、リファレンスオブジェクトの位置を仮想アプリケーションでプリセットされた所定位置に設定し、リファレンスオブジェクトの座標が仮想アプリケーションでプリセットされた座標と重なる。
【0025】
ステップS204において、第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得する。
【0026】
本発明の上記ステップS204で提供される技術的解決策では、プリセットシーンにおける仮想キャラクタの現在の方位を示すための現在の方位を取得し、該現在の方位、例えば、プリセットシーンにおける仮想キャラクタの現在の位置、現在の向きがハードウエアによって確定され、プログラムで直接変更することができなく、ここで、現在の位置、現在の向きが装置センサーによって確定され、プログラムで直接変更することができない。仮想キャラクタの第一のリファレンス方位を取得した後、第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得し、該第一の方位がハードウェアによって確定され、プログラムで第一の相対方位を直接変更することができなく、即ち、仮想キャラクタとリファレンスオブジェクトの間の第一の相対方位がハードウエアによって確定され、例えば、装置センサーによって確定され、プログラムで仮想キャラクタとリファレンスオブジェクトの間の第一の相対方位を直接変更することができるが、プログラムでプリセットシーンにおけるリファレンスオブジェクトの方位を示すための第一のリファレンス方位を変更することができる。
【0027】
選択可能に、第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得する時に、プリセットシーンにおける仮想キャラクタの向きとリファレンスオブジェクトの向きとの角度差を取得し、該角度差が即ちプリセットシーンにおける仮想キャラクタの向きとリファレンスオブジェクトの向きとの夾角であり、プリセットシーンにおける仮想キャラクタの位置座標とリファレンスオブジェクトの位置座標との座標差を取得することもでき、プリセットシーンにおける仮想キャラクタの向きとリファレンスオブジェクトの向きとの角度差、プリセットシーンにおける仮想キャラクタの位置座標とリファレンスオブジェクトの位置座標との座標差を同時に取得することもできる。
【0028】
ステップS206において、第一のリファレンス方位を第一の相対方位に従って第二のリファレンス方位に調整する。
【0029】
本発明の上記ステップS206で提供される技術的解決策では、第一のリファレンス方位を第一の相対方位に従って第二のリファレンス方位に調整し、ここで、第二のリファレンス方位に対する所定方位の相対方位が第一の相対方位であり、現在の方位が第一のリファレンス方位の調整に伴って更新され、更新された現在の方位と調整された第一のリファレンス方位の間の相対方位が第一の相対方位である。
【0030】
第一の相対方位がハードウエアによって確定され、プログラムで直接変更することができないが、プログラムで第一のリファレンス方位を直接設定及び変更することができ、現在の方位が第一のリファレンス方位の調整に伴って更新され、更新された現在の方位と調整された第一のリファレンス方位の間の相対方位が第一の相対方位であるため、プログラムでプリセットシーンにおけるリファレンスオブジェクトの方位を直接設定及び変更することができ、このようにしてプリセットシーンにおけるリファレンスオブジェクトの方位が設定及び変更された後、プリセットシーンにおける仮想キャラクタの方位も確定されることができる。
【0031】
第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得した後、第一のリファレンス方位を第一の相対方位に従って第二のリファレンス方位に調整し、ここで、第二のリファレンス方位に対する所定方位の相対方位が第一の相対方位である。
【0032】
ステップS208において、第二のリファレンス方位と第一の相対方位に基づいて仮想キャラクタの現在の方位を所定方位に更新する。
【0033】
本発明の上記ステップS208で提供される技術的解決策では、第一のリファレンス方位を第一の相対方位に従って第二のリファレンス方位に調整した後、プリセットシーンにおいて第一の相対方位に基づいてリファレンスオブジェクトの第一のリファレンス方位を調整して仮想キャラクタの現在の方位を所定方位に更新する。例えば、仮想キャラクタの現在の向きとリファレンス向きとの角度差を取得した後、リファレンスオブジェクトの向きを調整して仮想キャラクタの現在の向きをターゲット向きに更新することにより、リファレンスオブジェクトの位置を変えずに維持することができ、リファレンスオブジェクトをターゲット向きに対する現在の向きの角度差に従ってターゲット向きに対する現在の向きの方向の逆方向で回転し、それによって仮想キャラクタの現在の向きをターゲット向きに更新する。
【0034】
仮想キャラクタの現在の位置が仮想アプリケーションの所定位置と重ならない場合、仮想キャラクタの現在の位置とリファレンスオブジェクトの位置との座標差を取得し、プリセット座標系における現在の位置の座標と第一のリファレンス位置の座標との座標差を取得することができ、座標差に基づいて第一のリファレンス位置をリファレンス位置の座標に対する現在の位置の座標の方向の逆方向に従って上記座標差でシフトし、それによってリファレンスオブジェクトの位置を調整して仮想キャラクタの現在の位置を所定位置として更新し、さらに現在の方位が所定方位と重なるという目的を達成し、ユーザがプリセットシーンにおいて自ら移動するように仮想キャラクタを制御して方位を確定することによって引き起こされる、仮想キャラクタの方位の確定が柔軟ではないという問題を回避し、仮想キャラクタの方位の確定の柔軟性を向上させるという目的を達成し、ユーザに対応する仮想キャラクタがプリセットシーンに入ってすぐに使用できなくて引き起こされる体験が悪いという問題を回避し、それによってユーザ体験を向上させる。
【0035】
上記ステップS202-ステップS208で、プリセットシーンにおいて、仮想キャラクタの第一のリファレンス方位を取得し、ここで、第一のリファレンス方位が仮想キャラクタの到達しようとする所定方位と重なり、第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得し、第一のリファレンス方位を第一の相対方位に従って第二のリファレンス方位に調整し、ここで、第二のリファレンス方位に対する所定方位の相対方位が第一の相対方位であり、現在の方位が第一のリファレンス方位の調整に伴って更新され、更新された現在の方位と調整された第一のリファレンス方位の間の相対方位が第一の相対方位であり、第二のリファレンス方位と第一の相対方位に基づいて仮想キャラクタの現在の方位を所定方位に更新することにより、関連技術における仮想キャラクタの方位の確定の柔軟性が低いという技術的問題を解決することができ、それによって仮想キャラクタの方位の確定の柔軟性の技術的効果を達成する。
【0036】
一つの選択可能な実施形態として、ステップS202で、仮想キャラクタの第一のリファレンス方位を取得することは、現在の方位に示される現在の位置が所定方位に示される所定位置と重なる場合、第一のリファレンス方位に示される第一のリファレンス向きを取得し、ここで、第一のリファレンス向きが所定方位に示される所定向きと重なることを含む。
【0037】
プリセットシーンにおける仮想キャラクタの所定方位はターゲット向きを含み、即ち、プリセットシーンにおける、仮想アプリケーションのプログラムで設定された仮想キャラクタのターゲット向きは、仮想キャラクタが仮想アプリケーションでプリセットイベントを実行する時にプリセットされた向きであり、プリセット座標系における角度で表されてもよい。現在の方位に示される現在の位置が所定方位に示される所定位置と重なる場合、仮想アプリケーションのプリセットシーンにおける仮想キャラクタのターゲット向きを取得する。仮想キャラクタは、仮想アプリケーションに入ってプリセットルールに従ってプリセットイベントを実行する前に、現在の方位に示される現在の位置が所定方位に示される所定位置と重なる時に、プリセットシーンにおける仮想キャラクタの現在の向きがターゲット向きと一致すれば実行でき、例えば、プリセットイベントがゲームを起動することであり、プリセットシーンにおける仮想キャラクタの現在の向きがターゲット向きと一致する場合、ゲームを直接起動することができる。プリセットシーンにおける仮想キャラクタのターゲット向きを取得することにより、プリセットシーンにおける仮想キャラクタの所定方位を取得することが実現される。
【0038】
第一のリファレンス方位に示される第一のリファレンス向きを取得し、ここで、第一のリファレンス向きが所定方位に示される所定向きと重なる。リファレンスオブジェクトはプリセットシーンにおける仮想キャラクタの方位を設定する時に参照するためのオブジェクトであってもよい。該リファレンスオブジェクトと仮想キャラクタの間の相対向きがハードウエアによって確定され、例えば、装置センサーによって確定され、プログラムでリファレンスオブジェクトと仮想キャラクタの間の相対向きを直接変更することができないが、プログラムでプリセットシーンにおけるリファレンスオブジェクトの向きを示すためのリファレンス向きを変更することができる。仮想アプリケーションのプリセットシーンにおける仮想キャラクタのターゲット向きを取得した後、第一のリファレンス向きが所定方位に示される所定向きと重なるように第一のリファレンス向きを設定し、即ち、プログラムでリファレンスオブジェクトの向きをターゲット向きと重なる向きに設定することにより、リファレンスオブジェクトの向きがターゲット向きと重なるようにプリセット座標系においてリファレンスオブジェクトの角度を変更することができる。リファレンスオブジェクトの向きをターゲット向きに設定することにより、第一のリファレンス向きが所定方位に示される所定向きと重なるという目的を達成する。
【0039】
一つの選択可能な実施形態として、第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得するステップS420は、現在の方位に示される現在の向きの第一の基準リファレンス向きに対する第一の相対角度を取得することを含む。
【0040】
仮想キャラクタが仮想アプリケーションのプリセットシーンに入る時に、プリセットシーンにおける仮想キャラクタの現在の向きを示すための現在の向きを取得し、該現在の向きがハードウエアによって確定され、仮想アプリケーションのプログラムで直接変更することができない。第一のリファレンス方位に示される第一のリファレンス向きを取得した後、現在の方位に示される現在の向きの第一の基準リファレンス向きに対する第一の相対角度を取得し、即ち、仮想キャラクタの現在の向きとリファレンスオブジェクトの向きとの角度差を取得し、該角度差が即ちプリセットシーンにおける仮想キャラクタの向きとリファレンスオブジェクトの向きとの夾角である。現在の方位に示される現在の向きの第一の基準リファレンス向きに対する第一の相対角度を取得することにより、第一のリファレンス方位に対する、仮想キャラクタの現在の方位の第一の相対方位を取得することが実現される。
【0041】
一つの選択可能な実施形態として、第一のリファレンス方位を第一の相対方位に従って第二のリファレンス方位に調整するステップS206は、第一のリファレンス向きを第一の相対角度に従って第二のリファレンス方位に示される第二のリファレンス向きに調整することを含み、ここで、第二のリファレンス向きに対する所定向きの相対角度が第一の相対角度であり、現在の向きが第一のリファレンス向きの調整に伴って更新され、更新された現在の向きと調整された第一のリファレンス向きの間の相対角度が第一の相対角度であり、第一の相対方位が第一の相対角度を含む。
【0042】
第一の相対角度がハードウエアによって確定され、プログラムで直接変更することができないが、プログラムでプリセットシーンにいおけるリファレンスオブジェクトの向きを直接接地と変更することができ、即ち、第一のリファレンス向きは調整されてもよい。現在の向きが第一のリファレンス向きの調整に伴って更新され、更新された現在の向きと調整された第一のリファレンス向きの間の相対角度が第一の相対角度であり、第一の相対方位が第一の相対角度を含み、このようにしてプリセットシーンにおけるリファレンスオブジェクトの向きが設定及び変更された後、これに伴ってプリセットシーンにおける仮想キャラクタの向きも確定される。
【0043】
現在の方位に示される現在の向きの第一の基準リファレンス向きに対する第一の相対角度を取得した後、第一のリファレンス向きを第一の相対角度に従って第二のリファレンス方位に示される第二のリファレンス向きに調整し、第二のリファレンス向きに対する所定向きの相対角度が第一の相対角度であり、リファレンスオブジェクトの位置を変えずに維持することができ、リファレンスオブジェクトの向きをプリセットポイントを回転の中心として回転し、この時にリファレンスオブジェクトの向きがターゲット向きからシフトし、仮想キャラクタの現在の向きがターゲット向きと重なるまで仮想キャラクタの現在の向きがリファレンスオブジェクトの向きの回転に伴って回転し、さらに調整された仮想キャラクタの現在の向きがターゲット向きと重なることを達成し、ユーザがプリセットシーンにおいて自ら移動するように仮想キャラクタを制御して向きを確定することによって引き起こされる、仮想キャラクタの方位の確定が柔軟ではないという問題を回避し、仮想キャラクタの方位の確定の柔軟性を向上させるという目的を達成し、ユーザに対応する仮想キャラクタがプリセットシーンに入ってすぐに使用できなくて引き起こされる体験が悪いという問題を回避し、それによってユーザ体験を向上させる。
【0044】
一つの選択可能な実施形態として、第一のリファレンス向きを第一の相対角度に従って第二のリファレンス方位に示される第二のリファレンス向きに調整することは、第一のリファレンス向きに対する現在の向きの方向を第一の相対角度に示される角度方向として確定することと、第一のリファレンス向きを角度方向の逆方向に従って第一の相対角度に示される角度差で第二のリファレンス向きに回転することとを含む。
【0045】
図3は本発明の実施例による第一のリファレンス向きを第一の相対角度に従って第二のリファレンス方位に示される第二のリファレンス向きに調整する方法のフローチャートである。
図3に示すように、該方法は以下のステップを含む。
【0046】
ステップS301において、第一のリファレンス向きに対する現在の向きの方向を第一の相対角度に示される角度方向として確定する。
【0047】
本発明の上記ステップS301で提供される技術的解決策では、プリセットシーンにおいて、第一のリファレンス向きに対する現在の向きの方向はリファレンスオブジェクトに対する仮想キャラクタの向き、即ち、リファレンスオブジェクトの向きをリファレンスにする仮想キャラクタの向きであってもよい。例えば、リファレンスオブジェクトの向きがプリセットシーンにおける北向きであり、リファレンスオブジェクトに対する仮想キャラクタの向きがプリセットシーンにおける北から西へ45°シフトしたものである。
【0048】
ステップS302において、第一のリファレンス向きを角度方向の逆方向に従って第一の相対角度に示される角度差で第二のリファレンス向きに回転する。
【0049】
本発明の上記ステップS302で提供される技術的解決策では、第一のリファレンス向きに対する現在の向きの方向を第一の相対角度に示される角度方向として確定した後、第一の相対角度が変化しないため、リファレンスオブジェクトを角度方向の逆方向に従って第一の相対角度に示される角度差で回転する。リファレンスオブジェクトの向きをプリセットポイントを回転ポイントとし、第一の相対角度に示される角度方向の逆方向に従って回転し、この時にリファレンスオブジェクトの向きがターゲット向きからシフトし、仮想キャラクタの現在の向きがリファレンス向きの回転に伴って回転する。回転角度が上記角度差に達する場合、回転された仮想キャラクタの現在の向きがターゲット向きと重なり、さらに仮想キャラクタの現在の向きがターゲット向きと重なるという目的を達成し、仮想キャラクタの方位の確定の柔軟性を向上させるという目的を達成する。
【0050】
該実施例では、第一のリファレンス向きに対する現在の向きの方向を第一の相対角度に示される角度方向として確定し、第一のリファレンス向きを角度方向の逆方向に従って第一の相対角度に示される角度差で第二のリファレンス向きに回転することにより、第一のリファレンス向きを第一の相対角度に従って第二のリファレンス方位に示される第二のリファレンス向きに調整することが実現される。
【0051】
一つの選択可能な実施形態として、第二のリファレンス方位と第一の相対方位に基づいて仮想キャラクタの現在の方位を所定方位に更新するステップS208は、第二のリファレンス向きと第一の相対角度に基づいて仮想キャラクタの現在の向きを所定向きに更新することを含む。
【0052】
第一のリファレンス向きを第一の相対角度に従って第二のリファレンス方位に示される第二のリファレンス向きに調整した後、第一の相対角度が変化しないため、第二のリファレンス向きと第一の相対角度に基づいて仮想キャラクタの現在の向きを所定向きとして更新し、即ち、現在の向きが所定向きと重なり、ユーザがプリセットシーンにおいて自ら移動するように仮想キャラクタを制御して方位を確定することによって引き起こされる、仮想キャラクタの方位の確定が柔軟ではないという問題を回避し、仮想キャラクタの方位の確定の柔軟性を向上させるという目的を達成し、ユーザに対応する仮想キャラクタがプリセットシーンに入ってすぐに使用できなくて引き起こされる体験が悪いという問題を回避し、それによってユーザ体験を向上させる。
【0053】
一つの選択可能な実施形態として、仮想キャラクタの第一のリファレンス方位を取得するステップS202は、現在の方位に示される現在の向きが所定方位に示される所定向きと重なる場合、第一のリファレンス方位に示される第一のリファレンス位置を取得し、ここで、第一のリファレンス位置が所定方位に示される所定位置と重なることを含む。
【0054】
プリセットシーンにおける仮想キャラクタの所定方位は、所定位置を含み、仮想キャラクタが仮想アプリケーションでプリセットイベントを実行する時にプリセットされた位置であり、プリセット座標系における座標で表されてもよい。選択可能に、現在の方位に示される現在の向きが所定方位に示される所定向きと重なる場合、前記第一のリファレンス方位に示される第一のリファレンス位置を取得する。選択可能に、仮想キャラクタは、仮想アプリケーションに入ってプリセットルールに従ってプリセットイベントを実行する前に、現在の方位に示される現在の向きが所定方位に示される所定向きと重なる時に、プリセットシーンにおける仮想キャラクタの現在の位置が所定位置と一致すれば実行でき、例えば、プリセットシーンにおける仮想キャラクタの現在の位置が所定位置と一致する場合、ゲームをすぐに起動する。
【0055】
第一のリファレンス位置はプリセットシーンにおけるリファレンスオブジェクトの位置であってもよく、リファレンスオブジェクトがプリセットシーンにおける仮想キャラクタの位置を設定する時に参照するためのオブジェクトであってもよい。該リファレンスオブジェクトと仮想キャラクタの間の相対位置がハードウエアによって確定され、例えば、装置センサーによって確定され、プログラムでリファレンスオブジェクトと仮想キャラクタの間の相対位置を直接変更することができないが、プログラムでプリセットシーンにおけるリファレンスオブジェクトの向きを示すためのリファレンス位置を変更することができる。
【0056】
仮想アプリケーションのプリセットシーンにおける仮想キャラクタの所定位置を取得した後、第一のリファレンス方位に示される第一のリファレンス位置を取得し、ここで、第一のリファレンス位置が所定方位に示される所定位置と重なる。選択可能に、リファレンスオブジェクトの位置を所定方位に示される所定位置に設定し、即ち、プログラムでリファレンスオブジェクトの位置を所定位置と重なる向きに設定することにより、リファレンスオブジェクトの位置が所定位置と重なるようにリファレンスプリセット座標系においてリファレンスオブジェクトの角度を変更することができる。リファレンスオブジェクトの位置を所定位置に設定することにより、第一のリファレンス位置が所定方位に示される所定位置と重なるという目的を達成する。
【0057】
一つの選択可能な実施形態として、第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得するステップS420は、現在の方位に示される現在の位置の座標の第一のリファレンス位置の座標に対する第一の相対座標を取得することを含む。
【0058】
仮想キャラクタが仮想アプリケーションのプリセットシーンに入る時に、現在の方位に示される現在の位置を取得し、即ち、プリセットシーンにおける仮想キャラクタの現在の向きを示すための現在の位置を取得し、該現在の位置がハードウエアによって確定され、仮想アプリケーションのプログラムで直接変更することができない。第一のリファレンス方位に示される第一のリファレンス位置を取得した後、現在の方位に示される現在の位置の座標の第一のリファレンス位置の座標に対する第一の相対座標を取得することにより、仮想キャラクタの現在の位置とリファレンスオブジェクトの位置との座標差を取得することができ、該座標差がプリセット座標系における仮想キャラクタの座標値とプリセット座標系における座標値との差であってもよい。現在の方位に示される現在の位置の座標の第一のリファレンス位置の座標に対する第一の相対座標を取得することにより、第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得することが実現される。
【0059】
一つの選択可能な実施形態として、第一のリファレンス方位を第一の相対方位に従って第二のリファレンス方位に調整するステップS206は、第一のリファレンス位置の座標を第一の相対座標に従って第二のリファレンス方位に示される第二のリファレンス位置の座標に調整することを含み、ここで、第二のリファレンス位置の座標に対する所定位置の座標の相対座標が第一の相対座標であり、現在の位置の座標が第一のリファレンス位置の座標の調整に伴って更新され、更新された現在の位置の座標と調整された第一のリファレンス位置の座標の間の相対座標が第一の相対座標であり、第一の相対方位が第一の相対座標を含む。
【0060】
第一の相対座標がハードウエアによって確定され、プログラムで直接変更することができないが、プログラムでプリセットシーンにおけるリファレンスオブジェクトの位置を直接設定及び変更することができ、現在の位置の座標が第一のリファレンス位置の座標の調整に伴って更新され、更新された現在の位置の座標と調整された第一のリファレンス位置の座標との相対座標が第一の相対座標であり、第一の相対方位が第一の相対座標を含み、このようにしてプリセットシーンにおけるリファレンスオブジェクトの位置が設定及び変更された後、これに伴ってプリセットシーンにおける仮想キャラクタの位置も確定される。
【0061】
現在の方位に示される現在の位置の座標の第一のリファレンス位置の座標に対する第一の相対座標を取得した後、第一のリファレンス位置の座標を第一の相対座標に従って第二のリファレンス方位に示される第二のリファレンス位置の座標に調整し、即ち、現在の位置がプリセット位置と重なるように、プリセットシーンにおいて第一の相対座標に基づいてリファレンスオブジェクトの位置を第二のリファレンス位置に調整する。選択可能に、第一のリファレンス位置を第一のリファレンス位置の座標に対する現在の位置の座標の方向の逆方向に従って第一の相対座標に示される座標差でシフトし、この時にリファレンスオブジェクトの位置が所定位置からずれ、仮想キャラクタの現在の位置が所定位置と重なるまで仮想キャラクタの現在の位置がリファレンスオブジェクトの位置の移動に伴って移動し、さらに調整された仮想キャラクタの現在の位置が所定位置と重なることを達成し、ユーザがプリセットシーンにおいて自ら移動するように仮想キャラクタを制御して位置を確定することによって引き起こされる、仮想キャラクタの方位の確定が柔軟ではないという問題を回避し、仮想キャラクタの方位の確定の柔軟性を向上させるという目的を達成し、ユーザに対応する仮想キャラクタがプリセットシーンに入ってすぐに使用できなくて引き起こされる体験が悪いという問題を回避し、それによってユーザ体験を向上させる。
【0062】
一つの選択可能な実施形態として、第一のリファレンス位置の座標を第一の相対座標に従って第二のリファレンス方位に示される第二のリファレンス位置に調整することは、第一のリファレンス位置の座標に対する現在の位置の座標の方向を第一の相対座標に示される座標方向として確定することと、第一のリファレンス位置の座標を座標方向の逆方向に従って第一の相対座標に示される座標差で第二のリファレンス位置にシフトすることとを含む。
【0063】
図4は本発明の実施例による第一のリファレンス位置の座標を第一の相対座標に従って第二のリファレンス方位に示される第二のリファレンス方位に調整する方法のフローチャートである。
図4に示すように、該方法は以下のステップを含む。
【0064】
ステップS401において、第一のリファレンス位置の座標に対する現在の位置の座標の方向を第一の相対座標に示される座標方向として確定する。
【0065】
本発明の上記ステップS401で提供される技術的解決策では、現在の方位に示される現在の位置の座標の第一のリファレンス位置の座標に対する第一の相対座標を取得した後、第一のリファレンス位置の座標に対する現在の位置の座標の方向を第一の相対座標に示される座標方向として確定する。プリセットシーンにおいて、仮想キャラクタの位置がリファレンスオブジェクトに対する位置であり、即ちリファレンスオブジェクトの位置をリファレンスにする仮想キャラクタの位置である。例えば、プリセット座標系におけるリファレンスオブジェクトの座標が(0,0)であり、プリセット座標系における仮想キャラクタの座標が(a,b)であり、リファレンスオブジェクトに対する仮想キャラクタの位置が横軸にリファレンスオブジェクトからa距離ずれ、縦軸にリファレンスオブジェクトからb距離ずれて確定された位置であり、第一のリファレンス位置の座標に対する現在の位置の座標の方向が横軸にリファレンスオブジェクトからa距離ずれ、縦軸にリファレンスオブジェクトからb距離ずれる方向であり、それによって第一の相対座標に示される座標方向として確定される。
【0066】
ステップS402において、第一のリファレンス位置の座標を座標方向の逆方向に従って第一の相対座標に示される座標差で第二のリファレンス位置にシフトする。
【0067】
本発明の上記ステップS402で提供される技術的解決策では、第一のリファレンス位置の座標に対する現在の位置の座標の方向を第一の相対座標に示される座標方向として確定した後、第一のリファレンス位置の座標を座標方向の逆方向に従って第一の相対座標に示される座標差で第二のリファレンス位置にシフトする。リファレンスオブジェクトの位置を上記座標差でシフトすることができ、この時にリファレンスオブジェクトの位置が所定位置からずれ、仮想キャラクタの現在の位置がリファレンス位置の移動に伴って移動し、ずれ距離が上記第一の相対座標に示される座標差に達する場合、ずれた仮想キャラクタの現在の位置が所定位置と重なり、さらに仮想キャラクタの現在の位置が所定位置と重なるという目的を達成し、仮想キャラクタの方位の確定の柔軟性を向上させるという目的を達成する。
【0068】
該実施例では第一のリファレンス位置の座標に対する現在の位置の座標の方向を第一の相対座標に示される座標方向として確定し、第一のリファレンス位置の座標を座標方向の逆方向に従って第一の相対座標に示される座標差で第二のリファレンス位置にシフトすることにより、第一のリファレンス位置の座標を第一の相対座標に従って第二のリファレンス方位に示される第二のリファレンス位置に調整することが実現される。
【0069】
一つの選択可能な実施形態として、第二のリファレンス方位と第一の相対方位に基づいて仮想キャラクタの現在の方位を所定方位に更新するステップS208は、第二のリファレンス位置の座標と第一の相対座標に基づいて仮想キャラクタの現在の位置の座標を所定位置の座標に更新することを含む。
【0070】
第一のリファレンス位置の座標を座標方向の逆方向に従って第一の相対座標に示される座標差で第二のリファレンス位置にシフトした後、第一の相対座標が変化しないため、第二のリファレンス位置の座標と第一の相対座標に基づいて現在の位置の座標を所定位置の座標として更新し、即ち、現在の位置の座標が所定位置の座標と重なり、ユーザがプリセットシーンにおいて自ら移動するように仮想キャラクタを制御して方位を確定することによって引き起こされる、仮想キャラクタの方位の確定が柔軟ではないという問題を回避し、仮想キャラクタの方位の確定の柔軟性を向上させるという目的を達成し、ユーザに対応する仮想キャラクタがプリセットシーンに入ってすぐに使用できなくて引き起こされる体験が悪いという問題を回避し、それによってユーザ体験を向上させる。
【0071】
一つの選択可能な実施形態として、仮想キャラクタの第一のリファレンス方位を取得するステップS202は、現在の方位に示される現在の位置が所定方位に示される所定位置と重ならなく、かつ現在の方位に示される現在の向きが所定方位に示されるターゲット向きと重ならない場合、第一のリファレンス方位に示される第一のリファレンス向きと第一のリファレンス位置を取得し、ここで、第一のリファレンス向きが所定方位に示される所定向きと重なり、第一のリファレンス位置が所定方位に示される所定位置と重なることを含む。
【0072】
プリセットシーンにおける仮想キャラクタの所定方位はターゲット向きと所定位置を含み、即ち、プリセットシーンにおける、仮想アプリケーションのプログラムで設定された仮想キャラクタのターゲット向きと所定位置は、仮想キャラクタが仮想アプリケーションでプリセットイベントを実行する時にプリセットされた向きと位置であり、プリセット座標系における角度及び座標で表されてもよい。選択可能に、現在の方位に示される現在の位置が所定方位に示される所定位置と重ならなく、かつ現在の方位に示される現在の向きが所定方位に示されるターゲット向きと重ならない場合、仮想キャラクタは、仮想アプリケーションに入ってプリセットルールに従ってプリセットイベントを実行する前に、実行できるためにプリセットシーンにおける現在の向きがターゲット向きと一致し、現在の位置が所定位置と一致する必要があり、例えば、ゲームを起動できるために、プリセットシーンにおける仮想キャラクタの現在の向きがターゲット向きと一致し、現在の位置が所定位置と一致する必要がある。
【0073】
第一のリファレンス方位に示される第一のリファレンス向きと第一のリファレンス位置を取得し、ここで、第一のリファレンス向きが所定方位に示される所定向きと重なり、第一のリファレンス位置が所定方位に示される所定位置と重なる。リファレンスオブジェクトはプリセットシーンにおける仮想キャラクタの向き及び位置を設定する時に参照するためのオブジェクトであってもよい。該リファレンスオブジェクトと仮想キャラクタの間の相対向きと相対位置がハードウエアによって確定され、例えば、装置センサーによって確定され、プログラムでリファレンスオブジェクトと仮想キャラクタの間の相対向きと相対位置を直接変更することができないが、プログラムでプリセットシーンにおけるリファレンスオブジェクトの向きを示すためのリファレンス向きとリファレンス位置を変更することができる。仮想アプリケーションのプリセットシーンにおける仮想キャラクタのターゲット向きと所定位置を取得した後、第一のリファレンス向きが所定方位に示される所定向きと重なり、第一のリファレンス位置が所定方位に示される所定位置と重なるように、リファレンスオブジェクトの向きをターゲット向きに設定し、リファレンスオブジェクトの位置を所定位置に設定し、これによりリファレンスオブジェクトの向きがターゲット向きと重なるようにプリセット座標系においてリファレンスオブジェクトの角度を変更し、リファレンスオブジェクトの位置が所定位置と重なるようにプリセット座標系においてリファレンスオブジェクトの座標を変更することができる。
【0074】
一つの選択可能な実施形態として、第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得するステップS420は、現在の方位に示される現在の向きの第一の基準リファレンス向きに対する第一の相対角度を取得することと、現在の方位に示される現在の位置の座標の第一のリファレンス位置の座標に対する第一の相対座標を取得することとを含む。
【0075】
仮想キャラクタが仮想アプリケーションのプリセットシーンに入る時に、プリセットシーンにおける仮想キャラクタの現在の向きを示すための現在の向き、現在の方位に示される現在の位置を取得し、該現在の向きと現在の位置がハードウエアによって確定され、仮想アプリケーションのプログラムで直接変更することができない。第一のリファレンス方位に示される第一のリファレンス向きと第一のリファレンス方位に示される第一のリファレンス位置を取得した後、現在の方位に示される現在の向きの第一の基準リファレンス向きに対する第一の相対角度と現在の方位に示される現在の位置の座標の第一のリファレンス位置の座標に対する第一の相対座標とを取得し、即ち、仮想キャラクタの現在の向きとリファレンスオブジェクトの向きとの角度差と、仮想キャラクタの現在の位置とリファレンスオブジェクトの位置との座標差とを取得する。現在の方位に示される現在の向きの第一の基準リファレンス向きに対する第一の相対角度と現在の方位に示される現在の位置の座標の第一のリファレンス位置の座標に対する第一の相対座標とを取得することにより、第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得するという目的を達成する。
【0076】
図5は本発明の実施例による第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得する方法のフローチャートである。
図5に示すように、該方法は以下のステップを含む。
【0077】
ステップS501において、第一のリファレンス向きに対する前記現在の方位に示される現在の向きの第一の相対角度を取得する。
【0078】
本発明の上記ステップS501で提供される技術的解決策では、仮想キャラクタが仮想アプリケーションのプリセットシーンに入る時に、プリセットシーンにおける仮想キャラクタの現在の向きを示すための現在の向きを取得する。第一のリファレンス方位に示される第一のリファレンス向きを取得した後、現在の方位に示される現在の向きの第一の基準リファレンス向きに対する第一の相対角度を取得し、即ち、仮想キャラクタの現在の向きとリファレンスオブジェクトの向きとの角度差を取得し、該角度差が即ちプリセットシーンにおける仮想キャラクタの向きとリファレンスオブジェクトの向きとの夾角である。
【0079】
ステップS502において、前記現在の方位に示される現在の位置の座標の第一のリファレンス位置の座標に対する第一の相対座標を取得する。
【0080】
本発明の上記ステップS502で提供される技術的解決策では、仮想キャラクタが仮想アプリケーションのプリセットシーンに入る時に、現在の方位に示される現在の位置を取得し、即ち、プリセットシーンにおける仮想キャラクタの現在の向きを示すための現在の位置を取得する。第一のリファレンス方位に示される第一のリファレンス位置を取得した後、現在の方位に示される現在の位置の座標の第一のリファレンス位置の座標に対する第一の相対座標を取得することにより、仮想キャラクタの現在の位置とリファレンスオブジェクトの位置との座標差を取得することができ、該座標差がプリセット座標系における仮想キャラクタの座標値とプリセット座標系における座標値との差であってもよい。
【0081】
該実施例では現在の方位に示される現在の向きの第一の基準リファレンス向きに対する第一の相対角度と、現在の方位に示される現在の位置の座標の第一のリファレンス位置の座標に対する第一の相対座標とを取得することにより、第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得することが実現される。
【0082】
一つの選択可能な実施形態として、第一のリファレンス方位を第一の相対方位に従って第二のリファレンス方位に調整するステップS206は、第一のリファレンス向きを第一の相対角度に従って第二のリファレンス方位に示される第二のリファレンス向きに調整することを含み、ここで、第二のリファレンス向きに対する所定向きの相対角度が第一の相対角度であり、現在の向きが第一のリファレンス向きの調整に伴って更新され、更新された現在の向きと調整された第一のリファレンス向きの間の相対角度が第一の相対角度であり、第一の相対方位が第一の相対角度を含み、第二のリファレンス方位と第一の相対方位に基づいて仮想キャラクタの現在の方位を所定方位に更新するステップS208は、第二のリファレンス向きと第一の相対角度に基づいて仮想キャラクタの現在の向きを所定向きに更新することを含む。
【0083】
現在の向きが第一のリファレンス向きの調整に伴って更新され、更新された現在の向きと調整された第一のリファレンス向きの間の相対角度が第一の相対角度であり、該第一の相対方位が第一の相対角度を含み、このようにしてプリセットシーンにおけるリファレンスオブジェクトの向きが設定及び変更された後、これに伴ってプリセットシーンにおける仮想キャラクタの向きも確定される。
【0084】
現在の方位に示される現在の向きの第一の基準リファレンス向きに対する第一の相対角度を取得した後、第一のリファレンス向きを第一の相対角度に従って第二のリファレンス方位に示される第二のリファレンス向きに調整し、第二のリファレンス向きに対する所定向きの相対角度が第一の相対角度であり、リファレンスオブジェクトの位置を変えずに維持することができ、リファレンスオブジェクトの向きをプリセットポイントを回転の中心として回転し、この時にリファレンスオブジェクトの向きがターゲット向きからシフトし、仮想キャラクタの現在の向きがターゲット向きと重なるまで仮想キャラクタの現在の向きがリファレンスオブジェクトの向きの回転に伴って回転する。
【0085】
第一のリファレンス向きを角度方向の逆方向に従って第一の相対角度に示される角度差で第二のリファレンス向きに回転した後、第一の相対角度が変化しないため、第二のリファレンス向きと第一の相対角度に基づいて仮想キャラクタの現在の向きを所定向きとして更新し、ユーザがプリセットシーンにおいて自ら移動するように仮想キャラクタを制御して方位を確定することによって引き起こされる、仮想キャラクタの方位の確定が柔軟ではないという問題を回避し、仮想キャラクタの方位の確定の柔軟性を向上させるという目的を達成し、ユーザに対応する仮想キャラクタがプリセットシーンに入ってすぐに使用できなくて引き起こされる体験が悪いという問題を回避し、それによってユーザ体験を向上させる。
【0086】
一つの選択可能な実施形態として、第二のリファレンス向きに基づいて仮想キャラクタの現在の向きを所定向きとして更新した後、第一のリファレンス方位を第一の相対方位に従って第二のリファレンス方位に調整することは、第一のリファレンス位置の座標を第一の相対座標に従って第二のリファレンス方位に示される第二のリファレンス位置の座標に調整することをさらに含み、ここで、第二のリファレンス位置の座標に対する所定位置の座標の相対座標が第一の相対座標であり、現在の位置の座標が第一のリファレンス位置の座標の調整に伴って更新され、更新された現在の位置の座標と調整された第一のリファレンス位置の座標の間の相対座標が第一の相対座標であり、第一の相対方位が第一の相対座標を含み、第二のリファレンス方位と相対方位に基づいて仮想キャラクタの現在の方位を所定方位に更新することは、第二のリファレンス位置の座標と第一の相対座標に基づいて仮想キャラクタの現在の位置の座標を所定位置の座標に更新することをさらに含む。
【0087】
現在の位置の座標が第一のリファレンス位置の座標の調整に伴って更新され、更新された現在の位置の座標と調整された第一のリファレンス位置の座標との相対座標が第一の相対座標であり、第一の相対方位が第一の相対座標を含み、このようにしてプリセットシーンにおけるリファレンスオブジェクトの位置が設定及び変更された後、これに伴ってプリセットシーンにおける仮想キャラクタの位置も確定される。
【0088】
第一のリファレンス向きを第一の相対角度に従って第二のリファレンス方位に示される第二のリファレンス向きに調整した後、現在の位置が所定位置と重なるように第一のリファレンス位置の座標を第一の相対座標に従って第二のリファレンス方位に示される第二のリファレンス位置の座標に調整する。選択可能に、第一のリファレンス位置を第一のリファレンス位置の座標に対する現在の位置の座標の方向の逆方向に従って第一の相対座標に示される座標差でシフトし、この時にリファレンスオブジェクトの位置が所定位置からずれ、仮想キャラクタの現在の位置が所定位置と重なるまで仮想キャラクタの現在の位置がリファレンスオブジェクトの位置の移動に伴って移動し、さらに調整された仮想キャラクタの現在の位置が所定位置と重なることを達成する。
【0089】
第一のリファレンス位置の座標を座標方向の逆方向に従って第一の相対座標に示される座標差で第二のリファレンス位置にシフトした後、第二のリファレンス位置の座標と第一の相対座標に基づいて仮想キャラクタの現在の位置の座標を所定位置の座標として更新し、即ち、現在の位置の座標が所定位置の座標と重なり、ユーザがプリセットシーンにおいて自ら移動するように仮想キャラクタを制御して方位を確定することによって引き起こされる、仮想キャラクタの方位の確定が柔軟ではないという問題を回避し、仮想キャラクタの方位の確定の柔軟性を向上させるという目的を達成し、ユーザに対応する仮想キャラクタがプリセットシーンに入ってすぐに使用できなくて引き起こされる体験が悪いという問題を回避し、それによってユーザ体験を向上させる。
【0090】
一つの選択可能な実施形態として、第二のリファレンス方位に基づいて仮想キャラクタの現在の方位を所定方位として更新した後、仮想アプリケーションでプリセットイベントを実行するように仮想キャラクタを制御する。
【0091】
第二のリファレンス方位と第一の相対方位に基づいて仮想キャラクタの現在の方位を所定方位として更新した後、仮想アプリケーションでプリセットイベントを実行するように仮想キャラクタを制御し、該プリセットイベントが、仮想キャラクタがゲームでゲームルールに従って実行する行動的活動、例えば、武器の使用、攻撃、防御、逃げなどの行動的活動をオンにすることであってもよく、ここでいかなる制限がない。
【0092】
一つの選択可能な実施形態として、仮想アプリケーションは仮想現実アプリケーションである。
【0093】
上記実施例に対して、仮想アプリケーションが仮想現実アプリケーションであってもよく、上記方法はゲームシーンと現実シーンに関連する仮想現実アプリケーションに応用されてもよく、該仮想現実がユーザに対応する仮想キャラクタの初期位置と初期向きを設定する必要があり、現実エリアのユーザの位置にかかわらず、ゲームシーンにおけるユーザに対応する仮想キャラクタの位置及び向きを仮想現実アプリケーションにおけるプリセット位置及び向きに設定することができ、仮想キャラクタの方位の確定の柔軟性を向上させてユーザが仮想現実アプリケーションをすぐに体験することができ、ユーザがアプリケーションに入るたびに、ユーザに対応する仮想キャラクタが所定位置及び向きを自ら見つける必要があり、仮想現実アプリケーションに対するユーザの体験効果に影響を与えることを回避する。
【0094】
以下に好ましい実施例を組み合わせて本発明の技術的解決策を説明する。
【0095】
該実施例のハードウェア環境がHTC Vice装置であってもよく、仮想アプリケーションが仮想現実アプリケーションであり、プリセットシーンがゲームシーンであり、仮想キャラクタがユーザに対応する仮想キャラクタであり、リファレンスオブジェクトが仮想部屋である。
【0096】
現実環境において、ユーザは、部屋に入り、仮想現実アプリケーションにおけるHTC Vive装置に対応する仮想キャラクタで、仮想現実アプリケーションにおける部屋に対応する仮想部屋に入り、仮想キャラクタとキャラクタ部屋がゲームシーンにある。仮想キャラクタと仮想部屋の相対位置がハードウエアによって確定され、例えば、装置センサーによって確定され、プログラムで変更することができないが、プログラムでゲームシーンにおける仮想部屋の方位を変更することができ、ゲームシーンにおける仮想部屋の向き及び位置の変更を含む。
【0097】
該実施例における仮想キャラクタの方位確定方法は以下のステップを含む。
【0098】
ステップ1において、ゲームシーンにおいて、仮想部屋の位置及び向きを仮想現実アプリケーションで予め設定された位置及び向きに設定し、ここで、仮想部屋の位置及び向きが第一のリファレンス方位であり、仮想現実アプリケーションで予め設定された位置及び向きが仮想キャラクタの到達しようとする所定方位であり、第一のリファレンス方位が仮想キャラクタの到達しようとする所定方位と重なる。
【0099】
図6は本発明の実施例による仮想現実アプリケーションでの仮想キャラクタの初期状態の概略図である。ここで、仮想部屋の位置が
図6に示され、ゲームシーンにおける仮想部屋の向きが点A上の矢印で示される向きであり、ゲームシーンにおける仮想部屋の方位が仮想キャラクタの最終的に到達しようとする所定方位であり、即ち、プリセットシーンにおける仮想部屋の向きが仮想キャラクタの最終的に到達しようとするターゲット向きであり、プリセットシーンにおける仮想部屋の位置が仮想キャラクタの最終的に到達しようとする所定位置である。ゲームシーンにおける仮想キャラクタの現在の位置が仮想部屋の左上方にあり、ゲームシーンにおける仮想キャラクタの現在の向きが点B上の矢印で示される向きである。仮想キャラクタの現在の向きと仮想部屋の向きとの夾角がαであり、夾角αを取得し、即ち、第一のリファレンス方位に示される第一のリファレンス向きに対する仮想キャラクタの現在の方位に示される現在の向きの第一の相対角度がαである。
【0100】
ステップ2において、仮想キャラクタの現在の向きと仮想キャラクタ部屋の向きとの夾角αを取得した後、仮想部屋を点Aの周りに第一のリファレンス向きに対する現在の向きの方向の逆方向でα回転し、即ち、現在の方位に示される現在の向きの第一の基準リファレンス向きに対する第一の相対角度を取得し、第一のリファレンス向きを上記逆方向に従って第一の相対角度に示される角度差で第二のリファレンス向きに回転し、第二のリファレンス向きと第一の相対角度に基づいて仮想キャラクタの現在の向きを所定向きに更新する。
【0101】
図7は本発明の実施例による仮想キャラクタの向きを調整する概略図である。
図7に示すように、仮想キャラクタと仮想部屋の間の相対向きがハードウエアによって確定され、例えば、装置センサーによって確定され、プログラムで仮想キャラクタと仮想部屋の間の相対向きを直接変更することができないが、プログラムでゲームシーンにおける仮想部屋の向きを変更することができる。プリセットシーンにおいて、ゲームシーンにおける仮想キャラクタの現在の向きがゲームで設定されたターゲット向きと重なるように仮想キャラクタの向きと仮想部屋の向きとの夾角αに基づいてゲームシーンにおける仮想部屋の向きを調整する。選択可能に、ゲームシーンにおける仮想部屋の位置を変えずに維持し、点Aの周りに仮想部屋に対する仮想キャラクタの逆方向で角度α回転し、この時に仮想部屋の向きがターゲット向きからシフトし、仮想キャラクタと仮想部屋の間の相対向きが変化しないため、仮想キャラクタの現在の向きが仮想部屋の向きの変更に伴って変更され、点B′上の矢印で示される向きは仮想キャラクタが調整された向きであり、それによって仮想キャラクタの回転した後の現在の向きがターゲット向きと重なる。ステップ3において、仮想部屋に対する仮想キャラクタの現在の位置の座標差を取得し、座標差に従って仮想キャラクタの現在の位置を所定位置に調整し、即ち、現在の方位に示される現在の位置の座標の第一のリファレンス位置の座標に対する第一の相対座標を取得し、第一のリファレンス位置の座標を第一のリファレンス位置の座標に対する現在の位置の座標の方向の逆方向に従って第一の相対座標に示される座標差で第二のリファレンス位置にシフトし、第二のリファレンス位置の座標と第一の相対座標に基づいて仮想キャラクタの現在の位置の座標を所定位置の座標に更新する。
【0102】
図8は本発明の実施例による仮想キャラクタの位置を調整する概略図である。
図8に示すように、仮想キャラクタの現在の向きがターゲット向きと重なった後、
図7に示す点B′と点Aとの座標差を取得し、Aを逆方向へこの座標差移動し、ここで、点B′が点B”に変更され、即ち、点B”の位置が
図6に示す点Aの位置と重なり、点B”の向きが
図6に示す点Aの向きと重なり、
図6と
図7における点Aが
図8のA′に変更される。
【0103】
選択可能に、上記仮想キャラクタの方位の確定プロセスは仮想アプリケーションが起動される時に完了されることができ、ユーザ位置及び向きを設定する必要がある任意の時に完了されることもできる。
【0104】
該実施例におけるHTC Viveアプリケーションでは、部屋内のユーザの座標がハードウエアによって確定され、プログラムでユーザの位置及び向きを直接変更することができないため、多くのゲームにおいてユーザがゲームを開始するために部屋の特定の場所に行く必要がある。本発明の実施例でゲームシーンにおける部屋の位置及び向きを動的に変更する方法を用い、ゲームシーンにおけるユーザの位置及び向きを間接的に変更する。仮想キャラクタがゲームに入った後、安定な座標情報を待って取得し、その後シーンにおけるユーザの座標及び向きとゲームで設定された座標及び向きとの差を計算し、その後差に基づいてゲームにおける部屋の座標を回転及び移動し、ユーザの位置及び向きへの初期化の目的を達成する。部屋内のユーザの相対位置に関わらず、ゲームシーンにおけるユーザの位置及び向きをゲームで予め設定された位置及び向きに設定することができ、仮想キャラクタの方位の確定の柔軟性を向上させるという効果を達成し、ユーザがソフトウェアに入る時にすぐに使用し始めることができ、それによって仮想現実アプリケーションのユーザ体験効果を向上させる。
【0105】
説明すべきものとして、上述した各方法の実施例に対して、簡単に説明するために、それらを一連の動作の組み合わせとして説明するが、当業者であれば、本発明が説明される動作の順番の制限を受けなく、本発明によれば、いくつかのステップが他の順番を採用すること又は同時に実行されることができるためであると理解すべきである。次に、当業者であれば、明細書に説明される実施例はいずれも好ましい実施例に属し、係る動作とモジュールが必ず本発明の必要なものではないと理解すべきである。
【0106】
以上の実施形態の説明を通じて、当業者は上記実施例による方法がソフトウェアと必要なハードウェアプラットフォームを組み合わせることにより実現されてもよく、当然ハードウェアで実現されてもよく、多くの場合で前者がより良い実施形態であることを明確に理解することができる。このような理解に基づき、本発明の技術的解決策は実質的又は従来技術に貢献を与える部分がソフトウェア製品の形態で表現されてもよく、該コンピュータソフトウェア製品が一つの端末装置(携帯電話、パーソナルコンピュータ、サーバー、又はネットワーク装置などであってもよい)に本発明の各実施例に記載の方法を実行させるためのいくつかのコマンドを含む一つの記憶媒体(例えばROM/RAM、磁気ディスク、光ディスク)に記憶される。
【0107】
本発明の実施例の別の態様による上記仮想キャラクタの方位確定方法を実施するための装置は、一つ又は複数のプロセッサ、及びプログラムユニットを記憶するための一つ又は複数のメモリを備え、ここで、プログラムユニットがプロセッサによって実行され、プログラムユニットが第一の取得ユニット、第二の取得ユニット、調整ユニットと更新ユニットを含む。
【0108】
図9は本発明の実施例による仮想キャラクタの方位確定装置の概略図である。
図9に示すように、該仮想キャラクタの方位確定装置は第一の取得ユニット10、第二の取得ユニット20、調整ユニット30と更新ユニット40を備えることができる。
【0109】
第一の取得ユニット10は、プリセットシーンにおいて、仮想キャラクタの第一のリファレンス方位を取得するように構成され、ここで、第一のリファレンス方位が仮想キャラクタの到達しようとする所定方位と重なる。
【0110】
第二の取得ユニット20は、第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得するように構成される。
【0111】
調整ユニット30は、第一のリファレンス方位を第一の相対方位に従って第二のリファレンス方位に調整するように構成され、ここで、第二のリファレンス方位に対する所定方位の相対方位が第一の相対方位であり、現在の方位が第一のリファレンス方位の調整に伴って更新され、更新された現在の方位と調整された第一のリファレンス方位の間の相対方位が第一の相対方位である。
【0112】
更新ユニット40は、第二のリファレンス方位と第一の相対方位に基づいて仮想キャラクタの現在の方位を所定方位に更新するように構成される。
【0113】
ここで説明すべきものとして、上記第一の取得ユニット10、第二の取得ユニット20、調整ユニット30と更新ユニット40は装置の一部として仮想現実ヘルメットで動作することができ、上記ユニットで実現される機能が仮想現実ヘルメットでのプロセッサによって実行されてもよい。
【0114】
選択可能に、第一の取得ユニット10は、現在の方位に示される現在の位置が所定方位に示される所定位置と重なる場合、第一のリファレンス方位に示される第一のリファレンス向きを取得するように構成され、ここで、第一のリファレンス向きが所定方位に示される所定向きと重なる第一の取得モジュールを含む。
【0115】
ここで説明すべきものとして、上記第一の取得モジュールは装置の一部として仮想現実ヘルメットで動作することができ、上記モジュールで実現される機能が仮想現実ヘルメットでのプロセッサによって実行されてもよい。
【0116】
選択可能に、第二の取得ユニット20は、以下のステップを実行し、第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得することを実現するように構成される:現在の方位に示される現在の向きの第一の基準リファレンス向きに対する第一の相対角度を取得する。
【0117】
選択可能に、調整ユニット30は以下のステップを実行し、第一のリファレンス方位を第一の相対方位に従って第二のリファレンス方位に調整することを実現するように構成される:第一のリファレンス向きを第一の相対角度に従って第二のリファレンス方位に示される第二のリファレンス向きに調整することを含み、ここで、第二のリファレンス向きに対する所定向きの相対角度が第一の相対角度であり、現在の向きが第一のリファレンス向きの調整に伴って更新され、更新された現在の向きと調整された第一のリファレンス向きの間の相対角度が第一の相対角度であり、第一の相対方位が第一の相対角度を含む。
【0118】
選択可能に、調整ユニット30は第一の確定モジュールと回転モジュールを含む。ここで、第一の確定モジュールは第一のリファレンス向きに対する現在の向きの方向を第一の相対角度に示される角度方向として確定するように構成され、回転モジュールは第一のリファレンス向きを角度方向の逆方向に従って第一の相対角度に示される角度差で第二のリファレンス向きに回転するように構成される。
【0119】
ここで説明すべきものとして、上記第一の確定モジュールと回転モジュールは装置の一部として仮想現実ヘルメットで動作することができ、上記モジュールで実現される機能が仮想現実ヘルメットでのプロセッサによって実行されてもよい。
【0120】
選択可能に、更新ユニット40は以下のステップを実行し、第二のリファレンス方位と第一の相対方位に基づいて仮想キャラクタの現在の方位を所定方位に更新し、第二のリファレンス向きと第一の相対角度に基づいて仮想キャラクタの現在の向きを所定向きに更新することを実現するように構成される。
【0121】
第一の取得ユニット10は、現在の方位に示される現在の向きが所定方位に示される所定向きと重なる場合、第一のリファレンス方位に示される第一のリファレンス位置を取得するように構成され、ここで、第一のリファレンス位置が所定方位に示される所定位置と重なる第二の取得モジュールを含む。
【0122】
ここで説明すべきものとして、上記第二の取得モジュールは装置の一部として仮想現実ヘルメットで動作することができ、上記モジュールで実現される機能が仮想現実ヘルメットでのプロセッサによって実行されてもよい。
【0123】
第二の取得ユニット20は、以下のステップを実行し、第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得することを実現するように構成される:現在の方位に示される現在の位置の座標の第一のリファレンス位置の座標に対する第一の相対座標を取得する。
【0124】
調整ユニット30は以下のステップを実行し、第一のリファレンス方位を第一の相対方位に従って第二のリファレンス方位に調整することを実現するように構成される:第一のリファレンス位置の座標を第一の相対座標に従って第二のリファレンス方位に示される第二のリファレンス位置の座標に調整し、ここで、第二のリファレンス位置の座標に対する所定位置の座標の相対座標が第一の相対座標であり、現在の位置の座標が第一のリファレンス位置の座標の調整に伴って更新され、更新された現在の位置の座標と調整された第一のリファレンス位置の座標の間の相対座標が第一の相対座標であり、第一の相対方位が第一の相対座標を含む。
【0125】
選択可能に、調整ユニット30は第二の確定モジュールとシフトモジュールを含む。ここで、第二の確定モジュールは第一のリファレンス位置の座標に対する現在の位置の座標の方向を第一の相対座標に示される座標方向として確定するように構成され、シフトモジュールは、第一のリファレンス位置の座標を座標方向の逆方向に従って第一の相対座標に示される座標差で第二のリファレンス位置にシフトするように構成される。
【0126】
ここで説明すべきものとして、上記第二の確定モジュールとシフトモジュールは装置の一部として仮想現実ヘルメットで動作することができ、上記モジュールで実現される機能が仮想現実ヘルメットでのプロセッサによって実行されてもよい。
【0127】
選択可能に、更新ユニット40は以下のステップを実行し、第二のリファレンス方位と第一の相対方位に基づいて仮想キャラクタの現在の方位を所定方位に更新するように構成される:第二のリファレンス位置の座標と第一の相対座標に基づいて仮想キャラクタの現在の位置の座標を所定位置の座標に更新する。
【0128】
選択可能に、第一の取得ユニット10は、現在の方位に示される現在の位置が所定方位に示される所定位置と重ならなく、かつ現在の方位に示される現在の向きが所定方位に示されるターゲット向きと重ならない場合、第一のリファレンス方位に示される第一のリファレンス向きと第一のリファレンス位置を取得するように構成され、ここで、第一のリファレンス向きが所定方位に示される所定向きと重なり、第一のリファレンス位置が所定方位に示される所定位置と重なる第三の取得モジュールを含む。
【0129】
ここで説明すべきものとして、上記第三の取得モジュールは装置の一部として仮想現実ヘルメットで動作することができ、上記モジュールで実現される機能が仮想現実ヘルメットでのプロセッサによって実行されてもよい。
【0130】
選択可能に、第二の取得ユニット20は、以下のステップを実行し、第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得することを実現するように構成される:現在の方位に示される現在の向きの第一の基準リファレンス向きに対する第一の相対角度を取得し、現在の方位に示される現在の位置の座標の第一のリファレンス位置の座標に対する第一の相対座標を取得する。
【0131】
選択可能に、調整ユニット30は、以下のステップを実行し、第一のリファレンス方位を第一の相対方位に従って第二のリファレンス方位に調整することを実現するように構成される:第一のリファレンス向きを第一の相対角度に従って第二のリファレンス方位に示される第二のリファレンス向きに調整し、ここで、第二のリファレンス向きに対する所定向きの相対角度が第一の相対角度であり、現在の向きが第一のリファレンス向きの調整に伴って更新され、更新された現在の向きと調整された第一のリファレンス向きの間の相対角度が第一の相対角度であり、第一の相対方位が第一の相対角度を含み、更新ユニット40は以下のステップを実行し、第二のリファレンス方位と第一の相対方位に基づいて仮想キャラクタの現在方位を所定方位に更新し、第二のリファレンス向きと第一の相対角度に基づいて仮想キャラクタの現在の向きを所定向きに更新するように構成される。
【0132】
選択可能に、調整ユニット30はさらに第二のリファレンス向きに基づいて仮想キャラクタの現在の向きを所定向きに更新した後、第一のリファレンス位置の座標を第一の相対座標に従って第二のリファレンス方位に示される第二のリファレンス位置の座標に調整するように構成され、ここで、第二のリファレンス位置の座標に対する所定位置の座標の相対座標が第一の相対座標であり、現在の位置の座標が第一のリファレンス位置の座標の調整に伴って更新され、更新された現在の位置の座標と調整された第一のリファレンス位置の座標の間の相対座標が第一の相対座標であり、第一の相対方位が第一の相対座標を含み、更新ユニット40は第二のリファレンス位置の座標と第一の相対座標に基づいて仮想キャラクタの現在の位置の座標を所定位置の座標に更新するように構成される。
【0133】
選択可能に、該仮想キャラクタの方位確定装置は第二のリファレンス方位に基づいて仮想キャラクタの現在の方位を所定方位として更新した後、仮想アプリケーションでプリセットイベントを実行するように仮想キャラクタを制御するように構成される制御ユニットをさらに備えることができる。
【0134】
ここで説明すべきものとして、上記制御ユニットは装置の一部として仮想現実ヘルメットで動作することができ、上記ユニットで実現される機能が仮想現実ヘルメットでのプロセッサによって実行されてもよい。
【0135】
選択可能に、仮想アプリケーションは仮想現実アプリケーションである。
【0136】
説明すべきものとして、該実施例における第一の取得ユニット10は本出願の実施例におけるステップS202を実行するように構成されてもよく、該実施例における第二の取得ユニット20は本出願の実施例におけるステップS204を実行するように構成されてもよく、該実施例における調整ユニット30は本出願の実施例におけるステップS206を実行するように構成されてもよく、該実施例における更新ユニット40は本出願の実施例におけるステップS208を実行するように構成されてもよい。
【0137】
ここで説明すべきものとして、上記ユニットとモジュールは対応するステップで実現される例と応用シーンと同じであるが、上記実施例で開示される内容に限定されない。説明すべきものとして、上記モジュールは装置の一部として
図1に示すハードウエア環境で動作することができ、ソフトウエアによって実現されてもよいし、ハードウエアによって実現されてもよく、ここで、ハードウエア環境がネットワーク環境を含む。
【0138】
該実施例で第一の取得ユニット10によってプリセットシーンにおいて仮想キャラクタの第一のリファレンス方位を取得し、ここで、第一のリファレンス方位が仮想キャラクタの到達しようとする所定方位と重なり、第二の取得ユニット20によって第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得し、調整ユニット30によって第一のリファレンス方位を第一の相対方位に従って第二のリファレンス方位に調整し、ここで、第二のリファレンス方位に対する所定方位の相対方位が第一の相対方位であり、現在の方位が第一のリファレンス方位の調整に伴って更新され、更新された現在の方位と調整された第一のリファレンス方位の間の相対方位が第一の相対方位であり、更新ユニット40によって第二のリファレンス方位と第一の相対方位に基づいて仮想キャラクタの現在の方位を所定方位に更新し、これにより関連技術における仮想キャラクタの方位の確定の柔軟性が低いという技術的問題を解決することができ、それによって仮想キャラクタの方位を確定する柔軟性の技術的効果を達成する。
【0139】
本発明の実施例の別の態様によれば、上記仮想キャラクタの方位確定方法を実施するための電子装置が提供される。
【0140】
図10は本発明の実施例に係る電子装置の構造ブロック図である。
図10に示すように、該電子装置は、一つ又は複数(図において一つだけが示される)プロセッサ101、メモリ103を備えることができ、ここで、メモリ103にコンピュータプログラムが記憶されてもよく、プロセッサ101が本発明の実施例の仮想キャラクタの方位確定方法を実行するためにコンピュータプログラムを実行するように構成されてもよい。
【0141】
ここで、メモリ103はコンピュータプログラム及びモジュール、例えば本発明の実施例における仮想キャラクタの方位確定方法及び装置に対応するプログラム命令/モジュールをを記憶するように構成されてもよく、プロセッサ101はメモリ103に記憶されたソフトウェアプログラム及びモジュールを動作させることにより、様々な機能応用及びデータ処理を実行し、即ち上述した仮想キャラクタの方位確定方法を実現するように構成される。メモリ103は高速ランダムアクセスメモリを含むことができ、さらに不揮発性メモリ、例えば一つ又は複数の磁気ディスク記憶装置、フラッシュ装置又は他の不揮発性固体メモリデバイスを含むこともできる。いくつかの実施例では、メモリ103はプロセッサ101に対して遠隔に設置されたメモリをさらに含むことができる。上記ネットワークの実施例はインターネット、イントラネット、ローカルエリアネットワーク、移動通信ネットワーク及びそれらの組み合わせを含むがこれらに限定されない。
【0142】
選択可能に、
図10に示すように、該電子装置は伝送装置105及び入出力装置107をさらに備えることができる。ここで、伝送装置105は一つのネットワークを介してデータを受信又は送信することに用いられ、またプロセッサとメモリの間のデータ伝送に用いられてもよい。上述したネットワークの具体的な実施例は有線ネットワーク及び無線ネットワークを含むことができる。一つの実施例では、伝送装置105はインターネット又はローカルエリアネットワークと通信するためにネットワークケーブルを介して他のネットワーク装置とルーターに接続されることができるネットワークインタフェースコントローラ(NIC:Network Interface Controller)を含む。一つの実施例では、伝送装置105はインターネットと無線で通信するための無線周波数(RF:Radio Frequency)モジュールである。
【0143】
ここで、具体的には、メモリ103はコンピュータプログラムを記憶するように構成される。
【0144】
プロセッサ101はメモリ103に記憶されたコンピュータプログラムを伝送装置105で呼び出し、上記方法の実施例における各選択可能な実施例又は好ましい実施例の方法のステップのためのプログラムコードを実行することができる。
【0145】
プリセットシーンにおいて、仮想キャラクタの第一のリファレンス方位を取得し、ここで、第一のリファレンス方位が仮想キャラクタの到達しようとする所定方位と重なることと、
第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得することと、
第一のリファレンス方位を第一の相対方位に従って第二のリファレンス方位に調整し、ここで、第二のリファレンス方位に対する所定方位の相対方位が第一の相対方位であり、現在の方位が第一のリファレンス方位の調整に伴って更新され、更新された現在の方位と調整された第一のリファレンス方位の間の相対方位が第一の相対方位であることと、
第二のリファレンス方位と第一の相対方位に基づいて仮想キャラクタの現在の方位を所定方位に更新することとを含む。
【0146】
プロセッサ101はさらに現在の方位に示される現在の位置が所定方位に示される所定位置と重なる場合、第一のリファレンス方位に示される第一のリファレンス向きを取得し、ここで、第一のリファレンス向きが所定方位に示される所定向きと重なるというステップを実行するように構成される。
【0147】
プロセッサ101は、さらに第一のリファレンス向きを第一の相対角度に従って第二のリファレンス方位に示される第二のリファレンス向きに調整し、ここで、第二のリファレンス向きに対する所定向きの相対角度が第一の相対角度であり、現在の向きが第一のリファレンス向きの調整に伴って更新され、更新された現在の向きと調整された第一のリファレンス向きの間の相対角度が第一の相対角度であり、第一の相対方位が前記第一の相対角度を含むというステップを実行するように構成される。
【0148】
プロセッサ101はさらに第一のリファレンス向きに対する現在の向きの方向を第一の相対角度に示される角度方向に確定し、第一のリファレンス向きを角度方向の逆方向に従って第一の相対角度に示される角度差で第二のリファレンス向きに回転するというステップを実行するように構成される。
【0149】
プロセッサ101はさらに第二のリファレンス向きと第一の相対角度に基づいて仮想キャラクタの現在の向きを所定向きに更新するというステップを実行するように構成される。
【0150】
プロセッサ101はさらに現在の方位に示される現在の向きが所定方位に示される所定向きと重なる場合、第一のリファレンス方位に示される第一のリファレンス位置を取得し、ここで、第一のリファレンス位置が所定方位に示される所定位置と重なるというステップを実行するように構成される。
【0151】
プロセッサ101はさらに前記現在の方位に示される現在の位置の座標の第一のリファレンス位置の座標に対する第一の相対座標を取得するというステップを実行するように構成される。
【0152】
プロセッサ101はさらに第一のリファレンス位置の座標を第一の相対座標に従って第二のリファレンス方位に示される第二のリファレンス位置の座標に調整し、ここで、第二のリファレンス位置の座標に対する所定位置の座標の相対座標が第一の相対座標であり、現在の位置の座標が第一のリファレンス位置の座標の調整に伴って更新され、更新された現在の位置の座標と調整された第一のリファレンス位置の座標の間の相対座標が第一の相対座標であり、第一の相対方位が第一の相対座標を含むというステップを実行するように構成される。
【0153】
プロセッサ101はさらに第一のリファレンス位置の座標に対する現在の位置の座標の方向を第一の相対座標に示される座標方向として確定し、第一のリファレンス位置の座標を座標方向の逆方向に従って第一の相対座標に示される座標差で第二のリファレンス位置にシフトするというステップを実行するように構成される。
【0154】
プロセッサ101はさらに第二のリファレンス位置の座標と第一の相対座標に基づいて仮想キャラクタの現在の位置の座標を所定位置の座標に更新するというステップを実行するように構成される。
【0155】
プロセッサ101はさらに現在の方位に示される現在の位置が所定方位に示される所定位置と重ならなく、かつ現在の方位に示される現在の向きが所定方位に示されるターゲット向きと重ならない場合、第一のリファレンス方位に示される第一のリファレンス向きと第一のリファレンス位置を取得し、ここで、第一のリファレンス向きが所定方位に示される所定向きと重なり、第一のリファレンス位置が所定方位に示される所定位置と重なるというステップを実行するように構成される。
【0156】
プロセッサ101はさらに現在の方位に示される現在の向きの第一の基準リファレンス向きに対する第一相対角度を取得し、前記現在の方位に示される現在の位置の座標の第一のリファレンス位置の座標に対する第一の相対座標を取得するというステップを実行するように構成される。
【0157】
プロセッサ101は、さらに第一のリファレンス向きを第一の相対角度に従って第二のリファレンス方位に示される第二のリファレンス向きに調整し、ここで、第二のリファレンス向きに対する所定向きの相対角度が第一の相対角度であり、現在の向きが第一のリファレンス向きの調整に伴って更新され、更新された現在の向きと調整された第一のリファレンス向きの間の相対角度が第一の相対角度であり、第一の相対方位が前記第一の相対角度を含み、第二のリファレンス向きと第一の相対角度に基づいて仮想キャラクタの現在の向きを所定向きに更新するというステップを実行するように構成される。
【0158】
プロセッサ101はさらに第二のリファレンス向きに基づいて仮想キャラクタの現在の向きを所定向きに更新した後、第一のリファレンス位置の座標を第一の相対座標に従って第二のリファレンス方位に示される第二のリファレンス位置の座標に調整し、ここで、第二のリファレンス位置の座標に対する所定位置の座標の相対座標が第一の相対座標であり、現在の位置の座標が第一のリファレンス位置の座標の調整に伴って更新され、更新された現在の位置の座標と調整された第一のリファレンス位置の座標の間の相対座標が第一の相対座標であり、第一の相対方位が第一の相対座標を含み、第二のリファレンス位置の座標と第一の相対座標に基づいて仮想キャラクタの現在の位置の座標を所定位置の座標に更新するというステップを実行するように構成される。
【0159】
プロセッサ101はさらに第二のリファレンス方位に基づいて仮想キャラクタの現在の方位を所定方位として更新した後、仮想アプリケーションでプリセットイベントを実行するように仮想キャラクタを制御するというステップを実行するように構成される。
【0160】
本発明の実施例によれば、仮想キャラクタの方位確定方法のスキームが提供される。仮想アプリケーションのプリセットシーンにおける仮想キャラクタの所定方位を取得することにより、リファレンスオブジェクトのリファレンス方位を所定方位に設定し、ここで、リファレンス方位がプリセットにおけるリファレンスオブジェクトの方位を示すことに用いられ、仮想キャラクタの現在の方位とリファレンス方位との方位差を取得し、ここで、現在の方位がプリセットシーンにおける仮想キャラクタの現在の方位を示すことに用いられ、リファレンスオブジェクトと仮想キャラクタとの相対方位が変化しない場合、現在の方位が所定方位と重なるように、プリセットシーンにおいて方位差に基づいてリファレンスオブジェクトのリファレンス方位を調整し、プリセットシーンにおける仮想キャラクタの位置の調整の目的を達成し、それによって仮想キャラクタの方位の確定の柔軟性の技術的効果を達成し、さらに関連技術における仮想キャラクタの方位の確定の柔軟性が低いという技術的問題を解決する。
【0161】
選択可能に、本実施例における具体的な例について上記実施例で記載される例を参照することができ、本実施例では説明を省略する。
【0162】
当業者は、
図10に示す構造が例示的だけであり、電子装置が仮想現実ヘルメットであってもよいことを理解することができる。
図10は上記電子装置の構造を限定するものではない。例えば、電子装置はさらに
図10に示すよりも多い又はより少ないコンポーネント(例えばネットワークインターフェース、表示装置など)を備え、又は
図10に示すものと異なる構成を有することができる。
【0163】
当業者は上記の実施例における様々な方法の全て又は一部のステップを実現することがプログラムで端末装置に関連するハードウェアを指令して完了されてもよく、該プログラムがコンピュータ可読記憶媒体に記憶されてもよく、記憶媒体がフラッシュディスク、読み取り専用メモリ(ROM:Read-Only Memory)、ランダムアクセスメモリ(RAM:Random Access Memory)、磁気ディスク又は光ディスクなどを含むことができる。
【0164】
本発明の実施例はさらに記憶媒体を提供する。選択可能に、本実施例では、上記記憶媒体にコンピュータプログラムが記憶され、該コンピュータプログラムが実行される時に上記方法の実施例で提供される仮想キャラクタの方位確定方法におけるステップを実行するように構成されてもよい。
【0165】
選択可能に、本実施例では、上記憶媒体は上記実施例に示されるコンピュータネットワークにおけるコンピュータ端末グループのいずれかのコンピュータ端末に位置し、又は移動端末グループのいずれかの移動端末に位置することができる。
【0166】
選択可能に、本実施例では、記憶媒体は以下のステップを実行するためのプログラムコードを記憶するように構成される。
【0167】
プリセットシーンにおいて、仮想キャラクタの第一のリファレンス方位を取得し、ここで、第一のリファレンス方位が仮想キャラクタの到達しようとする所定方位と重なる。
【0168】
第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得する。
【0169】
第一のリファレンス方位を第一の相対方位に従って第二のリファレンス方位に調整し、ここで、第二のリファレンス方位に対する所定方位の相対方位が第一の相対方位であり、現在の方位が第一のリファレンス方位の調整に伴って更新され、更新された現在の方位と調整された第一のリファレンス方位の間の相対方位が第一の相対方位である。
【0170】
第二のリファレンス方位と第一の相対方位に基づいて仮想キャラクタの現在の方位を所定方位に更新する。
【0171】
選択可能に、記憶媒体は、さらに現在の方位に示される現在の位置が所定方位に示される所定位置と重なる場合、第一のリファレンス方位に示される第一のリファレンス向きを取得し、ここで、第一のリファレンス向きが所定方位に示される所定向きと重なるというステップを実行するためのプログラムコードを記憶するように構成される。
【0172】
選択可能に、記憶媒体は、さらに第一のリファレンス向きを第一の相対角度に従って第二のリファレンス方位に示される第二のリファレンス向きに調整し、ここで、第二のリファレンス向きに対する所定向きの相対角度が第一の相対角度であり、現在の向きが第一のリファレンス向きの調整に伴って更新され、更新された現在の向きと調整された第一のリファレンス向きの間の相対角度が第一の相対角度であり、第一の相対方位が前記第一の相対角度を含むというステップを実行するためのプログラムコードを記憶するように構成される。
【0173】
選択可能に、記憶媒体はさらに第一のリファレンス向きに対する現在の向きの方向を第一の相対角度に示される角度方向に確定し、第一のリファレンス向きを角度方向の逆方向に従って第一の相対角度に示される角度差で第二のリファレンス向きに回転するというステップを実行するためのプログラムコードを記憶するように構成される。
【0174】
選択可能に、記憶媒体はさらに第二のリファレンス向きと第一の相対角度に基づいて仮想キャラクタの現在の向きを所定向きに更新するというステップを実行するためのプログラムコードを記憶するように構成される。
【0175】
選択可能に、記憶媒体は、さらに現在の方位に示される現在の向きが所定方位に示される所定向きと重なる場合、第一のリファレンス方位に示される第一のリファレンス位置を取得し、ここで、第一のリファレンス位置が所定方位に示される所定位置と重なるというステップを実行するためのプログラムコードを記憶するように構成される。
【0176】
選択可能に、記憶媒体はさらに前記現在の方位に示される現在の位置の座標の第一のリファレンス位置の座標に対する第一の相対座標を取得するというステップを実行するためのプログラムコードを記憶するように構成される。
【0177】
選択可能に、記憶媒体はさらに第一のリファレンス位置の座標を第一の相対座標に従って第二のリファレンス方位に示される第二のリファレンス位置の座標に調整し、ここで、第二のリファレンス位置の座標に対する所定位置の座標の相対座標が第一の相対座標であり、現在の位置の座標が第一のリファレンス位置の座標の調整に伴って更新され、更新された現在の位置の座標と調整された第一のリファレンス位置の座標の間の相対座標が第一の相対座標であり、第一の相対方位が第一の相対座標を含むというステップを実行するためのプログラムコードを記憶するように構成される。
【0178】
選択可能に、記憶媒体はさらに第一のリファレンス位置の座標に対する現在の位置の座標の方向を第一の相対座標に示される座標方向として確定し、第一のリファレンス位置の座標を座標方向の逆方向に従って第一の相対座標に示される座標差で第二のリファレンス位置にシフトするというステップを実行するためのプログラムコードを記憶するように構成される。
【0179】
選択可能に、記憶媒体はさらに第二のリファレンス位置の座標と第一の相対座標に基づいて仮想キャラクタの現在の位置の座標を所定位置の座標に更新するというステップを実行するためのプログラムコードを記憶するように構成される。
【0180】
選択可能に、記憶媒体はさらに現在の方位に示される現在の位置が所定方位に示される所定位置と重ならなく、かつ現在の方位に示される現在の向きが所定方位に示されるターゲット向きと重ならない場合、第一のリファレンス方位に示される第一のリファレンス向きと第一のリファレンス位置を取得し、ここで、第一のリファレンス向きが所定方位に示される所定向きと重なり、第一のリファレンス位置が所定方位に示される所定位置と重なるというステップを実行するためのプログラムコードを記憶するように構成される。
【0181】
選択可能に、記憶媒体はさらに現在の方位に示される現在の向きの第一の基準リファレンス向きに対する第一相対角度を取得し、前記現在の方位に示される現在の位置の座標の第一のリファレンス位置の座標に対する第一の相対座標を取得するというステップを実行するためのプログラムコードを記憶するように構成される。
【0182】
選択可能に、記憶媒体はさらに第一のリファレンス向きを第一の相対角度に従って第二のリファレンス方位に示される第二のリファレンス向きに調整し、ここで、第二のリファレンス向きに対する所定向きの相対角度が第一の相対角度であり、現在の向きが第一のリファレンス向きの調整に伴って更新され、更新された現在の向きと調整された第一のリファレンス向きの間の相対角度が第一の相対角度であり、第一の相対方位が前記第一の相対角度を含み、第二のリファレンス向きと第一の相対角度に基づいて仮想キャラクタの現在の向きを所定向きに更新するというステップを実行するためのプログラムコードを記憶するように構成される。
【0183】
選択可能に、記憶媒体はさらに第二のリファレンス向きに基づいて仮想キャラクタの現在の向きを所定向きに更新した後、第一のリファレンス位置の座標を第一の相対座標に従って第二のリファレンス方位に示される第二のリファレンス位置の座標に調整し、ここで、第二のリファレンス位置の座標に対する所定位置の座標の相対座標が第一の相対座標であり、現在の位置の座標が第一のリファレンス位置の座標の調整に伴って更新され、更新された現在の位置の座標と調整された第一のリファレンス位置の座標の間の相対座標が第一の相対座標であり、第一の相対方位が第一の相対座標を含み、第二のリファレンス位置の座標と第一の相対座標に基づいて仮想キャラクタの現在の位置の座標を所定位置の座標に更新するというステップを実行するためのプログラムコードを記憶するように構成される。
【0184】
選択可能に、記憶媒体はさらに第二のリファレンス方位に基づいて仮想キャラクタの現在の方位を所定方位として更新した後、仮想アプリケーションでプリセットイベントを実行するように仮想キャラクタを制御するというステップを実行するためのプログラムコードを記憶するように構成される。
【0185】
選択可能に、本実施例における具体的な例について上記実施例で記載される例を参照することができ、本実施例では説明を省略する。
【0186】
選択可能に、本実施例では、上記憶媒体はUディスク、読み出し専用メモリ(ROM:Read-Only Memory)、ランダムアクセスメモリ(RAM:Random Access Memory)、モバイルハードディスク、磁気ディスク又は光ディスク等のプログラムコードを記憶できる各種の媒体を含むことができるがこれらに限定されない。
【0187】
以上に図面を参照して本発明の仮想キャラクタの方位確定方法、装置及び記憶媒体を例で説明する。しかし、当業者は、上記本発明で提供される仮想キャラクタの方位確定方法、装置及び記憶媒体に対して、本発明の趣旨を逸脱することなく種々の改良を行うことも可能である。したがって、本発明の保護範囲は添付の特許請求の範囲の内容によって確定されるべきである。
【0188】
上記本発明の実施例番号は説明のためだけであり、実施例の優劣を表したものではない。
【0189】
上記実施例における統合されたユニットはソフトウェア機能ユニットの形態で実現され且つ独立した製品として販売又は使用される時に、上記コンピュータ読み取り可能な記憶媒体に格納されてもよい。このような理解に基づき、本発明の技術的解決策は本質的に又は従来技術に寄与する部分又は該技術的解決策の全ての又は一部がソフトウェア製品の形で実現されてもよく、該コンピュータソフトウェア製品が一つ又は複数のコンピュータ装置(パーソナルコンピュータ、サーバー又はネットワーク装置等であってもよい)に本発明の様々な実施例に記載される方法の全て又は一部のステップを実行させるためのいくつかの命令を含む、記憶媒体に記憶される。
【0190】
本発明の実施例では、各実施例の説明について異なる強調を持っているため、ある実施例に詳述されていない部分に対して、他の実施例の関連説明を参照することができる。
【0191】
本出願が提供する、いくつかの実施例では、開示されるクライアントは、他の方式により実現されてもよいと理解すべきである。ここで、上記の装置の実施例は例示的なものだけであり、例えば前記ユニットの区分は、論理機能的区分だけであり、実際に実施する時に他の区分モードもあり得て、例えば複数のユニット又は構成要素は組合わせられてもよく、又は別のシステムに統合されてもよく、又はいくつかの特徴は無視されてもよく、又は実行されなくてもよい。また、示される又は議論される相互結合又は直接結合又は通信接続はいくつかのインターフェース、ユニット又はモジュールを介する間接的結合又は通信接続であってもよく、電気的又は他の形態であってもよい。
【0192】
分離部材として説明された前記ユニットは物理的に分離するものであってもよく又は物理的に分離するものでなくてもよく、ユニットとして表示された部材は物理的要素であってもよく又は物理的ユニットでなくてもよく、即ち一つの箇所に位置してもよく、又は複数のネットワーク要素に分布してもよい。実際のニーズに応じてそのうちの一部又は全てのユニットを選択して本実施例の技術的解決策の目的を達成することができる。
【0193】
また、本発明の各実施例における各機能ユニットは一つの処理ユニットに統合されてもよく、個々のユニットは単独で物理的に存在してもよく、二つ又は二つ以上のユニットは一つのユニットに統合されてもよい。上記の統合されたユニットはハードウェアの形態で実現されてもよく、ソフトウェア機能ブロックの形態で実現されてもよい。
【0194】
以上に説明したものは本発明の好ましい実施形態だけであり,指摘すべきものとして、当業者であれば、本発明の原理を逸脱しない前提で,いくつかの改良及び変更を行うことができ、これらの改良及び変更も本発明の保護範囲と見なされるべきである。
【産業上の利用可能性】
【0195】
リセットシーンにおいて、仮想キャラクタの第一のリファレンス方位を取得し、ここで、第一のリファレンス方位が仮想キャラクタの到達しようとする所定方位と重なり、第一のリファレンス方位に対する仮想キャラクタの現在の方位の第一の相対方位を取得し、第一のリファレンス方位を第一の相対方位に従って第二のリファレンス方位に調整し、ここで、第二のリファレンス方位に対する所定方位の相対方位が第一の相対方位であり、現在の方位が第一のリファレンス方位の調整に伴って更新され、更新された現在の方位と調整された第一のリファレンス方位の間の相対方位が第一の相対方位であり、第二のリファレンス方位と第一の相対方位に基づいて仮想キャラクタの現在の方位を所定方位に更新することにより、プリセットシーンにおける仮想キャラクタの位置の調整の目的を達成し、それによって仮想キャラクタの方位の確定の柔軟性の技術的効果を実現し、さらに関連技術における仮想キャラクタの方位の確定の柔軟性が低いという技術的問題を解決する。
【符号の説明】
【0196】
101 プロセッサ
103 メモリ
105 伝送装置
107 入出力装置