Vixen
02b45cc4
csharp
public sealed class AuthoringContext

What a clip was authored against, as the proposal pass needs it.

No guide page documents this yet — the page shows what the code says about itself.

Remarks

The sequencer's second job. Assisted authoring measures proximity between the subject's effectors and the things around it, and a clip on its own carries none of that: which actors were in the scene, where they were, and what was in whose hand. This reads a .vxseq and answers those three questions at a moment.

⚠ It is discarded, and that is the design rather than a limitation. What comes out of the proposal pass is a surface coordinate that resolves from the live game alone. The scene exists so the editor can work out what the animator meant; a constraint that needed it at runtime would be a bug, and AnimationClipAsset.ToContent drops the reference for exactly that reason.

⚠ A prop becomes a proxy shape on the subject's rig, and there is nowhere else to put it. ConstraintProposals measures against a ProxyShapeSet, whose shapes hang off joints — so a prop lying on a table is a shape on the subject's root with a world-space offset, and a prop in the subject's hand is a shape on that hand's joint. Both are true statements about where the thing was, which is all the proximity pass needs.

Fields and properties (4)

  • public SequenceAsset Sequence

    The scene.

  • public SequenceTrackData? Subject

    The track the clip being marked up belongs to, or .

  • public IReadOnlyList<SequenceTrackData> Others

    Every other transform track, which is what the subject might be touching.

  • public bool IsUsable

    Whether the scene says enough to be worth measuring against.

Methods (4)

  • public static AuthoringContext From(SequenceAsset sequence)

    Reads a sequence as an authoring context.

  • public IReadOnlyList<AuthoringActor> At(float time)

    Who was where, and what the subject was holding, at a moment.

  • public BoneTransform SubjectAt(float time)

    The subject's own place at a moment.

  • public ProxyShapeSet Augment(ProxyShapeSet body, Skeleton rig, float time, float size = 0.08)

    The subject's shapes plus one for every other actor, placed where the scene says it was.

Used by (2)

  • AnimationBinderVixen.Editor.AssetEditors
  • AuthoringContextTestsVixen.Editor.AssetEditors.Tests