Skip to content

M8 crowds and animation LOD #862

Description

@nicolas-maman

Part of #853. Crowds and animation LOD.

  • Crowd pose banks baked from the same clip data as the graph.
  • Animation update-rate LOD for distant figures.
  • Hand-over between a crowd instance and the full graph by pose snapshot (handover's job, re-done).
  • A cost per figure per frame at each LOD, measured against a 2,000-figure budget.

Activity

  1. nicolas-maman commented on Nov 1, 2026

    @nicolas-maman
    CollaboratorAuthor

    Reopened: #891's merge (6fda12b) closed this before its list was met. Not started. The list above stands, and these closed issues are part of it:

    Done when the list above is met, with a cost per figure per frame at each LOD against the 2,000-figure budget.

  2. nicolas-maman commented on Nov 2, 2026

    @nicolas-maman
    CollaboratorAuthor

    Reopened: #905's merge (68934a3) closed this, but it carried only the hand-off between writers (animator.pause, resume, share_take, safe behaviour removal). The remaining work is as written above.

  3. nicolas-maman commented on Nov 2, 2026

    @nicolas-maman
    CollaboratorAuthor

    Added from the joint plan with Siltreach (2026-11-02):

    • A budget allocator by significance (distance and visibility into an update rate, interpolated between updates, as UE's Animation Budget Allocator does) over the LOD tiers.
    • Animators evaluated in parallel on ae3d.jobs: the pose phase is independent per figure (shared takes are read-only), but the feet's ground rays query physics, which must be safe to read from workers. Today the phase runs on one thread.
    • Measured costs first. Only take sampling is measured today (0.35 µs for 53 joints). A whole figure's frame (graph, feet with their ground rays, aim, hands) is not, and the targets get set from those numbers.

    Siltreach proposed about 50 µs per near figure, and 2 ms for 100 near figures plus 2,000 in the crowd. At 50 µs a figure, 100 near figures are 5 ms on one thread, so that budget needs either about 20 µs a figure or the parallel evaluation above.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions