@ujjwalvivek/tinyts
    Preparing search index...

    Interface Renderer

    Backend-agnostic 2D renderer interface.

    interface Renderer {
        canvas: HTMLCanvasElement;
        type: "canvas2d" | "webgl2" | "webgpu";
        begin(): void;
        bindFrameBuffer(fb: FrameBuffer | null): void;
        clear(color: string | Color): void;
        createFrameBuffer(width: number, height: number): FrameBuffer;
        drawCircle(pos: Vec2, radius: number, color: string | Color): void;
        drawCircleOutline(
            pos: Vec2,
            radius: number,
            color: string | Color,
            thickness?: number,
        ): void;
        drawFrameBuffer(
            fb: FrameBuffer,
            x: number,
            y: number,
            w: number,
            h: number,
        ): void;
        drawLine(a: Vec2, b: Vec2, color: string | Color, thickness?: number): void;
        drawRect(pos: Vec2, size: Vec2, color: string | Color): void;
        drawRectOutline(
            pos: Vec2,
            size: Vec2,
            color: string | Color,
            thickness?: number,
        ): void;
        drawSprite(
            image: CanvasImageSource,
            pos: Vec2,
            size?: Vec2,
            options?: SpriteOptions,
        ): void;
        drawText(text: string, pos: Vec2, options?: TextOptions): void;
        end(): void;
        getContext(): unknown;
        getStats(): RendererStats;
        resetTransform(): void;
        setPostProcessing(config?: PostProcessingConfig): void;
        setTransform(pos: Vec2, zoom: number): void;
    }
    Index

    Properties

    canvas: HTMLCanvasElement

    The HTML canvas element used for rendering.

    type: "canvas2d" | "webgl2" | "webgpu"

    The rendering backend type.

    Methods

    • Draw a circle outline (stroke only).

      Parameters

      • pos: Vec2
      • radius: number
      • color: string | Color
      • Optionalthickness: number

      Returns void

    • Draw a framebuffer's contents to the screen.

      Parameters

      Returns void

    • Draw a rectangle outline (stroke only).

      Parameters

      • pos: Vec2
      • size: Vec2
      • color: string | Color
      • Optionalthickness: number

      Returns void

    • End the current render frame and flush pending draws.

      Returns void

    • Return the underlying rendering context (CanvasRenderingContext2D or WebGL2RenderingContext).

      Returns unknown

    • Reset to the default (identity) transform.

      Returns void

    • Apply camera transform (center position and zoom).

      Parameters

      • pos: Vec2
      • zoom: number

      Returns void