@motion-core/motion-gpu
Version:
Framework-agnostic WebGPU runtime for fullscreen WGSL shaders with explicit Svelte, React, and Vue adapter entrypoints.
41 lines • 1.42 kB
TypeScript
/// <reference types="@webgpu/types" />
import type { RenderTargetDefinitionMap } from './types.js';
/**
* Concrete render target configuration resolved for current canvas size.
*/
export interface ResolvedRenderTargetDefinition {
/**
* Render target key.
*/
key: string;
/**
* Resolved width in pixels.
*/
width: number;
/**
* Resolved height in pixels.
*/
height: number;
/**
* Resolved format.
*/
format: GPUTextureFormat;
}
/**
* Resolves all render target definitions for a specific canvas size.
*
* @param definitions - Declarative definitions.
* @param canvasWidth - Current canvas width in pixels.
* @param canvasHeight - Current canvas height in pixels.
* @param defaultFormat - Fallback texture format.
* @returns Sorted concrete render target definitions.
*/
export declare function resolveRenderTargetDefinitions(definitions: RenderTargetDefinitionMap | undefined, canvasWidth: number, canvasHeight: number, defaultFormat: GPUTextureFormat): ResolvedRenderTargetDefinition[];
/**
* Builds a deterministic signature used to detect render target topology changes.
*
* @param resolvedDefinitions - Concrete target definitions.
* @returns Stable signature string.
*/
export declare function buildRenderTargetSignature(resolvedDefinitions: ResolvedRenderTargetDefinition[]): string;
//# sourceMappingURL=render-targets.d.ts.map