playcanvas-opti-pixel - v1.2.0
    Preparing search index...

    Interface ICPUSoftwareOcclusionCullingTester

    CPU software occlusion tester. Rasterizes primitive and mesh occluders and tests AABBs on a worker thread. Hi-Z is built only inside the worker.

    interface ICPUSoftwareOcclusionCullingTester {
        _ocTesterType: "cpu_software_oct";
        occluders: OccluderStore;
        enqueue(id: number, extra?: number | number[]): number;
        execute(camera: Camera): void;
        getOcclusionStatus(id: number): TOcclusionResult;
        lock(
            boundingBox: BoundingBox,
            matrix?: Mat4,
            extra1?: number,
            extra2?: number,
        ): number;
        lockMinMaxScalars(
            data: ArrayLike<number>,
            offset: number,
            matrix?: Mat4,
            extra1?: number,
            extra2?: number,
        ): number;
        unlock(id: number): void;
    }

    Hierarchy (View Summary)

    Implemented by

    Index
    _ocTesterType: "cpu_software_oct"
    occluders: OccluderStore

    Occluder store.

    • Adds the object to the queue for occlusion testing.

      Parameters

      • id: number

        The unique identifier returned earlier by the lock() method.

      • Optionalextra: number | number[]

        The extra data

      Returns number

      A queue index or -1 (if internal verification inconsistencies occur, for example, the tester is unavailable or the tester is waiting for synchronization).

    • Registers a BoundingBox for subsequent occlusion testing.

      Parameters

      • boundingBox: BoundingBox

        The bounds of the object in local or world coordinates.

      • Optionalmatrix: Mat4

        Optional transformation matrix (if a local BoundingBox is used).

      • Optionalextra1: number

        Optional extra data 1.

      • Optionalextra2: number

        Optional extra data 2.

      Returns number

      A unique identifier for the registered object.

    • Registers a BoundingBox for subsequent occlusion testing.

      Parameters

      • data: ArrayLike<number>

        The array containing the bounding box data (min and max points) in local or world coordinates [minX, maxX, minY, maxY, minZ, maxZ].

      • offset: number

        The offset in the array where the bounding box data starts.

      • Optionalmatrix: Mat4

        Optional transformation matrix (if a local BoundingBox is used).

      • Optionalextra1: number

        Optional extra data 1.

      • Optionalextra2: number

        Optional extra data 2.

      Returns number

      A unique identifier for the registered object.