データシート
DataTable はその名のとおり、ゲーム関連の大量のデータをその意味や用途に応じて分類して格納するテーブルであり、このうちデータフィールドには UObject の任意の有効な属性 (アセット参照情報を含む) を指定できます。 。設計者が CSV ファイルを DataTable にインポートするには、プログラマはまずエンジンがデータを解釈するための行コンテナを作成する必要があります。
テーブル内の列は、UStruct 内の変数を 1 対 1 の関係に従ってマップします。これらの変数は、 FTableRowBase
認識されるようにインポーターから継承する必要があります。最初の列のヘッダーには、コンテンツの各行の名前を定義する Name という名前を付ける必要があります。
他の列には最初にヘッダーが含まれ、次に各行に対応するデータが含まれます。この形式では、各行に FTableRowBase
継承された UStruct 構造内のすべてのデータが反映されます。
例
public:
FLevelUpData()
: XPtoLvl(0)
, AdditionalHP(0)
{}
/** "Name"一列中的字段表示当前的经验等级 */
/** 升级到下一级所需的经验值 */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category=LevelUp)
int32 XPtoLvl;
/** 升级后获得生命值加成 */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category=LevelUp)
int32 AdditionalHP;
/** 升级成就图标 */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category=LevelUp)
TSoftObjectPtr<UTexture> AchievementIcon;
};
-
Excel またはその他の表計算ソフトウェアで、ファイルを
.csv
形式として保存します。
LevelUpData 構造体を作成する -
Unreal Editor を開き、 コンテンツ ブラウザ で [インポート]をクリックします。
-
DataTable としてインポートする CSV ファイルを選択します。 次のタイプとしてインポートできます (Import As) 。
次のようにインポートします:
データテーブル (DataTable)
カーブテーブル (CurveTable)
フロートカーブ
ベクトル曲線
直線的なカラーカーブ
-
ドロップダウン リストから DataTable 行タイプ (DataTable Row Type)を選択します 。
-
残りの インポート オプション (インポート オプション) :
インポートオプション
説明する
余分なフィールドを無視する (余分なフィールドを無視)
インポートされたデータ内の余分なフィールドを無視するには true に設定します。 false に設定すると、それについて警告が表示されます。
欠落しているフィールドを無視する (欠落しているフィールドを無視する)
true に設定すると、存在するはずだが実際には欠落しているフィールドが無視されます。 false に設定すると、そのフィールドについて警告が表示されます。
インポートキーフィールド
キーとして使用する、インポートされたデータ内の明示的なフィールド。空の場合、
.JSON
名前が使用され、.CSV
見つかったフィールドが次の目的で使用されます。 -
これにより、 コンテンツ ブラウザの現在のディレクトリに DataTable オブジェクトが作成されます 。
-
オブジェクトをダブルクリックすると、エディターで DataTable の内容を表示できます 。オブジェクトを右クリックし、 メニューから 「再インポート」を選択すると 、オブジェクトを更新できます。オブジェクトを再インポートするときは、元のファイル パスが使用されることに注意してください。インポート直後のデータの表示は次のとおりです。
データ接続
これらのテーブル内のデータを結合するのは非常に簡単です。 プログラマの場合は、 DataTable と CurveTable のどちらを使用しているかに応じて、ブループリントで公開できる FDataTableRowHandle変数 または FCurveTableRowHandle変数を配置するだけです。コンテンツ プロバイダーの場合、次の 2 つのサブフィールドを持つパブリック フィールドが表示されます。
サブフィールド |
説明する |
---|---|
データテーブル/カーブテーブル |
データを保持するために使用されるテーブルへの参照。 |
行名 |
最初の列の個別のデータ行の名前/ヘッダー。 |