0

Box2D と cocos2D を使用する iPhone 用のプラットフォーマーに取り組んでいます。

ソニック・ザ・ヘッジホッグのゲームに見られるように、制御されたキャラクターに同様の動作を作成する方法を見つけようとしていますが、発射物といくつかのレベルオブジェクトを現実的な物理学に従って動作させたいため、Box2D 物理ライブラリの使用を維持します。制御されたキャラクターが関与する特定の状況 (ジャンプ、オブジェクトへのバレルなど) とともに。

私が直面している主な問題は、凸状の曲線を通過するときにキャラクターを地面に置いたままにし、地面からかなりの距離が得られるまで地面との接触感を維持することです。キャラクターが地面にいるときに左右のコマンドに反応するようにしたいのですが、私の形状はわずかなカーブを越えると地面から離れる傾向があり、連絡が再確立されるまで反応時間が少し遅れます。視覚的には分離はありませんが、地上にいるかいないかの状態を変えるのに十分な大きさです。また、キャラクターは、私が望むように大きな曲線を「抱きしめる」ことはありません。

地面にいるときにさらに下向きの力を加えようとしましたが、大きなカーブには十分な速さで機能せず、効果的であるほど大きな力はキャラクターの通常の動きを妨げます. これらの問題について何か考えはありますか?

4

1 に答える 1

0

私の経験では、真のコンソールのような感覚を得るには、特にプレイヤー キャラクターに対して非現実的な物理を作成する必要があります。

box2d では、衝突検出にアクセスしながら、インパルスを使用して移動システムをハッキングできると信じています。それか、自分のキャラクターを動かないものにして、自分で動かしたかのどちらかでした。どれが私に合っているようだったか忘れてしまいます。数か月経ちました ;) 場合によっては、バグ (傾き?) を修正するために、y 軸のベクトルを無効化したと思います。

一般的なケースで動きが適切に機能している場合は、曲線と地面に接触しているときに動きを特別なケースにすることができます。物理学を自分で処理し、衝突検出のために現実の世界でのみたむろします。

もう 1 つのオプションは、ほとんどのオブジェクトに「偽の」物理を使用させ、box2d を衝突検出または「現実的な」オブジェクトにのみ使用することです。

于 2010-08-04T00:08:35.293 に答える