ページ 1 / 1
マウスを使ってのゲーム作りwo
Posted: 2011年12月17日(土) 23:43
by クロすけ
初投稿です。はじめまして。
今C++でゲーム作りをしようと考えている初心者です。
マウスを使うゲームにしようと考えており、
オブジェクトに対して、マウスを動かすと斬る感じで攻撃できるようなゲームを
作成したいのですが、可能なのでしょうか?
一応、DXライブラリでマウス関連のものを見て学習はしたのですが、
クリックしたときやホイールを動かしたときの関数しか見当たらず、
知恵をお借りしたいと思い投稿させて頂きました。
Re: マウスを使ってのゲーム作りwo
Posted: 2011年12月18日(日) 00:12
by jay
DXライブラリならば一応GetMousePoint関数で現在のマウスの位置を取得できますからね
毎フレームGetMouseInputと一緒に呼び出して判定すればなんとかなるかも知れませんが
問題はマウスの状態の取得よりもどうやって「攻撃が成立したかどうか」を判定するか、だと思います。
GetMousePoint関数はマウスの座標
GetMouseInput関数はマウスをクリックしているかどうか
これだけしか判断できません。 つまりこれらの情報から切ったかどうかを判断するロジックを作る必要がありますね。
上手くいくかどうかは分かりませんが、考え方として
①GetMouseInput関数を呼び出す、クリックされている場合は②へ
②GetMousePoint関数を呼び出し、取得した座標を配列へ記録していく
ボタンが放されるか配列の最大数になったら③へ
③配列に記録された情報を基に計算する。
④エフェクトの処理(軌跡?) また攻撃が成功したら敵のダメージ処理も行う
やはり問題になるのは③でしょうね
配列に記録された座標を繋げて行くイメージでしょうね、そして繋げた線の上に敵がいたら攻撃成功
といったところでしょうか。
どうも結構ややこしいことになりそうなので全くの初心者がコレを作るのは難しいと思います。 不可能でもないでしょうけど。
まずはもっと簡単なゲームから作り始めるか、ここで質問しつつ試行錯誤を繰り返すか。
どちらにしても諦めずに頑張ってくださいね
Re: マウスを使ってのゲーム作りwo
Posted: 2011年12月18日(日) 18:52
by クロすけ
参考にさせていただきます。
また、私自身まだまだ知識が足りないなと痛感しました。
達成できるように試行錯誤しながら日々頑張っていきたいと思います。
jayさん、ありがとうございました^^
Re: マウスを使ってのゲーム作りwo
Posted: 2011年12月18日(日) 22:15
by beatle
- 記録したマウスの座標点の集合に対して最小二乗法を用いて、マウスの軌跡を直線に近似する
- その直線と座標点との距離の最大値を求める
- その距離の最大値がある一定以下なら攻撃成立
などとすればできそうですね。