JP2021037098A - ビデオゲーム処理プログラム、及びビデオゲーム処理システム - Google Patents

ビデオゲーム処理プログラム、及びビデオゲーム処理システム Download PDF

Info

Publication number
JP2021037098A
JP2021037098A JP2019160517A JP2019160517A JP2021037098A JP 2021037098 A JP2021037098 A JP 2021037098A JP 2019160517 A JP2019160517 A JP 2019160517A JP 2019160517 A JP2019160517 A JP 2019160517A JP 2021037098 A JP2021037098 A JP 2021037098A
Authority
JP
Japan
Prior art keywords
waypoints
function
video game
server
arrangement
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2019160517A
Other languages
English (en)
Inventor
陽一郎 三宅
Yoichiro Miyake
陽一郎 三宅
長谷川 誠
Makoto Hasegawa
誠 長谷川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Square Enix Co Ltd
Original Assignee
Square Enix Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Square Enix Co Ltd filed Critical Square Enix Co Ltd
Priority to JP2019160517A priority Critical patent/JP2021037098A/ja
Priority to US17/006,621 priority patent/US11241621B2/en
Priority to CN202010902501.4A priority patent/CN112439198A/zh
Publication of JP2021037098A publication Critical patent/JP2021037098A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/56Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/355Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an encoded video stream for transmitting to a mobile phone or a thin client
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/69Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor by enabling or updating specific game elements, e.g. unlocking hidden features, items, levels or versions
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/53Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
    • A63F2300/538Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing for performing operations on behalf of the game client, e.g. rendering
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/57Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of game services offered to the player

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)
  • Navigation (AREA)
  • Processing Or Creating Images (AREA)

Abstract

【課題】オブジェクトの移動経路の探索に要する処理負荷を軽減させる。【解決手段】ナビゲーションメッシュ上に配置したウェイポイントの一部を間引く。ウェイポイントの配置に所定の配置規則(例えば、塗りつぶしアルゴリズム)を用いる。ウェイポイントの間引きには、所定の選択規則(例えば、ランダム選択)を用いる。間引き後のウェイポイントの配置に基づいて、オブジェクトの移動経路を探索する。複数のウェイポイントを、所定の分類規則に従ってグループ分けすることで複数の領域を生成し、複数の領域に基づいて移動領域を決定した後、移動領域に含まれるウェイポイントの配置に基づいて、移動経路を探索する構成としてもよい。【選択図】図3

Description

本発明の実施形態の少なくとも1つは、仮想空間における移動経路の探索に関する機能をサーバに実現させるためのビデオゲーム処理プログラム、及びビデオゲーム処理システムに関する。
従来、ビデオゲームにおいてキャラクタを移動させるための技術が種々提案されている。
このような技術には、ビデオゲームを構成する仮想空間に関する位置情報を用いてキャラクタの移動経路を探索するものがあり、ナビゲーションメッシュとウェイポイントが利用される。そして、移動経路の探索に要する処理負荷の増大を抑制するために、探索領域の所定範囲に配される経由候補位置の間隔よりも、所定範囲外に配される経由候補位置の間隔の方が大きくなるように、探索領域の経由候補位置の配置を決定するものもある(特許文献1参照)。
特開2012−213485号公報
しかし、従来の技術では、探索対象とするウェイポイント(経由候補位置)の数が増えるほど、ウェイポイントの配置および配置されたウェイポイントを対象とする経路探索に要する処理負荷が増大するため、キャラクタなど、仮想空間を移動可能なオブジェクトの移動を制御する際の処理負荷が過大になる場合があった。
本発明の少なくとも1つの実施形態の目的は、上記課題を解決し、オブジェクトの移動経路の探索に要する処理負荷を軽減させることである。
非限定的な観点によると、本発明の一実施形態に係るビデオゲーム処理プログラムは、仮想空間における移動経路の探索に関する機能をサーバに実現させるためのビデオゲーム処理プログラムであって、前記サーバに、仮想空間におけるオブジェクトの移動可能範囲に対応するナビゲーションメッシュを設定する設定機能と、設定した前記ナビゲーションメッシュ上に、所定の配置規則に従って複数のウェイポイントを配置する配置機能と、配置した前記複数のウェイポイントのうち、所定の選択規則に従って選択されたウェイポイントを間引く間引き機能と、間引きされた前記複数のウェイポイントの配置に基づいて、前記オブジェクトの移動経路を探索する探索機能とを実現させるためのものである。
非限定的な観点によると、本発明の一実施形態に係るビデオゲーム処理システムは、通信ネットワークと、サーバと、ユーザ端末とを備え、仮想空間における移動経路の探索に関する処理を行うビデオゲーム処理システムであって、仮想空間におけるオブジェクトの移動可能範囲に対応するナビゲーションメッシュを設定する設定手段と、設定された前記ナビゲーションメッシュ上に、所定の配置規則に従って複数のウェイポイントを配置する配置手段と、配置された前記複数のウェイポイントのうち、所定の選択規則に従って選択されたウェイポイントを間引く間引き手段と、間引きされた前記複数のウェイポイントの配置に基づいて、前記オブジェクトの移動経路を探索する探索手段とを含むことを特徴とする。
非限定的な観点によると、本発明の一実施形態に係るビデオゲーム処理プログラムは、仮想空間における移動経路の探索に関する機能をユーザ端末に実現させるためのビデオゲーム処理プログラムであって、前記ユーザ端末に、仮想空間におけるオブジェクトの移動可能範囲に対応するナビゲーションメッシュを設定する設定機能と、設定した前記ナビゲーションメッシュ上に、所定の配置規則に従って複数のウェイポイントを配置する配置機能と、配置した前記複数のウェイポイントのうち、所定の選択規則に従って選択されたウェイポイントを間引く間引き機能と、間引きされた前記複数のウェイポイントの配置に基づいて、前記オブジェクトの移動経路を探索する探索機能とを実現させるためのものである。
本願の各実施形態により1または2以上の不足が解決される。
本発明の実施形態の少なくとも一つに対応するビデオゲーム処理システムの構成の例を示すブロック図である。 本発明の実施形態の少なくとも一つに対応するサーバの構成を示すブロック図である。 本発明の実施形態の少なくとも一つに対応するゲーム処理の例を示すフローチャートである。 本発明の実施形態の少なくとも一つに対応するゲーム処理におけるサーバ側の動作の例を示すフローチャートである。 本発明の実施形態の少なくとも一つに対応するゲーム処理における端末側の動作の例を示すフローチャートである。 本発明の実施形態の少なくとも一つに対応するサーバの構成を示すブロック図である。 本発明の実施形態の少なくとも一つに対応するゲーム処理の例を示すフローチャートである。 本発明の実施形態の少なくとも一つに対応するサーバの構成を示すブロック図である。 本発明の実施形態の少なくとも一つに対応するゲーム処理の例を示すフローチャートである。 本発明の実施形態の少なくとも一つに対応するサーバの構成を示すブロック図である。 本発明の実施形態の少なくとも一つに対応するゲーム処理の例を示すフローチャートである。 本発明の実施形態の少なくとも一つに対応するサーバの構成を示すブロック図である。 本発明の実施形態の少なくとも一つに対応するウェイポイントの間引きの例について説明するための説明図である。 本発明の実施形態の少なくとも一つに対応する間引いてはいけないウェイポイントの例について説明するための説明図である。 本発明の実施形態の少なくとも一つに対応する領域を生成する方法の例について説明するための説明図である。 本発明の実施形態の少なくとも一つに対応する情報の格納状態の例について説明するための説明図である。 本発明の実施形態の少なくとも一つに対応するゲーム処理の例を示すフローチャートである。
以下、本発明の実施形態の例について図面を参照して説明する。なお、以下で説明する各実施形態の例における各種構成要素は、矛盾等が生じない範囲で適宜組み合わせ可能である。また、ある実施形態の例として説明した内容については、他の実施形態においてその説明を省略している場合がある。また、各実施形態の特徴部分に関係しない動作や処理については、その内容を省略している場合がある。さらに、以下で説明する各種フローを構成する各種処理の順序は、処理内容に矛盾等が生じない範囲で順不同である。
[第1の実施形態]
図1は、本発明の一実施の形態におけるビデオゲーム処理システム100の構成の例を示すブロック図である。図1に示すように、ビデオゲーム処理システム100は、ビデオゲーム処理サーバ10(サーバ10)と、ビデオゲーム処理システム100のユーザが使用するユーザ端末20,201〜20N(Nは任意の整数)とを含む。なお、ビデオゲーム処理システム100の構成はこれに限定されず、単一のユーザ端末を複数のユーザが使用する構成としてもよいし、複数のサーバを備える構成としてもよい。
サーバ10と複数のユーザ端末20,201〜20Nは、それぞれインターネットなどの通信ネットワーク30に接続されている。なお、図示しないが、複数のユーザ端末20,201〜20Nは、通信業者によって管理される基地局と無線通信回線によるデータ通信を行うことによって、通信ネットワーク30と接続する。
ビデオゲーム処理システム100は、サーバ10と複数のユーザ端末20,201〜20Nとを備えることにより、ユーザの操作に応じて各種処理を実行するための各種機能を実現する。
サーバ10は、ビデオゲーム処理システム100の管理者によって管理され、複数のユーザ端末20,201〜20Nに対して各種処理に関する情報を提供するための各種機能を有する。本例において、サーバ10は、WWWサーバなどの情報処理装置によって構成され、各種情報を格納する記憶媒体を備える。なお、サーバ10は、制御部や通信部などコンピュータとして各種処理を行うための一般的な構成を備えるが、ここでの説明は省略する。また、ビデオゲーム処理システム100においては、複数のユーザ端末20,201〜20Nそれぞれにかかる処理負荷を軽減させるといった観点から、各種情報はサーバ10が管理することが好ましい。ただし、各種情報を記憶する記憶部は、サーバ10がアクセス可能な状態で記憶領域を備えていればよく、例えば専用の記憶領域をサーバ10の外部に有する構成とされていてもよい。
図2は、サーバ10の構成の例であるサーバ10Aの構成を示すブロック図である。図2に示すように、サーバ10Aは、設定部11と、配置部12と、間引き部13と、探索部14とを少なくとも備える。
設定部11は、仮想空間におけるオブジェクトの移動可能範囲に対応するナビゲーションメッシュを設定する機能を有する。
ここで、オブジェクトとは、仮想空間に配置可能なものを意味する。オブジェクトの構成は特に限定されないが、端末20のユーザ(あるいは、プレイヤ。)が認識し得るものであることが好ましい。オブジェクトの例には、ユーザが操作可能なキャラクタ(プレイヤキャラクタ)や、ユーザが操作不能なキャラクタ(ノンプレイヤキャラクタ)がある。
また、移動可能範囲とは、仮想空間においてオブジェクトによる移動が許容された範囲を意味する。移動可能範囲の構成は特に限定されず、2Dマップであってもよいし、3Dマップであってもよい。
また、移動可能範囲に対応するナビゲーションメッシュを設定するとは、仮想空間における移動可能範囲にナビゲーションメッシュを対応付けることを意味する。ナビゲーションメッシュを設定するための構成は、特に限定されず、例えば、プレイヤの初期位置から地続きのポリゴンに対して通行可能フラグを立てる構成がある。
配置部12は、設定したナビゲーションメッシュ上に、所定の配置規則に従って複数のウェイポイントを配置する機能を有する。
ここで、ウェイポイントとは、ビデオゲームに関する情報が対応付け可能な地点情報を意味する。すなわち、ウェイポイントとは、ゲーム上必要な情報を埋め込んでおく土台としての役割を有する。ウェイポイントの構成は、ナビゲーションメッシュ上の位置を特定可能であれば特に限定されないが、経路探索の目的に応じて有用となり得る情報が対応付け可能な構成であることが好ましい。このような構成の例には、3D空間にけるXYZ位置と、ウェイポイントの下のナビメッシュポリゴンIDとを含む構成がある。
また、所定の配置規則に従って複数のウェイポイントを配置するための構成は特に限定されず、複数の配置規則を使い分ける構成としてよい。配置規則の例には、プレイヤの初期位置を基準として、塗りつぶしアルゴリズム(Floodfill)でウェイポイントを配置していく規則がある。
間引き部13は、配置した複数のウェイポイントのうち、所定の選択規則に従って選択されたウェイポイントを間引く機能を有する。
ここで、所定の選択規則に従ってウェイポイントを選択するための構成は特に限定されず、ランダムに選択する構成としてもよい。このような構成の例には、乱数を用いることでランダム性を設けた規則により、配置されたウェイポイントのうち所定割合のウェイポイントを選択する構成がある。
また、ウェイポイントを間引くとは、経路探索の対象から除外することを意味する。ウェイポイントを間引くための構成は特に限定されず、情報を削除する構成としてもよいし、情報は残してき、経路探索の対象とはしないことを記録する構成としてもよい。
探索部14は、間引き後の複数のウェイポイントの配置に基づいて、オブジェクトの移動経路を探索する機能を有する。
ここで、オブジェクトの移動経路を探索するとは、オブジェクトが移動する経路を複数のウェイポイントをつなぐことで定義することを意味する。移動経路を探索するための構成は特に限定されないが、探索条件を満たす1または複数の経路を探索可能な構成であることが好ましい。このような構成の例には、各ウェイポイントをノードとして公知の経路探索技術を採用する構成がある。
複数のユーザ端末20,201〜20Nは、それぞれ、ユーザによって管理され、例えば携帯電話端末やPDA(Personal Digital Assistants)、携帯型ゲーム装置や所謂ウェアラブルデバイスなどのネットワーク配信型のゲームを行うことが可能な通信端末によって構成される。なお、ビデオゲーム処理システム100が含み得るユーザ端末の構成は上述した例に限定されず、ユーザが合成画像を認識し得る構成であればよい。ユーザ端末の構成の他の例には、各種通信端末を組み合わせたものやパーソナルコンピュータ、据置型ゲーム装置がある。
また、複数のユーザ端末20,201〜20Nは、それぞれ、通信ネットワーク30に接続し、サーバ10との通信を行うことにより各種処理を実行するためのハードウェア(例えば、座標に応じたブラウザ画面やゲーム画面を表示する表示装置など)およびソフトウェアを備える。なお、複数のユーザ端末20,201〜20Nそれぞれは、サーバ10を介さずに互いに直接通信を行うこともできる構成とされていてもよい。
次に、本例のビデオゲーム処理システム100(システム100)の動作について説明する。
図3は、システム100が実行するゲーム処理の例を示すフローチャートである。本例におけるゲーム処理では、ビデオゲームの進行を制御することに関連する処理が行われる。以下、サーバ10Aとユーザ端末20(端末20)とが、ゲーム処理を実行する場合を例にして説明する。
ゲーム処理は、例えばサーバ10Aにアクセスした端末20がウェイポイントの配置条件を満たした場合に開始される。以下、端末20を操作するユーザが、移動経路の探索要求を入力した場合を例にして説明する。
サーバ10Aは、ゲーム処理において、先ず、ナビゲーションメッシュを設定する(ステップS11)。本例においてサーバ10Aは、端末20に提供する仮想空間を特定し、特定した仮想空間でオブジェクトが移動可能な範囲に対応するナビゲーションメッシュを設定する。
サーバ10Aは、ナビゲーションメッシュを設定すると、ウェイポイントを配置する(ステップS12)。本例においてサーバ10Aは、設定したナビゲーションメッシュ上に、所定の配置規則に従って複数のウェイポイントを配置する。
サーバ10Aは、ウェイポイントを配置すると、ウェイポイントを間引く(ステップS13)。本例においてサーバ10Aは、配置した複数のウェイポイントのうち、所定の選択規則に従って選択されたウェイポイントを間引く。
サーバ10Aは、ウェイポイントを間引くと、移動経路を探索する(ステップS14)。本例においてサーバ10Aは、仮想空間に配置された複数のウェイポイントの配置に基づいて、オブジェクトの移動経路を探索する。
図4は、ゲーム処理におけるサーバ10A側の動作の例を示すフローチャートである。ここでは、システム100におけるサーバ10Aの動作について改めて説明する。
サーバ10Aは、ゲーム処理において、先ず、ナビゲーションメッシュを設定し(ステップS101)、設定したナビゲーションメッシュ上にウェイポイントを配置し(ステップS102)、配置した複数のウェイポイントから一部のウェイポイントを間引き(ステップ103)、間引いた後に仮想空間に残ったウェイポイントの配置に基づいて移動経路を探索する(ステップ104)。
図5は、端末20がゲーム処理を実行する場合の端末20側の動作の例を示すフローチャートである。以下、端末20が、単体でゲーム処理を実行する場合を例にして説明する。なお、端末20の構成については、サーバ10から各種情報を受信することを除きサーバ10の構成と同様の機能を備えるものであるため、重複説明を避ける観点から記載を省略する。
端末20は、ゲーム処理において、先ず、ナビゲーションメッシュを設定し(ステップS201)、設定したナビゲーションメッシュ上にウェイポイントを配置し(ステップS202)、配置した複数のウェイポイントから一部のウェイポイントを間引き(ステップ203)、間引いた後に仮想空間に残ったウェイポイントの配置に基づいて移動経路を探索する(ステップ204)。本例において端末20は、サーバ10Aと通信することで、各ステップで用いる情報を取得する。なお、端末20が、自身が備える記憶部を参照して各ステップで用いる情報を特定する構成としてもよい。
以上に説明したように、第1の実施形態の一側面として、仮想空間における移動経路の探索に関する機能を備えたサーバ10Aが、設定部11と、配置部12と、間引き部13と、探索部14とを備える構成としているので、仮想空間におけるオブジェクトの移動可能範囲に対応するナビゲーションメッシュを設定し、設定したナビゲーションメッシュ上に、所定の配置規則に従って複数のウェイポイントを配置し、配置した複数のウェイポイントのうち、所定の選択規則に従って選択されたウェイポイントを間引き、間引き後の複数のウェイポイントの配置に基づいて、オブジェクトの移動経路を探索し、オブジェクトの移動経路の探索に要する処理負荷を軽減させることができる。
すなわち、ウェイポイントを配置するだけでなく、配置後に間引くことで、探索の対象とする情報量を減らすことができるので、オブジェクトの移動経路の探索に要する処理負荷を軽減させることができる。
なお、上述した実施の形態の例では特に言及していないが、設定部11と、配置部12と、間引き部13とによる処理の時機は特に限定されず、ビデオゲームの開発時であってもよいし、ビデオゲームのプレイ時であってもよい。すなわち、探索部14が、プレイヤがビデオゲームをプレイするより前に生成された情報を読み出し、読みだした情報をビデオゲームの状況に応じて更新して、移動経路を探索する構成としてもよい。また、探索部14が、ビデオゲームの進行に応じてリアルタイムに生成された情報(例えば、ウェイポイントの配置や、生成された領域)を用いて移動経路を探索する構成としてもよい。
[第2の実施形態]
図6は、ビデオゲーム処理サーバ10の例であるビデオゲーム処理サーバ10B(サーバ10B)の構成を示すブロック図である。本例において、サーバ10Bは、設定部11と、配置部12と、間引き部13Bと、探索部14とを少なくとも備える。
間引き部13Bは、複数のウェイポイントのそれぞれと他のウェイポイントとの接続情報と、ビデオゲームに関する情報とを対応付けて記憶する所定の記憶手段(図示せず)を参照し、選択されたウェイポイントが所定の禁止条件を満たす場合、当該選択されたウェイポイントを間引かない機能を有する。
ここで、禁止条件の内容は特に限定されないが、間引くことが経路探索の弊害になるウェイポイントを表す内容であることが好ましい。このような内容の例には、間引くと間引き後の距離が開きすぎるウェイポイントがある。
また、選択されたウェイポイントを間引かないための構成は特に限定されないが、間引かないと判定されたウェイポイントが、同処理において再度選択されない構成であることが好ましい。このような構成の例には、選択後の判定で間引かないと判定したウェイポイントに識別情報を設定する構成がある。
図7は、システム100が実行するゲーム処理の例を示すフローチャートである。以下、サーバ10Bと、端末20の動作を例にして説明する。なお、サーバ10Bと端末20それぞれの動作を示すフローチャートについては、重複説明を避ける観点から記載を省略する。
サーバ10Bは、ゲーム処理において、ウェイポイントを配置すると、ウェイポイントを間引く(ステップS2−11)。ただし、サーバ10Bは、禁止条件を満たすウェイポイントは間引かない。本例においてサーバ10Bは、間引く対象として選択したウェイポイントについて、所定情報を参照することで禁止条件を満たすか否か判定し、禁止条件を満たすウェイポイントを間引く対象から除外する。
以上に説明したように、第2の実施形態の一側面として、サーバ10Bが、設定部11と、配置部12と、間引き部13Bと、探索部14とを備える構成としているので、複数のウェイポイントのそれぞれと他のウェイポイントとの接続情報と、ビデオゲームに関する情報とを対応付けて記憶する所定の記憶手段を参照し、選択されたウェイポイントが所定の禁止条件を満たす場合、当該選択されたウェイポイントを間引かないようにし、移動経路の探索に残しておくべきウェイポイントを間引くことを防止できる。また、間引く前に全てのウェイポイントから除外すべきでないウェイポイントを判定する場合と比べ、判定対象とするウェイポイントが「間引く対象として選択されたウェイポイント」に限定される分、処理負荷を軽減させることができる。
[第3の実施形態]
図8は、ビデオゲーム処理サーバ10の例であるビデオゲーム処理サーバ10C(サーバ10C)の構成を示すブロック図である。本例において、サーバ10Cは、設定部11と、配置部12と、間引き部13と、探索部14Cと、生成部15と、決定部16とを少なくとも備える。
生成部15は、仮想空間に配置した複数のウェイポイントを、所定の分類規則に従ってグループ分けすることで複数の領域を生成する機能を有する。
ここで、所定の分類規則に従ってグループ分けするための構成は特に限定されず、ウェイポイントの配置に基づいて分類する構成としてもよいし、ウェイポイントに対応付けされた情報に基づいて分類する構成としてもよい。このような構成の例には、各ウェイポイントの移動不可領域(例えば、壁)からの距離を分水嶺(Watershed)アルゴリズムで分類(あるいは、分類後の各ウェイポイントの配置によりナビゲーションメッシュを分割)する構成がある。
また、グループ分けすることで複数の領域を生成するとは、グループに属するウェイポイントが位置する仮想空間(または設定されたナビゲーションメッシュ)における範囲を領域として定義することを意味する。複数の領域を生成するための構成は特に限定されず、グループに属するウェイポイント群を示す情報を領域として生成する構成としてもよいし、グループに属するウェイポイントの配置からナビゲーションメッシュの一部を示す情報を領域として生成する構成としてもよい。
決定部16は、生成した複数の領域の配置に基づいて、オブジェクトが移動する領域(移動領域)を決定する機能を有する。
ここで、移動領域を決定するための構成は特に限定されず、移動開始位置が含まれる領域と、移動終了位置が含まれる領域とを繋ぐ複数の領域を移動領域として決定可能な構成であればよい。このような構成の例には、各領域をノードとして公知の経路探索技術を利用する構成がある。なお、各領域の接続関係を、各領域の境界に位置するウェイポイントに対応付けされた情報を用いて判定する構成としてもよい。
探索部14Cは、決定した移動領域に含まれるウェイポイントに基づいて、オブジェクトの移動経路を探索する機能を有する。
ここで、移動領域に含まれるウェイポイントに基づいて移動経路を探索するための構成は特に限定されないが、探索条件を満たす1または複数の経路を探索可能な構成であることが好ましい。このような構成の例には、移動領域に含まれる各ウェイポイントをノードとして公知の経路探索技術を採用する構成がある。
図9は、システム100が実行するゲーム処理の例を示すフローチャートである。以下、サーバ10Cと、端末20の動作を例にして説明する。なお、サーバ10Cと端末20それぞれの動作を示すフローチャートについては、重複説明を避ける観点から記載を省略する。
サーバ10Cは、ウェイポイントを間引くと、複数の領域を生成する(ステップS3−11)。本例においてサーバ10Cは、仮想空間に配置した複数のウェイポイントを、所定の分類規則に従ってグループ分けすることで複数の領域を生成する。
サーバ10Cは、複数の領域を生成すると、移動領域を決定する(ステップS3−12)。本例においてサーバ10Cは、生成した複数の領域の配置に基づいて、移動開始位置が含まれる領域から移動終了位置が含まれる領域までの移動に適した移動領域を決定する。
サーバ10Cは、移動領域を決定すると、移動領域に含まれるウェイポイントに基づいて、移動経路を探索する(ステップS3−13)。本例においてサーバ10Cは、決定した移動領域に含まれるウェイポイントに基づいて、移動開始位置から移動終了位置までの移動経路を探索する。
以上に説明したように、第3の実施形態の一側面として、サーバ10Cが、設定部11と、配置部12と、間引き部13と、探索部14Cと、生成部15と、決定部16を備える構成としているので、仮想空間に配置した複数のウェイポイントを、所定の分類規則に従ってグループ分けすることで複数の領域を生成し、生成した複数の領域の配置に基づいて、オブジェクトが移動する領域(移動領域)を決定し、決定した移動領域に含まれるウェイポイントに基づいて、オブジェクトの移動経路を探索し、段階的に移動経路を探索できるようになり、移動経路の探索に要する処理負荷を軽減させることができる。
[第4の実施形態]
図10は、ビデオゲーム処理サーバ10の例であるビデオゲーム処理サーバ10D(サーバ10D)の構成を示すブロック図である。本例において、サーバ10Dは、設定部11と、配置部12と、間引き部13Dと、探索部14とを少なくとも備える。
間引き部13Dは、複数の領域の境界部分に配置されたウェイポイント以外のウェイポイントを優先して間引く機能を有する。
ここで、複数の領域の境界部分とは、隣のウェイポイントが他の領域に属する部分を意味する。複数の領域の境界部分に配置されたウェイポイント以外のウェイポイントを優先して間引くための構成は特に限定されないが、境界部分に配置されたウェイポイントが少なくとも1つは間引かれない構成が好ましい。このような構成の例には、1つの領域において境界部分に配置されたウェイポイントを間引き対象から除外する構成がある。なお、ウェイポイントを間引くタイミングについては、複数の領域を生成する前とする構成、複数の領域を生成する後とする構成、および複数の領域を生成する前と後の複数行う構成とが考えられる。
図11は、システム100が実行するゲーム処理の例を示すフローチャートである。以下、サーバ10Dと、端末20の動作を例にして説明する。なお、サーバ10Dと端末20それぞれの動作を示すフローチャートについては、重複説明を避ける観点から記載を省略する。
サーバ10Dは、ウェイポイントを配置すると、一部のウェイポイント以外のウェイポイントを優先して間引く(ステップS4−11)。本例においてサーバ10Dは、複数の領域の境界部分に配置されたウェイポイント以外のウェイポイントを優先して間引く。
以上に説明したように、第4の実施形態の一側面として、サーバ10Dが、設定部11と、配置部12と、間引き部13Dと、探索部14とを備える構成としているので、複数の領域の境界部分に配置されたウェイポイント以外のウェイポイントを優先して間引き、間引き過ぎを防止することができる。
[第5の実施形態]
図12は、システム100(図1参照)におけるビデオゲーム処理サーバ10の例であるビデオゲーム処理サーバ10Z(サーバ10Z)の構成を示すブロック図である。本例において、サーバ10Zは、設定部11Zと、配置部12Zと、間引き部13Zと、探索部14Zと、生成部15Zと、決定部16Zとを少なくとも備える。
設定部11Zは、仮想空間におけるオブジェクトの移動可能範囲に対応するナビゲーションメッシュを設定する機能を有する。以下、兵士や兵器が登場する3Dカバーシューティングゲームにおける仮想空間にナビゲーションメッシュを設定する場合を例にして説明する。
本例において、敵兵は、マップの端からプレイヤを捜索できる。また、マップ上のどこでも戦闘ができる。そのため、歩きや走りなど、普通の移動はナビゲーションメッシュ上で行われる。
ここで、敵の機能を実現するため、サーバ10Zは、マップの端から端の長大なパスを検索できる。本例では、パスの検索負荷を抑制するため、階層型のパス検索を行う。また、敵は配置位置の付近だけでなく、プレイヤが行ける所に行ける。すなわち、カバーの乗り越えやよじ登り、ドア、窓、はしごを移動できる。本例では、移動の自由度を担保するため、ナビゲーションメッシュが連続していない場所をジャンプリンクで通行させる。
また、ナビゲーションに関する機能として、本例では、ナビゲーションメッシュ(ナビメッシュ)による地続き箇所の移動と、ジャンプリンクによるメッシュ外の移動と、長大なパス検索負荷を下げるための階層構造と、上記のデータを自動生成する機能とについても説明する。
ここで、上記機能に用いる地形表現の例には、ナビメッシュと、ウェイポイントと、接続グラフと、ウェイポイントを元にした上位層グラフとがある。
ナビメッシュについては、公知の技術(例えば、recast navigation)を使用するので、ここでの詳細な説明は省略する。なお、本例では、プレイヤ初期位置から地続きのポリゴンに対して通行可能フラグを立てること等を行う。プレイヤは一定の高さの壁をよじ登る事ができるので、地続きじゃないよじ登った先のポリゴンにも、通行可能フラグを立てる。この場合、例えば、隣り合うポリゴンが無いエッジから登れる高さ分ずらした位置付近にあるメッシュを検索し、該当するメッシュが有ればそこから地続きフラグを設定する。
配置部12は、設定したナビゲーションメッシュ上に、所定の配置規則に従って複数のウェイポイントを配置する機能を有する。以下、ナビメッシュ上にオフラインでウェイポイントを自動配置する場合を例にして説明する。
ここで、ウェイポイントとは、ゲーム上必要な情報を埋め込んでおく土台としての役割を担う。本例において、ウェイポイントには、XYZ位置、ポイントの下のナビメッシュポリゴンID、LOF(Line of Fire)、ポイント属性、ポイント接続情報、近くのカバーID、近くのドアID、近くのハシゴ・窓ID、射撃カバーリスト、ポイント位置から天井までの高さ、近くのカバーを乗り越えるときの高さ、壁までの距離、ポイントの上に乗っている壊れるギミックID、などの情報が必要に応じて対応付けされる。
また、本例では、プレイヤ初期位置を基準として、塗りつぶしアルゴリズム(Floodfill)でポイントを配置していくことで、ウェイポイントを自動配置する。なお、グリッド状だと必要な位置にポイントが出来ていない場合があるので、任意に追加する構成としてもよい。この場合、仮想空間において各種オブジェクト(例えば、ドア、低カバー、高カバー端、ハシゴ取り付き位置)が位置する場所について、ウェイポイントの追加を受け付ける構成としてもよい。
間引き部13Zは、配置した複数のウェイポイントのうち、所定の選択規則に従って選択されたウェイポイントを間引く機能を有する。以下、ポイントを敷き詰めたあとの処理としてウェイポイントを間引く場合を例にして説明する。なお、間引き後はインデックスが16bit以内に収まる数にすることが好ましい。ポイントのインデックスはあちこちで保存するため増やしたくないためであり、単純に数が多いと検索時の負荷が上がりすぎるためである。
図13は、ウェイポイントの間引きの例について説明するための説明図である。本例では、複数のウェイポイントを(例えば、ウェイポイント1311やウェイポイント1312)、プレイヤ初期位置1301を基準に自動配置した後(図13A参照)、ランダムでポイントを選ぶことで、配置したウェイポイントを間引く(図13B参照)。また、本例では、間引いてはいけないポイントは間引かない。すなわち、例えば、間引くと間引き後の距離が開きすぎるポイント、間引くとグラフが切断されるポイント、間引くと遠回りになりすぎるポイント、上位層グラフノードの境界、ドアなどのアクションのトリガーになる場所、などに対応するウェイポイントが選択された場合には、当該ウェイポイントを間引かない。
図14は、間引いてはいけないウェイポイントの例について説明するための説明図である。図14に示すように、ナビメッシュが設定された範囲1401において、ウェイポイント1411を削ってしまうと、上と下の接続がなくなってしまう。すなわち、ウェイポイント1412とウェイポイント1413からはウェイポイント1411に対してナビメッシュ上のレイキャストが通らない。そのため、ウェイポイント1411は間引かない。
探索部14Zは、間引き後の複数のウェイポイントの配置に基づいて、オブジェクトの移動経路を探索する機能を有する。以下、敵位置からプレイヤ位置までの経路や、敵位置から目標オブジェクトまでの経路、あるいはプレイヤからプレイヤに選択された位置までの経路など、始点から終点までの経路について、配置されたウェイポイントを経由候補地とする公知の経路探索技術を利用して経路探索を実現する場合を例にして説明する。
生成部15Zは、仮想空間に配置した複数のウェイポイントを、所定の分類規則に従ってグループ分けすることで複数の領域を生成する機能を有する。以下、階層型のパス検索のための最上層の構造として、位置的に近いポイントをある程度固めてラベル付けしたもの(AI領域)を生成する場合を例にして説明する。なお、複数の領域間の接続関係を特定するための接続情報は、ラベル境界のポイント接続のものを使用する。すなわち、移動開始位置が含まれる領域から移動目的位置が含まれる領域までに移動するための領域を決定するためには、各領域の境界に位置するウェイポイントに対応付けされている情報を利用する。
本例においてAI領域は、ポイントをある程度のカタマリとして扱う役割を担う。細かすぎず、ざっくりと位置を表現する構成であることが好ましい。また、AI領域は、同じパスを通らないようにするコスト付対象としての役割があり、プレイヤや敵の影響度合いマップ(インフルエンスマップ)などにも利用できる。さらに、AI領域は、位置表現の階層化によるパス検索負荷低減が期待できる。
図15は、領域を生成する方法の例について説明するための説明図である。図15Aに示すように、地形1501から領域(本例におけるAI領域)を生成する場合、地形1501にウェイポイントを敷き詰め、ウェイポイントを接続し、ウェイポイント毎に壁からの距離を設定し、設定した距離を分水嶺(Watershed)アルゴリズムで分割すると、図15Bに示すように、領域S1と領域S2とを生成できる。なお、分水嶺アルゴリズムについて補足すると、壁からの距離を高さとして考えた場合に、ウェイポイント1511を頂点とする山と、ウェイポイント1512を頂点とする山ができ、一番高いところから評価していくと、ウェイポイント1511に先ずラベルを付けられる(ラベル1)。次いで、評価する高度を下げると、紙面左の山の中腹のポイント2つと、紙面右の山の頂上(ウェイポイント1512)を評価することになる。このとき、紙面右の山は頂上なのでラベルを付ける(ラベル2)。紙面左の山の中腹は、紙面左の山の一部であるので、紙面左の山頂のラベルと同じものを付ける(ラベル1)。なお、山の一部かどうかは、隣り合ったポイントですでにラベル付されているかどうかで判断できる。次いで、また高度を下げ、同じ用に処理をして、紙面左の山の麓、紙面右の山の麓のポイントにラベルを付ける。最後に、山でない部分(すなわち、壁からん距離が0または最小と判定された部分)について、隣り合ったポイントからラベルを付ける。以上より、一番下の高度までラベル付けることができる。すなわち、ラベル1のノードとラベル2のノードとによる上位層グラフを生成できる。
また、本例では、生成した領域を所定の調整規則に基づいて調整する。すなわち、複数の領域のうち、所定の分割条件を満たす領域を分割し、所定の併合条件を満たす領域を他の領域に併合する。このような構成とすることで、小さすぎる領域は隣の大きい領域にくっつけ、大きすぎる領域は「長い辺を半分に切る」を繰り返し、一定サイズにすることでゆるく「単位」として扱えるようになる。なお、各領域を一定の範囲に収まるサイズにする構成ではなく、各領域が複数のサイズ条件のうち何れか1つを満たすように分割条件と併合条件が設けられた構成としてもよい。
決定部16Zは、生成した複数の領域の配置に基づいて、オブジェクトが移動する領域(移動領域)を決定する機能を有する。本例では、各領域をノードとして公知の経路探索技術を利用する場合を例にして説明する。
以上より、ナビメッシュ、ウェイポイントグラフ、上位層グラフ、の順でデータ作成を行い、上位層グラフ、ウェイポイントグラフ、ナビメッシュ、の順でパス検索を実現できるようになる。
なお、パス検索で最終的にほしい移動経路は、ビデオゲームの設計者が意図した程度になめらかな移動経路である。すなわち、オブジェクトの種類に応じて、ベジェ曲線、真っ直ぐな線、あるいはオブジェクトの現在位置から目標位置まで地続きじゃなくアクションが必要な線、を導出できる構成であることが好ましい。本例では、上位層グラフレベルで必要なアクションと位置を特定し、ウェイポイントレベルで必要なアクションと位置を特定し、特定した位置の間を地続き移動する移動経路を検索することで、各種線を導出可能にしている。なお、地続き移動の経路については、上位層パスを通し、上位層ノード内でウェイポイントのパスを作成し、全てのノードのウェイポイントを結合し、ポイントパスに沿ったナビメッシュポリゴンリストを作成し、通過するエッジのリストを作成し、エッジの中間点を使用してベジェ曲線を作成することで導出できる。
図16は、サーバ10が備える記憶部(図示せず)に記憶される情報の格納状態の例について説明するための説明図である。図16に示すように、記憶部は、領域番号と、領域に属するウェイポイントの識別情報とを対応付けて領域関連情報として記憶する。
ここで、領域番号とは、生成された領域(例えば、AI領域)の識別情報を意味する。領域番号を作成するための構成は特に限定されないが、複数の領域それぞれを一意に特定可能な構成であることが好ましい。領域番号の例には、ウェイポイントに付されるラベルがある。
図17は、サーバ10Zを備えるシステム100Zが実行するゲーム処理の例を示すフローチャートである。本例におけるゲーム処理では、ウェイポイントの配置に関する処理などが行われる。以下、各処理について説明する。なお、各処理の順序は、処理内容に矛盾等が生じない範囲で順不同である。
ゲーム処理は、例えばサーバ10Zにアクセスした端末20がウェイポイントの配置条件を満たした場合に開始される。以下、端末20を操作するユーザが、移動経路の探索要求を入力した場合を例にして説明する。
システム100Zは、ゲーム処理において、先ず、ナビゲーションメッシュを設定する(ステップS301)。本例ではサーバ10Zが、端末20に提供する仮想空間を特定し、特定した仮想空間でオブジェクトが移動可能な範囲に対応するナビゲーションメッシュを設定する。
システム100Zは、ナビゲーションメッシュを設定すると、ウェイポイントを配置する(ステップS302)。本例ではサーバ10Zが、設定したナビゲーションメッシュ上に、所定の配置規則に従って複数のウェイポイントを配置する。
システム100Zは、ウェイポイントを配置すると、ウェイポイントを間引く(ステップS303)。本例ではサーバ10Zが、配置した複数のウェイポイントのうち、所定の選択規則に従って選択されたウェイポイントを間引く。
システム100Zは、ウェイポイントを間引くと、複数の領域を生成する(ステップS304)。本例ではサーバ10Zが、仮想空間に配置した複数のウェイポイントを、所定の分類規則に従ってグループ分けすることで複数の領域を生成する。
システム100Zは、複数の領域を生成すると、移動領域を決定する(ステップS305)。本例ではサーバ10Zが、生成した複数の領域の配置に基づいて、移動開始位置が含まれる領域から移動終了位置が含まれる領域までの移動に適した移動領域を決定する。
システム100Zは、移動領域を決定すると、移動経路を探索する(ステップS306)。本例ではサーバ10Zが、仮想空間に配置された複数のウェイポイントの配置に基づいて、オブジェクトの移動経路を探索する。
以上に説明したように、第5の実施形態の一側面として、仮想空間における移動経路の探索に関する機能を備えたサーバ10Zが、設定部11Zと、配置部12Zと、間引き部13Zと、探索部14Zと、生成部15Zと、決定部16Zとを備える構成としているので、仮想空間におけるオブジェクトの移動可能範囲に対応するナビゲーションメッシュを設定し、設定したナビゲーションメッシュ上に、所定の配置規則(例えば、塗りつぶしアルゴリズム)に従って複数のウェイポイントを配置し、配置した複数のウェイポイントのうち、所定の選択規則(例えば、ランダム選択)に従って選択されたウェイポイントを間引き、間引き後の複数のウェイポイントの配置に基づいて、オブジェクトの移動経路を探索し、オブジェクトの移動経路の探索に要する処理負荷を軽減させることができる。
すなわち、ウェイポイントを配置するだけでなく、配置後に間引くことで、探索の対象とする情報量を減らすことができるので、オブジェクトの移動経路の探索に要する処理負荷を軽減させることができる。
なお、上述した第5の実施形態の例では特に言及していないが、サーバ10Zが、設定部11Zと、配置部12Zと、間引き部13Zと、生成部15Zと、決定部16Zによる処理の時機は特に限定されず、ビデオゲームの開発時であってもよいし、ビデオゲームのプレイ時であってもよい。すなわち、ナビメッシュの設定、ウェイポイントの配置、AI領域の生成は、経路探索と独立して行われる構成としてもよいし、経路探索と一連の流れで行われる構成としてもよい。このような構成の例には、探索部14Zが、プレイヤがビデオゲームをプレイするより前に生成された情報(例えば、領域関連情報)をビデオゲームの進行に応じて読み出し、読みだした情報をビデオゲームの状況に応じて更新し(例えば、移動可能領域を変更)、更新した情報に基づいて移動経路を探索する構成がある。また、他の例には、探索部14が、ビデオゲームの進行に応じてナビゲーションメッシュを設定し、リアルタイムに生成した情報を用いて移動経路を探索する構成がある。
なお、上述した第5の実施形態の例では特に言及していないが、サーバ10Zが、仮想空間におけるオブジェクトの移動可能範囲に対応するナビゲーションメッシュを設定し、設定したナビゲーションメッシュ上に、所定の配置規則(例えば、塗りつぶしアルゴリズム)に従って複数のウェイポイントを配置し、配置した複数のウェイポイントのうち、所定の選択規則(例えば、ランダム選択)に従って選択されたウェイポイントを間引き、間引きされたウェイポイントの配置を含む探索用情報(例えば、仮想空間の地形表現)を記憶手段に保存する構成としてもよい。この場合、探索用情報を含むビデオゲーム関連情報を取得したビデオゲーム処理装置が、探索用情報に基づいて、仮想空間におけるオブジェクトの移動経路を探索する構成としてもよい。
以上に説明したように、本願の各実施形態により1または2以上の不足が解決される。なお、夫々の実施形態による効果は、非限定的な効果または効果の一例である。
なお、上述した各実施形態では、複数のユーザ端末20,201〜20Nとサーバ10は、自己が備える記憶装置に記憶されている各種制御プログラム(例えば、ビデオゲーム処理プログラム)に従って、上述した各種の処理を実行する。
また、システム100の構成は、上述した各実施形態の例として説明した構成に限定されず、例えばユーザ端末が実行する処理として説明した処理の一部または全部をサーバ10が実行する構成としてもよいし、サーバ10が実行する処理として説明した処理の一部または全部を複数のユーザ端末20,201〜20Nの何れか(例えば、ユーザ端末20)が実行する構成としてもよい。また、サーバ10が備える記憶部の一部または全部を複数のユーザ端末20,201〜20Nの何れかが備える構成としてもよい。すなわち、システム100におけるユーザ端末20とサーバ10のどちらか一方が備える機能の一部または全部を、他の一方が備える構成とされていてもよい。
また、プログラムが、上述した各実施形態の例として説明した機能の一部または全部を、通信ネットワークを含まない装置単体に実現させる構成としてもよい。
[付記]
上述した実施形態の説明は、少なくとも下記発明を、当該発明の属する分野における通常の知識を有する者がその実施をすることができるように記載した。
[1]
仮想空間における移動経路の探索に関する機能をサーバに実現させるためのビデオゲーム処理プログラムであって、
前記サーバに、
仮想空間におけるオブジェクトの移動可能範囲に対応するナビゲーションメッシュを設定する設定機能と、
設定した前記ナビゲーションメッシュ上に、所定の配置規則に従って複数のウェイポイントを配置する配置機能と、
配置した前記複数のウェイポイントのうち、所定の選択規則に従って選択されたウェイポイントを間引く間引き機能と、
間引きされた前記複数のウェイポイントの配置に基づいて、前記オブジェクトの移動経路を探索する探索機能とを
実現させるためのビデオゲーム処理プログラム。
[2]
前記間引き機能では、前記複数のウェイポイントのそれぞれと他のウェイポイントとの接続情報と、前記ビデオゲームに関する情報とを対応付けて記憶する所定の記憶手段を参照し、前記選択されたウェイポイントが所定の禁止条件を満たす場合、当該選択されたウェイポイントを間引かない機能を
実現させるための[1]記載のビデオゲーム処理プログラム。
[3]
前記サーバに、
前記仮想空間に配置した前記複数のウェイポイントを、所定の分類規則に従ってグループ分けすることで複数の領域を生成する生成機能と、
生成した前記複数の領域の配置に基づいて、前記オブジェクトが移動する領域(以下「移動領域」という。)を決定する決定機能とを実現させ、
前記探索機能では、決定した前記移動領域に含まれるウェイポイントに基づいて、前記オブジェクトの移動経路を探索する機能を
実現させるための[1]または[2]記載のビデオゲーム処理プログラム。
[4]
前記間引き機能では、前記複数の領域の境界部分に配置されたウェイポイント以外のウェイポイントを優先して間引く機能を
実現させるための[1]から[3]のうち何れかに記載のビデオゲーム処理プログラム。
[5]
前記間引き機能は、前記複数のウェイポイントが所定数以内になるように前記ウェイポイントを間引く機能を
実現させるための[1]から[4]のうち何れかに記載のビデオゲーム処理プログラム。
[6]
[1]から[5]のうち何れかに記載のビデオゲーム処理プログラムが前記サーバに実現させる機能のうち少なくとも1つの機能を、当該サーバと通信可能なユーザ端末に実現させるためのビデオゲーム処理プログラム。
[7]
[1]から[6]のうち何れかに記載のビデオゲーム処理プログラムがインストールされたサーバ。
[8]
通信ネットワークと、サーバと、ユーザ端末とを備え、仮想空間における移動経路の探索に関する処理を行うビデオゲーム処理システムであって、
仮想空間におけるオブジェクトの移動可能範囲に対応するナビゲーションメッシュを設定する設定手段と、
設定された前記ナビゲーションメッシュ上に、所定の配置規則に従って複数のウェイポイントを配置する配置手段と、
配置された前記複数のウェイポイントのうち、所定の選択規則に従って選択されたウェイポイントを間引く間引き手段と、
間引きされた前記複数のウェイポイントの配置に基づいて、前記オブジェクトの移動経路を探索する探索手段とを含む
ことを特徴とするビデオゲーム処理システム。
[9]
前記サーバが、前記設定手段と、前記配置手段と、前記間引き手段と、前記探索手段とを含み、
前記ユーザ端末が、前記探索手段により探索された前記移動経路を表すゲーム画面を表示装置の表示画面に出力する出力手段を含む
[8]記載のビデオゲーム処理システム。
[10]
仮想空間における移動経路の探索に関する機能をユーザ端末に実現させるためのビデオゲーム処理プログラムであって、
仮想空間におけるオブジェクトの移動可能範囲に対応するナビゲーションメッシュを設定する設定機能と、設定した前記ナビゲーションメッシュ上に、所定の配置規則に従って複数のウェイポイントを配置する配置機能と、配置した前記複数のウェイポイントのうち、所定の選択規則に従って選択されたウェイポイントを間引く間引き機能と、間引きされた前記複数のウェイポイントの配置に基づいて、前記オブジェクトの移動経路を探索する探索機能とを有するサーバから、当該サーバが備える機能に関する情報を受信して当該機能に対応する入出力を行う機能を前記ユーザ端末に
実現させるためのビデオゲーム処理プログラム。
[11]
仮想空間における移動経路の探索に関する機能をユーザ端末に実現させるためのビデオゲーム処理プログラムであって、
前記ユーザ端末に、
仮想空間におけるオブジェクトの移動可能範囲に対応するナビゲーションメッシュを設定する設定機能と、
設定した前記ナビゲーションメッシュ上に、所定の配置規則に従って複数のウェイポイントを配置する配置機能と、
配置した前記複数のウェイポイントのうち、所定の選択規則に従って選択されたウェイポイントを間引く間引き機能と、
間引きされた前記複数のウェイポイントの配置に基づいて、前記オブジェクトの移動経路を探索する探索機能とを
実現させるためのビデオゲーム処理プログラム。
[12]
[11]記載のビデオゲーム処理プログラムが前記ユーザ端末に実現させる機能のうち少なくとも1つの機能を、当該ユーザ端末と通信可能なサーバに実現させるためのビデオゲーム処理プログラム。
[13]
[11]または[12]記載のビデオゲーム処理プログラムがインストールされたユーザ端末。
[14]
仮想空間における移動経路の探索に関する処理を行うビデオゲーム処理方法であって、
仮想空間におけるオブジェクトの移動可能範囲に対応するナビゲーションメッシュを設定する設定処理と、
設定した前記ナビゲーションメッシュ上に、所定の配置規則に従って複数のウェイポイントを配置する配置処理と、
配置した前記複数のウェイポイントのうち、所定の選択規則に従って選択されたウェイポイントを間引く間引き処理と、
間引きされた前記複数のウェイポイントの配置に基づいて、前記オブジェクトの移動経路を探索する探索処理とを含む
ことを特徴とするビデオゲーム処理方法。
[15]
通信ネットワークと、サーバと、ユーザ端末とを備えるビデオゲーム処理システムが、仮想空間における移動経路の探索に関する処理を行うビデオゲーム処理方法であって、
仮想空間におけるオブジェクトの移動可能範囲に対応するナビゲーションメッシュを設定する設定処理と、
設定した前記ナビゲーションメッシュ上に、所定の配置規則に従って複数のウェイポイントを配置する配置処理と、
配置した前記複数のウェイポイントのうち、所定の選択規則に従って選択されたウェイポイントを間引く間引き処理と、
間引きされた前記複数のウェイポイントの配置に基づいて、前記オブジェクトの移動経路を探索する探索処理とを含む
ことを特徴とするビデオゲーム処理方法。
[16]
仮想空間における移動経路の探索に関する機能をコンピュータに実現させるためのビデオゲーム処理プログラムであって、
前記コンピュータに、
仮想空間におけるオブジェクトの移動可能範囲に対応するナビゲーションメッシュを設定する設定機能と、
設定した前記ナビゲーションメッシュ上に、所定の配置規則に従って複数のウェイポイントを配置する配置機能と、
配置した前記複数のウェイポイントのうち、所定の選択規則に従って選択されたウェイポイントを間引く間引き機能とを
実現させるためのビデオゲーム処理プログラム。
[17]
仮想空間における移動経路の探索に関する機能をコンピュータに実現させるためのビデオゲーム処理プログラムであって、
前記コンピュータに、
仮想空間における移動可能範囲に対応するナビゲーションメッシュを設定する設定機能と、設定した前記ナビゲーションメッシュ上に、所定の配置規則に従って複数のウェイポイントを配置する配置機能と、配置した前記複数のウェイポイントのうち、所定の選択規則に従って選択されたウェイポイントを間引く間引き機能と、を用いて生成された情報に基づいて、前記仮想空間に配置されたオブジェクトの移動経路を探索する探索機能を
実現させるためのビデオゲーム処理プログラム。
[18]
仮想空間における移動経路の探索に用いる情報を生成する機能をコンピュータに実現させるためのビデオゲーム処理プログラムであって、
前記コンピュータに、
仮想空間におけるオブジェクトの移動可能範囲に対応するナビゲーションメッシュを設定する設定機能と、
設定した前記ナビゲーションメッシュ上に、所定の配置規則に従って複数のウェイポイントを配置する配置機能と、
配置した前記複数のウェイポイントのうち、所定の選択規則に従って選択されたウェイポイントを間引く間引き機能と、
間引きされたウェイポイントの配置を含む探索用情報を記憶手段に保存する保存機能とを
実現させるためのビデオゲーム処理プログラム。
本発明の実施形態の一つによれば、オブジェクトの移動経路の探索に要する処理負荷を軽減させるのに有用である。
10 ビデオゲーム処理サーバ
20,201〜20N ユーザ端末
11 設定部
12 配置部
13 間引き部
14 探索部
15 生成部
16 決定部
30 通信ネットワーク
100 ビデオゲーム処理システム

Claims (6)

  1. 仮想空間における移動経路の探索に関する機能をサーバに実現させるためのビデオゲーム処理プログラムであって、
    前記サーバに、
    仮想空間におけるオブジェクトの移動可能範囲に対応するナビゲーションメッシュを設定する設定機能と、
    設定した前記ナビゲーションメッシュ上に、所定の配置規則に従って複数のウェイポイントを配置する配置機能と、
    配置した前記複数のウェイポイントのうち、所定の選択規則に従って選択されたウェイポイントを間引く間引き機能と、
    間引きされた前記複数のウェイポイントの配置に基づいて、前記オブジェクトの移動経路を探索する探索機能とを
    実現させるためのビデオゲーム処理プログラム。
  2. 前記間引き機能では、前記複数のウェイポイントのそれぞれと他のウェイポイントとの接続情報と、前記ビデオゲームに関する情報とを対応付けて記憶する所定の記憶手段を参照し、前記選択されたウェイポイントが所定の禁止条件を満たす場合、当該選択されたウェイポイントを間引かない機能を
    実現させるための請求項1記載のビデオゲーム処理プログラム。
  3. 前記サーバに、
    前記仮想空間に配置した前記複数のウェイポイントを、所定の分類規則に従ってグループ分けすることで複数の領域を生成する生成機能と、
    生成した前記複数の領域の配置に基づいて、前記オブジェクトが移動する領域(以下「移動領域」という。)を決定する決定機能とを実現させ、
    前記探索機能では、決定した前記移動領域に含まれるウェイポイントに基づいて、前記オブジェクトの移動経路を探索する機能を
    実現させるための請求項1または請求項2記載のビデオゲーム処理プログラム。
  4. 前記間引き機能では、前記複数の領域の境界部分に配置されたウェイポイント以外のウェイポイントを優先して間引く機能を
    実現させるための請求項1から請求項3のうち何れかに記載のビデオゲーム処理プログラム。
  5. 通信ネットワークと、サーバと、ユーザ端末とを備え、仮想空間における移動経路の探索に関する処理を行うビデオゲーム処理システムであって、
    仮想空間におけるオブジェクトの移動可能範囲に対応するナビゲーションメッシュを設定する設定手段と、
    設定された前記ナビゲーションメッシュ上に、所定の配置規則に従って複数のウェイポイントを配置する配置手段と、
    配置された前記複数のウェイポイントのうち、所定の選択規則に従って選択されたウェイポイントを間引く間引き手段と、
    間引きされた前記複数のウェイポイントの配置に基づいて、前記オブジェクトの移動経路を探索する探索手段とを含む
    ことを特徴とするビデオゲーム処理システム。
  6. 仮想空間における移動経路の探索に関する機能をユーザ端末に実現させるためのビデオゲーム処理プログラムであって、
    前記ユーザ端末に、
    仮想空間におけるオブジェクトの移動可能範囲に対応するナビゲーションメッシュを設定する設定機能と、
    設定した前記ナビゲーションメッシュ上に、所定の配置規則に従って複数のウェイポイントを配置する配置機能と、
    配置した前記複数のウェイポイントのうち、所定の選択規則に従って選択されたウェイポイントを間引く間引き機能と、
    間引きされた前記複数のウェイポイントの配置に基づいて、前記オブジェクトの移動経路を探索する探索機能とを
    実現させるためのビデオゲーム処理プログラム。
JP2019160517A 2019-09-03 2019-09-03 ビデオゲーム処理プログラム、及びビデオゲーム処理システム Pending JP2021037098A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2019160517A JP2021037098A (ja) 2019-09-03 2019-09-03 ビデオゲーム処理プログラム、及びビデオゲーム処理システム
US17/006,621 US11241621B2 (en) 2019-09-03 2020-08-28 Non-transitory computer-readable medium and video game processing system
CN202010902501.4A CN112439198A (zh) 2019-09-03 2020-09-01 非暂态计算机可读介质和视频游戏处理系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019160517A JP2021037098A (ja) 2019-09-03 2019-09-03 ビデオゲーム処理プログラム、及びビデオゲーム処理システム

Publications (1)

Publication Number Publication Date
JP2021037098A true JP2021037098A (ja) 2021-03-11

Family

ID=74681106

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019160517A Pending JP2021037098A (ja) 2019-09-03 2019-09-03 ビデオゲーム処理プログラム、及びビデオゲーム処理システム

Country Status (3)

Country Link
US (1) US11241621B2 (ja)
JP (1) JP2021037098A (ja)
CN (1) CN112439198A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021037140A (ja) 2019-09-04 2021-03-11 株式会社スクウェア・エニックス ビデオゲーム処理プログラム、及びビデオゲーム処理システム
JP2023011071A (ja) * 2021-07-11 2023-01-23 株式会社スクウェア・エニックス プラン処理プログラムおよびプラン処理システム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11213179A (ja) 1998-01-23 1999-08-06 Sony Corp 共有仮想空間提供装置および方法、並びに提供媒体
US20100235608A1 (en) * 2004-03-25 2010-09-16 Aiseek Ltd. Method and apparatus for game physics concurrent computations
US7440447B2 (en) * 2004-03-25 2008-10-21 Aiseek Ltd. Techniques for path finding and terrain analysis
GB0407336D0 (en) 2004-03-31 2004-05-05 British Telecomm Pathfinding system
DE102005035908A1 (de) 2005-07-28 2007-02-08 X-Aitment Gmbh Taktische Analyse von Closed Combat Situationen
US8111257B2 (en) * 2007-03-06 2012-02-07 Aiseek Ltd. System and method for the generation of navigation graphs in real-time
JP5627526B2 (ja) 2011-03-31 2014-11-19 株式会社カプコン ゲームプログラム、及びゲームシステム
US11263823B2 (en) * 2012-02-24 2022-03-01 Matterport, Inc. Employing three-dimensional (3D) data predicted from two-dimensional (2D) images using neural networks for 3D modeling applications and other applications
JP6081769B2 (ja) 2012-10-23 2017-02-15 任天堂株式会社 プログラム、情報処理装置、情報処理方法および情報処理システム
JP5887458B1 (ja) 2015-11-04 2016-03-16 株式会社Cygames プレイヤの移動履歴に基づいてノンプレイヤキャラクタの経路探索を行うゲームシステム等
CN106110656B (zh) * 2016-07-07 2020-01-14 网易(杭州)网络有限公司 在游戏场景计算路线的方法和装置

Also Published As

Publication number Publication date
US11241621B2 (en) 2022-02-08
CN112439198A (zh) 2021-03-05
US20210060432A1 (en) 2021-03-04

Similar Documents

Publication Publication Date Title
JP6823731B2 (ja) 入力インターフェースシステム及び位置ゲームシステム
CN106730841B (zh) 一种寻路方法和装置
JP6279135B1 (ja) 位置ゲーム用インターフェースシステム、プログラム及び制御方法
CN109675313B (zh) 随机游戏地图的生成方法及装置、电子设备、存储介质
JP6367450B1 (ja) 位置ゲーム用インターフェースシステム、プログラム及び制御方法
CN108463273A (zh) 基于游戏者的移动历史来进行非游戏者角色的路径寻找的游戏系统等
JP7277671B2 (ja) スパニングツリーを用いたセル結合による領域分割 本開示は、一般に、領域分割に関し、特に、位置情報ゲームで使用するための異なる地域の特定に関するものである。
JP2021037098A (ja) ビデオゲーム処理プログラム、及びビデオゲーム処理システム
EP1164541A2 (en) Method of expressing crowd movement in game, storage medium, and information processing apparatus
JP2021037140A (ja) ビデオゲーム処理プログラム、及びビデオゲーム処理システム
JP6279136B1 (ja) 位置ゲームにおけるオブジェクト制御システム、プログラム及び方法
CN113082719A (zh) 三维虚拟场景的寻路方法、装置及电子设备
CN116036604B (zh) 数据处理方法、装置、计算机及可读存储介质
US11219825B2 (en) Non-transitory computer-readable medium and video game processing system
Bichard et al. Backseat playgrounds: pervasive storytelling in vast location based games
JP2019042139A (ja) ゲームプログラム、記録媒体、ゲーム処理方法
KR20120075527A (ko) 에이전트 기반 게임 서비스 장치 및 방법
JP7089005B2 (ja) ビデオゲーム処理プログラム、及びビデオゲーム処理システム
KR102473007B1 (ko) 녹지 환경 기반의 보행경로 안내를 위한 장치 및 이를 위한 방법
CN114377397A (zh) 虚拟场景中的寻路方法、装置、设备及存储介质
JP2004167273A (ja) 群集の移動を表現する方法、記憶媒体、および情報処理装置
CN116688511A (zh) 用于ai角色的寻路方法、装置、介质和计算机设备
Bardini et al. Enabling dynamic generation of levels for RTS serious games

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20210901

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220905

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230627

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230825

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231121

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20240119

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240307