今後の課題

アバター
BEAT
記事: 4
登録日時: 14年前
住所: 兵庫県S市杜王町
連絡を取る:

今後の課題

投稿記事 by BEAT » 14年前

なんだかんだで2月も終わりに近づいてきましたが、やること多すぎてやばい。

卒業式やらは別にどうでもいいんですが。
ゲーム製作と専門学校の事前課題と動画製作をやらないとなんですよね~
あとゲーム関係以外で言えばバイトの面接とか結構やることが多くてあたふたしてます

で、ゲーム製作今後の課題なんですが。
「のけぞったら壁にめり込んでしまう」。これを解消していきたいと思います。

MoNoさんが「1ピクセルずつずらして座標の状態しらべればいけると思いますよ」的なことを言ってたんですが。
オレのゲームののけぞり処理って「対象の座標の差がのけぞる方向と距離に関係している」んですよね。

つまりプレイヤーが敵より左に、かつ少し上に居たら、左にある程度飛んで上に少し移動します。
何でコレにしたかって言うと、「どんな場合でも一つの式で対応できるから」なんですが、移動方法が「足して代入を3回繰り返す」なんです

ですが、コレじゃあ1ピクセルごとに調べられないので、ココは得意の(笑)ごり押し(笑)で
「ぶつかり方→のけぞり方を8種類に分けて種類ごとに移動方向、移動距離を固定。その範囲で座標の状態を調べる」
という方法が今の自分には一番あってそうですww

こんなカンジで
画像

移動距離は2キャラ分の64ピクセルぐらいがベストかと思われます。

あとはのけぞり方を調べる関数と、のけぞり方を判別する定数と、のけぞり方定数によって方向の状態を調べる関数
を作れば、できる・・・はずww

こんな方法もあるよ~ってのがありましたらどんどん言っていただければうれしいです。
最後に編集したユーザー BEAT on 2011年5月11日(水) 17:57 [ 編集 1 回目 ]

アバター
BEAT
記事: 4
登録日時: 14年前
住所: 兵庫県S市杜王町
連絡を取る:

Re: 今後の課題

投稿記事 by BEAT » 14年前

ありがとうございます!

ISLe
記事: 2650
登録日時: 15年前

Re: 今後の課題

投稿記事 by ISLe » 14年前

X方向とY方向の線分の重なり具合いをチェックするだけというのが2Dゲームでは王道のような気がします。
ファミコンのスーパーマリオでは壁にめり込むとすーっと動きますよね。
押し戻しベクトルを加算し続けるとあんな感じになります。
ロックマンはベクトルじゃなくて一気に壁の外まですっ飛んでいきますけど。
ゲームによって対応はいろいろです。

仰け反りではないのですが2Dアクションのステージを汎用に処理したらどうなるか実験したのをブロクに書いたことがあります。
Javaですけど参考になれば。
http://isle.cocolog-nifty.com/blog/2010 ... -9b34.html
数学とか物理とか難しいことはまったく出てきません。