| using UnityEngine; |
|
|
| namespace Unity.MLAgents.Sensors |
| { |
| |
| |
| |
| [AddComponentMenu("ML Agents/Buffer Sensor", (int)MenuGroup.Sensors)] |
| public class BufferSensorComponent : SensorComponent |
| { |
| |
| |
| |
| |
| public string SensorName |
| { |
| get { return m_SensorName; } |
| set { m_SensorName = value; } |
| } |
| [HideInInspector, SerializeField] |
| private string m_SensorName = "BufferSensor"; |
|
|
| |
| |
| |
| |
| public int ObservableSize |
| { |
| get { return m_ObservableSize; } |
| set { m_ObservableSize = value; } |
| } |
| [HideInInspector, SerializeField] |
| private int m_ObservableSize; |
|
|
| |
| |
| |
| |
| public int MaxNumObservables |
| { |
| get { return m_MaxNumObservables; } |
| set { m_MaxNumObservables = value; } |
| } |
| [HideInInspector, SerializeField] |
| private int m_MaxNumObservables; |
|
|
| private BufferSensor m_Sensor; |
|
|
| |
| public override ISensor[] CreateSensors() |
| { |
| m_Sensor = new BufferSensor(MaxNumObservables, ObservableSize, m_SensorName); |
| return new ISensor[] { m_Sensor }; |
| } |
|
|
| |
| |
| |
| |
| |
| |
| |
| public void AppendObservation(float[] obs) |
| { |
| m_Sensor.AppendObservation(obs); |
| } |
| } |
| } |
|
|