Skip to content

IGymConnector

Interface for connectors between Unreal Engine and gym-compatible training systems.

Defines the core functionality required for connecting Unreal environments to external training frameworks like Stable Baselines 3 or Ray RLlib. Implementations handle environment collection, state synchronization, and action distribution.

class IGymConnector

Methods

CollectEnvironments

inline virtual void CollectEnvironments()

Collect all available environments in the current world.


ResolveEnvironmentStateUpdate

inline virtual FTrainingStateUpdate *ResolveEnvironmentStateUpdate()

Resolve and retrieve the next environment state update.


ResetEnvironments

inline virtual void ResetEnvironments(const TArray<int> &InEnvironmentIds,
FTrainingState &OutState)

Reset specified environments to their initial states.

Parameters

  • InEnvironmentIds (const TArray<int>)

  • OutState (FTrainingState)


UpdateEnvironments

inline virtual void UpdateEnvironments(const FTrainingStateUpdate &StateUpdate,
FTrainingState &OutState)

Update environments based on the provided state update.

Parameters

  • StateUpdate (const FTrainingStateUpdate)

  • OutState (FTrainingState)


Enable

inline virtual void Enable()

Enable the connector to start processing.


CheckForStart

inline virtual bool CheckForStart()

Check if the connector is ready to start training.


SubmitPostResetState

inline virtual void SubmitPostResetState(const FTrainingState &States,
const TArray<int> &InEnvironmentIds)

Submit the state of environments after a reset operation.

Parameters

  • States (const FTrainingState)

  • InEnvironmentIds (const TArray<int>)

Source: Source/ScholaTraining/Public/GymConnectors/IGymConnector.h