• Generate a Pic iterator that will emit after processing each DrawCommand is processed.

    Parameters

    Returns Generator<[idx: number, command: DrawCommand, layers: RenderResult]>

    import { parsePic } from '@4bitlabs/sci0';
    import { generatePic } from '@4bitlabs/sci0-renderer';
    import { CGA } from '@4bitlabs/color/dithers';
    import { createDitherFilter, renderPixelData } from '@4bitlabs/image';

    const classicPipeline = { render: createDitherFilter(CGA) };

    const picData = parsePic(data, { defer: true });
    for (const [idx, cmd, layers] of generatePic(visible) {
    const { visible } = layers;
    const image = renderPixelData(visible, classicPipeline);
    saveImage(`frame${idx}.png`, image);
    }