Lemmings
Remappable Gestures For Unity
Loading...
Searching...
No Matches
Data Structures
Here are the data structures with brief descriptions:
[detail level 1234]
 NLemmings
 NInput
 CLemmingDeviceCustom input device for Lemming virtual input system. Supports dynamic control resolution based on layout JSON
 CLemmingDeviceManagerManages runtime updates for the virtual LemmingDevice input device. It collects data from LemmingRelationships and feeds the results into InputSystem-compatible controls, enabling real-time binding of spatial relationships to Unity Input Actions
 NUI
 CLemmingUIDataRowLeaf view for a single Lemming in the Control Pane list. Displays the Lemming's name and confidence score/bar
 CLemmingUIRelationshipDataRowRow view for a single LemmingRelationship in the Control Pane. Handles its own data binding, updating, and event wiring independently
 CLemmingUIRemappingLemmingRowLeaf‐level UI row in the remapping pane that lets the user reassign one LemmingRelationshipInfo.Members entry (role ↔ lemming)
 CLemmingUIRemappingMetricOptionLeaf‐level script for one row in the “Metric” scroll‐list. Binds a MetricOptionInfo and raises onMetricChanged when the dropdown moves
 CLemmingUIVisibilityControllerControls the visibility of the remapping UI at runtime. Supports toggling via keyboard input or UnityEvents (e.g., gesture-based triggers)
 CMetricOptionInfoTemporary data‐carrier for one metric option row. Fill this out when you have real metric names, IDs, and tuning parameters
 CMetricSettingInfoA single metric‐setting slot.
Right now it’s a stub—you’ll add real fields once you know what each metric needs
 CRoleMappingInfoData model for binding a role-to-lemming mapping row
 CUIDataRow< T >Base for any UI row that binds a model of type T. Handles subscription lifecycle; subclasses implement UpdateUI
 NUtilities
 CLemmingTrackingStatusIMPORTANT: This has not been tested for every SDK and you can expect errors with many SDKs. The goal is to provide a scaffold onto which you can generate project-specific solutions. SDKs update and evolve frequently and in order to prioritize felxibility, we did not want to create narrow dependencies
 CLemmingTrackingInfoHolds all relevant tracking information for a given Lemming
 CLemmingTrackingReferenceType-agnostic reference for identifying a tracked body part or joint. Used to unify SDK-specific identifiers
 CGazeEventUnityEvent triggered when this proxy's forward gaze detects a target GameObject. Includes the detected object and a confidence value (0-1)
 CILemmingInterface for any reference to a tracked Lemming
 CILemmingConverter
 CILemmingRelationshipThis is the interface for the relationship TODO: Determine if this is neccesary TODO: Right now it is not really utilized but might have value in building virtual relationships
 CLemmingComponent representing a tracked Lemming attached to a GameObject
 CLemmingBooler
 CLemmingCurveLibrary
 CLemmingDatumRepresents a flexible container for storing a single value of varying data types. Supports types such as float, int, bool, Vector3, Quaternion, and string
 CLemmingFloaterRepresents a normalized floating-point value and provides tools to remap it across data types
 CLemmingHerdSnapshotA fixed, read-only snapshot of a Lemming Herd configuration. Stores Lemming names, confidence values, and their associated GameObjects for runtime reference. Also generates a unique enum per snapshot for consistent name referencing
 CLemmingInterRepresents an integer value with normalized remapping, directional interpolation, and support for flexible out-of-range behavior via Lemmings.LemmingInter.RangeBindingMode
 CLemmingInterfaces
 CLemmingMetricMetadataProvides descriptions and optional editor UI for Lemming metric enum values. Helps clarify affordances and behaviors for user-facing tools
 CLemmingProxyVisualizerRuntime-capable visual debug tool for proxies. Shows position, radius, axis direction, and links to member objects. Color-codes status, supports demo visuals in builds
 CLemmingReferenceA single named Lemming entry in the herd
 CLemmingRelationRepresents a context for computing a spatial relationship metric across a given list of lemming GameObjects and family structure. Supports Single, Couple, Throuple, and Group types with metric-specific logic
 CLemmingRelationSettingThis is a class with numerous optional variables. This can be used to pass along settings for specific methods when appropriate. This is meant to be extensible for holding any setting options
 CLemmingRelationshipDefines a relationship among one or more Lemmings. Can be used to calculate positions, rotations, and derived values
 CLemmingRelationshipInfoThis is a struct that holds the data from a relationship. Intended to streamline visualization and manipulation from external menus
 CLemmingRelationshipInfoExtensionsExtension methods for LemmingRelationshipInfo, enabling concise, fluent preview calls in UI or other code
 CLemmingRelationshipProxyA MonoBehaviour that represents the spatial location and rotation of a LemmingRelationship. It provides support for spatial interaction detection such as gaze and triggers, and exposes that data via structured fields and UnityEvents
 CLemmingProxyDataSerializable data container for proxy state. Useful for diagnostics and UI representation
 CValidTagEntryWrapper class to allow tag string dropdowns in the inspector
 CLemmingRotaterA struct for managing and interpreting Quaternion rotations, including angular comparison, interpolation, remapping, and directional checks
 CLemmingSecondaryMetricAllows previewing a secondary or alternate metric from an existing LemmingRelationship. Evaluates on-demand using public method call, avoiding continuous updates
 CLemmingSettingDescriptions
 CLemmingShepherdSingleton container responsible for managing active Lemmings and their associated relationships. Provides central tracking, registration, and runtime access to all active Lemming objects and their connections to LemmingRelationships, supporting UI, analysis, and dynamic manipulation across scenes
 CLemmingUtilities
 CLemmingUtilsUtility class providing structural and scene-based helpers for working with Lemmings. Includes path resolution, transform tracking, and fallback object retrieval
 CLemmingVectorizerA struct for managing and interpreting a Vector3 value, including normalization, projection, direction checks, and remapping
 CMetricSettingRegistryProvides preconfigured MetricSettingInfo entries for each supported setting. Used by editor UI to populate advanced configuration panels
 COutputThis is a simple struct that holds the value outputs from a metric calculation
 CReadOnlyAttributeOptional attribute to lock fields to read-only in the Inspector
 CRelationshipPreviewProvides methods to perform a non-persistent, live preview of a spatial relationship defined by LemmingRelationshipInfo. Useful for UI remapping scenarios where users adjust settings and need immediate feedback without altering the original ScriptableObject
 CResultHolds the results of a live relationship computation, including raw, normalized, curved values and boundary status flags
 CRelationshipPreviewUtilityThis is a utility wrapper for the RelationshipPreview class to make it easier to use. example = Vector3 previewPos = RelationshipPreviewUtility.PreviewPosition(relationship);
 CTagSelectorAttributeAttribute that enables tag dropdown selection for string fields in the inspector
 CTriggerEventUnityEvent that is triggered when a GameObject enters or exits this proxy's trigger collider
 CLemmingEditorCustom editor for the Lemming component. Provides additional inspector functionality to validate snapshot references
 CLemmingEnumDeclarations
 CLemmingHerdSnapshotEditorCustom editor for LemmingHerdSnapshot to display entries as strings rather than relying on Unity's default object drawer, which can show type mismatch
 CLemmingMetricSettingsDrawerDraws inspector UI for settings relevant to each Lemming metric. Settings shown depend on the metric and family type
 CLemmingMetricSettingUtility
 CLemmingPrefabInstantiater
 CLemmingRelationshipEditorCustom inspector for LemmingRelationship ScriptableObject. Provides a full-featured editor interface for selecting members, resolving snapshot references, configuring relationship metrics, and previewing output values
 CLemmingRelationshipProxyEditorThis is the editor script for the Relationship Proxy. It is primarily designed to accomodate an up-to-date display for the ID, which is determined when the relationship changes
 CLemmingSecondaryMetricEditor
 CLemmingShepherdEditorCustom inspector for the LemmingShepherd component. Provides debugging and live editing tools for viewing and modifying the current list of registered Lemmings and their relationships
 CLemmingUIRemappingControllerManages the remapping UI, binding data from the LemmingShepherd and allowing runtime editing of relationship parameters such as min/max bounds, curves, and role-to-lemming assignments. Users can experiment with settings before committing changes via an Apply button
 CMinMaxSliderAttributeAttribute for displaying a slider with editable min and max values in the inspector. Should be used on a Vector2 field where x = min, y = max
 CMinMaxSliderDrawerCustom drawer for MinMaxSliderAttribute. Supports Vector2 and Vector2Int. Renders two numeric fields and a slider to control min/max ranges
 CReadOnlyDrawer
 CTagSelectorDrawer
 Ctesting