diff --git a/.circleci/config.yml b/.circleci/config.yml index e7a56ffd24..1ad2040183 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -113,6 +113,23 @@ jobs: # Need ruby for search-and-replace sudo apt-get update sudo apt-get install ruby-full + + # install dotnet and the formatter - see https://docs.microsoft.com/en-us/dotnet/core/install/linux-debian#debian-9- + pushd ~ + wget -O - https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.asc.gpg + sudo mv microsoft.asc.gpg /etc/apt/trusted.gpg.d/ + wget https://packages.microsoft.com/config/debian/9/prod.list + sudo mv prod.list /etc/apt/sources.list.d/microsoft-prod.list + sudo chown root:root /etc/apt/trusted.gpg.d/microsoft.asc.gpg + sudo chown root:root /etc/apt/sources.list.d/microsoft-prod.list + popd + + sudo apt-get install -y apt-transport-https && \ + sudo apt-get update && \ + sudo apt-get install -y dotnet-sdk-3.1 && \ + dotnet tool install -g dotnet-format --version 4.1.131201 + + echo "Setting up venv" python3 -m venv venv . venv/bin/activate pip install --upgrade pip @@ -131,6 +148,7 @@ jobs: name: Check Code Style using pre-commit command: | . venv/bin/activate + export PATH="$PATH:~/.dotnet/tools" pre-commit run --show-diff-on-failure --all-files markdown_link_check: diff --git a/com.unity.ml-agents/.editorconfig b/.editorconfig similarity index 100% rename from com.unity.ml-agents/.editorconfig rename to .editorconfig diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index a76c3b393d..1eec612f3e 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -132,5 +132,9 @@ repos: name: validate release links language: script entry: utils/validate_release_links.py - + - id: dotnet-format + name: dotnet-format + language: script + entry: utils/run_dotnet_format.py + types: [c#] diff --git a/DevProject/Assets/ML-Agents/Scripts/Tests/Performance/SensorPerformanceTests.cs b/DevProject/Assets/ML-Agents/Scripts/Tests/Performance/SensorPerformanceTests.cs index 37f739e05e..00bb2a7473 100644 --- a/DevProject/Assets/ML-Agents/Scripts/Tests/Performance/SensorPerformanceTests.cs +++ b/DevProject/Assets/ML-Agents/Scripts/Tests/Performance/SensorPerformanceTests.cs @@ -161,7 +161,7 @@ public void TestCollectObservationsAgentMarkers() { using (Measure.ProfilerMarkers(s_Markers)) { - for(var i=0; i(k_NumAgentSteps, 7, ObservableAttributeOptions.Ignore); } diff --git a/Project/Assets/ML-Agents/Editor/DisableBurstFromMenu.cs b/Project/Assets/ML-Agents/Editor/DisableBurstFromMenu.cs index 36c5842b17..102121de10 100644 --- a/Project/Assets/ML-Agents/Editor/DisableBurstFromMenu.cs +++ b/Project/Assets/ML-Agents/Editor/DisableBurstFromMenu.cs @@ -1,4 +1,4 @@ -#if UNITY_CLOUD_BUILD +#if UNITY_CLOUD_BUILD using UnityEditor; public class DisableBurstFromMenu diff --git a/Project/Assets/ML-Agents/Examples/Crawler/Scripts/CrawlerAgent.cs b/Project/Assets/ML-Agents/Examples/Crawler/Scripts/CrawlerAgent.cs index 4f30730378..95dd15e60d 100644 --- a/Project/Assets/ML-Agents/Examples/Crawler/Scripts/CrawlerAgent.cs +++ b/Project/Assets/ML-Agents/Examples/Crawler/Scripts/CrawlerAgent.cs @@ -13,7 +13,8 @@ public class CrawlerAgent : Agent Vector3 m_WalkDir; //Direction to the target Quaternion m_WalkDirLookRot; //Will hold the rotation to our target - [Header("Target To Walk Towards")] [Space(10)] + [Header("Target To Walk Towards")] + [Space(10)] public TargetController target; //Target the agent will walk towards. [Header("Body Parts")] [Space(10)] public Transform body; @@ -27,20 +28,23 @@ public class CrawlerAgent : Agent public Transform leg3Lower; - [Header("Orientation")] [Space(10)] + [Header("Orientation")] + [Space(10)] //This will be used as a stabilized model space reference point for observations //Because ragdolls can move erratically during training, using a stabilized reference transform improves learning public OrientationCubeController orientationCube; JointDriveController m_JdController; - [Header("Reward Functions To Use")] [Space(10)] + [Header("Reward Functions To Use")] + [Space(10)] public bool rewardMovingTowardsTarget; // Agent should move towards target public bool rewardFacingTarget; // Agent should face the target public bool rewardUseTimePenalty; // Hurry up - [Header("Foot Grounded Visualization")] [Space(10)] + [Header("Foot Grounded Visualization")] + [Space(10)] public bool useFootGroundedVisualization; public MeshRenderer foot0; @@ -208,8 +212,8 @@ void RewardFunctionMovingTowards() { throw new ArgumentException( "NaN in movingTowardsDot.\n" + - $" orientationCube.transform.forward: {orientationCube.transform.forward}\n"+ - $" body.velocity: {m_JdController.bodyPartsDict[body].rb.velocity}\n"+ + $" orientationCube.transform.forward: {orientationCube.transform.forward}\n" + + $" body.velocity: {m_JdController.bodyPartsDict[body].rb.velocity}\n" + $" maximumWalkingSpeed: {maximumWalkingSpeed}" ); } @@ -226,7 +230,7 @@ void RewardFunctionFacingTarget() { throw new ArgumentException( "NaN in movingTowardsDot.\n" + - $" orientationCube.transform.forward: {orientationCube.transform.forward}\n"+ + $" orientationCube.transform.forward: {orientationCube.transform.forward}\n" + $" body.forward: {body.forward}" ); } diff --git a/Project/Assets/ML-Agents/Examples/FoodCollector/Scripts/FoodCollectorSettings.cs b/Project/Assets/ML-Agents/Examples/FoodCollector/Scripts/FoodCollectorSettings.cs index b858ff7c26..640911332f 100644 --- a/Project/Assets/ML-Agents/Examples/FoodCollector/Scripts/FoodCollectorSettings.cs +++ b/Project/Assets/ML-Agents/Examples/FoodCollector/Scripts/FoodCollectorSettings.cs @@ -50,7 +50,7 @@ public void Update() // Send stats via SideChannel so that they'll appear in TensorBoard. // These values get averaged every summary_frequency steps, so we don't // need to send every Update() call. - if ((Time.frameCount % 100)== 0) + if ((Time.frameCount % 100) == 0) { m_Recorder.Add("TotalScore", totalScore); } diff --git a/Project/Assets/ML-Agents/Examples/GridWorld/Scripts/GridAgent.cs b/Project/Assets/ML-Agents/Examples/GridWorld/Scripts/GridAgent.cs index 66f7ed6cf4..7bc389d48c 100644 --- a/Project/Assets/ML-Agents/Examples/GridWorld/Scripts/GridAgent.cs +++ b/Project/Assets/ML-Agents/Examples/GridWorld/Scripts/GridAgent.cs @@ -40,29 +40,29 @@ public override void WriteDiscreteActionMask(IDiscreteActionMask actionMask) // Mask the necessary actions if selected by the user. if (maskActions) { - // Prevents the agent from picking an action that would make it collide with a wall + // Prevents the agent from picking an action that would make it collide with a wall var positionX = (int)transform.position.x; var positionZ = (int)transform.position.z; var maxPosition = (int)m_ResetParams.GetWithDefault("gridSize", 5f) - 1; if (positionX == 0) { - actionMask.WriteMask(0, new []{ k_Left}); + actionMask.WriteMask(0, new[] { k_Left }); } if (positionX == maxPosition) { - actionMask.WriteMask(0, new []{k_Right}); + actionMask.WriteMask(0, new[] { k_Right }); } if (positionZ == 0) { - actionMask.WriteMask(0, new []{k_Down}); + actionMask.WriteMask(0, new[] { k_Down }); } if (positionZ == maxPosition) { - actionMask.WriteMask(0, new []{k_Up}); + actionMask.WriteMask(0, new[] { k_Up }); } } } diff --git a/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/AdjustTrainingTimescale.cs b/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/AdjustTrainingTimescale.cs index bca307e7a6..e111353c99 100644 --- a/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/AdjustTrainingTimescale.cs +++ b/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/AdjustTrainingTimescale.cs @@ -2,7 +2,7 @@ using UnityEngine; -namespace MLAgentsExamples +namespace MLAgentsExamples { public class AdjustTrainingTimescale : MonoBehaviour { diff --git a/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/DirectionIndicator.cs b/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/DirectionIndicator.cs index 2dc87b5d5d..fe6a07f0c7 100644 --- a/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/DirectionIndicator.cs +++ b/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/DirectionIndicator.cs @@ -1,10 +1,10 @@ -using UnityEngine; +using UnityEngine; namespace Unity.MLAgentsExamples { public class DirectionIndicator : MonoBehaviour { - + public bool updatedByAgent; //should this be updated by the agent? If not, it will use local settings public Transform transformToFollow; //ex: hips or body public Transform targetToLookAt; //target in the scene the indicator will point to diff --git a/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/JointDriveController.cs b/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/JointDriveController.cs index a8ad2e7f80..42cb757868 100644 --- a/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/JointDriveController.cs +++ b/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/JointDriveController.cs @@ -11,12 +11,13 @@ namespace Unity.MLAgentsExamples [System.Serializable] public class BodyPart { - [Header("Body Part Info")][Space(10)] public ConfigurableJoint joint; + [Header("Body Part Info")] [Space(10)] public ConfigurableJoint joint; public Rigidbody rb; [HideInInspector] public Vector3 startingPos; [HideInInspector] public Quaternion startingRot; - [Header("Ground & Target Contact")][Space(10)] + [Header("Ground & Target Contact")] + [Space(10)] public GroundContact groundContact; public TargetContact targetContact; @@ -24,7 +25,8 @@ public class BodyPart [FormerlySerializedAs("thisJDController")] [HideInInspector] public JointDriveController thisJdController; - [Header("Current Joint Settings")][Space(10)] + [Header("Current Joint Settings")] + [Space(10)] public Vector3 currentEularJointRotation; [HideInInspector] public float currentStrength; @@ -32,7 +34,8 @@ public class BodyPart public float currentYNormalizedRot; public float currentZNormalizedRot; - [Header("Other Debug Info")][Space(10)] + [Header("Other Debug Info")] + [Space(10)] public Vector3 currentJointForce; public float currentJointForceSqrMag; @@ -99,7 +102,8 @@ public void SetJointStrength(float strength) public class JointDriveController : MonoBehaviour { - [Header("Joint Drive Settings")][Space(10)] + [Header("Joint Drive Settings")] + [Space(10)] public float maxJointSpring; public float jointDampen; diff --git a/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/ModelOverrider.cs b/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/ModelOverrider.cs index b8727ba956..1d4fe56d75 100644 --- a/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/ModelOverrider.cs +++ b/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/ModelOverrider.cs @@ -23,7 +23,7 @@ namespace Unity.MLAgentsExamples /// public class ModelOverrider : MonoBehaviour { - HashSet k_SupportedExtensions = new HashSet{"nn", "onnx"}; + HashSet k_SupportedExtensions = new HashSet { "nn", "onnx" }; const string k_CommandLineModelOverrideFlag = "--mlagents-override-model"; const string k_CommandLineModelOverrideDirectoryFlag = "--mlagents-override-model-directory"; const string k_CommandLineModelOverrideExtensionFlag = "--mlagents-override-model-extension"; @@ -63,7 +63,7 @@ public class ModelOverrider : MonoBehaviour int TotalCompletedEpisodes { - get { return m_PreviousAgentCompletedEpisodes + (m_Agent == null ? 0 : m_Agent.CompletedEpisodes); } + get { return m_PreviousAgentCompletedEpisodes + (m_Agent == null ? 0 : m_Agent.CompletedEpisodes); } } int TotalNumSteps @@ -73,7 +73,7 @@ int TotalNumSteps public bool HasOverrides { - get { return m_BehaviorNameOverrides.Count > 0 || !string.IsNullOrEmpty(m_BehaviorNameOverrideDirectory); } + get { return m_BehaviorNameOverrides.Count > 0 || !string.IsNullOrEmpty(m_BehaviorNameOverrideDirectory); } } public static string GetOverrideBehaviorName(string originalBehaviorName) @@ -99,17 +99,17 @@ void GetAssetPathFromCommandLine() var args = commandLineArgsOverride ?? Environment.GetCommandLineArgs(); for (var i = 0; i < args.Length; i++) { - if (args[i] == k_CommandLineModelOverrideFlag && i < args.Length-2) + if (args[i] == k_CommandLineModelOverrideFlag && i < args.Length - 2) { var key = args[i + 1].Trim(); var value = args[i + 2].Trim(); m_BehaviorNameOverrides[key] = value; } - else if (args[i] == k_CommandLineModelOverrideDirectoryFlag && i < args.Length-1) + else if (args[i] == k_CommandLineModelOverrideDirectoryFlag && i < args.Length - 1) { m_BehaviorNameOverrideDirectory = args[i + 1].Trim(); } - else if (args[i] == k_CommandLineModelOverrideExtensionFlag && i < args.Length-1) + else if (args[i] == k_CommandLineModelOverrideExtensionFlag && i < args.Length - 1) { m_OverrideExtension = args[i + 1].Trim().ToLower(); var isKnownExtension = k_SupportedExtensions.Contains(m_OverrideExtension); @@ -124,7 +124,7 @@ void GetAssetPathFromCommandLine() #endif } } - else if (args[i] == k_CommandLineQuitAfterEpisodesFlag && i < args.Length-1) + else if (args[i] == k_CommandLineQuitAfterEpisodesFlag && i < args.Length - 1) { Int32.TryParse(args[i + 1], out maxEpisodes); } @@ -198,7 +198,7 @@ public NNModel GetModelForBehaviorName(string behaviorName) { assetPath = m_BehaviorNameOverrides[behaviorName]; } - else if(!string.IsNullOrEmpty(m_BehaviorNameOverrideDirectory)) + else if (!string.IsNullOrEmpty(m_BehaviorNameOverrideDirectory)) { assetPath = Path.Combine(m_BehaviorNameOverrideDirectory, $"{behaviorName}.{m_OverrideExtension}"); } @@ -214,7 +214,7 @@ public NNModel GetModelForBehaviorName(string behaviorName) { model = File.ReadAllBytes(assetPath); } - catch(IOException) + catch (IOException) { Debug.Log($"Couldn't load file {assetPath} at full path {Path.GetFullPath(assetPath)}", this); // Cache the null so we don't repeatedly try to load a missing file @@ -270,7 +270,7 @@ void OverrideModel() if (!overrideOk && m_QuitOnLoadFailure) { - if(!string.IsNullOrEmpty(overrideError)) + if (!string.IsNullOrEmpty(overrideError)) { Debug.LogWarning(overrideError); } diff --git a/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/Monitor.cs b/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/Monitor.cs index b0c193e01e..73e7c34d23 100644 --- a/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/Monitor.cs +++ b/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/Monitor.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.Linq; using UnityEngine; @@ -419,7 +419,7 @@ void OnGUI() var displayValues = s_DisplayTransformValues[target]; var index = 0; - var orderedKeys = displayValues.Keys.OrderBy(x => - displayValues[x].time); + var orderedKeys = displayValues.Keys.OrderBy(x => -displayValues[x].time); foreach (var key in orderedKeys) { s_KeyStyle.alignment = TextAnchor.MiddleRight; @@ -560,4 +560,4 @@ void Initialize() s_RedStyle = s_ColorStyle[5]; } } -} \ No newline at end of file +} diff --git a/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/OrientationCubeController.cs b/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/OrientationCubeController.cs index 62a97d2484..b257b30215 100644 --- a/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/OrientationCubeController.cs +++ b/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/OrientationCubeController.cs @@ -1,4 +1,4 @@ -using UnityEngine; +using UnityEngine; namespace Unity.MLAgentsExamples { diff --git a/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/ProjectSettingsOverrides.cs b/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/ProjectSettingsOverrides.cs index a46d14f242..9b77251e65 100644 --- a/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/ProjectSettingsOverrides.cs +++ b/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/ProjectSettingsOverrides.cs @@ -42,7 +42,7 @@ public void Awake() m_OriginalMaximumDeltaTime = Time.maximumDeltaTime; m_OriginalSolverIterations = Physics.defaultSolverIterations; m_OriginalSolverVelocityIterations = Physics.defaultSolverVelocityIterations; - m_OriginalReuseCollisionCallbacks = Physics.reuseCollisionCallbacks ; + m_OriginalReuseCollisionCallbacks = Physics.reuseCollisionCallbacks; // Override Physics.gravity *= gravityMultiplier; diff --git a/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/SensorBase.cs b/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/SensorBase.cs index ce560c751f..86f5d46d21 100644 --- a/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/SensorBase.cs +++ b/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/SensorBase.cs @@ -39,7 +39,7 @@ public virtual int Write(ObservationWriter writer) } /// - public void Update() {} + public void Update() { } /// public void Reset() { } diff --git a/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/TargetController.cs b/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/TargetController.cs index ccf98b1682..3bd8998faf 100644 --- a/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/TargetController.cs +++ b/Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/TargetController.cs @@ -1,4 +1,4 @@ -using UnityEngine; +using UnityEngine; using Random = UnityEngine.Random; using Unity.MLAgents; using UnityEngine.Events; @@ -12,14 +12,14 @@ namespace Unity.MLAgentsExamples /// public class TargetController : MonoBehaviour { - + [Header("Collider Tag To Detect")] public string tagToDetect = "agent"; //collider tag to detect - + [Header("Target Placement")] public float spawnRadius; //The radius in which a target can be randomly spawned. public bool respawnIfTouched; //Should the target respawn to a different position when touched - + [Header("Target Fell Protection")] public bool respawnIfFallsOffPlatform = true; //If the target falls off the platform, reset the position. public float fallDistance = 5; //distance below the starting height that will trigger a respawn diff --git a/Project/Assets/ML-Agents/Examples/Startup/Scripts/Startup.cs b/Project/Assets/ML-Agents/Examples/Startup/Scripts/Startup.cs index 9107b13808..3eb7324f09 100644 --- a/Project/Assets/ML-Agents/Examples/Startup/Scripts/Startup.cs +++ b/Project/Assets/ML-Agents/Examples/Startup/Scripts/Startup.cs @@ -17,8 +17,10 @@ void Awake() // no scene environment variable is found. var args = Environment.GetCommandLineArgs(); Console.WriteLine("Command line arguments passed: " + String.Join(" ", args)); - for (int i = 0; i < args.Length; i++) { - if (args [i] == k_SceneCommandLineFlag && i < args.Length - 1) { + for (int i = 0; i < args.Length; i++) + { + if (args[i] == k_SceneCommandLineFlag && i < args.Length - 1) + { sceneName = args[i + 1]; } } diff --git a/Project/Assets/ML-Agents/Examples/Tennis/Scripts/HitWall.cs b/Project/Assets/ML-Agents/Examples/Tennis/Scripts/HitWall.cs index 7fde797019..bf49247384 100644 --- a/Project/Assets/ML-Agents/Examples/Tennis/Scripts/HitWall.cs +++ b/Project/Assets/ML-Agents/Examples/Tennis/Scripts/HitWall.cs @@ -7,12 +7,12 @@ public class HitWall : MonoBehaviour public bool net; public enum FloorHit - { - Service, - FloorHitUnset, - FloorAHit, - FloorBHit - } + { + Service, + FloorHitUnset, + FloorAHit, + FloorBHit + } public FloorHit lastFloorHit; @@ -36,7 +36,7 @@ void Reset() lastFloorHit = FloorHit.Service; net = false; } - + void AgentAWins() { m_AgentA.SetReward(1); diff --git a/Project/Assets/ML-Agents/Examples/Worm/Scripts/WormAgent.cs b/Project/Assets/ML-Agents/Examples/Worm/Scripts/WormAgent.cs index 324a6eb9f5..632c881cf1 100644 --- a/Project/Assets/ML-Agents/Examples/Worm/Scripts/WormAgent.cs +++ b/Project/Assets/ML-Agents/Examples/Worm/Scripts/WormAgent.cs @@ -17,13 +17,15 @@ public class WormAgent : Agent public bool respawnTargetWhenTouched; public float targetSpawnRadius; - [Header("Body Parts")] [Space(10)] + [Header("Body Parts")] + [Space(10)] public Transform bodySegment0; public Transform bodySegment1; public Transform bodySegment2; public Transform bodySegment3; - [Header("Joint Settings")] [Space(10)] + [Header("Joint Settings")] + [Space(10)] JointDriveController m_JdController; Vector3 m_DirToTarget; float m_MovingTowardsDot; @@ -65,7 +67,7 @@ public override void Initialize() //We want to collect this info because it is the actual rotation, not the "target rotation" public Quaternion GetJointRotation(ConfigurableJoint joint) { - return(Quaternion.FromToRotation(joint.axis, joint.connectedBody.transform.rotation.eulerAngles)); + return (Quaternion.FromToRotation(joint.axis, joint.connectedBody.transform.rotation.eulerAngles)); } /// @@ -104,7 +106,7 @@ public override void CollectObservations(VectorSensor sensor) float maxDist = 10; if (Physics.Raycast(bodySegment0.position, Vector3.down, out hit, maxDist)) { - sensor.AddObservation(hit.distance/maxDist); + sensor.AddObservation(hit.distance / maxDist); } else sensor.AddObservation(1); @@ -159,7 +161,7 @@ public override void OnActionReceived(ActionBuffers actionBuffers) bpDict[bodySegment2].SetJointStrength(continuousActions[++i]); bpDict[bodySegment3].SetJointStrength(continuousActions[++i]); - if (bodySegment0.position.y < ground.position.y -2) + if (bodySegment0.position.y < ground.position.y - 2) { EndEpisode(); } diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodyJointExtractor.cs b/com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodyJointExtractor.cs index 49dd17b1a0..88c149e4be 100644 --- a/com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodyJointExtractor.cs +++ b/com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodyJointExtractor.cs @@ -144,4 +144,4 @@ float GetPrismaticValue() } } } -#endif \ No newline at end of file +#endif diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodyPoseExtractor.cs b/com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodyPoseExtractor.cs index bb14e7324e..ceec6e0013 100644 --- a/com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodyPoseExtractor.cs +++ b/com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodyPoseExtractor.cs @@ -104,4 +104,4 @@ internal IEnumerable GetEnabledArticulationBodies() } } } -#endif // UNITY_2020_1_OR_NEWER \ No newline at end of file +#endif // UNITY_2020_1_OR_NEWER diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodySensorComponent.cs b/com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodySensorComponent.cs index d946aa8073..58619245ec 100644 --- a/com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodySensorComponent.cs +++ b/com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodySensorComponent.cs @@ -44,4 +44,4 @@ public override int[] GetObservationShape() } } -#endif // UNITY_2020_1_OR_NEWER \ No newline at end of file +#endif // UNITY_2020_1_OR_NEWER diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/PhysicsBodySensor.cs b/com.unity.ml-agents.extensions/Runtime/Sensors/PhysicsBodySensor.cs index b1b98d4161..e51bf17bdd 100644 --- a/com.unity.ml-agents.extensions/Runtime/Sensors/PhysicsBodySensor.cs +++ b/com.unity.ml-agents.extensions/Runtime/Sensors/PhysicsBodySensor.cs @@ -34,7 +34,7 @@ string sensorName var numJointExtractorObservations = 0; m_JointExtractors = new List(poseExtractor.NumEnabledPoses); - foreach(var rb in poseExtractor.GetEnabledRigidbodies()) + foreach (var rb in poseExtractor.GetEnabledRigidbodies()) { var jointExtractor = new RigidBodyJointExtractor(rb); numJointExtractorObservations += jointExtractor.NumObservations(settings); @@ -105,7 +105,7 @@ public void Update() } /// - public void Reset() {} + public void Reset() { } /// public SensorCompressionType GetCompressionType() diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/PhysicsSensorSettings.cs b/com.unity.ml-agents.extensions/Runtime/Sensors/PhysicsSensorSettings.cs index 5488be8666..d9f9c0d441 100644 --- a/com.unity.ml-agents.extensions/Runtime/Sensors/PhysicsSensorSettings.cs +++ b/com.unity.ml-agents.extensions/Runtime/Sensors/PhysicsSensorSettings.cs @@ -109,7 +109,7 @@ public static int WritePoses(this ObservationWriter writer, PhysicsSensorSetting } } - foreach(var vel in poseExtractor.GetEnabledModelSpaceVelocities()) + foreach (var vel in poseExtractor.GetEnabledModelSpaceVelocities()) { if (settings.UseModelSpaceLinearVelocity) { @@ -136,7 +136,7 @@ public static int WritePoses(this ObservationWriter writer, PhysicsSensorSetting } } - foreach(var vel in poseExtractor.GetEnabledLocalSpaceVelocities()) + foreach (var vel in poseExtractor.GetEnabledLocalSpaceVelocities()) { if (settings.UseLocalSpaceLinearVelocity) { diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/PoseExtractor.cs b/com.unity.ml-agents.extensions/Runtime/Sensors/PoseExtractor.cs index 99cee02f15..059804377b 100644 --- a/com.unity.ml-agents.extensions/Runtime/Sensors/PoseExtractor.cs +++ b/com.unity.ml-agents.extensions/Runtime/Sensors/PoseExtractor.cs @@ -321,9 +321,9 @@ internal void DrawModelSpace(Vector3 offset) var localUp = localPose[i].rotation * Vector3.up; var localFwd = localPose[i].rotation * Vector3.forward; var localRight = localPose[i].rotation * Vector3.right; - Debug.DrawLine(current.position+offset, current.position+offset+.1f*localUp, Color.red); - Debug.DrawLine(current.position+offset, current.position+offset+.1f*localFwd, Color.green); - Debug.DrawLine(current.position+offset, current.position+offset+.1f*localRight, Color.blue); + Debug.DrawLine(current.position + offset, current.position + offset + .1f * localUp, Color.red); + Debug.DrawLine(current.position + offset, current.position + offset + .1f * localFwd, Color.green); + Debug.DrawLine(current.position + offset, current.position + offset + .1f * localRight, Color.blue); } } @@ -405,9 +405,9 @@ internal IList GetDisplayNodes() { // Push to the stack in reverse order var children = tree[current]; - for (var childIdx = children.Count-1; childIdx >= 0; childIdx--) + for (var childIdx = children.Count - 1; childIdx >= 0; childIdx--) { - stack.Push((children[childIdx], depth+1)); + stack.Push((children[childIdx], depth + 1)); } } diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodyJointExtractor.cs b/com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodyJointExtractor.cs index dda1aed27f..fb5a07f61b 100644 --- a/com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodyJointExtractor.cs +++ b/com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodyJointExtractor.cs @@ -22,7 +22,7 @@ public int NumObservations(PhysicsSensorSettings settings) public static int NumObservations(Rigidbody body, Joint joint, PhysicsSensorSettings settings) { - if(body == null || joint == null) + if (body == null || joint == null) { return 0; } diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodyPoseExtractor.cs b/com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodyPoseExtractor.cs index 959dc3eea2..b54b0b5713 100644 --- a/com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodyPoseExtractor.cs +++ b/com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodyPoseExtractor.cs @@ -40,7 +40,7 @@ public RigidBodyPoseExtractor(Rigidbody rootBody, GameObject rootGameObject = nu if (rootGameObject == null) { rbs = rootBody.GetComponentsInChildren(); - joints = rootBody.GetComponentsInChildren (); + joints = rootBody.GetComponentsInChildren(); } else { @@ -79,7 +79,7 @@ public RigidBodyPoseExtractor(Rigidbody rootBody, GameObject rootGameObject = nu for (var i = 0; i < rbs.Length; i++) { - if(rbs[i] != null) + if (rbs[i] != null) { bodyToIndex[rbs[i]] = i; } diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodySensorComponent.cs b/com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodySensorComponent.cs index 16d470638d..21e0fa0586 100644 --- a/com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodySensorComponent.cs +++ b/com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodySensorComponent.cs @@ -7,7 +7,7 @@ namespace Unity.MLAgents.Extensions.Sensors /// /// Editor component that creates a PhysicsBodySensor for the Agent. /// - public class RigidBodySensorComponent : SensorComponent + public class RigidBodySensorComponent : SensorComponent { /// /// The root Rigidbody of the system. @@ -57,7 +57,7 @@ public override int[] GetObservationShape() var numPoseObservations = poseExtractor.GetNumPoseObservations(Settings); var numJointObservations = 0; - foreach(var rb in poseExtractor.GetEnabledRigidbodies()) + foreach (var rb in poseExtractor.GetEnabledRigidbodies()) { var joint = rb.GetComponent(); numJointObservations += RigidBodyJointExtractor.NumObservations(rb, joint, Settings); diff --git a/com.unity.ml-agents.extensions/Tests/Editor/Sensors/ArticulationBodyPoseExtractorTests.cs b/com.unity.ml-agents.extensions/Tests/Editor/Sensors/ArticulationBodyPoseExtractorTests.cs index b6f640e53e..d7dada005e 100644 --- a/com.unity.ml-agents.extensions/Tests/Editor/Sensors/ArticulationBodyPoseExtractorTests.cs +++ b/com.unity.ml-agents.extensions/Tests/Editor/Sensors/ArticulationBodyPoseExtractorTests.cs @@ -60,4 +60,4 @@ public void TestTwoBodies() } } } -#endif \ No newline at end of file +#endif diff --git a/com.unity.ml-agents.extensions/Tests/Editor/Sensors/ArticulationBodySensorTests.cs b/com.unity.ml-agents.extensions/Tests/Editor/Sensors/ArticulationBodySensorTests.cs index f642c32c5d..5c0684f1ca 100644 --- a/com.unity.ml-agents.extensions/Tests/Editor/Sensors/ArticulationBodySensorTests.cs +++ b/com.unity.ml-agents.extensions/Tests/Editor/Sensors/ArticulationBodySensorTests.cs @@ -137,4 +137,4 @@ public void TestBodiesWithJoint() } } } -#endif // #if UNITY_2020_1_OR_NEWER \ No newline at end of file +#endif // #if UNITY_2020_1_OR_NEWER diff --git a/com.unity.ml-agents.extensions/Tests/Editor/Sensors/PoseExtractorTests.cs b/com.unity.ml-agents.extensions/Tests/Editor/Sensors/PoseExtractorTests.cs index 5bada7ce91..512c50661d 100644 --- a/com.unity.ml-agents.extensions/Tests/Editor/Sensors/PoseExtractorTests.cs +++ b/com.unity.ml-agents.extensions/Tests/Editor/Sensors/PoseExtractorTests.cs @@ -15,7 +15,7 @@ protected internal override Pose GetPoseAt(int index) return Pose.identity; } - protected internal override Vector3 GetLinearVelocityAt(int index) + protected internal override Vector3 GetLinearVelocityAt(int index) { return Vector3.zero; } @@ -62,7 +62,7 @@ public void TestEmptyExtractor() } // Getting a parent index should throw an index exception - Assert.Throws ( + Assert.Throws( () => poseExtractor.GetParentIndex(0) ); @@ -109,7 +109,7 @@ protected internal override Pose GetPoseAt(int index) }; } - protected internal override Vector3 GetLinearVelocityAt(int index) + protected internal override Vector3 GetLinearVelocityAt(int index) { return Vector3.zero; } @@ -188,13 +188,13 @@ public void TestDisplayNodesLoop() { // Degenerate case with a loop var poseExtractor = new UselessPoseExtractor(); - poseExtractor.Init(new[] {-1, 2, 1}); + poseExtractor.Init(new[] { -1, 2, 1 }); // This just shouldn't blow up poseExtractor.GetDisplayNodes(); // Self-loop - poseExtractor.Init(new[] {-1, 1}); + poseExtractor.Init(new[] { -1, 1 }); // This just shouldn't blow up poseExtractor.GetDisplayNodes(); diff --git a/com.unity.ml-agents.extensions/Tests/Editor/Sensors/RigidBodyPoseExtractorTests.cs b/com.unity.ml-agents.extensions/Tests/Editor/Sensors/RigidBodyPoseExtractorTests.cs index bf694a6f6c..75cef606a2 100644 --- a/com.unity.ml-agents.extensions/Tests/Editor/Sensors/RigidBodyPoseExtractorTests.cs +++ b/com.unity.ml-agents.extensions/Tests/Editor/Sensors/RigidBodyPoseExtractorTests.cs @@ -126,7 +126,7 @@ public void TestTwoBodiesVirtualRoot() // body 1 has parent 0 Assert.AreEqual(0, poseExtractor.GetParentIndex(1)); - var virtualRootPos = new Vector3(0,2,0); + var virtualRootPos = new Vector3(0, 2, 0); var virtualRootRot = Quaternion.Euler(0, 42, 0); virtualRoot.transform.position = virtualRootPos; virtualRoot.transform.rotation = virtualRootRot; diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/RuntimeExampleTest.cs b/com.unity.ml-agents.extensions/Tests/Runtime/RuntimeExampleTest.cs index 82d143669a..c5332a38eb 100644 --- a/com.unity.ml-agents.extensions/Tests/Runtime/RuntimeExampleTest.cs +++ b/com.unity.ml-agents.extensions/Tests/Runtime/RuntimeExampleTest.cs @@ -7,7 +7,8 @@ namespace Unity.MLAgents.Extensions.Tests { - internal class RuntimeExampleTest { + internal class RuntimeExampleTest + { [Test] public void RuntimeTestMath() diff --git a/com.unity.ml-agents/CHANGELOG.md b/com.unity.ml-agents/CHANGELOG.md index 412bfc0957..4ac2d5ac05 100755 --- a/com.unity.ml-agents/CHANGELOG.md +++ b/com.unity.ml-agents/CHANGELOG.md @@ -15,6 +15,7 @@ and this project adheres to ### Minor Changes #### com.unity.ml-agents (C#) - Update Barracuda to 1.0.2. +- Enabled C# formatting using `dotnet-format`. #### ml-agents / ml-agents-envs / gym-unity (Python) ### Bug Fixes diff --git a/com.unity.ml-agents/CONTRIBUTING.md b/com.unity.ml-agents/CONTRIBUTING.md index 15381d4c61..7fefb02988 100644 --- a/com.unity.ml-agents/CONTRIBUTING.md +++ b/com.unity.ml-agents/CONTRIBUTING.md @@ -59,8 +59,11 @@ others (like `mypy`) may require more effort to fix. ### Code style All python code should be formatted with -[`black`](https://github.com/ambv/black). Style and formatting for C# may be -enforced later. +[`black`](https://github.com/ambv/black). + +C# code is formatted using [`dotnet-format`](https://github.com/dotnet/format). +You must have [dotnet](https://dotnet.microsoft.com/download) and +`dotnet-format` installed first. ### Python type annotations diff --git a/com.unity.ml-agents/Editor/DemonstrationImporter.cs b/com.unity.ml-agents/Editor/DemonstrationImporter.cs index 64896ad237..767f5556f9 100644 --- a/com.unity.ml-agents/Editor/DemonstrationImporter.cs +++ b/com.unity.ml-agents/Editor/DemonstrationImporter.cs @@ -16,7 +16,7 @@ namespace Unity.MLAgents.Editor /// /// Asset Importer used to parse demonstration files. /// - [ScriptedImporter(1, new[] {"demo"})] + [ScriptedImporter(1, new[] { "demo" })] internal class DemonstrationImporter : ScriptedImporter { const string k_IconPath = "Packages/com.unity.ml-agents/Editor/Icons/DemoIcon.png"; diff --git a/com.unity.ml-agents/Runtime/Academy.cs b/com.unity.ml-agents/Runtime/Academy.cs index 8b0b1055f7..f1235847d6 100644 --- a/com.unity.ml-agents/Runtime/Academy.cs +++ b/com.unity.ml-agents/Runtime/Academy.cs @@ -244,7 +244,7 @@ void EnableAutomaticStepping() // This try-catch is because DontDestroyOnLoad cannot be used in Editor Tests GameObject.DontDestroyOnLoad(m_StepperObject); } - catch {} + catch { } } /// @@ -417,13 +417,13 @@ void InitializeEnvironment() void ResetActions() { - DecideAction = () => {}; - DestroyAction = () => {}; - AgentPreStep = i => {}; - AgentSendState = () => {}; - AgentAct = () => {}; - AgentForceReset = () => {}; - OnEnvironmentReset = () => {}; + DecideAction = () => { }; + DestroyAction = () => { }; + AgentPreStep = i => { }; + AgentSendState = () => { }; + AgentAct = () => { }; + AgentForceReset = () => { }; + OnEnvironmentReset = () => { }; } static void OnQuitCommandReceived() diff --git a/com.unity.ml-agents/Runtime/Actuators/ActionSegment.cs b/com.unity.ml-agents/Runtime/Actuators/ActionSegment.cs index c1797d3f31..1d5c350646 100644 --- a/com.unity.ml-agents/Runtime/Actuators/ActionSegment.cs +++ b/com.unity.ml-agents/Runtime/Actuators/ActionSegment.cs @@ -49,7 +49,7 @@ static void CheckParameters(IReadOnlyCollection actionArray, int offset, int /// /// The action array to use for the this segment. public ActionSegment(T[] actionArray) - : this(actionArray ?? System.Array.Empty(), 0, actionArray?.Length ?? 0) {} + : this(actionArray ?? System.Array.Empty(), 0, actionArray?.Length ?? 0) { } /// /// Construct an with an underlying array diff --git a/com.unity.ml-agents/Runtime/Actuators/ActionSpec.cs b/com.unity.ml-agents/Runtime/Actuators/ActionSpec.cs index 5b9175680f..f2eebe99e1 100644 --- a/com.unity.ml-agents/Runtime/Actuators/ActionSpec.cs +++ b/com.unity.ml-agents/Runtime/Actuators/ActionSpec.cs @@ -68,7 +68,7 @@ public static ActionSpec MakeDiscrete(int[] branchSizes) { NumContinuousActions = numContinuousActions; NumDiscreteActions = numDiscreteActions; - BranchSizes = branchSizes; + BranchSizes = branchSizes; SumOfDiscreteBranchSizes = branchSizes?.Sum() ?? 0; } } diff --git a/com.unity.ml-agents/Runtime/Actuators/IActionReceiver.cs b/com.unity.ml-agents/Runtime/Actuators/IActionReceiver.cs index 88559cb0f3..093e686d80 100644 --- a/com.unity.ml-agents/Runtime/Actuators/IActionReceiver.cs +++ b/com.unity.ml-agents/Runtime/Actuators/IActionReceiver.cs @@ -35,9 +35,9 @@ public readonly struct ActionBuffers /// initialized from a float array. public static ActionBuffers FromDiscreteActions(float[] discreteActions) { - return new ActionBuffers(ActionSegment.Empty, discreteActions == null ? ActionSegment.Empty - : new ActionSegment(Array.ConvertAll(discreteActions, - x => (int)x))); + return new ActionBuffers(ActionSegment.Empty, discreteActions == null ? ActionSegment.Empty + : new ActionSegment(Array.ConvertAll(discreteActions, + x => (int)x))); } public ActionBuffers(float[] continuousActions, int[] discreteActions) diff --git a/com.unity.ml-agents/Runtime/Actuators/VectorActuator.cs b/com.unity.ml-agents/Runtime/Actuators/VectorActuator.cs index 7e8d6d7642..6141a01508 100644 --- a/com.unity.ml-agents/Runtime/Actuators/VectorActuator.cs +++ b/com.unity.ml-agents/Runtime/Actuators/VectorActuator.cs @@ -53,7 +53,7 @@ public void OnActionReceived(ActionBuffers actionBuffers) public void WriteDiscreteActionMask(IDiscreteActionMask actionMask) { - m_ActionReceiver.WriteDiscreteActionMask(actionMask); + m_ActionReceiver.WriteDiscreteActionMask(actionMask); } /// diff --git a/com.unity.ml-agents/Runtime/Agent.cs b/com.unity.ml-agents/Runtime/Agent.cs index 32b584994b..f32e95c188 100644 --- a/com.unity.ml-agents/Runtime/Agent.cs +++ b/com.unity.ml-agents/Runtime/Agent.cs @@ -172,9 +172,11 @@ internal struct AgentParameters public int maxStep; } - [SerializeField][HideInInspector] + [SerializeField] + [HideInInspector] internal AgentParameters agentParameters; - [SerializeField][HideInInspector] + [SerializeField] + [HideInInspector] internal bool hasUpgradedFromAgentParameters; /// @@ -770,7 +772,7 @@ void ResetData() /// /// [GameObject]: https://docs.unity3d.com/Manual/GameObjects.html /// - public virtual void Initialize() {} + public virtual void Initialize() { } /// /// Implement `Heuristic()` to choose an action for this agent using a custom heuristic. @@ -1178,7 +1180,7 @@ public virtual void OnActionReceived(ActionBuffers actions) /// /// /// - public virtual void OnEpisodeBegin() {} + public virtual void OnEpisodeBegin() { } /// /// Gets the last ActionBuffer for this agent. diff --git a/com.unity.ml-agents/Runtime/Agent.deprecated.cs b/com.unity.ml-agents/Runtime/Agent.deprecated.cs index a71a4899fc..3791088550 100644 --- a/com.unity.ml-agents/Runtime/Agent.deprecated.cs +++ b/com.unity.ml-agents/Runtime/Agent.deprecated.cs @@ -19,7 +19,7 @@ public virtual void Heuristic(float[] actionsOut) Array.Clear(actionsOut, 0, actionsOut.Length); } - public virtual void OnActionReceived(float[] vectorAction) {} + public virtual void OnActionReceived(float[] vectorAction) { } /// /// Returns the last action that was decided on by the Agent. diff --git a/com.unity.ml-agents/Runtime/Communicator/GrpcExtensions.cs b/com.unity.ml-agents/Runtime/Communicator/GrpcExtensions.cs index deb2bb891d..8fda8c680f 100644 --- a/com.unity.ml-agents/Runtime/Communicator/GrpcExtensions.cs +++ b/com.unity.ml-agents/Runtime/Communicator/GrpcExtensions.cs @@ -27,7 +27,7 @@ public static AgentInfoActionPairProto ToInfoActionPairProto(this AgentInfo ai) var agentInfoProto = ai.ToAgentInfoProto(); var agentActionProto = new AgentActionProto(); - if(ai.storedVectorActions != null) + if (ai.storedVectorActions != null) { agentActionProto.VectorActions.AddRange(ai.storedVectorActions); } @@ -96,11 +96,11 @@ public static BrainParametersProto ToProto(this BrainParameters bp, string name, var brainParametersProto = new BrainParametersProto { VectorActionSize = { bp.VectorActionSize }, - VectorActionSpaceType = (SpaceTypeProto) bp.VectorActionSpaceType, + VectorActionSpaceType = (SpaceTypeProto)bp.VectorActionSpaceType, BrainName = name, IsTraining = isTraining }; - if(bp.VectorActionDescriptions != null) + if (bp.VectorActionDescriptions != null) { brainParametersProto.VectorActionDescriptions.AddRange(bp.VectorActionDescriptions); } diff --git a/com.unity.ml-agents/Runtime/Communicator/RpcCommunicator.cs b/com.unity.ml-agents/Runtime/Communicator/RpcCommunicator.cs index afc4544242..695119c7d6 100644 --- a/com.unity.ml-agents/Runtime/Communicator/RpcCommunicator.cs +++ b/com.unity.ml-agents/Runtime/Communicator/RpcCommunicator.cs @@ -43,7 +43,7 @@ internal class RpcCommunicator : ICommunicator Dictionary m_UnsentBrainKeys = new Dictionary(); -# if UNITY_EDITOR || UNITY_STANDALONE_WIN || UNITY_STANDALONE_OSX || UNITY_STANDALONE_LINUX +#if UNITY_EDITOR || UNITY_STANDALONE_WIN || UNITY_STANDALONE_OSX || UNITY_STANDALONE_LINUX /// The Unity to External client. UnityToExternalProto.UnityToExternalProtoClient m_Client; #endif @@ -206,7 +206,7 @@ void UpdateEnvironmentWithInput(UnityRLInputProto rlInput) UnityInputProto Initialize(UnityOutputProto unityOutput, out UnityInputProto unityInput) { -# if UNITY_EDITOR || UNITY_STANDALONE_WIN || UNITY_STANDALONE_OSX || UNITY_STANDALONE_LINUX +#if UNITY_EDITOR || UNITY_STANDALONE_WIN || UNITY_STANDALONE_OSX || UNITY_STANDALONE_LINUX m_IsOpen = true; var channel = new Channel( "localhost:" + m_CommunicatorInitParameters.port, @@ -240,7 +240,7 @@ UnityInputProto Initialize(UnityOutputProto unityOutput, /// public void Dispose() { -# if UNITY_EDITOR || UNITY_STANDALONE_WIN || UNITY_STANDALONE_OSX || UNITY_STANDALONE_LINUX +#if UNITY_EDITOR || UNITY_STANDALONE_WIN || UNITY_STANDALONE_OSX || UNITY_STANDALONE_LINUX if (!m_IsOpen) { return; @@ -270,23 +270,23 @@ void SendCommandEvent(CommandProto command) switch (command) { case CommandProto.Quit: - { - QuitCommandReceived?.Invoke(); - return; - } + { + QuitCommandReceived?.Invoke(); + return; + } case CommandProto.Reset: - { - foreach (var brainName in m_OrderedAgentsRequestingDecisions.Keys) { - m_OrderedAgentsRequestingDecisions[brainName].Clear(); + foreach (var brainName in m_OrderedAgentsRequestingDecisions.Keys) + { + m_OrderedAgentsRequestingDecisions[brainName].Clear(); + } + ResetCommandReceived?.Invoke(); + return; } - ResetCommandReceived?.Invoke(); - return; - } default: - { - return; - } + { + return; + } } } @@ -313,7 +313,7 @@ public void DecideBatch() /// Sensors that will produce the observations public void PutObservations(string behaviorName, AgentInfo info, List sensors) { -# if DEBUG +#if DEBUG if (!m_SensorShapeValidators.ContainsKey(behaviorName)) { m_SensorShapeValidators[behaviorName] = new SensorShapeValidator(); @@ -441,7 +441,7 @@ public float[] GetActions(string behaviorName, int agentId) /// The UnityOutput to be sent. UnityInputProto Exchange(UnityOutputProto unityOutput) { -# if UNITY_EDITOR || UNITY_STANDALONE_WIN || UNITY_STANDALONE_OSX || UNITY_STANDALONE_LINUX +#if UNITY_EDITOR || UNITY_STANDALONE_WIN || UNITY_STANDALONE_OSX || UNITY_STANDALONE_LINUX if (!m_IsOpen) { return null; diff --git a/com.unity.ml-agents/Runtime/Communicator/UnityRLCapabilities.cs b/com.unity.ml-agents/Runtime/Communicator/UnityRLCapabilities.cs index f9546dc814..c2113376d9 100644 --- a/com.unity.ml-agents/Runtime/Communicator/UnityRLCapabilities.cs +++ b/com.unity.ml-agents/Runtime/Communicator/UnityRLCapabilities.cs @@ -10,7 +10,7 @@ internal class UnityRLCapabilities /// A class holding the capabilities flags for Reinforcement Learning across C# and the Trainer codebase. This /// struct will be used to inform users if and when they are using C# / Trainer features that are mismatched. /// - public UnityRLCapabilities(bool baseRlCapabilities=true) + public UnityRLCapabilities(bool baseRlCapabilities = true) { m_BaseRLCapabilities = baseRlCapabilities; } diff --git a/com.unity.ml-agents/Runtime/Policies/BehaviorParameters.cs b/com.unity.ml-agents/Runtime/Policies/BehaviorParameters.cs index 72b0038a9a..44199c0354 100644 --- a/com.unity.ml-agents/Runtime/Policies/BehaviorParameters.cs +++ b/com.unity.ml-agents/Runtime/Policies/BehaviorParameters.cs @@ -107,7 +107,7 @@ public NNModel Model public InferenceDevice InferenceDevice { get { return m_InferenceDevice; } - set { m_InferenceDevice = value; UpdateAgentPolicy();} + set { m_InferenceDevice = value; UpdateAgentPolicy(); } } [HideInInspector, SerializeField] @@ -202,17 +202,17 @@ internal IPolicy GeneratePolicy(HeuristicPolicy.ActionGenerator heuristic) case BehaviorType.HeuristicOnly: return GenerateHeuristicPolicy(heuristic); case BehaviorType.InferenceOnly: - { - if (m_Model == null) { - var behaviorType = BehaviorType.InferenceOnly.ToString(); - throw new UnityAgentsException( - $"Can't use Behavior Type {behaviorType} without a model. " + - "Either assign a model, or change to a different Behavior Type." - ); + if (m_Model == null) + { + var behaviorType = BehaviorType.InferenceOnly.ToString(); + throw new UnityAgentsException( + $"Can't use Behavior Type {behaviorType} without a model. " + + "Either assign a model, or change to a different Behavior Type." + ); + } + return new BarracudaPolicy(m_BrainParameters, m_Model, m_InferenceDevice); } - return new BarracudaPolicy(m_BrainParameters, m_Model, m_InferenceDevice); - } case BehaviorType.Default: if (Academy.Instance.IsCommunicatorOn) { diff --git a/com.unity.ml-agents/Runtime/Policies/BrainParameters.cs b/com.unity.ml-agents/Runtime/Policies/BrainParameters.cs index 2141cc0e49..dade3b4773 100644 --- a/com.unity.ml-agents/Runtime/Policies/BrainParameters.cs +++ b/com.unity.ml-agents/Runtime/Policies/BrainParameters.cs @@ -61,7 +61,7 @@ public class BrainParameters /// For the discrete action space: the number of branches in the action space. /// [FormerlySerializedAs("vectorActionSize")] - public int[] VectorActionSize = new[] {1}; + public int[] VectorActionSize = new[] { 1 }; /// /// The list of strings describing what the actions correspond to. diff --git a/com.unity.ml-agents/Runtime/Policies/HeuristicPolicy.cs b/com.unity.ml-agents/Runtime/Policies/HeuristicPolicy.cs index 232f459eb0..7bd4395be7 100644 --- a/com.unity.ml-agents/Runtime/Policies/HeuristicPolicy.cs +++ b/com.unity.ml-agents/Runtime/Policies/HeuristicPolicy.cs @@ -112,7 +112,7 @@ public void RemoveAt(int index) public float this[int index] { get { return 0.0f; } - set {} + set { } } } diff --git a/com.unity.ml-agents/Runtime/Sampler.cs b/com.unity.ml-agents/Runtime/Sampler.cs index fc48f3c271..5004a16ea1 100644 --- a/com.unity.ml-agents/Runtime/Sampler.cs +++ b/com.unity.ml-agents/Runtime/Sampler.cs @@ -2,7 +2,7 @@ using System.Collections.Generic; using Unity.MLAgents.Inference.Utils; using UnityEngine; -using Random=System.Random; +using Random = System.Random; namespace Unity.MLAgents { @@ -32,14 +32,14 @@ public static Func CreateMultiRangeUniformSampler(IList intervals, // Will be used to normalize intervalFuncs float sumIntervalSizes = 0; //The number of intervals - int numIntervals = (int)(intervals.Count/2); + int numIntervals = (int)(intervals.Count / 2); // List that will store interval lengths float[] intervalSizes = new float[numIntervals]; // List that will store uniform distributions IList> intervalFuncs = new Func[numIntervals]; // Collect all intervals and store as uniform distrus // Collect all interval sizes - for(int i = 0; i < numIntervals; i++) + for (int i = 0; i < numIntervals; i++) { var min = intervals[2 * i]; var max = intervals[2 * i + 1]; @@ -49,15 +49,15 @@ public static Func CreateMultiRangeUniformSampler(IList intervals, intervalFuncs[i] = () => min + (float)distr.NextDouble() * intervalSize; } // Normalize interval lengths - for(int i = 0; i < numIntervals; i++) + for (int i = 0; i < numIntervals; i++) { intervalSizes[i] = intervalSizes[i] / sumIntervalSizes; - } + } // Build cmf for intervals - for(int i = 1; i < numIntervals; i++) + for (int i = 1; i < numIntervals; i++) { intervalSizes[i] += intervalSizes[i - 1]; - } + } Multinomial intervalDistr = new Multinomial(seed + 1); float MultiRange() { diff --git a/com.unity.ml-agents/Runtime/Sensors/CameraSensor.cs b/com.unity.ml-agents/Runtime/Sensors/CameraSensor.cs index 053d76e37e..9dc54c55d2 100644 --- a/com.unity.ml-agents/Runtime/Sensors/CameraSensor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/CameraSensor.cs @@ -29,7 +29,7 @@ public Camera Camera /// public SensorCompressionType CompressionType { - get { return m_CompressionType; } + get { return m_CompressionType; } set { m_CompressionType = value; } } @@ -107,7 +107,7 @@ public int Write(ObservationWriter writer) } /// - public void Update() {} + public void Update() { } /// public void Reset() { } diff --git a/com.unity.ml-agents/Runtime/Sensors/CameraSensorComponent.cs b/com.unity.ml-agents/Runtime/Sensors/CameraSensorComponent.cs index d6fb86f329..fcfa350797 100644 --- a/com.unity.ml-agents/Runtime/Sensors/CameraSensorComponent.cs +++ b/com.unity.ml-agents/Runtime/Sensors/CameraSensorComponent.cs @@ -19,7 +19,7 @@ public class CameraSensorComponent : SensorComponent /// public Camera Camera { - get { return m_Camera; } + get { return m_Camera; } set { m_Camera = value; UpdateSensor(); } } @@ -32,7 +32,7 @@ public Camera Camera /// public string SensorName { - get { return m_SensorName; } + get { return m_SensorName; } set { m_SensorName = value; } } @@ -45,7 +45,7 @@ public string SensorName /// public int Width { - get { return m_Width; } + get { return m_Width; } set { m_Width = value; } } @@ -58,8 +58,8 @@ public int Width /// public int Height { - get { return m_Height; } - set { m_Height = value; } + get { return m_Height; } + set { m_Height = value; } } [HideInInspector, SerializeField, FormerlySerializedAs("grayscale")] @@ -71,7 +71,7 @@ public int Height /// public bool Grayscale { - get { return m_Grayscale; } + get { return m_Grayscale; } set { m_Grayscale = value; } } @@ -83,7 +83,7 @@ public bool Grayscale /// public SensorCompressionType CompressionType { - get { return m_Compression; } + get { return m_Compression; } set { m_Compression = value; UpdateSensor(); } } diff --git a/com.unity.ml-agents/Runtime/Sensors/ObservationWriter.cs b/com.unity.ml-agents/Runtime/Sensors/ObservationWriter.cs index b3b89f73e1..f25eaec744 100644 --- a/com.unity.ml-agents/Runtime/Sensors/ObservationWriter.cs +++ b/com.unity.ml-agents/Runtime/Sensors/ObservationWriter.cs @@ -19,7 +19,7 @@ public class ObservationWriter TensorShape m_TensorShape; - internal ObservationWriter() {} + internal ObservationWriter() { } /// /// Set the writer to write to an IList at the given channelOffset. diff --git a/com.unity.ml-agents/Runtime/Sensors/RayPerceptionSensor.cs b/com.unity.ml-agents/Runtime/Sensors/RayPerceptionSensor.cs index 80662b4bf6..1f84b7c520 100644 --- a/com.unity.ml-agents/Runtime/Sensors/RayPerceptionSensor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/RayPerceptionSensor.cs @@ -106,7 +106,7 @@ public int OutputSize() var startPositionWorld = Transform.TransformPoint(startPositionLocal); var endPositionWorld = Transform.TransformPoint(endPositionLocal); - return (StartPositionWorld : startPositionWorld, EndPositionWorld : endPositionWorld); + return (StartPositionWorld: startPositionWorld, EndPositionWorld: endPositionWorld); } /// @@ -340,7 +340,7 @@ public void Update() } /// - public void Reset() {} + public void Reset() { } /// public int[] GetObservationShape() diff --git a/com.unity.ml-agents/Runtime/Sensors/RayPerceptionSensorComponentBase.cs b/com.unity.ml-agents/Runtime/Sensors/RayPerceptionSensorComponentBase.cs index 094a36dfdc..d1a332e525 100644 --- a/com.unity.ml-agents/Runtime/Sensors/RayPerceptionSensorComponentBase.cs +++ b/com.unity.ml-agents/Runtime/Sensors/RayPerceptionSensorComponentBase.cs @@ -50,7 +50,7 @@ public int RaysPerDirection { get { return m_RaysPerDirection; } // Note: can't change at runtime - set { m_RaysPerDirection = value;} + set { m_RaysPerDirection = value; } } [HideInInspector, SerializeField, FormerlySerializedAs("maxRayDegrees")] diff --git a/com.unity.ml-agents/Runtime/Sensors/Reflection/BoolReflectionSensor.cs b/com.unity.ml-agents/Runtime/Sensors/Reflection/BoolReflectionSensor.cs index 946a567940..606656ecb3 100644 --- a/com.unity.ml-agents/Runtime/Sensors/Reflection/BoolReflectionSensor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/Reflection/BoolReflectionSensor.cs @@ -8,7 +8,7 @@ internal class BoolReflectionSensor : ReflectionSensorBase { public BoolReflectionSensor(ReflectionSensorInfo reflectionSensorInfo) : base(reflectionSensorInfo, 1) - {} + { } internal override void WriteReflectedField(ObservationWriter writer) { diff --git a/com.unity.ml-agents/Runtime/Sensors/Reflection/FloatReflectionSensor.cs b/com.unity.ml-agents/Runtime/Sensors/Reflection/FloatReflectionSensor.cs index 4f010a055e..a488a9ed5c 100644 --- a/com.unity.ml-agents/Runtime/Sensors/Reflection/FloatReflectionSensor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/Reflection/FloatReflectionSensor.cs @@ -8,7 +8,7 @@ internal class FloatReflectionSensor : ReflectionSensorBase { public FloatReflectionSensor(ReflectionSensorInfo reflectionSensorInfo) : base(reflectionSensorInfo, 1) - {} + { } internal override void WriteReflectedField(ObservationWriter writer) { diff --git a/com.unity.ml-agents/Runtime/Sensors/Reflection/IntReflectionSensor.cs b/com.unity.ml-agents/Runtime/Sensors/Reflection/IntReflectionSensor.cs index 580e70ab7e..c32c41e990 100644 --- a/com.unity.ml-agents/Runtime/Sensors/Reflection/IntReflectionSensor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/Reflection/IntReflectionSensor.cs @@ -8,7 +8,7 @@ internal class IntReflectionSensor : ReflectionSensorBase { public IntReflectionSensor(ReflectionSensorInfo reflectionSensorInfo) : base(reflectionSensorInfo, 1) - {} + { } internal override void WriteReflectedField(ObservationWriter writer) { diff --git a/com.unity.ml-agents/Runtime/Sensors/Reflection/ObservableAttribute.cs b/com.unity.ml-agents/Runtime/Sensors/Reflection/ObservableAttribute.cs index 610a6edd02..a88528c873 100644 --- a/com.unity.ml-agents/Runtime/Sensors/Reflection/ObservableAttribute.cs +++ b/com.unity.ml-agents/Runtime/Sensors/Reflection/ObservableAttribute.cs @@ -131,7 +131,7 @@ public ObservableAttribute(string name = null, int numStackedObservations = 1) internal static List CreateObservableSensors(object o, bool excludeInherited) { var sensorsOut = new List(); - foreach (var(field, attr) in GetObservableFields(o, excludeInherited)) + foreach (var (field, attr) in GetObservableFields(o, excludeInherited)) { var sensor = CreateReflectionSensor(o, field, null, attr); if (sensor != null) @@ -140,7 +140,7 @@ internal static List CreateObservableSensors(object o, bool excludeInhe } } - foreach (var(prop, attr) in GetObservableProperties(o, excludeInherited)) + foreach (var (prop, attr) in GetObservableProperties(o, excludeInherited)) { if (!prop.CanRead) { @@ -218,7 +218,7 @@ static ISensor CreateReflectionSensor(object o, FieldInfo fieldInfo, PropertyInf else { var (_, sensorType) = s_TypeToSensorInfo[memberType]; - sensor = (ISensor) Activator.CreateInstance(sensorType, reflectionSensorInfo); + sensor = (ISensor)Activator.CreateInstance(sensorType, reflectionSensorInfo); } // Wrap the base sensor in a StackingSensor if we're using stacking. @@ -241,7 +241,7 @@ static ISensor CreateReflectionSensor(object o, FieldInfo fieldInfo, PropertyInf internal static int GetTotalObservationSize(object o, bool excludeInherited, List errorsOut) { int sizeOut = 0; - foreach (var(field, attr) in GetObservableFields(o, excludeInherited)) + foreach (var (field, attr) in GetObservableFields(o, excludeInherited)) { if (s_TypeToSensorInfo.ContainsKey(field.FieldType)) { @@ -258,7 +258,7 @@ internal static int GetTotalObservationSize(object o, bool excludeInherited, Lis } } - foreach (var(prop, attr) in GetObservableProperties(o, excludeInherited)) + foreach (var (prop, attr) in GetObservableProperties(o, excludeInherited)) { if (!prop.CanRead) { diff --git a/com.unity.ml-agents/Runtime/Sensors/Reflection/QuaternionReflectionSensor.cs b/com.unity.ml-agents/Runtime/Sensors/Reflection/QuaternionReflectionSensor.cs index f922030691..5cd92ee68f 100644 --- a/com.unity.ml-agents/Runtime/Sensors/Reflection/QuaternionReflectionSensor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/Reflection/QuaternionReflectionSensor.cs @@ -8,7 +8,7 @@ internal class QuaternionReflectionSensor : ReflectionSensorBase { public QuaternionReflectionSensor(ReflectionSensorInfo reflectionSensorInfo) : base(reflectionSensorInfo, 4) - {} + { } internal override void WriteReflectedField(ObservationWriter writer) { diff --git a/com.unity.ml-agents/Runtime/Sensors/Reflection/ReflectionSensorBase.cs b/com.unity.ml-agents/Runtime/Sensors/Reflection/ReflectionSensorBase.cs index a77d62723d..62b1ffb882 100644 --- a/com.unity.ml-agents/Runtime/Sensors/Reflection/ReflectionSensorBase.cs +++ b/com.unity.ml-agents/Runtime/Sensors/Reflection/ReflectionSensorBase.cs @@ -46,7 +46,7 @@ public ReflectionSensorBase(ReflectionSensorInfo reflectionSensorInfo, int size) m_PropertyInfo = reflectionSensorInfo.PropertyInfo; m_ObservableAttribute = reflectionSensorInfo.ObservableAttribute; m_SensorName = reflectionSensorInfo.SensorName; - m_Shape = new[] {size}; + m_Shape = new[] { size }; } /// @@ -83,10 +83,10 @@ public byte[] GetCompressedObservation() } /// - public void Update() {} + public void Update() { } /// - public void Reset() {} + public void Reset() { } /// public SensorCompressionType GetCompressionType() diff --git a/com.unity.ml-agents/Runtime/Sensors/Reflection/Vector2ReflectionSensor.cs b/com.unity.ml-agents/Runtime/Sensors/Reflection/Vector2ReflectionSensor.cs index e4975085a9..85c6dea8ef 100644 --- a/com.unity.ml-agents/Runtime/Sensors/Reflection/Vector2ReflectionSensor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/Reflection/Vector2ReflectionSensor.cs @@ -8,7 +8,7 @@ internal class Vector2ReflectionSensor : ReflectionSensorBase { public Vector2ReflectionSensor(ReflectionSensorInfo reflectionSensorInfo) : base(reflectionSensorInfo, 2) - {} + { } internal override void WriteReflectedField(ObservationWriter writer) { diff --git a/com.unity.ml-agents/Runtime/Sensors/Reflection/Vector3ReflectionSensor.cs b/com.unity.ml-agents/Runtime/Sensors/Reflection/Vector3ReflectionSensor.cs index 569b25b9b7..8fa28b73ee 100644 --- a/com.unity.ml-agents/Runtime/Sensors/Reflection/Vector3ReflectionSensor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/Reflection/Vector3ReflectionSensor.cs @@ -8,7 +8,7 @@ internal class Vector3ReflectionSensor : ReflectionSensorBase { public Vector3ReflectionSensor(ReflectionSensorInfo reflectionSensorInfo) : base(reflectionSensorInfo, 3) - {} + { } internal override void WriteReflectedField(ObservationWriter writer) { diff --git a/com.unity.ml-agents/Runtime/Sensors/Reflection/Vector4ReflectionSensor.cs b/com.unity.ml-agents/Runtime/Sensors/Reflection/Vector4ReflectionSensor.cs index 0ac4d4ebfe..76b5c39c27 100644 --- a/com.unity.ml-agents/Runtime/Sensors/Reflection/Vector4ReflectionSensor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/Reflection/Vector4ReflectionSensor.cs @@ -8,7 +8,7 @@ internal class Vector4ReflectionSensor : ReflectionSensorBase { public Vector4ReflectionSensor(ReflectionSensorInfo reflectionSensorInfo) : base(reflectionSensorInfo, 4) - {} + { } internal override void WriteReflectedField(ObservationWriter writer) { diff --git a/com.unity.ml-agents/Runtime/Sensors/RenderTextureSensor.cs b/com.unity.ml-agents/Runtime/Sensors/RenderTextureSensor.cs index 566d0302ab..f38ddc8dd6 100644 --- a/com.unity.ml-agents/Runtime/Sensors/RenderTextureSensor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/RenderTextureSensor.cs @@ -18,7 +18,7 @@ public class RenderTextureSensor : ISensor /// public SensorCompressionType CompressionType { - get { return m_CompressionType; } + get { return m_CompressionType; } set { m_CompressionType = value; } } @@ -82,10 +82,10 @@ public int Write(ObservationWriter writer) } /// - public void Update() {} + public void Update() { } /// - public void Reset() {} + public void Reset() { } /// public SensorCompressionType GetCompressionType() diff --git a/com.unity.ml-agents/Runtime/Sensors/RenderTextureSensorComponent.cs b/com.unity.ml-agents/Runtime/Sensors/RenderTextureSensorComponent.cs index 7835f2929b..f308507e0f 100644 --- a/com.unity.ml-agents/Runtime/Sensors/RenderTextureSensorComponent.cs +++ b/com.unity.ml-agents/Runtime/Sensors/RenderTextureSensorComponent.cs @@ -24,8 +24,8 @@ public class RenderTextureSensorComponent : SensorComponent /// public RenderTexture RenderTexture { - get { return m_RenderTexture; } - set { m_RenderTexture = value; } + get { return m_RenderTexture; } + set { m_RenderTexture = value; } } [HideInInspector, SerializeField, FormerlySerializedAs("sensorName")] @@ -37,7 +37,7 @@ public RenderTexture RenderTexture /// public string SensorName { - get { return m_SensorName; } + get { return m_SensorName; } set { m_SensorName = value; } } @@ -50,7 +50,7 @@ public string SensorName /// public bool Grayscale { - get { return m_Grayscale; } + get { return m_Grayscale; } set { m_Grayscale = value; } } @@ -62,7 +62,7 @@ public bool Grayscale /// public SensorCompressionType CompressionType { - get { return m_Compression; } + get { return m_Compression; } set { m_Compression = value; UpdateSensor(); } } diff --git a/com.unity.ml-agents/Runtime/SideChannels/EnvironmentParametersChannel.cs b/com.unity.ml-agents/Runtime/SideChannels/EnvironmentParametersChannel.cs index d28f84d2da..9b2842b300 100644 --- a/com.unity.ml-agents/Runtime/SideChannels/EnvironmentParametersChannel.cs +++ b/com.unity.ml-agents/Runtime/SideChannels/EnvironmentParametersChannel.cs @@ -94,7 +94,8 @@ protected override void OnMessageReceived(IncomingMessage msg) IList intervals = msg.ReadFloatList(); sampler = SamplerFactory.CreateMultiRangeUniformSampler(intervals, seed); } - else{ + else + { Debug.LogWarning("EnvironmentParametersChannel received an unknown data type."); } m_Parameters[key] = sampler; diff --git a/com.unity.ml-agents/Runtime/Timer.cs b/com.unity.ml-agents/Runtime/Timer.cs index 8b8c33b1b3..d779deb650 100644 --- a/com.unity.ml-agents/Runtime/Timer.cs +++ b/com.unity.ml-agents/Runtime/Timer.cs @@ -75,7 +75,7 @@ public long CurrentTicks public double TotalSeconds { get { return CurrentTicks * s_TicksToSeconds; } - set {} // Serialization needs this, but unused. + set { } // Serialization needs this, but unused. } /// @@ -98,7 +98,7 @@ public double SelfSeconds var selfTicks = Mathf.Max(0, CurrentTicks - totalChildTicks); return selfTicks * s_TicksToSeconds; } - set {} // Serialization needs this, but unused. + set { } // Serialization needs this, but unused. } public IReadOnlyDictionary Children @@ -223,7 +223,7 @@ internal class RootNode : TimerNode [DataMember(Name = "gauges", EmitDefaultValue = false)] Dictionary m_Gauges = new Dictionary(); - public RootNode(string name="root") : base(name, true) + public RootNode(string name = "root") : base(name, true) { m_Metadata.Add("timer_format_version", k_TimerFormatVersion); m_Metadata.Add("start_time_seconds", $"{DateTimeOffset.Now.ToUnixTimeSeconds()}"); @@ -461,7 +461,7 @@ internal string DebugGetTimerString() /// public void SaveJsonTimers(string filename = null) { -# if UNITY_EDITOR || UNITY_STANDALONE_WIN || UNITY_STANDALONE_OSX || UNITY_STANDALONE_LINUX +#if UNITY_EDITOR || UNITY_STANDALONE_WIN || UNITY_STANDALONE_OSX || UNITY_STANDALONE_LINUX try { if (filename == null) diff --git a/com.unity.ml-agents/Tests/Editor/Actuators/ActuatorDiscreteActionMaskTests.cs b/com.unity.ml-agents/Tests/Editor/Actuators/ActuatorDiscreteActionMaskTests.cs index d3cead8ec0..1685bb6015 100644 --- a/com.unity.ml-agents/Tests/Editor/Actuators/ActuatorDiscreteActionMaskTests.cs +++ b/com.unity.ml-agents/Tests/Editor/Actuators/ActuatorDiscreteActionMaskTests.cs @@ -26,11 +26,11 @@ public void NullMask() [Test] public void FirstBranchMask() { - var actuator1 = new TestActuator(ActionSpec.MakeDiscrete(new[] {4, 5, 6}), "actuator1"); - var masker = new ActuatorDiscreteActionMask(new IActuator[] {actuator1}, 15, 3); + var actuator1 = new TestActuator(ActionSpec.MakeDiscrete(new[] { 4, 5, 6 }), "actuator1"); + var masker = new ActuatorDiscreteActionMask(new IActuator[] { actuator1 }, 15, 3); var mask = masker.GetMask(); Assert.IsNull(mask); - masker.WriteMask(0, new[] {1, 2, 3}); + masker.WriteMask(0, new[] { 1, 2, 3 }); mask = masker.GetMask(); Assert.IsFalse(mask[0]); Assert.IsTrue(mask[1]); @@ -43,9 +43,9 @@ public void FirstBranchMask() [Test] public void SecondBranchMask() { - var actuator1 = new TestActuator(ActionSpec.MakeDiscrete(new[] {4, 5, 6}), "actuator1"); - var masker = new ActuatorDiscreteActionMask(new[] {actuator1}, 15, 3); - masker.WriteMask(1, new[] {1, 2, 3}); + var actuator1 = new TestActuator(ActionSpec.MakeDiscrete(new[] { 4, 5, 6 }), "actuator1"); + var masker = new ActuatorDiscreteActionMask(new[] { actuator1 }, 15, 3); + masker.WriteMask(1, new[] { 1, 2, 3 }); var mask = masker.GetMask(); Assert.IsFalse(mask[0]); Assert.IsFalse(mask[4]); @@ -59,9 +59,9 @@ public void SecondBranchMask() [Test] public void MaskReset() { - var actuator1 = new TestActuator(ActionSpec.MakeDiscrete(new[] {4, 5, 6}), "actuator1"); - var masker = new ActuatorDiscreteActionMask(new IActuator[] {actuator1}, 15, 3); - masker.WriteMask(1, new[] {1, 2, 3}); + var actuator1 = new TestActuator(ActionSpec.MakeDiscrete(new[] { 4, 5, 6 }), "actuator1"); + var masker = new ActuatorDiscreteActionMask(new IActuator[] { actuator1 }, 15, 3); + masker.WriteMask(1, new[] { 1, 2, 3 }); masker.ResetMask(); var mask = masker.GetMask(); for (var i = 0; i < 15; i++) @@ -73,18 +73,18 @@ public void MaskReset() [Test] public void ThrowsError() { - var actuator1 = new TestActuator(ActionSpec.MakeDiscrete(new[] {4, 5, 6}), "actuator1"); - var masker = new ActuatorDiscreteActionMask(new IActuator[] {actuator1}, 15, 3); + var actuator1 = new TestActuator(ActionSpec.MakeDiscrete(new[] { 4, 5, 6 }), "actuator1"); + var masker = new ActuatorDiscreteActionMask(new IActuator[] { actuator1 }, 15, 3); Assert.Catch( - () => masker.WriteMask(0, new[] {5})); + () => masker.WriteMask(0, new[] { 5 })); Assert.Catch( - () => masker.WriteMask(1, new[] {5})); - masker.WriteMask(2, new[] {5}); + () => masker.WriteMask(1, new[] { 5 })); + masker.WriteMask(2, new[] { 5 }); Assert.Catch( - () => masker.WriteMask(3, new[] {1})); + () => masker.WriteMask(3, new[] { 1 })); masker.GetMask(); masker.ResetMask(); - masker.WriteMask(0, new[] {0, 1, 2, 3}); + masker.WriteMask(0, new[] { 0, 1, 2, 3 }); Assert.Catch( () => masker.GetMask()); } @@ -92,11 +92,11 @@ public void ThrowsError() [Test] public void MultipleMaskEdit() { - var actuator1 = new TestActuator(ActionSpec.MakeDiscrete(new[] {4, 5, 6}), "actuator1"); - var masker = new ActuatorDiscreteActionMask(new IActuator[] {actuator1}, 15, 3); - masker.WriteMask(0, new[] {0, 1}); - masker.WriteMask(0, new[] {3}); - masker.WriteMask(2, new[] {1}); + var actuator1 = new TestActuator(ActionSpec.MakeDiscrete(new[] { 4, 5, 6 }), "actuator1"); + var masker = new ActuatorDiscreteActionMask(new IActuator[] { actuator1 }, 15, 3); + masker.WriteMask(0, new[] { 0, 1 }); + masker.WriteMask(0, new[] { 3 }); + masker.WriteMask(2, new[] { 1 }); var mask = masker.GetMask(); for (var i = 0; i < 15; i++) { diff --git a/com.unity.ml-agents/Tests/Editor/Actuators/ActuatorManagerTests.cs b/com.unity.ml-agents/Tests/Editor/Actuators/ActuatorManagerTests.cs index c115ae9879..089d75a791 100644 --- a/com.unity.ml-agents/Tests/Editor/Actuators/ActuatorManagerTests.cs +++ b/com.unity.ml-agents/Tests/Editor/Actuators/ActuatorManagerTests.cs @@ -43,8 +43,8 @@ public void TestEnsureBufferSizeContinuous() public void TestEnsureBufferDiscrete() { var manager = new ActuatorManager(); - var actuator1 = new TestActuator(ActionSpec.MakeDiscrete(new[] {1 , 2, 3, 4}), "actuator1"); - var actuator2 = new TestActuator(ActionSpec.MakeDiscrete(new[] {1, 1, 1}), "actuator2"); + var actuator1 = new TestActuator(ActionSpec.MakeDiscrete(new[] { 1, 2, 3, 4 }), "actuator1"); + var actuator2 = new TestActuator(ActionSpec.MakeDiscrete(new[] { 1, 1, 1 }), "actuator2"); manager.Add(actuator1); manager.Add(actuator2); var actuator1ActionSpaceDef = actuator1.ActionSpec; @@ -55,7 +55,7 @@ public void TestEnsureBufferDiscrete() actuator1ActionSpaceDef.NumDiscreteActions + actuator2ActionSpaceDef.NumDiscreteActions); manager.UpdateActions(new ActionBuffers(Array.Empty(), - new[] { 0, 1, 2, 3, 4, 5, 6})); + new[] { 0, 1, 2, 3, 4, 5, 6 })); Assert.IsTrue(0 == manager.NumContinuousActions); Assert.IsTrue(7 == manager.NumDiscreteActions); @@ -68,7 +68,7 @@ public void TestEnsureBufferDiscrete() public void TestFailOnMixedActionSpace() { var manager = new ActuatorManager(); - var actuator1 = new TestActuator(ActionSpec.MakeDiscrete(new[] {1 , 2, 3, 4}), "actuator1"); + var actuator1 = new TestActuator(ActionSpec.MakeDiscrete(new[] { 1, 2, 3, 4 }), "actuator1"); var actuator2 = new TestActuator(ActionSpec.MakeContinuous(3), "actuator2"); manager.Add(actuator1); manager.Add(actuator2); @@ -92,12 +92,12 @@ public void TestFailOnSameActuatorName() public void TestExecuteActionsDiscrete() { var manager = new ActuatorManager(); - var actuator1 = new TestActuator(ActionSpec.MakeDiscrete(new[] {1 , 2, 3, 4}), "actuator1"); - var actuator2 = new TestActuator(ActionSpec.MakeDiscrete(new[] {1, 1, 1}), "actuator2"); + var actuator1 = new TestActuator(ActionSpec.MakeDiscrete(new[] { 1, 2, 3, 4 }), "actuator1"); + var actuator2 = new TestActuator(ActionSpec.MakeDiscrete(new[] { 1, 1, 1 }), "actuator2"); manager.Add(actuator1); manager.Add(actuator2); - var discreteActionBuffer = new[] { 0, 1, 2, 3, 4, 5, 6}; + var discreteActionBuffer = new[] { 0, 1, 2, 3, 4, 5, 6 }; manager.UpdateActions(new ActionBuffers(Array.Empty(), discreteActionBuffer)); @@ -117,7 +117,7 @@ public void TestExecuteActionsContinuous() manager.Add(actuator1); manager.Add(actuator2); - var continuousActionBuffer = new[] { 0f, 1f, 2f, 3f, 4f, 5f}; + var continuousActionBuffer = new[] { 0f, 1f, 2f, 3f, 4f, 5f }; manager.UpdateActions(new ActionBuffers(continuousActionBuffer, Array.Empty())); @@ -148,7 +148,7 @@ public void TestUpdateActionsContinuous() var actuator2 = new TestActuator(ActionSpec.MakeContinuous(3), "actuator2"); manager.Add(actuator1); manager.Add(actuator2); - var continuousActionBuffer = new[] { 0f, 1f, 2f, 3f, 4f, 5f}; + var continuousActionBuffer = new[] { 0f, 1f, 2f, 3f, 4f, 5f }; manager.UpdateActions(new ActionBuffers(continuousActionBuffer, Array.Empty())); @@ -161,10 +161,10 @@ public void TestUpdateActionsDiscrete() var manager = new ActuatorManager(); var actuator1 = new TestActuator(ActionSpec.MakeDiscrete(new[] { 1, 2, 3 }), "actuator1"); - var actuator2 = new TestActuator(ActionSpec.MakeDiscrete(new[] {1, 2, 3}), "actuator2"); + var actuator2 = new TestActuator(ActionSpec.MakeDiscrete(new[] { 1, 2, 3 }), "actuator2"); manager.Add(actuator1); manager.Add(actuator2); - var discreteActionBuffer = new[] { 0, 1, 2, 3, 4, 5}; + var discreteActionBuffer = new[] { 0, 1, 2, 3, 4, 5 }; manager.UpdateActions(new ActionBuffers(Array.Empty(), discreteActionBuffer)); @@ -179,7 +179,7 @@ public void TestRemove() var manager = new ActuatorManager(); var actuator1 = new TestActuator(ActionSpec.MakeDiscrete(new[] { 1, 2, 3 }), "actuator1"); - var actuator2 = new TestActuator(ActionSpec.MakeDiscrete(new[] {1, 2, 3}), "actuator2"); + var actuator2 = new TestActuator(ActionSpec.MakeDiscrete(new[] { 1, 2, 3 }), "actuator2"); manager.Add(actuator1); manager.Add(actuator2); @@ -207,7 +207,7 @@ public void TestClear() var manager = new ActuatorManager(); var actuator1 = new TestActuator(ActionSpec.MakeDiscrete(new[] { 1, 2, 3 }), "actuator1"); - var actuator2 = new TestActuator(ActionSpec.MakeDiscrete(new[] {1, 2, 3}), "actuator2"); + var actuator2 = new TestActuator(ActionSpec.MakeDiscrete(new[] { 1, 2, 3 }), "actuator2"); manager.Add(actuator1); manager.Add(actuator2); @@ -224,9 +224,9 @@ public void TestClear() public void TestIndexSet() { var manager = new ActuatorManager(); - var actuator1 = new TestActuator(ActionSpec.MakeDiscrete(new[] { 1, 2, 3, 4}), + var actuator1 = new TestActuator(ActionSpec.MakeDiscrete(new[] { 1, 2, 3, 4 }), "actuator1"); - var actuator2 = new TestActuator(ActionSpec.MakeDiscrete(new[] {1, 2, 3}), "actuator2"); + var actuator2 = new TestActuator(ActionSpec.MakeDiscrete(new[] { 1, 2, 3 }), "actuator2"); manager.Add(actuator1); Assert.IsTrue(manager.NumDiscreteActions == 4); Assert.IsTrue(manager.SumOfDiscreteBranchSizes == 10); @@ -239,9 +239,9 @@ public void TestIndexSet() public void TestInsert() { var manager = new ActuatorManager(); - var actuator1 = new TestActuator(ActionSpec.MakeDiscrete(new[] { 1, 2, 3, 4}), + var actuator1 = new TestActuator(ActionSpec.MakeDiscrete(new[] { 1, 2, 3, 4 }), "actuator1"); - var actuator2 = new TestActuator(ActionSpec.MakeDiscrete(new[] {1, 2, 3}), "actuator2"); + var actuator2 = new TestActuator(ActionSpec.MakeDiscrete(new[] { 1, 2, 3 }), "actuator2"); manager.Add(actuator1); Assert.IsTrue(manager.NumDiscreteActions == 4); Assert.IsTrue(manager.SumOfDiscreteBranchSizes == 10); @@ -260,7 +260,7 @@ public void TestResetData() var actuator2 = new TestActuator(ActionSpec.MakeContinuous(3), "actuator2"); manager.Add(actuator1); manager.Add(actuator2); - var continuousActionBuffer = new[] { 0f, 1f, 2f, 3f, 4f, 5f}; + var continuousActionBuffer = new[] { 0f, 1f, 2f, 3f, 4f, 5f }; manager.UpdateActions(new ActionBuffers(continuousActionBuffer, Array.Empty())); @@ -268,15 +268,15 @@ public void TestResetData() Assert.IsTrue(manager.NumContinuousActions == 6); manager.ResetData(); - Assert.IsTrue(manager.StoredActions.ContinuousActions.SequenceEqual(new[] { 0f, 0f, 0f, 0f, 0f, 0f})); + Assert.IsTrue(manager.StoredActions.ContinuousActions.SequenceEqual(new[] { 0f, 0f, 0f, 0f, 0f, 0f })); } [Test] public void TestWriteDiscreteActionMask() { var manager = new ActuatorManager(2); - var va1 = new TestActuator(ActionSpec.MakeDiscrete(new[] {1, 2, 3}), "name"); - var va2 = new TestActuator(ActionSpec.MakeDiscrete(new[] {3, 2, 1}), "name1"); + var va1 = new TestActuator(ActionSpec.MakeDiscrete(new[] { 1, 2, 3 }), "name"); + var va2 = new TestActuator(ActionSpec.MakeDiscrete(new[] { 3, 2, 1 }), "name1"); manager.Add(va1); manager.Add(va2); diff --git a/com.unity.ml-agents/Tests/Editor/Actuators/VectorActuatorTests.cs b/com.unity.ml-agents/Tests/Editor/Actuators/VectorActuatorTests.cs index e80daa4010..7d998f3a8f 100644 --- a/com.unity.ml-agents/Tests/Editor/Actuators/VectorActuatorTests.cs +++ b/com.unity.ml-agents/Tests/Editor/Actuators/VectorActuatorTests.cs @@ -32,13 +32,13 @@ public void WriteDiscreteActionMask(IDiscreteActionMask actionMask) public void TestConstruct() { var ar = new TestActionReceiver(); - var va = new VectorActuator(ar, new[] {1, 2, 3}, SpaceType.Discrete, "name"); + var va = new VectorActuator(ar, new[] { 1, 2, 3 }, SpaceType.Discrete, "name"); Assert.IsTrue(va.ActionSpec.NumDiscreteActions == 3); Assert.IsTrue(va.ActionSpec.SumOfDiscreteBranchSizes == 6); Assert.IsTrue(va.ActionSpec.NumContinuousActions == 0); - var va1 = new VectorActuator(ar, new[] {4}, SpaceType.Continuous, "name"); + var va1 = new VectorActuator(ar, new[] { 4 }, SpaceType.Continuous, "name"); Assert.IsTrue(va1.ActionSpec.NumContinuousActions == 4); Assert.IsTrue(va1.ActionSpec.SumOfDiscreteBranchSizes == 0); @@ -49,7 +49,7 @@ public void TestConstruct() public void TestOnActionReceived() { var ar = new TestActionReceiver(); - var va = new VectorActuator(ar, new[] {1, 2, 3}, SpaceType.Discrete, "name"); + var va = new VectorActuator(ar, new[] { 1, 2, 3 }, SpaceType.Discrete, "name"); var discreteActions = new[] { 0, 1, 1 }; var ab = new ActionBuffers(ActionSegment.Empty, @@ -67,7 +67,7 @@ public void TestOnActionReceived() public void TestResetData() { var ar = new TestActionReceiver(); - var va = new VectorActuator(ar, new[] {1, 2, 3}, SpaceType.Discrete, "name"); + var va = new VectorActuator(ar, new[] { 1, 2, 3 }, SpaceType.Discrete, "name"); var discreteActions = new[] { 0, 1, 1 }; var ab = new ActionBuffers(ActionSegment.Empty, @@ -80,8 +80,8 @@ public void TestResetData() public void TestWriteDiscreteActionMask() { var ar = new TestActionReceiver(); - var va = new VectorActuator(ar, new[] {1, 2, 3}, SpaceType.Discrete, "name"); - var bdam = new ActuatorDiscreteActionMask(new[] {va}, 6, 3); + var va = new VectorActuator(ar, new[] { 1, 2, 3 }, SpaceType.Discrete, "name"); + var bdam = new ActuatorDiscreteActionMask(new[] { va }, 6, 3); var groundTruthMask = new[] { false, true, false, false, true, true }; diff --git a/com.unity.ml-agents/Tests/Editor/DemonstrationTests.cs b/com.unity.ml-agents/Tests/Editor/DemonstrationTests.cs index ef0e760471..867f401910 100644 --- a/com.unity.ml-agents/Tests/Editor/DemonstrationTests.cs +++ b/com.unity.ml-agents/Tests/Editor/DemonstrationTests.cs @@ -122,11 +122,11 @@ public void TestAgentWrite() var agentSendInfo = typeof(Agent).GetMethod("SendInfo", BindingFlags.Instance | BindingFlags.NonPublic); - agentEnableMethod?.Invoke(agent1, new object[] {}); + agentEnableMethod?.Invoke(agent1, new object[] { }); // Step the agent agent1.RequestDecision(); - agentSendInfo?.Invoke(agent1, new object[] {}); + agentSendInfo?.Invoke(agent1, new object[] { }); demoRecorder.Close(); diff --git a/com.unity.ml-agents/Tests/Editor/DiscreteActionOutputApplierTest.cs b/com.unity.ml-agents/Tests/Editor/DiscreteActionOutputApplierTest.cs index 68c87dcaed..d2f28f7eca 100644 --- a/com.unity.ml-agents/Tests/Editor/DiscreteActionOutputApplierTest.cs +++ b/com.unity.ml-agents/Tests/Editor/DiscreteActionOutputApplierTest.cs @@ -16,7 +16,7 @@ public void TestEvalP() var src = new TensorProxy { - data = new Tensor(1, 3, new[] {0.1f, 0.2f, 0.7f}), + data = new Tensor(1, 3, new[] { 0.1f, 0.2f, 0.7f }), valueType = TensorProxy.TensorType.FloatingPoint }; @@ -28,7 +28,7 @@ public void TestEvalP() DiscreteActionOutputApplier.Eval(src, dst, m); - float[] reference = {2, 2, 1}; + float[] reference = { 2, 2, 1 }; for (var i = 0; i < dst.data.length; i++) { Assert.AreEqual(reference[i], dst.data[i]); @@ -58,7 +58,7 @@ public void TestEvalLogits() DiscreteActionOutputApplier.Eval(src, dst, m); - float[] reference = {2, 2, 2}; + float[] reference = { 2, 2, 2 }; for (var i = 0; i < dst.data.length; i++) { Assert.AreEqual(reference[i], dst.data[i]); @@ -89,7 +89,7 @@ public void TestEvalBatching() DiscreteActionOutputApplier.Eval(src, dst, m); - float[] reference = {2, 2, 2, 0, 1, 0}; + float[] reference = { 2, 2, 2, 0, 1, 0 }; for (var i = 0; i < dst.data.length; i++) { Assert.AreEqual(reference[i], dst.data[i]); diff --git a/com.unity.ml-agents/Tests/Editor/MLAgentsEditModeTest.cs b/com.unity.ml-agents/Tests/Editor/MLAgentsEditModeTest.cs index 1b8ede91b9..aaf0a3d0fe 100644 --- a/com.unity.ml-agents/Tests/Editor/MLAgentsEditModeTest.cs +++ b/com.unity.ml-agents/Tests/Editor/MLAgentsEditModeTest.cs @@ -28,7 +28,7 @@ public void RequestDecision(AgentInfo info, List sensors) public ref readonly ActionBuffers DecideAction() { return ref s_EmptyActionBuffers; } - public void Dispose() {} + public void Dispose() { } } public class TestAgent : Agent @@ -152,7 +152,7 @@ public string GetName() return sensorName; } - public void Update() {} + public void Update() { } public void Reset() { @@ -551,7 +551,7 @@ public void AssertStackingReset() StackingSensor sensor = null; foreach (ISensor s in agent1.sensors) { - if (s is StackingSensor) + if (s is StackingSensor) { sensor = s as StackingSensor; } @@ -565,9 +565,9 @@ public void AssertStackingReset() aca.EnvironmentStep(); } - policy.OnRequestDecision = () => SensorTestHelper.CompareObservation(sensor, new[] {18f, 19f, 21f}); + policy.OnRequestDecision = () => SensorTestHelper.CompareObservation(sensor, new[] { 18f, 19f, 21f }); agent1.EndEpisode(); - SensorTestHelper.CompareObservation(sensor, new[] {0f, 0f, 0f}); + SensorTestHelper.CompareObservation(sensor, new[] { 0f, 0f, 0f }); } } @@ -811,7 +811,7 @@ public void TestObservableAttributeBehaviorIgnore() (ObservableAttributeOptions.ExamineAll, 2) }; - foreach (var(behavior, expectedNumSensors) in variants) + foreach (var (behavior, expectedNumSensors) in variants) { var go = new GameObject(); var agent = go.AddComponent(); diff --git a/com.unity.ml-agents/Tests/Editor/ModelRunnerTest.cs b/com.unity.ml-agents/Tests/Editor/ModelRunnerTest.cs index c08b298721..c2666c6b4e 100644 --- a/com.unity.ml-agents/Tests/Editor/ModelRunnerTest.cs +++ b/com.unity.ml-agents/Tests/Editor/ModelRunnerTest.cs @@ -23,7 +23,7 @@ BrainParameters GetContinuous2vis8vec2actionBrainParameters() { var validBrainParameters = new BrainParameters(); validBrainParameters.VectorObservationSize = 8; - validBrainParameters.VectorActionSize = new [] { 2 }; + validBrainParameters.VectorActionSize = new[] { 2 }; validBrainParameters.NumStackedVectorObservations = 1; validBrainParameters.VectorActionSpaceType = SpaceType.Continuous; return validBrainParameters; @@ -33,7 +33,7 @@ BrainParameters GetDiscrete1vis0vec_2_3action_recurrModelBrainParameters() { var validBrainParameters = new BrainParameters(); validBrainParameters.VectorObservationSize = 0; - validBrainParameters.VectorActionSize = new [] { 2, 3 }; + validBrainParameters.VectorActionSize = new[] { 2, 3 }; validBrainParameters.NumStackedVectorObservations = 1; validBrainParameters.VectorActionSpaceType = SpaceType.Discrete; return validBrainParameters; @@ -84,10 +84,10 @@ public void TestRunModel() var modelRunner = new ModelRunner(discrete1vis0vec_2_3action_recurrModel, brainParameters); var info1 = new AgentInfo(); info1.episodeId = 1; - modelRunner.PutObservations(info1, new [] { sensor_21_20_3.CreateSensor() }.ToList()); + modelRunner.PutObservations(info1, new[] { sensor_21_20_3.CreateSensor() }.ToList()); var info2 = new AgentInfo(); info2.episodeId = 2; - modelRunner.PutObservations(info2, new [] { sensor_21_20_3.CreateSensor() }.ToList()); + modelRunner.PutObservations(info2, new[] { sensor_21_20_3.CreateSensor() }.ToList()); modelRunner.DecideBatch(); diff --git a/com.unity.ml-agents/Tests/Editor/MultinomialTest.cs b/com.unity.ml-agents/Tests/Editor/MultinomialTest.cs index a91b4d9d2b..28e3b1db6e 100644 --- a/com.unity.ml-agents/Tests/Editor/MultinomialTest.cs +++ b/com.unity.ml-agents/Tests/Editor/MultinomialTest.cs @@ -9,7 +9,7 @@ public class MultinomialTest public void TestDim1() { var m = new Multinomial(2018); - var cdf = new[] {1f}; + var cdf = new[] { 1f }; Assert.AreEqual(0, m.Sample(cdf)); Assert.AreEqual(0, m.Sample(cdf)); @@ -20,7 +20,7 @@ public void TestDim1() public void TestDim1Unscaled() { var m = new Multinomial(2018); - var cdf = new[] {0.1f}; + var cdf = new[] { 0.1f }; Assert.AreEqual(0, m.Sample(cdf)); Assert.AreEqual(0, m.Sample(cdf)); @@ -31,7 +31,7 @@ public void TestDim1Unscaled() public void TestDim3() { var m = new Multinomial(2018); - var cdf = new[] {0.1f, 0.3f, 1.0f}; + var cdf = new[] { 0.1f, 0.3f, 1.0f }; Assert.AreEqual(2, m.Sample(cdf)); Assert.AreEqual(2, m.Sample(cdf)); @@ -43,7 +43,7 @@ public void TestDim3() public void TestDim3Unscaled() { var m = new Multinomial(2018); - var cdf = new[] {0.05f, 0.15f, 0.5f}; + var cdf = new[] { 0.05f, 0.15f, 0.5f }; Assert.AreEqual(2, m.Sample(cdf)); Assert.AreEqual(2, m.Sample(cdf)); diff --git a/com.unity.ml-agents/Tests/Editor/ParameterLoaderTest.cs b/com.unity.ml-agents/Tests/Editor/ParameterLoaderTest.cs index 08d27156ab..b292b1adc0 100644 --- a/com.unity.ml-agents/Tests/Editor/ParameterLoaderTest.cs +++ b/com.unity.ml-agents/Tests/Editor/ParameterLoaderTest.cs @@ -40,7 +40,7 @@ public Test3DSensor(string name, int width, int height, int channels) public int[] GetObservationShape() { - return new [] {m_Height, m_Width, m_Channels }; + return new[] { m_Height, m_Width, m_Channels }; } public int Write(ObservationWriter writer) @@ -57,7 +57,7 @@ public byte[] GetCompressedObservation() return new byte[0]; } - public void Update() {} + public void Update() { } public void Reset() { } public SensorCompressionType GetCompressionType() @@ -85,7 +85,7 @@ BrainParameters GetContinuous2vis8vec2actionBrainParameters() { var validBrainParameters = new BrainParameters(); validBrainParameters.VectorObservationSize = 8; - validBrainParameters.VectorActionSize = new [] { 2 }; + validBrainParameters.VectorActionSize = new[] { 2 }; validBrainParameters.NumStackedVectorObservations = 1; validBrainParameters.VectorActionSpaceType = SpaceType.Continuous; return validBrainParameters; @@ -95,7 +95,7 @@ BrainParameters GetDiscrete1vis0vec_2_3action_recurrModelBrainParameters() { var validBrainParameters = new BrainParameters(); validBrainParameters.VectorObservationSize = 0; - validBrainParameters.VectorActionSize = new [] { 2, 3 }; + validBrainParameters.VectorActionSize = new[] { 2, 3 }; validBrainParameters.NumStackedVectorObservations = 1; validBrainParameters.VectorActionSpaceType = SpaceType.Discrete; return validBrainParameters; @@ -224,7 +224,7 @@ public void TestCheckModelThrowsAction1() var model = ModelLoader.Load(continuous2vis8vec2actionModel); var brainParameters = GetContinuous2vis8vec2actionBrainParameters(); - brainParameters.VectorActionSize = new [] { 3 }; // Invalid action + brainParameters.VectorActionSize = new[] { 3 }; // Invalid action var errors = BarracudaModelParamLoader.CheckModel(model, brainParameters, new SensorComponent[] { sensor_21_20_3, sensor_20_22_3 }); Assert.Greater(errors.Count(), 0); @@ -240,7 +240,7 @@ public void TestCheckModelThrowsAction2() var model = ModelLoader.Load(discrete1vis0vec_2_3action_recurrModel); var brainParameters = GetDiscrete1vis0vec_2_3action_recurrModelBrainParameters(); - brainParameters.VectorActionSize = new [] { 3, 3 }; // Invalid action + brainParameters.VectorActionSize = new[] { 3, 3 }; // Invalid action var errors = BarracudaModelParamLoader.CheckModel(model, brainParameters, new SensorComponent[] { sensor_21_20_3 }); Assert.Greater(errors.Count(), 0); diff --git a/com.unity.ml-agents/Tests/Editor/SamplerTests.cs b/com.unity.ml-agents/Tests/Editor/SamplerTests.cs index 7f17a78f43..c4fe25418b 100644 --- a/com.unity.ml-agents/Tests/Editor/SamplerTests.cs +++ b/com.unity.ml-agents/Tests/Editor/SamplerTests.cs @@ -12,7 +12,7 @@ public class SamplerTests const int k_Seed = 1337; const double k_Epsilon = 0.0001; EnvironmentParametersChannel m_Channel; - + public SamplerTests() { m_Channel = SideChannelManager.GetSideChannel(); @@ -102,7 +102,7 @@ internal static byte[] GetByteMessage(SideChannel sideChannel, OutgoingMessage m binaryWriter.Write(message.Length); binaryWriter.Write(message); } - return memStream.ToArray(); + return memStream.ToArray(); } } } diff --git a/com.unity.ml-agents/Tests/Editor/Sensor/CameraSensorTest.cs b/com.unity.ml-agents/Tests/Editor/Sensor/CameraSensorTest.cs index ff4ab3bdc2..d2730fc908 100644 --- a/com.unity.ml-agents/Tests/Editor/Sensor/CameraSensorTest.cs +++ b/com.unity.ml-agents/Tests/Editor/Sensor/CameraSensorTest.cs @@ -1,7 +1,7 @@ - using System; - using NUnit.Framework; - using UnityEngine; - using Unity.MLAgents.Sensors; +using System; +using NUnit.Framework; +using UnityEngine; +using Unity.MLAgents.Sensors; namespace Unity.MLAgents.Tests { @@ -24,7 +24,7 @@ public void TestCameraSensor() var obsWriter = new ObservationWriter(); var obs = sensor.GetObservationProto(obsWriter); - Assert.AreEqual((int) compression, (int) obs.CompressionType); + Assert.AreEqual((int)compression, (int)obs.CompressionType); var expectedShape = new[] { height, width, grayscale ? 1 : 3 }; Assert.AreEqual(expectedShape, obs.Shape); } diff --git a/com.unity.ml-agents/Tests/Editor/Sensor/FloatVisualSensorTests.cs b/com.unity.ml-agents/Tests/Editor/Sensor/FloatVisualSensorTests.cs index 04eb6b6c03..8da87418ec 100644 --- a/com.unity.ml-agents/Tests/Editor/Sensor/FloatVisualSensorTests.cs +++ b/com.unity.ml-agents/Tests/Editor/Sensor/FloatVisualSensorTests.cs @@ -60,7 +60,7 @@ public int Write(ObservationWriter writer) } } - public void Update() {} + public void Update() { } public void Reset() { } public SensorCompressionType GetCompressionType() diff --git a/com.unity.ml-agents/Tests/Editor/Sensor/ObservableAttributeTests.cs b/com.unity.ml-agents/Tests/Editor/Sensor/ObservableAttributeTests.cs index 268e89e26d..76f76ba037 100644 --- a/com.unity.ml-agents/Tests/Editor/Sensor/ObservableAttributeTests.cs +++ b/com.unity.ml-agents/Tests/Editor/Sensor/ObservableAttributeTests.cs @@ -354,7 +354,7 @@ public void TestObservableAttributeExcludeInherited() Assert.AreEqual("derived", sensorsDerivedOnly[0].GetName()); var b = new BaseClass(); - var baseSensors = ObservableAttribute.CreateObservableSensors(b, false); + var baseSensors = ObservableAttribute.CreateObservableSensors(b, false); Assert.AreEqual(2, baseSensors.Count); } } diff --git a/com.unity.ml-agents/Tests/Editor/Sensor/ObservationWriterTests.cs b/com.unity.ml-agents/Tests/Editor/Sensor/ObservationWriterTests.cs index d370541aee..859d26d6a8 100644 --- a/com.unity.ml-agents/Tests/Editor/Sensor/ObservationWriterTests.cs +++ b/com.unity.ml-agents/Tests/Editor/Sensor/ObservationWriterTests.cs @@ -28,12 +28,12 @@ public void TestWritesToIList() // AddRange writer.SetTarget(buffer, shape, 0); - writer.AddRange(new[] {4f, 5f}); + writer.AddRange(new[] { 4f, 5f }); Assert.AreEqual(new[] { 4f, 5f, 2f }, buffer); // AddRange with offset writer.SetTarget(buffer, shape, 1); - writer.AddRange(new[] {6f, 7f}); + writer.AddRange(new[] { 6f, 7f }); Assert.AreEqual(new[] { 4f, 6f, 7f }, buffer); } @@ -68,7 +68,7 @@ public void TestWritesToTensor() }; writer.SetTarget(t, 1, 1); - writer.AddRange(new[] {-1f, -2f}); + writer.AddRange(new[] { -1f, -2f }); Assert.AreEqual(0f, t.data[0, 0]); Assert.AreEqual(0f, t.data[0, 1]); Assert.AreEqual(0f, t.data[0, 2]); diff --git a/com.unity.ml-agents/Tests/Editor/Sensor/SensorShapeValidatorTests.cs b/com.unity.ml-agents/Tests/Editor/Sensor/SensorShapeValidatorTests.cs index 09f738570b..550d68f0f9 100644 --- a/com.unity.ml-agents/Tests/Editor/Sensor/SensorShapeValidatorTests.cs +++ b/com.unity.ml-agents/Tests/Editor/Sensor/SensorShapeValidatorTests.cs @@ -23,7 +23,7 @@ public DummySensor(int dim1, int dim2) public DummySensor(int dim1, int dim2, int dim3) { - m_Shape = new[] { dim1, dim2, dim3}; + m_Shape = new[] { dim1, dim2, dim3 }; } public string GetName() diff --git a/com.unity.ml-agents/Tests/Editor/Sensor/StackingSensorTests.cs b/com.unity.ml-agents/Tests/Editor/Sensor/StackingSensorTests.cs index 97192bea0c..8626fe3121 100644 --- a/com.unity.ml-agents/Tests/Editor/Sensor/StackingSensorTests.cs +++ b/com.unity.ml-agents/Tests/Editor/Sensor/StackingSensorTests.cs @@ -11,7 +11,7 @@ public void TestCtor() ISensor wrapped = new VectorSensor(4); ISensor sensor = new StackingSensor(wrapped, 4); Assert.AreEqual("StackingSensor_size4_VectorSensor_size4", sensor.GetName()); - Assert.AreEqual(sensor.GetObservationShape(), new[] {16}); + Assert.AreEqual(sensor.GetObservationShape(), new[] { 16 }); } [Test] @@ -20,27 +20,27 @@ public void TestStacking() VectorSensor wrapped = new VectorSensor(2); ISensor sensor = new StackingSensor(wrapped, 3); - wrapped.AddObservation(new[] {1f, 2f}); - SensorTestHelper.CompareObservation(sensor, new[] {0f, 0f, 0f, 0f, 1f, 2f}); + wrapped.AddObservation(new[] { 1f, 2f }); + SensorTestHelper.CompareObservation(sensor, new[] { 0f, 0f, 0f, 0f, 1f, 2f }); sensor.Update(); - wrapped.AddObservation(new[] {3f, 4f}); - SensorTestHelper.CompareObservation(sensor, new[] {0f, 0f, 1f, 2f, 3f, 4f}); + wrapped.AddObservation(new[] { 3f, 4f }); + SensorTestHelper.CompareObservation(sensor, new[] { 0f, 0f, 1f, 2f, 3f, 4f }); sensor.Update(); - wrapped.AddObservation(new[] {5f, 6f}); - SensorTestHelper.CompareObservation(sensor, new[] {1f, 2f, 3f, 4f, 5f, 6f}); + wrapped.AddObservation(new[] { 5f, 6f }); + SensorTestHelper.CompareObservation(sensor, new[] { 1f, 2f, 3f, 4f, 5f, 6f }); sensor.Update(); - wrapped.AddObservation(new[] {7f, 8f}); - SensorTestHelper.CompareObservation(sensor, new[] {3f, 4f, 5f, 6f, 7f, 8f}); + wrapped.AddObservation(new[] { 7f, 8f }); + SensorTestHelper.CompareObservation(sensor, new[] { 3f, 4f, 5f, 6f, 7f, 8f }); sensor.Update(); - wrapped.AddObservation(new[] {9f, 10f}); - SensorTestHelper.CompareObservation(sensor, new[] {5f, 6f, 7f, 8f, 9f, 10f}); + wrapped.AddObservation(new[] { 9f, 10f }); + SensorTestHelper.CompareObservation(sensor, new[] { 5f, 6f, 7f, 8f, 9f, 10f }); // Check that if we don't call Update(), the same observations are produced - SensorTestHelper.CompareObservation(sensor, new[] {5f, 6f, 7f, 8f, 9f, 10f}); + SensorTestHelper.CompareObservation(sensor, new[] { 5f, 6f, 7f, 8f, 9f, 10f }); } [Test] @@ -49,16 +49,16 @@ public void TestStackingReset() VectorSensor wrapped = new VectorSensor(2); ISensor sensor = new StackingSensor(wrapped, 3); - wrapped.AddObservation(new[] {1f, 2f}); - SensorTestHelper.CompareObservation(sensor, new[] {0f, 0f, 0f, 0f, 1f, 2f}); + wrapped.AddObservation(new[] { 1f, 2f }); + SensorTestHelper.CompareObservation(sensor, new[] { 0f, 0f, 0f, 0f, 1f, 2f }); sensor.Update(); - wrapped.AddObservation(new[] {3f, 4f}); - SensorTestHelper.CompareObservation(sensor, new[] {0f, 0f, 1f, 2f, 3f, 4f}); + wrapped.AddObservation(new[] { 3f, 4f }); + SensorTestHelper.CompareObservation(sensor, new[] { 0f, 0f, 1f, 2f, 3f, 4f }); sensor.Reset(); - wrapped.AddObservation(new[] {5f, 6f}); - SensorTestHelper.CompareObservation(sensor, new[] {0f, 0f, 0f, 0f, 5f, 6f}); + wrapped.AddObservation(new[] { 5f, 6f }); + SensorTestHelper.CompareObservation(sensor, new[] { 0f, 0f, 0f, 0f, 5f, 6f }); } } } diff --git a/com.unity.ml-agents/Tests/Editor/Sensor/VectorSensorTests.cs b/com.unity.ml-agents/Tests/Editor/Sensor/VectorSensorTests.cs index b24dbddcc0..42cd377a86 100644 --- a/com.unity.ml-agents/Tests/Editor/Sensor/VectorSensorTests.cs +++ b/com.unity.ml-agents/Tests/Editor/Sensor/VectorSensorTests.cs @@ -49,7 +49,7 @@ public void TestAddObservationFloat() { var sensor = new VectorSensor(1); sensor.AddObservation(1.2f); - SensorTestHelper.CompareObservation(sensor, new[] {1.2f}); + SensorTestHelper.CompareObservation(sensor, new[] { 1.2f }); } [Test] @@ -57,7 +57,7 @@ public void TestAddObservationInt() { var sensor = new VectorSensor(1); sensor.AddObservation(42); - SensorTestHelper.CompareObservation(sensor, new[] {42f}); + SensorTestHelper.CompareObservation(sensor, new[] { 42f }); } [Test] @@ -65,7 +65,7 @@ public void TestAddObservationVec() { var sensor = new VectorSensor(3); sensor.AddObservation(new Vector3(1, 2, 3)); - SensorTestHelper.CompareObservation(sensor, new[] {1f, 2f, 3f}); + SensorTestHelper.CompareObservation(sensor, new[] { 1f, 2f, 3f }); sensor = new VectorSensor(2); sensor.AddObservation(new Vector2(4, 5)); @@ -77,14 +77,14 @@ public void TestAddObservationQuaternion() { var sensor = new VectorSensor(4); sensor.AddObservation(Quaternion.identity); - SensorTestHelper.CompareObservation(sensor, new[] {0f, 0f, 0f, 1f}); + SensorTestHelper.CompareObservation(sensor, new[] { 0f, 0f, 0f, 1f }); } [Test] public void TestWriteEnumerable() { var sensor = new VectorSensor(4); - sensor.AddObservation(new[] {1f, 2f, 3f, 4f}); + sensor.AddObservation(new[] { 1f, 2f, 3f, 4f }); SensorTestHelper.CompareObservation(sensor, new[] { 1f, 2f, 3f, 4f }); } @@ -94,7 +94,7 @@ public void TestAddObservationBool() { var sensor = new VectorSensor(1); sensor.AddObservation(true); - SensorTestHelper.CompareObservation(sensor, new[] {1f}); + SensorTestHelper.CompareObservation(sensor, new[] { 1f }); } [Test] @@ -102,26 +102,26 @@ public void TestAddObservationOneHot() { var sensor = new VectorSensor(4); sensor.AddOneHotObservation(2, 4); - SensorTestHelper.CompareObservation(sensor, new[] {0f, 0f, 1f, 0f}); + SensorTestHelper.CompareObservation(sensor, new[] { 0f, 0f, 1f, 0f }); } [Test] public void TestWriteTooMany() { var sensor = new VectorSensor(2); - sensor.AddObservation(new[] {1f, 2f, 3f, 4f}); + sensor.AddObservation(new[] { 1f, 2f, 3f, 4f }); - SensorTestHelper.CompareObservation(sensor, new[] { 1f, 2f}); + SensorTestHelper.CompareObservation(sensor, new[] { 1f, 2f }); } [Test] public void TestWriteNotEnough() { var sensor = new VectorSensor(4); - sensor.AddObservation(new[] {1f, 2f}); + sensor.AddObservation(new[] { 1f, 2f }); // Make sure extra zeros are added - SensorTestHelper.CompareObservation(sensor, new[] { 1f, 2f, 0f, 0f}); + SensorTestHelper.CompareObservation(sensor, new[] { 1f, 2f, 0f, 0f }); } } } diff --git a/com.unity.ml-agents/Tests/Editor/UtilitiesTests.cs b/com.unity.ml-agents/Tests/Editor/UtilitiesTests.cs index 3109880599..de90a6797a 100644 --- a/com.unity.ml-agents/Tests/Editor/UtilitiesTests.cs +++ b/com.unity.ml-agents/Tests/Editor/UtilitiesTests.cs @@ -7,17 +7,17 @@ public class UtilitiesTests [Test] public void TestCumSum() { - var output = Utilities.CumSum(new[] {1, 2, 3, 10}); - CollectionAssert.AreEqual(output, new[] {0, 1, 3, 6, 16}); + var output = Utilities.CumSum(new[] { 1, 2, 3, 10 }); + CollectionAssert.AreEqual(output, new[] { 0, 1, 3, 6, 16 }); output = Utilities.CumSum(new int[0]); - CollectionAssert.AreEqual(output, new[] {0}); + CollectionAssert.AreEqual(output, new[] { 0 }); - output = Utilities.CumSum(new[] {100}); - CollectionAssert.AreEqual(output, new[] {0, 100}); + output = Utilities.CumSum(new[] { 100 }); + CollectionAssert.AreEqual(output, new[] { 0, 100 }); - output = Utilities.CumSum(new[] {-1, 10}); - CollectionAssert.AreEqual(output, new[] {0, -1, 9}); + output = Utilities.CumSum(new[] { -1, 10 }); + CollectionAssert.AreEqual(output, new[] { 0, -1, 9 }); } } } diff --git a/utils/run_dotnet_format.py b/utils/run_dotnet_format.py new file mode 100755 index 0000000000..43d607833f --- /dev/null +++ b/utils/run_dotnet_format.py @@ -0,0 +1,24 @@ +#!/usr/bin/env python3 + +import argparse +import os +import subprocess +import tempfile + + +if __name__ == "__main__": + + parser = argparse.ArgumentParser() + parser.add_argument("files", nargs="*") + args = parser.parse_args() + + with tempfile.TemporaryDirectory() as tempdir: + # Could potentially hit the commandline limit, so write files to a response file + # See https://github.com/dotnet/format/issues/699 + resp_file = os.path.join(tempdir, "response.txt") + with open(resp_file, "w") as fp: + for f in args.files: + fp.write(f + "\n") + + subprocess_args = ["dotnet", "format", "--folder", "--include", f"@{resp_file}"] + subprocess.check_call(subprocess_args)