Small World Engine API Reference - v0.46.1
    Preparing search index...

    Interface Renderer

    Interface for all renderer implementations.

    interface Renderer {
        clearColor: Color;
        gpuDevice?: GPUDevice;
        postProcessing: PostProcessingGroup;
        quality: QualityConfig;
        type: RendererType;
        webglContext?: WebGLRenderingContext | WebGL2RenderingContext;
        destroy?(): void;
        initialize(
            canvas: HTMLCanvasElement,
            attributes?: Record<string, unknown>,
            config?: EngineOptions,
        ): Promise<void>;
        render(
            scene: Scene,
            vpMatrix: Float32Array,
            camPos?: Vector3D,
            viewMatrix?: Float32Array<ArrayBufferLike>,
        ): void;
        setClearColor(color: Color): void;
        setRenderTarget(
            target: RenderTarget | RenderTargetCube | null,
            activeCubeFace?: number,
        ): void;
        setSize(width: number, height: number): void;
    }

    Implemented by

    Index

    Properties

    clearColor: Color

    Gets the clear color of the renderer.

    gpuDevice?: GPUDevice

    WebGPU Device (only for WebGPU renderer)

    postProcessing: PostProcessingGroup

    The global post-processing volume/group.

    quality: QualityConfig

    Gets the global quality settings of the renderer.

    The type of the renderer.

    webglContext?: WebGLRenderingContext | WebGL2RenderingContext

    WebGL Context (for WebGL1/2 renderers)

    Methods

    • Initializes the renderer.

      Parameters

      • canvas: HTMLCanvasElement
      • Optionalattributes: Record<string, unknown>
      • Optionalconfig: EngineOptions

      Returns Promise<void>

    • Renders a scene.

      Parameters

      • scene: Scene
      • vpMatrix: Float32Array
      • OptionalcamPos: Vector3D
      • OptionalviewMatrix: Float32Array<ArrayBufferLike>

      Returns void

    • Sets the active render target for off-screen rendering. If null, the renderer targets the screen/post-processing buffer.

      Parameters

      • target: RenderTarget | RenderTargetCube | null

        The target to render into.

      • OptionalactiveCubeFace: number

        Optional. Which face (0-5) of the RenderTargetCube to render into.

      Returns void

    • Sets the size of the render viewport.

      Parameters

      • width: number
      • height: number

      Returns void