Logs
Unit 0.6.0
Unit Action Graph (Under Construction)
- HFSM editor built on the gs_graphcanvas framework (StateMachineGraph topology).
UnitActionGraphDescriptor—topology = StateMachineGraph,variablesEnabled = true,transitionConditions = true,parallelLayers = true.UnitActionEditorWindow— multi-layer container editor with layer sidebar and priority configuration.- Perimeter connection rendering — engine-level
ConnectionCurveType::Perimeterfor state machine arrow visuals. - Node types:
UAG_EntryNode,UAG_StateNode,UAG_CompoundStateNode(nested sub-state-machine). TransitionDescriptor— per-connection priority and polymorphic condition list, auto-managed on connection add/remove.TransitionConditionbase class with built-in conditions:VariableCompareCondition,TimeElapsedCondition,VariableTrueCondition.- Transition inspector — click connections to edit priority and conditions; node selection shows outgoing transition summary.
StateMachineEvaluator— tick-based runtime withOnEnter/OnTick/OnExitlifecycle and__stateTimeauto-variable.ParallelLayerEvaluator— wraps multiple evaluators with shared variable context for simultaneous layer evaluation.- Not yet implemented: GS_UnitContext integration, compound state sub-graph editing, tag-based transitions,
GS_CharacterActionComponentbridge.
Unit 0.5.0
First official base release of GS_Unit.
Unit Manager
GS_UnitManagerComponent— unit registration and lifecycle trackingUnitManagerRequestBus
Unit Component
GS_UnitComponent— unit identity and state componentUnitRequestBus
Controllers
GS_UnitControllerComponent— abstract controller base, possess/release patternGS_PlayerControllerComponent— human player possessionGS_AIControllerComponent— AI-driven possessionGS_PlayerControllerInputReaderComponent— reads hardware input and routes to the possessed unit
Input Pipeline
- 3-stage architecture: controller entity reads hardware → routes to
InputDataComponenton the unit → reactor components act on the structured state InputDataRequestBus/InputDataNotificationBusGS_InputReactorComponent— reacts to binary input states (button/action)GS_InputAxisReactorComponent— reacts to axis input values (sticks, triggers)
MoverContext
GS_MoverContextComponent— transforms raw input into movement intent, manages active mode and profilesMoverContextRequestBus/MoverContextNotificationBus- Mode-driven movement: one named mode active at a time; only the mover and grounder matching that mode run
Movers
GS_MoverComponent— mode-aware mover base classGS_PhysicsMoverComponent— physics-driven movement via PhysXGS_3DFreeMoverComponent— unconstrained 3D free movementGS_3DSlideMoverComponent— slide-and-collide surface movement
Grounders
GS_PhysicsRayGrounderComponent— raycast-based grounding for the “Free” movement mode
Movement Influence
MovementInfluenceFieldComponent— spatial zone that modifies unit movement within its boundsGlobalMovementRequestBus— global movement modifier interface
Profiles
GS_UnitMovementProfile— per-mode speed, acceleration, and movement parameter configuration