Interface Renderer

ゲームの描画を行うクラス。

描画は各エンティティによって行われる。通常、ゲーム開発者が本クラスを利用する必要はない。

interface Renderer {
    _getImageData(
        sx: number,
        sy: number,
        sw: number,
        sh: number,
    ): null | ImageData;
    _putImageData(
        imageData: ImageData,
        dx: number,
        dy: number,
        dirtyX?: number,
        dirtyY?: number,
        dirtyWidth?: number,
        dirtyHeight?: number,
    ): void;
    begin(): void;
    clear(): void;
    drawImage(
        surface: Surface,
        offsetX: number,
        offsetY: number,
        width: number,
        height: number,
        destOffsetX: number,
        destOffsetY: number,
    ): void;
    drawSprites(
        surface: Surface,
        offsetX: number[],
        offsetY: number[],
        width: number[],
        height: number[],
        canvasOffsetX: number[],
        canvasOffsetY: number[],
        count: number,
    ): void;
    end(): void;
    fillRect(
        x: number,
        y: number,
        width: number,
        height: number,
        cssColor: string,
    ): void;
    isSupportedShaderProgram(): boolean;
    opacity(opacity: number): void;
    restore(): void;
    save(): void;
    setCompositeOperation(operation: CompositeOperationString): void;
    setOpacity(opacity: number): void;
    setShaderProgram(shaderProgram: null | ShaderProgram): void;
    setTransform(matrix: number[]): void;
    transform(matrix: number[]): void;
    translate(x: number, y: number): void;
}

Methods

  • 本Rendererの描画内容を表すImageDataを取得する。 引数は CanvasRenderingContext2D#getImageData() と同様である。 本メソッドの呼び出しは Renderer#end() から Renderer#begin() の間でなければならない。 ImageDataが取得できない環境においては戻り値が null となる。

    Parameters

    • sx: number
    • sy: number
    • sw: number
    • sh: number

    Returns null | ImageData

  • 本Rendererの描画内容を上書きする。 引数は CanvasRenderingContext2D#putImageData() と同様である。 本メソッドの呼び出しは Renderer#end() から Renderer#begin() の間でなければならない。

    Parameters

    • imageData: ImageData
    • dx: number
    • dy: number
    • OptionaldirtyX: number
    • OptionaldirtyY: number
    • OptionaldirtyWidth: number
    • OptionaldirtyHeight: number

    Returns void

  • Returns void

  • Returns void

  • 指定されたSurfaceの描画を行う。

    Parameters

    • surface: Surface

      描画するSurface

    • offsetX: number

      描画元のX座標。0以上の数値でなければならない

    • offsetY: number

      描画元のY座標。0以上の数値でなければならない

    • width: number

      描画する矩形の幅。0より大きい数値でなければならない

    • height: number

      描画する矩形の高さ。0より大きい数値でなければならない

    • destOffsetX: number

      描画先のX座標。0以上の数値でなければならない

    • destOffsetY: number

      描画先のY座標。0以上の数値でなければならない

    Returns void

  • Parameters

    • surface: Surface
    • offsetX: number[]
    • offsetY: number[]
    • width: number[]
    • height: number[]
    • canvasOffsetX: number[]
    • canvasOffsetY: number[]
    • count: number

    Returns void

  • Returns void

  • Parameters

    • x: number
    • y: number
    • width: number
    • height: number
    • cssColor: string

    Returns void

  • 本Rendererがシェーダ機能をサポートしているかを返す。

    Returns boolean

  • Parameters

    • opacity: number

    Returns void

  • Returns void

  • Returns void

  • Parameters

    • opacity: number

    Returns void

  • 本Rendererにシェーダを設定する。 引数に null が指定された場合、本Rendererに設定されているシェーダの設定を解除する。

    Parameters

    • shaderProgram: null | ShaderProgram

    Returns void

  • Parameters

    • matrix: number[]

    Returns void

  • Parameters

    • matrix: number[]

    Returns void

  • Parameters

    • x: number
    • y: number

    Returns void