ページ 11

坂道の計算について

Posted: 2011年11月16日(水) 02:42
by ff
横スクロールアクションゲームを作っているffといいます。
また詰まってしまったので質問させてください。

45度の坂道を作成しているのですが、思うようにいきません。

①矩形のプレイヤー下辺の中点が、マップチップの坂道に接触しているかを判定
②前フレームのY軸の移動距離が0の場合、Y軸の移動距離=X軸の移動距離とする
③前フレームのY軸の移動距離が0以外の場合、プレイヤーが斜面上に来るようにY字句の移動距離を補正する

このように考えてコードを書いているのですが、どうにもうまくいきません。
具体的には

A:坂道をのぼっておりてくると一番下で地面にめりこむ。
B:ジャンプして坂道に接触しても、うまく坂道を上り下りできない。

根本的に考え方が違うような気もするのですが、解決のアドバイスをいただけないでしょうか。
お手数おかけしますが、よろしくお願いします。

Re: 坂道の計算について

Posted: 2011年11月16日(水) 07:11
by beatle
日本語で考え方を書いても結構曖昧なので、答えにくいですね。
ff さんが書きました:②前フレームのY軸の移動距離が0の場合、Y軸の移動距離=X軸の移動距離とする
③前フレームのY軸の移動距離が0以外の場合、プレイヤーが斜面上に来るようにY字句の移動距離を補正する
の2つを合わせると、前フレームのY軸の移動距離に依存せず、Y軸の移動距離=X軸の移動距離とする、となる気がしますが、いかがですか。

あと、①~③には、地面にめりこまないようにする処理が含まれていませんから、地面にめり込むのは当然なのではないでしょうか。
それとも、書き漏らした条件④があるのでしょうか。
しかも、ジャンプに関しての言及も一切ありませんから、ジャンプしたときに上手くいかないなどと言われても答えようがありません。

やはりソースコードが有ったほうが議論が捗ると思います。