This document is about: QUANTUM 2
SWITCH TO

3D Platformerサンプル

Level 4

概要

動くプラットフォームは最近のゲームではよく見られる機能ですが、その作成は意外と難しいものです。 このサンプルでは、デフォルトの3Dキネマティックキャラクターコントローラー(KCC)を使って、動くプラットフォームシステムを作成する方法を紹介します。 これは、より複雑に動作させるために独自の動作システムを実装する良い出発点となります。

ダウンロード

バージョン リリース日 ダウンロード
2.1.0 2022年12月13日 Quantum 3D Platformer 2.1.0 Build 46

技術情報

このプロジェクトは以下によって開発されました:

  • Unity 2021.3.6f1
  • Quantum 2.1.0

スクリーンショット

moving platform gif
rotating platform gif
platform vertical gif

ハイライト

FPAnimationCurveの使用

移動と回転システムで FPAnimationCurve を使用すると、方向や速度の急激な変化を含むプラットフォームの移動または回転の正確な形状を指定することができます。さらにあらかじめ定義されたカーブの使用によって、プラットフォームの動きを各時点で手動で指定する必要がなくなりコードが読みやすくなります。

慣性

この技術サンプルには、プレイヤーがプラットフォームから出るときにプラットフォームの慣性をプレイヤーに転送するPlayerPlatformControllerAsset内のオプションが含まれています。そしてプレイヤーが地面や新しいプラットフォームにぶつかるまで、プラットフォームの速度がプレイヤーに適用されます。

説明

1) サンプルシーン

エディターウィンドウでシーンドロップダウンメニューを選択し、「Game」シーンをクリックします。 このシーンでは、ゲームでのプラットフォームレイアウトの一般的な例が示されています。

2) PlatformConfig

この技術サンプルはPlatformConfigアセットを使用し、移動プラットフォームの挙動を理解および操作しやすくしています。

フィールド 説明
MovementAmplitude 動作関連曲線の振幅。
RotationAmplitude 回転関連曲線の振幅。
MovementAxis どの軸の移動を適用するかのフラグ。
XMovementCurve X軸の移動カーブ。
YMovementCurve Y軸の移動カーブ。
ZMovementCurve Z軸の移動カーブ。
RotationCurve 適用される回転曲線(Y軸)

3) プラットフォームコンポーネント

プラットフォームコンポーネントはエンティティを有効なプラットフォームとして識別し、その移動に必要なデータを含みます。

フィールド 説明
Config このプラットフォームインスタンスに使用するPlatformConfigアセット。

4) PlatformControllerConfig

PlatformControllerConfigアセットは、プレイヤーがプラットフォームとどのようにやり取りするかの設定に使用されます。

フィールド 説明
ApplyRotationInertia プラットフォームを出た後に回転慣性を適用するかどうか。
PlatformAxisInertia 慣性にどの軸を適用するべきかを定義します。

5) PlayerPlatformController Component

PlayerPlatformControllerコンポーネントは、Platformエンティティとやり取りできるエンティティを定義します。

フィールド 説明
Config このコントローラーインスタンスに使用するPlatformControllerConfig

インテグレーション

1) 独自のPlatformConfigを作成

プロジェクトのResources/DB内の任意のフォルダに移動します。

右クリック -> Create -> Quantum -> PlatformConfig

creating platform config

インスペクターウィンドウで任意の調整をおこないます

editing platform config

2) 独自のプラットフォームを作成

新しいEntityに移動または作成します

PhysicsCollider3DコンポーネントとPlatformコンポーネントを追加します。

以前作成したPlatformConfigAssetに移動します

PlatformプロトタイプコンポーネントのConfigフィールドにドラッグします。

setting platform config

3) 独自のPlatformControllerConfigを作成

プロジェクトでResources/DB内の任意のフォルダに移動します。

右クリック-> Create -> Quantum -> PlatformControllerConfig

creating platform config

インスペクターウィンドウで任意の調整をおこないます

editing platform config

4) PlayerPlatformControllerを追加

プラットフォームの制御機能を追加するキャラクターを開くかまたは作成します。

PhysicsCollider3DコンポーネントとPlayerPlatformControllerコンポーネントを追加します。

以前作成したPlatformControllerConfigAssetに移動します

PlayerPlatformControllerプロトタイプコンポーネントのConfigフィールドにドラッグします。

setting player platform config
Back to top