RPE Chart Utils
    Preparing search index...

    Module extra

    Utilities for working with extra.json — the prpr / Phira extension feature set.

    Covers:

    • ExtraJson creation, parsing, serialization, validation
    • Shader effect creation (built-in + custom), variable animation, uniform helpers
    • Video background creation and manipulation
    • Built-in shader presets with typed parameter interfaces
    • Animated variable (VariableEvent) construction helpers

    chromatic, circleBlur, fisheye, glitch, grayscale, noise, pixel, radialBlur, shockwave, vignette

    import {
    createExtra, addEffect, animateValue,
    setAnimatedUniform, serializeExtra,
    } from './extra';

    const extra = createExtra(120);

    // Add a chromatic aberration effect from beat 0 to beat 8
    const idx = addEffect(extra, 'chromatic', 0, 8, {
    vars: {
    // Animate the 'power' uniform from 0 to 0.05 over beats 0–4
    power: setAnimatedUniform(animateValue(0, 4, 0, 0.05)),
    },
    });

    // Serialize
    const json = serializeExtra(extra);

    Classes

    EffectBuilder
    ExtraBuilder

    Interfaces

    CreateEffectOptions
    VariableEventOptions
    AnimateOptions
    CreateVideoOptions
    ExtraValidationIssue

    Type Aliases

    BuiltinShaderName

    Variables

    BUILTIN_SHADERS
    GLSL_HEADER
    BUILTIN_UNIFORMS
    RESERVED_UNIFORMS
    BUILTIN_SHADER_DEFAULTS

    Functions

    createExtra
    parseExtra
    serializeExtra
    addEffect
    removeEffect
    findEffects
    findActiveEffects
    isCustomShader
    isBuiltinShader
    scalarEvent
    vectorEvent
    animateValue
    keyframesToAnimatedVariable
    pulseVariable
    evaluateVariable
    addCustomShader
    addVideo
    removeVideo
    setEffectVar
    removeEffectVar
    getEffectVarNames
    isAnimated
    offsetExtra
    sortEffects
    validateExtra
    isReservedUniform
    uniformDeclaration
    generateShaderTemplate
    parseShaderUniforms
    uniformsToVars
    getShaderDefaults