(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-12-28
(54)【発明の名称】データ処理方法、装置、コンピュータデバイスおよびコンピュータプログラム
(51)【国際特許分類】
A63F 13/358 20140101AFI20221221BHJP
G06T 19/00 20110101ALI20221221BHJP
【FI】
A63F13/358
G06T19/00 A
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2022519177
(86)(22)【出願日】2020-10-26
(85)【翻訳文提出日】2022-04-21
(86)【国際出願番号】 CN2020123627
(87)【国際公開番号】W WO2021143255
(87)【国際公開日】2021-07-22
(31)【優先権主張番号】202010033046.9
(32)【優先日】2020-01-13
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
(71)【出願人】
【識別番号】514187420
【氏名又は名称】テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】ホ,ホアン
【テーマコード(参考)】
5B050
【Fターム(参考)】
5B050BA07
5B050BA12
5B050CA07
5B050CA08
5B050EA10
5B050FA02
(57)【要約】
【要約】
本発明の実施例は、コンピュータデバイスによって実行されるデータ処理方法を提供し、当該方法は、メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトを取得し、前記関連仮想オブジェクトのキャラクター変数のうち、第1更新頻度タイプに属する変数を第1タイプ変数として取得するステップと、前記第1タイプ変数に対して圧縮処理を行い、圧縮データを得、前記圧縮データをパッケージ化して、前記メイン仮想オブジェクトの第1変更データを取得するステップと、前記メイン仮想オブジェクトの第1変更データを、前記メイン仮想オブジェクトが所在しているターゲットクライアントに送信し、前記ターゲットクライアントに前記第1変更データに基づいてフレーム画像の更新表示を行わせるステップと、を含む。
【特許請求の範囲】
【請求項1】
コンピュータデバイスが実行するデータ処理方法であって、
メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトを取得し、前記関連仮想オブジェクトのキャラクター変数のうち、第1更新頻度タイプに属する変数を第1タイプ変数として取得するステップと、
前記第1タイプ変数に対して圧縮処理を行い、圧縮データを得て、前記圧縮データをパッケージ化して、前記メイン仮想オブジェクトの第1変更データを取得するステップと、
前記メイン仮想オブジェクトの第1変更データを、前記メイン仮想オブジェクトが所在しているターゲットクライアントに送信し、前記ターゲットクライアントに前記第1変更データに基づいてフレーム画像の更新表示を行わせるステップと、
を含むことを特徴とする、
データ処理方法。
【請求項2】
当該方法は、さらに、
前記関連仮想オブジェクトの第2タイプ変数に対するトリガー情報を受信した場合、前記第2タイプ変数を取得するステップであって、前記第2タイプ変数が、前記キャラクター変数のうち、第2更新頻度タイプに属する変数であるステップと、
前記第2タイプ変数を前記メイン仮想オブジェクトの第2変更データとしてパッケージ化し、前記第2変更データを、前記メイン仮想オブジェクトが所在しているターゲットクライアントに送信し、前記ターゲットクライアントに前記第2変更データに基づいてフレーム画像の更新表示を行わせるステップと、を含む、ことを特徴とする、
請求項1に記載のデータ処理方法。
【請求項3】
当該方法は、さらに、
前記関連仮想オブジェクトの第2タイプ変数の履歴更新時間および第1システムネットワーク時間を取得するステップであって、前記第2タイプ変数が、前記キャラクター変数のうち、第2更新頻度タイプに属する変数であるステップと、
前記第1システムネットワーク時間と前記履歴更新時間との差が第2タイプ変数の更新時間閾値以上である場合、前記第2タイプ変数を前記メイン仮想オブジェクトの第3変更データとしてパッケージ化し、前記第3変更データを、前記メイン仮想オブジェクトが所在しているターゲットクライアントに送信し、前記ターゲットクライアントに前記第3変更データに基づいてフレーム画像の更新表示を行わせるステップと、を含む、ことを特徴とする、
請求書1に記載のデータ処理方法。
【請求項4】
前記第1タイプ変数には、位置情報が含まれ、
前記第1タイプ変数に対して圧縮処理を行い、圧縮データを得るステップは、
前記関連仮想オブジェクトの前記位置情報および位置精度を取得し、前記位置精度に基づいて、前記位置情報を整数型位置データに変換し、前記整数型位置データを前記圧縮データとして決定するステップ、を含む、ことを特徴とする、
請求書1に記載のデータ処理方法。
【請求項5】
前記第1タイプ変数に対して圧縮処理を行い、圧縮データを得るステップは、
更新対象となるフレームでは、前記第1タイプ変数を取得し、前記メイン仮想オブジェクトが所在している履歴フレームでは、前記第1タイプ変数に対応する履歴キャッシュ変数を取得するステップであって、前記履歴フレームが、前記更新対象となるフレームの1つ前のフレームであるステップと、
前記履歴キャッシュ変数と前記第1タイプ変数との間の第1差異変数を取得するステップと、
前記第1差異変数を符号化し、前記圧縮データを得るステップと、を含む、ことを特徴とする、
請求書1に記載のデータ処理方法。
【請求項6】
前記第1タイプ変数には、前記関連仮想オブジェクトのオブジェクト識別子が含まれ、
前記第1タイプ変数に対して圧縮処理を行い、圧縮データを得るステップは、
前記関連仮想オブジェクトの先行の関連仮想オブジェクトのオブジェクト識別子を取得し、前記関連仮想オブジェクトのオブジェクト識別子と前記先行の関連仮想オブジェクトのオブジェクト識別子との間の第2差異変数を取得するステップであって、前記先行の関連仮想オブジェクトと前記関連仮想オブジェクトが、順次的な処理関係にあるステップと、
前記第2差異変数を符号化し、前記圧縮データを得るステップと、を含む、ことを特徴とする、
請求書1に記載のデータ処理方法。
【請求項7】
前記第1タイプ変数には、履歴経路情報が含まれ、
前記関連仮想オブジェクトのキャラクター変数のうち、第1更新頻度タイプに属する変数を第1タイプ変数として取得するステップは、
前記関連仮想オブジェクトのターゲット時間範囲内の動き軌跡を取得し、前記動き軌跡に基づいて、前記関連仮想オブジェクトの動き位置ポイントを決定し、前記動き位置ポイントを前記関連仮想オブジェクトの経路情報として決定し、前記第1タイプ変数における前記履歴経路情報を前記経路情報として更新するステップと、前記ターゲット時間範囲が、前記第1タイプ変数における前記経路情報を更新する場合の間隔時間長さを指すステップと、を含む、ことを特徴とする、
請求書1に記載のデータ処理方法。
【請求項8】
当該方法は、さらに、
前記関連仮想オブジェクトの前記第1タイプ変数の履歴全量更新時間および第2システムネットワーク時間を取得するステップと、
前記履歴全量更新時間と前記第2システムネットワーク時間との差が全量更新時間閾値以上である場合、前記第1タイプ変数を全量変更データとしてパッケージ化し、前記全量変更データを前記ターゲットクライアントに送信し、前記ターゲットクライアントに、前記全量変更データに基づいてフレーム画像の更新表示を行わせ、かつ、前記第2システムネットワーク時間に基づいて前記履歴全量更新時間の更新を行わせるステップと、
前記履歴全量更新時間と前記第2システムネットワーク時間との差が前記全量更新時間閾値より小さい場合、前記第1タイプ変数に対して圧縮処理を行って圧縮データを得るステップを実行するステップと、を含む、ことを特徴とする、
請求書1に記載のデータ処理方法。
【請求項9】
当該方法は、さらに、
距離関係リストから前記メイン仮想オブジェクトと少なくとも2つのオリジナル仮想オブジェクトとの間の距離の情報をそれぞれ取得するステップと、
前記少なくとも2つのオリジナル仮想オブジェクトから、前記距離の情報が第1距離閾値より大きくかつ第2距離閾値以下である選択対象となる仮想オブジェクトを取得し、前記選択対象となる仮想オブジェクトと前記メイン仮想オブジェクトの視野方向情報との間の視距離角度の情報を決定するステップと、
前記距離の情報が前記第1距離閾値以下であるオリジナル仮想オブジェクト、または前記視距離角度の情報が可視化角度閾値より小さい選択対象となる仮想オブジェクトを、前記メイン仮想オブジェクトに関連付けられた前記関連仮想オブジェクトとして決定するステップと、を含む、ことを特徴とする、
請求書1に記載のデータ処理方法。
【請求項10】
当該方法は、さらに、
適用シーンにおける少なくとも2つのオリジナル仮想オブジェクトの属性カテゴリを取得し、前記属性カテゴリがユーザキャラクター属性であるオリジナル仮想オブジェクトをユーザ仮想オブジェクトとして決定し、前記属性カテゴリがシステムキャラクター属性であるオリジナル仮想オブジェクトをシステム仮想オブジェクトとして決定するステップと、
前記ユーザ仮想オブジェクトのグループラベルを取得し、前記グループラベルが前記メイン仮想オブジェクトのグループラベルと同じであるユーザ仮想オブジェクトを、関連ユーザ仮想オブジェクトとして決定するステップと、
前記関連ユーザ仮想オブジェクトおよび前記システム仮想オブジェクトを、前記メイン仮想オブジェクトに関連付けられた前記関連仮想オブジェクトとして決定するステップと、を含む、ことを特徴とする、
請求書1に記載のデータ処理方法。
【請求項11】
当該方法は、さらに、
各オリジナル仮想オブジェクトと前記メイン仮想オブジェクトとの間の距離の情報が属する距離範囲を取得し、前記各オリジナル仮想オブジェクトの更新キャッシュ時間を取得するステップと、
前記距離範囲に対応するリスト更新時間閾値を取得し、前記少なくとも2つのオリジナル仮想オブジェクトのうち、更新キャッシュ時間と第3システムネットワーク時間との差が前記リスト更新時間閾値以上であるオリジナル仮想オブジェクトを、ターゲット仮想オブジェクトとして決定するステップと、
前記距離関係リストにおける、前記ターゲット仮想オブジェクトと前記メイン仮想オブジェクトとの間の距離の情報を更新するステップと、を含む、ことを特徴とする、
請求書9に記載のデータ処理方法。
【請求項12】
前記関連仮想オブジェクトのキャラクター変数のうち、第1更新頻度タイプに属する変数を第1タイプ変数として取得するステップは、
前記メイン仮想オブジェクトに対応するクラスオブジェクトセットを取得するステップであって、前記クラスオブジェクトセットには、少なくとも2つのオブジェクト変数サブセットが含まれるステップと、
前記クラスオブジェクトセットの前記少なくとも2つのオブジェクト変数サブセットから、前記関連仮想オブジェクトに対応するオブジェクト変数サブセットを取得するステップであって、前記オブジェクト変数サブセットには、前記関連仮想オブジェクトのキャラクター変数のうち、前記第1更新頻度タイプに属する変数が含まれるステップと、
前記オブジェクト変数サブセットから、前記関連仮想オブジェクトの前記第1タイプ変数を取得するステップと、を含む、ことを特徴とする、
請求書1に記載のデータ処理方法。
【請求項13】
データ処理装置であって、
メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトを取得し、前記関連仮想オブジェクトのキャラクター変数のうち、第1更新頻度タイプに属する変数を第1タイプ変数として取得する第1取得モジュールと、
前記第1タイプ変数に対して圧縮処理を行い、圧縮データを得る圧縮モジュールと、
前記圧縮データをパッケージ化して、前記メイン仮想オブジェクトの第1変更データを取得する第1パッケージ化モジュールと、
前記メイン仮想オブジェクトの第1変更データを、前記メイン仮想オブジェクトが所在しているターゲットクライアントに送信し、前記ターゲットクライアントに前記第1変更データに基づいてフレーム画像の更新表示を行わせる第1送信モジュールと、を含むことを特徴とする、
データ処理装置。
【請求項14】
プロセッサ、メモリ、入出力インタフェースを含むコンピュータデバイスであって、
前記プロセッサは、それぞれ、前記メモリと前記入出力インタフェースとに接続され、ここで、前記入出力インタフェースは、データの入出力のために使用され、前記メモリは、プログラムコードを記憶するために使用され、前記プロセッサは、前記プログラムコードを呼び出すことで、請求項1~12のいずれか一項に記載の方法を実行するために使用される、ことを特徴とする、コンピュータデバイス。
【請求項15】
コンピュータプログラムであって、
請求項1~12のいずれか一項に記載の方法をコンピュータデバイスに実行させる、
ことを特徴とする、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願への相互参照)
本願は、2020年1月13日に中国特許庁に出願された、出願番号が202010033046.9であり、発明の名称が「データ処理方法、装置、コンピュータおよび読み取り可能な記憶媒体」である中国特許出願に基づく優先権を主張し、その全ての内容は、参照することにより本願に組み込まれる。
【0002】
(技術分野)
本願は、コンピューティング技術分野に関し、特に、データ処理方法、装置、コンピュータデバイス、および読み取り可能な記憶媒体に関する。
【背景技術】
【0003】
ネットゲームでは、特にオンライン一人称射撃(FPS:First person shooter)ゲームでは、ゲームのテーマロジックは、各非プレイヤーキャラクター(NPC:Non-Player-Character)の移動位置、各プレイヤーの位置および状態などを含めて、サービス側で実行される。これらのデータは、選択およびフィルタリングされ、「ネットワークレプリケーション(data replication)」という方法によって、各ゲームクライアントに送信され、ゲームクライアントは、対応するデータを受信して、受信したデータをレンダリングすることで、クライアントスクリーンに表示する。
【0004】
一方、サーバが処理する必要がある関連データの量が比較的大きくて、データ処理に一定の時間がかかる必要があり、ネットワーク帯域幅も限られているうえ、クライアントプレイヤーの視距離が限られているため、一般的に、サーバは、9分割(nine squares partition)という方法を使用して、プレイヤー周辺の関連データ、例えば、多くのFPSゲームでは、プレイヤーから約200メートル程度の範囲内の関連データ、の変化状況を当該プレイヤーのクライアントに送信する。
【0005】
しかし、地図に大量のNPCおよびプレイヤーが存在するゲームについては、上記のデータ同期方法によりクライアントに対してデータ処理を行うと、各ゲームオブジェクト(NPCとプレイヤーとを含む)の現在のデータと、前回更新時のデータとを比較し、各ゲームオブジェクトの変更記録を取得する必要があり、加えて、更新する必要があるゲームオブジェクトが多くて、かつ各ゲームオブジェクトには大量のデータが含まれているため、サーバの性能が耐えられなくなり、ゲームオブジェクトのデータ比較および変更記録の整理にも大量の時間がかかり、フレームごとの更新時にゲームオブジェクトのネットワークレプリケーションに使用されるオーバーヘッドが40ミリ秒以上に達してしまい、これにより、サーバのデータに対する更新効率を低下させる。
【発明の概要】
【0006】
本発明の実施例は、データ処理の効率を向上させることができるデータ処理方法、装置、コンピュータデバイス、およびコンピュータ読み取り可能な記憶媒体を提供する。
【0007】
本発明の実施例は、一態様において、コンピュータデバイスによって実行されるデータ処理方法を提供し、当該方法は、
メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトを取得し、関連仮想オブジェクトのキャラクター変数のうち、第1更新頻度タイプに属する変数を第1タイプ変数として取得するステップと、
第1タイプ変数に対して圧縮処理を行い、圧縮データを得て、圧縮データをパッケージ化して、メイン仮想オブジェクトの第1変更データを取得するステップと、
メイン仮想オブジェクトの第1変更データを、メイン仮想オブジェクトが所在しているターゲットクライアントに送信し、ターゲットクライアントに第1変更データに基づいてフレーム画像の更新表示を行わせるステップと、を含む。
【0008】
本発明の実施例は、一態様において、データ処理装置を提供し、当該装置は、
メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトを取得し、関連仮想オブジェクトのキャラクター変数のうち、第1更新頻度タイプに属する変数を第1タイプ変数として取得する第1取得モジュールと、
第1タイプ変数に対して圧縮処理を行い、圧縮データを得る圧縮モジュールと、
圧縮データをパッケージ化して、メイン仮想オブジェクトの第1変更データを取得する第1パッケージ化モジュールと、
メイン仮想オブジェクトの第1変更データを、メイン仮想オブジェクトが所在しているターゲットクライアントに送信し、ターゲットクライアントに第1変更データに基づいてフレーム画像の更新表示を行わせる第1送信モジュールと、を含む。
【0009】
本発明の実施例は、一態様において、プロセッサ、メモリ、入出力インタフェースを含むコンピュータデバイスを提供し、
プロセッサは、それぞれ、メモリと入出力インタフェースとに接続され、ここで、入出力インタフェースは、データの入出力のために使用され、メモリは、プログラムコードを記憶するために使用され、プロセッサは、プログラムコードを呼び出すことで、本願の実施例に係るデータ処理方法を実行するために使用される。
【0010】
本発明の実施例は、一態様において、プログラム命令を含むコンピュータプログラムが記憶されているコンピュータ読み取り可能な記憶媒体を提供し、コンピュータプログラムは、プロセッサによって実行されるとき、本発明の実施例に係るデータ処理方法を実行させる。
【図面の簡単な説明】
【0011】
本願の実施例または従来技術における技術案をより明確に説明するために、以下、実施例または従来技術の説明において必要とされる図面を簡単に説明し、明らかに、以下の説明における図面は、本願のいくつかの実施例にすぎず、当業者にとって、創造的な努力なしに、これらの図面から他の図面を得ることもできる。
【
図1】本願の実施例によって提供されるデータ処理のアーキテクチャ図である。
【
図2】本願の実施例によって提供されるデータ処理方法のフローチャートである。
【
図3】本願の実施例によって提供される第1タイプ変数のデータ処理プロセスの概略図である。
【
図4】本願の実施例によって提供されるマルチ仮想オブジェクトのデータ処理のプロセスである。
【
図5】本願の実施例によって提供されるデータ処理の具体的なフローチャートである。
【
図6】本願の実施例によって提供される関連仮想オブジェクトの表示シーンの概略図である。
【
図7】本願の実施例によって提供される、第1タイプ変数の決定情況の概略図である。
【
図8】本願の実施例によって提供される、履歴フレームに基づくデータの更新シーンの概略図である。
【
図9】本願の実施例によって提供される、第2タイプ変数のトリガーシーンの概略図である。
【
図10】本願の実施例によって提供される、変数の区分情況の概略図である。
【
図11】本願の実施例によって提供されるデータ処理装置の概略図である。
【
図12】本願の実施例によって提供されるコンピュータデバイスの構造の概略図である。
【発明を実施するための形態】
【0012】
以下は本願の実施例における図面を参照し、本願の実施例における技術案を明確かつ完全に説明し、説明された実施例は、本願の一部の実施例であって、全体の実施例ではないことは明らかである。本願における実施例に基づいて、当業者の一般技術者は創造的な労働を行わないことを前提で得られた他のすべての実施例は、いずれも本願の保護範囲に属する。
【0013】
具体的には、
図1を参照すると、
図1は、本願の実施例によって提供されるデータ処理のアーキテクチャ図であり、
図1に示すように、当該データ処理システムは、コンピュータデバイス101、および複数の電子デバイス、例えば、電子デバイス102a、電子デバイス102b、および電子デバイス102cを含み、コンピュータデバイス10と各電子デバイスとの間で通信接続が可能である。具体的には、コンピュータデバイス101は、接続された各電子デバイスを検出し、各電子デバイスに対応する変更データを生成し、生成した変更データを対応する電子デバイスに送信し、これにより、当該電子デバイスは、対応する変更データに基づいてフレーム画像の更新表示を行うことができる。ここで、電子デバイス102aを例にして、コンピュータデバイス101は、電子デバイス102aがオンラインしていることを監視したとき、当該電子デバイス102aにログインしているメイン仮想オブジェクトに関連付けられた関連仮想オブジェクトを取得し、関連仮想オブジェクトには、当該メイン仮想オブジェクトに関連するプレイヤーまたはNPCが含まれており、当該関連仮想オブジェクトが、メイン仮想オブジェクトが所在している電子デバイス102aに表示されるオブジェクトと見なすことができる。コンピュータデバイス101は、各関連仮想オブジェクトの第1タイプ変数、例えば、対応する関連仮想オブジェクトの位置情報、視野方向情報、速度情報、加速度情報、経路情報およびラグドール(Ragdoll)情報などを取得し、ここで、Ragdoll情報が、関連仮想オブジェクトのキャラクターモデルを構築するために使用されるものであり、ここで、この第1タイプ変数が、関連仮想オブジェクトにおける第1更新頻度タイプに属する変数であり、第1更新頻度タイプが、フレームごとに変化する更新頻度タイプであると考えられ、第1タイプ変数の変化が頻繁であるため、各フレームを更新する際にいずれも第1タイプ変数を更新する必要があり、したがって、コンピュータデバイスは、データ処理を行う際に、関連仮想オブジェクトの第1タイプ変数を取得する必要があり、これにより、ターゲットクライアントの表示ページにおけるデータとコンピュータデバイスにおけるデータとの一致が保持され、第1タイプ変数に対するネットワークレプリケーションが実現される。ここで、コンピュータデバイス101は、第1タイプ変数に対してネットワークレプリケーションを行う場合、上記の各第1タイプ変数に対してそれぞれ圧縮処理を行い、位置情報の圧縮データ、視野方向情報の圧縮データおよび経路情報の圧縮データ等を含む圧縮データを取得し、生成した圧縮データをメイン仮想オブジェクトの第1変更データとしてパッケージ化し、第1変更データを、このメイン仮想オブジェクトが所在しているターゲットクライアントである電子デバイス102aに送信することができる。第1タイプ変数に対して圧縮処理を行うことにより、コンピュータデバイスとクライアントとの間で伝送されるデータの量を減少させ、更新効率を向上させる一方、第1タイプ変数以外の変数、例えば、第2タイプ変数に対して、当該第2タイプ変数は、第2更新頻度タイプの変数に属し、第2更新頻度タイプは、更新頻度が低くて、フレームごとに変化しないことを示すため、第2タイプ変数は、フレームごとに処理する必要がなく、これにより、コンピュータデバイスが処理するデータの量、およびそれとクライアントとの間で伝送されるデータの量をさらに減少させ、更新効率を向上させる。
【0014】
電子デバイス102aは、第1変更データを受信した後、第1変更データを復元し、対応する関連仮想オブジェクトの位置情報、視野方向情報、速度情報、加速度情報、経路情報およびラグドール(Ragdoll)情報などの第1タイプ変数を得て、これらの第1タイプ変数に基づいて、現在フレーム画像をレンダリングし、現在のフレーム画像に表示される仮想オブジェクトの状態が各第1タイプ変数によって決定されると考えられる。ここで、コンピュータデバイス101から電子デバイス102bまたは電子デバイス102cへ変更データを送信するプロセスは、上記コンピュータデバイス101から電子デバイス102aへ変更データを送信するプロセスと同じである。ここで、コンピュータデバイス101は、サーバまたはクライアントであってもよく、またはサーバとクライアントによって構成されるシステムであってもよいし、当該クライアントは、電子デバイスであってもよく、当該クライアントおよび各電子デバイス(電子デバイス102、電子デバイス102bおよび電子デバイス102c)は、携帯電話、タブレットコンピュータ、デスクトップコンピュータ、ノートパソコン、パームトップコンピュータ、モバイルインターネットデバイス(MID:mobile internet device)、ウェアラブルデバイス(例えば、スマートウォッチ、スマートブレスレットなど)等を含むが、これらに限定されない。
【0015】
本願の実施例によって提供される方法は、コンピュータデバイスによって実行され得て、コンピュータデバイスには、端末またはサーバが含まれるが、これらに限定されない、ということを理解されたい。本願の実施例においてデータ処理を行う実行主体は、コンピュータデバイスであり得る。ここで、本願の実施例がゲームシーンに適用される場合、当該コンピュータデバイスは、独立した専用サーバ(DS:Dedicated Server)を含むが、これらに限定されず、ここで、DSは、ゲームロジックを実行するサーバであり、画像レンダリングや音声などに関連するタスクを実行せず、かつ、ゲームデータを処理するためにデータ処理の結果をクライアントに送信する。
【0016】
ここで、ゲームシーンでは、更新頻度変数に基づいて関連仮想オブジェクトのキャラクター変数を分類し、各フレームが更新する際に、いずれも高頻度(第1更新頻度タイプ)に属する第1タイプ変数を更新し、かつ第1タイプ変数に対して圧縮処理を行う一方、低頻度(第2更新頻度タイプ)に属する第2タイプ変数に対して、フレームごとに更新する必要がないことにより、コンピュータデバイスによるネットワークレプリケーションのオーバーヘッドが低減され、フレーム更新の効率を向上させ、当該ゲームシーンにおける1フレームの更新時間が短縮され、さらに、ゲームシーンにおけるフレーム画像の更新性能を向上させることができ、これによって、ゲームシーンにおけるフレームとフレームとの間の切り替えがよりスムーズになり、ユーザ体験を向上させる。本願の実施例により、コンピュータデバイス(例えば、DS)のデータ処理圧力を軽減することができるので、同じ性能のコンピュータデバイスにおいて、技術者は、本願の実施例によって、より豊富なゲームシーンを実現することができる。例えば、当該DSは100人のプレイヤーのゲームシーンに対してネットワークレプリケーションを行う場合に、1秒あたり2フレームをレプリケーションすることができると仮定すると、これにより、当該ゲームシーンにおけるフレームとフレームとの間の切り替えが極めて遅くなり、ゲームの体験が極めて悪くなる。本願の実施例によれば、ネットワークレプリケーションの性能を向上させることができ、1秒あたり数十フレーム(例えば、40フレーム)をレプリケーションすることができ、1秒あたり数十フレームを切り替える場合、人間の目にとって、これは、許容可能な切り替え頻度に属し、プレイヤーは、連続的にフリーズしないフレーム画像の切り替えを観察することができ、これにより、ゲームの体験を向上させることができる。
【0017】
さらに、
図2を参照すると、
図2は、本願の実施例によって提供されるデータ処理方法のフローチャートである。
図2に示すように、上記のコンピュータデバイスを実行の主体として説明し、当該データ処理プロセスは。以下のステップを含み、即ち、
ステップS201で、メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトを取得し、当該関連仮想オブジェクトのキャラクター変数のうちの第1タイプ変数を取得する。
【0018】
具体的には、メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトを取得し、当該関連仮想オブジェクトのキャラクター変数のうち、第1更新頻度タイプに属する変数を、第1タイプ変数として取得する。具体的には、1つの適用シーンでは、少なくとも1つのメイン仮想オブジェクトが含まれ、各メイン仮想オブジェクトが、少なくとも1つの関連仮想オブジェクトに関連付けられる。コンピュータデバイスは、この適用シーンに対してフレーム画像の更新を行う場合、当該適用シーンに関連付けられたメイン仮想オブジェクトを取得し、当該メイン仮想オブジェクトは、この適用シーンにおける、属性カテゴリがユーザキャラクター属性である仮想オブジェクトであり、コンピュータデバイスは、当該メイン仮想オブジェクトを取得した後、当該メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトを取得し、当該メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトは、唯一ではない場合があり、各関連仮想オブジェクトには、キャラクター変数が含まれ、当該キャラクター変数は、対応する関連仮想オブジェクトの上記の適用シーンでの表示状態を構成し、関連仮想オブジェクトを上記適用シーンに表示するために使用されるものである。1つの関連仮想オブジェクトを例にして、当該関連仮想オブジェクトのキャラクター変数のうち、第1更新頻度タイプに属する変数を、当該関連仮想オブジェクトの第1タイプ変数として取得する。なお、当該第1更新頻度タイプは、フレームごとに変化する更新頻度タイプを示すことができ、更新頻度が第1更新頻度の閾値以上である更新頻度タイプなどを示すこともできる。
【0019】
具体的には、
図3を参照すると、
図3は、本願の実施例によって提供される第1タイプ変数のデータ処理プロセスの概略図である。適用シーンでは、コンピュータデバイスは、当該適用シーンにおけるメイン仮想オブジェクトを取得して、当該メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトを取得し、関連仮想オブジェクトのキャラクター変数のうちの第1タイプ変数を取得する。
図3に示すように、当該適用シーンがゲームシーンであると仮定すると、当該適用シーン301には、複数の仮想オブジェクトが含まれており、各仮想オブジェクトの属性カテゴリは、ユーザキャラクター属性またはシステムキャラクター属性であり、1つの場合では、属性カテゴリがユーザキャラクター属性である仮想オブジェクトは、プレイヤーキャラクターであり、属性カテゴリがシステムキャラクター属性である仮想オブジェクトは、非プレイヤーキャラクター(NPC:Non-Player-Character)であると考えられる。当該適用シーン301における属性カテゴリがユーザキャラクター属性である仮想オブジェクトを取得し、属性カテゴリがユーザキャラクター属性である仮想オブジェクトをメイン仮想オブジェクトとして決定し、当該適用シーン301におけるメイン仮想オブジェクト302を例にして、本願の実施例におけるデータ処理プロセスを説明する。当該メイン仮想オブジェクト302は、適用シーン301に表示される仮想オブジェクトを表すこともできるし、当該仮想オブジェクトを操作する仮想アカウントを表すこともできる。当該メイン仮想オブジェクト302は、1つのクライアントに対応し、当該クライアントは、適用シーン301における、対応するメイン仮想オブジェクト302を主視覚とするフレーム画像を表示するために使用される。言い換えれば、同じ適用シーンに対して、異なるメイン仮想オブジェクトを主視覚としてフレーム画像の表示を行う場合、異なるメイン仮想オブジェクトの視覚範囲が異なるため、表示されるフレーム画像は、完全に同じではない可能性がある。
【0020】
具体的には、
図3において、メイン仮想オブジェクト302に関連付けられた関連仮想オブジェクトセット303を取得し、当該関連仮想オブジェクトセット303には、少なくとも1つの関連仮想オブジェクト、例えば、関連仮想オブジェクト3031、関連仮想オブジェクト3032、関連仮想オブジェクト3033、関連仮想オブジェクト3034、...および関連仮想オブジェクト303m(mは、正の整数であり、mは、メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトの数量である)が含まれる。ここで、当該関連仮想オブジェクトセット303に含まれる各関連仮想オブジェクトは、当該適用シーンにおけるメイン仮想オブジェクト302以外の仮想オブジェクトに属する。関連仮想オブジェクト3031を例にして、当該関連仮想オブジェクト3031のキャラクター変数304のうち、第1更新頻度タイプに属する変数を第1タイプ変数305として取得し、当該第1タイプ変数305は、関連仮想オブジェクト3031のキャラクター変数304の一部である。関連仮想オブジェクト3031の第1タイプ変数305には、少なくとも1つの変数、例えば、変数3051、変数3052、変数3053、変数3054、...および変数305n(nは、正の整数であり、nは、第1タイプ変数305に含まれる変数の数量である)が含まれる、ということを仮定する。
【0021】
ステップS202で、第1タイプ変数に対して圧縮処理を行い、圧縮データを得て、圧縮データをメイン仮想オブジェクトの第1変更データとしてパッケージ化する。
【0022】
具体的には、第1タイプ変数に対して圧縮処理を行い、圧縮データを得て、圧縮データをメイン仮想オブジェクトの第1変更データとしてパッケージ化する。具体的には、第1タイプ変数に対して圧縮処理を行うことは、第1タイプ変数を符号化したり、第1タイプ変数の数値タイプを減少したりすることなどを含むが、これらに限定されないし、これにより、第1タイプ変数が占めるメモリスペースが減少され、クライアントに伝送する必要があるデータの量を低減される。
【0023】
具体的には、
図3を参照することができ、第1タイプ変数305に対して圧縮処理を行うことは、具体的には、第1タイプ変数305に含まれる各変数に対して圧縮処理を行い、圧縮データ3081を得ることであり、ここで、異なる変数に対する圧縮処理方法は、同じでもよく、異なってもよいし、ここでは限定しない。具体的には、第1タイプ変数305のうちの変数3051に対して圧縮処理を行い、変数3051に対応する圧縮データ3061を得て、変数3052に対応する圧縮処理を行い、変数3052に対応する圧縮データ3062を得て、...、変数305nに対応する圧縮処理を行い、変数305nに対応する圧縮データ306nを得る。ここで、圧縮データ3061、圧縮データ3062、...および圧縮データ306nは、第1タイプ変数305に対応する圧縮データ3081を構成する。同様に、関連仮想オブジェクト3032の第1タイプ変数に対して圧縮処理を行い、圧縮データ3082を得、関連仮想オブジェクト3033の第1タイプ変数に対して圧縮処理を行い、圧縮データ3083を得て、...、関連仮想オブジェクト303mの第1タイプ変数に対して圧縮処理を行い、圧縮データ308mを得る。関連仮想オブジェクト3031に対応する圧縮データ3081、関連仮想オブジェクト3032に対応する圧縮データ3082、...および関連仮想オブジェクト303mに対応する圧縮データ308mをパッケージ化することで、第1変更データを得る。
【0024】
ステップS203で、メイン仮想オブジェクトの第1変更データを、メイン仮想オブジェクトが所在しているターゲットクライアントに送信する。
【0025】
具体的には、メイン仮想オブジェクトの第1変更データを、メイン仮想オブジェクトが所在しているターゲットクライアントに送信し、これにより、ターゲットクライアントは、第1変更データに基づいて、フレーム画像の更新表示を行う。具体的には、第1変更データは、ターゲットクライアントがこのフレームを表示する際に、関連仮想オブジェクトをレンダリングするために使用されるデータである。具体的には、
図3を参照することができ、コンピュータデバイスは、第1変更データを生成した後、第1変更データを、関連仮想オブジェクトが所在しているターゲットクライアント307に送信し、これにより、ターゲットクライアント307は、当該第1変更データに基づいて、フレーム画像の表示を行う。
【0026】
ここで、当該適用シーンに複数のメイン仮想オブジェクトが含まれる場合、メイン仮想オブジェクト302のデータ処理プロセスを例にして、当該適用シーンにおける他のメイン仮想オブジェクトの第1変更データを得て、得られた第1変更データを、対応するメイン仮想オブジェクトが所在しているターゲットクライアントに送信し、これにより、当該適用シーンに関連付けられた全てのクライアントは、いずれも、受信した第1変更データに基づいて、フレーム画像の更新表示を行うことができる。具体的には、
図4を参照すると、
図4は、本願の実施例によって提供されるマルチ仮想オブジェクトのデータ処理プロセスである。
図4に示すように、上記適用シーンには、複数のメイン仮想オブジェクトが含まれており、各メイン仮想オブジェクトは、複数の関連仮想オブジェクトに関連付けられている。コンピュータデバイス401は、適用シーンからメイン仮想オブジェクト4021、メイン仮想オブジェクト4022およびメイン仮想オブジェクト4023を取得すると仮定すると、メイン仮想オブジェクト4021に関連付けられた関連仮想オブジェクト4031および関連仮想オブジェクト4032を取得し、関連仮想オブジェクト4031の第1タイプ変数4041を取得し、第1タイプ変数4041に対して圧縮を行い、圧縮データ4051を得て、同様に、関連仮想オブジェクト4032の第1タイプ変数4042を取得し、第1タイプ変数4042に対して圧縮を行い、圧縮データ4052を得て、圧縮データ4051および圧縮データ4052を第1変更データ4061にとしてパッケージ化し、第1変更データ4061を、メイン仮想オブジェクト4021が所在しているターゲットクライアント4071に送信する。同様に、メイン仮想オブジェクト4022に関連付けられた関連仮想オブジェクト4033を取得し、当該関連仮想オブジェクト4033の第1タイプ変数4043を取得し、第1タイプ変数4043に対して圧縮を行い、圧縮データ4053を得て、圧縮データ4053を第1変更データ4062としてパッケージ化し、第1変更データ4062を、メイン仮想オブジェクト4022が所在しているターゲットクライアント4072に送信する。同様に、メイン仮想オブジェクト4023に関連付けられた関連仮想オブジェクト4034を取得し、当該関連仮想オブジェクト4034の第1タイプ変数4044を取得し、第1タイプ変数4044に対して圧縮を行い、圧縮データ4054を得て、圧縮データ4054を第1変更データ4063としてパッケージ化し、第1変更データ4063を、メイン仮想オブジェクト4023が所在しているターゲットクライアント4073に送信する。ここで、コンピュータデバイスは、適用シーンにおいて取得されたメイン仮想オブジェクトの数量、および各メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトの数量がどの程度(1つまたは少なくとも2つなど)であるかにかかわらず、いずれも、
図4で実現されたマルチ仮想オブジェクトのデータ処理プロセスにより、各メイン仮想オブジェクトに対応する第1変更データを取得して、第1変更データを、対応するメイン仮想オブジェクトが所在しているターゲットクライアントに送信することができる。
【0027】
本願の実施例は、上記データ処理プロセスにより、コンピュータデバイスがメイン仮想オブジェクトに関連付けられた関連仮想オブジェクトを取得し、かつ、関連仮想オブジェクトの第1タイプ変数を取得し、第1タイプ変数に対して圧縮を行い、圧縮データを得て、圧縮データを第1変更データとしてパッケージ化し、第1変更データを、メイン仮想オブジェクトが所在しているターゲットクライアントに送信することを実現し、これにより、コンピュータデバイスと各ターゲットクライアントとの間でデータ伝送を行う際のデータ伝送量が低減され得る。上記のデータ処理プロセスにより、各関連仮想オブジェクトのキャラクター変数を分類し、第1更新頻度タイプに属する変数(即ち、第1タイプ変数)に対して圧縮処理を行い、一方、キャラクター変数の分類により、コンピュータデバイスが処理する必要があるデータの量を減少させ、他方、第1タイプ変数に対して圧縮処理を行い、コンピュータデバイスがクライアントに送信するデータ量を減少させ、これにより、コンピュータデバイスのネットワークデータ処理圧力を低減させ、データ処理にかかる時間が短縮され、これによって、データ処理の効率を向上させる。本願の実施例がゲームシーンに適用される場合、コンピュータデバイスのネットワークレプリケーションの圧力を低減させることができ、ここで、当該コンピュータデバイスは、DSを含むが、これに限定されず、ネットワークレプリケーション(Data Replication)とは、クライアントとコンピュータデバイスのゲームデータが一致になるように、コンピュータデバイスがゲームデータをクライアントに送信するプロセスを指す。
【0028】
さらに、
図5を参照すると、
図5は、本願の実施例によって提供されるデータ処理の具体的なフローチャートである。
図5に示すように、以下のステップを含み、即ち、ステップS501で、メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトを取得する。
【0029】
具体的には、メイン仮想オブジェクトの視覚範囲により当該メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトを決定してもよく、メイン仮想オブジェクトの属性カテゴリにより当該メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトを決定してもよいし、または、メイン仮想オブジェクトの視覚範囲および属性カテゴリを組み合わせて、当該メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトを決定してもよい。
【0030】
メイン仮想オブジェクトの視覚範囲により関連仮想オブジェクトを決定する場合、距離関係リストからメイン仮想オブジェクトと少なくとも2つのオリジナル仮想オブジェクトとの間の距離の情報をそれぞれ取得することと、少なくとも2つのオリジナル仮想オブジェクトから、距離の情報が第1距離閾値より大きくかつ第2距離閾値以下である選択対象となる仮想オブジェクトを取得し、選択対象となる仮想オブジェクトとメイン仮想オブジェクトの視野方向情報との間の視距離角度の情報を決定することと、距離の情報が第1距離閾値以下であるオリジナル仮想オブジェクト、または視距離角度の情報が可視化角度閾値より小さい選択対象となる仮想オブジェクトを、メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトとして決定し、または、距離の情報が第1距離閾値以下であるオリジナル仮想オブジェクト、および視距離角度の情報が可視化角度閾値より小さい選択対象となる仮想オブジェクトを、メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトとして決定することと、を実行する。言い換えれば、適用シーンにおける各仮想オブジェクトとメイン仮想オブジェクトとの関連性は、距離の情報および特殊論理に基づいて決定され、例えば、この特殊論理は、「メイン仮想オブジェクトの正面の極小角度(視覚範囲)内の仮想オブジェクト」のであってもよい。ここで、メイン仮想オブジェクトとの間の距離の情報が第1距離閾値以下であるオリジナル仮想オブジェクトは、メイン仮想オブジェクトが所在しているターゲットクライアントの表示ページに表示される仮想オブジェクトであり、視距離角度の情報が可視化角度閾値より小さい選択対象となる仮想オブジェクトは、メイン仮想オブジェクトが遠視距離アイテムを使用する場合、メイン仮想オブジェクトが所在しているターゲットクライアントの表示ページに表示される仮想オブジェクトであり、当該選択対象となる仮想オブジェクトは、メイン仮想オブジェクトとの間の距離の情報が第2距離閾値以下であるオリジナル仮想オブジェクトであってもよい。プレイヤーが遠視距離アイテムを使用しない場合および遠視距離アイテムを使用する場合の視覚範囲によって、そのプレイヤーに関連付けられた関連仮想オブジェクトを決定する。
【0031】
ここで、上記視距離角度の情報は、選択対象となる仮想オブジェクトの適用シーンにおける位置情報およびメイン仮想オブジェクトの視野方向情報に基づいて決定されたものである。ここで、当該メイン仮想オブジェクトの視野方向情報は、単位ベクトルであってもよく、単位経緯度などであってもよいし、具体的には、当該メイン仮想オブジェクトの視野方向情報の表示方式は、当該適用シーンの実現方式に基づいて決定され、ここでは限定しない。例えば、適用シーンが基準点(0、0、0)で作成される場合、当該メイン仮想オブジェクトの向き情報は、(x1、y1、z1)であってもよく、x、yおよびzが、いずれも、0から1の数値であり、当該メイン仮想オブジェクトの向き、即ちメイン仮想オブジェクトの視野方向を表すものであり、選択対象となる仮想オブジェクトの適用シーンにおける位置情報(x2、y2、z2)、およびメイン仮想オブジェクトの適用シーンにおける位置情報(x3、y3、z3)を取得し、選択対象となる仮想オブジェクトの位置情報(x2、y2、z2)とメイン仮想オブジェクトの位置情報(x3、y3、z3)によって、選択対象となる仮想オブジェクトとメイン仮想オブジェクトとの間の方向ベクトルを得て、当該方向ベクトルとメイン仮想オブジェクトの視野方向情報とに基づいて、当該選択対象となる仮想オブジェクトとメイン仮想オブジェクトとの間の視距離角度の情報を決定する。以上は、視距離角度の情報の1つの可能な決定方式であり、選択対象となる仮想オブジェクトとメイン仮想オブジェクトの視野方向情報の間の視距離角度の情報を取得できる他の方式について、ここでは限定しない。
【0032】
例えば、ゲームシーンにおいて、プレイヤー(メイン仮想オブジェクト)の可視化範囲内の全ての仮想オブジェクトは、当該プレイヤーに関連付けられた関連仮想オブジェクト、即ち、プレイヤー間の距離が第1距離閾値以下であるオリジナル仮想オブジェクトと考えられる。プレイヤーが狙撃鏡望遠鏡などの遠視距離アイテムを使用して観察を行う場合、当該プレイヤーの視覚範囲を増加させ、プレイヤーが遠視距離アイテムを使用した後の視覚範囲内の仮想オブジェクトも、当該プレイヤーに関連付けられた関連仮想オブジェクトと考えられ、ここで、第2距離閾値は、プレイヤーが遠視距離アイテムを使用する際に観察可能な最遠距離であり、可視化角度閾値は、プレイヤーが遠視距離アイテムを使用する際に観察可能な最大視野角度などである。
【0033】
さらに、
図6を参照することができ、
図6は、本願の実施例によって提供される関連仮想オブジェクトの表示シーンの概略図である。
図6に示すように、メイン仮想オブジェクト602は、遠視距離アイテムを使用しない場合、ターゲットクライアントの表示ページ601にフレーム画像を表示する、ということを仮定する。メイン仮想オブジェクト602との間の距離が第1距離閾値603以下のオリジナル仮想オブジェクトが取得され、関連仮想オブジェクトとして決定され、関連仮想オブジェクトの関連情報がターゲットクライアントに送信された後、ターゲットクライアントは、受信した関連仮想オブジェクトを表示ページ601に表示し、ここで、関連仮想オブジェクトは、表示ページ601に表示された、メイン仮想オブジェクト602以外の仮想オブジェクトである。ここで、ターゲットクライアントは、表示ページ601に関連仮想オブジェクトを表示する際に、各関連仮想オブジェクトとメイン仮想オブジェクト602との間の距離の情報に基づいて、各関連仮想オブジェクト601が表示ページ601に表示される場合のサイズを調整することができる。メイン仮想オブジェクト602によって遠視距離アイテム604が使用される場合、少なくとも2つのオリジナル仮想オブジェクトから、距離が第1距離閾値603より大きくかつ第2距離閾値605以下である選択対象となる仮想オブジェクトを取得し、選択対象となる仮想オブジェクトとメイン仮想オブジェクト602の視野方向情報との間の視距離角度の情報を決定し、視距離角度の情報が可視化角度閾値606より小さい選択対象となる仮想オブジェクトを、メイン仮想オブジェクト602に関連付けられた関連仮想オブジェクトとして決定し、この場合、ターゲットクライアントの表示ページ601において、距離の情報が第1距離閾値603以下である関連仮想オブジェクトが表示され、視距離角度の情報が可視化角度閾値606より小さい関連仮想オブジェクトも表示される。ここで、上記第1距離閾値603および第2距離閾値605とは、適用シーンにおける実際の距離値を指し、表示ページ601に表示される場合のページ表示距離ではなく、即ち、第1距離閾値603および第2距離閾値605は、適用シーンにおける位置情報の間の距離と考えられる。
【0034】
メイン仮想オブジェクトの属性カテゴリにより関連仮想オブジェクトを決定する場合、適用シーンにおける少なくとも2つのオリジナル仮想オブジェクトの属性カテゴリを取得し、属性カテゴリがユーザキャラクター属性であるオリジナル仮想オブジェクトをユーザ仮想オブジェクトとして決定し、属性カテゴリがシステムキャラクター属性であるオリジナル仮想オブジェクトをシステム仮想オブジェクトとして決定することと、ユーザ仮想オブジェクトのグループラベルを取得し、グループラベルがメイン仮想オブジェクトのグループラベルと同じであるユーザ仮想オブジェクトを、関連ユーザ仮想オブジェクトとして決定することと、関連ユーザ仮想オブジェクトおよびシステム仮想オブジェクトを、メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトとして決定することと、を実行する。例えば、ゲームシーンでは、プレイヤー(メイン仮想オブジェクト)にとって、自分と同一のグループに属する仮想オブジェクトの位置情報などを了解する必要があり、そのため、プレイヤーのグループラベルを取得し、オリジナル仮想オブジェクトから、属性カテゴリがユーザキャラクター属性であるユーザ仮想オブジェクトを取得し、ユーザ仮想オブジェクトから、グループラベルがメイン仮想オブジェクトのグループラベルと同じである関連ユーザ仮想オブジェクトを取得し、当該ユーザ仮想オブジェクトは、当該ゲームシーンにおける上記のプレイヤー以外の非NPCオブジェクトである。ここで、複数のユーザ仮想オブジェクトがチームを組んで当該ゲームシーンを行ったり、または当該ゲームシーンに入ってからチームを組んだりすると、チームを組んだ複数のユーザ仮想オブジェクトに対して、同じグループラベルが追加され、これにより、上記の複数のユーザ仮想オブジェクトが同一のグループに属していることを示す。メイン仮想オブジェクトの属性カテゴリにより関連仮想オブジェクトを決定することによって、ターゲットクライアントの表示ページにおいて、メイン仮想オブジェクトのために、メイン仮想オブジェクトと同じグループに属している仮想オブジェクトを表示することができ、これにより、メイン仮想オブジェクトは、自分と同じグループの仮想オブジェクトの位置情報などをリアルタイムで見ることができ、即ち、自分のチームメイトの状況をリアルタイムで取得することができ、同じグループにおける仮想オブジェクト間のインタラクティビティを向上させることができる。
【0035】
メイン仮想オブジェクトの視覚範囲および属性カテゴリを組み合わせて、メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトを決定することができ、距離が第1距離閾値以下であるオリジナル仮想オブジェクト、視距離角度が可視化角度閾値より小さい選択対象となる仮想オブジェクト、および関連ユーザ仮想オブジェクトを、メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトとして決定し、ここで、当該関連ユーザ仮想オブジェクトは、グループラベルに基づいて決定され、具体的には、属性カテゴリがユーザキャラクター属性であるオリジナル仮想オブジェクトを取得してユーザ仮想オブジェクトとして決定し、グループラベルがメイン仮想オブジェクトのグループラベルと同じであるユーザ仮想オブジェクトを、関連ユーザ仮想オブジェクトとして決定する。
【0036】
ここで、上記メイン仮想オブジェクトの視覚範囲により関連仮想オブジェクトを決定する場合、上記距離関係リストには、各システム仮想オブジェクトのそれぞれと各ユーザ仮想オブジェクトのそれぞれとの間の距離の情報が含まれる。各オリジナル仮想オブジェクトとメイン仮想オブジェクトとの間の距離の情報が属する距離範囲を取得し、各オリジナル仮想オブジェクトの更新キャッシュ時間を取得することと、距離範囲に対応するリスト更新時間閾値を取得し、少なくとも2つのオリジナル仮想オブジェクトのうち、更新キャッシュ時間と第3システムネットワーク時間との差がリスト更新時間閾値以上であるオリジナル仮想オブジェクトを、ターゲット仮想オブジェクトとして決定することと、距離関係リストにおける、ターゲット仮想オブジェクトとメイン仮想オブジェクトとの間の距離の情報を更新することと、を実行する。各オリジナル仮想オブジェクトとメイン仮想オブジェクトとの間の距離の情報を区分することにより、複数の距離範囲を得て、各距離範囲に対して、1つのリスト更新時間閾値を設定することで、異なる距離範囲内の対応する距離の情報を、異なるリスト更新時間閾値で更新させ、これにより、距離の情報が小さい場合、更新頻度が大きくなり、距離の情報が大きい場合、更新頻度が小さくなり、これによって、メイン仮想オブジェクトのフレーム画像の表示に影響を及ぼさずに、距離関係リストの更新頻度が低減され、距離関係リストの更新データ量が低減される。
【0037】
ステップS502で、当該関連仮想オブジェクトのキャラクター変数のうちの第1タイプ変数を取得する。
【0038】
具体的には、関連仮想オブジェクトのキャラクター変数のうち、第1更新頻度タイプに属する変数を、第1タイプ変数として取得する。ここで、当該第1更新頻度タイプの変数は、適用シーンにおいて各フレームに変化する変数と考えられる。具体的には、メイン仮想オブジェクトに対応するクラスオブジェクトセットを取得することであって、当該クラスオブジェクトセットには、少なくとも2つのオブジェクト変数サブセットが含まれることと、クラスオブジェクトセットの少なくとも2つのオブジェクト変数サブセットから、関連仮想オブジェクトに対応するオブジェクト変数サブセットを取得することであって、当該オブジェクト変数サブセットには、関連仮想オブジェクトのキャラクター変数のうち、第1更新頻度タイプに属する変数が含まれることと、オブジェクト変数サブセットから、関連仮想オブジェクトの第1タイプ変数を取得することと、を実行する。ここで、当該第1タイプ変数は、位置情報、視野方向情報、速度情報、加速度情報、経路情報およびラグドール(Ragdoll)情報などを含み得て、加速度情報および視野方向情報などは、クライアントが受信した変更データに基づいて算出され得るため、コンピュータデバイスは、当該加速度情報および視野方向情報などを処理する必要がないと考えられる。ここで、Ragdoll情報は、関連仮想オブジェクトのスケルトン情報であり、対応する関連仮想オブジェクトのキャラクター形態をレンダリングするために使用され、即ち、表示ページに表示された関連仮想オブジェクトをレンダリングするために使用される。ここで、当該第1タイプ変数を取得するプロセスについては、
図2におけるステップS201の具体的な説明を参照することもでき、ここでは説明を省略する。
【0039】
ここで、第1タイプ変数が履歴経路情報を含む場合、関連仮想オブジェクトのターゲット時間範囲内の動き軌跡を取得し、動き軌跡に基づいて、上記の関連仮想オブジェクトの動き位置ポイントを決定し、動き位置ポイントを関連仮想オブジェクトの経路情報として決定し、第1タイプ変数における履歴経路情報を経路情報として更新し、当該ターゲット時間範囲は、第1タイプ変数における経路情報を更新する場合の間隔時間長さを指す。言い換えれば、関連仮想オブジェクトのターゲット時間範囲内の動き軌跡を予測し、当該動き軌跡に基づいて当該関連仮想オブジェクトの動き位置ポイントを決定し、履歴経路情報を、動き位置ポイントに基づいて決定された経路情報として更新し、当該経路情報の経路更新時間を記録し、その経路更新時間を基にして、ターゲット時間範囲を経過した後、当該関連仮想オブジェクトの経路情報を再び予測することができる。例えば、ターゲット時間範囲が2sであり、記録された経路更新時間が6時35分05秒であると仮定すると、当該経路更新時間を基にして、次回に経路情報を更新する時間は6時35分07秒であり、さらに、当該経路更新時間は、ミリ秒などまで正確に達することができ、かつ経路情報を更新するたびに、経路更新時刻を同期的に更新する。
【0040】
さらに、
図7を参照することができ、
図7は、本願の実施例によって提供される、第1タイプ変数の決定情況の概略図である。
図7に示すように、メイン仮想オブジェクトに対応するクラスオブジェクトセット701を取得し、当該クラスオブジェクトセット701には、少なくとも2つのオブジェクト変数サブセットが含まれ、オブジェクト変数サブセット7011、オブジェクト変数サブセット7012およびオブジェクト変数サブセット7013などが含まれ、各オブジェクト変数サブセットには、対応する関連仮想オブジェクトのキャラクター変数のうち、第1更新頻度タイプに属する変数、即ち、対応する関連仮想オブジェクトの第1タイプ変数が含まれる。
図7に示すように、オブジェクト変数サブセット7011には、関連仮想オブジェクト1の第1タイプ変数が含まれ、オブジェクト変数サブセット7012には、関連仮想オブジェクト2の第1タイプ変数が含まれ、オブジェクト変数サブセット7013には、関連仮想オブジェクト3の第1タイプ変数が含まれる。各オブジェクト変数サブセットから、対応する関連仮想オブジェクトの第1タイプ変数を取得することができる。ここで、関連仮想オブジェクト1の更新702を例にして、当該関連仮想オブジェクト1のキャラクター変数703には、第1タイプ変数7031、第2タイプ変数7032、他のデータ7033、および全量更新時間7034が含まれ、当該関連仮想オブジェクト1がメイン仮想オブジェクトに関連付けられた仮想オブジェクトであると決定された場合、当該関連仮想オブジェクト1の第1タイプ変数7031をオブジェクト変数サブセット7011としてクラスオブジェクトセット701に追加する。ここで、他の仮想オブジェクトが第1タイプ変数、第2タイプ変数、他のデータ、および全量更新時間なども含むことに対して、その更新プロセスについて、関連仮想オブジェクト1の更新プロセスを参照することができる。従って、メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトを決定した後、当該関連仮想オブジェクトのキャラクター変数を取得し、当該キャラクター変数から、第1タイプ変数を取得することができ、
図7を例にして、メイン仮想オブジェクトに関連付けられた関連仮想オブジェクト1を取得した後、当該関連仮想オブジェクト1のキャラクター変数703を取得し、当該キャラクター変数703のうちの第1タイプ変数7031を取得する。当該クラスオブジェクトセットは、Holderクラスオブジェクトセットと考えられ、当該Holderは、オリジナル値のコピーによって変数を渡すためのクラスであり、不変のオブジェクトリファレンスのために1つの可変なパッケージを提供するために使用されるものである。
【0041】
当該適用シーンにおいていくつかのメイン仮想オブジェクトが含まれると、同じ数量のクラスオブジェクトセットが含まれる、ということが考えられ、各クラスオブジェクトセットは、1つのメイン仮想オブジェクトに対応し、対応するメイン仮想オブジェクトの第1タイプ変数を処理するために使用される。言い換えれば、コンピュータデバイスは、当該適用シーンにおけるメイン仮想オブジェクトを取得した後、各メイン仮想オブジェクトに対して、1つのクラスオブジェクトセットを作成して、各メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトを取得し、関連仮想オブジェクトの第1タイプ変数を、対応するメイン仮想オブジェクトのクラスオブジェクトセットに追加する。
【0042】
ステップS503で、第1タイプ変数に対して圧縮処理を行い、圧縮データを得て、圧縮データをメイン仮想オブジェクトの第1変更データとしてパッケージ化する。
【0043】
具体的には、第1タイプ変数に対して圧縮処理を行い、圧縮データを得て、圧縮データをパッケージ化して、メイン仮想オブジェクトの第1変更データを得る。
【0044】
具体的には、1つの圧縮方法で、第1タイプ変数には、位置情報が含まれ、関連仮想オブジェクトの位置情報および位置精度を取得し、位置精度に基づいて、位置情報を整数型位置データに変換し、整数型位置データを圧縮データとして決定し、当該整数型位置データは、損失のあるデータ(lossy data)である。ここで、第1タイプ変数のうち、データタイプが浮動小数点型データである変数も、上記位置情報の圧縮方法によって圧縮され得て、浮動小数点型データが占めるメモリは、整数型データが占めるメモリより大きいため、このような方式によって、第1タイプ変数が占めるメモリサイズを低減することができる。例えば、位置情報は、(X、Y、Z)で表されるデータであり、位置精度は、0.2センチメートルであり、22個のビットを使用して位置情報のXとYを記憶し、20個のビットを使用して位置情報のZなどを記憶し、当該位置情報のX、YおよびZのメモリサイズは、適用シーンの具体的な実現に応じて決定されてもよく、位置精度は、他の数値であってもよい。例えば、1つの関連仮想オブジェクトの位置情報におけるXは、1001.252であり、位置精度に基づいてXを圧縮し、圧縮されたXは、1001.2であり、1001.2を整数型位置データにおけるXとして更新し、5006になる。
【0045】
1つの圧縮方法で、更新対象となるフレームでは、第1タイプ変数を取得し、メイン仮想オブジェクトが所在している履歴フレームでは、第1タイプ変数に対応する履歴キャッシュ変数を取得することであって、当該履歴フレームが更新対象となるフレームの1つ前のフレームであることと、履歴キャッシュ変数と第1タイプ変数との間の第1差異変数を取得することと、第1差異変数を符号化し、圧縮データを得ることであって、当該符号化がハフマン符号化などのような、データを圧縮または簡略化することができる符号化方式であり得ることと、を実行する。ここで、第1タイプ変数のうち、隣接するフレーム間のデータが漸進的変化関係である変数に対して、いずれも、この方式によって圧縮され得て、例えば、第2フレームでのデータが第1フレームでのデータに基づいて変化される変数であり、第3フレームでのデータが第2フレームでのデータに基づいて変化されるの変数である。例えば、メイン仮想オブジェクトの位置情報が、隣接するフレームの間で順次に変化されるため、当該位置情報の履歴キャッシュ変数を取得し、履歴キャッシュ変数と位置情報との間の第1差異変数を取得し、第1差異変数を符号化し、圧縮データを得ることができる。当該位置情報の履歴キャッシュ変数が(100、201、5)であり、当該位置情報が(101、201.2、5)であると仮定すると、履歴キャッシュ変数と位置情報との間の第1差異変数を(1、0.2、0)として取得し、さらに、第1差異変数(1、0.2、0)を符号化し、圧縮データを得る。
【0046】
具体的には、
図8を参照することができ、
図8は、本願の実施例によって提供される、履歴フレームに基づくデータの更新シーンの概略図である。
図8に示すように、メイン仮想オブジェクト802が所在しているターゲットクライアントの表示ページ801において、関連仮想オブジェクト803および関連仮想オブジェクト804が表示され、即ち、表示ページ801に表示されたのが履歴フレームであると考えられ、当該関連仮想オブジェクト803aの位置情報(即ち、履歴キャッシュ変数)が(201、100、5)として、および、当該関連仮想オブジェクト804aの位置情報(即ち、履歴キャッシュ変数)が(10、21、5)として取得される。更新対象となるフレームでは、関連仮想オブジェクト803bの位置情報(204、97、5)、および、関連仮想オブジェクト804bの位置情報(12、25、5)が取得される。ここで、履歴フレームが更新対象となるフレームの1つ前のフレームであると考えられ、関連仮想オブジェクト803aの位置情報は、関連仮想オブジェクト803bの位置情報の履歴キャッシュ変数であり、関連仮想オブジェクト803bの第1差異変数が(3、-3、0)として取得され、関連仮想オブジェクト804aの位置情報は、関連仮想オブジェクト804bの位置情報の履歴キャッシュ変数であり、関連仮想オブジェクト804bの第1差異変数が(2、4、0)として取得され、第1差異変数(3、-3、0)および第1差異変数(2、4、0)が符号化され、符号化結果がターゲットクライアントに送信される。ターゲットクライアントは、符号化結果を受信した後、第1差異変数(3、-3、0)および第1差異変数(2、4、0)を復元し、第1差異変数(3、-3、0)に基づいて、表示ページ801に関連仮想オブジェクト803bを表示し、第1差異変数(2、4、0)に基づいて、表示ページ801に関連仮想オブジェクト804bを表示する。言い換えれば、ターゲットクライアントは、表示ページ801における関連仮想オブジェクト803aおよび関連仮想オブジェクト804aを更新し、関連仮想オブジェクト803bおよび関連仮想オブジェクト804bを得て、この場合、表示ページ801に関連仮想オブジェクト803aおよび関連仮想オブジェクト804aが存在しなくて、即ち、表示ページ801に表示された履歴フレームを更新対象となるフレームに変更する。
【0047】
1つの圧縮方法で、第1タイプ変数には、関連仮想オブジェクトのオブジェクト識別子が含まれ、関連仮想オブジェクトの先行の関連仮想オブジェクトのオブジェクト識別子を取得し、関連仮想オブジェクトのオブジェクト識別子と、先行の関連仮想オブジェクトのオブジェクト識別子との間の第2差異変数を取得し、ここで、先行の関連仮想オブジェクトと、関連仮想オブジェクトとは、順次的な処理関係にあり、第2差異変数を符号化し、圧縮データを得る。例えば、関連仮想オブジェクトのオブジェクト識別子については、異なるオブジェクト識別子の間の差異性が小さいため、このような方式で圧縮され得る。例えば、メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトが3つあり、1番目の関連仮想オブジェクトのオブジェクト識別子が101であり、2番目の関連仮想オブジェクトのオブジェクト識別子が103であり、3番目の関連仮想オブジェクトのオブジェクト識別子が107であれば、1番目の関連仮想オブジェクトが、2番目の関連仮想オブジェクトの先行の関連仮想オブジェクトであり、2番目の関連仮想オブジェクトが、3番目の関連仮想オブジェクトの先行の関連仮想オブジェクトであると考えられ、この圧縮方法に基づいて、得られた2番目の関連仮想オブジェクトの第2差異変数が(103-101-1=1)であり、得られた3番目の関連仮想オブジェクトの第2差異変数が(107-103-1=3)であり、ここで、「-1」を行うことは、2つの関連仮想オブジェクトのオブジェクト識別子が同じであることが不可能ためであり、第2差異変数を取得する際に、「-1」が行わなくてもよい。
【0048】
ここで、上記の各圧縮方法は、組み合わせて実行されてもよく、例えば、位置情報について、当該位置情報の第2差異変数を整数型位置データに変換し、整数型位置データを符号化し、圧縮データを得てもよく、または、位置情報を整数型位置データに変換し、整数型位置データに基づいて、当該位置情報の第2差異変数を取得し、第2差異変数を符号化し、圧縮データを得てもよい。
【0049】
第1タイプ変数には、Ragdoll情報が含まれる場合、当該Ragdoll情報は、圧縮データとして直接に使用されてもよい。ここで、当該Ragdoll情報は、位置情報に関連し、したがって、Ragdoll情報は、第1更新頻度タイプに属する変数と見なすことができる。ここで、関連仮想オブジェクトには、複数の第1タイプ変数が含まれる場合、各第1タイプ変数の圧縮データが得られた後、全ての圧縮データがパッケージ化されて第1変更データが得られる。
【0050】
ステップS504で、メイン仮想オブジェクトの第1変更データを、メイン仮想オブジェクトが所在しているターゲットクライアントに送信する。
【0051】
具体的には、メイン仮想オブジェクトの第1変更データを、メイン仮想オブジェクトが所在しているターゲットクライアントに送信し、これにより、ターゲットクライアントは、第1変更データに基づいてフレーム画像の更新表示を行う。ここで、ターゲットクライアントは、第1変更データを受信した後、第1変更データを復元し、第1タイプ変数を得て、当該第1タイプ変数に基づいて、表示ページにおいてフレーム画像の更新表示を行う。
【0052】
ステップS505で、第2タイプ変数が変化したと決定する。
【0053】
具体的には、関連仮想オブジェクトの第2タイプ変数に対するトリガー情報を受信すると、第2タイプ変数が変化したと決定し、ステップS506を実行する。あるいは、関連仮想オブジェクトの第2タイプ変数の履歴更新時間および第1システムネットワーク時間を取得し、ここで、第2タイプ変数が、キャラクター変数のうち、第2更新頻度タイプに属する変数であり、第1システムネットワーク時間と履歴更新時間との差が第2タイプ変数の更新時間閾値以上である場合、第2タイプ変数が変化したと決定し、ステップS506を実行する。ここで、当該トリガー情報は、対応する第2タイプ変数のデータ更新を引き起こすことができる操作情報と見なすことができ、例えば、関連仮想オブジェクトがヒットされた場合、当該関連仮想オブジェクトの生命力値情報および変位アニメーションパラメータなどが変化し、当該「ヒットされた」は、関連仮想オブジェクトの生命力値情報および変位アニメーションパラメータなどに対するトリガー情報と考えられる。関連仮想オブジェクトの第2タイプ変数に対するトリガー情報を受信していないが、第1システムネットワーク時間と履歴更新時間との差が第2タイプ変数の更新時間閾値以上である場合、第2タイプ変数を処理する必要があると決定し、ステップS506を実行すること、または、関連仮想オブジェクトの第2タイプ変数に対するトリガー情報を受信したが、第1システムネットワーク時間と履歴更新時間との差が第2タイプ変数の更新時間閾値より小さい場合、第2タイプ変数を処理する必要があると決定し、ステップS506を実行すること、あるいは、関連仮想オブジェクトの第2タイプ変数に対するトリガー情報を受信した場合、かつ、第1システムネットワーク時間と履歴更新時間との差が第2タイプ変数の更新時間閾値以上である場合、第2タイプ変数を処理する必要があると決定し、ステップS506を実行すること、を実行する。
【0054】
関連仮想オブジェクトの第2タイプ変数に対するトリガー情報を受信した場合、または第1システムネットワーク時間と履歴更新時間との差が第2タイプ変数の更新時間閾値以上である場合、両者のいずれかの条件が満たされた場合、他の条件が満たされたかどうかを判断する必要がなく、第2タイプ変数を処理する必要があると直接に決定し、ステップS506を実行することができる。ここで、1番目の判断条件が満たされない場合、他の条件が満たされているかどうかを判断する。ここで、2つの条件の判断プロセスの実行順序が限定されていない。
【0055】
ステップS506で、当該関連仮想オブジェクトのキャラクター変数のうちの第2タイプ変数を取得し、第2タイプ変数を第2変更データとしてパッケージ化する。
【0056】
具体的には、上記の第2タイプ変数を取得し、当該第2タイプ変数が、前記キャラクター変数のうち、第2更新頻度タイプに属する変数であり、第2タイプ変数をメイン仮想オブジェクトの第2変更データとしてパッケージ化する。ここで、第1システムネットワーク時間と履歴更新時間との差が、第2タイプ変数の更新時間閾値以上である場合、第2タイプ変数をメイン仮想オブジェクトの第3変更データとしてパッケージ化すると考えられる。言い換えれば、第2タイプ変数は、仮想オブジェクトにおける受撃情報変更、攻撃行為、および変位アニメーションパラメータなどのトリガー式の変数であると考えられ、第2タイプ変数が変更された場合、当該第2タイプ変数に対応する関連仮想オブジェクトに対して、参加者レプリケーション(Actor Replication)メソッドを実行することで、第2タイプ変数に対して全量レプリケーションを行うことができる。
【0057】
ステップS507で、メイン仮想オブジェクトの第2変更データを、メイン仮想オブジェクトが所在しているターゲットクライアントに送信する。
【0058】
具体的には、第2変更データを、メイン仮想オブジェクトが所在しているターゲットクライアントに送信し、ターゲットクライアントに第2変更データに基づいてフレーム画像の更新表示を行わせる。ここで、得られたのは、第3変更データであれば、第3変更データを、メイン仮想オブジェクトが所在しているターゲットクライアントに送信し、これにより、ターゲットクライアントは、第3変更データに基づいて、フレーム画像の更新表示を行う。
【0059】
具体的には、
図7を参照することができ、関連仮想オブジェクト1の第2タイプ変数7041が更新された場合、当該第2タイプ変数7041を全量更新リスト704に追加し、当該全量更新リスト704には、今回のデータ処理プロセスで更新する必要がある関連仮想オブジェクトの第2タイプ変数が含まれる。例えば、今回のデータ処理プロセスにおいて、関連仮想オブジェクトの第2タイプ変数7041、関連仮想オブジェクト2の第2タイプ変数7042および関連仮想オブジェクト3の第2タイプ変数7043が更新された場合、関連仮想オブジェクト1の第2タイプ変数7041、関連仮想オブジェクト2の第2タイプ変数7042および関連仮想オブジェクト3の第2タイプ変数7043を全量更新リスト704に追加する。
【0060】
上記ステップS505からステップS507について、例えば、
図9を参照すると、
図9は、本願の実施例によって提供される、第2タイプ変数のトリガーシーンの概略図である。
図9に示すように、メイン仮想オブジェクト902の関連仮想オブジェクト903aの第2タイプ変数には、生命力値情報904aおよび受撃情報などが含まれると仮定すると、生命力値情報904aを例にして、当該メイン仮想オブジェクト902が所在しているターゲットクライアントの表示ページ901に、関連仮想オブジェクト903a、および当該関連仮想オブジェクト903aの生命力値情報904aが表示された場合、メイン仮想オブジェクト902は、リモート射撃アイテム905を使用して、関連仮想オブジェクト903aに射撃し、ここで、当該生命力値情報904aは、100%であり、当該リモート射撃アイテム905は、クロスボウ、銃器および爆破類アイテムなどであり得る。リモート射撃アイテム905が銃器であると仮定すると、銃器によって射撃された弾丸906が関連仮想オブジェクト903aにヒットした場合、コンピュータデバイスは、関連仮想オブジェクト903aが射撃された情報を受信し、即ち、当該関連仮想オブジェクト903aの第2タイプ変数903aトリガー情報を受信し、当該関連仮想オブジェクト903bの第2タイプ変数を取得し、ここで、関連仮想オブジェクト903aおよび関連仮想オブジェクト903bは、隣接するフレームに表示された同一の仮想オブジェクトであると考えられ、ここでは、当該仮想オブジェクトのキャラクター変数が変更されたことが異なるラベルで示される。コンピュータデバイスは、関連仮想対象903bの生命力値情報904bが80%であると取得した場合、生命力値情報904をパッケージ化して第2変更データを得て、第2変更データをターゲットクライアントに送信する。ターゲットクライアントは、受信した第2変更データに基づいて、生命力値情報904bを復元し、表示ページ901において、関連仮想オブジェクト903および当該関連仮想オブジェクト903bの生命力値情報904bを表示する。関連仮想オブジェクト903aが弾丸906によってヒットされた場合、当該関連仮想オブジェクト903aと弾丸906との間の力作用により、関連仮想オブジェクト903aの変位アニメーションパラメータが変化する可能性もがあり、この場合、上記トリガー情報は、関連仮想オブジェクト903aの変位アニメーションパラメータにも対応している。ここで、関連仮想オブジェクトに対して、同じトリガー情報は、少なくとも1つの第2タイプ変数に対するものであり得て、ここでは限定しない。
【0061】
コンピュータデバイスは、関連仮想オブジェクト903aが射撃された情報が受信した後、関連仮想オブジェクト903aを撃った弾丸906のダメージ値、関連仮想オブジェクト903aが撃たれた部位、および当該関連仮想オブジェクト903aの生命力値情報904aなどに基づいて、関連仮想オブジェクト903bの生命力値情報904bを取得することができる。または、コンピュータデバイスは、弾丸906のダメージ値、関連仮想オブジェクト903aが撃たれた部位を取得し、当該関連仮想オブジェクト903aの生命力値減少値を決定し、生命力値減少値を第2変更データにパッケージ化し、ターゲットクライアントは、生命力値減少値を復元した後、1つ前のフレームの生命力値情報904aおよび当該生命力値減少値を基づいて、生命力値情報904bを得て、表示ページ901に当該血量情報904bを表示する。
【0062】
ここで、上記第1タイプ変数に対する処理プロセス(ステップS502からステップS504)と第2タイプ変数に対する処理プロセス(ステップS505からステップS507)は、同期で実行されてもよく、非同期で実行されてもよいし、また、両者の実行順序が限定されない。ステップS502からステップS503を実行することにより圧縮データを得、かつ、ステップS505からステップS506を実行することにより第2タイプ変数を得、圧縮データと第2タイプ変数をパッケージ化して、ターゲット変更データを取得し、ターゲット変更データを、メイン仮想オブジェクトが所在しているターゲットクライアントに送信し、これにより、ターゲットクライアントは、ターゲット変更データに基づいて、フレーム画像の更新表示を行う。具体的には、
図7を参照すると、メイン仮想オブジェクトに関連付けられた各関連仮想オブジェクトの第1タイプ変数を得た後、各関連仮想オブジェクトの第1タイプ変数をそれぞれ1つのオブジェクト変数サブセットとして、クラスオブジェクトセット701に追加することと、今回のデータ処理中にデータが更新された第2タイプ変数を取得し、データが更新された第2タイプ変数を全量更新リスト704に追加することと、を実行する。クラスオブジェクトセット701に含まれる各オブジェクト変数サブセットのデータを圧縮し、各オブジェクト変数サブセットに対応する圧縮データを得る。コンピュータデバイスは、クラスオブジェクトセット701における、処理し後に得られた圧縮データ、および全量更新リスト704に含まれている各第2タイプ変数をパッケージ化し、ターゲット変更データを得て、ターゲット変更データを、メイン仮想オブジェクトが所在しているターゲットクライアントに送信し、これにより、ターゲットクライアントは、ターゲット変更データに基づいて、フレーム画像の更新表示を行う。
【0063】
上記ステップS502を実行した後、関連仮想オブジェクトの第1タイプ変数の履歴全量更新時間および第2システムネットワーク時間を取得することと、履歴全量更新時間と第2システムネットワーク時間との差が全量更新時間閾値以上である場合、第1タイプ変数を全量変更データとしてパッケージ化し、全量変更データをターゲットクライアントに送信し、ターゲットクライアントに、全量変更データに基づいてフレーム画像の更新表示を行わせ、かつ、第2システムネットワーク時間に基づいて履歴全量更新時間の更新を行わせることと、履歴全量更新時間と第2システムネットワーク時間との差が全量更新時間閾値より小さい場合、ステップS503を実行し、第1タイプ変数に対して圧縮処理を行い、圧縮データを得ることと、を実行する。当該履歴全量更新時間が、対応する関連仮想オブジェクトのキャラクター変数に含まれ得て、
図7に示すように、当該履歴全量更新時間は、関連する仮想オブジェクト1のキャラクター変数703における7034の全量更新時間である。当該履歴全量更新時間は、他の方式で記憶されてもよく、ここでは限定しない。ここで、キャラクター変数が処理される場合、当該キャラクター変数が属する関連仮想オブジェクトを表示するように、オブジェクト識別子により、対応する関連仮想オブジェクトと関連され得る。
【0064】
さらに、仮想オブジェクトのキャラクター変数は、少なくとも2つのカテゴリに区分され得て、例えば、上記の第1更新頻度タイプに属する第1タイプ変数、および第2更新頻度タイプに属する第2タイプ変数である。このような区分方式に加えて、キャラクター変数は、さらに、異なる更新頻度タイプに基づいて、より多くのタイプの変数に区分され得て、例えば、3つのタイプの変数、または4つのタイプの変数、または5つのタイプの変数などである。異なる区分情況では、各タイプの変数が属する更新頻度タイプは異なり、ここで、同じ区分情況では、ツリー構造によって、異なる更新頻度タイプを管理することができ、異なる更新頻度タイプに対応する変数についてのデータ処理方法は異なる。例えば、
図10を参照すると、
図10は、本願の実施例によって提供される変数の区分情況の概略図である。
図10に示すように、第1種の区分の場合、第1更新頻度タイプおよび第2更新頻度タイプに基づいて、キャラクター変数を区分し、キャラクター変数のうち、第1更新頻度タイプに属する変数を第1タイプ変数とし、キャラクター変数のうち、第2更新頻度タイプに属する変数を第2タイプ変数とし、ここで、第1タイプ変数および第2タイプ変数のデータ処理方法は異なり、ここで、第1タイプ変数と第2タイプ変数によって、1つの完全な関連仮想オブジェクトをレンダリングして得ることができる。第2種の区分の場合、第3更新頻度タイプ、第4更新頻度タイプおよび第5更新頻度タイプに基づいて、キャラクター変数を区分し、キャラクター変数のうち、第3更新頻度タイプに属する変数を第3タイプ変数とし、キャラクター変数のうち、第4更新頻度タイプに属する変数を第4タイプ変数とし、キャラクター変数のうち、第5更新頻度タイプに属する変数を第5タイプ変数とし、ここで、第3タイプ変数、第4タイプ変数および第5タイプ変数のデータ処理方法は異なり、ここで、第3タイプ変数、第4タイプ変数および第5タイプ変数によって、1つの完全な関連仮想オブジェクトをレンダリングして得ることができる。同様に、キャラクター変数は、他の区分方式によって分類されてもよい。
【0065】
本願の実施例は、メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトを取得し、関連仮想オブジェクトのキャラクター変数のうち、第1更新頻度タイプに属する変数を第1タイプ変数として取得し、第1タイプ変数に対して圧縮処理を行い、圧縮データを得て、圧縮データをパッケージ化して、メイン仮想オブジェクトの第1変更データを取得し、第1変更データを、メイン仮想オブジェクトが所在しているターゲットクライアントに送信し、ターゲットクライアントに第1変更データに基づいてフレーム画像の更新表示を行わせ、および、第2タイプ変数が変化した場合、第2タイプ変数を更新し、または第2タイプ変数を周期的に更新し、かつ第1タイプ変数に対して全量更新を周期的に引き続き行い、これにより、全量更新の前に発生する可能性のあるパケットロスという問題が解決される。上記プロセスにより、関連仮想オブジェクトのキャラクター変数に対して分類処理を行い、かつ第1更新頻度タイプに属する第1タイプ変数に対して圧縮処理を行い、これにより、処理する必要があるデータ量および送信する必要があるデータ量を大幅に低減させ、データ処理効率を向上させる。
【0066】
図11を参照すると、
図11は、本願の実施例によって提供されるデータ処理装置の概略図である。上記のデータ処理装置は、コンピュータデバイスに動作するコンピュータプログラム(プログラムコードを含む)であってもよく、例えば、当該データ処理装置は、アプリケーションソフトウェアである。当該装置は、本願の実施例によって提供される方法における対応するステップを実行するために使用され得る。
図11に示すように、当該データ処理装置110は、上記の
図2に対応する実施例におけるコンピュータデバイスに使用され得て、具体的には、当該データ処理装置110には、第1取得モジュール11、圧縮モジュール12、第1パッケージ化モジュール13および第1送信モジュール14が含まれ得る。
【0067】
第1取得モジュール11は、メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトを取得し、前記関連仮想オブジェクトのキャラクター変数のうち、第1更新頻度タイプに属する変数を第1タイプ変数として取得する。
【0068】
圧縮モジュール12は、前記第1タイプ変数に対して圧縮処理を行い、圧縮データを得る。
【0069】
第1パッケージ化モジュール13は、前記圧縮データをパッケージ化して、前記メイン仮想オブジェクトの第1変更データを取得する。
【0070】
第1送信モジュール14は、前記メイン仮想オブジェクトの第1変更データを、前記メイン仮想オブジェクトが所在しているターゲットクライアントに送信し、前記ターゲットクライアントに前記第1変更データに基づいてフレーム画像の更新表示を行わせる。
【0071】
ここで、前記装置110は、さらに、
前記関連仮想オブジェクトの第2タイプ変数に対するトリガー情報を受信した場合、前記第2タイプ変数を取得する第2取得モジュール15であって、前記第2タイプ変数が、前記キャラクター変数のうち、第2更新頻度タイプに属する変数である第2取得モジュール15と、
前記第2タイプ変数を前記メイン仮想オブジェクトの第2変更データとしてパッケージ化する第2パッケージ化モジュール16と、
前記第2変更データを、前記メイン仮想オブジェクトが所在しているターゲットクライアントに送信し、前記ターゲットクライアントに前記第2変更データに基づいてフレーム画像の更新表示を行わせる第2送信モジュール17、を含む。
【0072】
ここで、前記装置110は、さらに、
第3取得モジュールであって、前記関連仮想オブジェクトの第2タイプ変数の履歴更新時間および第1システムネットワーク時間を取得する第3取得モジュール18であって、前記第2タイプ変数が、前記キャラクター変数のうち、第2更新頻度タイプに属する変数である第3取得モジュール18と、
前記第1システムネットワーク時間と前記履歴更新時間との差が第2タイプ変数の更新時間閾値以上である場合、前記第2タイプ変数を前記メイン仮想オブジェクトの第3変更データとしてパッケージ化する第3パッケージ化モジュール19と、
前記第3変更データを、前記メイン仮想オブジェクトが所在しているターゲットクライアントに送信し、前記ターゲットクライアントに前記第3変更データに基づいてフレーム画像の更新表示を行わせる第3送信モジュール20と、を含む。
【0073】
ここで、前記第1タイプ変数には、位置情報が含まれる。
【0074】
前記圧縮モジュール12は、
前記関連仮想オブジェクトの前記位置情報および位置精度を取得する第1取得ユニット121と、
前記位置精度に基づいて、前記位置情報を整数型位置データに変換し、前記整数型位置データを前記圧縮データとして決定する決定ユニット122と、を含む。
【0075】
ここで、前記圧縮モジュール12は、
第2取得ユニットであって、更新対象となるフレームでは、前記第1タイプ変数を取得し、前記メイン仮想オブジェクトが所在している履歴フレームでは、前記第1タイプ変数に対応する履歴キャッシュ変数を取得する第2取得ユニット123であって、前記履歴フレームが、前記更新対象となるフレームの1つ前のフレームである第2取得ユニット123と、
前記履歴キャッシュ変数と前記第1タイプ変数との間の第1差異変数を取得する第3取得ユニット124と、
前記第1差異変数を符号化し、前記圧縮データを得る第1生成ユニット125と、を含む。
【0076】
ここで、前記第1タイプ変数には、前記関連仮想オブジェクトのオブジェクト識別子が含まれる。
【0077】
ここで、前記圧縮モジュール12は、
前記関連仮想オブジェクトの先行の関連仮想オブジェクトのオブジェクト識別子を取得し、前記関連仮想オブジェクトのオブジェクト識別子と前記先行の関連仮想オブジェクトのオブジェクト識別子との間の第2差異変数を取得する第4取得ユニット126であって、前記先行の関連仮想オブジェクトと前記関連仮想オブジェクトが、順次的な処理関係にある第4取得ユニット126と、
前記第2差異変数を符号化し、前記圧縮データを得る第2生成ユニット127と、を含む。
【0078】
ここで、前記第1タイプ変数には、履歴経路情報が含まれる。
【0079】
前記第1取得モジュール11は、
前記関連仮想オブジェクトのターゲット時間範囲内の動き軌跡を取得し、前記動き軌跡に基づいて、前記関連仮想オブジェクトの動き位置ポイントを決定し、前記動き位置ポイントを前記関連仮想オブジェクトの経路情報として決定し、前記第1タイプ変数における前記履歴経路情報を前記経路情報として更新する経路取得ユニット111であって、当該ターゲット時間範囲が、前記第1タイプ変数における前記経路情報を更新する場合の間隔時間長さを指す経路取得ユニット111を、含む。
【0080】
ここで、前記装置110は、さらに、
前記関連仮想オブジェクトの前記第1タイプ変数の履歴全量更新時間および第2システムネットワーク時間を取得する第4取得モジュール21と、
前記履歴全量更新時間と前記第2システムネットワーク時間との差が全量更新時間閾値以上である場合、前記第1タイプ変数を全量変更データとしてパッケージ化し、前記全量変更データを前記ターゲットクライアントに送信し、前記ターゲットクライアントに、前記全量変更データに基づいてフレーム画像の更新表示を行わせ、かつ前記第2システムネットワーク時間に基づいて前記履歴全量更新時間の更新を行わせる第4パッケージ化モジュール22と、を含み、
前記第4パッケージ化モジュール22は、また、前記履歴全量更新時間と前記第2システムネットワーク時間との差が前記全量更新時間閾値より小さい場合、前記第1タイプ変数に対して圧縮処理を行って圧縮データを得るステップを前記圧縮モジュール12により実行するために使用される。
【0081】
ここで、前記装置110は、さらに、
距離関係リストから前記メイン仮想オブジェクトと少なくとも2つのオリジナル仮想オブジェクトとの間の距離の情報をそれぞれ取得する距離取得モジュール23と、
前記少なくとも2つのオリジナル仮想オブジェクトから、前記距離の情報が第1距離閾値より大きくかつ第2距離閾値以下である選択対象となる仮想オブジェクトを取得し、前記選択対象となる仮想オブジェクトと前記メイン仮想オブジェクトの視野方向情報との間の視距離角度の情報を決定する視距離決定モジュール24と、
前記距離の情報が前記第1距離閾値以下であるオリジナル仮想オブジェクト、または前記視距離角度の情報が可視化角度閾値より小さい選択対象となる仮想オブジェクトを、前記メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトとして決定する関連決定モジュール25と、を含む。
【0082】
ここで、前記装置110は、さらに、
適用シーンにおける少なくとも2つのオリジナル仮想オブジェクトの属性カテゴリを取得し、前記属性カテゴリがユーザキャラクター属性であるオリジナル仮想オブジェクトをユーザ仮想オブジェクトとして決定し、前記属性カテゴリがシステムキャラクター属性であるオリジナル仮想オブジェクトをシステム仮想オブジェクトとして決定する属性分類モジュール26と、
前記ユーザ仮想オブジェクトのグループラベルを取得し、前記グループラベルが前記メイン仮想オブジェクトのグループラベルと同じであるユーザ仮想オブジェクトを、関連ユーザ仮想オブジェクトとして決定するユーザ関連モジュール27と、を含み、
前記関連決定モジュール25は、前記関連ユーザ仮想オブジェクトおよび前記システム仮想オブジェクトを、前記メイン仮想オブジェクトに関連付けられた前記関連仮想オブジェクトとして決定する。
【0083】
ここで、前記装置110は、さらに、
各オリジナル仮想オブジェクトと前記メイン仮想オブジェクトとの間の距離が属する距離範囲を取得し、前記各オリジナル仮想オブジェクトの更新キャッシュ時間を取得する第5取得モジュール28と、
前記距離範囲に対応するリスト更新時間閾値を取得し、前記少なくとも2つのオリジナル仮想オブジェクトのうち、更新キャッシュ時間と第3システムネットワーク時間との差が前記リスト更新時間閾値以上であるオリジナル仮想オブジェクトを、ターゲット仮想オブジェクトとして決定するターゲット決定モジュール29と、
前記距離関係リストにおける、前記ターゲット仮想オブジェクトと前記メイン仮想オブジェクトとの間の距離の情報を更新する更新モジュール30と、を含む。
【0084】
ここで、前記第1取得モジュール11は、
前記メイン仮想オブジェクトに対応するクラスオブジェクトセットを取得するクラス取得ユニット112であって、前記クラスオブジェクトセットには、少なくとも2つのオブジェクト変数サブセットが含まれるクラス取得ユニット112と、
前記クラスオブジェクトセットの前記少なくとも2つのオブジェクト変数サブセットから、前記関連仮想オブジェクトに対応するオブジェクト変数サブセットを取得するサブセット取得ユニット113であって、前記オブジェクト変数サブセットには、前記関連仮想オブジェクトのキャラクター変数のうち、前記第1更新頻度タイプに属する変数が含まれるサブセット取得ユニット113と、
前記オブジェクト変数サブセットから、前記関連仮想オブジェクトの前記第1タイプ変数を取得する変数取得ユニット114と、を含む。
【0085】
本願の実施例は、データ処理装置について説明する。前記装置は、メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトを取得し、関連仮想オブジェクトのキャラクター変数のうち、第1更新頻度タイプに属する変数を第1タイプ変数として取得し、第1タイプ変数に対して圧縮処理を行い、圧縮データを得て、圧縮データをパッケージ化して、メイン仮想オブジェクトの第1変更データを取得し、第1変更データを、メイン仮想オブジェクトが所在しているターゲットクライアントに送信し、ターゲットクライアントに第1変更データに基づいてフレーム画像の更新表示を行わせる。上記のプロセス手順により、関連仮想オブジェクトのキャラクター変数に対して分類処理を行って、第1更新頻度タイプに属する第1タイプ変数に対して圧縮処理を行い、これにより、処理する必要があるデータ量および送信する必要があるデータ量を大幅に低減させ、データの処理効率を向上させる。
【0086】
図12を参照すると、
図12は、本願の実施例によって提供されるコンピュータデバイスの構造の概略図である。
図12に示すとおり、本願の実施例におけるコンピュータデバイス1200は、1つまたは複数のプロセッサ1201、メモリ1202、および入出力インタフェース1203を含み得る。上記のプロセッサ1201、メモリ1202および入出力インタフェース1203は、バス1204によって接続される。メモリ1202は、プログラム命令が含まれているコンピュータプログラムを記憶するために使用され、入出力インタフェース1203は、データの入出力のために使用され、データの入出力には、各通信クライアントとイベントサーバとの間のデータインタラクション、およびユーザと各通信クライアントとの間のデータインタラクションが含まれ、プロセッサ1201は、メモリ1202に記憶されているプログラム命令を実行するために使用され、以下の動作、即ち、
メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトを取得し、関連仮想オブジェクトのキャラクター変数のうち、第1更新頻度タイプに属する変数を第1タイプ変数として取得することと、
前記第1タイプ変数に対して圧縮処理を行い、圧縮データを得、前記圧縮データをパッケージ化して、前記メイン仮想オブジェクトの第1変更データを取得することと、
前記メイン仮想オブジェクトの第1変更データを、前記メイン仮想オブジェクトが所在しているターゲットクライアントに送信し、前記ターゲットクライアントに前記第1変更データに基づいてフレーム画像の更新表示を行わせることと、を実行する。
【0087】
いくつかの実施形態では、上記のプロセッサ1201は、中央処理ユニット(CPU:central processing unit)であってもよく、当該プロセッサは、また、他の汎用プロセッサ、デジタル信号プロセッサ(DSP:igital signal processor)、専用集積回路(ASIC:application specific integrated circuit)、フィールドプログラマブルゲートアレイ(FPGA:field-programmable gate array)または他のプログラマブルロジックデバイス、ディスクリートゲートまたはトランジスタロジックデバイス、ディスクリートハードウェアコンポーネントなどであってもよい。汎用プロセッサは、マイクロプロセッサであってもよく、またはプロセッサは、任意の従来のプロセッサなどであってもよい。
【0088】
メモリ1202は、読み取り専用メモリおよびランダムアクセスメモリを含み得て、プロセッサ1201および入出力インタフェース1203に命令およびデータを提供することができる。メモリ1202の一部は、また、不揮発性ランダムアクセスメモリを含み得る。例えば、メモリ1202は、また、デバイスタイプの情報を記憶することもできる。
【0089】
具体的な実現では、上記のコンピュータは、内蔵された各機能モジュールにより、上記の
図2または
図5における各ステップによって提供される実現形態を実行することができ、具体的には、上記の
図2または
図5における各ステップによって提供される実現形態を参照することができ、ここで説明を省略する。
【0090】
本願の実施例は、プロセッサ、入出力インタフェース、メモリが含まれているコンピュータを提供し、プロセッサによってメモリにおけるコンピュータ命令を取得し、上記の
図2または
図5に示す方法の各ステップを実行し、データ処理操作を行う。メモリにおけるコンピュータ命令により、プロセッサは、以下のステップを実行し、即ち、
メイン仮想オブジェクトに関連付けられた関連仮想オブジェクトを取得し、関連仮想オブジェクトのキャラクター変数のうち、第1更新頻度タイプに属する変数を第1タイプ変数として取得し、第1タイプ変数に対して圧縮処理を行い、圧縮データを得、圧縮データをパッケージ化して、メイン仮想オブジェクトの第1変更データを取得し、第1変更データを、メイン仮想オブジェクトが所在しているターゲットクライアントに送信し、ターゲットクライアントに第1変更データに基づいてフレーム画像の更新表示を行わせ、および、第2タイプ変数が変化した場合、第2タイプ変数を更新し、または第2タイプ変数を周期的に更新し、かつ第1タイプ変数に対して全量更新を周期的に引き続き行い、これにより、全量更新の前に発生する可能性のあるパケットロスという問題が解決される。上記のプロセスにより、関連仮想オブジェクトのキャラクター変数に対して分類処理を行い、かつ第1更新頻度タイプに属する第1タイプ変数に対して圧縮処理を行い、これにより、処理する必要があるデータ量および送信する必要があるデータ量を大幅に低減させ、データ処理効率を向上させる。
【0091】
本発明の実施例は、また、コンピュータ読み取り可能な記憶媒体に記憶されるコンピュータ命令を含むコンピュータプログラム製品またはコンピュータプログラムを提供する。コンピュータデバイスのプロセッサは、コンピュータ読み取り可能な記憶媒体からコンピュータ命令を読み出し、プロセッサは、コンピュータデバイスが上記の
図2または
図5に示すデータ処理方法を実行するように、当該コンピュータ命令を実行する。
【0092】
本発明の実施例は、また、プログラム命令を含むコンピュータプログラムが記憶されているコンピュータ読み取り可能な記憶媒体を提供し、当該プログラム命令がプロセッサによって実行されるとき、
図2または
図5の各ステップによって提供されるデータ処理方法が実現され、具体的には、上記の
図2または
図5の各ステップによって提供される実現形態を参照することができ、ここではこれ以上述べない。
【0093】
上記のコンピュータ読み取り可能な記憶媒体は、前記いずれかの実施例によって提供されるデータ処理装置または上記のコンピュータの内部記憶ユニット、例えば、コンピュータのハードディスクまたはメモリであってもよい。コンピュータ読み取り可能な記憶媒体は、当該コンピュータの外部記憶デバイスであってもよく、例えば、当該コンピュータに配置されているプラグインハードディスク、スマートメモリカード(SMC:smart media card)、セキュリティデジタル(SD:secure digital)カード、フラッシュメモリカードなどである。さらに、当該コンピュータ読み取り可能な記憶媒体は、また、当該コンピュータの内部記憶ユニットも外部記憶デバイスも含み得る。当該コンピュータ読み取り可能な記憶媒体は、当該コンピュータプログラムと、当該コンピュータに必要な他のプログラムおよびデータとを記憶するために使用される。当該コンピュータ読み取り可能な記憶媒体は、また、出力されたデータまたは出力されるデータを一時的に記憶するために使用され得る。
【0094】
本発明の実施例の明細書と特許請求の範囲および図面における「第1」、「第2」などの用語は、特定の順序を記述するのではなく、異なる対象を区別するために使用される。またに、「含む」という用語およびそれらの任意の変形は、非排他的包含を網羅することを意図している。例えば、一連のステップまたはユニットを含むプロセス、方法、装置、製品またはデバイスは、リストされたステップまたはモジュールに限定されず、リストされていないステップまたはモジュールを含めるか、またはこれらのプロセス、方法、装置、製品またはデバイスに対する固有の他のステップまたはユニットも含む。
【0095】
本明細書に開示された実施例に関連して説明された各例のユニットおよびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、または両方の組み合わせで実現され得ることを当業者は認識することができ、ハードウェアおよびソフトウェアの互換性を明確に説明するために、上述の説明では、各例の構成およびステップについて、機能に従って一般的に説明した。これらの機能がハードウェア方式で実現されるかソフトウェア方式で実現れるかは、技術案の特定の応用および設計の制約に依存する。当業者は、説明された機能を実現するために、各特定の応用に対して異なる方法を使用することができるが、このような実現は、本願の範囲を超えているとは考えられない。
【0096】
本願の実施例によって提供される方法および関連装置は、本願の実施例によって提供される方法フローチャートおよび/または構造概略図を参照しながら説明され、具体的には、方法フローチャートおよび/または構造概略図の各フローおよび/またはブロック、ならびに、フローチャートおよび/またはブロック図におけるフローおよび/またはブロックの組み合わせが、コンピュータプログラム命令によって実現され得る。これらのコンピュータプログラム命令は、1つのマシンを生成するように、汎用コンピュータ、専用コンピュータ、組み込みプロセッサ、または他のプログラマブルデータ処理デバイスのプロセッサに提供されることができ、これにより、コンピュータまたは他のプログラマブルデータ処理デバイスのプロセッサによって実行される命令は、フローチャートの1つまたは複数のフローおよび/または構造概略図の1つまたは複数のブロックにおいて指定された機能を実現するための装置が生成される。これらのコンピュータプログラム命令は、コンピュータまたは他のプログラマブルデータ処理デバイスに特定の方式で動作させるようにブートを行うことができるコンピュータ読み取り可能なメモリにも記憶され得て、これにより、コンピュータ読み取り可能なメモリに記憶されている命令は、命令装置を含む製品を生成し、当該命令装置が、フローチャートの1つまたは複数のフローおよび/または構造概略図の1つまたは複数のブロックにおいて指定された機能を実現する。これらのコンピュータプログラム命令は、コンピュータまたは他のプログラマブルデータ処理デバイスにロードされ得て、これにより、コンピュータまたは他のプログラマブルデバイスが、一連の動作ステップを実行することで、コンピュータによって実現される処理を生成し、これによって、コンピュータまたは他のプログラマブルデバイス上で実行される命令は、フローチャートの1つまたは複数のフローおよび/または構造概略図の1つまたは複数のブロックにおいて指定された機能を実現するためのステップを提供する。
【0097】
以上開示されたものは、本願の好適な実施例に過ぎず、勿論、これにより本願の特許請求の範囲を限定することはできなく、したがって、本願の請求項による同等の変化は、依然として本願がカバーする範囲に属する。
【国際調査報告】