This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

Unit Change Log

GS_Unit version changelog.

Logs


Unit 0.6.0

Unit Action Graph (Under Construction)

  • HFSM editor built on the gs_graphcanvas framework (StateMachineGraph topology).
  • UnitActionGraphDescriptortopology = StateMachineGraph, variablesEnabled = true, transitionConditions = true, parallelLayers = true.
  • UnitActionEditorWindow — multi-layer container editor with layer sidebar and priority configuration.
  • Perimeter connection rendering — engine-level ConnectionCurveType::Perimeter for 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.
  • TransitionCondition base 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 with OnEnter/OnTick/OnExit lifecycle and __stateTime auto-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_CharacterActionComponent bridge.

Unit 0.5.0

First official base release of GS_Unit.

Unit Manager

  • GS_UnitManagerComponent — unit registration and lifecycle tracking
  • UnitManagerRequestBus

Unit Component

  • GS_UnitComponent — unit identity and state component
  • UnitRequestBus

Controllers

  • GS_UnitControllerComponent — abstract controller base, possess/release pattern
  • GS_PlayerControllerComponent — human player possession
  • GS_AIControllerComponent — AI-driven possession
  • GS_PlayerControllerInputReaderComponent — reads hardware input and routes to the possessed unit

Input Pipeline

  • 3-stage architecture: controller entity reads hardware → routes to InputDataComponent on the unit → reactor components act on the structured state
  • InputDataRequestBus / InputDataNotificationBus
  • GS_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 profiles
  • MoverContextRequestBus / 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 class
  • GS_PhysicsMoverComponent — physics-driven movement via PhysX
  • GS_3DFreeMoverComponent — unconstrained 3D free movement
  • GS_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 bounds
  • GlobalMovementRequestBus — global movement modifier interface

Profiles

  • GS_UnitMovementProfile — per-mode speed, acceleration, and movement parameter configuration