トップページ > 過去ログ > 記事閲覧
2Dアクションのジャンプ処理について…
名前:山納豆 日時: 2012/07/02 14:57

タイトル通りなのですが、放物線を利用してジャンプを作ろうとしたんですが、上手くいきません。 下記のようにジャンプ加速度から重力を減算してやる処理は簡単に出来たのですが…同じ変数だけを使って出来ませんか? int y=0,jumppow=12,gravity=1; while(1){ y-=jumppow; jumppow-=gravity; if(y<=0)y=0 }

Page: 1 |

Re: 2Dアクションのジャンプ処理について… ( No.1 )
名前:も。 日時:2012/07/02 16:50

こんな感じでしょうか。 int y = 0, jumppow = 12, gravity = 1; while(1){ y += jumppow; if(y <= 0){ y = 0; jumppow = 0; }else{ jumppow -= gravity; } } あとはキー入力のイベントが来た時にjumppowの値をセットしてあげれば、ジャンプを表現できます。 キーを押しっぱなしにしても一度しかジャンプしない処理や 空中でジャンプしないようにする処理は自分で考えてみてください。 また、Y座標は下方向がプラスなので、地面の座標からyの値を減算した値が描画位置になることに注意です。
Re: 2Dアクションのジャンプ処理について… ( No.2 )
名前:管理人 日時:2012/07/08 17:18

サンプルプログラムのページにジャンプ処理のサンプルがありますので、 よろしければご覧になってみてください <2.ジャンプ処理> http://homepage2.nifty.com/natupaji/DxLib/dxprogram.html#N2

Page: 1 |