Chaos Vehicles の設定方法

このガイドでは、Chaos Physics ソルバを使用するようにビークルを設定する方法を説明します。

Choose your operating system:

Windows

macOS

Linux

前提トピック

このページは以下のトピックへの知識があることを前提にしています。まず以下のトピックの内容についてご確認をお願いします。

ビークルは以下の固有アセットで構成されます。

  • スケルタルメッシュ

  • 物理アセット

  • アニメーション ブループリント

  • ビークル ブループリント

  • 1 つ以上の ホイール ブループリント

これらは作成対象が自動車でもオートバイでも同様です。このガイドでは、こうしたすべてのアセットについて、Chaos Vehicle を設定する以下のプロセスを説明します。

  1. Chaos Vehicles プラグインを有効化する。

  2. Chaos Wheel ブループリントを作成して編集する。

  3. Vehicle メッシュをインポートする。

  4. Vehicle Handler ノードを使用してアニメーション ブループリントを作成する。

  5. Vehicle ブループリントを作成する。

  6. ビークルのコントロール入力を設定する。

  7. ビークルの Game Mode を設定する。

要件

Chaos Vehicles プラグインを使用する前に、Chaos をコンパイルして有効化する必要があります。

ケイオス物理の概要

Chaos Vehicles プラグイン

[Edit (編集)] > [Plugins (プラグイン)] > [Vehicles] を順に選択して、プロジェクトで ChaosVehiclesPlugin を有効化します。

ChaosVehiclesPlugin.png

  • プラグインを有効化してから Unreal Editor を再起動します。

  • PhysX が有効の場合、このプラグインは機能しません。

Chaos Wheel ブループリント

ホイール ブループリントで、ホイール / サスペンション / ブレーキの組み合わせについて構成を設定します。

多くの場合、各ビークルに少なくとも 2 種類のホイールが必要で、それはステアリング / エンジン / ハンドブレーキの影響を受けるホイール (または車軸)と、影響を受けないホイールです。また、フロントとバックでサイズが異なるホイールが必要な場合があります。その際は、さまざまな半径、質量、幅、ハンドブレーキ効果、サスペンション、さらにホイールに対する他の多くのプロパティを設定して、ビークルに対して必要な制御を行います。

ビークルに装備できるホイールの数に制限はありません。複数のビークルが同じホイール ブループリントを共有できますが、この設計はホイールの寸法とサスペンションの制限が同一である場合にのみ有効です。

ブループリントを作成する

  1. コンテンツ ブラウザで [Add New (新規追加)] をクリックしてから [Blueprint Class (ブループリント クラス)] を選択します。

  2. [Pick Parent Class (親クラスを選択)] ウィンドウの [All Classes (すべてのクラス)] で「wheel」と検索して ChaosVehicleWheel を選択します。

  3. コンテンツ ブラウザに新しいアセットが作成されます。後で見つけやすいように、わかりやすい名前を付けます (例: 'BP_ChaosFrontWheel')。

  4. ( オプションの操作 ) これらの手順をもう一度繰り返して、 フロント リア のホイール タイプを作成します。これらを車軸ごとに設定します。

ブループリントを編集する

ここまでで作成した Chaos Wheel ブループリントを、ブループリント エディタでを開き、ホイールを編集するオプションを確認します。

まず最初にホイールごとに変更する必要のあるプロパティが 5 つあり、残りのプロパティはテスト中のビークルのパフォーマンスに影響するため後で調整する必要があります。

プロパティ

メモ

Wheel Radius

この項目はセンチメートル (cm) 単位で表したレンダリング モデルのサイズと一致させる必要があります。

Affected by Handbrake

この項目はリア ホイールで選択します。

Affected by Engine

リア ホイールでリア ホイール駆動 (RWD)、フロント ホイールでフロント ホイール駆動 (FWD)、全ホイールで全ホイール駆動 (AWD) を選択します。

Affected by Steering

多くの場合、複数のフロント ホイールで選択します。たとえば、トラックの運転台に 4 ホイール ステアリングを装備して、その 2 列目のステアリング角度は異なる場合があります。または、負のステアリング角度を設定したステアリングをリア ホイールに選択することで、全ホイール ステアリングを実現します。

Max Steer Angle

通常これは正の値 (角度単位で指定) ですが、全ホイール ステアリングで使用するリア ホイールのカウンター ステアリングに対しては負の値を設定できます。

ChaosWheelBlueprint.png

Chaos Wheel ブループリント クラスのデフォルトの例。

ビークル メッシュ

この手順を引き続き進める場合は、ビークル メッシュをプロジェクトにインポートすることを推奨します。ビークル メッシュがない場合は、こちらから Vehicle Mesh のサンプル をダウンロードして展開します。

この説明では「 Vehicle User Guide (ビークルのユーザー ガイド) 」のバギー ビークル メッシュを使用します。

Vehicle 物理エディタ

プロジェクトにビークル メッシュをインポートしたら、次の手順に従い Vehicle 物理エディタ でメッシュを表示します。

  1. コンテンツ ブラウザでビークルのスケルタル メッシュを見つけます。

  2. そのビークル スケルタル メッシュをダブルクリックします。

  3. [Physics (物理)] を選択して Vehicle 物理エディタを開きます。

    PhysicsTabEditor.png

  4. Vehicle 物理エディタの例を以下に示します。

    PhysicsTabEditor1.png

Vehicle アニメーション ブループリント

アニメーション ブループリントは、タイヤの回転、サスペンション、ハンドブレーキ、ステアリング アニメーションなど、そのビークルに固有のビークル スケルタルメッシュ アニメーションを制御するために使用します。 Wheel Controller Node を使用してアニメーションを操作することで、こうした種類のアニメーションの作成時に多くの作業を軽減できます。

Wheel Controller ノード

アニメーション ブループリントでビークルのアニメーションを取得して制御する場合、 Wheel Controller ノードを使用することで追加の設定をほとんど、またはまったく行わずにビークルのアニメーションをすべて簡単に制御できます。

WheelComponent.png

このノードはホイールから必要な情報 (例: 「回転速度はどのくらいか」、「ハンドブレーキの影響を受けているか」、「このホイールのサスペンション設定値は何か」) を取得して、そのクエリ結果をホイールが関連付けられたボーンのアニメーションに変換します。

アニメーション ブループリントを作成する

  1. コンテンツ ブラウザで [Add New (新規追加)] をクリックしてから [Animation (アニメーション)] にマウス カーソルを合わせて、 [Animation Blueprint] を選択します。

  2. [Create Animation Blueprint] ウィンドウで、ビークルの一覧からスケルトンを見つけて選択し、 [OK] をクリックします。

  3. このビークル アニメーション ブループリントに名前を付けます。

  4. 作業対象のアニメーション ブループリントが作成されるので、これをコンテンツ ブラウザから開きます。

  5. メイン ツールバーから [Class Settings (クラス設定)] を選択し、 [Details (詳細)] パネルの [Class Options] [Parent Class (親クラス)] VehicleAnimationInstance に設定します。

    VehicleAnimInstance.png

    親クラスを設定する

  6. アニメーション グラフ で右クリックしてコンテキスト メニューを開き、 Mesh Space Ref Pose ノードを検索して選択します。

  7. 次に アニメーション グラフ で右クリックして、 Wheel Controller を検索して作成します。

  8. これらのノードを接続すると、この アニメーション グラフ は次のようになります。

    WheelController.png

    アニメーション グラフの例

  9. ( オプションの操作 ) ビークル ゲームのサンプル バギーのように、追加のストラットやその他のサスペンションが必要な場合は、アニメーション グラフ内に追加のノードを加えて、これらのポリゴンに影響を及ぼすジョイント部分を処理する必要があります。たとえば、ビークル ゲームのバギーでは、車軸とホイールの接続部分の制御に追加のジョイントを使用しています。これらは Look At ノードにより駆動され、ホイールのジョイント部分は Wheel Controller ノードにより駆動されます。次の例で示すように、この Look At ノードはサスペンションとホイールの接続を維持します。

WheelControllerLookAtNode

以下で示す Look At ノード構成。

ボーン

Look At

F_L_Suspension

F_L_wheelJNT

F_R_Suspension

F_R_wheelJNT

B_L_Suspension

B_L_wheelJNT

B_R_Suspension

B_R_wheelJNT

B_L_wheelJNT

B_L_Suspension

B_R_wheelJNT

B_R_Suspension

バギー スケルトン ツリー の例から抜粋

NewBuggyBlueprintSkeletonTree

Vehicle ブループリントを作成する

この手順では、以前に設定したアセットをすべてまとめて Vehicle ブループリントを作成します。

  1. コンテンツ ブラウザで [Add New (新規追加)] をクリックしてから [Blueprint Class (ブループリント クラス)] を選択します。

  2. [Pick Parent Class (親クラスを選択)] ウィンドウ の [All Classes (すべてのクラス)] で「wheel」と検索して WheeledVehiclePawn を選択します。

  3. この Vehicle ブループリントに名前を付けます。

  4. 新しく作成した Vehicle ブループリントをコンテンツ ブラウザで選択して開きます。

  5. コンポーネント ウィンドウで Mesh という名前の スケルタル メッシュ コンポーネント をクリックします。次に [Details (詳細)] パネルで、このスケルタル メッシュをビークルのスケルタル メッシュ アセットに設定します。

  6. ブループリントの生成した Anim Class をビークルのアニメーション ブループリントに設定します。

  7. [Physics] の [Details (詳細)] から [Simulate Physics (物理シミュレーション)] を有効化します。

  8. [Components (コンポーネント)] ウィンドウで [Add Component (コンポーネントを追加)] をクリックして [Camera] を選択します。

  9. ブループリント エディタのビューポートに、その Camera を配置します。

    ViewportView.png

    この例ではカメラをビークルの後ろに配置し、わずかに角度をつけて、ビークルに向かって見下ろすように傾けています。

  10. Camera コンポーネントを選択したまま、 [Details (詳細)] パネルの [Camera Settings (カメラの設定)] [Use Pawn Control Rotation] が無効であることを確認します。

    これにより、プレーヤー コントローラーのビュー方向ではなく、カメラのビュー方向にカメラをロックします。

  11. 次に、[Components] ウィンドウで [Vehicle Movement (ビークルの動き)] コンポーネントを選択します。

  12. [Details (詳細)] パネルの [Vehicle Setup] セクション配下から、 [Wheel Setups] の横にある矢印を展開し、それぞれのホイールに以下を設定します。

    • Wheel Class に作成した Wheel ブループリントに設定する。

    • Bone Name に、ホイールで制御する必要のあるジョイント名を設定する。

ホイールを割り当てる順番は、フロントでもリアでも影響はありません。影響を及ぼすのは Bone Name Wheel Class の設定のみです。分かりやすくするために、それぞれの新しいビークルでホイールの順序を同一に保つことを推奨します (例: FL、FR、BL、BR)。

4 つ以上のホイールが必要なビークルの場合は、 Wheel Setups プロパティの横にある [+] アイコンをクリックしてさらに追加するか、もしくは必要に応じてホイールを削除します。

ビークルのコントロール入力を設定する

  1. メイン メニューから [Edit (編集)] > [Project Settings (プロジェクト設定)] を選択し、[Project Settings] ウィンドウを開きます。

  2. サイド パネルの Engine セクションから [Input] を選択します。

  3. 以下に示すように、ステアリング、スロットル、ブレーキ、ハンドブレーキについてコントロール入力を設定します。ここでは、ハンドブレーキ以外のすべてで、ゲーム コントローラーによるアナログ入力を使用します。

    InputSetup.png

  4. これらのコントロールを設定したので、次はこれらに少し変更を加えます。作成した Vehicle ブループリント を開いて [Event Graph (イベント グラフ)] を見つけます。[Project Settings Input] セクションで作成した、こうした軸とアクションのイベントを、ここから呼び出せます。

  5. 入力イベントから、ビークル コンポーネント セットの入力関数に接続します。

    InputEventGraph.png

ビークルの Game Mode を設定する

  1. コンテンツ ブラウザで [Add New (新規追加)] をクリックして、メニュー リストから [Blueprint Class (ブループリント クラス)] を選択します。

  2. [Pick Parent Class (親クラスを選択)] ウィンドウから [Game Mode Base] を選択し、 [Select] をクリックして Game Mode ブループリントを作成します。

    BluePrintGameMode.png

  3. コンテンツ ブラウザ でその Game Mode ブループリントをダブルクリックして開き、編集できるようにします。

  4. [Details (詳細)] パネルの [Classes] で、[Default Pawn Class (デフォルト ポーン クラス)] の横にあるドロップダウンから、先ほどの Vehicle ブループリントを選択します。

    defaultPawnClass1.png

  5. [Save (保存)] をクリックしてから、ウィンドウを [Close] で閉じます。

  6. メイン ビューポート ウィンドウの [World Settings (ワールドセッティング)] タブにある [Game Mode] セクションで、 GameMode Override に作成した Game Mode ブループリントを設定します。

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

以上で Chaos Vehicle の設定プロセスが完了し、ゲームでビークルを実行する準備が整いました。

既存の PhysX ビークルを Chaos に変換する場合は、その別のプロセスについて「 PhysX to Chaos Vehicle Conversion 」ガイドを参照してください。

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