現在,ゲームプログラミングの館様等を参考にさせて頂いて,
2Dのアクションゲーム(マリオ,洞窟物語のような)を作成しております。
その際に,主人公のキャラクタ(自機)に慣性移動をさせたく,
試行錯誤し,地面に接している状態での慣性移動についてはひと通り実装致しましたが,
タイトルの通り空中での慣性移動でどうしても不自然な挙動をしてしまいます。
どのようにすれば自然な空中での慣性移動が行えるでしょうか?
ちなみに現在の方法は,
キャラクターのパラメータに加速度を設定,
1.地面に接しているときには入力に応じて移動速度に加速度を加算(減算)
この時に移動速度が一定の値に達していればそれ以上加速しないようにする。
2.キーもしくはパッドの十字ボタンが離されていれば
速度から加速度を減算(加算)
この時に速度の絶対値が加速度よりも小さければ速度を0に
空中では2.の減速処理を行わずに1.の処理のみを行う。
ただし、加速度/2の値を速度に加算するで地面に接している時よりも動きづらい。
必要であればコードも記載いたしますので,これよりも良い方法,または皆様方が使われているような
方法をお教えいただければ幸いです。乱文失礼致しました。
2Dアクションの空中での慣性について
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 14年前
- 住所: 東海地方
- 連絡を取る:
Re: 2Dアクションの空中での慣性について
どう不自然なのか感覚的には分かりづらいですね。
イメージとずれている点を説明できますでしょうか?
ソースコードを貼ってもらった方が良いかも知れません。
イメージとずれている点を説明できますでしょうか?
ソースコードを貼ってもらった方が良いかも知れません。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。
Re: 2Dアクションの空中での慣性について
乱文失礼します。
洞窟物語とか、スーパーマリオブラザーズは、ジャンプが可変長ジャンプですね。
押した時間だけジャンプする感じでしょうか?
一方、
その涼雅さんの作ったアクションゲームのキャラクターの
ジャンプの加速度がそれとは違い違和感を感じるのではないですか?
洞窟物語とか、スーパーマリオブラザーズは、ジャンプが可変長ジャンプですね。
押した時間だけジャンプする感じでしょうか?
一方、
その涼雅さんの作ったアクションゲームのキャラクターの
ジャンプの加速度がそれとは違い違和感を感じるのではないですか?
Re: 2Dアクションの空中での慣性について
softya(ソフト屋)様,KEYONN_様返答有難うござます。
返答を頂いたところ心苦しいのですが,
自分なりにイメージを組み直して,微調整を試みたところ,
自己解決できましたので,解決にさせて頂きます。
わざわざご返答ありがとうございました。
返答を頂いたところ心苦しいのですが,
自分なりにイメージを組み直して,微調整を試みたところ,
自己解決できましたので,解決にさせて頂きます。
わざわざご返答ありがとうございました。