Documentation
    Preparing search index...

    Function buildInterpolatedRenderList

    • Builds the sorted render list for root's subtree into out using §43 interpolated render poses at alpha, and returns out.

      // per rendered frame, between fixed steps:
      buildInterpolatedRenderList(scene, poses, time.interpolationAlpha, list);

      Identical to buildRenderList in traversal, filtering, sorting, and pooling; the difference is each item's worldMatrix (and, for a skinned mesh, its joint palette), which is composed from interpolated local poses root-first (see composeRenderPoseMatrix) instead of a reference to the node's resolved world matrix. This is §43's fix for rendering faster than the simulation steps: at alpha = 0 every item matches the previous captured pose, at alpha = 1 the current one, and in between position lerps and rotation slerps. alpha is clamped to [0, 1] by PoseBuffer.

      Nodes the buffer does not track — static geometry, anything moved directly by the application — contribute their live local transform at every alpha, so a mixed scene needs no bookkeeping: track what the simulation moves, leave the rest alone.

      Because the poses are composed into pooled matrices, this function never writes scene state (§43: the render transform must not feed back into the simulation). It also does not need resolveWorldTransforms to have run: it derives every matrix itself, at O(depth) per item.

      layerMask filters exactly as it does for buildRenderList — same default, same semantics, same development-only §85 check — and interacts with nothing else here: a filtered node contributes no item, so no render pose is composed for it either.

      Parameters

      Returns RenderItem[]