public sealed class MoveSetA character's whole movement vocabulary: a flat list, and no hierarchy at all.
Remarks
Flat because a hierarchy forces an author to pick an axis to be primary, and there is never one. The moment a style is a container, every question crossing two axes needs a nesting order — is the injured walk in snow inside injured or inside snow? — and no answer is right. Facets have no order, so the question does not arise.
One allocation, walked in order. Selection touches every candidate, so the entries are one array and the scan is a straight loop over it. That is worth more than any index at the sizes a real set reaches, and it is why Entries is a span.
⚠ Overlays are resolved here, at build time, not at selection time. What a frame sees is one flat table with every override already applied. There is no inheritance chain in memory, no fallback walk per query, and no way for a runtime bug to resolve an override differently from the editor's preview of it.
Fields and properties (4)
Methods (6)
public MoveCandidate Candidate(int index)One candidate, as the selection pass reads it.
public bool Matches(int index, FacetSet required)Whether the move at an index says everything a query requires.
public static MoveSet Compose(string name, IEnumerable<MoveSet>? bases, params ReadOnlySpan<MoveEntry> own)Builds a set from entries, and from the sets it overlays.
public static MoveSet Of(string name, params ReadOnlySpan<MoveEntry> own)Builds a set with no bases.
public bool TryGet(MoveKey key, out MoveEntry? entry)The entry with a key, if the set has one.
public override string ToString()Returns a string that represents the current object.
Used by (19)
- MoveSelectionBenchmarksVixen.Benchmarks.Animation
- AuthoringTestsVixen.Animation.Tests
- BakedVixen.Animation
- IMoveSelectorVixen.Animation
- LoadPathTestsVixen.Animation.Tests
- MoveCoverageVixen.Animation
- MoveExplanationsVixen.Animation
- MoveSetCacheVixen.Animation
- MoveSetContentVixen.Animation
- MoveSetMotionVixen.Animation
- MoveSetTestsVixen.Animation.Tests
- MoveTransitionTestsVixen.Animation.Tests
- QueryMoveSelectorVixen.Animation
- SeamTestsVixen.Animation.Tests
- TableTestSelectorVixen.Animation.Tests
- AnimationWiringTestsVixen.Editor.App.Tests
- MoveSetDocumentVixen.Editor.AssetEditors
- MoveSetImporterTestsVixen.Editor.Assets.Tests
- MoveSetViewVixen.Editor.AssetEditors