Transcript Document
Handel-Cを用いたホッケーゲーム
エアホッケーDS
発表内容
プロジェクトの目的
ゲームの内容
ゲームの特徴
デモ
工夫した点、苦労した点
まとめ
プロジェクトの目的
Handel-Cというプログラミング言語でハー
ドウェアを設計できるFPGA開発ボードに
ついて学習する。
通信機能を使用したゲームを作る
ゲームの内容
•
•
パドルでボールを弾き、お互いのゴールに
入れる。
ゴールに入るとボールのスピードに応じて
ダメージが与えられ、体力が0になると負
けとなる。体力はFPGAボードのLEDに表
示されます。
ゲームの特徴
二つの画面を使用した広大なフィールド、
エアホッケーDS(Double Screen)!
壁への衝突や摩擦によりボールのスピー
ドが変化する、エアホッケーらしい挙動を
再現!
ラインより前方でボールを弾くと体力が回
復する最前線捕球手当(ボーナス)を導入
!駆け引きを熱くする!
ここでデモ
実際にご覧ください。
工夫した点、苦労した点
ボールが端に来たときにボールの座標や
スピードを送信するようにし、通信部分をで
きるだけ簡単にした。
壁やパドルにボールが埋まってしまわない
ように、重なったときはボールを移動する
ようにした。
まとめ
エアホッケーゲームの基本的な要素を
作成することができた。
演出が寂しいので、グラフィックを強
化したり、ゴールしたときに音を鳴ら
したりするようにしたい。
以下、想定質問用
ラインより前なら何度でも回
復可能か?
フラグを利用し、一度回復するか、ライ
ンより手前にくると次にボールが送られ
てくるまで回復できないようになってい
ます。
OK
通信について詳しく
ボールのある方はボールが画面の端にき
たらボールの座標とスピードを送信しま
す。
ボールの無い方は、ボールがくるまで受
信状態となります。
これを繰り替えしてゲームが進行します
。
送信側
座標、速さを送信
受信側
スピードの変化について
壁やパドルに当たると、スピードが4分
の1ずつ減ります。
一定時間経つとスピードが1ずつ減り、
摩擦のようなものを再現しています。
体力の減り方について
ゴールに入るとボールのX座標方向の速
さ分体力が減ります。
Y座標方向の速さは関係ありません。
Y座標方向の速さ
ゴール
ボールの速さ
X座標方向の速さ
パドル等とボールが重なった
ときの処理とは?
壁を越えると壁の手前に移動
パドルに重なるとパドルの外に移動