Akashic Engine

    Interface Platform

    Platform: PDIの主要なインターフェース。

    PDIの実装者はこのインターフェースを満たすものを定義すればよい。

    interface Platform {
        amflow: AMFlow;
        createLooper(fun: (deltaTime: number) => number): Looper;
        destroy(): void;
        getOperationPluginViewInfo(): OperationPluginViewInfo;
        getPrimarySurface(): Surface;
        getResourceFactory(): ResourceFactory;
        loadGameConfiguration(
            url: string,
            callback: (err: any, configuration: any) => void,
        ): void;
        sendToExternal(playId: string, data: any): void;
        setPlatformEventHandler(handler: PlatformEventHandler): void;
        setRendererRequirement(requirement?: RendererRequirement): void;
    }
    Index

    Properties

    amflow: AMFlow

    Playlog 送受信ルーチン。

    Methods

    • 定期実行処理を作成する。

      引数に与えられた関数 fun を定期的に呼び出す Looper を作成する。 fun は、引数として前回呼び出された時点からの経過時間[ms]が与えられる。 fun は前回の呼び出し時から、前回の呼び出し時の戻り値[ms]分の時間が経過していない場合、副作用を持つ処理を行ってはならない。

      Parameters

      • fun: (deltaTime: number) => number

        定期的に呼び出す関数

      Returns Looper

    • コンテンツ中の全リソースの削除を行う。

      Returns void

    • OperationPluginViewInfoを取得する。

      このメソッドの戻り値が操作プラグインに渡される。 このメソッドが省略された場合、操作プラグインには代わりに null が渡される。 実装者は、このメソッドの呼び出し以前に、 setRendererRequirement() が呼び出されていると仮定してよい。

      Returns OperationPluginViewInfo

    • プライマリサーフェスを取得する。 実装者は、このメソッドの呼び出し以前に、 setRendererRequirement() が呼び出されていると仮定してよい。

      Returns Surface

    • ResourceFactoryを取得する。 実装者は、このメソッドの呼び出し以前に、 setRendererRequirement() が呼び出されていると仮定してよい。

      Returns ResourceFactory

    • game.json を読み込む。

      読み込みが成功した場合、callback が呼び出され、errnull が渡される。 読み込みが失敗した場合、callback が呼び出され、errError のインスタンスが渡される。

      Parameters

      • url: string

        読み込むgame.jsonのURL

      • callback: (err: any, configuration: any) => void

        読み込み結果を与えるコールバック

      Returns void

    • 外部への情報送信。

      ゲーム開発者に「外部への情報送信」として提供される機能。その実態はPDIの実装者に委ねられる。 通常の用途の場合、一つのプレイにおいて、この関数が実際になんらかの動作を行うエンジンインスタンスは、高々一つであることが期待されると思われる。 エンジンはその性質を保証しない。必要であればPDIまたはエンジンの利用者(アプリケーション)が担保すること。

      Parameters

      • playId: string

        情報送信を要求したプレイのID

      • data: any

        送信するデータ

      Returns void

    • プラットフォーム上で発生したイベントのハンドラを設定する。

      複数回呼び出された場合、最後の呼び出しで与えられたハンドラのみが利用される。

      Parameters

      Returns void

    • このプラットフォームのRendererに対する要求を通知する。

      このメソッドの呼び出しは getPrimarySurface() および getResourceFactory().createSurface() の振る舞いに影響を与える。 実装者は、このメソッドの呼び出し時、前回の呼び出し後に取得・生成された全ての Surfacedestroy() してはならない。 また、実装者はこのメソッドの2度目以降の呼び出し時、プライマリサーフェスを destroy() させなければならない。 引数が省略された場合、実装は Renderer に紐づくデータを解放してよい。

      Parameters

      Returns void

    MMNEPVFCICPMFPCPTTAAATR