ThreePipe
    Preparing search index...

    Interface IMaterialUserData

    interface IMaterialUserData {
        __envIntensity?: number;
        __importData?: any;
        __isVariation?: boolean;
        __needsSourceBuffer?: boolean;
        __sourceBlob?: IFile;
        __sourceBuffer?: ArrayBuffer;
        _clearcoatTint?: {
            enableTint?: boolean;
            ior?: number;
            thickness?: number;
            tintColor?: string | number | Color;
        };
        _customBumpMap?: null
        | ITexture<TextureEventMap>;
        _customBumpScale?: number;
        _fragmentClippingExt?: {
            clipEnabled?: boolean;
            clipInvert?: boolean;
            clipMode?: FragmentClippingMode;
            clipParams?: Vector4 | Vector4Tuple;
            clipPosition?: Vector4 | Vector4Tuple;
        };
        _hasCustomBump?: boolean;
        _noiseBumpMat?: {
            bumpNoiseParams?: Vector2
            | Vector2Tuple;
            bumpScale?: number;
            flakeClamp?: number;
            flakeFallOffParams?: Vector3 | Vector3Tuple;
            flakeParams?: Vector4 | Vector4Tuple;
            flakeRadius?: number;
            flakeScale?: number;
            hasBump?: boolean;
            useColorFlakes?: boolean;
        };
        animationObjects?: AnimationObject<any>[];
        autoRegisterInManager?: boolean;
        cloneCount?: number;
        cloneId?: string;
        constraints?: ObjectConstraint<keyof ConstraintPropsTypes>[];
        disposeOnIdle?: boolean;
        envMapSlotKey?: string;
        forcedLinearDepth?: number;
        gBufferData?: {
            materialId?: number;
            tonemapEnabled?: boolean;
            [key: string]: any;
        };
        inverseAlphaMap?: boolean;
        pluginsDisabled?: boolean;
        postTonemap?: boolean;
        renderToDepth?: boolean;
        renderToGBuffer?: boolean;
        rootPath?: string;
        rootPathOptions?: Record<string, any>;
        rootPathRefresh?: boolean;
        runtimeMaterial?: boolean;
        separateEnvMapIntensity?: boolean;
        setDirty?: (options?: IMaterialSetDirtyOptions) => void;
        ssaoCastDisabled?: boolean;
        ssaoDisabled?: boolean;
        sscsDisabled?: boolean;
        ssreflDisabled?: boolean;
        ssreflNonPhysical?: boolean;
        uuid?: string;
        [key: string]: any;
    }

    Hierarchy (View Summary)

    Indexable

    • [key: string]: any
    Index

    Properties

    __envIntensity?: number
    __importData?: any

    extra arbitrary data saved by the importer that can be used by the plugins (like gltf material variants)

    __isVariation?: boolean
    __needsSourceBuffer?: boolean

    This can be set to true in the importer to indicate that the source buffer should be loaded and cached in the userdata during processRaw

    __sourceBlob?: IFile

    Cached source blob for the asset

    __sourceBuffer?: ArrayBuffer

    Cached source buffer for the asset (only cached when __needsSourceBuffer is set)

    _clearcoatTint?: {
        enableTint?: boolean;
        ior?: number;
        thickness?: number;
        tintColor?: string | number | Color;
    }
    _customBumpMap?: null | ITexture<TextureEventMap>
    _customBumpScale?: number
    _fragmentClippingExt?: {
        clipEnabled?: boolean;
        clipInvert?: boolean;
        clipMode?: FragmentClippingMode;
        clipParams?: Vector4 | Vector4Tuple;
        clipPosition?: Vector4 | Vector4Tuple;
    }
    _hasCustomBump?: boolean
    _noiseBumpMat?: {
        bumpNoiseParams?: Vector2 | Vector2Tuple;
        bumpScale?: number;
        flakeClamp?: number;
        flakeFallOffParams?: Vector3 | Vector3Tuple;
        flakeParams?: Vector4 | Vector4Tuple;
        flakeRadius?: number;
        flakeScale?: number;
        hasBump?: boolean;
        useColorFlakes?: boolean;
    }
    animationObjects?: AnimationObject<any>[]
    autoRegisterInManager?: boolean

    Automatically register this material in the MaterialManager when added to the scene. This provides hook to other plugins to extend the material, add uiconfig etc.

    true
    
    cloneCount?: number
    cloneId?: string
    constraints?: ObjectConstraint<keyof ConstraintPropsTypes>[]
    disposeOnIdle?: boolean

    Automatically dispose material when not used by any object in the scene

    true
    
    envMapSlotKey?: string

    The environment map to use in the RootScene. To use this, object with the material must be in the RootScene, and the key should exist in the RootScene's textureSlots.

    only for materials that have envMap

    forcedLinearDepth?: number

    Force a depth value in GBuffer. This is useful to force center values like 0 to the depth.

    gBufferData?: {
        materialId?: number;
        tonemapEnabled?: boolean;
        [key: string]: any;
    }

    Type declaration

    • [key: string]: any
    • OptionalmaterialId?: number
    • OptionaltonemapEnabled?: boolean
      true
      
    inverseAlphaMap?: boolean
    pluginsDisabled?: boolean

    General flag to disable multiple plugins on the material at once, like SSAO, SSR, Bloom etc.

    postTonemap?: boolean

    Use postTonemap.tonemapEnabled instead. This is kept because used in old files.

    renderToDepth?: boolean

    Same as renderToGBuffer but for depth only, not normal or flags etc

    renderToGBuffer?: boolean
    rootPath?: string

    The path from which the asset was downloaded/imported.

    rootPathOptions?: Record<string, any>

    Incase files are loaded as different extensions(like for json), this will be set.

    rootPathRefresh?: boolean

    Whether to refresh this object from the asset manager when its loaded as an embedded object

    runtimeMaterial?: boolean
    separateEnvMapIntensity?: boolean

    Flag to tell the scene to prefer material.envMapIntensity over scene.envMapIntensity only for materials that have envMapIntensity

    setDirty?: (options?: IMaterialSetDirtyOptions) => void
    ssaoCastDisabled?: boolean

    Cast SSAO on other objects. if casting is not working when this is false, ensure render to depth is true, like for transparent objects

    ssaoDisabled?: boolean

    Disable SSAOPlugin for this material.

    sscsDisabled?: boolean

    For SSCSPlugin

    ssreflDisabled?: boolean

    For SSRPlugin

    ssreflNonPhysical?: boolean

    For SSRPlugin

    uuid?: string