人生にゲームをプラスするメディア

XNAフレームワーク+CUDAで「ゲームの物理」が変わるか

3月6日、東京大学で「NVIDIA Japan CUDAカンファレンス2008」が開催されました。CUDAとは、NVIDIAが提供する開発環境で、GPUを使用して高速に並列処理をおこなえるのが特徴です。

PCゲーム オンラインゲーム
XNAフレームワーク+CUDAで「ゲームの物理」が変わるか
  • XNAフレームワーク+CUDAで「ゲームの物理」が変わるか
  • XNAフレームワーク+CUDAで「ゲームの物理」が変わるか
  • XNAフレームワーク+CUDAで「ゲームの物理」が変わるか
  • XNAフレームワーク+CUDAで「ゲームの物理」が変わるか
  • XNAフレームワーク+CUDAで「ゲームの物理」が変わるか
3月6日、東京大学で「NVIDIA Japan CUDAカンファレンス2008」が開催されました。CUDAとは、NVIDIAが提供する開発環境で、GPUを使用して高速に並列処理をおこなえるのが特徴です。

カンファレンスでは、プロメテック・ソフトウェアの原田隆宏氏と政家一誠氏によるセッションもあり、CUDAを使用した計算のコツや、同社のパーティクルベースの流体シミュレーションのデモンストレーションなどがおこなわれました。プロメテック・ソフトウェアは、もともとはシミュレーション技術をベースとした大学発ベンチャーですが、『鉄拳6(バンダイナムコゲームス)』でキャラクタの動きにあわせた水面の動きについて共同開発した企業としてゲーム業界でも知られています。

セッションでは、GPUを使用した並列計算での注意事項として、並列性を確保すること(ベクトルの和の計算は適しているが、内積のように一か所にデータを集めるような計算は並列性を損なう)、マルチGPUではGPU間のデータ転送をできるだけ減らす(現状ではいったんメインメモリに転送する必要がある)、(非対称マルチプロセッシング的な)タスクのデータを配布・集約するようなプログラミングモデルを避ける(ボトルネックとなりがちなため)といった点を指摘。プロメテック・ソフトウェアでは流体シミュレーションにグリッドベースではなくパーティクルベースの方式を採用していることから、各パーティクルが分割領域の境界を越えて影響をあたえあう部分のオーバーヘッドを回避するため、「ゴースト領域」(計算に必要なパーティクル情報を参照用に保持する隣接領域)をもたせていることなどを紹介していました。

CUDAのメリットとして、C言語で書けることからシェーダー言語ベースの記述よりも書きやすくなったことをあげつつ、並列性を損なうような書き方もしやすくなったとも指摘。

また、学術的なシミュレーションにとどまらず、CUDAをC++さらにC++/CLIでラッピングすることでXNAのゲームフレームワークにとりこむことも可能とのこと。

ゲームにおける物理シミュレーションはあたりまえになりつつあるようですが、GPUを手近なベクトルプロセッサとして使用しやすくする“CUDA”はいろいろな可能性がありそうです。

《伊藤雅俊》
【注目の記事】[PR]

編集部おすすめの記事

PCゲーム アクセスランキング

  1. クガネ登山よりは簡単?『FF14』新たな登山スポットの攻略法&頂きの景色

    クガネ登山よりは簡単?『FF14』新たな登山スポットの攻略法&頂きの景色

  2. PC版『モンハン:ワールド』SSD環境ではロード時間は数秒程度に―海外掲示板報告

    PC版『モンハン:ワールド』SSD環境ではロード時間は数秒程度に―海外掲示板報告

  3. 誰でも自分にピッタリなセンシが決まる!?初心者FPSゲーマーが試すべき“完璧な感度”の見つけ方

    誰でも自分にピッタリなセンシが決まる!?初心者FPSゲーマーが試すべき“完璧な感度”の見つけ方

  4. スマホアプリがPCで遊べる『BlueStacks 4』正式版、配信開始―「より軽く、より速く」を実現!

  5. 『FF ピクセルリマスター』発売に伴い“旧バージョン”が販売終了へ―3Dリメイク版『FF3』と『FF4』には影響なし

アクセスランキングをもっと見る