UDN
Search public documentation:

PlatformInterfaceFrameworkJP
English Translation
中国翻译
한국어

Interested in the Unreal Engine?
Visit the Unreal Technology site.

Looking for jobs and company info?
Check out the Epic games site.

Questions about support via UDN?
Contact the UDN Staff

UE3 ホーム > PlatformInterface フレームワーク

PlatformInterface フレームワーク


ALERT! このドキュメントでは、2011月8月のビルドで追加された機能およびシステムについて解説しています。

概要


PlatformInterface フレームワークとは、さまざまなプラットフォーム インターフェースのためのクラスの基本となるものです。汎用的なデリゲートをサポートしており、ティックのために登録すべきか否かをサブクラスに決めさせることもできます。

プラットフォーム インターフェース

  • [CloudDocumentStorageJP][クラウド ドキュメント ストレージ]] - クラウド ドキュメント ストレージを使用します。(例 : Apple の iCloud プラットフォーム)。
  • Facebook インテグレーション - iOS プラットフォームにおける Facebook とのインテグレーションです。
  • インゲーム広告 - iOS 上の iAd のようなインゲーム広告を表示します。
  • マイクロ トランザクション - インゲームでプロダクトを購入します。(例 : iOS 上でのアプリ内購入)。
  • Twitter インテグレーション - iOS プラットフォームにおける Twitter とのインテグレーションです。

PlatformInterfaceBase


PlatformInterfaceBase は、あらゆるプラットフォーム インターフェース クラスの基本クラスです。各プラットフォーム インターフェースは、このクラスを拡張して、プラットフォーム固有の機能を追加するとともに、独自のデリゲートの型を定義します。

プラットフォーム インターフェース デリゲート


汎用のデリゲート システムは、単一のデリゲート シグネチャから構成されており、このデリゲート シグネチャは、PlatformInterface フレームワーク内のあらゆるデリゲートによって使用されます。

<ignore-begin>
delegate PlatformInterfaceDelegate(const out PlatformInterfaceDelegateResult Result);
<ignore-end>

フレームワーク内のデリゲートからコールバックとして使用される関数は、このシグネチャと一致する必要があります。

デリゲートは、各プラットフォーム インターフェース サブクラスで定義される型に従って割り当てられます。利用可能な型を含む列挙型が、各サブクラスにおいて定義される必要があります。デリゲートに割り当てられるとともにデリゲートから削除される関数を割り当てるには、関数と値を列挙型から下記の関数のどれかに渡します。

  • AddDelegate [DelegateType] [InDelegate] -
    • DelegateType - 使用可能なデリゲートの型を定義しているサブクラスの列挙型に入っているアイテムを表す Int です。
    • InDelegate - デリゲートに割り当てられる、 PlatformInterfaceDelegate シグネチャに一致する関数です。
  • ClearDelegate [DelegateType] [InDelegate] -
    • DelegateType - 使用可能なデリゲートの型を定義しているサブクラスの列挙型に入っているアイテムを表す Int です。
    • InDelegate - デリゲートから削除される、 PlatformInterfaceDelegate シグネチャに一致する関数です。

プラットフォーム インターフェースのデータコンテナ


データをプラットフォーム インターフェースからデリゲートに渡すには、特別なデータコンテナである PlatformInterfaceDelegateResult を使用します。このコンテナは、次のようなものから構成される構造体です。

  • bSuccessful - 実行されたアクションが成功したか否かを示す bool 型です。
  • Data - 実行されたアクションから返されるあらゆるデータを保持する PlatformInterfaceData 構造体です。 PlatformInterfaceData は、プラットフォーム インターフェース デリゲートに渡される汎用的なデータを保持するように設計された構造体です。この構造体は、次のように構成されています。
    • DataName - 返されるデータのためのオプションのタグを示す Name です。
    • Type - 保持されるデータの型を示す EPlatformInterfaceDataType です。これは、(存在するのであれば) どの *Value プロパティが有効であり、データを含んでいるかを決定します。
      • PIDT_None - データを含む値プロパティがないことを示します。
      • PIDT_Int - IntValue プロパティにデータが含まれていることを示します。
      • PIDT_Float - FloatValue プロパティにデータが含まれていることを示します。
      • PIDT_String - StringValue プロパティにデータが含まれていることを示します。
      • PIDT_Object - ObjectValue プロパティにデータが含まれていることを示します。
      • PIDT_Custom - 2 つ以上のプロパティにデータが含まれていることを示します。
    • IntValue - 構造体のために int 型データを保持します。
    • FloatValue - 構造体のために float 型データを保持します。
    • StringValue - 構造体のために string 型データを保持します。
    • ObjectValue - 構造体のために Object 型データを保持します。