ソニックゲームの物理の概要。 パート7および8:スプリングとギズモ、スーパースピード



ソニックに関するゲームの物理学に関する一連の記事の続き。 この投稿では、さまざまなゲームオブジェクトとその超大国からのキャラクターの反発について説明します。

シリーズの他の部分へのリンク:
パート1:固体タイル
パート2:実行中
パート3および4:ジャンプとスピン
パート5と6:リングの喪失と水中への侵入

パート7:スプリングとギズモ



スプリングパッド

赤いスプリングパッドはSonicに16の速度を与え、黄色のスプリングパッドは10の速度を与えます。パッドの方向(上または下)に応じて、値は負または正であり、したがってY軸に沿った速度にはこの値が与えられます。 スプリングパッドが左または右に向けられている場合、速度値はそれぞれ負または正であり、X軸に沿った速度はこの値に等しくなります。 垂直プラットフォームは速度Xに影響しません。また、水平プラットフォームは速度Yに影響しません。



斜めのスプリングパッド

Sonic the Hedgehog(16ビット)には、斜めのスプリングパッドはありません。 ただし、ソニック2(16ビット)、3、ナックルズおよびCDにあります。 ソニック2、3、およびナックルズでは同じように機能しますが、ソニックCDでは原理が異なります。

Sonic 2、3、およびKnucklesでは、対角スプリングが速度XおよびYを対応する符号の付いたスプリングパッドの値に設定します。 したがって、直立したバネは、-16に等しいYの速度と16に等しいXの速度を提供します。この方法の問題は、技術的にソニックが水平または垂直よりも斜めに速く押し出すことです。 これは、開発者が余弦と正弦を考慮しなかったためです。

ソニックCDでは、それらは修正されています。 45度の角度のサインとコサインの絶対値は同じであることが便利なので、1つの値のみが必要です。 速度は、赤色のバネでは11.3125、黄色のバネでは7.0703125になります。

水平制御ロック

ソニックが水平方向のバネ(赤または黄色)で跳ね返るとき、彼は16サイクルの間速度Xに減速したり影響を与えたりすることができません。 エンジンはこれを、急な坂を滑り降りるときと同じ水平制御ロックを設定することで実現します(S3およびナックルでは、バイト$ 32-33はプレイヤーオブジェクトの状態の表です)。 なぜ水平制御をブロックするのですか? スプリングと衝突した場合、プレーヤーはおそらくスプリングの方向に十字を押します。これにより、ブレーキングアニメーションでソニックが反発する可能性があります。 入力を一時的に無視することは、迅速でエレガントなソリューションです。

アニメーション

上向きのスプリングパッドの場合、ソニックが上向きの速度をすべて失うと、彼は歩行アニメーションに入ります。 このアニメーションのフレームは、8サイクルごとに変化します。

斜めのスプリングパッドのいずれの場合でも、ソニックは空中を歩くアニメーションをまったく行いません。 5.5サイクルごとにフレームが変化する「コルク抜き」(3次元回転)のアニメーションを保存します。

風船

ソニックがカーニバルナイトゾーンレベルで風船と衝突すると、衝突の角度に関係なく、彼の速度Yは-7に設定されます。 速度Xは変わりません。



バンパー

スプリングヤードゾーンのバンパーの音速Xは、7 * cos(p)および速度Y 7 * -sin(p)に等しくなります。ここで、pはバンパーの中心とソニックの角度です。 速度は、バンパーと衝突する前のソニックの速度に関係なく設定されます。





カーニバルナイトゾーンの銃は、ソニックに16 * cos(p)の水平速度と16 * -sin(p)の垂直速度を与えます。ここで、pは銃の角度です。



バネ付きカバー

化学プラントゾーンのパイプを閉じる赤いスプリングキャップはスプリングパッドのように機能しますが、黄色のパッドよりもわずかに強力です。 衝突では、ソニックに-10.5のY速度を与えます。



ターンテーブル

化学プラントゾーンでハリネズミを前進させる黒いターンテーブルは、Xの速度を16に設定します。ただし、すでに速く動いている場合、速度を落とすことはありません。

空のエレベーター

ヒルトップゾーンレベルの空にあるエレベーターは、Xの速度が2、Yの速度が1で移動します。



きのこ

Mushroom Hill ZoneのMushroomはスプリングパッドのように機能しますが、その後のバウンスはそれぞれ前のバウンスよりも高くなります(最大3バウンス)。 最初のリバウンドは速度Y -6.5、2番目の-7.5、3番目の-8.5を提供します。



壁の破壊

Sonic 1、2、3、およびKnucklesでは、回転中に破壊可能な壁を突破するには、キャラクターの絶対速度Xが4.5を超える必要があります(衝突時に壁を崩し、回転する必要がないKnucklesキャラクターを除く)。 このような壁との衝突は速度Xに影響しません。

ただし、Sonic 3とKnucklesでKnucklesが壁を破壊すると、X速度は変化しませんが、彼が壁にぶつかるフレーム内を移動することはありません。 Sonic 3とKnucklesでスピンしている間にSonicが壁を突破する場合も同様です。

Sonic CDでは、X速度制限が削除されました。 ソニックは、破壊可能な壁の横にジャンプしたり、任意の速度で回転したりすることで、破壊可能な壁を突き刺すことができます。

破壊可能なブロックと石

ソニックは、ヒルトップゾーンの石、マーブルゾーンのブロック、化学プラントゾーンのパイプカバーなどの破壊可能なオブジェクトにジャンプすると、-3の速度で跳ね返ります。 速度Xは変わりません。



パート8:超高速



超高速ブーツ

翻訳者のメモ:超高速靴は速度を上げるボーナスであり、20秒間持続し、ソニックの加速と最大速度を上げます。 これらのモニターをノックアウト:



可変価値
加速0.09375
制動
0.5(変更なし)
摩擦
0.09375
最高速度12
空気加速
0.1875
回転摩擦
0.046875
回転ブレーキ
0.125(変更なし)

:ソニックが水に落ちた場合、スーパーファストシューズのすべての効果はゼロにリセットされます。 水中の変数はそれらを完全に置き換えます。 水から飛び出すと、超高速ブーツの効果は戻りません。 これは5つのゲームすべてに当てはまるようです。

ソニック3とナックルズでは、作曲のテンポが1.25倍になります。

スーパー/極超音速

翻訳者注:スーパーソニックはソニック・ザ・ヘッジホッグのスーパーフォームです。 この形式のソニックは、ゲームソニックザヘッジホッグ2で最初に使用され、その後、各メインソニックゲームでさまざまなボリュームで実装されました。 7つのカオスエメラルドをすべて収集し、少なくとも50のリングを見つけて、すべての保護を失うことで、超音速に変えることができます。 ダブルジャンプを行ったソニックは黄色のスーパーソニックになります。これはソニックのより速く、ほとんど不死身の形です。 ただし、リングはこの形式の維持に費やされます(以下を参照)。



ソニック3およびナックルズゲームでは、特別なレベルですべてのカオスエメラルドを収集した後、7つのスーパーエメラルドを収集し、キャラクターハイパーフォームに変えることができます。 彼女は収集した指輪も使います。 このモードでは、キャラクターは指示されたダブルジャンプを行い、画面上のすべての敵を破壊し、スーパーフォームとは異なり、drれることはできません。





変数は、指定された変数を除き、Sonic 2では超音速、Sonic 3およびナックルでは超音速または極超音速を指します。

可変価値価値(水中)
加速
0.1875
0.09375
制動
1
0.5
摩擦
0.046875(変更なし)
0.046875(変更なし)
最高速度
10
5
空気加速
0.375
0.1875
ジャンプスタート速度
8
3.5(変更なし)
ボタンを離したときのジャンプ速度
4(変更なし)
2(変更なし)
回転摩擦
0.09375(Sonic 3およびKnucklesでは0.0234375)
0.046875(Sonic 3およびKnucklesでは0.0234375)
回転ブレーキ
0.125(変更なし)
0.125(変更なし)

ハイパーブラスト(ハイパーソニックのみ)

プレーヤーがもう一度エアジャンプボタンを押すと、ソニックのX軸に沿った速度は、右を向いている場合は8に等しく、左を向いている場合は-8に等しく、Y軸に沿った速度はゼロにリセットされます。 プレーヤーがボタンを押したときにクロスピースを「上」に保持すると、Y軸に沿ったソニックの速度は-8に等しくなり、X軸に沿ってリセットされます。

スーパーテール、スーパー/ハイパーナック

可変価値価値(水中)
加速
0.09375
0.046875
制動
0.75
0.375
摩擦
0.046875(変更なし)
0.046875(変更なし)
最高速度
8
4
空気加速
0.1875
0.09375
ジャンプスタート速度
(変更されません)
(変更されません)
ボタンを離したときのジャンプ速度
(変更されません)
(変更されません)
回転摩擦0.0234375
0.0234375
回転ブレーキ
0.125(変更なし)
0.125(変更なし)
登る速度(ナックルのみ)
2
2
初期スリップ速度(ナックルのみ)
4(変更なし)
4(変更なし)
グライドアクセラレーション(ナックルのみ)
0.046875
0.046875

Wall Quake(Hypernaklesのみ)

ナックルが画面を揺らし、壁に接触しているすべての敵を破壊するには、サイクルあたり4.5ピクセル以上の速度で滑空する必要があります。

リングの選択

スーパー/ハイパーモードでは、キャラクターは60サイクルごと、または1秒ごとに1つのリングを失います。

注釈

スーパー/ハイパーキャラクターがモニターを壊してスーパーファストブートを取得すると、スーパー/ハイパーモード変数がスーパーファストブート変数に置き換わり、実際にキャラクターの速度が低下します(ただし、最高速度はわずかに高くなります)。 これは、独自のエンジンでは望ましくない場合があります。

スーパー/ハイパーキャラクターが水に落ちると、上記の変数が使用されます。 ただし、それらが既に水中でスーパー/ハイパーになると、スーパー/ハイパーモード変数は水中にないかのようになります。 これはバグであり、エンジンで回避する必要があります。

気配りのある好奇心の強い読者のためのPS。 ここで、最初の暗号化された単語は終了します。 言葉はソニックの宇宙には当てはまりませんが、解読には彼女の知識が必要です(ただし、グーグルではそれを通り抜けることはかなり可能です)。

画像

Source: https://habr.com/ru/post/J306756/


All Articles