まず、本願の実施例に言及される名詞について簡単に説明する。
仮想ソーシャル:プレイヤーは、自分の2Dまたは3D人形モデルをカスタマイズして自分で作り(Do It Yourself、DIY)、仮想キャラクタを生成し、自分の仮想キャラクタを使って、他の仮想キャラクタとのチャットなどのソーシャルアクティビティを行う。一般には、実世界でのソーシャル行動に類似したこのような仮想ソーシャル行動は、仮想世界で発生する。
仮想キャラクタの追加:図1に示すようなプレイヤーAに対応する仮想シーン101では、仮想シーン101外の仮想キャラクタが関連付けられたプレイヤーBからメッセージが送られてきた場合、スクリーン上で何らかの方法でメッセージリマインダを表示し、例えば、プレイヤーBのアバターを含むメッセージバブル102、未読メッセージ数103を表示して、現在、未読メッセージがあることをプレイヤーAに知らせる。プレイヤーAが未読メッセージをクリックすると、チャット詳細ページ104がポップアップして、具体的なメッセージ内容を表示する。
プレイヤーAがチャット詳細ページを閉じると、継続的な案内操作は行われなくなる。プレイヤーAの操作プロセスは中断される。このとき、プレイヤーAが、チャットを終えたばかりのプレイヤーBに関連付けられた仮想キャラクタを仮想シーン101に追加しようとすれば、他の入り口方式を探す必要がある。例えば、連絡先入り口105において、連絡先リスト106をクリックして開くと、プレイヤーAは、連絡先リスト106の中から対応する連絡先を手動で見つけ、そして追加操作を手動で実行する。
しかしながら、上述した仮想キャラクタの追加方法は煩雑であり、ヒューマンマシンインタラクションの効率が低く、また、プレイヤーが操作中の体験は断片的になる。プレイヤーがチャットを終えた後、興味のあるプレイヤー、仮想キャラクタをシーンに追加しようとする場合があるが、チャットが終わると、その追加プロセスは終わるため、プレイヤーは、自ら友達を追加するための入り口を改めて探して新しい操作フローを開始しなければならない。スムーズでシンプルな体験がないため、プレイヤーは友達を追加する過程で失敗率が高い。
図2は、本願の例示的な一実施例によるコンピュータシステムの構成ブロック図を示す。このコンピュータシステム200は、第1の端末210と、サーバ220と、第2の端末230とを含む。
第1の端末210には、例えばインスタントチャットプログラム、ボイスチャットプログラム、ソーシャルプログラム、仮想ソーシャルプログラム、メタバースプログラムなど、仮想キャラクタの表示を支援するアプリケーションプログラムがインストールされて動作する。第1の端末210にインストールされたアプリケーションプログラムには、第1の仮想キャラクタに関連付けられた第1のアカウントがログインされている。
一部の実施例では、第1のアカウントは、第1のアカウントを使用するユーザと見なすことができる。
第1の端末210は、無線ネットワークまたは有線ネットワークを介してサーバ220に繋がる。
サーバ220は、1つのサーバ、複数のサーバ、クラウドコンピューティングプラットフォーム及び仮想化センターのうちの少なくとも1つを含む。概略的には、サーバ220は、プロセッサ221とメモリ222とを含み、メモリ222は、さらに、受信モジュール2221、表示モジュール2222、及び制御モジュール2223を含む。サーバ220は、仮想キャラクタの表示を支援するアプリケーションプログラムにバックグラウンドサービスを提供するために使われる。選択的に、サーバ220が主要なコンピューティング作業を担い、第1の端末210及び第2の端末230が副次的なコンピューティング作業を担うか、または、サーバ220が副次的なコンピューティング作業を担い、第1の端末210及び第2の端末230が主要なコンピューティング作業を担うか、または、サーバ220、第1の端末210及び第2の端末230の三者が分散コンピューティングアーキテクチャによって協働コンピューティングを行うようにしてもよい。
第2の端末230には、仮想キャラクタの表示を支援するアプリケーションプログラムがインストールされて動作する。第2の端末230にインストールされたアプリケーションプログラムには、第2の仮想キャラクタに関連付けられた第2のアカウントがログインされている。
一部の実施例では、第2のアカウントは、第2のアカウントを使用するユーザと見なすことができる。
選択的に、第1の仮想キャラクタと第2の仮想キャラクタとは、同一の仮想シーンに存在しても存在しなくてもよい。選択的に、第1の仮想キャラクタと第2の仮想キャラクタは、同一のチームまたは同一の団体であるか、友達関係にあるか、或いは、一時的な通信権限を有してもよい。
選択的に、第1の端末210及び第2の端末230にインストールされたアプリケーションプログラムは同じであるか、または両端末にインストールされたアプリケーションプログラムは異なる制御系プラットフォームの同一タイプのアプリケーションプログラムであってもよい。第1の端末210は、複数の端末のうちの1つを指してもよく、第2の端末230は、複数の端末のうちの他の1つを指してもよいが、本実施例では、第1の端末210及び第2の端末230のみを例に挙げて説明する。第1の端末210及び第2の端末230のデバイスタイプは同じであるかまたは異なる。このデバイスタイプは、スマートフォン、タブレット型コンピュータ、電子書籍リーダー、ラップトップ型ポータブルコンピュータ、デスクトップ型コンピュータ、テレビ、拡張現実(Augmented Reality、AR)端末、仮想現実(Virtual Reality、VR)端末、及び複合現実(Mixed Reality、MR)端末のうちの少なくとも1つを含むが、これらに限られない。以下の実施例では、端末がスマートフォンを含むことを例に挙げて説明する。
上記端末または仮想キャラクタの数がより多くてもより少なくてもよいことは、当業者なら知っているであろう。例えば、上記端末または仮想キャラクタは、1つのみであってもよく、数十個、数百個またはそれ以上であってもよい。本願の実施例は、端末または仮想キャラクタの数及びデバイスタイプを限定するものではない。
なお、本願に係る情報(ユーザの機器情報、ユーザの個人情報などを含むが、これらに限られない)、データ(分析用のデータ、記憶されたデータ、表示されるデータなどを含むが、これらに限られない)、及び信号は、すべてユーザによって承認されているか、または、すべての関係者によって完全に承認されており、関連データの収集、使用及び処理は、関連する国及び地域の関連法令及び基準に準拠する必要がある。例えば、本願に係る情報は、すべて完全に承認されたうえで取得されるものであり、端末及びサーバは、プログラムの動作中にこの情報をキャッシュするだけであり、この情報の関連データを固定・記憶したり、再利用したりすることはない。
図3は、本願の例示的な一実施例による仮想シーンにおけるインタラクション方法の概略的なフローチャートを示す。本実施例では、この方法が図2に示す端末によって実行されることを例に挙げて説明する。この方法は、以下のステップ320、340、360のうちの少なくとも一部のステップを含む。
ステップ320:第1の端末で動作する第1のアプリケーションプログラムを使用して仮想シーンを表示する。
ここで、第1のアプリケーションプログラムには、第1の仮想キャラクタに対応する第1のアカウントがログインされている。
選択的に、上記仮想シーンは、第1のアプリケーションプログラムが端末上で動作するときに表示されるシーンであってもよい。この仮想シーンは、実世界をシミュレートした環境であってもよいし、半シミュレーション半架空の環境であってもよいし、完全に架空の環境であってもよい。この仮想シーンは、2次元仮想環境であってもよいし、2.5次元仮想環境であってもよいし、または、3次元仮想環境であってもよいが、本願の実施例はこれを限定するものではない。
上記仮想シーンは、第1の仮想キャラクタが他の仮想キャラクタとインタラクションを行うために使われる。
一部の実施例では、仮想キャラクタ間のインタラクションは、仮想ソーシャル、仮想対戦、仮想教育、仮想会議などを含み、本願の実施例はこれを限定するものではない。
選択的に、仮想シーンが仮想対戦シーンとして具現化される場合、第1の仮想キャラクタは、他の仮想キャラクタと仮想対戦を行う。仮想シーンが仮想教育シーンとして具現化される場合、第1の仮想キャラクタは、他の仮想キャラクタと仮想教育を行う。仮想シーンが仮想会議シーンとして具現化される場合、第1の仮想キャラクタは、他の仮想キャラクタと仮想会議を行う。仮想シーンが仮想ソーシャルシーンとして具現化される場合、第1の仮想キャラクタは、他の仮想キャラクタと仮想ソーシャルアクティビティを行う。なお、本願の実施例では、主に仮想ソーシャルシーンを例にして説明する。
ここで、仮想ソーシャルシーンにおける仮想ソーシャル行動は、実世界でのソーシャル行動に類似したものであり、テキストによるコミュニケーション、ジェスチャーによるコミュニケーション、音声によるコミュニケーション、画像によるコミュニケーション、抱擁、触れること、撫でることなどのうちの少なくとも1つを含むが、これらに限られない。第1の仮想キャラクタは、第1のアカウント(すなわち、第1のアカウントを使用するユーザ)によって設計され、または選択され、またはカスタマイズされ、または作成され、または自己定義され、またはサーバにアップロードされ、または端末にアップロードされることができる。第1の仮想キャラクタは、3次元形式の仮想キャラクタである。
第1のアカウントは、第1の仮想キャラクタに対応する。選択的に、第1のアカウントが第1の仮想キャラクタに1対1で対応するか、または、第1のアカウントが少なくとも2つの第1の仮想キャラクタに対応するか、または、第1の仮想キャラクタが少なくとも2つの第1のアカウントに対応することができる。
ステップ340:仮想シーン上にインタラクションコントロールを表示する。
ここで、インタラクションコントロールは、仮想シーン外のインタラクションシーンにおける第1のアカウントと第2のアカウントとのインタラクション情報を提示するために使われる。
選択的に、上記インタラクションコントロールは、2次元インタラクションコントロール、3次元インタラクションコントロールのうちの少なくとも1つとして具現化されてもよい。
一部の実施例では、インタラクションコントロールが2次元インタラクションコントロールとして具現化される場合、ユーザインタフェースは、仮想シーンのシーン画面と、シーン画面に重畳されるHUD層(前景レイヤーの1種)とを含み、このシーン画面は、3次元仮想環境における環境内容を表示するために使われ、このHUD層は、少なくとも1つのインタラクションコントロールを含む。このインタラクションコントロールは、シーン画面の上層に視覚的に浮かんでいる。
一部の実施例では、インタラクションコントロールが3次元インタラクションコントロールとして具現化される場合、ユーザインタフェースは、3次元仮想シーンのシーン画面に含まれるいくつかのトリガ可能な画面要素を含み、この画面要素は、3次元要素、すなわち3次元インタラクションコントロールである。
選択的に、仮想シーンが3次元仮想シーンとして具現化される場合、3次元仮想シーン上に2次元インタラクションコントロールを表示してもよい。
なお、仮想シーン外のインタラクションシーンにおける第1のアカウントと第2のアカウントとのインタラクション情報は、仮想シーン外のインタラクションシーンにおける第1の端末と第2の端末とのインタラクション情報として捉えてもよく、第1の端末で実行される仮想シーンには第1のアカウントがログインされ、第2の端末で実行される仮想シーンには第2のアカウントがログインされている。
概略的には、仮想シーンでインタラクションを行うインタラクション方式を第1のインタラクション方式とすると、仮想シーン外のインタラクションシーンでインタラクションを行うインタラクション方式を第2のインタラクション方式とする。第2のアカウントが第2のインタラクション方式で第1のアカウントにメッセージを送信する場合、仮想シーンでインタラクションコントロールを介してこのメッセージを提示し、これにより、仮想シーンにおいて、第2のアカウントからのメッセージがあることを、第1のアカウントに対応するユーザに注意を喚起する。
選択的に、上記インタラクションコントロールは、仮想シーン外のソーシャルインタラクションシーンにおける第1のアカウントと第2のアカウントとのインタラクション情報を提示するために使われてもよい。ここで、仮想シーン外のソーシャルインタラクションシーンは、仮想シーン外のテキストチャットインタフェースでソーシャルアクティビティを行うシーン、または、仮想シーン外のボイスチャットインタフェースでソーシャルアクティビティを行うシーン、または、仮想シーン外の他の仮想シーンでソーシャルアクティビティを行うシーンのうちの少なくとも1つを含むが、これらに限られない。
選択的に、上記仮想シーンが、第1のアプリケーションプログラムによって提供される仮想シーンである場合、仮想シーン外のインタラクションシーンは、第2のアプリケーションプログラムによって提供されるインタラクションシーンであってもよい。選択的に、第1のアプリケーションプログラムと第2のアプリケーションプログラムは、同じアプリケーションプログラムであってもよいし、異なるアプリケーションプログラムであってもよく、あるいは、第1のアプリケーションプログラムがホストアプリケーションとして具現化される場合、第2のアプリケーションプログラムは、第1のアプリケーションプログラムにインストールされたミニプログラムであってもよく、あるいは、第2のアプリケーションプログラムがホストアプリケーションとして具現化される場合、第1のアプリケーションプログラムは、第2のアプリケーションプログラムにインストールされたミニプログラムであってもよい。
選択的に、仮想シーン外のインタラクションシーンでインタラクションを行うことは、仮想シーン外のユーザインタフェース上でインタラクションを行うことを意味すると理解することもできる。ここで、ユーザインタフェースは、この仮想シーン上に重畳されて表示されたもの、またはこの仮想シーン上に浮かんで表示されたもの、または独立したウィンドウ内に表示されたものであってもよい。本願の実施例はこれを限定するものではない。
一部の実施例では、インタラクション情報は、第2のアカウントが仮想シーン外のインタラクションシーンで第1のアカウントに送信したインスタントメッセージを含み、このインスタントメッセージは、テキストメッセージ、画像メッセージ、ビデオメッセージ、オーディオメッセージ、カードプッシュメッセージ、リンクメッセージなどのうちの少なくとも1つを含む。
選択的に、第2のアカウントが仮想シーン外のインタラクションシーンで送信したインスタントメッセージを、インタラクションコントロールを介して自動的に表示してもよい。例えば、第2のアカウントによって仮想シーン外のチャットインタフェースで第1のアカウントに挨拶のインスタントメッセージ(「こんにちは、いる?」)が送信された場合、第1のアカウントに対応する仮想シーンにインタラクションコントロールを表示し、インタラクションコントロール上に、第2のアカウントが送信したインスタントメッセージ「こんにちは、いる?」を表示する。
あるいは、第2のアカウントが仮想シーン外のインタラクションシーンで送信したインスタントメッセージの提示情報を、インタラクションコントロールを介して自動的に表示する。例えば、第2のアカウントが仮想シーン外のチャットインタフェース上で第1のアカウントに2つのインスタントメッセージを送信した場合、第1のアカウントに対応する仮想シーンにインタラクションコントロールを表示し、インタラクションコントロール上に、第2のアカウントが送信したインスタントメッセージの未読メッセージ数「2」を表示する。
あるいは、第2のアカウントに対応するアカウント識別子を、インタラクションコントロールを介して自動的に表示し、選択的に、このアカウント識別子は、アカウント名、アカウントアバターなどのうちの少なくとも1つを含んでもよいが、本願の実施例はこれを限定するものではない。例えば、第2のアカウントが仮想シーン外のチャットインタフェース上で第1のアカウントにインスタントメッセージを送信した場合、第1のアカウントに対応する仮想シーンにインタラクションコントロールを表示し、インタラクションコントロール上に第2のアカウントに対応するアカウントアバターを表示することで、第2のアカウントからインスタントメッセージが送信されてきたことを第1のアカウントに提示する。
別の一部の実施例では、このインタラクション情報は、第1のアカウントに読まれていない履歴メッセージを含み、この読まれていない履歴メッセージは、第2のアカウントが仮想シーン外のインタラクションシーンで第1のアカウントに送信したメッセージを含む。この履歴メッセージは、テキストメッセージ、画像メッセージ、ビデオメッセージ、オーディオメッセージ、カードプッシュメッセージ、リンクメッセージなどのうちの少なくとも1つを含む。
選択的に、第1の端末で動作する第1のアプリケーションプログラムを使用して仮想シーンを表示し、そして、第2のアカウントが仮想シーン外のインタラクションシーンで第1のアカウントに送信した、読まれていない履歴メッセージが存在することに応答して、仮想シーンにインタラクションコントロールを表示することができる。
概略的には、第1のアカウントに対応する第1の仮想キャラクタが仮想シーンに入った後、現在、仮想シーン外のインタラクションシーンに第2のアカウントから第1のアカウントへのメッセージが存在し、このメッセージが未読メッセージである場合、仮想シーンにインタラクションコントロールを表示する。
選択的に、第2のアカウントが仮想シーン外のインタラクションシーンで送信した、第1のアカウントに読まれていない履歴メッセージを、インタラクションコントロールを介して自動的に表示するか、または、第2のアカウントが仮想シーン外のインタラクションシーンで送信した、第1のアカウントに読まれていない履歴メッセージの提示情報を、インタラクションコントロールを介して自動的に表示するか、または、第2のアカウントに対応するアカウント識別子を、インタラクションコントロールを介して自動的に表示することができる。
なお、本願の実施例は、インタラクションコントロールに表示される内容を限定するものではない。以下、インタラクションコントロールがメッセージリマインドコントロールまたはチャットコントロールとして具現化されることを例にして説明する。
選択的に、このインタラクションコントロールは、第2のアカウントからの第1のメッセージの存在に対する注意を喚起するためのメッセージリマインドコントロールを含んでもよい。選択的に、メッセージリマインドコントロールにおける表示内容は、2次元アイコン、2次元シンボル、メッセージバブル、メッセージ数、メッセージ内容、メッセージプレビュー、アカウントアバターのうちの少なくとも1つを含んでもよい。
選択的に、このインタラクションコントロールは、チャットコントロールを含んでもよい。選択的に、チャットコントロールの表示内容は、アカウント名、メッセージ内容、時間、アカウントアバターのうちの少なくとも1つを含んでもよい。
ステップ360:インタラクションコントロール上でトリガされた操作信号に応答して、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加する。
選択的に、操作信号は、インタラクションコントロール上でトリガされた、第2のアカウントに対して実行された関心操作に対応する操作信号を含んでもよい。
ここで、関心操作は、インタラクションコントロールをクリックすること、インタラクションコントロールをダブルクリックすること、インタラクションコントロールをスワイプさせること、インタラクションコントロールをドラッグすること、インタラクションコントロールを長押しすること、インタラクションコントロール上でテキストを入力すること、インタラクションコントロール上で音声を入力すること、インタラクションコントロール上で第2のアカウントからの第1のメッセージを見ること、インタラクションコントロール上で第2のアカウントに第2のメッセージを送信することのうちの少なくとも1つを含むが、これらに限られない。
一部の実施例では、第2の仮想キャラクタは、第2のアカウント(すなわち、第2のアカウントを使用するユーザ)によって設計され、または選択され、またはカスタマイズされ、または作成され、または自己定義され、またはサーバにアップロードされ、または端末にアップロードされたものであることができる。第2の仮想キャラクタは、3次元形式の仮想キャラクタである。
第2のアカウントは、第2の仮想キャラクタに対応する。選択的に、第2のアカウントが第2の仮想キャラクタに1対1で対応するか、または、第2のアカウントが少なくとも2つの第2の仮想キャラクタに対応するか、または、第2の仮想キャラクタが少なくとも2つの第2のアカウントに対応することができる。
概略的には、第1のアプリケーションプログラムがインスタントメッセージングアプリケーションプログラムとして具現化されることを例にして説明する。インスタントメッセージングアプリケーションプログラムには、チャットインタフェースを介したインタラクション方式(すなわち、仮想シーン外のインタラクションシーンでインタラクションを行うインタラクション方式)と、仮想シーンに入って仮想シーンでインタラクションを行うインタラクション方式と、の2つのインタラクション方式が提供されている。プレイヤーが端末を操作して仮想シーンに入ると、仮想シーンにおいて、プレイヤーに対応する仮想キャラクタが表示され、プレイヤーは、この仮想キャラクタを操作して、仮想シーンで他の仮想キャラクタとインタラクションを行うことができる。
プレイヤーの操作により仮想キャラクタが仮想シーンに存在する場合、このとき、プレイヤーの友達がチャットインタフェースを介してプレイヤーに1つのメッセージを送信すると、仮想シーンに1つのインタラクションコントロールが表示され、このインタラクションコントロールを通じて、例えば、友達のアバターを表示すること、及び、アバター上に未読メッセージ数を表示することなど、このメッセージに対する提示情報を表示する。プレイヤーは、このインタラクションコントロールを仮想シーン内にドラッグすることで、友達に対応する仮想キャラクタを仮想シーンに追加する。その後、この仮想キャラクタは、プレイヤーが制御している端末のインタフェースに表示され、プレイヤーは、この仮想キャラクタを介していつでも友達とインタラクションを行うことができる。
一部の実施例では、第2のアカウントが第1のアプリケーションにログインされているが、仮想シーンに入っていない場合、インタラクションコントロール上でトリガされた操作信号に応答して、第2のアカウントに対応する第2の仮想キャラクタを、仮想シーンに追加する。
概略的には、プレイヤーがプレイヤー端末でこのインスタントメッセージングアプリケーションプログラムにログインして仮想シーンに入ると、プレイヤー端末で表示される仮想シーンに第1の仮想キャラクタが表示される。このとき、プレイヤーの友達は、友達端末でインスタントメッセージングアプリケーションプログラムにログインし、仮想シーンに入らずに第1のアカウントにメッセージを送信すると、プレイヤー端末の仮想シーンに、第2のアカウントのアバターを有するインタラクションコントロールが表示されることになり、プレイヤーの友達からのメッセージの存在をプレイヤーに提示する。プレイヤーがプレイヤー端末でこのインタラクションコントロールを仮想シーン内にドラッグすると、第2のアカウントに対応する第2の仮想キャラクタが3次元仮想シーンに追加され、プレイヤーは、この仮想キャラクタを介していつでも友達とインタラクションを行うことができる。
選択的に、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加することは、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加して表示し、すなわち、第2の仮想キャラクタを、ユーザに見えるように、現在端末で表示されている仮想シーンの画面内に追加することを意味してもよい。
あるいは、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加することは、第2のアカウントに対応する第2の仮想キャラクタを、現在端末で表示されている仮想シーンの画面外に追加することで、第2の仮想キャラクタは仮想シーンに追加されているが、ユーザには見えないことを意味し、ユーザは、端末で表示されている仮想シーンの画面を切り替えることで、第2の仮想キャラクタを探すことができる。
一部の実施例では、仮想シーン外のインタラクションシーンで第1のアカウントにインタラクション情報を送信する第2のアカウントは、複数存在する。
一部の実施例では、1つの第2のアカウントは1つのインタラクションコントロールに対応する。
概略的には、第2のアカウントaが仮想シーン外のインタラクションシーンで第1のアカウントにインタラクション情報を送信すると、仮想シーンにおいて、第2のアカウントaに対応するインタラクションコントロール1が表示される。第2のアカウントbが仮想シーン外のインタラクションシーンで第1のアカウントにインタラクション情報を送信すると、仮想シーンにおいて、第2のアカウントaに対応するインタラクションコントロール2が表示される。
一部の実施例では、複数の第2のアカウントは1つのインタラクションコントロールに対応する。
選択的に、すべての第2のアカウントは1つのインタラクションコントロールに対応してもよい。
概略的には、仮想シーン外のインタラクションシーンで第1のアカウントにインタラクション情報を送信するアカウントがない場合、仮想シーンにインタラクションコントロールは表示されない。第2のアカウントaが仮想シーン外のインタラクションシーンで第1のアカウントにインタラクション情報を送信すると、仮想シーンにおいて、第2のアカウントaに対応するインタラクションコントロールが表示され、インタラクションコントロール上に、第2のアカウントaに対応するアカウントアバターが表示される。第2のアカウントbが仮想シーン外のインタラクションシーンで第1のアカウントにインタラクション情報を送信すると、インタラクションコントロール上に、第2のアカウントaに対応するアカウントアバター及び第2のアカウントbに対応するアカウントアバターが同時に表示されるか、または、インタラクションコントロール上に、第2のアカウントaに対応するアカウントアバターと第2のアカウントbに対応するアカウントアバターとを交互に切り替える切り替えアニメーションが表示されか、または、インタラクションコントロール上に、第2のアカウントbに対応するアカウントアバターが表示される。
選択的に、同じグループにある第2のアカウントは1つのインタラクションコントロールに対応してもよい。
概略的には、第1のアカウントの友達リストのうち、第2のアカウントa及び第2のアカウントbは第1のグループに属し、第2のアカウントcは第2のグループに属する。第2のアカウントaまたは第2のアカウントbが仮想シーン外のインタラクションシーンでて第1のアカウントにインタラクション情報を送信すると、インタラクションコントロール1上に、第2のアカウントaまたは第2のアカウントbに対応するアカウントアバターが表示される。第2のアカウントcが仮想シーン外のインタラクションシーンで第1のアカウントにインタラクション情報を送信すると、インタラクションコントロール2上に、第2のアカウントcに対応するアカウントアバターが表示される。
一部の実施例では、複数の第2のアカウントが1つのインタラクションコントロールに対応する場合、インタラクションコントロールは、仮想シーン外のインタラクションシーンにおける第1のアカウントと複数の第2のアカウントとのインタラクション情報を提示するために使われる。
選択的に、インタラクションコントロール上に、複数の第2のアカウントのそれぞれに対応する、インタラクション情報についての提示内容を同時に表示してもよく、このインタラクション情報の提示内容は、第2のアカウントが仮想シーン外のインタラクションシーンで送信したインタラクションメッセージ、第2のアカウントが仮想シーン外のインタラクションシーンで送信したインタラクションメッセージの提示情報、第2のアカウントに対応するアカウント識別子などのうちの少なくとも1つを含み、本願の実施例はこれを限定するものではない。
選択的に、複数の第2のアカウントのそれぞれに対応する提示内容をインタラクションコントロールに同時に表示してもよい。
あるいは、複数の第2のアカウントのそれぞれに対応する提示内容の第1の切替表示アニメーションを表示し、この第1の切替表示アニメーションとは、複数の第2のアカウントのそれぞれに対応する提示内容を、第2のアカウントから第1のアカウントへのインタラクションメッセージの送信順通りにループ表示するアニメーションを指す。あるいは、第1のアカウントに最も早くインタラクションメッセージを送信した第2のアカウントに対応する提示内容をインタラクションコントロールに表示する。あるいは、第1のアカウントに現在インタラクションメッセージを送信している第2のアカウントに対応する提示内容をインタラクションコントロールに表示する。
あるいは、複数の第2のアカウントのそれぞれに対応する提示内容の第2の切替表示アニメーションを表示し、この第2の切替表示アニメーションとは、複数の第2のアカウントのそれぞれに対応する提示内容を、第2のアカウントのそれぞれに対応する優先度に従ってループ表示するアニメーション(優先度の高いものを最初にループ表示し、優先度の低いものを最後にループ表示するか、または、優先度の低いものを最初にループ表示し、優先度の高いものを最後にループ表示する)を指す。あるいは、最も優先度の高い第2のアカウントに対応する提示内容をインタラクションコントロールに表示する。
ここで、第2のアカウントのそれぞれに対応する優先度は、第2のアカウントごとに第1のアカウントによって設定された優先度であってもよい。あるいは、この優先度は、第1のアカウントと第2のアカウントとの間のインタラクションの頻度に従って自動的に決定された優先度であり、インタラクションの頻度が高いほど優先度が高くなるか、あるいは、第2のアカウントのアカウントレベルと正の相関関係にあるか、あるいは、第2のアカウントが第1のアカウントに送信したインタラクション情報の数と正の相関関係にあるか、あるいは、第2のアカウントが第1のアカウントに送信したインタラクション情報の内容に関連付けられている、などである。本願の実施例は、第2のアカウントの優先度の決定方法を限定するものではない。
概略的には、第2のアカウントが第1のアカウントに送信したインタラクション情報の内容に優先度が関連付けられている場合、第1のアカウントには、「重要なお知らせ」、「@」などの複数のキーワードが予め設定されており、第2のアカウントが第1のアカウントに送信したインタラクション情報の内容に複数のキーワードのいずれか1つが含まれていれば、第2のアカウントに対応する優先度を上げ、優先度が上げられる度合いは、インタラクション情報の内容に含まれるキーワードの数と正の相関関係にある。
選択的に、インタラクションコントロール上でトリガされた操作信号に応答して、複数の第2のアカウントのそれぞれに対応する第2の仮想キャラクタを、仮想シーンに同時に追加してもよい。
概略的には、現在、仮想シーン外のインタラクションシーンで第1のアカウントにインスタントメッセージを送信した第2のアカウントが複数存在する場合、仮想シーンにインタラクションコントロールを表示し、このインタラクションコントロールが仮想シーンにドラッグされると、仮想シーンにおいてこれら複数の第2のアカウントのそれぞれに対応する第2の仮想キャラクタを同時に表示する。
本願の実施例による方法によれば、複数の第2のアカウントのそれぞれに対応する第2の仮想キャラクタを、仮想シーンに同時に追加することにより、仮想キャラクタを仮想シーンに追加する効率を向上させる。
選択的に、インタラクションコントロール上でトリガされた操作信号に応答して、複数の第2のアカウントのそれぞれに対応する第2の仮想キャラクタを、仮想シーンに順次追加してもよい。
概略的には、複数の第2のアカウントのそれぞれに対応する第2の仮想キャラクタを仮想シーンに追加する順序は、以下の状況のうちの少なくとも1つを含む。
状況1:複数の第2のアカウントが仮想シーン外のインタラクションシーンで第1のアカウントにインタラクション情報を送信する順序に従う。
概略的には、現在時刻において、第2のアカウントaが第1のアカウントに最新のインタラクション情報を送信した時刻が、第2のアカウントbが第1のアカウントに最新のインタラクション情報を送信した時刻よりも前である場合、インタラクションコントロールが仮想シーンにドラッグされると、最初に第2のアカウントaに対応する第2の仮想キャラクタを表示し、次に第2のアカウントbに対応する第2の仮想キャラクタを表示する。
あるいは、第2のアカウントaが第1のアカウントに一番目のインタラクション情報を送信した時刻が、第2のアカウントbが第1のアカウントに一番目のインタラクション情報を送信した時刻よりも前である場合、インタラクションコントロールが仮想シーンにドラッグされると、最初に第2のアカウントaに対応する第2の仮想キャラクタを表示し、次に第2のアカウントbに対応する第2の仮想キャラクタを表示する。
状況2:複数の第2のアカウントのそれぞれに対応する優先度順に従う。
選択的に、複数の第2のアカウントのそれぞれに対応する第2の仮想キャラクタを、優先度の高い順に仮想シーンに順次追加する。
あるいは、複数の第2のアカウントのそれぞれに対応する第2の仮想キャラクタを、優先度の低い順に仮想シーンに順次追加する。
ここで、第2のアカウントのそれぞれに対応する優先度は、第2のアカウントごとに第1のアカウントによって設定された優先度であってもよい。あるいは、この優先度は、第1のアカウントと第2のアカウントとの間のインタラクションの頻度に従って自動的に決定された優先度であり、インタラクションの頻度が高いほど優先度が高くなるか、あるいは、第2のアカウントのアカウントレベルと正の相関関係にあるか、あるいは、第2のアカウントが第1のアカウントに送信したインタラクション情報の数と正の相関関係にあるか、あるいは、第2のアカウントが第1のアカウントに送信したインタラクション情報の内容に関連付けられている、などである。本願の実施例は、第2のアカウントの優先度の決定方法を限定するものではない。
概略的には、第2のアカウントが第1のアカウントに送信したインタラクション情報の内容に、優先度が関連付けられている場合、第1のアカウントには、「重要なお知らせ」、「@」などの複数のキーワードが予め設定されており、第2のアカウントが第1のアカウントに送信したインタラクション情報の内容に複数のキーワードのいずれか1つが含まれていれば、第2のアカウントに対応する優先度を上げ、優先度が上げられる度合いは、インタラクション情報の内容に含まれるキーワードの数と正の相関関係にある。
状況3:第1のアカウントが仮想シーン外のインタラクションシーンで設定したインタラクションの順序に従う。
概略的には、第2のアカウントa及び第2のアカウントbが、仮想シーン外のインタラクションシーンで第1のアカウントにインタラクションメッセージを送信し、かつ第1のアカウントが、仮想シーン外のインタラクションシーンにおいて、第2のアカウントbに対応するインタラクションインタフェース(例えば、チャットリスト)を一番上に表示している場合、インタラクションコントロールが仮想シーンにドラッグされると、最初に第2のアカウントbに対応する第2の仮想キャラクタを表示し、次に第2のアカウントaに対応する第2の仮想キャラクタを表示する。
なお、上述した第2の仮想キャラクタの仮想シーンへの追加順序は概略的な例示に過ぎず、本願の実施例はこれを限定するものではない。
本願の実施例による方法によれば、複数の第2のアカウントのそれぞれに対応する第2の仮想キャラクタを仮想シーンに順次追加することにより、コンピュータが一度に大量の仮想キャラクタをレンダリングすることを回避し、コンピュータのレンダリング負担を軽減する。
選択的に、インタラクションコントロール上でトリガされた操作信号に応答して、複数の第2のアカウントを含む選択リストを表示し、選択リストにおける複数の第2のアカウントのうちの少なくとも1つの第2のアカウントに対する選択操作を受け付け、少なくとも1つの第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加するようにしてもよい。
一部の実施例では、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加すると、第1のアカウントは、仮想シーンにおいて仮想キャラクタを介して第2のアカウントとインタラクションを行うことができる。
選択的に、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加し、第2の仮想キャラクタに対応するインタラクションアニメーションを表示し、インタラクションアニメーション上でトリガされた第4の操作に応答して、第1のアカウント及び第2のアカウントに対応するチャットインタフェースを表示するようにしてもよい。
ここで、インタラクションアニメーションは、バブルアニメーション、風船アニメーション、チャットボックスアニメーション、雲アニメーションなどとして具現化されることができ、本願の実施例はこれを限定するものではない。
選択的に、インタラクションアニメーション上に上記のインタラクション情報を表示してもよい。
概略的には、第2の仮想キャラクタが仮想シーンにドラッグされると、第2の仮想キャラクタのキャラクタ上方にバブルアニメーションを表示し、このバブルアニメーション上に第2のアカウントから送信されたインスタントメッセージを表示する。
選択的に、第1の仮想キャラクタに対する、第1の仮想キャラクタを制御して仮想シーン内を移動させる移動制御操作を受け付け、そして、第1の仮想キャラクタと第2の仮想キャラクタとの間の距離が予め設定された距離以下である場合、第1のアカウント及び第2のアカウントに対応するチャットインタフェースを表示するようにしてもよい。
概略的には、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加した後、プレイヤーは、第1の端末を介して、第1の仮想キャラクタを制御して第2の仮想キャラクタへ移動させることができ、仮想シーンにおける第1の仮想キャラクタと第2の仮想キャラクタとの距離が予め設定された距離以下になると、第1のアカウント及び第2のアカウントに対応するチャットインタフェースを自動的にトリガする。
選択的に、チャットインタフェースの表示をトリガした後、第1のアカウントは、このチャットインタフェースにおいて第2のアカウントとインタラクションを行ってもよい。すると、チャットインタフェース上でのチャットメッセージに対するメッセージ送信操作を受け付け、第2のアカウントにチャットメッセージを送信する。
ここで、チャットメッセージは、テキストメッセージ、画像メッセージ、ビデオメッセージ、オーディオメッセージ、カードプッシュメッセージ、リンクメッセージなどのうちの少なくとも1つを含む。本願の実施例はこれを限定するものではない。
一部の実施例では、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加し、第2の仮想キャラクタに対応するインタラクションアニメーションを表示し、そして、インタラクションアニメーション上でトリガされた第4の操作に応答して、第2のアカウントにチャットメッセージを送信する。
あるいは、第1の仮想キャラクタに対する、第1の仮想キャラクタを制御して仮想シーン内を移動させる移動制御操作を受け付け、そして、第1の仮想キャラクタと第2の仮想キャラクタとの間の距離が予め設定された距離以下である場合、第2のアカウントにチャットメッセージを送信する。
別の一部の実施例では、第1のアカウントは、直接インタラクションコントロールを介して第2のアカウントとインタラクションを行うことができる。
選択的に、インタラクションコントロール上でトリガされた操作信号に応答して、第1のアカウント及び第2のアカウントに対応するチャットインタフェースを表示し、そして、チャットインタフェース上でのチャットメッセージに対するメッセージ送信操作を受け付け、第2のアカウントにチャットメッセージを送信するようにしてもよい。
上述のように、本実施例による方法によれば、仮想シーンに表示されたインタラクションコントロールに対する操作によって、第2の仮想キャラクタを仮想シーンに追加することにより、一方では、関連技術ではチャットインタフェースを閉じた後、他の入り口から他の仮想キャラクタを仮想シーンの画面に追加する必要がある方法に比べて、本実施例による方法は、操作が簡単かつ便利であり、プレイヤーがシーン外の仮想キャラクタを仮想シーンに追加する操作の一貫性が向上し、ヒューマンマシンインタラクションの効率を向上させ、また、プレイヤーが仮想キャラクタを追加するために別の入り口をさらに開かなければならないことによるコンピュータの表示リソースの浪費を回避する。他方では、プレイヤーは、仮想シーンにおいて、他のプレイヤーに対して仮想シーン外のインタラクションシーンでのインタラクションを継続することができ、他のプレイヤーとのインタラクションを行うために、仮想シーンを他のインタラクションシーンに切り替える必要がなくなり、プレイヤー間でインタラクションを行う効率を向上させる。
本願の実施例による方法によれば、第2の仮想キャラクタを仮想シーンに追加すると同時に、第2の仮想キャラクタに対応するインタラクションアニメーションを表示するため、第1のアカウントは、このインタラクションアニメーションを介して第2の仮想キャラクタと仮想シーンでインタラクションを行うことが可能になり、仮想シーンのインタラクション性を高め、ヒューマンマシンインタラクションの効率を向上させる。
本願の実施例による方法によれば、第2の仮想キャラクタを仮想シーンに追加した後、プレイヤーが第1の仮想キャラクタを制御して第2の仮想キャラクタへ移動させると、アカウント間のチャットインタフェースを自動的にトリガし、チャットインタフェースの表示中におけるヒューマンマシンインタラクションの効率を向上させる。
本願の実施例による方法によれば、チャットインタフェースをトリガした後、第1のアカウントは、仮想シーンにおいてチャットインタフェースを介して第2のアカウントとインタラクションを行うことができ、プレイヤー間でインタラクションを行う効率を向上させる。
一部の可能な実施例では、上記ステップ360は、ステップ361を含む。
図4は、本願の例示的な一実施例による仮想シーンにおけるインタラクション方法の概略的なフローチャートを示す。本実施例では、この方法が図2に示す端末によって実行されることを例に挙げて説明する。この方法は、以下のステップ320、340、361のうちの少なくとも一部のステップを含む。
ステップ320:第1の端末で動作する第1のアプリケーションプログラムを使用して仮想シーンを表示する。
ここで、第1のアプリケーションプログラムには、第1の仮想キャラクタに対応する第1のアカウントがログインされている。
選択的に、仮想シーンは、2次元仮想環境であってもよいし、2.5次元仮想環境であってもよいし、または、3次元仮想環境であってもよいが、本願の実施例はこれを限定するものではない。
例示的には、図5に示すように、第1のアカウントに対応する3次元仮想シーン501を表示し、この3次元仮想シーン501には、第1の仮想キャラクタ502が表示されている。第1の仮想キャラクタ502は、他の仮想キャラクタ503と3次元仮想シーン501で仮想ソーシャルアクティビティを行う。
ステップ340:仮想シーン上にインタラクションコントロールを表示する。
選択的に、上記インタラクションコントロールは、2次元インタラクションコントロール、3次元インタラクションコントロールのうちの少なくとも1つとして具現化されてもよい。
選択的に、仮想シーンが3次元仮想シーンとして具現化される場合、3次元仮想シーン上に2次元インタラクションコントロールを表示してもよい。
例示的には、図6に示すように、3次元仮想シーン501上にインタラクションコントロール504を表示し、本実施例では、インタラクションコントロール504が、第2のアカウントのアバター5041及びメッセージ数5042を含むメッセージリマインドコントロールであることを例にする。
ステップ361:インタラクションコントロールを仮想シーンへドラッグするドラッグ操作に応答して、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加する。
一部の実施例では、インタラクションコントロールを仮想シーン上のいずれかの位置または第1の位置にドラッグするドラッグ操作に応答して、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加する(または、仮想シーンに追加して表示する)。この第1の位置は、仮想シーンにおける空き表示領域が存在する位置とすることができる。選択的に、空き表示領域とは、他の仮想キャラクタが表示されていない領域を指すか、または、他の仮想キャラクタ及び仮想表示要素が表示されていない領域(例えば、3次元仮想シーンにおける仮想家具、仮想座席など)を指すことができる。
一部の実施例では、インタラクションコントロールを仮想シーン上の第1の領域内にドラッグするドラッグ操作に応答して、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加する(または、仮想シーンに追加して表示する)。選択的に、第1の領域は仮想シーン上で見えており、すなわち、第1の領域は仮想シーン内で表示されているか、または、第1の領域は仮想シーン上で見えず、すなわち、第1の領域は仮想シーン内で表示されていないようにしてもよい。
概略的には、第1の領域が仮想シーン内で見えており、かつ第1の領域が、端末で現在表示されている3次元仮想シーンのシーン画面の中央領域として具現化される場合、インタラクションコントロールをこの領域にドラッグすると、第2のアカウントに対応する第2の仮想キャラクタは、この3次元仮想シーンに追加され、第2の仮想キャラクタは、3次元仮想シーンにおけるいずれかの空き表示領域に表示される。
この第1の領域が3次元仮想シーン内で見えない場合、インタラクションコントロールをトリガすると、第2のアカウントに対応する第2の仮想キャラクタは、端末で現在表示されている3次元仮想シーン外の第1の領域に追加されるが、第1の領域は3次元仮想シーン内にあるままである。
一部の実施例では、インタラクションコントロールを仮想シーンへドラッグするドラッグ操作に応答して、インタラクションコントロールを、仮想シーンに位置する第2の仮想キャラクタに切り替え、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加する(または、仮想シーンに追加して表示する)。選択的に、インタラクションコントロールを、仮想シーンに位置する第2の仮想キャラクタに切り替える切り替え過程は、例えば、アニメーション切り替え効果が表示されるなどのように見えるものにしてもよく、または、見えないものにしてもよい。
一部の実施例では、第1の領域内に位置するインタラクションコントロールを、仮想シーンに位置する第2の仮想キャラクタに切り替え、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加する(または、仮想シーンに追加して表示する)。選択的に、インタラクションコントロールを、仮想シーンに位置する第2の仮想キャラクタに切り替える切り替え過程は、例えば、アニメーション切り替え効果が表示されるなどのように見えるものにしてもよく、または、見えないものにしてもよい。
選択的に、仮想シーン上の第1の領域内に位置する第2のアカウントのアバターを、仮想シーンに位置する第2の仮想キャラクタにアニメーションで切り替えて表示してもよい。概略的には、インタラクションコントロールを第1の領域内にドラッグすると、第1の領域内に表示されていたインタラクションコントロールにおける第2のアカウントのアバターは、仮想シーンに位置する第2の仮想キャラクタにアニメーションで切り替わり、このアバター自体が第2の仮想キャラクタのキャラクタアバターであれば、第2のアカウントのアバターが第2の仮想キャラクタとして展開表示されるアニメーションを表示し、このアバターが第2の仮想キャラクタのキャラクタアバターでなければ、第2のアカウントのアバターが第2の仮想キャラクタに切り替えて表示されるアニメーションを直接表示する。なお、本願の実施例は、第2の仮想キャラクタに切り替えて表示するアニメーションの具体的な内容を限定するものではない。
一部の実施例では、第2のアカウントと第2の仮想キャラクタとの対応関係は、第1のアカウントと第1の仮想キャラクタとの対応関係に類似するものである。
一部の実施例では、第2の仮想キャラクタに基づいて、仮想シーンに第1のメッセージの関連情報を表示し、この第1のメッセージの関連情報は、メッセージ内容、メッセージ数、メッセージプレビュー、メッセージが送信された時間、メッセージが受信された時間などのうちの少なくとも1つを含むが、これらに限られない。
例示的には、図7に示すように、インタラクションコントロール504を3次元仮想シーン501へドラッグし、そして、インタラクションコントロール504を3次元仮想シーン501へドラッグするドラッグ動作に応答して、インタラクションコントロール504を第2の仮想キャラクタ505に切り替えて表示し、第2の仮想キャラクタ505の周囲に第1のメッセージ506のメッセージ内容を表示する。
一部の実施例では、仮想シーンは、第1のアプリケーションプログラムによって提供される仮想シーンであり、第1のアカウントが第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加すると、第1のアプリケーションプログラムは、第2のアカウントに対して、その対応する第2の仮想キャラクタが第1のアカウントによって仮想シーンに追加されたことを第2のアカウントに注意を喚起するためのリマインダメッセージを送信し、第2のアカウントは、このリマインダメッセージによって第1のアプリケーションプログラムにログインし、仮想シーンにおいて仮想キャラクタを介して第1のアカウントとソーシャルアクティビティを行うことができる。
上述のように、本実施例による方法によれば、仮想シーンを3次元仮想シーンとして具現化することができ、インタラクションコントロールを2次元インタラクションコントロールとして具現化することができるため、3次元仮想シーンに2次元インタラクションコントロールを表示し、シーンとコントロールの次元に区別をつけることで、ユーザの操作対象とシーン画面を分離させ、これにより、ユーザは操作対象を明確にすることができ、ヒューマンマシンインタラクションの効率を向上させる。
本実施例による方法によれば、仮想シーンに表示されたインタラクションコントロールに対するドラッグ操作によって、第2の仮想キャラクタを仮想シーンに追加することにより、プレイヤーは、現在の仮想シーンにおいて、仮想キャラクタを介して第2のアカウントと直接ソーシャルインタラクションを行うことができ、プレイヤー間でソーシャルインタラクションを行う効率を向上させる。
本実施例による方法によれば、インタラクションコントロールを仮想シーン上の見える領域にドラッグすることにより、プレイヤーは、現在の仮想シーンにおいて第2の仮想キャラクタと直接インタラクションを行うことができ、ヒューマンマシンインタラクションの効率を向上させる。また、第2のアカウントに対応する第2の仮想キャラクタを、仮想シーン内の見えない領域に追加することにより、コンピュータのレンダリングオーバーヘッドを低減する。
本実施例による方法によれば、インタラクションコントロールを第1の領域にドラッグすると、インタラクションコントロールに表示されていた第2のアカウントのアバターが、第2のアカウントを表す第2の仮想キャラクタにアニメーションで切り替わり、アカウントアバターがある1つのアカウントを正確に識別することができるため、プレイヤーが第2の仮想キャラクタを選択する過程がより正確になる。
本実施例による方法によれば、第2の仮想キャラクタに基づいて第2のアカウントからの第1のメッセージを表示することを可能にするため、プレイヤーは、仮想シーンにおいて第2のアカウントからのメッセージを直接受信することができ、ヒューマンマシンインタラクションの効率を向上させる。
本実施例による方法によれば、第2のアカウントが第1のアプリケーションにログインされているが、仮想シーンに入っていない場合、プレイヤーがインタラクションコントロール上でトリガした第2のアカウントに対する操作によって、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加し、すなわち、プレイヤーは、第2のアカウントがオンラインである場合、仮想シーンにおいて、第2のアカウントに対応する仮想キャラクタを追加することができ、仮想キャラクタを介して第2のアカウントとインタラクションを行う有効性を向上させる。
一部の可能な実施例では、上記ステップ360は、ステップ362、ステップ363、ステップ364を含む。
図8は、本願の例示的な一実施例による仮想シーンにおけるインタラクション方法の概略的なフローチャートを示す。本実施例では、この方法が図2に示す端末によって実行されることを例に挙げて説明する。この方法は、以下のステップ320、340、362、363、364のうちの少なくとも一部のステップを含む。
ステップ320:第1の端末で動作する第1のアプリケーションプログラムを使用して仮想シーンを表示する。
ここで、第1のアプリケーションプログラムには、第1の仮想キャラクタに対応する第1のアカウントがログインされている。
選択的に、仮想シーンは、2次元仮想環境であってもよいし、2.5次元仮想環境であってもよいし、または、3次元仮想環境であってもよいが、本願の実施例はこれを限定するものではない。
例示的には、図5に示すように、第1のアカウントに対応する3次元仮想シーン501を表示し、この3次元仮想シーン501には、第1の仮想キャラクタ502が表示されている。第1の仮想キャラクタ502は、他の仮想キャラクタ503と3次元仮想シーン501で仮想ソーシャルアクティビティを行う。
ステップ340:仮想シーン上にインタラクションコントロールを表示する。
例示的には、図6に示すように、3次元仮想シーン501上にインタラクションコントロール504を表示し、インタラクションコントロール504は、メッセージリマインドコントロール及び/又はチャットコントロールであってもよい。本実施例では、インタラクションコントロール504が、第2のアカウントのアバター5041及びメッセージ数5042を含むことを例にする。
ステップ362:インタラクションコントロールに対するクリック操作に応答して、第2のアカウントからの第1のメッセージを表示する。
一部の実施例では、インタラクションコントロールに対するクリック操作に応答して、第2のアカウントからの第1のメッセージを表示する。あるいは、インタラクションコントロールに対するダブルクリック操作に応答して、第2のアカウントからの第1のメッセージを表示する。あるいは、インタラクションコントロールに対するスワイプ操作に応答して、第2のアカウントからの第1のメッセージを表示する。本実施例では、インタラクションコントロールに対するクリック操作に応答して、第2のアカウントからの第1のメッセージを表示することを例にする。
例示的には、図9に示すように、インタラクションコントロール504に対するクリック操作に応答して、第2のアカウントとのチャットインタフェース507を表示し、チャットインタフェース507には、第2のアカウントからの第1のメッセージ506が表示されている。例示的には、このチャットインタフェース507は、3次元仮想シーン上に浮かんでいるフローティングウィンドウインタフェースである。
選択的に、チャットインタフェース507が3次元仮想シーン上に浮かんでいるフローティングウィンドウインタフェースとして具現化される場合、このフローティングウィンドウインタフェースの背景の透明度は、透明度要件を満たしてもよく、例えば、フローティングウィンドウインタフェースの背景の透明度を70%とする。ここで、メッセージが見えるように、メッセージバブルの透明度を0%~50%とする。
選択的に、上記チャットインタフェース507は、分割画面で表示されるインタフェースであってもよく、例えば、端末のスクリーンは、仮想シーンのシーン画面を表示する第1の表示領域と、チャットインタフェース507を表示する第2の表示領域とを含む。概略的には、第2のアカウントによって送信されたメッセージがビデオメッセージであるか、または、第2のアカウントがビデオ通話の招待を送信した場合、第2の表示領域に、第2のアカウントによって送信されたビデオメッセージを表示するか、または、第2の表示領域に、第2のアカウントに対応するビデオ通話インタフェースを表示することができる。
ステップ363:第2のアカウントからの第1のメッセージに対する閉じ操作に応答して、第2のアカウントからの第1のメッセージを第2のアカウントのアバターに切り替えて表示する。
選択的に、第2のアカウントからの第1のメッセージを第2のアカウントのアバターに切り替える切り替え過程は、例えば、閉じる、縮小する、フェードする、ぼかす、折りたたむなどのうちの少なくとも1つを含むがこれらに限られないアニメーション切り替え効果が表示されるなどのように見えるものにしてもよく、または、見えないものにしてもよい。
一部の実施例では、第2のアカウントのアバターを仮想シーンのエッジまたは隅に表示し、例えば、3次元仮想シーンの左下隅に第2のアカウントのアバターを表示する。
例示的には、図10に示すように、第2のアカウントからの第1のメッセージ506に対する閉じ操作に応答して、第2のアカウントからの第1のメッセージ506を、第2のアカウントのアバター508にアニメーションで切り替えて表示し、すなわち、チャットインタフェース507に対する閉じ操作に応答して、チャットインタフェース507を第2のアカウントのアバター508にアニメーションで切り替えて表示する。
ステップ364:第2のアカウントのアバターに対する操作信号に応答して、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加する。
第2のアカウントのアバターに対する操作信号が対応する操作は、クリック、ダブルクリック、スワイプ、ドラッグなどのうちの少なくとも1つを含むが、これらに限られない。
一部の実施例では、第2のアカウントのアバターをクリックする操作に応答して、第2のアカウントに対応する第2の仮想キャラクタを、仮想シーンに追加して表示する。一部の実施例では、第2のアカウントのアバターをダブルクリックする操作に応答して、第2のアカウントに対応する第2の仮想キャラクタを、仮想シーンに追加して表示する。一部の実施例では、第2のアカウントのアバターをスワイプさせる操作に応答して、第2のアカウントに対応する第2の仮想キャラクタを、仮想シーンに追加して表示する。一部の実施例では、第2のアカウントのアバターを仮想シーン上のいずれかの位置にドラッグするドラッグ操作に応答して、第2のアカウントに対応する第2の仮想キャラクタを、仮想シーンに追加して表示する。
一部の実施例では、第2のアカウントのアバターを仮想シーン上の第1の領域内にドラッグするドラッグ操作に応答して、第2のアカウントに対応する第2の仮想キャラクタを、仮想シーンに追加して表示する。選択的に、第1の領域は仮想シーン上で見えており、すなわち、第1の領域は仮想シーン内で表示されているか、または、第1の領域は仮想シーン上で見えず、すなわち、第1の領域は仮想シーン内で表示されていないようにしてもよい。
一部の実施例では、第2のアカウントのアバターを仮想シーンへドラッグするドラッグ操作に応答して、第2のアカウントのアバターを、仮想シーンに位置する第2の仮想キャラクタに切り替え、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加して表示する。選択的に、第2のアカウントのアバターを、仮想シーンに位置する第2の仮想キャラクタに切り替える切り替え過程は、例えば、アニメーション切り替え効果が表示されるなどのように見えるものにしてもよく、または、見えないものにしてもよい。
一部の実施例では、第1の領域内に位置する第2のアカウントのアバターを、仮想シーンに位置する第2の仮想キャラクタに切り替え、第2のアカウントに対応する第2の仮想キャラクタを、仮想シーンに追加して表示する。選択的に、第2のアカウントのアバターを、仮想シーンに位置する第2の仮想キャラクタに切り替える切り替え過程は、例えばアニメーション切り替え効果が表示されるなどのように見えるものにしてもよく、または、見えないものにしてもよい。
一部の実施例では、第2のアカウントと第2の仮想キャラクタとの対応関係は、第1のアカウントと第1の仮想キャラクタとの対応関係に類似するものである。一部の実施例では、第2の仮想キャラクタに基づいて、仮想シーンに第1のメッセージの関連情報を表示し、この第1のメッセージの関連情報は、メッセージ内容、メッセージ数、メッセージプレビュー、メッセージが送信された時間、メッセージが受信された時間などのうちの少なくとも1つを含むが、これらに限られない。例示的には、図11に示すように、第2のアカウントのアバター508を3次元仮想シーン501へドラッグし、そして、第2のアカウントのアバター508を3次元仮想シーン501へドラッグするドラッグ操作に応答して、第2のアカウントのアバター508を第2の仮想キャラクタ505に切り替えて表示する。
上述のように、本実施例による方法によれば、インタラクションコントロールをクリックすることで第2のアカウントからの第1のメッセージを表示した後、第1のメッセージを閉じると、第1のメッセージは第2のアカウントのアバターに切り替えて表示され、その後、プレイヤーは、第2のアカウントのアバターに対する操作によって、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加して表示することができる。本実施例では、プレイヤーは、インタラクションコントロールをトリガすることで、第2のアカウントによって送信されたメッセージにタイムリーに応答することができる。そして、現在の未読メッセージを処理した後、プレイヤーは、インタラクションコントロールに対応するアバターに対する操作によって、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加して表示することもでき、プレイヤーは、後で仮想シーンにおいて第2の仮想キャラクタを介して第2のアカウントと直接インタラクションを行うことが容易になり、プレイヤー間でソーシャルインタラクションを行う効率を向上させる。
一部の可能な実施例では、上記ステップ360は、ステップ365を含む。
図12は、本願の例示的な一実施例による仮想シーンにおけるインタラクション方法の概略的なフローチャートを示す。本実施例では、この方法が図2に示す端末によって実行されることを例に挙げて説明する。この方法は、以下のステップ320、340、365のうちの少なくとも一部のステップを含む。
ステップ320:第1の端末で動作する第1のアプリケーションプログラムを使用して仮想シーンを表示する。
ここで、第1のアプリケーションプログラムには、第1の仮想キャラクタに対応する第1のアカウントがログインされている。
選択的に、仮想シーンは、2次元仮想環境であってもよいし、2.5次元仮想環境であってもよいし、または、3次元仮想環境であってもよいが、本願の実施例はこれを限定するものではない。
例示的には、図5に示すように、第1のアカウントに対応する3次元仮想シーン501を表示し、この3次元仮想シーン501には、第1の仮想キャラクタ502が表示されている。第1の仮想キャラクタ502は、他の仮想キャラクタ503と3次元仮想シーン501で仮想ソーシャルアクティビティを行う。
ステップ340:仮想シーン上にインタラクションコントロールを表示する。
例示的には、図13に示すように、3次元仮想シーン501上にインタラクションコントロール504を表示し、本実施例では、インタラクションコントロール504がチャットコントロールであることを例にする。
ステップ365:チャットコントロール上でトリガされた第2の操作に応答して、またはチャットコントロール上でトリガされた第3の操作に応答して、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加する。
ここで、第2の操作は、第2のアカウントからの第1のメッセージを見るためのものであり、第3の操作は、第2のアカウントへ第2のメッセージを送信するためのものである。
一部の実施例では、第1のアカウントがインタラクションコントロール上で第2のアカウントからの第1のメッセージを見ること(すなわち、トリガされた第2の操作)に応答して、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加して表示する。このインタラクションコントロールはチャットコントロールである。選択的に、第1のメッセージは、未読メッセージまたは既読メッセージであってもよい。
一部の実施例では、第1のアカウントがインタラクションコントロール上で第2のアカウントからの第1のメッセージを見た後(すなわち、第2の操作がトリガされた後)、インタラクションコントロールを閉じる操作に応答して、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加して表示する。このインタラクションコントロールはチャットコントロールである。選択的に、第1のメッセージは、未読メッセージまたは既読メッセージであってもよい。
一部の実施例では、第1のアカウントがインタラクションコントロール上で第2のアカウントに第2のメッセージを送信すること(すなわち、トリガされた第3の操作)に応答して、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加して表示する。このインタラクションコントロールはチャットコントロールである。選択的に、この第2のメッセージは、テキスト、画像、音声のうちの少なくとも1つを含んでもよい。
一部の実施例では、第1のアカウントがインタラクションコントロール上で第2のアカウントに第2のメッセージを送信した後(すなわち、第3の操作がトリガされた後)、インタラクションコントロールを閉じる操作に応答して、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加して表示する。このインタラクションコントロールはチャットコントロールである。選択的に、この第2のメッセージは、テキスト、画像、音声のうちの少なくとも1つを含んでもよい。
一部の実施例では、第2のアカウントと第2の仮想キャラクタとの対応関係は、第1のアカウントと第1の仮想キャラクタとの対応関係に類似するものである。
例示的には、図14に示すように、インタラクションコントロール504(すなわち、本実施例におけるチャットコントロール)上で第2のアカウントに第2のメッセージが送信された後、インタラクションコントロール504(すなわち、本実施例におけるチャットコントロール)を閉じる操作に応答して、第2のアカウントに対応する第2の仮想キャラクタ505を3次元仮想シーン501に追加して表示する。
上述のように、本実施例による方法によれば、仮想シーンに表示されたチャットコントロール上で第1のメッセージを見るか、または第2のメッセージを送信する操作を行うことにより、第2の仮想キャラクタを仮想シーンに追加して表示する。本実施例による方法は、簡単かつ便利な操作によって、プレイヤーにより一貫性のある使用体験及び面白みを与え、プレイヤー間のインタラクションを強くし、プレイヤーの仮想ソーシャルの積極的な発展に寄与することができる。
本実施例による方法によれば、チャットコントロールを閉じた後、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加して表示することにより、プレイヤーは、チャットコントロールをトリガすることで、第2のアカウントによって送信されたメッセージにタイムリーに応答するか、または第2のアカウントにメッセージを送信することができ、さらに、仮想シーンに表示された第2の仮想キャラクタを介して第2のアカウントとのインタラクションを継続することができ、プレイヤー間でソーシャルインタラクションを行う効率を向上させる。
本実施例による方法によれば、チャットコントロールを閉じると、チャットコントロールは第2のアカウントのアバターに切り替えて表示され、その後、プレイヤーは、第2のアカウントのアバターに対する操作によって、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加して表示することができ、また、アバターに対する操作によって、プレイヤーは、第2のアカウントに対応する第2の仮想キャラクタを仮想シーンに追加するタイミングを選択することができ、プレイヤーによる仮想キャラクタの追加操作の自由度を高める。
図15は、本願の例示的な一実施例による仮想シーンにおけるインタラクション方法の操作フローチャートを示す。この方法が図2に示す端末によって実行されることを例に挙げて説明する。この方法は、以下のステップのうちの少なくとも一部のステップ151~153、154(a)~159(a)、154(b)~157(b)を含む。
ステップ151:第2のアカウントからの第1のメッセージを受信する。
第1のアカウントが使用するクライアントは、第1のメッセージの送信時間、送信アカウント、受信アカウント、メッセージ内容などのうちの少なくとも1つを含む第2のアカウントからの第1のメッセージを受信する。
第2のアカウントからの第1のメッセージは、サーバによって第1のアカウントが使用するクライアントにプッシュされたものであってもよく、第2のアカウントが使用するクライアントによって第1のアカウントが使用するクライアントにプッシュされたものであってもよい。
ステップ152:メッセージ数と第2のアカウントのアバターとを含む2次元インタラクションコントロールを表示する。
第1のアカウントが使用するクライアントは、第2のアカウントから受信した第1のメッセージに基づいて、2次元インタラクションコントロールを表示し、2次元インタラクションコントロールの表示内容は、メッセージ数と第2のアカウントのアバターとを含み、2次元インタラクションコントロールは、メッセージリマインドコントロール及び/又はチャットコントロールであってもよい。
一部の実施例では、2次元インタラクションコントロールの表示素材は、サーバからクライアントに送信されたもの、及び/又は、クライアントのローカルに記憶されたものであってもよい。クライアントが第2のアカウントからの第1のメッセージを受信したことに応答して、クライアントは、メッセージ数、第2のアカウントのアバターなどの内容を、2次元インタラクションコントロールの表示素材で表示する。
ステップ153:第1の操作を判断する。
第1のアカウントは、2次元インタラクションコントロールに対してクリック操作、ドラッグ操作、ダブルクリック操作、スワイプ操作などの第1の操作を行うことができ、第1のアカウントが表示されたメッセージ数及び第2のアカウントのアバターに対する第1の操作は、クライアントが判断する。
例えば、クライアントは、タッチスクリーンを介して第1のアカウントの第1の操作を判断するか、または、マウスでトリガされたイベントを介して第1のアカウントの第1の操作を判断する。
ステップ154(a):2次元インタラクションコントロールをクリックする。
第1のアカウントの第1の操作が2次元インタラクションコントロールをクリックすることであるとクライアントによって判断された場合、クライアントは、ステップ154(a)の後、ステップ155(a)に進む。
ステップ155(a):チャットインタフェースを表示する。
チャットインタフェースの表示内容は、サーバによってクライアントにプッシュされ、及び/又は、クライアントのローカルに記憶されていてもよい。
第1のアカウントが2次元インタラクションコントロールをクリックする第1の操作に応答して、クライアントは、受信したチャットインタフェースの表示内容及び/又はローカルに記憶されたチャットインタフェースの表示内容に基づいて、チャットインタフェースを表示する。例えば、クライアントが第1のアカウントと第2のアカウントとのチャットインタフェースを表示すると、ステップ156(a)に進むことができる。
ステップ156(a):チャットインタフェースを閉じる。
第1のアカウントは、チャットインタフェースに対して、例えばテキスト入力、音声入力、インタフェースを閉じるなどの操作を行うことができる。クライアントは、チャットインタフェースに対する第1のアカウントの操作を判断または認識することができる。例えば、タッチスクリーンを介して、チャットインタフェースに対する第1のアカウントの操作を判断するか、または、マウスでトリガされたイベントを介して、チャットインタフェースに対する第1のアカウントの操作を判断することができる。
第1のアカウントがチャットインタフェースを閉じると、ステップ157(a)に進む。
ステップ157(a):チャットインタフェースを第2のアカウントのアバターに切り替えて表示する。
第2のアカウントのアバターは、サーバによってクライアントにプッシュされるか、または、クライアントのローカルに記憶されている。
第1のアカウントがチャットインタフェースを閉じる操作に応答して、クライアントは、チャットインタフェースを第2のアカウントのアバターに切り替えて表示する。
選択的に、チャットインタフェースを第2のアカウントのアバターに切り替えて表示する切り替え過程は、例えば、アニメーション切り替え効果として表示されるなどのように見えるものにしてもよく、または、見えないものにしてもよい。
例えば、クライアントは、チャットインタフェースを折りたたんで第2のアカウントのアバターに切り替え、第2のアカウントのアバターは3次元仮想シーンの左下隅に表示される。
ステップ158(a):第2のアカウントのアバターをクリックする。
第1のアカウントは、クライアントで表示された第2のアカウントのアバターに対して、例えばクリック、ダブルクリック、スワイプ、ドラッグなどの操作を行うことができ、クライアントは、チャットインタフェースに対する第1のアカウントの操作を判断または認識することができる。
第1のアカウントが第2のアカウントのアバターをクリックした操作がクライアントによって判断された場合、クライアントは、ステップ159(a)に進む。
ステップ159(a):3次元仮想シーンに第2の仮想キャラクタを表示する。
第2の仮想キャラクタの表示素材は、キャラクタ表示素材、肌表示素材などを含んでもよく、例えば、キャラクタ表示素材は、キャラクタの身長、体つき、性別などのうちの少なくとも1つを含み、肌表示素材は、髪型、肌の色、トップス、ボトムス、スカート、靴、メイクなどのうちの少なくとも1つを含む。
一部の実施例では、第2の仮想キャラクタの表示素材は、サーバによってクライアントにプッシュされ、及び/又は、クライアントのローカルに記憶されている。例えば、サーバは、クライアントに第2の仮想キャラクタの表示素材をプッシュし、クライアントは3次元仮想シーンに第2の仮想キャラクタを表示する。あるいは、クライアントは第2の仮想キャラクタの表示素材をローカルに記憶し、サーバはクライアントに素材識別子をプッシュし、クライアントは素材識別子に基づいて第2の仮想キャラクタをレンダリングして生成し、3次元仮想シーンに表示する。
第1のアカウントが第2のアカウントのアバターをクリックする操作に応答して、クライアントは、第2のアカウントに対応する第2の仮想キャラクタを、3次元仮想シーンに追加して表示する。
ステップ154(b):2次元インタラクションコントロールをドラッグする。
第1のアカウントの第1の操作が2次元インタラクションコントロールをドラッグすることであるとクライアントによって判断された場合、クライアントは、ステップ154(b)の後、ステップ155(b)に進む。
ステップ155(b):2次元インタラクションコントロールを第2の仮想キャラクタに切り替えて表示する。
一部の実施例では、HUD層上の2次元インタラクションコントロールが第1の領域内に入ったか、または移動したとクライアントによって判断された場合、2次元インタラクションコントロールは表示されず、すなわち、2次元インタラクションコントロールが消えるようにすると理解することもできる。そして、クライアントは、3次元仮想シーンに第2の仮想キャラクタを表示する。第2の仮想キャラクタが3次元仮想シーンに表示される位置は、カメラモデルによって生成された画面から発射された半直線と3次元仮想シーン内のある平面(例えば、地平面)との交差点であるか、または、2次元インタラクションコントロールがHUD層から消えた位置が3次元仮想シーン内にマッピングされる位置であってもよい。
第1のアカウントが2次元インタラクションコントロールをドラッグする操作に応答して、クライアントは、2次元インタラクションコントロールを第2の仮想キャラクタに切り替えて表示する。
選択的に、2次元インタラクションコントロールを第2の仮想キャラクタに切り替えて表示する切り替え過程は、例えば、アニメーション切り替え効果として表示されるなどのように見えるものにしてもよく、または、見えないものにしてもよい。
ステップ156(b):3次元仮想シーンにおける第1の領域にドラッグして手を放す。
第1のアカウントは、クライアントで表示された第2の仮想キャラクタに対してドラッグ操作を行うことができ、例えば、3次元仮想シーンにおける第1の領域にドラッグして手を放す。
選択的に、第1の領域は見えるものにしてもよく、または見えないものにしてもよい。
クライアントは、第1のアカウントが手を放したか否か、手放し位置などを認識または判断することができ、例えば、クライアントは、タッチスクリーンを介して、第1のアカウントが第1の領域内で手を放したと判断するか、または、マウスでトリガされたイベントを介して、第1のアカウントが第1の領域内で手を放したと判断する。
第1のアカウントが2次元インタラクションコントロールを3次元仮想シーンにおける第1の領域内にドラッグして手を放すと、クライアントはステップ157(b)に進む。
ステップ157(b):3次元仮想シーンに第2の仮想キャラクタを表示する。
第2の仮想キャラクタの表示素材は、キャラクタ表示素材、肌表示素材などを含んでもよく、例えば、キャラクタ表示素材は、キャラクタの身長、体つき、性別などのうちの少なくとも1つを含み、肌表示素材は、髪型、肌の色、トップス、ボトムス、スカート、靴、メイクなどのうちの少なくとも1つを含む。
一部の実施例では、第2の仮想キャラクタの表示素材は、サーバによってクライアントにプッシュされ、及び/又は、クライアントのローカルに記憶されている。例えば、サーバは、クライアントに第2の仮想キャラクタの表示素材をプッシュし、クライアントは3次元仮想シーンに第2の仮想キャラクタを表示する。あるいは、クライアントは第2の仮想キャラクタの表示素材をローカルに記憶し、サーバはクライアントに素材識別子をプッシュし、クライアントは素材識別子に基づいて第2の仮想キャラクタをレンダリングして生成し、3次元仮想シーンに表示する。
第1のアカウントが2次元インタラクションコントロールを3次元仮想シーンにおける第1の領域にドラッグして手を放す操作に応答して、クライアントは、第2のアカウントに対応する第2の仮想キャラクタを3次元仮想シーンに追加して表示する。
上述のように、本実施例による方法によれば、第2のアカウントから第1のメッセージを受信した場合、第1のアカウントの操作を判断することにより、第1のアカウントが一貫性のある、簡単かつ便利な操作フローを用いて第2の仮想キャラクタを仮想シーンに追加して表示することを可能にし、プレイヤーにより一貫性のある使用体験及び面白みを与え、プレイヤー間のインタラクションを強くし、プレイヤーの仮想ソーシャルの積極的な発展に寄与する。
図16は、本願の例示的な一実施例によるタイミング図を示しており、このタイミング図が図2に示す端末及び/又はサーバ間のタイミング図であることを例に挙げて説明するが、以下のステップ1601~1612のうちの少なくとも一部のステップを含む。
ステップ1601:バックグラウンドサーバ(論理層)は、クライアント(プレゼンテーション層)に対して、第2のアカウントからの第1のメッセージがあることを提示するためのプロンプトを送信する。
バックグラウンドサーバ(論理層)は、第1のメッセージの送信時間、送信アカウント、受信アカウント、メッセージ内容などのうちの少なくとも1つを含む第2のアカウントからの第1のメッセージを受信する。第2のアカウントからの第1のメッセージを受信したことに応答して、バックグラウンドサーバ(論理層)は、クライアント(プレゼンテーション層)にプロンプトを送信し、プロンプトの内容は、第1のメッセージの送信時間、送信アカウント、受信アカウント、メッセージ内容などのうちの少なくとも1つを含む。
ステップ1602:クライアント(プレゼンテーション層)は、インタラクションコントロールを介して第1のアカウントにメッセージ(数)及び/又は第2のアカウントのアバターを表示する。
インタラクションコントロールの表示素材は、バックグラウンドサーバ(論理層)によってクライアントに送信されたもの、及び/又は、クライアントのローカルに記憶されたものであってもよい。
一部の実施例では、クライアントが第2のアカウントからの第1のメッセージを受信したことに応答して、クライアントは、メッセージ数、第2のアカウントのアバターなどの内容を、インタラクションコントロールの表示素材で表示する。
ステップ1603:第1のアカウントはインタラクションコントロールをクリックする。
第1のアカウントは、インタラクションコントロールに対してクリック操作、ドラッグ操作、ダブルクリック操作、スワイプ操作などの第1の操作を行うことができ、インタラクションコントロールに対する第1のアカウントの第1の操作は、クライアントが判断する。
ステップ1604:クライアント(プレゼンテーション層)は、バックグラウンドサーバ(論理層)に対して、チャットインタフェースの表示内容を要求するための要求メッセージを送信する。
この要求メッセージは、チャットインタフェースの表示内容、例えば、履歴チャットの詳細、第2のアカウントのアバター、履歴メッセージの送信時間などのうちの少なくとも1つを要求するための第1の要求メッセージである。
一部の実施例では、チャットインタフェースの表示内容は、クライアントのローカルに記憶されたものであってもよく、クライアント(プレゼンテーション層)は、バックグラウンドサーバ(論理層)に対して、チャットインタフェースの表示内容の識別子を要求するための要求メッセージを送信して、チャットインタフェースの表示内容を生成する。
このチャットインタフェースは、第1のアカウントと第2のアカウントとの間のチャットインタフェースであってもよいし、第1のアカウントと第2のアカウント及び他のアカウントとの間のチャットインタフェースであってもよい。
インタラクションコントロールに対する第1のアカウントの第1の操作、例えばインタラクションコントロールをクリックする操作に応答して、クライアント(プレゼンテーション層)は、バックグラウンドサーバ(論理層)にこの第1の要求メッセージを送信する。
ステップ1605:バックグラウンドサーバ(論理層)は、クライアント(プレゼンテーション層)にチャットインタフェースの表示内容を送信する。
チャットインタフェースの表示内容は、履歴チャットの詳細、第2のアカウントのアバター、履歴メッセージの送信時間などのうちの少なくとも1つを含む。
クライアント(プレゼンテーション層)がバックグラウンドサーバ(論理層)に要求メッセージを送信したことに応答して、バックグラウンドサーバ(論理層)は、クライアント(プレゼンテーション層)にチャットインタフェースの表示内容を送信する。
ステップ1606:クライアント(プレゼンテーション層)は、第1のアカウントにチャットインタフェースを表示する。
クライアント(プレゼンテーション層)が受信したチャットインタフェースの表示内容に応答して、及び/又は、クライアントのローカルに記憶されたチャットインタフェースの表示内容に応答して、クライアント(プレゼンテーション層)はチャットインタフェースを生成して表示する。
ステップ1607:第1のアカウントはチャットインタフェースを閉じる。
第1のアカウントは、チャットインタフェースに対して、例えばテキスト入力、音声入力、インタフェースを閉じるなどの操作を行うことができる。クライアントは、チャットインタフェースに対する第1のアカウントの操作を判断または認識することができる。例えば、タッチスクリーンを介して、チャットインタフェースに対する第1のアカウントの操作を判断するか、または、マウスでトリガされたイベントを介して、チャットインタフェースに対する第1のアカウントの操作を判断する。
ステップ1608:クライアント(プレゼンテーション層)は、チャットインタフェースを第2のアカウントのアバターに切り替えて表示する。
第2のアカウントのアバターは、サーバによってクライアントにプッシュされるか、または、クライアントのローカルに記憶されている。
第1のアカウントがチャットインタフェースを閉じる操作に応答して、クライアント(プレゼンテーション層)は、チャットインタフェースを第2のアカウントのアバターに切り替えて表示する。
選択的に、チャットインタフェースを第2のアカウントのアバターに切り替えて表示する切り替え過程は、例えば、アニメーション切り替え効果として表示されるなどのように見えるものにしてもよく、または、見えないものにしてもよい。
ステップ1609:第1のアカウントは第2のアカウントのアバターをクリックする。
第1のアカウントは、クライアントで表示された第2のアカウントのアバターに対して例えばクリック、ダブルクリック、スワイプ、ドラッグなどの操作を行うことができ、クライアントは、チャットインタフェースに対する第1のアカウントの操作を判断または認識することができる。
ステップ1610:クライアント(プレゼンテーション層)は、バックグラウンドサーバ(論理層)に対して、第2の仮想キャラクタの表示素材を要求するための要求メッセージを送信する。
この要求メッセージは、キャラクタ表示素材、肌表示素材などの第2の仮想キャラクタの表示素材を要求するための第2の要求メッセージであり、キャラクタの身長、体つき、性別、髪型、肌の色、トップス、ボトムス、スカート、靴、メイクなどのうちの少なくとも1つを含み得る。
第2のアカウントのアバターをクリックするなど、第2のアカウントのアバターに対する第1のアカウントの操作に応答して、クライアント(プレゼンテーション層)は、バックグラウンドサーバ(論理層)にこの第2の要求メッセージを送信する。
ステップ1611:バックグラウンドサーバ(論理層)は、クライアント(プレゼンテーション層)に第2の仮想キャラクタの表示素材を送信する。
クライアント(プレゼンテーション層)がバックグラウンドサーバ(論理層)に要求メッセージを送信したことに応答して、バックグラウンドサーバ(論理層)は、クライアント(プレゼンテーション層)に第2の仮想キャラクタの表示素材を送信する。
ステップ1612:クライアント(プレゼンテーション層)は、第2の仮想キャラクタを3次元仮想シーンに追加して第1のアカウントに表示する。
一部の実施例では、第2の仮想キャラクタの表示素材は、サーバによってクライアントにプッシュされ、及び/又は、クライアントのローカルに記憶されている。例えば、サーバは、クライアントに第2の仮想キャラクタの表示素材をプッシュし、クライアントは3次元仮想シーンに第2の仮想キャラクタを表示する。あるいは、クライアントは第2の仮想キャラクタの表示素材をローカルに記憶し、サーバはクライアントに素材識別子をプッシュし、クライアントは素材識別子に基づいて第2の仮想キャラクタをレンダリングして生成し、3次元仮想シーンに表示する。
上述のように、本実施例による方法によれば、第1のアカウント、クライアント(プレゼンテーション層)及びバックグラウンドサーバ(論理層)が共同して仮想キャラクタの表示方法を実行し、第1のアカウントがインタラクションコントロールを操作した後に、第2の仮想キャラクタを仮想シーンに追加して表示することを可能にし、一貫性のある、簡単かつ便利な操作フローが、プレイヤーにより一貫性のある使用体験及び面白みを与え、プレイヤー間のインタラクションを強くし、プレイヤーの仮想ソーシャルの積極的な発展に寄与する。
図17は、本願の例示的な一実施例によるタイミング図を示しており、このタイミング図が図2に示す端末とサーバとの間のタイミング図であることを例に挙げて説明するが、以下のステップ1701~1708のうちの少なくとも一部のステップを含む。
ステップ1701:バックグラウンドサーバ(論理層)は、クライアント(プレゼンテーション層)に対して、第2のアカウントからの第1のメッセージがあることを提示するためのプロンプトを送信する。
バックグラウンドサーバ(論理層)は、第1のメッセージの送信時間、送信アカウント、受信アカウント、メッセージ内容などのうちの少なくとも1つを含む第2のアカウントからの第1のメッセージを受信する。第2のアカウントからの第1のメッセージを受信したことに応答して、バックグラウンドサーバ(論理層)は、クライアント(プレゼンテーション層)にプロンプトを送信し、プロンプトの内容は、第1のメッセージの送信時間、送信アカウント、受信アカウント、メッセージ内容などのうちの少なくとも1つを含む。
ステップ1702:クライアント(プレゼンテーション層)は、インタラクションコントロールを介して第1のアカウントにメッセージ(数)及び/又は第2のアカウントのアバターを表示する。
インタラクションコントロールの表示素材は、バックグラウンドサーバ(論理層)によってクライアントに送信されたもの、及び/又は、クライアントにローカルに記憶されたものであってもよい。
一部の実施例では、クライアントが第2のアカウントからの第1のメッセージを受信したことに応答して、クライアントは、メッセージ数、第2のアカウントのアバターなどの内容を、インタラクションコントロールの表示素材で表示する。
ステップ1703:第1のアカウントは、インタラクションコントロールを3次元仮想シーンにドラッグする。
第1のアカウントは、インタラクションコントロールに対してクリック操作、ドラッグ操作、ダブルクリック操作、スワイプ操作などの第1の操作を行うことができ、インタラクションコントロールに対する第1のアカウントの第1の操作は、クライアントが判断する。
ステップ1704:クライアント(プレゼンテーション層)は、バックグラウンドサーバ(論理層)に対して、第2の仮想キャラクタの表示素材を要求するための要求メッセージを送信する。
この要求メッセージは、キャラクタ表示素材、肌表示素材などの第2の仮想キャラクタの表示素材を要求するための第2の要求メッセージであり、キャラクタの身長、体つき、性別、髪型、肌の色、トップス、ボトムス、スカート、靴、メイクなどのうちの少なくとも1つを含み得る。
第1のアカウントがインタラクションコントロールを3次元仮想シーンにドラッグする操作に応答して、クライアント(プレゼンテーション層)は、バックグラウンドサーバ(論理層)に要求メッセージを送信する。
ステップ1705:バックグラウンドサーバ(論理層)は、クライアント(プレゼンテーション層)に第2の仮想キャラクタの表示素材を送信する。
クライアント(プレゼンテーション層)がバックグラウンドサーバ(論理層)に要求メッセージを送信したことに応答して、バックグラウンドサーバ(論理層)は、クライアント(プレゼンテーション層)に第2の仮想キャラクタの表示素材を送信する。
ステップ1706:クライアント(プレゼンテーション層)は、インタラクションコントロールを第2の仮想キャラクタに切り替えて表示する。
一部の実施例では、HUD層上のインタラクションコントロールが第1の領域内に入ったか、または移動したとクライアントによって判断された場合、インタラクションコントロールは表示されず、すなわち、インタラクションコントロールが消えるようにすると理解することもできる。そして、クライアントは、3次元仮想シーンに第2の仮想キャラクタを表示する。第2の仮想キャラクタが3次元仮想シーンに表示される位置は、カメラモデルによって生成された画面から発射された半直線と3次元仮想シーン内のある平面(例えば、地平面)との交差点であるか、または、インタラクションコントロールがHUD層から消えた3次元仮想シーン内にマッピングされる位置であってもよい。
選択的に、インタラクションコントロールを第2の仮想キャラクタに切り替えて表示する切り替え過程は、例えば、アニメーション切り替え効果として表示されるなどのように見えるものにしてもよく、または、見えないものにしてもよい。
ステップ1707:第1のアカウントは、第2の仮想キャラクタを第1の領域内にドラッグして手を放す。
クライアントは、第1のアカウントが手を放したか否か、手放し位置などを認識または判断することができ、例えば、クライアントは、タッチスクリーンを介して、第1のアカウントが第1の領域内で手を放したと判断するか、または、マウスでトリガされたイベントを介して、第1のアカウントが第1の領域内で手を放したと判断する。
ステップ1708:クライアント(プレゼンテーション層)は、第2の仮想キャラクタを3次元仮想シーンに追加して第1のアカウントに表示する。
一部の実施例では、第2の仮想キャラクタの表示素材は、サーバによってクライアントにプッシュされ、及び/又は、クライアントのローカルに記憶されている。例えば、サーバは、クライアントに第2の仮想キャラクタの表示素材をプッシュし、クライアントは3次元仮想シーンに第2の仮想キャラクタを表示する。あるいは、クライアントは第2の仮想キャラクタの表示素材をローカルに記憶し、サーバはクライアントに素材識別子をプッシュし、クライアントは素材識別子に基づいて第2の仮想キャラクタをレンダリングして生成し、3次元仮想シーンに表示する。
上述のように、本実施例による方法によれば、第1のアカウント(ユーザ)、クライアント(プレゼンテーション層)及びバックグラウンドサーバ(論理層)が共同して仮想キャラクタの表示方法を実行し、第1のアカウントがインタラクションコントロールを操作した後に、第2の仮想キャラクタを仮想シーンに追加して表示することを可能にし、一貫性のある、簡単かつ便利な操作フローが、プレイヤーにより一貫性のある使用体験及び面白みを与え、プレイヤー間のインタラクションを強くし、プレイヤーの仮想ソーシャルの積極的な発展に寄与する。
図18は、本願の例示的な一実施例による仮想シーンにおけるインタラクション装置の概略構成図を示す。この装置は、表示モジュール1902、インタラクションモジュール1904のうちの少なくとも一部を含む。
表示モジュール1902:表示モジュールは、第1の端末の第1のアプリケーションプログラムで実行される仮想シーンを表示し、前記第1のアプリケーションプログラムには、第1の仮想キャラクタに対応する第1のアカウントがログインされており、前記仮想シーンは、前記第1の仮想キャラクタが他の仮想キャラクタとインタラクションを行うために使われる。
前記表示モジュール1902は、さらに、前記仮想シーン上にインタラクションコントロールを表示し、前記インタラクションコントロールは、前記第1のアカウントと第2のアカウントとが前記仮想シーン外のインタラクションシーンにおいてインタラクションを行うために使われる。
インタラクションモジュール1904:前記インタラクションコントロール上でトリガされた操作信号に応答する。
前記表示モジュール1902は、さらに、前記第2のアカウントに対応する第2の仮想キャラクタを前記仮想シーンに追加する。
1つの選択的な設計では、前記仮想シーンは、3次元仮想シーンを含み、前記インタラクションコントロールは、2次元インタラクションコントロールを含む。
1つの選択的な設計では、前記インタラクションモジュール1904は、さらに、前記インタラクションコントロールを前記仮想シーンへドラッグするドラッグ操作に応答し、前記表示モジュール1902は、さらに、前記第2のアカウントに対応する第2の仮想キャラクタを前記仮想シーンに追加する。
1つの選択的な設計では、前記インタラクションモジュール1904は、さらに、前記インタラクションコントロールを前記仮想シーン上の第1の領域内にドラッグするドラッグ操作に応答し、前記表示モジュール1902は、さらに、前記第2のアカウントに対応する第2の仮想キャラクタを前記仮想シーンに追加する。ここで、前記第1の領域は、前記仮想シーン上で見えるか、または見えない。
1つの選択的な設計では、前記インタラクションコントロールには、前記第2のアカウントのアバターが表示されており、前記表示モジュール1902は、さらに、前記仮想シーン上の第1の領域内に位置する前記第2のアカウントのアバターを、前記仮想シーンに位置する、前記第2のアカウントに対応する第2の仮想キャラクタにアニメーションで切り替えて表示する。
1つの選択的な設計では、前記インタラクションコントロールは、前記第2のアカウントからの第1のメッセージの存在に対する注意を喚起するためのメッセージリマインドコントロールを含み、前記表示モジュール1902は、さらに、前記第2の仮想キャラクタに基づいて、前記仮想シーンに前記第1のメッセージの関連情報を表示する。ここで、前記関連情報は、メッセージ内容、メッセージ数、メッセージプレビューのうちの少なくとも1つを含む。
1つの選択的な設計では、前記インタラクションコントロールは、チャットコントロールを含み、前記インタラクションモジュール1904は、さらに、前記チャットコントロール上でトリガされた第2の操作に応答し、前記表示モジュール1902は、さらに、前記第2のアカウントに対応する第2の仮想キャラクタを前記仮想シーンに追加し、前記第2の操作は、前記第2のアカウントからの第1のメッセージを見るためのものである。あるいは、前記インタラクションモジュール1904は、さらに、前記チャットコントロール上でトリガされた第3の操作に応答し、前記表示モジュール1902は、さらに、前記第2のアカウントに対応する第2の仮想キャラクタを前記仮想シーンに追加し、前記第3の操作は、前記第2のアカウントに第2のメッセージを送信するためのものである。
1つの選択的な設計では、前記第2の操作がトリガされた後に、前記インタラクションモジュール1904は、さらに、前記チャットコントロールを閉じる操作に応答し、前記表示モジュール1902は、さらに、前記第2のアカウントに対応する第2の仮想キャラクタを前記仮想シーンに追加する。あるいは、前記第3の操作がトリガされた後、前記インタラクションモジュール1904は、さらに、前記チャットコントロールを閉じる操作に応答し、前記表示モジュール1902は、さらに、前記第2のアカウントに対応する第2の仮想キャラクタを前記仮想シーンに追加する。
1つの選択的な設計では、前記インタラクションモジュール1904は、さらに、前記チャットコントロールを閉じる操作に応答し、前記表示モジュール1902は、さらに、前記チャットコントロールを第2のアカウントのアバターにアニメーションで切り替えて表示し、前記インタラクションモジュール1904は、さらに、第2のアカウントのアバターに対する操作信号に応答し、前記表示モジュール1902は、さらに、前記第2のアカウントに対応する第2の仮想キャラクタを前記仮想シーンに追加する。
1つの選択的な設計では、前記仮想シーンは、第1のアプリケーションプログラムによって提供される仮想シーンであり、インタラクションモジュール1904は、前記第2のアカウントが前記第1のアプリケーションプログラムにログインされているが、前記仮想シーンに入っていない場合、前記インタラクションコントロール上でトリガされた操作信号に応答して、前記第2のアカウントに対応する第2の仮想キャラクタを前記仮想シーンに追加する。
1つの選択的な設計では、前記インタラクションコントロールは、前記仮想シーン外のインタラクションシーンにおける前記第1のアカウントと複数の第2のアカウントとのインタラクション情報を提示するために使われ、インタラクションモジュール1904は、前記複数の第2のアカウントのそれぞれに対応する第2の仮想キャラクタを前記仮想シーンに同時に追加するか、または、前記複数の第2のアカウントのそれぞれに対応する第2の仮想キャラクタを前記仮想シーンに順次追加する。
1つの選択的な設計では、前記インタラクションモジュール1904は、さらに、前記第2のアカウントに対応する第2の仮想キャラクタを前記仮想シーンに追加し、前記第2の仮想キャラクタに対応するインタラクションアニメーションを表示し、そして、前記インタラクションアニメーション上でトリガされた第4の操作に応答して、前記第1のアカウント及び前記第2のアカウントに対応するチャットインタフェースを表示する。
1つの選択的な設計では、前記インタラクションモジュール1904は、さらに、前記第1の仮想キャラクタに対する、記第1の仮想キャラクタを制御して前記仮想シーン内を移動させる移動制御操作を受け付け、前記第1の仮想キャラクタと前記第2の仮想キャラクタとの間の距離が予め設定された距離以下である場合、前記第1のアカウント及び前記第2のアカウントに対応するチャットインタフェースを表示する。
1つの選択的な設計では、前記インタラクションモジュール1904は、さらに、前記チャットインタフェース上でのチャットメッセージに対するメッセージ送信操作を受け付け、前記第2のアカウントに前記チャットメッセージを送信する。
1つの選択的な設計では、前記装置は、仮想キャラクタを設計し、または仮想キャラクタを選択し、または仮想キャラクタをカスタマイズし、または仮想キャラクタを作成し、または仮想キャラクタを自己定義し、または仮想キャラクタをサーバにアップロードし、または仮想キャラクタを端末にアップロードするカスタムモジュールをさらに含む。
図19は、本願の例示的な一実施例による端末2100の構造ブロック図を示す。この端末2100は、スマートフォン、タブレット型コンピュータ、電子書籍リーダー、ラップトップ型ポータブルコンピュータ、デスクトップ型コンピュータ、テレビ、AR端末、VR端末、MR端末のうちの少なくとも1つであることができる。端末2100は、ユーザ機器、携帯型端末、ラップトップ型端末、デスクトップ型端末などと呼ばれる可能性もある。
一般的に、端末2100は、プロセッサ2101及びメモリ2102を含む。
プロセッサ2101は、例えば、1つの処理コア、または、4コアプロセッサ、8コアプロセッサなどのように、複数の処理コアを含んでもよい。プロセッサ2101は、DSP(Digital Signal Processing、デジタル信号処理)、FPGA(Field-Programmable Gate Array、フィールドプログラマブルゲートアレイ)、PLA(Programmable Logic Array、プログラマブルロジックアレイ)のうちの少なくとも1つのハードウェアの形で実現されてもよい。プロセッサ2101は、ホストプロセッサとコプロセッサとを含んでもよく、ホストプロセッサは、ウェイクアップ状態でのデータを処理するためのプロセッサであり、CPUとも呼ばれる。コプロセッサは、待機状態でのデータを処理する低消費電力プロセッサである。一部の実施例では、プロセッサ2101には、表示スクリーンで表示される必要のある内容のレンダリング及び描画を担うGPU(Graphics Processing Unit、グラフィックスプロセッシングユニット)が集積されている。一部の実施例では、プロセッサ2101は、拡張現実に関連する計算操作を処理するARプロセッサをさらに含んでもよい。一部の実施例では、プロセッサ2101は、機械学習に関連する計算操作を処理するAI(Artificial Intelligence、人工知能)プロセッサをさらに含んでもよい。
メモリ2102は、非一時的であり得る1つまたは複数のコンピュータ読み取り可能な記憶媒体を含むことができる。メモリ2102は、高速ランダムアクセスメモリ及び不揮発性メモリ、例えば、1つまたは複数の磁気ディスク記憶装置、フラッシュメモリ装置をさらに含んでもよい。一部の実施例では、メモリ2102における非一時的なコンピュータ読み取り可能な記憶媒体は、プロセッサ2101によって実行されることで本願における方法実施例による仮想シーンにおけるインタラクション方法を実現する少なくとも1つの命令を記憶する。
一部の実施例において、端末2100は、周辺機器インタフェース2103及び少なくとも1つの周辺機器を選択的にさらに含んでもよい。プロセッサ2101、メモリ2102及び周辺機器インタフェース2103は、バスまたは信号線を介して接続されてもよい。各周辺機器は、バス、信号線または回路基板を介して周辺機器インタフェース2103に接続されてもよい。具体的には、周辺機器は、無線周波数回路2104、表示スクリーン2105、カメラコンポーネント2106、オーディオ回路2107、電源2108のうちの少なくとも1つを含むことができる。
周辺機器インタフェース2103は、I/O(Input/Output、入出力)に関連する少なくとも1つの周辺機器をプロセッサ2101及びメモリ2102に接続するために使われてもよい。一部の実施例では、プロセッサ2101、メモリ2102及び周辺機器インタフェース2103は、同一のチップまたは回路基板に集積されている。他の一部の実施例では、プロセッサ2101、メモリ2102及び周辺機器インタフェース2103のうちの任意の1つまたは2つは、独立したチップまたは回路基板で実現されてもよく、本実施例はこれを限定するものではない。
無線周波数回路2104は、電磁信号とも呼ばれるRF(Radio Frequency、無線周波数)信号を受送信する。無線周波数回路2104は、電磁信号を介して通信ネットワーク及び他の通信装置と通信する。無線周波数回路2104は、電気信号を電磁信号に変換して送信するか、或いは、受信した電磁信号を電気信号に変換する。選択的に、無線周波数回路2104は、アンテナシステム、RFトランシーバ、1つまたは複数の増幅器、チューナ、発振器、デジタル信号プロセッサ、コーデックチップセット、加入者識別モジュールカードなどを含んでもよい。無線周波数回路2104は、少なくとも1つの無線通信プロトコルによって他の端末と通信することができる。この無線通信プロトコルは、ワールドワイドウェブ、メトロポリタンエリアネットワーク、イントラネット、各世代のモバイル通信ネットワーク(2G、3G、4G及び5G)、無線ローカルエリアネットワーク及び/又はWiFi(Wireless Fidelity、ワイヤレスフィデリティ)ネットワークを含むが、これらに限られない。一部の実施例では、無線周波数回路2104は、NFC(Near Field Communication、近距離無線通信)に係る回路をさらに含んでもよく、本願はこれを限定するものではない。
表示スクリーン2105は、UI(User Interface、ユーザインタフェース)を表示する。このUIは、グラフィック、テキスト、アイコン、ビデオ及びこれらの任意の組合せを含んでもよい。表示スクリーン2105がタッチ表示スクリーンである場合、表示スクリーン2105は、表示スクリーン2105の表面または表面の上方にあるタッチ信号を収集する能力をさらに有する。このタッチ信号は、制御信号としてプロセッサ2101に入力されて処理されてもよい。この場合、表示スクリーン2105は、さらに、ソフトボタン及び/又はソフトキーボードとも呼ばれる仮想ボタン及び/又は仮想キーボードを提供するために使われてもよい。一部の実施例では、表示スクリーン2105は、端末2100のフロントパネルに設けられた1つの表示スクリーンであってもよい。他の実施例では、表示スクリーン2105は、それぞれ端末2100の異なる表面に設けられるか、或いは、折りたたむように設計された少なくとも2つの表示スクリーンであってもよい。更なる実施例では、表示スクリーン2105は、端末2100の湾曲面または折り畳み面に設けられたフレキシブル表示スクリーンであってもよい。さらに、表示スクリーン2105は、矩形以外の不規則な形状、すなわち異形のスクリーンとされてもよい。表示スクリーン2105は、LCD(Liquid Crystal Display、液晶表示スクリーン)、OLED(Organic Light-Emitting Diode、有機発光ダイオード)などの材料で製造されてもよい。
カメラコンポーネント2106は、画像またはビデオを収集する。選択的に、カメラコンポーネント2106は、フロントカメラ及びリアカメラを含んでもよい。一般的に、フロントカメラが端末のフロントパネルに設けられ、リアカメラが端末の背面に設けられる。一部の実施例では、リアカメラは、少なくとも2つであり、それぞれ、メインカメラ、被写界深度カメラ、広角カメラ、望遠カメラのうちのいずれか1つであり、メインカメラと被写界深度カメラとの連携により、ぼけエフェクト機能を実現し、メインカメラと広角カメラとの連携により、パノラマ撮影及びVR(Virtual Reality、仮想現実)撮影機能または他の連携撮影機能を実現する。一部の実施例では、カメラコンポーネント2106は、フラッシュランプをさらに含んでもよい。フラッシュランプは、シングル色温度のフラッシュランプであってもよいし、ディアル色温度のフラッシュランプであってもよい。ディアル色温度のフラッシュランプとは、暖かい色のフラッシュランプと冷たい色のフラッシュランプとの組合せを指し、異なる色温度での光線補償に用いることができる。
オーディオ回路2107は、マイクロフォン及びスピーカを含んでもよい。マイクロフォンは、ユーザ及び環境の音波を収集し、音波を電気信号に変換しプロセッサ2101に入力して処理させるか、或いは、無線周波数回路2104に入力して音声通信を実現する。ステレオ収集またはノイズ低減のために、マイクロフォンは、それぞれ端末2100の異なる箇所に設けられる複数のマイクロフォンであってもよい。マイクロフォンは、アレイマイクロフォンまたは無指向性収集マイクロフォンであってもよい。スピーカは、プロセッサ2101または無線周波数回路2104からの電気信号を音波に変換するために使われる。スピーカは、従来の薄膜スピーカであってもよいし、圧電セラミックスピーカであってもよい。スピーカが圧電セラミックスピーカである場合、電気信号を人間が聞こえる音波に変換することができれば、電気信号を人間が聞こえない音波に変換して距離測定などの用途に使用されることもできる。一部の実施例では、オーディオ回路2107は、ヘッドホンジャックをさらに含んでもよい。
電源2108は、端末2100における各手段に電力を供給するために使われる。電源2108は、交流、直流、使い捨て電池または充電式電池であることができる。電源2108が充電式電池を含む場合、この充電式電池は、有線充電電池または無線充電電池であってもよい。有線充電電池は、有線回線を通じて充電される電池であり、無線充電電池は、無線コイルを通じて充電される電池である。この充電式電池は、高速充電技術をサポートするためにも使用できる。
一部の実施例では、端末2100は、1つまたは複数のセンサ2109をさらに含む。この1つまたは複数のセンサ2109は、加速度センサ2110、ジャイロセンサ2111、圧力センサ2112、光学センサ2113及び近接センサ2114を含むが、これらに限られない。
前記メモリは、1つまたはそれ以上のプログラムをさらに含み、前記1つまたはそれ以上のプログラムはメモリに記憶されており、前記1つまたはそれ以上のプログラムは、本願の実施例による仮想シーンにおけるインタラクション方法を行うために使われる。
図19に示される構造は、端末2100を限定するものではなく、示されるものよりも多いまたは少ない手段を含むか、或いは、一部のコンポーネントを組み合わせるか、或いは、異なるコンポーネントを用いて構成することができることは、当業者なら理解できるであろう。
例示的な実施例では、プロセッサとメモリとを含む端末をさらに提供し、前記メモリに少なくとも1つの命令、少なくとも1セグメントのプログラム、コードセットまたは命令セットが記憶されている。前記少なくとも1つの命令、少なくとも1セグメントのプログラム、コードセットまたは命令セットは、上述した仮想シーンにおけるインタラクション方法を実現するために前記プロセッサによって実行されるように構成される。
例示的な実施例では、コンピュータ読み取り可能な記憶媒体をさらに提供し、前記記憶媒体に少なくとも1つの命令、少なくとも1セグメントのプログラム、コードセットまたは命令セットが記憶されており、前記少なくとも1つの命令、前記少なくとも1セグメントのプログラム、前記コードセットまたは前記命令セットは、端末のプロセッサによって実行されると、上述した仮想シーンにおけるインタラクション方法を実現する。選択的に、上記コンピュータ読み取り可能な記憶媒体は、ROM(Read-Only Memory:リードオンリーメモリ)、RAM(Random-Access Memory:ランダムアクセスメモリ)、CD-ROM(Compact Disc Read-Only Memory:コンパクトディスクリードオンリーメモリ)、磁気テープ、フロッピーディスク及び光データ記憶装置などであってもよい。
例示的な実施例では、コンピュータプログラム製品をさらに提供する。前記コンピュータプログラム製品にコンピュータプログラムが記憶されており、前記コンピュータプログラムは、プロセッサによってロードおよび実行されて、上述した仮想シーンにおけるインタラクション方法を実現する。