プログラミング

F.E.A.RのAI

少し前にGDC06で発表されたPCゲーム『F.E.A.R』のAIに関する論文を翻訳しました。『F.E.A.R』は昨年発売されたFPSで、なかなか評判のいいゲームです。私は、何故か体験版が動かなかったので遊んでいません。起動はするのですが、オープニングイベント終了後…

デバッガの仕業です

先週の水曜日に会社を休んで車検を取りに行きました。ユーザー車検ってやつ。緊張してたのか、夜中にGが大量に発生する夢を見て飛び起きたり。Gとバイクは関係ないけど。ちょっと身構えてたけど、やってみるとあっけない。書類書いたりするのも含めて1時間と…

マルチメディアタイマー制御は危険なのか?

ついに今年初めての黒い悪魔登場。しかし、何故か浴槽の中で瀕死状態。一体何があった?とはいえ、そんな状態でもキモイものはキモイ。排水口から流して終了ですがね。そのあと、パイプユニッシュを流しておいたけどね。やはりやつらを完全にシャットアウト…

Squirrel その9

前回予告した通り、ちょっと高度なSquirrelの使い方。高度といってもちょっとです。難しいことはないと思います。 いわゆるスクリプト言語をゲームで使用する場合、主に外に出しておくと便利なものに使用します。例えば敵キャラクタのAIとか、ゲーム中に発生…

Squirrel その8

ちょっとだけワールドカップの話。ドイツ×スウェーデン戦は前半10分までが面白かった。主にクローゼ。それ以降はクローゼにあんまりボールが回らないし、バラックはミドルばっかり狙うし。特にドイツの守備陣は酷すぎる。スウェーデンの攻撃陣がいつもの調子…

Squirrel その7

前回はC/C++プログラムからSquirrelファイルを実行する方法をやりました。しかし、この方法ではSquirrelの標準機能を使うくらいのことしかできません。実際にC/C++プログラム中でSquirrelを使用する場合、必要になるのは以下の機能になるでしょう。 ・C/C++…

Squirrel その6

すっかり遅くなった Squirrel の話。今回から数回に分けて組み込みの話をしていきます。組み込む言語はC/C++を利用します。JAVAやC#に組み込む場合はソースを弄ってくださいね。 まず、プロジェクトのリンクライブラリに以下の2つを追加します。 squirrel.li…

Squirrel その5

今回で Squirrel の言語仕様解説は終了。C言語と同様に条件分岐には if と else を使います。 if(i == 0){}else if(i == 1){}else{} ループには for 、while 、do?while が使えます。どれもC言語と同じ使い方です。for 文は for 文内で変数宣言することもで…

Squirrel その4

Squirrel ではクラスが使用できます。C++ほど便利なわけではないですが、一応継承も出来ます。デストラクタはありませんがコンストラクタはあります。 class CVec3{ x = 0.0; y = 0.0; z = 0.0; constructor(...) { if(vargc >= 3){ x = vargv[0]; y = vargv…

Squirrel その3

GWはツーリングに行く予定ですが、問題なのはガソリン代。130円超えてますよ。アホかと。バイクは車に比べると燃費はいいけど、それにしたってきついよ。 前回の続き。Squirrel でも関数の作成が可能です。もちろん、引数も使えて戻り値も使えます。 functio…

Squirrel その2

前回の続き。まずは Squirrel をDLしてきます。公式サイトからSourceForgeに飛んでDLできます。メイクファイルも付属していますが、VC6プロジェクトファイルが付属しているのでVS使用者なら簡単にビルドできるでしょう。エラーが出るかもしれませんが、簡単…

Squirrel その1

最近、Luaという単語を稀ながら耳にすることがある。Luaは、いわゆるスクリプト言語と呼ばれる類の言語で、一般的には組み込み型軽量言語というのではないかと思う。スクリプト言語はある程度以上の規模のゲームを作る上では欠かせない。スクリプト言語で出…

Hello World!

#include "stdio.h"#include "stdlib.h"int main(){ printf("Hello World!\n"); return 0;}