YS FLIGHT SIMULATION SYSTEM 2000 76機目
494 :
1:
私とPC用フライトシミュレータとは長い付き合いになります。初めて家庭用PCで動く
フライトシミュレータを見たのが中学2年当時。非常に大きなインパクトを受け、
このフライトシミュレータなるものを自分でも書けないかと3次元グラフィックスの
勉強を開始。思えば、これが自分がプログラミングをおぼえる原動力でした。その後、
大学時代はFM-TOWNSで何本かフライトシミュレータを公開して、また、去年は
「Formation Aerobatic」(アスキー)がヒットでした。そして、今回の
「YS FLIGHT SIMULATION SYSTEM 2000」につながってます。よく「ライフワーク?」
とか聞かれることがあります。本当は本職は違うんですけどね。(^_^;)
このプログラムで一番苦労した点は、コンピュータ機の操縦ルーチンでした。人間が操縦
するときは操縦桿やスロットル、ラダーペダルなどを動かして飛行機をコントロールします。
これに対してコンピュータは、その気になれば、飛行機の位置、姿勢、速度を直接書き換えて
しまうことができます。しかし、しかし、それをやってしまうのはインチキです。フェアな
空中戦にするには、人間にコントロールできないものをコンピュータにコントロールさせてはいけません。
例えば、人間はスロットルをコントロールできますが、速度を直接コントロールすることはできません。
だから、コンピュータもスロットルはコントロールしても、速度を直接書き換えてはいけません。
495 :
2:2005/08/02(火) 18:05:48
インチキをしないためには、コンピュータは人間と同じように操縦桿、スロットルなどを
コントロールしなくてはなりません。ところが、このシミュレータの中ではどの飛行機も(近似演算とはいえ)
航空力学計算に基づいて飛びます。したがって、操縦桿、スロットルなどの入力に対する飛行機の運動は簡単な
関係ではありません。大雑把な動きを作るのは簡単でも、空中戦でプレイヤー機を追ってきて、まして機関砲を
命中させるような精度の操縦をさせるにはかなりの骨が折れました。それでもなんとか、去年勉強した制御理論
その他の知識を総動員してかなりうまく操縦できるようになりました。なんか、コンピュータパイロットを自分で
育ててるような感じがしてちょっとおもしろかったですけどね。(^_^;)
今後は、このプログラムを拡張して、昔なつかしい着陸シミュレータや、あるいはストーリー性のあるような
空中戦ゲームを書いてみたいと思っています。また、多分来年1月末ぐらいには、このプログラムの空中戦ルーチンを
利用した空中戦スクリーンセーバを出せると思います。
今後ともよろしくお願いします。