2010-02-01から1ヶ月間の記事一覧

AI Game Programming Wisdom4 "Company of Heroes Squad Formations Explained"の概要

AI Game Programming Wisdom4のSection2.1の"Company of Heroes Squad Formations Explained"の記事を読んだので, その概要について書きます. フォーメンションついて フォーメンションは, 1人のLeaderと複数人のFollowersから構成されます. 基本的には, 1人…

NVidia PhysX SDK2.8.3を試してみました

久しぶりにNVidia PhysXをチェックしてみようと思い, NVidia PhysX SDK2.8.3を試してみました.Training Programsが復活していました. あと, Force fieldsやFluid, Soft Bodyのデモが追加されているようです.[追記] 自分でNVidia PhysX SDK v2.8.3を使ったプ…

プランニング記述言語PDDLの簡単な紹介

PDDLはPlanning Domain Descrition Language の略で, 1998年にDrew McDermott によって最初のIPC(International Planning Competition の略) のために開発されたプランニング言語です. PDDLの文法表現はLisp のSyntaxに基づくものです. その使用方法としては…

Relief Mapping (ピクセルシェーダによる単純なレイトレーシング)

数年前, 学生の頃にOpenGL2.0とNVidia Cgで実装したRelief Mappingの画像です.このような長方形のポリゴンの上に ピクセルシェーダで単純なレイトレーシングを行って, ポリゴン上に幾何形状をリアルタイムに描画します. 今回のリリーフマッピング用に使用し…

"Ray Engine" GPUによるレイトキャスト (ピクセルシェーダによる三角形とRayが交差する最短距離の計算)

洋書"GPU-based Techniques for Global Illumination Effects"のChapter5の"Ray Casting on the GPU"の内容について簡単に説明したいと思います. "Ray Engine"によるGPUによるレイキャストは以下の2段階から構成されています. (1) 頂点シェーダによる"三角形…

ゲームAIでのデータ駆動型設計(Data-Driven Design)について

AIのキャラクターの振る舞いを決定するパラメータをプログラムにハードコーディングして埋め込むのではなく, 例えばテキストデータとしてプログラムの外において, 動的に読み込んでパラメータを設定するようにします.利点は, C++だと再コンパイルの必要がな…

ゲームAIでのFSM(有限状態機械)やHFSMの状態遷移について

FSMでの状態遷移の方法は以下の2種類であります. 内部遷移 : FSM内部からの遷移 外部遷移 : ユーザからの入力・スクリプトによる遷移 状態遷移のタイミングにも, (a) すぐ遷移するか?(b)1フレームに1回だけ遷移するか? と場合がありますが, 少しの遅延が生じ…