Search

JP-2026077688-A - 情報処理プログラム、情報処理システム、情報処理装置、および、情報処理方法

JP2026077688AJP 2026077688 AJP2026077688 AJP 2026077688AJP-2026077688-A

Abstract

【課題】オブジェクトが破壊されたときの破片をリアルに表現する。 【解決手段】情報処理システムは、主ボクセル毎の主ボクセルデータに基づいて、仮想空間に主オブジェクトのメッシュを生成する。情報処理システムは、消去イベントが発生した場合、当該消去イベントが発生した消去対象ボクセルに対応する部分が少なくとも消去されるように、当該消去対象ボクセルの主ボクセルデータを更新する。情報処理システムは、消去イベントが発生した場合、消去対象ボクセルに関する性質データに基づいて、破片生成条件が満たされるか否かを判定する。破片生成条件が満たされると判定される場合、情報処理システムは、副オブジェクトのボクセルデータである副ボクセルデータを生成し、当該副ボクセルデータに基づいて当該仮想空間に当該副オブジェクトのメッシュを生成する。 【選択図】図14

Inventors

  • 栗原 竜矢
  • 田中 航
  • 山中 雄作
  • 村田 翔

Assignees

  • 任天堂株式会社

Dates

Publication Date
20260513
Application Date
20260206

Claims (20)

  1. 情報処理装置のコンピュータにおいて実行される情報処理プログラムであって、 仮想空間に設定されるボクセル空間である主ボクセル空間において規定される主ボクセル毎の主ボクセルデータに基づいて、前記仮想空間に主オブジェクトのメッシュを生成する主オブジェクト生成手段と、 前記主ボクセル空間における複数の前記主ボクセルのうち少なくともいくつかの主ボクセルについて消去イベントが発生した場合、前記主オブジェクトのうち、当該消去イベントが発生した主ボクセルである消去対象ボクセルに対応する部分が少なくとも消去されるように、当該消去対象ボクセルの主ボクセルデータを更新する主ボクセル更新手段と、 前記消去イベントが発生した場合、前記主オブジェクトの性質を前記主ボクセル毎に示す性質データのうち、前記消去対象ボクセルに関する性質データに基づいて、破片生成条件が満たされるか否かを判定する破片判定手段と、 前記破片生成条件が満たされると判定される場合、前記仮想空間に設定されるボクセル空間であって前記主ボクセル空間とは異なる副ボクセル空間において規定される副ボクセル毎のボクセルデータであって、副オブジェクトのボクセルデータである副ボクセルデータを生成し、当該副ボクセルデータに基づいて当該仮想空間に当該副オブジェクトのメッシュを生成する副オブジェクト生成手段と、 前記仮想空間における前記主オブジェクトのメッシュおよび前記副オブジェクトのメッシュの画像を表示装置に出力する画像出力手段として前記コンピュータを機能させる、情報処理プログラム。
  2. 前記主オブジェクトの色彩および/または模様を前記主ボクセル毎に規定する見た目データに基づいて、前記主オブジェクトのメッシュの色彩および/または模様を設定する見た目設定手段として前記コンピュータをさらに機能させる、請求項1に記載の情報処理プログラム。
  3. 前記見た目データは、テクスチャを示すデータであり、 前記見た目設定手段は、前記主オブジェクトのメッシュのうちで、ある主ボクセルのボクセルデータに基づいて生成されるメッシュに対して、当該ある主ボクセルに関する前記見た目データが示すテクスチャを適用する、請求項2に記載の情報処理プログラム。
  4. 前記副オブジェクト生成手段は、前記副オブジェクトに関する前記副ボクセルに設定される見た目データを、前記主オブジェクトのうちで消去された部分について設定されていた前記見た目データに基づいて決定する、請求項2または請求項3に記載の情報処理プログラム。
  5. 前記副オブジェクト生成手段は、前記副オブジェクトに関する前記副ボクセルに設定される性質データを、前記主オブジェクトのうちで消去された部分について設定されていた性質データに基づいて決定する、請求項1から請求項4のいずれか1項に記載の情報処理プログラム。
  6. 前記情報処理プログラムは、 発生した前記消去イベントの種類に基づいて、前記副オブジェクトを生成する個数を決定する個数決定手段として前記コンピュータをさらに機能させ、 前記副オブジェクト生成手段は、前記副オブジェクトを複数個生成すると決定された場合、互いに独立した複数の前記副ボクセル空間のそれぞれに関して、前記副オブジェクトのそれぞれに関する前記副ボクセルデータを生成し、それぞれの当該副ボクセルデータに基づいて前記仮想空間に当該副オブジェクトのメッシュをそれぞれ生成する、請求項1から請求項5のいずれか1項に記載の情報処理プログラム。
  7. 前記破片判定手段は、前記破片生成条件として用いる条件の設定、および/または、前記破片生成条件が満たされるか否かの判定を、発生した前記消去イベントの種類に基づいて実行する、請求項1から請求項6のいずれか1項に記載の情報処理プログラム。
  8. 前記破片生成判定手段は、前記主オブジェクトに対して衝撃を付与する衝撃付与イベントによって前記消去イベントが発生した場合、当該衝撃付与イベントの種類に基づいて当該消去イベントの種類を判別する、請求項7に記載の情報処理プログラム。
  9. 前記破片生成判定手段は、プレイヤオブジェクトが持つ衝突オブジェクトを前記主オブジェクトに衝突させるアクションによる第1の衝撃付与イベントが発生した場合と、前記プレイヤオブジェクトが前記主オブジェクトに向けて衝突オブジェクトを移動させることで当該衝突オブジェクトを当該主オブジェクトに衝突させるアクションによる第2の衝撃付与イベントが発生した場合とで、異なる種類の前記消去イベントが発生したと判定する、請求項8に記載の情報処理プログラム。
  10. 前記破片生成判定手段は、前記衝撃付与イベントとして、前記副オブジェクトが前記主オブジェクトに衝突するイベントが行われた場合に、前記消去イベントが発生したか否かを判定する、請求項8または請求項9に記載の情報処理プログラム。
  11. 前記性質データは、前記主オブジェクトの強度を示し、 前記破片生成判定手段は、発生した前記消去イベントの種類に応じた強度と、当該消去イベントが発生した前記消去対象ボクセルに設定される性質データが示す強度とに基づいて、前記破片生成条件が満たされるか否かを判定する、請求項1から請求項10のいずれか1項に記載の情報処理プログラム。
  12. 前記性質データは、前記主オブジェクトの強度を示し、 前記破片生成判定手段は、前記主オブジェクトに対して衝撃を付与する衝撃付与イベントが行われた場合、当該衝撃付与イベントの種類に応じて設定される当該衝撃付与イベントの強度と、当該衝撃付与イベントが行われた主ボクセルに設定される性質データが示す強度とに基づいて、前記消去イベントが発生するか否かを判定する、請求項1から請求項11のいずれか1項に記載の情報処理プログラム。
  13. 前記副オブジェクト生成手段は、発生した前記消去イベントの種類に応じた大きさの前記副オブジェクトとなるように前記副ボクセルデータを生成する、請求項1から請求項12のいずれか1項に記載の情報処理プログラム。
  14. 前記副オブジェクト生成手段は、前記破片生成条件が満たされると判定される場合、前記主オブジェクトのうちで消去された部分を表す消去部分オブジェクトを生成し、当該消去部分オブジェクトを複数に分割することによって前記副オブジェクトを生成する、請求項1から請求項13のいずれか1項に記載の情報処理プログラム。
  15. 前記副オブジェクト生成手段は、前記消去部分オブジェクトを複数に分割することによって得られるオブジェクトのうち、下限値より大きく、かつ、上限値より小さい範囲のオブジェクトが前記副オブジェクトとなるように、前記副ボクセルデータを生成する、請求項14に記載の情報処理プログラム。
  16. 前記主オブジェクト生成手段は、前記副オブジェクトが前記主オブジェクトに衝突した場合、前記主ボクセル空間において当該副オブジェクトに対応する部分が当該主オブジェクトに対して追加されるように、前記副ボクセルデータに基づいて前記主ボクセルデータを更新する、請求項1から請求項15のいずれか1項に記載の情報処理プログラム。
  17. 前記副オブジェクト生成手段は、前記主ボクセルよりも一辺の長さが短いボクセルを前記副ボクセルとして規定する前記副ボクセル空間を設定する、請求項1から請求項16のいずれか1項に記載の情報処理プログラム。
  18. 前記副オブジェクト生成手段は、前記主ボクセル空間における座標軸の方向とは独立して、前記副ボクセル空間における座標軸の方向を設定する、請求項1から請求項17のいずれか1項に記載の情報処理プログラム。
  19. 前記主オブジェクトは、前記仮想空間に配置された地形オブジェクトである、請求項1から請求項18のいずれか1項に記載の情報処理プログラム。
  20. 仮想空間に設定されるボクセル空間である主ボクセル空間において規定される主ボクセル毎の主ボクセルデータに基づいて、前記仮想空間に主オブジェクトのメッシュを生成する主オブジェクト生成手段と、 前記主ボクセル空間における複数の前記主ボクセルのうち少なくともいくつかの主ボクセルについて消去イベントが発生した場合、前記主オブジェクトのうち、当該消去イベントが発生した主ボクセルである消去対象ボクセルに対応する部分が少なくとも消去されるように、当該消去対象ボクセルの主ボクセルデータを更新する主ボクセル更新手段と、 前記消去イベントが発生した場合、前記主オブジェクトの性質を前記主ボクセル毎に示す性質データのうち、前記消去対象ボクセルに関する性質データに基づいて、破片生成条件が満たされるか否かを判定する破片判定手段と、 前記破片生成条件が満たされると判定される場合、前記仮想空間に設定されるボクセル空間であって前記主ボクセル空間とは異なる副ボクセル空間において規定される副ボクセル毎のボクセルデータであって、副オブジェクトのボクセルデータである副ボクセルデータを生成し、当該副ボクセルデータに基づいて当該仮想空間に当該副オブジェクトのメッシュを生成する副オブジェクト生成手段と、 前記仮想空間における前記主オブジェクトのメッシュおよび前記副オブジェクトのメッシュの画像を表示装置に出力する画像出力手段とを備える、情報処理システム。

Description

本発明は、ボクセルデータを用いて仮想空間におけるオブジェクトを生成するための情報処理プログラム、情報処理システム、情報処理装置、および、情報処理方法に関する。 従来、ボクセルデータを用いてオブジェクトを管理し、ボクセルデータに基づいて仮想空間においてオブジェクトのメッシュを生成することが行われている(例えば、非特許文献1参照)。 “Marchingcubes:A highresolution 3D surface construction algorithm”、Computer Graphics, Volume 21, Number 4、WE Lorensen,HE Cline、1987年 ゲームシステムの一例を示す図本体装置の内部構成の一例を示すブロック図本体装置と左コントローラおよび右コントローラとの内部構成の一例を示すブロック図ボクセルオブジェクトである地形オブジェクトの一例を示す図図4に示す地形オブジェクトの一部が削除される前後の様子の一例を示す図図4に示す地形オブジェクトの一部が削除される前後の様子の一例を示す図ボクセルデータの内容とマテリアル情報の内容との一例を示す図マテリアルの性質を示す性質情報の一例を示す図マテリアルのテクスチャを示すテクスチャ情報の一例を示す図メッシュの生成方法の一例を示す図地形オブジェクトを含むゲーム画像の一例を示す図プレイヤオブジェクトが地形オブジェクトに対してパンチアクションを行う様子の一例を示す図プレイヤオブジェクトのパンチアクションによって一部が破壊された地形オブジェクトの一例を示す図地形オブジェクトと破片オブジェクトとの一例を示す図破片生成情報の一例を示す図破片オブジェクトの生成方法の一例を示す図プレイヤオブジェクトが地形オブジェクトに向かって破片オブジェクトを投げた様子の一例を示す図破片オブジェクトが地形オブジェクトに接触した結果、地形オブジェクトが追加された様子の一例を示す図ゲームシステムにおける情報処理に用いられる各種データの一例を示す図ゲームシステムによって実行されるゲーム処理の流れの一例を示すフローチャート図20に示すステップS6の消去処理の詳細な流れの一例を示すサブフローチャート図20に示すステップS8の追加処理の詳細な流れの一例を示すサブフローチャート [1.ゲームシステムの構成] 以下、本実施形態の一例に係るゲームシステムについて説明する。図1は、ゲームシステムの一例を示す図である。本実施形態におけるゲームシステム1の一例は、本体装置(情報処理装置;本実施形態ではゲーム装置本体として機能する)2と左コントローラ3および右コントローラ4とを含む。本体装置2は、ゲームシステム1における各種の処理(例えば、ゲーム処理)を実行する装置である。左コントローラ3および右コントローラ4は、ユーザが入力を行うための操作部を備える装置である。 本体装置2は、左コントローラ3および右コントローラ4がそれぞれ着脱可能である。つまり、ゲームシステム1は、左コントローラ3および右コントローラ4をそれぞれ本体装置2に装着して一体化された装置として利用できる。また、ゲームシステム1は、本体装置2と左コントローラ3および右コントローラ4とを別体として利用することもできる。なお、以下において、左コントローラ3および右コントローラ4の総称として「コントローラ」と記載することがある。 図2は、本体装置2の内部構成の一例を示すブロック図である。本体装置2は、図1に示す構成の他、図2に示す各構成要素17,21,23,81~85、および、91を備える。これらの構成要素17,21,23,81~85、および、91のいくつかは、電子部品として電子回路基板上に実装されてハウジング11内に収納されてもよい。 本体装置2は、ディスプレイ12を備える。ディスプレイ12は、本体装置2が生成した画像を表示する。本実施形態においては、ディスプレイ12は、液晶表示装置(LCD)とする。ただし、ディスプレイ12は任意の種類の表示装置であってよい。 また、本体装置2は、本体装置2が左コントローラ3と有線通信を行うための端子である左側端子17と、本体装置2が右コントローラ4と有線通信を行うための右側端子21を備える。 本体装置2は、プロセッサ81を備える。プロセッサ81は、本体装置2において実行される各種の情報処理を実行する情報処理部であって、例えば、CPU(Central Processing Unit)のみから構成されてもよいし、CPU機能、GPU(Graphics Processing Unit)機能等の複数の機能を含むSoC(System-on-a-chip)から構成されてもよい。プロセッサ81は、記憶部(具体的には、フラッシュメモリ84等の内部記憶媒体、あるいは、スロット23に装着される外部記憶媒体等)に記憶される情報処理プログラム(例えば、ゲームプログラム)を実行することによって、各種の情報処理を実行する。 本体装置2は、自身に内蔵される内部記憶媒体の一例として、フラッシュメモリ84およびDRAM(Dynamic Random Access Memory)85を備える。フラッシュメモリ84およびDRAM85は、プロセッサ81に接続される。フラッシュメモリ84は、主に、本体装置2に保存される各種のデータ(プログラムであってもよい)を記憶するために用いられるメモリである。DRAM85は、情報処理において用いられる各種のデータを一時的に記憶するために用いられるメモリである。 本体装置2は、スロット23を備える。スロット23は、所定の種類の記憶媒体を装着可能な形状を有する。所定の種類の記憶媒体は、例えば、ゲームシステム1およびそれと同種の情報処理装置に専用の記憶媒体(例えば、専用メモリカード)である。所定の種類の記憶媒体は、例えば、本体装置2で利用されるデータ(例えば、アプリケーションのセーブデータ等)、および/または、本体装置2で実行されるプログラム(例えば、アプリケーションのプログラム等)を記憶するために用いられる。 本体装置2は、スロットインターフェース(以下、「I/F」と略記する。)91を備える。スロットI/F91は、プロセッサ81に接続される。スロットI/F91は、スロット23に接続され、スロット23に装着された所定の種類の記憶媒体(例えば、専用メモリカード)に対するデータの読み出しおよび書き込みを、プロセッサ81の指示に応じて行う。 プロセッサ81は、フラッシュメモリ84およびDRAM85、ならびに上記各記憶媒体との間でデータを適宜読み出したり書き込んだりして、上記の情報処理を実行する。 本体装置2は、ネットワーク通信部82を備える。ネットワーク通信部82は、プロセッサ81に接続される。ネットワーク通信部82は、ネットワークを介して外部の装置と通信(具体的には、無線通信)を行う。本実施形態においては、ネットワーク通信部82は、第1の通信態様としてWi-Fiの規格に準拠した方式により、無線LANに接続して外部装置と通信を行う。また、ネットワーク通信部82は、第2の通信態様として所定の通信方式(例えば、独自プロトコルによる通信や、赤外線通信)により、同種の他の本体装置2との間で無線通信を行う。なお、上記第2の通信態様による無線通信は、閉ざされたローカルネットワークエリア内に配置された他の本体装置2との間で無線通信可能であり、複数の本体装置2の間で直接通信することによってデータが送受信される、いわゆる「ローカル通信」を可能とする機能を実現する。 本体装置2は、コントローラ通信部83を備える。コントローラ通信部83は、プロセッサ81に接続される。コントローラ通信部83は、左コントローラ3および/または右コントローラ4と無線通信を行う。本体装置2と左コントローラ3および右コントローラ4との通信方式は任意であるが、本実施形態においては、コントローラ通信部83は、左コントローラ3との間および右コントローラ4との間で、Bluetooth(登録商標)の規格に従った通信を行う。 プロセッサ81は、上述の左側端子17および右側端子21に接続される。プロセッサ81は、左コントローラ3と有線通信を行う場合、左側端子17を介して左コントローラ3へデータを送信するとともに、左側端子17を介して左コントローラ3から操作データを受信する。また、プロセッサ81は、右コントローラ4と有線通信を行う場合、右側端子21を介して右コントローラ4へデータを送信するとともに、右側端子21を介して右コントローラ4から操作データを受信する。このように、本実施形態においては、本体装置2は、左コントローラ3および右コントローラ4との間で、それぞれ有線通信と無線通信との両方を行うことができる。 また、ディスプレイ12は、プロセッサ81に接続される。プロセッサ81は、(例えば、上記の情報処理の実行によって)生成した画像および/または外部から取得した画像をディスプレイ12に表示する。 図3は、本体装置2と左コントローラ3および右コントローラ4との内部構成の一例を示すブロック図である。なお、本体装置2に関する内部構成の詳細については、図2で示しているため図3では省略している。 左コントローラ3は、左コントローラ3が本体装置2と有線通信を行うための端子42を備える。また、左コントローラ3は、本体装置2との間で通信を行う通信制御部101を備える。図3に示すように、通信制御部101は、端子42を含む各構成要素に接続される。本実施形態においては、通信制御部101は、端子42を介した有線通信と、端子42を介さない無線通信との両方で本体装置2と通信を行うことが可能である。通信制御部101は、左コントローラ3が本体装置2に対して行う通信方法を制御する。すなわち、左コントローラ3が本体装置2に装着されている場合、通信制御部101は、端子42を介して本体装置2と通信を行う。また、左コントローラ3が本体装置2から外されている場合、通信制御部101は、本体装置2(具体的には、コントローラ通信部83)との間で無線通信を行う。 また、左コントローラ3は、例えばフラッシュメモリ等のメモリ102を備える。通信制御部101は、例えばマイコン(マイクロプロセッサとも言う)で構成され、メモリ102に記憶されるファームウェアを実行することによって各種の処理を実行する。 左コントローラ3は、1以上のボタン103を備える。また、左コントローラ3は、アナログスティック(図3では「スティック」と記載する)32を備える。ボタン103およびアナログスティック32は、自身に対して行われた操作に関する情報を、適宜のタイミングで繰り返し通信制御部101へ出力する。 通信制御部101は、各入力部(具体的には、ボタン103およびアナログスティック32)から、入力に関する情報(具体的には、操作に関する情報)を取得する。通信制御部101は、取得した情報(または取得した情報に所定の加工を行った情報)を含む操作データを本体装置2へ送信する。なお、操作データは、所定時間に1回の割合で繰り返し送信される。なお、入力に関する情報が本体装置2へ送信される間隔は、各入力部について同じであってもよいし、同じでなくてもよい。 上記操作データが本体装置2へ送信されることによって、本体装置2は、左コントローラ3に対して行われた入力を得ることができる。すなわち、本体装置2は、左コントローラ3を動かす操作、および、ボタン103およびアナログスティック32に対する操作を、操作データに基づいて判別することができる。 左コントローラ3は、電力供給部108を備える。本実施形態において、電力供給部108は、バッテリおよび電力制御回路を有する。図示しないが、電力制御回路は、バッテリに接続されるとともに、左コントローラ3の各部(具体的には、バッテリの