/// <inheritdoc /> public ref readonly ActionBuffers DecideAction() { m_Communicator?.DecideBatch(); var actions = m_Communicator?.GetActions(m_FullyQualifiedBehaviorName, m_AgentId); m_LastActionBuffer = actions == null ? ActionBuffers.Empty : (ActionBuffers)actions; return(ref m_LastActionBuffer); }
/// <inheritdoc /> public ref readonly ActionBuffers DecideAction() { m_Communicator?.DecideBatch(); var actions = m_Communicator?.GetActions(m_FullyQualifiedBehaviorName, m_AgentId); if (m_SpaceType == SpaceType.Continuous) { m_LastActionBuffer = new ActionBuffers(actions, Array.Empty <int>()); return(ref m_LastActionBuffer); } m_LastActionBuffer = ActionBuffers.FromDiscreteActions(actions); return(ref m_LastActionBuffer); }
/// <inheritdoc /> public float[] DecideAction() { m_Communicator?.DecideBatch(); return(m_Communicator?.GetActions(m_FullyQualifiedBehaviorName, m_AgentId)); }