import { BufferGeometry, Texture } from "three"; //#region src/pipeline/envelopeGeometry.d.ts /** * Build the shared per-batch envelope geometry (tight-mesh Option A): * the convex hull of every registered frame polygon in the atlas, in * unit-quad local space, with corner UVs derived from position — the * same `local + 0.5` mapping the synth quad uses, so the shader's * flip/atlas remap applies unchanged. * * When the atlas has frames WITHOUT polygons (`complete: false`), the * full quad corners join the hull so those frames render un-clipped — * the envelope degrades toward the quad instead of clipping content. * * Returns null when the texture has no registered atlas polygons * (callers fall back to the synth quad). */ declare function buildEnvelopeGeometry(texture: Texture | null): BufferGeometry | null; //#endregion export { buildEnvelopeGeometry }; //# sourceMappingURL=envelopeGeometry.d.ts.map