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

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

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

特許7023991仮想キャラクターの変位制御方法、装置、および記憶媒体
<>
  • 特許-仮想キャラクターの変位制御方法、装置、および記憶媒体 図1
  • 特許-仮想キャラクターの変位制御方法、装置、および記憶媒体 図2
  • 特許-仮想キャラクターの変位制御方法、装置、および記憶媒体 図3
  • 特許-仮想キャラクターの変位制御方法、装置、および記憶媒体 図4
  • 特許-仮想キャラクターの変位制御方法、装置、および記憶媒体 図5
  • 特許-仮想キャラクターの変位制御方法、装置、および記憶媒体 図6
  • 特許-仮想キャラクターの変位制御方法、装置、および記憶媒体 図7
  • 特許-仮想キャラクターの変位制御方法、装置、および記憶媒体 図8
  • 特許-仮想キャラクターの変位制御方法、装置、および記憶媒体 図9
  • 特許-仮想キャラクターの変位制御方法、装置、および記憶媒体 図10a
  • 特許-仮想キャラクターの変位制御方法、装置、および記憶媒体 図10b
  • 特許-仮想キャラクターの変位制御方法、装置、および記憶媒体 図10c
  • 特許-仮想キャラクターの変位制御方法、装置、および記憶媒体 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-02-14
(45)【発行日】2022-02-22
(54)【発明の名称】仮想キャラクターの変位制御方法、装置、および記憶媒体
(51)【国際特許分類】
   G06T 19/00 20110101AFI20220215BHJP
   G06F 3/01 20060101ALI20220215BHJP
   G06F 3/0484 20220101ALI20220215BHJP
   G06F 3/0488 20220101ALI20220215BHJP
   A63F 13/55 20140101ALI20220215BHJP
   A63F 13/52 20140101ALI20220215BHJP
   A63F 13/53 20140101ALI20220215BHJP
   A63F 13/214 20140101ALI20220215BHJP
【FI】
G06T19/00 A
G06F3/01 570
G06F3/0484
G06F3/0488
A63F13/55
A63F13/52
A63F13/53
A63F13/214
【請求項の数】 12
(21)【出願番号】P 2019572111
(86)(22)【出願日】2018-07-23
(65)【公表番号】
(43)【公表日】2020-09-03
(86)【国際出願番号】 CN2018096646
(87)【国際公開番号】W WO2019019968
(87)【国際公開日】2019-01-31
【審査請求日】2019-12-26
(31)【優先権主張番号】201710613071.2
(32)【優先日】2017-07-25
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】514187420
【氏名又は名称】テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100091214
【弁理士】
【氏名又は名称】大貫 進介
(72)【発明者】
【氏名】シェン,チャオ
(72)【発明者】
【氏名】ワン,シュエチャン
【審査官】永野 志保
(56)【参考文献】
【文献】特開2009-112631(JP,A)
【文献】国際公開第2015/159561(WO,A1)
【文献】特開平07-236769(JP,A)
【文献】特開2016-123479(JP,A)
【文献】特許第6126273(JP,B1)
【文献】Evren Bozgeyikli, et al.,Point & Teleport Locomotion Technique for Virtual Reality,Proceedings of the 2016 Annual Symposium on Computer-Human Interaction in Play,2016年10月15日,pp.205-216,https://dl.acm.org/doi/10.1145/2967934.2968105
【文献】インファマス セカンド サン inFAMOUS SECOND SON,週刊ファミ通2014年6月5日号,株式会社KADOKAWA,2014年05月22日,pp.74-81,https://famitsu.com/news/201405/20053416.html
【文献】インファマス セカンド サン inFAMOUS SECOND SON,週刊ファミ通2014年6月5日号,株式会社KADOKAWA,2014年05月22日,pp.74-81,https://famitsu.com/news/201405/20053416.html
(58)【調査した分野】(Int.Cl.,DB名)
G06T 19/00
G06F 3/01
G06F 3/0484
G06F 3/0488
A63F 13/55
A63F 13/52
A63F 13/53
A63F 13/214
(57)【特許請求の範囲】
【請求項1】
コンピューティングデバイスに適用される仮想キャラクターの変位制御方法であって、
仮想キャラクターの視覚を介して前記仮想キャラクターに対応するユーザが仮想環境内の物事を観察することを可能にする仮想現実シーンで、前記仮想キャラクターに第1の位置向きから目標変位だけ変位するよう指示するための第1の指示を受信し、
前記第1の指示が受信された後、前記目標変位を示すための第3のインジケーション情報を表示し、
前記第3のインジケーション情報によって、前記第1の位置向きから前記目標変位だけ離れた第2の位置向きを決定し、
前記第2の位置向きが決定された後、前記仮想キャラクターが前記第1の位置向きに留まるようにして、前記仮想現実シーンでの画像を表示するための前記ユーザのビューアがブラックスクリーンになるように制御し、
前記ビューアがブラックスクリーンになるように制御した後、前記仮想キャラクターが前記第2の位置向きに留まるようにして、前記ビューアの表示が復帰するように制御し、
前記ユーザとは異なる他ユーザに対する表示において、前記仮想キャラクターが前記第1の位置向きで前記仮想現実シーンから消えるように制御し、且つ前記仮想キャラクターが前記第2の位置向きで前記仮想現実シーンに現れるように制御し、前記仮想キャラクターが前記第1の位置向きと前記第2の位置向きとの間に現れないようにする、
ことを含み、
前記目標変位を示すための前記第3のインジケーション情報を表示することは、前記目標変位を示すための曲線を表示することを含み、ここで、前記第3のインジケーション情報は、前記曲線を含み、
前記第3のインジケーション情報によって前記第2の位置向きを決定することは、前記曲線と、前記仮想キャラクターを支持するための所定平面との交差位置を決定し、前記交差位置から所定距離範囲内の領域を、前記第2の位置向きによって示される位置として決定することを含み、
前記仮想キャラクターが前記第1の位置向きで前記仮想現実シーンから消えるように制御し、且つ前記仮想キャラクターが前記第2の位置向きで前記仮想現実シーンに現れるように制御することは、
前記第2の位置向きが決定された後、前記仮想キャラクターが前記第1の位置向きで消えるように制御し、前記仮想現実シーンでの前記第1の位置向きに動きがあることを示すための第1のインジケーション情報を前記第1の位置向きに表示し、
前記仮想キャラクターが前記第2の位置向きで現れるように制御し、前記仮想現実シーンでの前記第2の位置向きに動きがあることを示すための第2のインジケーション情報を前記第2の位置向きに表示する、
ことを含む、
方法。
【請求項2】
前記ビューアがブラックスクリーンになるように制御することは、前記ビューアが徐々にブラックスクリーンになるように制御することを含み、ここで、前記ビューアが徐々にブラックスクリーンになる過程では、前記仮想キャラクターが前記第1の位置向きに留まるように維持し、
前記ビューアの表示が復帰するように制御することは、前記ビューアの表示が徐々に復帰するように制御することを含み、ここで、前記ビューアの表示が徐々に復帰する過程では、前記仮想キャラクターが前記第2の位置向きに留まるように維持する、
請求項1に記載の方法。
【請求項3】
前記第1のインジケーション情報を前記第1の位置向きに表示することは、動いている第1の点粒子を前記第1の位置向きに表示することを含み、ここで、前記第1のインジケーション情報は、動いている前記第1の点粒子を含み、
前記第2のインジケーション情報を前記第2の位置向きに表示することは、動いている第2の点粒子を前記第2の位置向きに表示することを含み、ここで、前記第2のインジケーション情報は、動いている前記第2の点粒子を含み、前記第1の点粒子から前記第2の点粒子への動き方向は、前記第1の位置向きから前記第2の位置向きへの前記仮想キャラクターの変化過程を表す、
請求項に記載の方法。
【請求項4】
前記交差位置から所定距離範囲内の領域を、前記第2の位置向きによって示される位置として決定することは、
前記仮想現実シーンで前記第2の位置向きが正当であるかどうかを検出し、
前記仮想現実シーンで前記第2の位置向きが正当であることが検出された場合、前記交差位置から所定距離範囲内の領域を、前記第2の位置向きによって示される位置として決定し、
前記仮想現実シーンで前記第2の位置向きが正当ではないことが検出された場合、前記仮想現実シーンで前記第2の位置向きが正当ではないことを示すための所定のマーク情報を表示する、
ことを含む請求項に記載の方法。
【請求項5】
前記目標変位を示すための前記第3のインジケーション情報が表示された後、
前記仮想キャラクターに前記第1の位置向きから前記目標変位だけ変位することをキャンセルするよう指示するための第2の指示を受信し、
前記第2の指示が受信された後、前記仮想キャラクターが前記第1の位置向きから前記目標変位だけ変位することをキャンセルするように制御する、
ことをさらに含む請求項に記載の方法。
【請求項6】
前記第1の位置向きから前記目標変位だけ離れた前記第2の位置向きを決定することは、
前記第2の位置向きによって示される位置を指示するための第3の指示を受信し、
前記第3の指示が受信された後、前記第2の位置向きによって示される位置を決定する、
ことを含む請求項1に記載の方法。
【請求項7】
前記第3の指示を受信することは、
前記第2の位置向きによって示される位置を調整するための第1の操作対象の、前記第2の位置向きによって示される位置に対応する現実シーンでの位置情報を取得し、
前記位置情報によって前記第3の指示を取得する、
ことを含む請求項に記載の方法。
【請求項8】
前記第1の位置向きから前記目標変位だけ離れた前記第2の位置向きを決定することは、
前記第2の位置向きによって示される向きを指示するための第4の指示を受信し、
前記第4の指示が受信された後、前記第2の位置向きによって示される向きを決定する、
ことを含む請求項1に記載の方法。
【請求項9】
前記第4の指示を受信することは、
前記第2の位置向きによって示される向きを調整するための第2の操作対象の、前記第2の位置向きによって示される向きに対応する現実シーンでの角度情報を取得し、
前記角度情報によって前記第4の指示を取得する、
ことを含む請求項に記載の方法。
【請求項10】
前記第1の指示を受信することは、ジョイスティックによって前記第1の指示を受信することを含み、前記第1の位置向きから前記目標変位だけ離れた前記第2の位置向きを決定することは、前記ジョイスティックによって前記第2の位置向きを決定することを含み、または
前記第1の指示を受信することは、タッチパッドによって前記第1の指示を受信することを含み、前記第1の位置向きから前記目標変位だけ離れた前記第2の位置向きを決定することは、前記タッチパッドによって前記第2の位置向きを決定することを含む、
請求項1~のいずれか一項に記載の方法。
【請求項11】
仮想キャラクターの変位制御装置であって、
プロセッサと、前記プロセッサに接続されたメモリと、を含み、前記メモリには、前記プロセッサによって実行可能な機械可読命令が記憶され、前記プロセッサは、前記機械可読命令を実行することにより、請求項1~10のいずれか一項に記載の方法を実現する装置。
【請求項12】
機械可読命令を記憶した不揮発性コンピュータ可読記憶媒体であって、前記機械可読命令は、プロセッサによって実行されると、請求項1~10のいずれか一項に記載の方法を実行させることが可能な不揮発性コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本願は、2017年7月25日に中国特許庁へ出願された、出願番号が201710613071.2であり、発明の名称が「仮想キャラクターの変位制御方法および装置」である中国特許出願の優先権を主張し、そのすべての内容は参照することにより本願に組み込まれる。
【0002】
本願の実施例は、コンピュータの分野に関し、具体的に、仮想キャラクターの変位制御方法、装置、および記憶媒体に関する。
【背景技術】
【0003】
現在、仮想空間での仮想キャラクターの自由移動を如何に制御するかが、3次元(3D:three-dimension)ゲームの登場以来、常に存在している重要な課題である。デバイスおよびプラットフォームの初期段階では、ユーザに、ユーザの操作習慣が形成されておらず、仮想キャラクターの移動を制御する方法が様々あった。その後、仮想空間での仮想キャラクターの自由移動に対する標準化された設計および実現の方法が現れ、設計基準が形成され、さらに、ユーザの操作習慣になる。
【発明の概要】
【0004】
本願の実施例は、仮想キャラクターの変位制御方法を提供している。該仮想キャラクターの変位制御方法は、コンピューティングデバイスに適用され、仮想現実シーンで、仮想キャラクターに第1の位置向きから目標変位だけ変位するよう指示するための第1の指示を受信し、第1の指示が受信された後、第1の位置向きから目標変位だけ離れた第2の位置向きを決定し、仮想キャラクターが第1の位置向きで消えるように制御して、仮想キャラクターが第2の位置向きで現れるように制御し、仮想キャラクターが第1の位置向きと第2の位置向きとの間に現れないようにする、ことを含む。
【0005】
また、本願の実施例は、仮想キャラクターの変位制御装置を提供している。該仮想キャラクターの変位制御装置は、プロセッサと、前記プロセッサに接続されたメモリと、を含み、前記メモリには、前記プロセッサによって実行可能な機械可読命令が記憶され、前記プロセッサは、前記機械可読命令を実行することにより、
仮想現実シーンで、仮想キャラクターに第1の位置向きから目標変位だけ変位するよう指示するための第1の指示を受信し、第1の指示が受信された後、第1の位置向きから目標変位だけ離れた第2の位置向きを決定し、仮想キャラクターが第1の位置向きで消えるように制御して、仮想キャラクターが第2の位置向きで現れるように制御し、仮想キャラクターが第1の位置向きと第2の位置向きとの間に現れないようにする、ことを実行する。
【0006】
また、本願の実施例は、機械可読命令を記憶した不揮発性コンピュータ可読記憶媒体を提供しており、前記機械可読命令は、プロセッサによって実行されることで、前述の仮想キャラクターの変位制御方法を実現させることが可能である。
【図面の簡単な説明】
【0007】
ここで説明される図面は、本願の実施例へのさらなる理解を提供するためのものであり、本願の一部を構成する。本願の模式的な実施例およびその説明は、本願を説明するためのものであり、本願への不適切な限定ではない。図面は、以下の通りである。
図1】本願の実施例による仮想キャラクターの変位制御方法のハードウェア環境の模式図である。
図2】本願の実施例による仮想キャラクターの変位制御方法のフローチャートである。
図3】本願の実施例による仮想キャラクターが第1の位置向きで消えるように制御して、仮想キャラクターが第2の位置向きで現れるように制御する方法のフローチャートである。
図4】本願の実施例による仮想キャラクターが第1の位置向きで消えるように制御して、仮想キャラクターが第2の位置向きで現れるように制御する別の方法のフローチャートである。
図5】本願の実施例による第1の位置向きから目標変位だけ離れた第2の位置向きを決定する方法のフローチャートである。
図6】本願の実施例による交差位置から所定距離範囲内の領域を、第2の位置向きによって示される位置として決定する方法のフローチャートである。
図7】本願の実施例による別の仮想キャラクターの変位制御方法のフローチャートである。
図8】本願の実施例による変位特殊効果表示の模式図である。
図9】本願の実施例による別の変位特殊効果表示の模式図である。
図10a】本願の実施例による仮想キャラクターの変位制御装置の模式図である。
図10b】本願の実施例による仮想キャラクターの変位制御装置の模式図である。
図10c】本願の実施例による仮想キャラクターの変位制御装置の模式図である。
図11】本願の実施例による端末の構成ブロック図である。
【発明を実施するための形態】
【0008】
当業者が本願の構成をよりよく理解できるようにするために、以下に本願の実施例における図面を参照しながら、本願の実施例における構成を明確かつ完全に説明する。明らかなように、説明される実施例は、本願の実施例の一部にすぎず、それらのすべてではない。本願における実施例に基づいて、創造的な労働をしない前提で当業者によって得られる他の実施例は、すべて本願の保護範囲内に属すべきである。
【0009】
説明すべきものとして、本願の明細書、請求の範囲、および上記の図面における「第1の」、「第2の」などのような用語は、類似なオブジェクトを区別するためのものであり、必ずしも特定の順序や優先順位を記述するために使用されるとは限らない。理解すべきものとして、このように使用される用語は、適切な状況下で交換可能であり、これによって、ここで説明される本願の実施例は、ここで図示または記述された順序以外の順序で実施されることができる。また、「含む」および「備える」という用語、並びにそれらの任意の変形は、非排他的な「含む」をカバーすることを意図するものである。例えば、一連のステップまたはユニットを含むプロセス、方法、システム、製品、またはデバイスは、明示的にリストされたステップまたはユニットに必ずしも限定されない一方、明示的にリストされていないか、これらのプロセス、方法、製品、またはデバイスに固有の、他のステップまたはユニットを含んでもよい。
【0010】
実際の適用では、3D空間での仮想キャラクターの移動を制御する方法は、PC側、コンソール側、携帯電話側の3つのプラットフォームによって実現されてもよい。
【0011】
PC側では、デフォルトとして、キーボードおよびマウスによって入力操作が行われ、仮想キャラクターに対するボタン制御が非常に標準化され、キーボード上の4つのキー「W」、「A」、「S」および「D」を前進、後退、左への平行移動、右への平行移動として使用することで、仮想キャラクターの連続的な線形行為を実行させてもよい。仮想キャラクターの前、後、左、右は、マウスによって制御されるカメラの視角の相対的な位置に応じて決定されるものである。ここで、マウスは、カメラの向きを制御するために使用され、向きは、任意の角度であってもよい。
【0012】
各コンソール側には、いずれも、それにマッチングする専用のコントローラがあり、つまり、各コンソールの制御操作が、予め定義されたものであり、仮想空間での仮想キャラクターの自由変位が、一般的に、コントローラ上のジョイスティックによって制御される。コンソール側の操作は、PC側と大きな違いがなく、移動がいずれも連続的であり、ボタンもマウスと同じ操作を模倣するものであるが、ハードウェアデバイスがカスタマイズされたものである点だけで異なる。
【0013】
スマートフォンは、全面的に、重いゲームに向けられるようになる。つまり、元の3Dゲームが携帯電話に適用されることはますます多くなる。元の実体ボタン操作についても、携帯電話では仮想ボタン操作となる。3D空間での仮想キャラクター・オブジェクトの移動制御については、仮想ジョイスティック方式が採用されている。
【0014】
仮想現実(VR:Virtual Reality)側で感じられる3Dは、全位置向きである。つまり、ユーザが感じるのは、3D仮想空間を2D画像に変換して平面上に表示したものではなく、ユーザがこの仮想空間にいるということである。現在、多くのフライトゲームやシューティングゲームなどには、一般的にVRが使用されているが、視覚的な感覚と身体的な感覚が不一致になる場合、ユーザは非常にめまいがする。そのため、VR側は、第1人称が仮想キャラクターにマッピングされた場合の連続移動のシミュレーションに適合しない。
【0015】
ViveプラットフォームでのHTC Vive(登録商標)は、宏達国際電子(HTC)とバルブ・コーポレーション(Valve Corporation)により共同開発された仮想現実向けヘッドマウントディスプレイである。このヘッドマウントディスプレイは、「ルームスケール」という技術を利用して、センサーにより1つのルームを3次元空間に変換し、ユーザが仮想世界内を自然にナビゲートしたり、動き回ったり、モーショントラッキング用のハンドヘルドコントローラを使用してオブジェクトを生き生きと操作したりすることを可能にし、精密なインタラクション、コミュニケーション、および没入型環境の体験を実現する。Viveデバイスは、一定の現実空間を追跡して、さらに、仮想空間に完全にマッピングすることができる。そのため、設計時に仮想空間がViveの追跡空間と同じくらい大きさに設計されたカジュアルゲームが多い。このようにして、ユーザは、完全にこの空間内を自由に移動することができる。但し、シミュレーション空間のサイズが制限され、異なるデバイスが追跡可能な仮想空間領域のサイズも不一致であるので、異なるデバイスに適合することが困難である。
【0016】
これに鑑みて、本願の実施例は、仮想キャラクターの変位制御方法を提供している。
【0017】
本願のいくつかの実施例において、前述の仮想キャラクターの変位制御方法は、図1に示す、サーバ102と端末104とにより構成されるハードウェア環境に適用されることができる。図1は、本願の実施例による仮想キャラクターの変位制御方法のハードウェア環境の模式図である。図1に示すように、サーバ102は、ネットワークを介して端末104に接続される。上記のネットワークは、ワイドエリアネットワーク、メトロポリタンエリアネットワーク、またはローカルエリアネットワークを含むが、これらに限定されない。端末104は、PC、携帯電話、タブレットコンピュータなどに限定されない。本願の実施例における仮想キャラクターの変位制御方法は、コンピューティングデバイスによって実行されてもよく、例えば、サーバ102によって実行されてもよいし、端末104によって実行されてもよいし、サーバ102と端末104の両方によって実行されてもよい。ここで、端末104によって実行される本願の実施例の仮想キャラクターの変位制御方法は、該端末104にインストールされたクライアント側によって実行されてもよい。
【0018】
図2は、本願の実施例による仮想キャラクターの変位制御方法のフローチャートである。この方法は、コンピューティングデバイスに適用されることができる。図2に示すように、この方法は、以下のステップを含んでもよい。
【0019】
ステップS202において、仮想現実シーンで、仮想キャラクターに第1の位置向きから目標変位だけ変位するよう指示するための第1の指示を受信する。
【0020】
本願の上記ステップS202で提供された構成では、仮想現実シーンで、仮想キャラクターに第1の位置向きから目標変位だけ変位するよう指示するための第1の指示を受信する。
【0021】
仮想現実は、即ち、バーチャルリアリティや仮想環境であり、仮想技術を採用して、コンピュータグラフィックス、コンピュータシミュレーション、人工知能、センシング、表示、およびネットワーク並列処理などの技術の最新の開発結果を統合したものであり、コンピュータ技術の助けで生成されたハイテクノロジーシミュレーションシステムである。コンピュータシミュレーションを利用して3次元空間での仮想世界を作成することにより、視覚などの感覚に関するシミュレーション環境をユーザに提供でき、ユーザがタイムリーかつ無制限に3次元空間での物事を観察できるようになり、ユーザにその場に身を置くような感じをもたらすことができる。ユーザを代表する仮想キャラクターが仮想環境内で移動する場合、コンピュータは、直ぐに、仮想キャラクターの情報に対して複雑な演算を実行することで、精確な3次元空間をビデオの形でフィードバックし、さらに、ユーザに臨場感を与えることができる。
【0022】
本実施例の仮想現実シーンは、上記の仮想現実技術を採用して現実シーンをシミュレートすることで得られた、具体的なアプリケーションに適用可能なシーンである。例えば、仮想現実シーンは、仮想現実技術により、現実空間を仮想空間に完全にマッピングすることで得られた、ゲームアプリケーションに適用可能なシーンであり、ここで、ゲームアプリケーションは、VRゲームアプリケーションであり、本願のいくつかの実施例において、仮想キャラクターの変位表現過程を制御するアプリケーションである。該仮想現実シーンで、ユーザが該仮想キャラクターにマッピングされる。本願のいくつかの実施例において、ユーザの操作と仮想キャラクターの行為とをマッピングする。例えば、ユーザがVRデバイスのジョイスティックを任意の方向にプッシュする場合、仮想キャラクターの変位選択メカニズムがトリガーされ、ユーザがジョイスティックを解放する場合、仮想キャラクターの変位選択メカニズムがキャンセルされる。また、該仮想現実シーンは、視覚などの感覚に関するシミュレーションシーンをユーザに提供できる。これにより、ユーザは、仮想キャラクターを介して該シーン内の物事をタイムリーかつ無制限に観察でき、現実シーンにいるような感じがする。
【0023】
本願のいくつかの実施例によれば、前述の仮想現実シーンでは、仮想キャラクターの変位変化過程を実現してよく、仮想キャラクターの到着する領域を決定してよく(例えば、仮想キャラクターの活動が許可される正当な領域を決定する)、仮想キャラクターの実行する操作を決定してよく(例えば、仮想キャラクターが戦闘する際に使用可能なスキルの種類を決定する)、仮想キャラクターの有する属性(例えば、仮想キャラクターのヒットポイントの増加やヒットポイントの減少の難しさなど)を付与してよいが、ここでは限定しない。
【0024】
本願のいくつかの実施例によれば、該仮想現実シーンは、大規模なマルチプレーヤーオンラインシーンであり、つまり、該仮想現実シーンには、オンラインになる複数の仮想キャラクターが含まれ、かつ、各仮想キャラクターに対応するユーザが、他のユーザに対応する仮想キャラクターの行為変化過程を把握でき、例えば、他のユーザに対応する仮想キャラクターの変位変化過程を把握できる。
【0025】
説明すべきものとして、上記の仮想現実シーンは、本願の実施例における好ましい実現形態にすぎず、本願の実施例における仮想現実シーンが上記の形態のみに限定されることを表すものではない。仮想キャラクターの変位制御方法を実現でき、かつ、仮想キャラクターの連続移動に起因してユーザのめまいを引き起こしやすいことを回避するという効果を実現できるいかなる仮想現実シーンも、本願の保護範囲内にあるが、ここでは、一つ一つ例示しない。
【0026】
この実施例では、仮想キャラクターが仮想現実シーンで活動し、仮想キャラクターの変位が制御されることができる。まず、仮想キャラクターの変位メカニズムをトリガーし、つまり、仮想現実シーンでの仮想キャラクターの変位選択メカニズムを起動し、仮想キャラクターに第1の位置向きから目標変位だけ変位するよう指示するための第1の指示を受信し、つまり、仮想現実シーンで移動する仮想キャラクターの目標変位を選択する。該第1の指示へのトリガーは便利かつ柔軟である。ここで、第1の位置向きは、仮想現実シーンでの仮想キャラクターの変位前の初期位置向きであり、仮想現実シーンでの初期位置および初期向きを含む。ここで、向きは、即ち、仮想キャラクターが変位する方向である。
【0027】
本願のいくつかの実施例によれば、上記の第1の指示は、物理コントローラに基づき生成されるものである。ジョイスティックを任意の方向にプッシュすることで目標変位の選択をトリガーしてもよく、タッチパッドを任意の位置で押下することで目標変位の選択をトリガーしてもよい。これにより、仮想キャラクターの変位後の向きを選択する。本願のいくつかの実施例によれば、方向を精確に制御できる物理ボタンが採用され、例えば、ジョイスティックやタッチパッドが採用される。
【0028】
本願のいくつかの実施例によれば、Oculus(登録商標)プラットフォームでは、ジョイスティックを任意の方向にプッシュすることで変位位置の選択をトリガーする一方、Viveプラットフォームでは、タッチパッドを任意の位置で押下することで目標変位の選択をトリガーする。ここで、OculusプラットフォームでのOculus Riftは、仮想現実向けヘッドマウントディスプレイであり、使用されるソフトウェアが、主に電子ゲーム類であり、Riftのためにカスタマイズされたプログラミングを使用する。
【0029】
ステップS204において、第1の指示が受信された後、第1の位置向きから目標変位だけ離れた第2の位置向きを決定する。
【0030】
本願の上記ステップS204で提供された構成では、第1の指示が受信された後、第1の位置向きから目標変位だけ離れた第2の位置向きを決定する。
【0031】
第1の指示が受信された後、第1の位置向きから目標変位だけ離れた第2の位置向きを決定する。ここで、第2の位置向きは、即ち、仮想現実空間での仮想キャラクターの移動先の位置向きである。ジョイスティックを押下するか、またはタッチパッドへの押圧を解除する場合、変位決定メカニズムがトリガーされ、つまり、仮想キャラクターが変位しようとすることがトリガーされる。第1の位置向きから目標変位だけ離れた第2の位置向きを具体的にどのように決定するかについて、以下の実施例で詳細に説明する。
【0032】
本願のいくつかの実施例によれば、第1の指示へのトリガーが便利かつ柔軟であるため、変位トリガーメカニズムには、誤トリガーの可能性がある。したがって、該実施例は、変位キャンセルメカニズムを提供することもできる。ジョイスティックを解放するか、または大円盤型のタッチパッドを持ち上げることで、決定された目標変位をキャンセルしてもよい。例えば、Oculusプラットフォームの場合、ユーザは、ジョイスティックを解放することで、選択された目標変位をキャンセルすることができ、Viveプラットフォームの場合、ユーザは、タッチパッドを持ち上げることで、選択された目標変位をキャンセルすることができ、これにより、後続の変位選択メカニズムがトリガーされない。
【0033】
本願のいくつかの実施例によれば、目標変位が決定された後、目標変位をプレビューすることができる。例えば、曲線を利用して、決定された目標変位をプレビューする。曲線の伸びる過程の時間は、即ち、変位決定のバッファリング時間である。変位が誤ってトリガーされた場合、ユーザは、決定された変位をタイムリーにキャンセルすることができる。仮想現実シーンでの曲線の表示特殊効果として、手の位置からコントローラの真正面に向かって1本のレイがゆっくりと放射され、例えば、矢印付きの曲線がゆっくりと放射され、地面まで曲がって伸びるのに約1秒ほどの時間がかかる。これにより、第2の位置向きの位置は、曲線の頭によって示される。
【0034】
本願のいくつかの実施例によれば、Oculusプラットフォームの場合、ユーザの完全な操作フローは、ジョイスティックをプッシュすることで変位選択メカニズムをトリガーし、それから、ユーザの手の空間位置および向きを調整することで目標変位の位置を決定し、次に、ジョイスティックの方向を調整することで目標変位の方向を決定し、最後に、ジョイスティックを押下することで目標変位の起動を確認する、ことであるが、Viveプラットフォームの場合、ユーザの完全な操作フローは、タッチパッドを押下することで変位選択メカニズムをトリガーし、それから、ユーザの手の空間位置および向きを調整することで目標変位の位置を決定し、次に、手のタッチポイント位置を調整することで目標変位の方向を決定し、最後に、手を上げてタッチパッドから離すことで目標変位の起動を確認する、ことである。これにより、目標変位を決定する操作は、簡単で便利かつ迅速になる。
【0035】
ステップS206において、仮想キャラクターが第1の位置向きで消えるように制御して、仮想キャラクターが第2の位置向きで現れるように制御し、仮想キャラクターが第1の位置向きと第2の位置向きとの間に現れないようにする。
【0036】
本願の上記ステップS206で提供された構成では、仮想キャラクターが第1の位置向きで消えるように制御して、仮想キャラクターが第2の位置向きで現れるように制御し、仮想キャラクターが第1の位置向きと第2の位置向きとの間に現れないようにする。
【0037】
第1の位置向きから目標変位だけ離れた第2の位置向きが決定された後、仮想キャラクターが第1の位置向きで消えるように制御して、仮想キャラクターが第2の位置向きで現れるように制御する。ユーザ自身にとっては、仮想キャラクターが第1の位置向きに留まり、即ち、静止状態を維持したまま、ビューアがゆっくりとブラックスクリーンになり、そして、ビューアの表示が復帰した場合、仮想キャラクターが第2の位置向きによって示される位置および向きに到達し、ビューアの表示がゆっくりと復帰する過程では、仮想キャラクターが第2の位置向きによって示される位置および向きに留まり、つまり、仮想キャラクターが同様に静止状態を維持する。仮想キャラクターが第1の位置向きで消えて第2の位置向きで現れる過程では、仮想キャラクターが第1の位置向きと第2の位置向きとの間に現れない。これにより、仮想現実シーンでの仮想キャラクターの瞬間移動が実現され、ユーザが連続移動に起因する加速度および速度を感じることはない。このため、瞬間移動によって連続移動を回避することが実現され、めまい感の発生が回避され、ユーザ体験が向上する。
【0038】
仮想現実シーンでの他のユーザにとっては、第1の位置向きで突然消えること、および、第2の位置向きに突然現れることについて、第1の位置向きおよび第2の位置向きには、それぞれの周囲を点粒子が回転することを含めた特殊効果が同時に現れるようにしてもよい。第1の位置向きの点粒子は、風に吹かれて行くように、擾乱中に第2の位置向きに変位する。つまり、第の位置向きおよび第2の位置向きに動きがあることを他のユーザに示すための粒子風を生成する。粒子風の方向は、現在の仮想キャラクターが仮想現実シーンでのどの場所からどの場所まで到達するかの変位変化過程を他のユーザに示し、さらに、仮想現実シーンでの他のユーザに仮想キャラクターの変位過程をはっきり見せるためのものである。この操作方法は、様々なハードウェア仕様に適合し、操作が簡単かつ便利で習得しやすく、大規模なマルチプレーヤーリアルタイムオンラインの仮想現実シーンで良いパフォーマンスを持っている。
【0039】
上記のステップS202~ステップS206では、仮想現実シーンで、仮想キャラクターに第1の位置向きから目標変位だけ変位するよう指示するための第1の指示を受信し、第1の指示が受信された後、第1の位置向きから目標変位だけ離れた第2の位置向きを決定し、制御仮想キャラクターが第1の位置向きで消えるように制御して、仮想キャラクターが第2の位置向きで現れるように制御し、仮想キャラクターが第1の位置向きと第2の位置向きとの間に現れないようにする。つまり、仮想現実シーンで、仮想キャラクターが第1の位置向きで消えるように制御して、仮想キャラクターが第2の位置向きで現れるように制御する。これにより、仮想キャラクターの瞬間移動によって連続移動を回避するという目的が達成され、仮想キャラクターの連続移動に起因してユーザのめまいを引き起こしやすいことを回避するという技術的効果が実現され、さらに、仮想キャラクターの連続移動に起因してユーザのめまいを引き起こしやすいという関連技術における技術的課題が解決される。
【0040】
本願の他のいくつかの実施例において、ステップS206で仮想キャラクターが第1の位置向きで消えるように制御して、仮想キャラクターが第2の位置向きで現れるように制御することは、第2の位置向きが決定された後、仮想キャラクターが第1の位置向きに留まるように制御して、予め設けられたビューアがブラックスクリーンになるように制御し、予め設けられたビューアがブラックスクリーンになるように制御した後、予め設けられたビューアの表示が復帰するように制御して、仮想キャラクターが第2の位置向きに留まるように制御する、ことを含む。
【0041】
図3は、本願の実施例による仮想キャラクターが第1の位置向きで消えるように制御して、仮想キャラクターが第2の位置向きで現れるように制御する方法のフローチャートである。図3に示すように、この方法は、以下のステップを含む。
【0042】
ステップS301において、第2の位置向きが決定された後、仮想キャラクターが第1の位置向きに留まるように制御して、予め設けられたビューアがブラックスクリーンになるように制御する。
【0043】
本願の上記ステップS301で提供された構成では、第2の位置向きが決定された後、仮想キャラクターが第1の位置向きに留まるように制御して、仮想現実シーンでの画像を表示するための、予め設けられたビューアがブラックスクリーンになるように制御する。
【0044】
第1の位置向きは、仮想現実シーンでの仮想キャラクターの変位前の初期位置である。第1の位置向きから目標変位だけ離れた第2の位置向きが決定された後、仮想キャラクターが第1の位置向きに留まるように制御し、つまり、仮想キャラクターが第1の位置向きで移動せず、予め設けられたビューアがブラックスクリーンになるように制御することにより、仮想キャラクターが第1の位置向きで消えるようにする。ここで、予め設けられたビューアは、仮想現実シーンでの画像を表示するためのものである。つまり、該仮想現実シーンでの画像は、仮想キャラクターに対応するユーザの視点から見た仮想現実シーンにおける画像である。
【0045】
この実施例では、仮想キャラクターが第1の位置向きに留まるように制御して、予め設けられたビューアがブラックスクリーンになるように制御することにより、仮想キャラクターが第1の位置向きで突然消えるような表示効果が実現される。
【0046】
ステップS302において、予め設けられたビューアがブラックスクリーンになるように制御した後、予め設けられたビューアの表示が復帰するように制御して、仮想キャラクターが第2の位置向きに留まるように制御する。
【0047】
本願の上記ステップS302で提供された構成では、予め設けられたビューアがブラックスクリーンになるように制御した後、予め設けられたビューアの表示が復帰するように制御して、仮想キャラクターが第2の位置向きに留まるように制御する。
【0048】
仮想キャラクターが第1の位置向きに留まるように制御して、予め設けられたビューアがブラックスクリーンになるように制御した後、予め設けられたビューアの画像の表示が復帰するように制御し、つまり、予め設けられたビューアがブラックスクリーンにならないようにする。このとき、仮想キャラクターは、仮想現実シーンでの第2の位置向きに留まり、該第2の位置向きは、仮想キャラクターが到着した最新の位置向きであり、第1の位置向きから目標変位だけ離れたものであり、該目標変位は、変位選択メカニズムによって決定されたものである。仮想キャラクターが第1の位置向きと第2の位置向きとの間に現れないため、仮想現実シーンで仮想キャラクターの連続移動によって仮想キャラクターに対応するユーザに与えられるめまい感が回避される。
【0049】
この実施例では、予め設けられたビューアの表示が復帰するように制御して、仮想キャラクターが第2の位置向きに留まるように制御することにより、仮想キャラクターが新しい位置に突然現れるような表示効果が実現される。
【0050】
この実施例では、第2の位置向きが決定された後、仮想キャラクターが第1の位置向きに留まるように制御して、仮想現実シーンでの画像を表示するための、予め設けられたビューアがブラックスクリーンになるように制御し、予め設けられたビューアがブラックスクリーンになるように制御した後、予め設けられたビューアの表示が復帰するように制御して、仮想キャラクターが第2の位置向きに留まるように制御することにより、仮想キャラクターが第1の位置向きで消えるように制御して、仮想キャラクターが第2の位置向きで現れるように制御するという目的が実現され、仮想キャラクターの連続移動に起因してユーザのめまいを引き起こすことを回避するという技術的効果が達成される。
【0051】
本願の他のいくつかの実施例において、ステップS301で予め設けられたビューアがブラックスクリーンになるように制御することは、予め設けられたビューアが徐々にブラックスクリーンになるように制御することを含み、ここで、予め設けられたビューアが徐々にブラックスクリーンになる過程では、仮想キャラクターが第1の位置向きに留まるように維持する。ステップS302で予め設けられたビューアの表示が復帰するように制御することは、予め設けられたビューアの表示が徐々に復帰するように制御することを含み、ここで、予め設けられたビューアの表示が徐々に復帰する過程では、仮想キャラクターが第2の位置向きに留まるように維持する。
【0052】
予め設けられたビューアがブラックスクリーンになるように制御する際に、予め設けられたビューアが徐々にブラックスクリーンになるように制御し、つまり、仮想キャラクターが第1の位置向きに留まるように制御する際に、予め設けられたビューアがゆっくりとブラックスクリーンになるようにすることにより、仮想キャラクターが仮想現実シーンでの第1の位置向きで消えるようにする。予め設けられたビューアの表示が復帰するように制御される際に、予め設けられたビューアの表示が徐々に復帰するように制御し、つまり、予め設けられたビューアの仮想現実シーンでの画像の表示がゆっくりと復帰するようにする。予め設けられたビューアの表示がゆっくりと復帰する過程では、第2の位置向きにおける仮想キャラクターの位置および向きが変化せず、即ち、仮想キャラクターが静止状態を維持する。このような予め設けられたビューアが徐々にブラックスクリーンになる過程、および、予め設けられたビューアの表示が徐々に復帰する過程では、仮想キャラクターに対応するユーザが連続移動に起因する加速度および速度を感じることはないため、めまい感がユーザに与えられることなく、さらに、ユーザ体験が向上する。
【0053】
本願の他のいくつかの実施例において、ステップS206で仮想キャラクターが第1の位置向きで消えるように制御して、仮想キャラクターが第2の位置向きで現れるように制御することは、第2の位置向きが決定された後、仮想キャラクターが第1の位置向きで消えるように制御して、第1のインジケーション情報を第1の位置向きに表示し、仮想キャラクターが第2の位置向きで現れるように制御して、第2のインジケーション情報を第2の位置向きに表示する、ことを含む。
【0054】
図4は、本願の実施例による仮想キャラクターが第1の位置向きで消えるように制御して、仮想キャラクターが第2の位置向きで現れるように制御する別の方法のフローチャートである。図4に示すように、この方法は、以下のステップを含む。
【0055】
ステップS401において、第2の位置向きが決定された後、仮想キャラクターが第1の位置向きで消えるように制御して、第1のインジケーション情報を第1の位置向きに表示する。
【0056】
本願の上記ステップS401で提供された構成では、第2の位置向きが決定された後、仮想キャラクターが第1の位置向きで消えるように制御して、仮想現実シーンでの第1の位置向きに動きがあることを示すための第1のインジケーション情報を第1の位置向きに表示する。
【0057】
第1の位置向きから目標変位だけ離れた第2の位置向きが決定された後、仮想キャラクターが第1の位置向きで消えるように制御する際に、第1のインジケーション情報を第1の位置向きに表示する。該第1のインジケーション情報は、点粒子であってもよく、仮想キャラクターが第1の位置向きで消えようとすることを示す消失点である。本願のいくつかの実施例によれば、仮想現実シーンでの第1の位置向きに動きがあることを示すために、第1の位置向きの所定範囲内に、点粒子が第1の位置向きの周囲を回転するような特殊効果を表示することにより、ユーザに注意を喚起するという目的が達成される。
【0058】
ステップS402において、仮想キャラクターが第2の位置向きで現れるように制御して、第2のインジケーション情報を第2の位置向きに表示する。
【0059】
本願の上記ステップS402で提供された構成では、仮想キャラクターが第2の位置向きで現れるように制御して、仮想現実シーンでの第2の位置向きに動きがあることを示すための第2のインジケーション情報を第2の位置向きに表示する。
【0060】
仮想キャラクターが第1の位置向きで消えるように制御した後、仮想キャラクターが第2の位置向きで現れるように制御するとともに、第2のインジケーション情報を第2の位置向きに表示する。該第2のインジケーション情報は、点粒子であってもよく、仮想キャラクターが第2の位置向きで現れようとすることを示す出現点である。本願のいくつかの実施例によれば、仮想現実シーンでの第2の位置向きに動きがあることを示すために、第2の位置向きの所定範囲内に、点粒子が第2の位置向きの周囲を回転するような特殊効果を表示する。
【0061】
この実施例では、第2の位置向きが決定された後、仮想キャラクターが第1の位置向きで消えるように制御して、仮想現実シーンでの第1の位置向きに動きがあることを示すための第1のインジケーション情報を第1の位置向きに表示し、仮想キャラクターが第2の位置向きで現れるように制御して、仮想現実シーンでの第2の位置向きに動きがあることを示すための第2のインジケーション情報を第2の位置向きに表示することにより、仮想キャラクターが第1の位置向きで消えるように制御して、仮想キャラクターが第2の位置向きで現れるように制御することが実現される。
【0062】
本願の他のいくつかの実施例において、ステップS401で第1のインジケーション情報を第1の位置向きに表示することは、動いている第1の点粒子を第1の位置向きに表示することを含み、ここで、第1のインジケーション情報は、動いている第1の点粒子を含み、ステップS402で第2のインジケーション情報を第2の位置向きに表示することは、動いている第2の点粒子を第2の位置向きに表示することを含み、ここで、第2のインジケーション情報は、動いている第2の点粒子を含み、第1の点粒子から第2の点粒子への動き方向は、第1の位置向きから第2の位置向きへの仮想キャラクターの変化過程を表す。
【0063】
仮想現実シーンでの他のユーザにとって、この実施例では、第1のインジケーション情報を第1の位置向きに表示する際に、動いている第1の点粒子を第1の位置向きに表示する。該第1の点粒子は、複数の小さな粒子を含んでもよい。複数の小さな粒子が第1の位置向きの周囲を回転することは、仮想現実シーンでの第1の位置向きに動きがあることを他のユーザに示すことができ、仮想現実シーンでの該位置向きが仮想キャラクターの変位前の位置であることを示すこともできる。仮想キャラクターが第2の位置向きで現れるように制御して、第2のインジケーション情報を第2の位置向きに表示する際に、動いている第2の点粒子を第2の位置向きに表示することは、仮想現実シーンでの第2の位置向きに動きがあることを他のユーザに示すことができ、仮想現実シーンでの該位置向きが仮想キャラクターの変位後の位置であることを示すこともできる。本願のいくつかの実施例によれば、該第2の点粒子は第1の点粒子と異なり、例えば、第2の点粒子に含まれる点粒子の数は、第1の点粒子に含まれる点粒子の数とは異なり、および/または、第2の点粒子に含まれる点粒子のサイズは、第1の点粒子に含まれる点粒子のサイズとは異なる。
【0064】
第1の点粒子から第2の点粒子への動き方向は、第1の位置向きから第2の位置向きへの変化過程を表す。該変化過程は、第1の点粒子が擾乱中に第2の位置向きへ偏移して、第2の点粒子が得られることであってもよい。第1の点粒子から第2の点粒子への変化過程によって表示される特殊効果は、風が吹くような効果の粒子風である。該粒子風の方向は、仮想キャラクターの変位の変化過程が第1の位置向きから第2の位置向きへの変化過程であることを仮想現実シーンでの他のユーザに示すためのものである。このような変位表現過程は、仮想現実シーンでの他のユーザにも仮想キャラクターの変位の変化過程を把握させることができ、大規模なマルチプレーヤーシナリオに適用される。
【0065】
説明すべきものとして、上記の第1のインジケーション情報および第2のインジケーション情報の表示特殊効果は、本願の実施例の好ましい実施形態にすぎず、本願の実施例の表示特殊効果が粒子の表示特殊効果のみであることを表すものではない。仮想キャラクターの変位の変化過程が第1の位置向きから第2の位置向きへの変化過程であることをユーザに示すために使用可能な他の方法は、いずれも、本願の保護範囲内にあるが、ここでは、一つ一つ例示しない。
【0066】
本願の他のいくつかの実施例では、ステップS204で第1の位置向きから目標変位だけ離れた第2の位置向きを決定する前に、目標変位を示すための第3のインジケーション情報を表示する。ステップS204で第1の位置向きから目標変位だけ離れた第2の位置向きを決定することは、第3のインジケーション情報によって第2の位置向きを決定することを含む。
【0067】
仮想キャラクターの変位トリガーメカニズムが便利かつ柔軟であり、つまり、目標変位の選択には変位が誤ってトリガーされる可能性があるため、バッファリング時間、即ち、後悔時間をユーザに提供する必要がある。ユーザは、誤ってトリガーされた変位をバッファリング時間内にキャンセルすることができる。この実施例では、第1の位置向きから目標変位だけ離れた第2の位置向きを決定する前に、変位決定のバッファリング時間をユーザに与える。変位選択メカニズムがトリガーされた後、目標変位を示すための第3のインジケーション情報を表示する。該第3のインジケーション情報は、特殊効果によって表示されてもよい。さらに、目標変位の選択結果をプレビューする。第3のインジケーション情報によって第2の位置向きを決定し、例えば、第3のインジケーション情報によって仮想現実シーンでの第2の位置向きの位置および向きを決定する。
【0068】
本願の他のいくつかの実施例において、目標変位を示すための第3のインジケーション情報を表示することは、目標変位を示すための曲線を表示することを含み、ここで、第3のインジケーション情報は、曲線を含む。
【0069】
目標変位を示すための第3のインジケーション情報を表示する際に、該第3のインジケーション情報の特殊効果の表現形式は、ユーザの手の位置からコントローラの真正面に向かって1本のレイがゆっくりと放射されることであってよい。例えば、該レイは、矢印付きの青い曲線である。一定の時間が経過すると、曲線は、地面まで曲がって伸びる。本願のいくつかの実施例によれば、約1秒ほど経過すると、曲線が地面まで曲がって伸び、図8における曲線の端に示されている円柱のような、曲線の頭によって示された新しい位置の表示特殊効果が現れる。この青い曲線の伸びる過程にかかる時間は、ユーザのバッファリング時間である。Oculusプラットフォームの場合、ユーザがジョイスティックを解放することにより、Viveプラットフォームの場合、ユーザが大円盤型のタッチパッドを持ち上げることにより、変位選択メカニズムがキャンセルされ、後続の変位メカニズムがトリガーされることはない。
【0070】
本願の他のいくつかの実施例において、第3のインジケーション情報によって第2の位置向きを決定することは、曲線と所定平面との交差位置を決定し、交差位置から所定距離範囲内の領域を、第2の位置向きによって示される位置として決定する、ことを含む。
【0071】
図5は、本願の一実施例による第1の位置向きから目標変位だけ離れた第2の位置向きを決定する方法のフローチャートである。図5に示すように、この方法は、以下のステップを含む。
【0072】
ステップS501において、曲線と所定平面との交差位置を決定する。
【0073】
本願の上記ステップS501で提供された構成では、曲線と、仮想キャラクターを支持するための所定平面との交差位置を決定する。
【0074】
第2の位置向きには、仮想現実シーンでの仮想キャラクターの最終的な位置および向きが含まれる。第1の位置向きから目標変位だけ離れた第2の位置向きを決定する際に、第2の位置向きによって示される位置および向きを決定する曲線と所定平面との交差位置を決定する。曲線の端は、円柱形状で表してもよい。円柱形状の特殊効果は、変位後の位置および向きをユーザに示すためのものである。
【0075】
本願のいくつかの実施例によれば、第2の位置向きによって示される位置は、ユーザの手の真正面から一定の速度で放射される放物線と所定平面との交差位置であり、該所定平面は、仮想現実シーンでの地面、高い山などのような、仮想キャラクターを支持するための場所であってもよく、ここでは限定されない。
【0076】
ステップS502において、交差位置から所定距離範囲内の領域を、第2の位置向きによって示される位置として決定する。
【0077】
本願の上記ステップS502で提供された構成では、交差位置から所定距離範囲内の領域を、第2の位置向きによって示される位置として決定する。
【0078】
曲線と所定平面との交差位置を決定した後、交差位置から所定距離範囲内の領域を、第2の位置向きによって示される位置として決定することにより、第2の位置向きによって示される位置の決定が実現される。
【0079】
この実施例では、曲線と所定平面との交差位置を決定し、交差位置から所定距離範囲内の領域を、第2の位置向きによって示される位置として決定することにより、第1の位置向きから目標変位だけ離れた第2の位置向きを決定し、さらに、仮想キャラクターが第1の位置向きで消えるように制御して、仮想キャラクターが第2の位置向きで現れるように制御することが実現され、仮想キャラクターの連続移動に起因してユーザのめまいを引き起こしやすいことを回避するという技術的効果が実現される。
【0080】
本願の他のいくつかの実施例において、ステップS502で交差位置から所定距離範囲内の領域を、第2の位置向きによって示される位置として決定することは、仮想現実シーンで第2の位置向きが正当であるかどうかを検出し、仮想現実シーンで第2の位置向きが正当であることが検出された場合、交差位置から所定距離範囲内の領域を、第2の位置向きによって示される位置として決定する、ことを含む。
【0081】
図6は、本願の実施例による交差位置から所定距離範囲内の領域を、第2の位置向きによって示される位置として決定する方法のフローチャートである。図6に示すように、この方法は、以下のステップを含む。
【0082】
ステップS601において、仮想現実シーンで第2の位置向きが正当であるかどうかを検出する。
【0083】
本願の上記ステップS601で提供された構成では、仮想現実シーンで第2の位置向きが正当であるかどうかを検出する。
【0084】
この実施例では、不当テレポート領域という概念が導入される。仮想現実シーンでの一部の仮想領域は、仮想キャラクターが到達してはいけない領域であるが、ユーザの手から放射された放物線は、仮想現実シーンでのいかなる仮想領域にも到達できる。そのため、仮想領域に対して一定の制限を加える必要がある。仮想現実シーンで第2の位置向きが正当であるかどうかを検出することは、即ち、第2の位置向きが仮想キャラクターの到達許可仮想領域であるかどうかを検出することである。第2の位置向きが仮想キャラクターの到達許可仮想領域であることが検出された場合、仮想現実シーンで第2の位置向きが正当であると決定し、第2の位置向きが仮想キャラクターの到達禁止仮想領域であることが検出された場合、仮想現実シーンで第2の位置向きが正当ではないと決定する。
【0085】
ステップS602において、仮想現実シーンで第2の位置向きが正当であることが検出された場合、交差位置から所定距離範囲内の領域を、第2の位置向きによって示される位置として決定する。
【0086】
本願の上記ステップS602で提供される構成では、仮想現実シーンで第2の位置向きが正当であることが検出された場合、交差位置から所定距離範囲内の領域を、第2の位置向きによって示される位置として決定する。
【0087】
仮想現実シーンで第2の位置向きが正当かであるどうかを検出した後、仮想現実シーンで第2の位置向きが正当であることが検出された場合、交差位置から所定距離範囲内の領域を、第2の位置向きによって示される位置として決定することにより、第2の位置向きによって示される位置の決定が実現され、さらに、仮想キャラクターが第1の位置向きで消えるように制御して、仮想キャラクターが第2の位置向きで現れるように制御することにより、仮想キャラクターの連続移動に起因してユーザのめまいを引き起こしやすいことを回避するという技術的効果が実現される。
【0088】
ステップS603において、仮想現実シーンで第2の位置向きが正当ではないことが検出された場合、所定のマーク情報を表示する。
【0089】
本願の上記のステップS603で提供された構成では、仮想現実シーンで第2の位置向きが正当ではないことが検出された場合、仮想現実シーンで第2の位置向きが正当ではないことを示すための所定のマーク情報を表示する。
【0090】
この実施例では、仮想シーンでの到達許可領域がマークされる。仮想現実シーンで第2の位置向きが正当ではないことが検出された場合、つまり、仮想現実シーンで第2の位置向きが到達禁止領域である場合、放射された放物線と第2の位置向きとに交点があるが、仮想キャラクターが第2の位置向きに到達してはいけないため、曲線と第2の位置向きによって示される位置との表示特殊効果を、目立つ色、例えば赤に設定することにより、仮想キャラクターを第2の位置向きにテレポートしてはいけないことをユーザに示す。この場合、ユーザが、ジョイスティックを解放するか、または大円盤型のタッチパッドを持ち上げると、変位選択がキャンセルされ、変位表現シナリオがトリガーされることはない。
【0091】
本願の他のいくつかの実施例において、目標変位を示すための第3のインジケーション情報を表示した後、仮想キャラクターに第1の位置向きから目標変位だけ変位することをキャンセルするよう指示するための第2の指示を受信し、第2の指示が受信された後、仮想キャラクターが第1の位置向きから前記目標変位だけ変位することをキャンセルするように制御する。
【0092】
変位トリガーメカニズムが便利かつ柔軟であるので、ユーザがジョイスティックを解放するか、または大円盤型のタッチパッドを持ち上げると、第2の指示が生成され、変位キャンセルメカニズムがトリガーされる。Oculusプラットフォームの場合、ユーザがジョイスティックを解放することにより、Viveプラットフォームの場合、ユーザが大円盤型のタッチパッドを持ち上げることにより、第2の指示が生成され、第2の指示に従って変位選択メカニズムがキャンセルされ、後続の変位メカニズムがトリガーされない。
【0093】
本願の他のいくつかの実施例において、第1の位置向きから目標変位だけ離れた第2の位置向きを決定することは、第2の位置向きによって示される位置を指示するための第3の指示を受信し、第3の指示が受信された後、第2の位置向きによって示される位置を決定する、ことを含む。
【0094】
第1の位置向きから目標変位だけ離れた第2の位置向きを決定する際に、ユーザの操作によって第3の指示が生成され、第2の位置向きの位置を指示するための第3の指示を受信し、さらに、第2の位置向きの位置を決定する。
【0095】
本願の他のいくつかの実施例において、第3の指示を受信することは、第2の位置向きによって示される位置を調整するための第1の操作対象の、第2の位置向きによって示される位置に対応する現実シーンでの位置情報を取得し、位置情報によって第3の指示を取得する、ことを含む。
【0096】
第1の操作対象は、ユーザの手であってもよい。ユーザが手の位置を簡単に移動して、手の真正面の角度を回転させることで、第3の指示が受信されることができる。第3の指示に従って、目標変位の位置を広範囲に調整することが実現される。
【0097】
本願の他のいくつかの実施例において、第1の位置向きから目標変位だけ離れた第2の位置向きを決定することは、第2の位置向きによって示される向きを指示するための第4の指示を受信し、第4の指示が受信された後、第2の位置向きによって示される向きを決定する、ことを含む。
【0098】
第1の位置向きから目標変位だけ離れた第2の位置向きを決定する際に、ユーザの操作によって第4の指示が生成され、第2の位置向きの向きを指示するための第4の指示を受信し、さらに、第2の位置向きの向きを決定する。
【0099】
本願の他のいくつかの実施例において、第4の指示を受信することは、第2の位置向きによって示される向きを調整するための第2の操作対象の、第2の位置向きによって示される向きに対応する現実シーンでの角度情報を取得し、角度情報によって第4の指示を取得する、ことを含む。
【0100】
第2の操作対象は、コントローラであってもよい。コントローラの方向選択メカニズムによって、角度情報を決定してもよい。Oculusプラットフォームの場合にも、ジョイスティックの360度の方向が、第2の位置向きによって示される位置の水平の360度にマッピングされるため、ユーザは、ジョイスティックの方向を回転させるだけで、第2の位置向きによって示される向きを便利に決定することができる。本願のいくつかの実施例によれば、仮想現実シーンでの仮想キャラクターの第2の位置向きを、曲線の端に付けられた矢印によって表示することにより、目標変位が視覚的に表示され、目標変位だけ動いた場合の仮想キャラクターの位置および向きが決定される。
【0101】
本願の他のいくつかの実施例において、仮想キャラクターに第1の位置向きから目標変位だけ変位するよう指示するための第1の指示を受信することは、ジョイスティックによって第1の指示を受信することを含み、第1の位置向きから目標変位だけ離れた第2の位置向きを決定することは、ジョイスティックによって第2の位置向きを決定することを含む。あるいは、仮想キャラクターに第1の位置向きから目標変位だけ変位するよう指示するための第1の指示を受信することは、タッチパッドによって第1の指示を受信することを含み、第1の位置向きから目標変位だけ離れた第2の位置向きを決定することは、タッチパッドによって第2の位置向きを決定することを含む。
【0102】
この実施例の実現は、現在市販されている主流のOculusおよびViveの2種類のヘルメットおよび対応する操作コントローラに適用可能である。新しいハードウェアデバイスが登場する場合、この実施例の処理は、同様に適用可能である。
【0103】
本実施例では、仮想現実シーンでの仮想キャラクターの変位制御方法が提供されている。ユーザの操作は、簡単で便利かつ直感的である。変位選択時のプレビュー効果により、ユーザに対してその操作の結果が非常に直感的に伝えられる。仮想キャラクターの瞬間移動を実現することで、仮想現実シーンで連続移動に起因するめまいを回避し、方向の特殊効果により、シーンでの他のユーザに仮想キャラクターの変位過程をはっきり見せる。操作方法は、様々なハードウェア仕様に適合し、操作が簡単かつ便利で習得しやすく、大規模なマルチプレーヤーリアルタイムオンラインのシーンで良いパフォーマンスを持っている。
【0104】
以下、実施例を参照しながら本願の構成を説明し、主に、プログラムレベルでの仮想キャラクターの変位制御のロジック制御フローを説明する。
【0105】
図7は、本願の一実施例による別の仮想キャラクターの変位制御方法のフローチャートである。図7に示すように、角丸長方形は、ユーザの入力を表すためのものであり、直角の長方形は、ロジックユニットを表すためのものであり、菱形は、制御フローの選択を表すためのものであり、破線は、変位選択過程と変位表現過程との実現ロジックを区別するためのものである。この方法は、次のステップを含む。
【0106】
ステップS701において、ユーザは、ジョイスティックをプッシュするか、またはタッチパッドを押下する。
【0107】
仮想キャラクターの変位制御過程では、まず、ユーザが、ジョイスティックをプッシュするか、またはタッチパッドを押下することで、変位メカニズムがトリガーされる。変位メカニズムへのトリガーは、物理コントローラに基づくものであり、異なるプラットフォームによって少し違いがある。Oculusプラットフォームでは、いずれか1つの方向にジョイスティックをプッシュすることで変位の位置の選択がトリガーされ、Viveプラットフォームでは、任意の位置でタッチパッドを押下することで変位選択がトリガーされる。OculusプラットフォームとViveプラットフォームとの物理ボタンは、あまり同じではないが、設計コンセプトが一致する。つまり、変位の方向を選択する必要があるため、変位方向を精確に制御できる物理ボタンが必要になる。ジョイスティックおよびタッチパッドは、最も良い選択である。
【0108】
ステップS702において、変位選択メカニズムを起動する。
【0109】
ユーザがジョイスティックをプッシュしたか、またはタッチパッドを押下した後、変位選択メカニズムが起動される。
【0110】
ステップS703において、空間内でのユーザの手の位置および向きを調整する。
【0111】
変位選択メカニズムを起動した後、空間内でのユーザの手の位置および向きを調整する。ユーザは、空間内での手の位置を簡単に移動し、手の真正面の角度を回転させることで空間内での手の向きを調整してもよい。
【0112】
ステップS704において、目標変位の位置を調整する。
【0113】
空間内でのユーザの手の位置および向きを調整することにより、目標変位の位置を広範囲に調整することが実現される。
【0114】
ステップS705において、ジョイスティックの方向を調整するか、またはタッチポイントの位置を調整する。
【0115】
変位選択メカニズムを起動した後、コントローラの方向選択メカニズムによって、角度を決定する。例えば、Oculusプラットフォームでは、ジョイスティックの360度の方向が目標位置の水平の360度にマッピングされるため、ユーザは、ジョイスティックの方向を回転させるだけで、目標回転位置を便利に決定し、さらに、目標変位の方向を決定することができる。あるいは、タッチパッド上のタッチポイントの位置を調整することで、目標変位の方向を決定する。
【0116】
ステップS706において、目標変位の方向を調整する。
【0117】
ジョイスティックの方向またはタッチポイントの位置を調整した後、目標変位の方向を調整する。
【0118】
ステップS707において、バッファリング時間だけ待つ。
【0119】
この実施例の変位トリガーメカニズムは、便利かつ柔軟である。しかしながら、この実施例では、誤トリガーの可能性があるため、目標変位をキャンセルするためのキャンセルメカニズムが必要になる。目標変位の位置および目標変位の方向を調整した後、バッファリング時間だけ待つことで、変位選択時の後悔時間をユーザに与える。本願のいくつかの実施例によれば、ユーザの手の位置からコントローラの真正面に向かって1本のレイをゆっくりと放射し、例えば、放物線とも呼ばれてもよい矢印付きの青い曲線をゆっくりと放射する。約1秒ほど経過すると、曲線が地面まで曲がって伸び、曲線の頭によって示される新しい位置の表示特殊効果(図8に示す曲線の端の円柱体のように)が現れる。上記曲線の伸びる過程が、ユーザに与えられる後悔時間であり、即ちバッファリング時間である。
【0120】
例えば、Oculusプラットフォームでは、ユーザがジョイスティックを解放することにより、Viveプラットフォームでは、ユーザが大円盤型のタッチパッドを持ち上げることにより、変位選択メカニズムがキャンセルされ、後続の変位メカニズムがトリガーされることはない。曲線の端での位置表示特殊効果が現れるほど曲線が伸びた場合は、変位の表示特殊効果がトリガーされることを表す。
【0121】
バッファリング時間に達する場合、つまり、曲線が地面まで曲がって伸びており、かつ曲線の頭によって示される新しい位置の表示特殊効果が現れている場合、ステップS708を実行する。バッファリング時間に達していない場合、つまり、曲線が地面まで曲がって伸びておらず、かつ曲線の頭によって示される新しい位置の表示特殊効果が現れていない場合、例えば、Oculusのユーザによってジョイスティックが解放されたか、またはViveのユーザによって大円盤型のタッチパッドが持ち上げられた場合、ステップS716を実行する。
【0122】
ステップS708において、目標位置の正当性チェックを実行する。
【0123】
バッファリング時間に達した後、目標変位の目標位置の正当性をチェックする。仮想現実シーンでは、一部の仮想領域は、仮想キャラクターが到達してはいけないように設定されるが、ユーザの手から放射された放物線は、いかなる仮想領域にも到達できる。そのため、仮想領域に対して一定の制限を加える必要がある。
【0124】
本願のいくつかの実施例によれば、仮想現実シーンでの仮想キャラクターの到達許可位置がマークされる。到達禁止領域については、放射された放物線がと到達禁止領域とに交点があるが、仮想キャラクターが該到達禁止領域に到達してはいけないため、放物線と目標位置との特殊効果を赤に設定することにより、仮想キャラクターを該到達禁止領域にテレポートしてはいけないことをユーザに示すようにしてもよい。この場合、ユーザが、ジョイスティックを解放するか、または大円盤型のタッチパッドを持ち上げると、変位選択がキャンセルされ、変位表現がトリガーされることはない。目標位置が正当であると検出された場合、ステップS709を実行する。目標位置が正当ではないと検出された場合、ステップS716を実行する。
【0125】
ステップS709において、目標変位を確認する。
【0126】
目標位置の正当性チェックを実行した後、目標位置が正当であると検出された場合、目標変位を確認する。目標変位が確認された場合、ステップS711を実行し、目標変位が確認されない場合、ステップS716を実行する。
【0127】
ステップS710において、ジョイスティックを押下するか、またはタッチパッドを離す。
【0128】
変位選択確認メカニズムも非常に便利であるように設計される。ユーザがジョイスティックを押下するか、またはタッチパッドを離すと、変位決定メカニズムがトリガーされ、ステップS709が実行される。
【0129】
ステップS711において、変位メカニズムを起動する。
【0130】
目標変位が確認された後、変位メカニズムを起動する、つまり、仮想キャラクターの変位操作がトリガーされる。
【0131】
ステップS712において、ビューアがブラックスクリーンになるように制御する。
【0132】
変位メカニズムを起動した後、仮想キャラクターが現在の位置に留まるように維持し、つまり、静止状態を維持したまま、仮想現実シーンでの画像を表示するためのビューアがゆっくりとブラックスクリーンになるように制御する。
【0133】
ステップS713において、目標変位に基づいて新しい位置向きの位置および向きを決定する。
【0134】
目標変位に基づいて、仮想キャラクターが到達しようとする新しい位置向きの位置および向きを決定する。
【0135】
ステップS714において、特殊効果を再生する。
【0136】
ビューアがブラックスクリーンになるように制御した後、仮想キャラクターが現在の位置で突然消えるようにする。現在の位置の周囲を点粒子が回転することを含めた特殊効果を再生してもよい。
【0137】
ステップS715において、ブラックスクリーンになったビューアの表示が復帰するように制御する。
【0138】
ブラックスクリーンになったビューアの表示が復帰するように制御し、仮想キャラクターが、仮想現実シーンでの新しい位置向きによって示される位置および向きに到達するようにする。ブラックスクリーンになったビューアの表示がゆっくりと復帰する過程では、仮想キャラクターは、新しい位置向きによって示される位置および向きに留まり、即ち、静止状態を維持する。この過程では、ユーザが仮想キャラクターの連続移動に起因する加速度および速度を感じることはないため、めまい感がユーザに与えられることはない。
【0139】
仮想キャラクターが新しい位置向きに突然現れる際に、新しい位置向きおよび元の位置向きには、それぞれの周囲を点粒子が回転することを含めた特殊効果が同時に現れる。そして、元の位置向きの点粒子は、風に吹かれて行くように、擾乱中に新しい位置向きに変位する。新しい位置向きおよび元の位置向きの特殊効果は、この場所に動きがあることを他のユーザに示すためのものである。粒子風の方向は、現在このユーザがどの場所からどの場所まで到達するかの変位変化過程を他のユーザに示すためのものである。
【0140】
ステップS716において、変位選択メカニズムをキャンセルする。
【0141】
バッファリング時間に達していないうちに、Oculusのユーザがジョイスティックを解放したか、Viveのユーザが大円盤型のタッチパッドを持ち上げた後、または目標位置が正当ではないと検出された後、または目標変位が確認されていない場合、変位選択メカニズムをキャンセルする。
【0142】
この実施例の仮想キャラクターの変位選択過程では、その変位の位置や角度の変化過程が、いったん開始されると、常に有効である。次の処理を実行するために、位置や角度の変化過程が終了した瞬間に、変化後の変位の位置や角度が要求を満たしているかどうかを判断する。例えば、目標位置の正当性チェックを実行する。目標位置が正当であると検出された場合、目標変位を確認し、目標位置が正当ではないと検出された場合、変位選択メカニズムをキャンセルする。これにより、仮想キャラクターの瞬間移動によって連続移動を回避することが実現され、方向の特殊効果によってシーンでの他のプレーヤーに仮想キャラクターの変位過程をはっきり見せる。この操作方法は、様々なハードウェア仕様に適合し、操作が簡単かつ便利で習得しやすく、大規模なマルチプレーヤーリアルタイムオンラインのシーンで良いパフォーマンスを持っている。
【0143】
本願の実施例の適用環境は、前述の実施例における適用環境を参照してもよいが、これに限定されない。これについて、この実施例では説明を省略する。本願の実施例では、仮想キャラクターの変位制御方法を実施するための選択可能な具体的なアプリケーションを提供しており、具体的に、仮想現実シーンがゲームアプリケーションである場合を例として説明する。
【0144】
この実施例の設計形態は、主に2つの部分に分けられ、一つの部分は、仮想現実シーンでの仮想キャラクターの変位を決定する前であり、もう一つの部分は、仮想現実シーンでの仮想キャラクターの変位を決定した後である。以下、これらをそれぞれ紹介する。
【0145】
仮想現実シーンでの仮想キャラクターの変位を決定する前に、まず、変位メカニズムがトリガーされる。変位のトリガーメカニズムは、物理コントローラに基づくものであり、異なるプラットフォームによって少し違いがある。例えば、Oculusプラットフォームでは、いずれか1つの方向にジョイスティックをプッシュすることは、即ち、変位選択をトリガーするステップであり、Viveプラットフォームでは、任意の位置でタッチパッドを押下することは、即ち、変位選択をトリガーするステップである。OculusプラットフォームとViveプラットフォームとの物理ボタンは、あまり同じではないが、設計コンセプトが一致する。つまり、変位の方向を選択する必要があるため、方向を精確に制御できる物理ボタンが必要になる。ジョイスティックおよびタッチパッドは、最も良い選択である。
【0146】
次に、変位トリガーメカニズムが便利かつ柔軟であり、つまり、変位が誤ってトリガーされる可能性があるため、変位キャンセルメカニズムが必要になる。変位決定のバッファリング時間をゲームプレーヤーに提供し、仮想現実シーンでの仮想キャラクターの変位を決定するときに後悔時間をゲームプレーヤーに与えるようにしてもよい。変位選択メカニズムがトリガーされた後、仮想現実シーンでの特殊効果の表現は、例えば、図8に示す矢印付きの曲線のような1本のレイがゲームプレーヤーの手の位置からコントローラの真正面に向かってゆっくりと放射されることである。ここで、図8は、本願の実施例による変位特殊効果表示の模式図である。矢印付きの曲線は、色を有してもよい。例えば、曲線は青色である。約1秒ほど経過すると、曲線の端が地面まで曲がって伸び、図8における曲線の端に示されている円柱のような、曲線の頭の新しい位置の表示特殊効果が現れる。この曲線の伸びる過程は、ゲームプレーヤーに与えられる後悔時間である。つまり、変位決定のバッファリング時間がゲームプレーヤーに提供される。
【0147】
本願のいくつかの実施例によれば、Oculusプラットフォームの場合、ゲームプレーヤーがジョイスティックを解放することにより、Viveプラットフォームの場合、ゲームプレーヤーが大円盤型のタッチパッドを持ち上げることにより、変位選択メカニズムがキャンセルされ、後続の変位メカニズムがトリガーされることはない。図8における曲線の端によって示されている円柱のような、曲線が端の位置まで伸びるような表示特殊効果が現れる場合は、仮想現実シーンでの変位の表現シナリオがトリガーされることを表す。
【0148】
変位選択確認メカニズム、即ち、変位決定メカニズムも同様に非常に便利であるように設計される。ゲームプレーヤーがジョイスティックを押下するか、または大円盤を離すと、変位決定メカニズムがトリガーされる。
【0149】
さらに、変位の位置および方向を決定する。図8に示す曲線の端の円柱のような特殊効果は、決定された変位の、仮想現実シーンでの位置および方向をゲームプレーヤーに示すためのものである。本願のいくつかの実施例によれば、変位の位置の決定について、変位の目標位置は、ゲームプレーヤーの手の前方から一定の速度で放射された放物線と地面との交差位置に基づいて決定される。したがって、ゲームプレーヤーは、手の位置を簡単に移動して、手の真正面の角度を回転させるだけで、変位の目標位置を広範囲に調整することができる。変位の角度は、コントローラの方向選択メカニズムによって決定される。例えば、Oculusプラットフォームでは、ジョイスティックの360度の方向が、目標位置の水平の360度にマッピングされるため、ゲームプレーヤーは、ジョイスティックの方向を回転させるだけで、目標回転位置を便利に決定することができる。例えば、図8に示す曲線の端の表示特殊効果(図8における曲線の端の円柱)では、目立つ矢印を使用して目標回転位置を明確に示すことができる。このため、この実施例では、変位の特殊効果を使用して、仮想キャラクターの変位を非常に視覚的な方式でゲームプレーヤーに示し、仮想キャラクターが到達しようとする位置および向きをゲームプレーヤーに把握させる。
【0150】
また、ゲームの仮想現実シーンでは、一部の仮想領域は、ゲームプレーヤーが到達してはいけないように設定されるが、ゲームプレーヤーの手から放射された放物線は、仮想現実シーンでのいかなる仮想領域にも到達できる。そのため、ゲームプレーヤーが到達可能な領域に対して一定の制限を加える必要がある。本願のいくつかの実施例によれば、仮想現実シーンでの到達許可領域がマークされる。到達禁止領域については、放射された放物線と該領域内の目標位置とに交点があるが、仮想キャラクターが該仮想領域に到達してはいけないため、放物線と目標位置との表示特殊効果を、目立つ色に設定し、例えば、赤で表示する。これにより、該領域に到達してはいけないことをゲームプレーヤーに示す。この場合、ゲームプレーヤーが、ジョイスティックを解放するか、または大円盤型のタッチパッドを持ち上げると、選択された変位がキャンセルされ、変位表現がトリガーされることはない。
【0151】
上記の過程では、ゲームプレーヤーの操作は、次の通りである。Oculusプラットフォームの場合、ゲームプレーヤーは、ジョイスティックをプッシュすることで変位選択メカニズムをトリガーし、そして、空間内での手の位置および向きを調整することで目標変位の位置を決定し、次に、ジョイスティックの方向を調整することで目標変位の方向を決定し、最後に、ジョイスティックを押下することで変位の起動を確認する。Viveプラットフォームの場合、ゲームプレーヤーは、タッチパッドを押下することで変位選択メカニズムをトリガーし、そして、空間内での手の位置および向きを調整することで目標変位の位置を決定し、次に、タッチパッド上の手のタッチポイントの位置を調整することで目標変位の方向を決定し、最後に、タッチパッドから手を離すことで変位の起動を確認する。操作過程全体では、片手で操作でき、仮想キャラクターがどこに変位したいかをゲームプレーヤーに非常に便利かつ高速に決定させる。
【0152】
変位の方向および位置が確認された後、ゲームプレーヤーに対応する仮想キャラクターの変位操作がトリガーされ、そして、次のステップがトリガーされる。
【0153】
まず、ゲームプレーヤーにとっては、その対応する仮想キャラクターが仮想現実シーンでの現在の位置に留まり、即ち静止状態を維持したまま、ビューアがゆっくりとブラックスクリーンになり、そして、ビューアの表示がゆっくりと復帰した場合、仮想キャラクターが、前に選択された新しい位置および向きに到達し、ビューアの表示がゆっくりと復帰する過程では、仮想キャラクターが新しい位置および向きに留まり、つまり、同様に静止状態が維持する。この過程では、ゲームプレーヤーが仮想キャラクターの連続移動に起因する加速度および速度を感じることはないため、めまい感がゲームプレーヤーに与えられることはない。
【0154】
次に、仮想現実シーンでの他のゲームプレーヤーにとっては、仮想キャラクターが仮想現実シーンでの始点位置で突然消えて、別の新しい位置に突然現れ、図9に示すように、2つの位置には、それぞれの周囲を点粒子が回転することを含めた特殊効果が同時に現れる。ここで、図9は、本願の実施例による別の変位特殊効果表示の模式図であり、元の位置の点粒子が、風に吹かれて行くように、擾乱中に新しい位置に変位する。新しい位置の点の特殊効果および元の位置の点の特殊効果は、この場所に動きがあることを他のゲームプレーヤーに示すためのものであり、粒子風の方向は、現在この仮想キャラクターがどの場所からどの場所まで到達するかの変位変化過程を他のゲームプレーヤーに示すためのものである。
【0155】
この実施例において、ゲームプレーヤーの操作は、簡単で便利かつ直感的である。変位を選択する際に、選択される変位をプレビューすることができる。これにより、該ゲームプレーヤーに対して操作の結果が非常に直感的に伝えられる。変位表現過程全体では、変位する仮想キャラクターに対応するゲームプレーヤーが快適に感じ、めまい感が発生することはない。さらに、変位表現過程では、他のゲームプレーヤーも仮想キャラクターの変位変化過程を把握することができるため、この構成は、大規模なマルチプレーヤーシナリオにも適用される。
【0156】
説明すべきものとして、上記の変位の特殊効果の表示効果が調整可能であるが、表示特殊効果によって表される目的および効果は、上記の実施例における目的および効果と一致する。つまり、表示された特殊効果は、変位決定のバッファリング時間をゲームプレーヤーに提供し、仮想キャラクターが到達しようとする位置および向きをゲームプレーヤーに把握させる。新しい位置の特殊効果および元の位置の特殊効果は、この場所に動きがあること、および、仮想キャラクターがどの場所からどの場所まで到達するかの変位変化過程を他のゲームプレーヤーに示すためのものである。
【0157】
説明すべきものとして、この実施例の実現は、現在市販されている主流のOculusおよびViveの2種類のヘルメットおよび対応する操作コントローラのみに適用可能である。新しいハードウェアデバイスが登場する場合、その操作にも本願の実施例の仮想キャラクターの変位制御方法が同様に適用可能である。
【0158】
説明すべきものとして、簡単に説明するために、前述の各方法実施例のいずれも一連の動作の組み合わせとして説明されているが、当業者であれば、本願の実施例が、説明された動作順序によって制限されないことが分かるはずである。なぜなら、本願の実施例によれば、いくつかのステップは、他の順序でまたは同時に実行され得るからである。次に、当業者であれば、明細書に記載された実施例のいずれも例示的な実施例に属し、これらに係る動作およびモジュールが必ずしも本願に必須のものではないということも分かるはずである。
【0159】
上記の実施形態の説明により、当業者は、上記の実施例による方法が、ソフトウェアに加えて必要な汎用ハードウェアプラットフォームによって実現可能であり、もちろんハードウェアによって実現可能であるが、多くの場合、前者がより好ましい実施形態である、ということを明確に理解できる。このような理解に基づき、本願の実施例の構成の本質的な部分(または、従来技術に寄与する部分と言う)は、ソフトウェア製品の形で具現化されることができ、該コンピュータソフトウェア製品が、不揮発性コンピュータ可読記憶媒体(例えば、ROM/RAM、磁気ディスク、光ディスク)に記憶され、1つの端末デバイス(携帯電話、コンピュータ、サーバ、またはネットワークデバイスなどであってもよい)に、本願の各実施例における方法を実行させるためのいくつかの機械可読命令を含む。
【0160】
また、本願の実施例では、上記の仮想キャラクターの変位制御方法を実施するための仮想キャラクターの変位制御装置を提供している。図10aは、本願の実施例による仮想キャラクターの変位制御装置の模式図である。図10aに示すように、該装置は、受信ユニット10と、決定ユニット20と、制御ユニット30とを含んでもよい。
【0161】
受信ユニット10は、仮想現実シーンで、仮想キャラクターに第1の位置向きから目標変位だけ変位するよう指示するための第1の指示を受信する。
【0162】
決定ユニット20は、第1の指示が受信された後、第1の位置向きから目標変位だけ離れた第2の位置向きを決定する。
【0163】
制御ユニット30は、仮想キャラクターが第1の位置向きで消えるように制御して、仮想キャラクターが第2の位置向きで現れるように制御し、仮想キャラクターが第1の位置向きと第2の位置向きとの間に現れないようにする。
【0164】
本願のいくつかの実施例によれば、制御ユニット30は、第1の制御モジュールと、第2の制御モジュールとを含む。ここで、第1の制御モジュールは、第2の位置向きが決定された後、仮想キャラクターが第1の位置向きに留まるように制御して、仮想現実シーンでの画像を表示するための、予め設けられたビューアがブラックスクリーンになるように制御する。第2の制御モジュールは、予め設けられたビューアがブラックスクリーンになるように制御した後、予め設けられたビューアの表示が復帰するように制御して、仮想キャラクターが第2の位置向きに留まるように制御する。
【0165】
本願のいくつかの実施例によれば、第1の制御モジュールは、予め設けられたビューアが徐々にブラックスクリーンになるように制御し、ここで、予め設けられたビューアが徐々にブラックスクリーンになる過程では、仮想キャラクターが第1の位置向きに留まるように維持する。第2制御モジュールは、予め設けられたビューアの表示が徐々に復帰するように制御し、ここで、予め設けられたビューアの表示が徐々に復帰する過程では、仮想キャラクターが第2の位置向きに留まるように維持する。
【0166】
本願のいくつかの実施例によれば、制御ユニット30は、第3の制御モジュールと、第4の制御モジュールとを含む。第3の制御モジュールは、第2の位置向きが決定された後、仮想キャラクターが第1の位置向きで消えるように制御し、仮想現実シーンでの第1の位置向きに動きがあることを示すための第1のインジケーション情報を第1の位置向きに表示する。第4の制御モジュールは、仮想キャラクターが第2の位置向きで現れるように制御し、仮想現実シーンでの第2の位置向きに動きがあることを示すための第2のインジケーション情報を第2の位置向きに表示する。
【0167】
本願のいくつかの実施例によれば、第3の制御モジュールは、動いている第1の点粒子を第1の位置向きに表示する第1の表示サブモジュールを含み、ここで、第1のインジケーション情報は、動いている第1の点粒子を含み、第4の制御モジュールは、動いている第2の点粒子を第2の位置向きに表示する第2の表示サブモジュールを含み、ここで、第2のインジケーション情報は、動いている第2の点粒子を含み、第1の点粒子から第2の点粒子への動き方向は、第1の位置向きから第2の位置向きへの仮想キャラクターの変化過程を表す。
【0168】
本願のいくつかの実施例によれば、図10bに示すように、該装置は、第1の位置向きから目標変位だけ離れた第2の位置向きが決定される前に、目標変位を示すための第3のインジケーション情報を表示する表示ユニット40をさらに含み、決定ユニット20は、第3のインジケーション情報によって第2の位置向きを決定する第1の決定モジュールを含む。
【0169】
本願のいくつかの実施例によれば、表示ユニット40は、目標変位を示すための曲線を表示する表示モジュールを含み、ここで、第3のインジケーション情報は、曲線を含む。
【0170】
第1の決定モジュールは、第1の決定サブモジュールと、第2の決定サブモジュールとを含む。ここで、第1の決定サブモジュールは、曲線と、仮想キャラクターを支持するための所定平面との交差位置を決定し、第2決定サブモジュールは、交差位置から所定距離範囲内の領域を、第2の位置向きによって示される位置として決定する。
【0171】
本願のいくつかの実施例によれば、第2決定サブモジュールは、さらに、仮想現実シーンで第2の位置向きが正当であるかどうかを検出し、仮想現実シーンで第2の位置向きが正当であることが検出された場合、交差位置から所定距離範囲内の領域を、第2の位置向きによって示される位置として決定し、仮想現実シーンで第2の位置向きが正当ではないことが検出された場合、仮想現実シーンで第2の位置向きが正当ではないことを示すための所定のマーク情報を表示する。
【0172】
本願のいくつかの実施例によれば、図10cに示すように、該装置は、第1の受信ユニット50と、キャンセルユニット60とをさらに含む。ここで、第1の受信ユニット50は、目標変位を示すための第3のインジケーション情報が表示された後、仮想キャラクターに第1の位置向きから目標変位だけ変位することをキャンセルするよう指示するための第2の指示を受信し、キャンセルユニット60は、第2の指示が受信された後、仮想キャラクターが第1の位置向きから目標変位だけ変位することをキャンセルするように制御する。
【0173】
本願のいくつかの実施例によれば、決定ユニット20は、第2の位置向きによって示される位置を指示するための第3の指示を受信する第1の受信モジュールと、第3の指示が受信された後、第2の位置向きによって示される位置を決定する第2の決定モジュールと、を含む。
【0174】
本願のいくつかの実施例によれば、第1の受信モジュールは、第2の位置向きによって示される位置を調整するための第1の操作対象の、第2の位置向きによって示される位置に対応する現実シーンでの位置情報を取得する第1の取得サブモジュールと、位置情報によって第3の指示を取得する第2の取得サブモジュールと、を含む。
【0175】
本願のいくつかの実施例によれば、決定ユニット20は、第2の位置向きによって示される向きを指示するための第4の指示を受信する第2の受信モジュールと、第4の指示が受信された後、第2の位置向きによって示される向きを決定する第3の決定モジュールと、を含む。
【0176】
本願のいくつかの実施例によれば、第2の受信モジュールは、第2の位置向きによって示される向きを調整するための第2の操作対象の、第2の位置向きによって示される向きに対応する現実シーンでの角度情報を取得する第3の取得サブモジュールと、該角度情報によって第4の指示を取得する第4の取得サブモジュールと、を含む。
【0177】
本願のいくつかの実施例によれば、受信ユニット10は、ジョイスティックによって第1の指示を受信する第3の受信モジュールを含み、決定ユニット20は、ジョイスティックによって第2の位置向きを決定する第4の決定モジュールを含み、または
受信ユニット10は、タッチパッドによって第1の指示を受信する第4の受信モジュールを含み、決定ユニット20は、タッチパッドによって第2の位置向きを決定する第5の決定モジュールを含む。
【0178】
説明すべきものとして、この実施例における受信ユニット10は、本願の前述の方法の実施例におけるステップS202の実行に使用されてもよく、この実施例における決定ユニット20は、本願の前述の方法の実施例におけるステップS204の実行に使用されてもよく、この実施例における制御ユニット30は、本願の前述の方法の実施例におけるステップS206の実行に使用されてもよい。
【0179】
この実施例では、受信ユニット10によって、仮想現実シーンで、仮想キャラクターに第1の位置向きから目標変位だけ変位するよう指示するための第1の指示を受信し、決定ユニット20によって、第1の指示が受信された後、第1の位置向きから目標変位だけ離れた第2の位置向きを決定し、制御ユニット30によって、仮想キャラクターが第1の位置向きで消えるように制御して、仮想キャラクターが第2の位置向きで現れるように制御し、仮想キャラクターが第1の位置向きと第2の位置向きとの間に現れないようにする。即ち、仮想現実シーンで、仮想キャラクターが第1の位置向きで消えるように制御して、仮想キャラクターが第2の位置向きで現れるように制御することにより、仮想キャラクターの瞬間移動によって連続移動を回避するという目的が達成され、仮想キャラクターの連続移動に起因してユーザのめまいを引き起こしやすいということを回避するという技術的効果が実現され、さらに、仮想キャラクターの連続移動に起因してユーザのめまいを引き起こしやすいという関連技術における技術的課題が解決される。
【0180】
ここで、説明すべきものとして、上記のユニットおよびモジュールによって実現される例および適用シナリオは、対応する方法の実施例におけるステップによって実現される例および適用シナリオと同じであるが、前述の方法の実施例で開示された内容に限定されない。説明すべきものとして、上記のモジュールは、装置の一部として、図1に示すようなハードウェア環境で作動可能であり、ソフトウェアによって実現されてもよく、ハードウェアによって実現されてもよい。ここで、ハードウェア環境は、ネットワーク環境を含む。
【0181】
また、本願の実施例は、上記の仮想キャラクターの変位制御方法を実施するための、サーバまたは端末のようなコンピューティングデバイスを提供している。
【0182】
図11は、本願の実施例による端末の構成ブロック図である。図11に示すように、この端末は、1つまたは複数(図中に1つのみが示される)のプロセッサ111、メモリ113、および伝送装置115を含んでもよい。図11に示すように、この端末は、入出力デバイス117をさらに含んでもよい。
【0183】
ここで、メモリ113は、本願の実施例における仮想キャラクターの変位制御方法および装置に対応するプログラム命令/モジュールのようなソフトウェアプログラムおよび機械可読命令モジュールを記憶するために使用することができる。プロセッサ111は、メモリ113に記憶されたソフトウェアプログラムおよびモジュールを実行することにより、様々な機能応用およびデータ処理を実行、即ち、上記の仮想キャラクターの変位制御方法を実現する。メモリ113は、高速ランダムアクセスメモリを含んでもよく、1つまたは複数の磁気記憶装置、フラッシュメモリ、または他の不揮発性固体メモリのような不揮発性メモリを含んでもよい。一部の実例では、メモリ113は、ネットワークを介して端末に接続可能な、プロセッサ111から遠隔設置されるメモリをさらに含んでもよい。上記ネットワークの実例は、インターネット、イントラネット、ローカルエリアネットワーク、モバイル通信ネットワーク、およびこれらの組み合わせを含むが、これらに限定されない。
【0184】
上記の伝送装置115は、ネットワークを介するデータ送受信、および、プロセッサとメモリとの間のデータ伝送に使用される。上記ネットワークの具体的な実例には、有線ネットワークおよび無線ネットワークが含まれてもよい。一実例では、伝送装置115は、ネットワークケーブルを介して他のネットワークデバイスおよびルータに接続されることで、インターネットまたはローカルエリアネットワークと通信可能なネットワークインターフェースコントローラ(NIC:Network Interface Controller)を含む。一実例では、伝送装置115は、インターネットと無線で通信するための無線周波数(RF:Radio Frequency)モジュールである。
【0185】
ここで、具体的には、メモリ113は、アプリケーション、すなわち、機械可読命令を記憶する。
【0186】
プロセッサ111は、伝送装置115を介して、メモリ113に記憶されたアプリケーションを呼び出して実行することにより、
仮想現実シーンで、仮想キャラクターに第1の位置向きから目標変位だけ変位するよう指示するための第1の指示を受信し、
第1の指示が受信された後、第1の位置向きから目標変位だけ離れた第2の位置向きを決定し、
仮想キャラクターが第1の位置向きで消えるように制御して、仮想キャラクターが第2の位置向きで現れるように制御し、仮想キャラクターが第1の位置向きと第2の位置向きとの間に現れないようにする、ことを実行することができる。
【0187】
プロセッサ111は、さらに、第2の位置向きが決定された後、仮想キャラクターが第1の位置向きに留まるように制御して、仮想現実シーンでの画像を表示するための、予め設けられたビューアがブラックスクリーンになるように制御し、予め設けられたビューアがブラックスクリーンになるように制御した後、予め設けられたビューアの表示が復帰するように制御して、仮想キャラクターが第2の位置向きに留まるように制御する、ことを実行する。
【0188】
プロセッサ111は、さらに、予め設けられたビューアが徐々にブラックスクリーンになるように制御し、ここで、予め設けられたビューアが徐々にブラックスクリーンになる過程では、仮想キャラクターが第1の位置向きに留まるように維持し、予め設けられたビューアの表示が徐々に復帰するように制御し、ここで、予め設けられたビューアの表示が徐々に復帰する過程では、仮想キャラクターが第2の位置向きに留まるように維持する、ことを実行する。
【0189】
プロセッサ111は、さらに、第2の位置向きが決定された後、仮想キャラクターが第1の位置向きで消えるように制御して、仮想現実シーンでの第1の位置向きに動きがあることを示すための第1のインジケーション情報を第1の位置向きに表示し、仮想キャラクターが第2の位置向きで現れるように制御し、仮想現実シーンでの第2の位置向きに動きがあることを示すための第2のインジケーション情報を第2の位置向きに表示する、ことを実行する。
【0190】
プロセッサ111は、さらに、動いている第1の点粒子を第1の位置向きに表示し、動いている第2の点粒子を第2の位置向きに表示する、ことを実行し、ここで、第1のインジケーション情報は、動いている第1の点粒子を含み、第2のインジケーション情報は、動いている第2の点粒子を含み、第1の点粒子から第2の点粒子への動き方向は、第1の位置向きから第2の位置向きへの仮想キャラクターの変化過程を表す。
【0191】
プロセッサ111は、さらに、第1の位置向きから目標変位だけ離れた第2の位置向きを決定する前に、目標変位を示すための第3のインジケーション情報を表示し、第3のインジケーション情報によって第2の位置向きを決定する、ことを実行する。
【0192】
プロセッサ111は、さらに、目標変位を示すための曲線を表示し、曲線と、仮想キャラクターを支持するための所定平面との交差位置を決定し、交差位置から所定距離範囲内の領域を、第2の位置向きによって示される位置として決定する、ことを実行し、ここで、第3のインジケーション情報は、曲線を含む。
【0193】
プロセッサ111は、さらに、仮想現実シーンで第2の位置向きが正当であるかどうかを検出し、仮想現実シーンで第2の位置向きが正当であることが検出された場合、交差位置から所定距離範囲内の領域を、第2の位置向きによって示される位置として決定し、仮想現実シーンで第2の位置向きが正当ではないことが検出された場合、仮想現実シーンで第2の位置向きが正当ではないことを示すための所定のマーク情報を表示する、ことを実行する。
【0194】
プロセッサ111は、さらに、目標変位を示すための第3のインジケーション情報が表示された後、仮想キャラクターに第1の位置向きから目標変位だけ変位することをキャンセルするよう指示するための第2の指示を受信し、第2の指示が受信された後、仮想キャラクターが第1の位置向きから目標変位だけ変位することをキャンセルするように制御する、ことを実行する。
【0195】
プロセッサ111は、さらに、第2の位置向きによって示される位置を指示するための第3の指示を受信し、第3の指示が受信された後、第2の位置向きによって示される位置を決定する、ことを実行する。
【0196】
プロセッサ111は、さらに、第2の位置向きによって示される位置を調整するための第1の操作対象の、第2の位置向きによって示される位置に対応する現実シーンでの位置情報を取得し、該位置情報によって第3の指示を取得する、ことを実行する。
【0197】
プロセッサ111は、さらに、第2の位置向きによって示される向きを示すための第4の指示を受信し、第4の指示が受信された後、第2の位置向きによって示される向きを決定する、ことを実行する。
【0198】
プロセッサ111は、さらに、第2の位置向きによって示される向きを調整するための第2の操作対象の、第2の位置向きによって示される向きに対応する現実シーンでの角度情報を取得し、該角度情報によって第4の指示を取得する、ことを実行する。
【0199】
本願の実施例では、仮想キャラクターの変位制御方法を提供している。仮想現実シーンで、仮想キャラクターに第1の位置向きから目標変位だけ変位するよう指示するための第1の指示を受信し、第1の指示が受信された後、第1の位置向きから目標変位だけ離れた第2の位置向きを決定し、仮想キャラクターが第1の位置向きで消えるように制御して、仮想キャラクターが第2の位置向きで現れるように制御し、該仮想キャラクターが第1の位置向きと第2の位置向きとの間に現れないようにすることにより、即ち、仮想現実シーンで、仮想キャラクターが第1の位置向きで消えるように制御して、仮想キャラクターが第2の位置向きで現れるように制御することにより、仮想キャラクターの瞬間移動によって連続移動を回避するという目的が達成され、仮想キャラクターの連続移動に起因してユーザのめまいを引き起こしやすいことを回避するという技術的効果が実現され、さらに、仮想キャラクターの連続移動に起因してユーザのめまいを引き起こしやすいという関連技術における技術的課題が解決される。
【0200】
本願のいくつかの実施例によれば、この実施例における具体例は、前述の実施例で説明された例を参照すればよいが、この実施例では説明を省略する。
【0201】
当業者であれば理解できるように、図11に示す構成は、模式的なものにすぎず、端末は、スマートフォン(例えば、Android(登録商標)携帯電話、iOS携帯電話など)、タブレットコンピュータ、パームトップコンピュータ、およびモバイルインターネットデバイス(MID:Mobile Internet Devices)、PADなどの端末機器であってもよい。図11は、上記の電子装置の構成を限定するものではない。例えば、端末は、図11に示されるものよりも多くまたは少ないコンポーネント(ネットワークインターフェース、表示装置など)を含んでもよく、または図11に示されるものとは異なる構成を有してもよい。
【0202】
当業者であれば理解できるように、端末機器に関連するハードウェアに前述の実施例の各方法の手順の全部または一部は、プログラムから端末機器に関連するハードウェアへ指示することにより実行されてもよい。このプログラムは、コンピュータ可読記憶媒体に記憶されてもよい。この記憶媒体は、フラッシュディスク、読み取り専用メモリ(ROM:Read-Only Memory)、ランダムアクセスメモリ(RAM:Random Access Memory)、磁気ディスク、または光ディスクなどを含んでもよい。
【0203】
また、本願の実施例では、不揮発性コンピュータ可読記憶媒体を提供している。本願の実施例において、上記の記憶媒体は、前述の方法の実施例によって提供される仮想キャラクターの変位制御方法のプログラムコードを記憶することができる。
【0204】
本願の実施例において、上記の記憶媒体は、前述の実施例に示されるネットワーク内の複数のネットワークデバイスのうちの少なくとも1つに配置されてもよい。
【0205】
本願の実施例において、記憶媒体は、
仮想現実シーンで、仮想キャラクターに第1の位置向きから目標変位だけ変位するよう指示するための第1の指示を受信し、
第1の指示が受信された後、第1の位置向きから目標変位だけ離れられ第2の位置向きを決定し、
仮想キャラクターが第1の位置向きで消えるように制御して、仮想キャラクターが第2の位置向きで現れるように制御し、仮想キャラクターが第1の位置向きと第2の位置向きとの間に現れないようにする、ことを実行するためのプログラムコードを記憶するように構成される。
【0206】
本願のいくつかの実施例によれば、記憶媒体は、さらに、第2の位置向きが決定された後、仮想キャラクターが第1の位置向きに留まるように制御して、仮想現実シーンでの画像を表示するための、予め設けられたビューアがブラックスクリーンになるように制御し、予め設けられたビューアがブラックスクリーンになるように制御した後、予め設けられたビューアの表示が復帰するように制御して、仮想キャラクターが第2の位置向きに留まるように制御する、ことを実行するためのプログラムコードを記憶するように構成される。
【0207】
本願のいくつかの実施例によれば、記憶媒体は、さらに、予め設けられたビューアが徐々にブラックスクリーンになるように制御し、ここで、予め設けられたビューアが徐々にブラックスクリーンになる過程では、仮想キャラクターが第1の位置向きに留まるように維持し、予め設けられたビューアの表示が徐々に復帰するように制御し、ここで、予め設けられたビューアの表示が徐々に復帰する過程では、仮想キャラクターが第2の位置向きに留まるように維持する、ことを実行するためのプログラムコードを記憶するように構成される。
【0208】
本願のいくつかの実施例によれば、記憶媒体は、さらに、第2の位置向きが決定された後、仮想キャラクターが第1の位置向きで消えるように制御し、仮想現実シーンでの第1の位置向きに動きがあることを示すための第1のインジケーション情報を第1の位置向きに表示し、仮想キャラクターが第2の位置向きで現れるように制御し、仮想現実シーンでの第2の位置向きに動きがあることを示すための第2のインジケーション情報を第2の位置向きに表示する、ことを実行するためのプログラムコードを記憶するようにさらに構成される。
【0209】
本願のいくつかの実施例によれば、記憶媒体は、さらに、動いている第1の点粒子を第1の位置向きに表示し、動いている第2の点粒子を第2の位置向きに表示することを実行するためのプログラムコードを記憶するように構成され、ここで、第1のインジケーション情報は、動いている第1の点粒子を含み、第2のインジケーション情報は、動いている第2の点粒子を含み、第1の点粒子から第2の点粒子への動き方向は、第1の位置向きから第2の位置向きへの仮想キャラクターの変化過程を表す。
【0210】
本願のいくつかの実施例によれば、記憶媒体は、さらに、第1の位置向きから目標変位だけ離れた第2の位置向きを決定する前に、目標変位を示すための第3のインジケーション情報を表示し、第3のインジケーション情報によって第2の位置向きを決定する、ことを実行するためのプログラムコードを記憶するように構成される。
【0211】
本願のいくつかの実施例によれば、記憶媒体は、さらに、目標変位を示すための曲線を表示し、曲線と、仮想キャラクターを支持するための所定平面の交差位置を決定し、交差位置から所定距離範囲内の領域を、第2の位置向きによって示される位置として決定する、ことを実行するためのプログラムコードを記憶するように構成され、ここで、第3のインジケーション情報は、曲線を含む。
【0212】
本願のいくつかの実施例によれば、記憶媒体は、さらに、仮想現実シーンで第2の位置向きが正当であるかどうかを検出し、仮想現実シーンで第2の位置向きが正当であることが検出された場合、交差位置から所定距離範囲内の領域を、第2の位置向きによって示される位置として決定し、仮想現実シーンで第2の位置向きが正当ではないことが検出された場合、仮想現実シーンで第2の位置向きが正当ではないことを示すための所定のマーク情報を表示する、ことを実行するためのプログラムコードを記憶するように構成される。
【0213】
本願のいくつかの実施例によれば、記憶媒体は、さらに、目標変位を示すための第3のインジケーション情報が表示された後、仮想キャラクターに第1の位置向きから目標変位だけ変位することをキャンセルするよう指示するための第2の指示を受信し、第2の指示が受信された後、仮想キャラクターが第1の位置向きから目標変位だけ変位することをキャンセルするように制御する、ことを実行するためのプログラムコードを記憶するように構成される。
【0214】
本願のいくつかの実施例によれば、記憶媒体は、さらに、第2の位置向きによって示される位置を指示するための第3の指示を受信し、第3の指示が受信された後、第2の位置向きによって示される位置を決定する、ことを実行するためのプログラムコードを記憶するように構成される。
【0215】
本願のいくつかの実施例によれば、記憶媒体は、さらに、第2の位置向きによって示される位置を調整するための第1の操作対象の、第2の位置向きによって示される位置に対応する現実シーンでの位置情報を取得し、該位置情報によって第3の指示を取得する、ことを実行するためのプログラムコードを記憶するように構成される。
【0216】
本願のいくつかの実施例によれば、記憶媒体は、さらに、第2の位置向きによって示される向きを示すための第4の指示を受信し、第4の指示が受信された後、第2の位置向きによって示される向きを決定する、ことを実行するためのプログラムコードを記憶するように構成される。
【0217】
本願のいくつかの実施例によれば、記憶媒体は、さらに、第2の位置向きによって示される向きを調整するための第2の操作対象の、第2の位置向きによって示される向きに対応する現実シーンでの角度情報を取得し、該角度情報によって第4の指示を取得する、ことを実行するためのプログラムコードを記憶するように構成される。
【0218】
この実施例における具体例は、前述の実施例で説明された例を参照すればよいが、この実施例では説明を省略する。
【0219】
この実施例において、上記の記憶媒体は、Uディスク、読み取り専用メモリ(ROM:Read-Only Memory)、ランダムアクセスメモリ(RAM:Random Access Memory)、モバイルハードディスク、磁気ディスク、または光ディスクなどの、プログラムコードを記憶できる様々な媒体を含むが、これらに限定されない。
【0220】
上記の実施例における統合されたユニットは、ソフトウェア機能ユニットの形で実現されて、スタンドアロン製品として販売または使用される場合、上記のコンピュータ可読記憶媒体に記憶されてもよい。このような理解に基づいて、本願の実施例の構成の本質的な部分、または従来技術に寄与する部分、あるいは該構成の全部または一部は、ソフトウェア製品の形で具現化されることができる。該コンピュータソフトウェア製品は、記憶媒体に記憶され、1つまたは複数のコンピュータデバイス(パーソナルコンピュータ、サーバ、またはネットワークデバイスなどであってもよい)に、本願の各実施例で説明された方法の手順の全部または一部を実行させるためのいくつかの機械可読命令を含む。
【0221】
本願の前述の実施例において、各実施例の説明に各自の重点があり、ある実施例で詳述されていない部分は、他の実施例の関連説明を参照すればよい。
【0222】
理解すべきものとして、本願によって提供されるいくつかの実施例において、開示されたクライアントは、他の方式で実現されてもよい。ここで、上記に説明された装置の実施例は、模式的なものにすぎない。例えば、上記のユニットの分割は、論理的な機能の分割にすぎず、実際に実現する際に別の分割方式であってもよい。例えば、複数のユニットまたはコンポーネントを組み合わせたり、他のシステムに統合したりしてもよいし、いくつかの機能を無視したり、実行しなかったりしてもよい。また、示されまたは説明された各構成部分の相互結合、または直接結合、または通信接続は、いくつかのインターフェースを介するものであってもよく、ユニットまたはモジュールの間接結合または通信接続は、電気的または他の形式であってもよい。
【0223】
上記に分離した部品として説明されたユニットは、物理的に分離したものであっても、そうでなくてもよい。ユニットとして示された部品は、物理的なユニットであっても、そうでなくてもよく、即ち、1つの場所に位置してもよいし、ネットワーク上の複数のユニットに分散されてもよい。実際の必要に応じて、その中の一部または全部のユニットを選択して、本実施例に係る発明の目的を達成してもよい。
【0224】
また、本願の各実施例における各機能ユニットは、1つの処理ユニットに統合されてもよく、各ユニットが物理的に別々に存在してもよく、または2つ以上のユニットが1つのユニットに統合されてもよい。上記の統合されたユニットは、ハードウェアの形で実現されてもよいし、ソフトウェア機能ユニットの形で実現されてもよい。
【0225】
上記は、本願の例示的な実施例にすぎない。指摘すべきものとして、当業者にとっては、本願の原理から逸脱しない前提で、若干の改良および修正を行うことができる。これらの改良および修正も、本願の保護範囲と見なされるべきである。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10a
図10b
図10c
図11