Water Buoyancy コンポーネント

オブジェクトを水面に浮かべる Buoyancy コンポーネントを設定して使用する方法について説明します。

Water システムには、ブループリント Buoyancy コンポーネントが含まれています。これは、球体 (ポントゥーン) を使用して水面と相互作用するオブジェクトの単純なボリュメトリック近似値を作成します。この近似値は、浮力を使用して同時に複数のオブジェクトをサポートすることができる低コストのソリューションを提供します。

Water Buoyance with many objects

Water Buoyancy ブループリントの例

Water プラグインには独自のサンプル コンテンツがあり、使用したり試したりすることができます。これには、キューブ状のスタティックメッシュを使用した Buoyancy コンポーネントが設定されているブループリントが含まれます。キューブを水面でバランスよく、真っすぐな状態にするために、ブループリントは 4 つのポントゥーンを使用して設定されています。

Buoyancy のサンプル ブループリントは [Engine (エンジン)] > [Plugins (プラグイン)] > [Water Content (Water コンテンツ)] > [Blueprints (ブループリント)] の下にあり、「BP_BuoyancyExample」という名前が付いています。そのサンプルを任意の Water Body のサーフェス上にドラッグアンドドロップします。[Play (プレイ)] または [Simulate (シミュレート)] をクリックすると、次のサンプルのように自動的に水面に合わせてぷかぷかと浮きます。

ブループリントに Water Buoyancy を設定する

次の手順は、Buoyancy コンポーネントを使用する独自のブループリントの設定方法と使用方法を示しています。

  1. コンテンツ ブラウザ で、新しい ブループリント クラス を作成し、Actor クラスを選択して名前を付けます。このガイドでは、「BuoyancyExampleBP」を使用します。

    Create a Blueprint Actor.

  2. ブループリントを開きます。[Components (コンポーネント)] パネルで [Add + (追加 +)] ドロップダウンをクリックし、[Static Mesh (スタティックメッシュ)] を選択します。

    Add a Static Mesh Component to your Blueprint.

  3. Static Mesh コンポーネントを選択します。[Details (詳細)] パネルでメッシュを [Static Mesh] 割り当てスロットに割り当てます。

    Assign a Static Mesh to the Static Mesh Component in your Blueprint.

    このガイドの図とまったく同じように作業を進める場合は、使用されているメッシュをダウンロードできます。ダウンロードしたメッシュを直接 コンテンツ ブラウザ にドラッグアンドドロップしてください。

    ボートのメッシュ

  4. [Details] パネルで [Simulate Physics (物理シミュレーション)] を有効にして、[Physics (物理)] カテゴリの下の [Mass (kg) (質量 (kg))] の隣にあるチェックボックスをオンにします。

    Enable Physics in the Static Mesh Component of your Blueprint.

    Buoyancy コンポーネントが機能するには、[Mass (kg)] が有効になっている必要があります。

  5. [Components] パネルで、[Add +] ドロップダウン メニューを使用して Buoyancy コンポーネントを追加します。

  6. Buoyancy コンポーネントを選択します。[Buoyancy Data (浮力データ)] の下にある [Details] パネルで、メッシュを水面に浮かべる ポントゥーン をいくつか追加します。最初に、[Add (+)] アイコンをクリックしてポントゥーンを 1 つ追加します。

    Add Pontoons to the Buoyancy Component of your Blueprint.

    次のように、配列に新しいポントゥーン要素が追加されます。

    Buoyancy Component Pontoon settings in your Blueprint.

  7. さらに 3 つポントゥーン を配列に追加して、配列要素を全部で 4 つにします。[Relative Location (相対位置)] を使用してこれらのポントゥーンをメッシュの前後に配置し、水面で安定させます。

    Listing of the four Pontoons added to your Buoyancy Component of your Blueprint.

    • Index 0 (後ろの左側): 660、370、0

    • Index 1 (後ろの右側): 660、-370、0

    • Index 2 (前の左側):-220、370、0

    • Index 3 (後ろの右側): -220、-370、0

    相対位置を入力しても、ポントゥーンは視覚化されません。ただし、Static Mesh Sockets および Center Socket タグを使用して特定の位置データを入力せずにポントゥーンを配置したり、ブループリントに Scene コンポーネントを追加してその位置をポントゥーンの相対位置に手動でコピーしたりすることができます。

  8. ブループリントの [Components] パネルで、StaticMesh コンポーネントをクリックして DefaultSceneRoot までドラッグし、新しい Root コンポーネントにします。

    Making the Static Mesh component the root of your Blueprint.

    Buoyancy コンポーネントが適切に機能するには、Static Mesh がルートである 必要があります

  9. Buoyancy ブループリントをレベルにドラッグアンドドロップし、水面上に配置します。[Play] または [Simulate] を押して結果を確認します。

Buoyancy コンポーネントのプロパティ

Buoyancy コンポーネントには次のようなプロパティがあります。これらはポントゥーンが水面と相互作用する方法についての物理を制御します。

クリックしてフルサイズで表示。

次のプロパティは、Buoyancy コンポーネントを選択すると [Buoyancy] セクションのブループリントの [Details] パネルで使用できます。

プロパティ

説明

Pontoons

コンポーネントのボリュームを概算するためにコンポーネントに追加されるさまざまな半径の利用可能なポントゥーンの配列。

  • Center Socket: このポントゥーンを中心に揃えるスタティックメッシュのソケット。

  • Relative Location: 親アクタの位置に対するポントゥーンの位置。Center Socket が指定されている場合は、Center Socket によってオーバーライドされます。

  • Radius: このポントゥーンの半径サイズ (ワールド単位)。

  • FXEnabled: このポントゥーンは、ユーザーによって実装されるバースト キューが水に入る場合のビジュアルまたはオーディオ エフェクトの候補として考慮されますか?

Center Pontoons on COM

有効にすると、相対位置を使用している場合に重心を軸にポントゥーンを揃えます。これは、ソケットを使用してポントゥーンの位置を指定している場合は使用されません。

Buoyancy Coefficient

各ポントゥーンに適用されている浮力を増加します。

Buoyancy Damp

Z ベロシティに基づいて減衰をスケールする減衰係数。

Buoyancy Damp 2

Z ベロシティに基づいて減衰をスケールする 2 番目の減衰係数。

Buoyancy Ramp Min Velocity

浮力に傾斜を適用し始める最小ベロシティ。

Buoyancy Ramp Max Velocity

浮力が上昇できる最大ベロシティ。

Buoyancy Ramp Max

浮力が上昇できる最大値 (最大ベロシティ以上)。

Max Buoyant Force

上方向への最大浮力。

Water Shore Push Factor

オブジェクトを岸辺に向けて押す係数 (主にパフォーマンス面の理由によります)。

Water Velocity Strength

Water Body River で力を適用する係数。

Max Water Force

Water Body River によって適用される最大のプッシュ フォース。

Apply Drag Forces in Water

水中を移動するオブジェクトに抗力を適用するかどうかを指定します。

Drag Coefficient

速度に基づいてリニアの抗力を適用するための係数。

Drag Coefficient 2

速度の 2 乗に基づいてリニアの抗力を適用するための係数。

Angular Drag Coefficient

オブジェクトの回転に抵抗する角度抗力を適用するための係数。

Max Drag Speed

抗力が適用される最大速度。

Apply River Forces

エンジンが下流へのプッシュや岸辺へのプッシュなど、川の力を適用するかどうかを指定します。

River Pontoon Index

ポントゥーンの水力を計算するリスト。横方向のプッシュやプルを計算し、可能な場合は下流への計算から主力計算の水のベロシティを取得するために使用します。

Water Shore Push Factor

川でオブジェクトを岸辺に向けて押す係数 (主にパフォーマンス面の理由によります)。または、マイナスに設定して川の中央へプッシュします。

River Traversal Path Width

オブジェクトが横断する川の内側に沿ったパスの幅。

Max Shore Push Force

川によって端または中央に向かって適用される最大プッシュ フォース。

Water Velocity Strength

川でプッシュ フォースを適用する係数。

Max Water Force

川によって適用される最大プッシュ フォース。

Always Allow Lateral Push

有効にすると、川を前進する速度に関係なく、オブジェクトを横方向にプッシュすることができます。

Allow Current when Moving Fast Upstream

有効にすると、高速で上流に向かって進むときに水流を適用します。車両の場合は無効にすると、より詳細に制御できます。

Apply Downstream Angular Rotation

有効にすると、川の下流方向に沿ってオブジェクトを並べるために回転力を適用します。

Downstream Axis of Rotation

下流への角度回転の位置を揃えるオブジェクトに関する軸。

Downstream Rotation Strength

下流への角度回転を適用する強度。

Downstream Rotation Stiffness

下流の方向に沿ってオブジェクトの位置を揃えるために使用されるスプリングの剛性。

Downstream Rotation Angular Damping

下流の方向に沿ってオブジェクトの位置を揃えるために使用されるスプリングの減衰。

Downstream Max Acceleration

下流への回転を更新するたびに適用する最大回転力。

Water Buoyancy をデバッグする

Buoyancy コンポーネントと水面との相互作用は、コンソール コマンド「r.Water.DebugBuoyancy 1」を使用してデバッグできます。各ポントゥーンは、水面と相互作用するポイントのグリッドに沿って描画されます。

次の例では、さまざまな間隔やサイズのポントゥーンを使用して、いくつかの形状やボートのメッシュを示しています。

Unreal Engine のドキュメントを改善するために協力をお願いします!どのような改善を望んでいるかご意見をお聞かせください。
調査に参加する
キャンセル