それでは、このような効果をどのように作成すればよいでしょうか?私たちはピクセルシェーダー、ブレンドモード/フィルター、ビットマップ効果、パーティクルシステム、または何を話しているのですか?プラットフォーム固有ではありません。私は理論を探していますが、具体的な例やリンクは素晴らしいでしょう。そして、詳細が良いほど。
上記のすべて。
あなたが彼らのソースコードを突き通さない限り、あなたは彼らがそれをどのようにしたかを正確に知らないかもしれません。
ただし、2つのゲームの外観から、どちらも船に接続されて航行するジオメトリのように見えます。基本的なポイントスプライトパーティクルシステムであるとは限りませんが、それほど難しくはありません。
一部のゲームでは曲線アルゴリズムを使用し、そこから頂点のリストを生成し、トレイルの2つのエンドポイントに異なるテクスチャを適用して少しのテクスチャリングを行います。宇宙へと続く。
プレイヤーの船は動きが予測できないため、興味深いケースです。カーブアルゴリズムの制御点を更新するか、最終的な船の位置をサンプリングして、それに基づいて頂点位置を生成する必要があるかもしれません。
見てみましょうこの回答をあなたがコントロールポイントのオフ動作する何かを持っているしたい場合は、以前の質問から。ただし、プレイヤーの位置をサンプリングすることは、ニーズに応じてはるかにうまく機能し、理解しやすくなります。
考えさせるものは次のとおりです。
プレーヤーの位置のサンプリングを開始します。これらのポイントは、トレイルのボディセグメントを形成し、そこからジオメトリを構築できます。個別のテクスチャを持つ個別のテールセグメントを保持することをお勧めします。プレーヤーが回転していることを検出し、これらのセグメントの頻度を増やすと、ブロック曲線になってしまいます。それが目的の効果でない限り:)
特定のイベントでは、セグメントは生成を停止する必要があり、既存のセグメントは、テールに最も近いボディセグメント(テール自体ではない)から開始して、ゆっくりとスケーリングを開始する必要があります。これは、プレーヤーの速度が低下した場合です。しかし、セグメントが縮小される速度がプレイヤーの船速と一致する場合、新しいセグメントは、セグメントが取り出されるとすぐに形成されます。そのため、これはフルモーションの船でもうまく機能します。トレイルの長さは常に同じです-これにより、流動性のある一貫した流れが得られます。
ヘッドセグメントは、常にプレイヤーの現在の位置にあるべきです。ターンが検出されると、既存のヘッドセグメントがボディセグメントに追加され、新しいヘッドセグメントが開始されます。繰り返す。テクスチャによっては、各セグメントの長さも最大になる場合があります。
これにより、この効果を簡単にモデル化できます。より多くのセグメントが提供されない限り、効果は常にそれ自体で減少/縮小するという考えから脱却し、収縮しないように速度で遊んでいます。