From 509a4bf8e53d39de92ba9a786b0849a82508c8ef Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Tue, 22 Jul 2025 13:02:35 -0400 Subject: [PATCH 01/29] Move all files from the extension package to the main package --- .yamato/com.unity.ml-agents-coverage.yml | 4 +- .yamato/com.unity.ml-agents-test.yml | 6 - .yamato/compressed-sensor-test.yml | 2 +- .yamato/coverage_tests.metafile | 3 - .yamato/standalone-build-test.yml | 1 - .yamato/training-int-tests.yml | 2 +- DevProject/Packages/manifest.json | 2 - DevProject/Packages/packages-lock.json | 9 - .../PushBlockWithInputPlayerController.cs | 4 +- Project/Packages/manifest.json | 2 - Project/Packages/packages-lock.json | 9 - com.unity.ml-agents.extensions/.gitignore | 16 -- com.unity.ml-agents.extensions/.npmignore | 19 -- com.unity.ml-agents.extensions/CHANGELOG.md | 6 - .../CHANGELOG.md.meta | 7 - .../Documentation~/CustomGridSensors.md | 76 ------- .../Documentation~/InputActuatorComponent.md | 57 ----- .../com.unity.ml-agents.extensions.md | 70 ------ .../Editor/EditorExample.cs | 3 - ...y.ML-Agents.Extensions.Editor.Input.asmdef | 26 --- ...Agents.Extensions.Editor.Input.asmdef.meta | 7 - .../Unity.ML-Agents.Extensions.Editor.asmdef | 12 -- ...ty.ML-Agents.Extensions.Editor.asmdef.meta | 7 - com.unity.ml-agents.extensions/LICENSE.md | 202 ------------------ .../LICENSE.md.meta | 7 - com.unity.ml-agents.extensions/README.md | 3 - com.unity.ml-agents.extensions/README.md.meta | 7 - .../Runtime/AssemblyInfo.cs | 5 - .../Runtime/AssemblyInfo.cs.meta | 11 - .../Runtime/Input.meta | 3 - .../Runtime/Input/AssemblyInfo.cs | 3 - .../Unity.ML-Agents.Extensions.Input.asmdef | 23 -- ...ity.ML-Agents.Extensions.Input.asmdef.meta | 7 - .../Runtime/Sensors.meta | 8 - .../Runtime/Unity.ML-Agents.Extensions.asmdef | 8 - .../Unity.ML-Agents.Extensions.asmdef.meta | 7 - com.unity.ml-agents.extensions/Tests.meta | 8 - .../Tests/.tests.json | 3 - .../Tests/Runtime.meta | 8 - ...ents.Extensions.Input.Tests.Runtime.asmdef | 31 --- ...Extensions.Input.Tests.Runtime.asmdef.meta | 7 - .../Tests/Runtime/Sensors/AssemblyInfo.cs | 3 - .../Unity.ML-Agents.Extensions.Tests.asmdef | 12 -- ...ity.ML-Agents.Extensions.Tests.asmdef.meta | 7 - com.unity.ml-agents.extensions/package.json | 11 - .../package.json.meta | 7 - .../Documentation~/com.unity.ml-agents.md | 109 +++++++++- .../Documentation~/images/match3-moves.png | Bin .../Documentation~/images/match3.png | Bin .../images/persp_ortho_proj.png | Bin com.unity.ml-agents/Editor/EditorExample.cs | 3 + .../Editor/EditorExample.cs.meta | 0 .../Editor/Extensions.meta | 2 +- .../Editor/Input.meta | 0 .../Input/InputActuatorComponentEditor.cs | 4 +- .../InputActuatorComponentEditor.cs.meta | 0 .../Editor/RigidBodySensorComponentEditor.cs | 4 +- .../RigidBodySensorComponentEditor.cs.meta | 0 .../Runtime/Actuators/IBuiltInActuator.cs | 4 +- com.unity.ml-agents/Runtime/AssemblyInfo.cs | 3 - .../Runtime/Input.meta | 2 +- .../Runtime/Input/Adaptors.meta | 0 .../Adaptors/ButtonInputActionAdaptor.cs | 2 +- .../Adaptors/ButtonInputActionAdaptor.cs.meta | 0 .../Adaptors/DoubleInputActionAdaptor.cs | 2 +- .../Adaptors/DoubleInputActionAdaptor.cs.meta | 0 .../Input/Adaptors/FloatInputActionAdaptor.cs | 2 +- .../Adaptors/FloatInputActionAdaptor.cs.meta | 0 .../Adaptors/IntegerInputActionAdaptor.cs | 2 +- .../IntegerInputActionAdaptor.cs.meta | 0 .../Adaptors/Vector2InputActionAdaptor.cs | 2 +- .../Vector2InputActionAdaptor.cs.meta | 0 .../Runtime/Input/AssemblyInfo.cs | 3 + .../Runtime/Input/AssemblyInfo.cs.meta | 0 .../Input/IInputActionAssetProvider.cs | 2 +- .../Input/IInputActionAssetProvider.cs.meta | 0 .../Runtime/Input/IRLActionInputAdaptor.cs | 2 +- .../Input/IRLActionInputAdaptor.cs.meta | 0 .../Runtime/Input/InputActionActuator.cs | 2 +- .../Runtime/Input/InputActionActuator.cs.meta | 0 .../Runtime/Input/InputActuatorComponent.cs | 2 +- .../Input/InputActuatorComponent.cs.meta | 0 .../Input/InputActuatorEventContext.cs | 2 +- .../Input/InputActuatorEventContext.cs.meta | 0 .../Sensors/ArticulationBodyJointExtractor.cs | 2 +- .../ArticulationBodyJointExtractor.cs.meta | 0 .../Sensors/ArticulationBodyPoseExtractor.cs | 2 +- .../ArticulationBodyPoseExtractor.cs.meta | 0 .../ArticulationBodySensorComponent.cs | 2 +- .../ArticulationBodySensorComponent.cs.meta | 0 .../Runtime/Sensors/CountingGridSensor.cs | 2 +- .../Sensors/CountingGridSensor.cs.meta | 0 .../Runtime/Sensors/IJointExtractor.cs | 4 +- .../Runtime/Sensors/IJointExtractor.cs.meta | 0 .../Runtime/Sensors/PhysicsBodySensor.cs | 2 +- .../Runtime/Sensors/PhysicsBodySensor.cs.meta | 0 .../Runtime/Sensors/PhysicsSensorSettings.cs | 2 +- .../Sensors/PhysicsSensorSettings.cs.meta | 0 .../Runtime/Sensors/PoseExtractor.cs | 2 +- .../Runtime/Sensors/PoseExtractor.cs.meta | 0 .../Sensors/RigidBodyJointExtractor.cs | 2 +- .../Sensors/RigidBodyJointExtractor.cs.meta | 0 .../Runtime/Sensors/RigidBodyPoseExtractor.cs | 2 +- .../Sensors/RigidBodyPoseExtractor.cs.meta | 0 .../Sensors/RigidBodySensorComponent.cs | 2 +- .../Sensors/RigidBodySensorComponent.cs.meta | 0 .../Tests/Runtime/Input.meta | 0 .../Tests/Runtime/Input/Adaptors.meta | 0 .../Adaptors/ButtonInputActionAdaptorTests.cs | 4 +- .../ButtonInputActionAdaptorTests.cs.meta | 0 .../Adaptors/DoubleInputActionAdaptorTests.cs | 4 +- .../DoubleInputActionAdaptorTests.cs.meta | 0 .../Adaptors/FloatInputActionAdapatorTests.cs | 4 +- .../FloatInputActionAdapatorTests.cs.meta | 0 .../IntegerInputActionAdaptorTests.cs | 4 +- .../IntegerInputActionAdaptorTests.cs.meta | 0 .../Vector2InputActionAdaptorTests.cs | 4 +- .../Vector2InputActionAdaptorTests.cs.meta | 0 .../Runtime/Input/InputActionActuatorTests.cs | 4 +- .../Input/InputActionActuatorTests.cs.meta | 0 .../Input/InputActuatorComponentTests.cs | 4 +- .../Input/InputActuatorComponentTests.cs.meta | 0 .../Runtime/Input/TestPushBlockActions.cs | 0 .../Input/TestPushBlockActions.cs.meta | 0 .../Tests/Runtime/RuntimeExampleTest.cs | 2 +- .../Tests/Runtime/RuntimeExampleTest.cs.meta | 0 .../Tests/Runtime/Sensors.meta | 0 .../ArticulationBodyPoseExtractorTests.cs | 4 +- ...ArticulationBodyPoseExtractorTests.cs.meta | 0 .../Sensors/ArticulationBodySensorTests.cs | 4 +- .../ArticulationBodySensorTests.cs.meta | 0 .../Tests/Runtime/Sensors/AssemblyInfo.cs | 3 + .../Runtime/Sensors/AssemblyInfo.cs.meta | 0 .../Sensors/CountingGridSensorTests.cs | 3 +- .../Sensors/CountingGridSensorTests.cs.meta | 0 .../Runtime/Sensors/PoseExtractorTests.cs | 4 +- .../Sensors/PoseExtractorTests.cs.meta | 0 .../Sensors/RigidBodyPoseExtractorTests.cs | 4 +- .../RigidBodyPoseExtractorTests.cs.meta | 0 .../Runtime/Sensors/RigidBodySensorTests.cs | 3 +- .../Sensors/RigidBodySensorTests.cs.meta | 0 .../Tests/Runtime/Utils/TestClasses.cs | 1 - docs/Installation.md | 25 +-- docs/Learning-Environment-Design-Agents.md | 4 +- docs/Migrating.md | 2 +- docs/com.unity.ml-agents.extensions.md | 1 - ml-agents/tests/yamato/yamato_utils.py | 2 +- utils/validate_meta_files.py | 4 - utils/validate_versions.py | 24 +-- 149 files changed, 186 insertions(+), 851 deletions(-) delete mode 100644 com.unity.ml-agents.extensions/.gitignore delete mode 100644 com.unity.ml-agents.extensions/.npmignore delete mode 100644 com.unity.ml-agents.extensions/CHANGELOG.md delete mode 100644 com.unity.ml-agents.extensions/CHANGELOG.md.meta delete mode 100644 com.unity.ml-agents.extensions/Documentation~/CustomGridSensors.md delete mode 100644 com.unity.ml-agents.extensions/Documentation~/InputActuatorComponent.md delete mode 100644 com.unity.ml-agents.extensions/Documentation~/com.unity.ml-agents.extensions.md delete mode 100644 com.unity.ml-agents.extensions/Editor/EditorExample.cs delete mode 100644 com.unity.ml-agents.extensions/Editor/Input/Unity.ML-Agents.Extensions.Editor.Input.asmdef delete mode 100644 com.unity.ml-agents.extensions/Editor/Input/Unity.ML-Agents.Extensions.Editor.Input.asmdef.meta delete mode 100644 com.unity.ml-agents.extensions/Editor/Unity.ML-Agents.Extensions.Editor.asmdef delete mode 100644 com.unity.ml-agents.extensions/Editor/Unity.ML-Agents.Extensions.Editor.asmdef.meta delete mode 100644 com.unity.ml-agents.extensions/LICENSE.md delete mode 100644 com.unity.ml-agents.extensions/LICENSE.md.meta delete mode 100644 com.unity.ml-agents.extensions/README.md delete mode 100644 com.unity.ml-agents.extensions/README.md.meta delete mode 100644 com.unity.ml-agents.extensions/Runtime/AssemblyInfo.cs delete mode 100644 com.unity.ml-agents.extensions/Runtime/AssemblyInfo.cs.meta delete mode 100644 com.unity.ml-agents.extensions/Runtime/Input.meta delete mode 100644 com.unity.ml-agents.extensions/Runtime/Input/AssemblyInfo.cs delete mode 100644 com.unity.ml-agents.extensions/Runtime/Input/Unity.ML-Agents.Extensions.Input.asmdef delete mode 100644 com.unity.ml-agents.extensions/Runtime/Input/Unity.ML-Agents.Extensions.Input.asmdef.meta delete mode 100644 com.unity.ml-agents.extensions/Runtime/Sensors.meta delete mode 100644 com.unity.ml-agents.extensions/Runtime/Unity.ML-Agents.Extensions.asmdef delete mode 100644 com.unity.ml-agents.extensions/Runtime/Unity.ML-Agents.Extensions.asmdef.meta delete mode 100644 com.unity.ml-agents.extensions/Tests.meta delete mode 100644 com.unity.ml-agents.extensions/Tests/.tests.json delete mode 100644 com.unity.ml-agents.extensions/Tests/Runtime.meta delete mode 100644 com.unity.ml-agents.extensions/Tests/Runtime/Input/Unity.ML-Agents.Extensions.Input.Tests.Runtime.asmdef delete mode 100644 com.unity.ml-agents.extensions/Tests/Runtime/Input/Unity.ML-Agents.Extensions.Input.Tests.Runtime.asmdef.meta delete mode 100644 com.unity.ml-agents.extensions/Tests/Runtime/Sensors/AssemblyInfo.cs delete mode 100644 com.unity.ml-agents.extensions/Tests/Runtime/Unity.ML-Agents.Extensions.Tests.asmdef delete mode 100644 com.unity.ml-agents.extensions/Tests/Runtime/Unity.ML-Agents.Extensions.Tests.asmdef.meta delete mode 100644 com.unity.ml-agents.extensions/package.json delete mode 100644 com.unity.ml-agents.extensions/package.json.meta rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Documentation~/images/match3-moves.png (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Documentation~/images/match3.png (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Documentation~/images/persp_ortho_proj.png (100%) create mode 100644 com.unity.ml-agents/Editor/EditorExample.cs rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Editor/EditorExample.cs.meta (100%) rename com.unity.ml-agents.extensions/Editor.meta => com.unity.ml-agents/Editor/Extensions.meta (77%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Editor/Input.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Editor/Input/InputActuatorComponentEditor.cs (89%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Editor/Input/InputActuatorComponentEditor.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Editor/RigidBodySensorComponentEditor.cs (97%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Editor/RigidBodySensorComponentEditor.cs.meta (100%) rename com.unity.ml-agents.extensions/Runtime.meta => com.unity.ml-agents/Runtime/Input.meta (77%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Input/Adaptors.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Input/Adaptors/ButtonInputActionAdaptor.cs (97%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Input/Adaptors/ButtonInputActionAdaptor.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Input/Adaptors/DoubleInputActionAdaptor.cs (97%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Input/Adaptors/DoubleInputActionAdaptor.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Input/Adaptors/FloatInputActionAdaptor.cs (96%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Input/Adaptors/FloatInputActionAdaptor.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Input/Adaptors/IntegerInputActionAdaptor.cs (97%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Input/Adaptors/IntegerInputActionAdaptor.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Input/Adaptors/Vector2InputActionAdaptor.cs (97%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Input/Adaptors/Vector2InputActionAdaptor.cs.meta (100%) create mode 100644 com.unity.ml-agents/Runtime/Input/AssemblyInfo.cs rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Input/AssemblyInfo.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Input/IInputActionAssetProvider.cs (97%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Input/IInputActionAssetProvider.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Input/IRLActionInputAdaptor.cs (98%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Input/IRLActionInputAdaptor.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Input/InputActionActuator.cs (99%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Input/InputActionActuator.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Input/InputActuatorComponent.cs (99%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Input/InputActuatorComponent.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Input/InputActuatorEventContext.cs (98%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Input/InputActuatorEventContext.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Sensors/ArticulationBodyJointExtractor.cs (99%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Sensors/ArticulationBodyJointExtractor.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Sensors/ArticulationBodyPoseExtractor.cs (98%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Sensors/ArticulationBodyPoseExtractor.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Sensors/ArticulationBodySensorComponent.cs (93%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Sensors/ArticulationBodySensorComponent.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Sensors/CountingGridSensor.cs (98%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Sensors/CountingGridSensor.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Sensors/IJointExtractor.cs (93%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Sensors/IJointExtractor.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Sensors/PhysicsBodySensor.cs (98%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Sensors/PhysicsBodySensor.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Sensors/PhysicsSensorSettings.cs (99%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Sensors/PhysicsSensorSettings.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Sensors/PoseExtractor.cs (99%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Sensors/PoseExtractor.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Sensors/RigidBodyJointExtractor.cs (97%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Sensors/RigidBodyJointExtractor.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Sensors/RigidBodyPoseExtractor.cs (99%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Sensors/RigidBodyPoseExtractor.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Sensors/RigidBodySensorComponent.cs (98%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Runtime/Sensors/RigidBodySensorComponent.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Input.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Input/Adaptors.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs (96%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs (96%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs (96%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs (96%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs (96%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Input/InputActionActuatorTests.cs (96%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Input/InputActionActuatorTests.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Input/InputActuatorComponentTests.cs (98%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Input/InputActuatorComponentTests.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Input/TestPushBlockActions.cs (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Input/TestPushBlockActions.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/RuntimeExampleTest.cs (81%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/RuntimeExampleTest.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Sensors.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Sensors/ArticulationBodyPoseExtractorTests.cs (95%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Sensors/ArticulationBodyPoseExtractorTests.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Sensors/ArticulationBodySensorTests.cs (98%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Sensors/ArticulationBodySensorTests.cs.meta (100%) create mode 100644 com.unity.ml-agents/Tests/Runtime/Sensors/AssemblyInfo.cs rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Sensors/AssemblyInfo.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Sensors/CountingGridSensorTests.cs (98%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Sensors/CountingGridSensorTests.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Sensors/PoseExtractorTests.cs (98%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Sensors/PoseExtractorTests.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Sensors/RigidBodyPoseExtractorTests.cs (98%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Sensors/RigidBodyPoseExtractorTests.cs.meta (100%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Sensors/RigidBodySensorTests.cs (98%) rename {com.unity.ml-agents.extensions => com.unity.ml-agents}/Tests/Runtime/Sensors/RigidBodySensorTests.cs.meta (100%) delete mode 100644 docs/com.unity.ml-agents.extensions.md diff --git a/.yamato/com.unity.ml-agents-coverage.yml b/.yamato/com.unity.ml-agents-coverage.yml index 5ddeb6b95d..769bedd787 100644 --- a/.yamato/com.unity.ml-agents-coverage.yml +++ b/.yamato/com.unity.ml-agents-coverage.yml @@ -33,9 +33,7 @@ test_coverage_{{ package.name }}_{{ platform.name }}_{{ editor.version }}_{{ edi NOT pull_request.draft AND (pull_request.changes.any match "com.unity.ml-agents/**" OR pull_request.changes.any match " {{ editor.testProject }}/**" OR - {% if package.name == "com.unity.ml-agents.extensions" %} - pull_request.changes.any match "com.unity.ml-agents.extensions/**" OR - {% endif %} + pull_request.changes.any match "com.unity.ml-agents/**" OR pull_request.changes.any match ".yamato/com.unity.ml-agents-coverage.yml") {% endif %} {% endfor %} diff --git a/.yamato/com.unity.ml-agents-test.yml b/.yamato/com.unity.ml-agents-test.yml index 38b4fcc586..6345ad8608 100644 --- a/.yamato/com.unity.ml-agents-test.yml +++ b/.yamato/com.unity.ml-agents-test.yml @@ -29,9 +29,6 @@ packages: - name: com.unity.ml-agents assembly: Unity.ML-Agents minCoveragePct: 72 - - name: com.unity.ml-agents.extensions - assembly: Unity.ML-Agents.Extensions* - minCoveragePct: 75 --- all_package_tests: @@ -102,9 +99,6 @@ test_{{ package.name }}_{{ platform.name }}_{{ editor.version }}_{{ editor.testP NOT pull_request.draft AND (pull_request.changes.any match "com.unity.ml-agents/**" OR pull_request.changes.any match " {{ editor.testProject }}/**" OR - {% if package.name == "com.unity.ml-agents.extensions" %} - pull_request.changes.any match "com.unity.ml-agents.extensions/**" OR - {% endif %} pull_request.changes.any match ".yamato/com.unity.ml-agents-test.yml") {% endif %} {% endfor %} diff --git a/.yamato/compressed-sensor-test.yml b/.yamato/compressed-sensor-test.yml index db688c8634..a334ec80aa 100644 --- a/.yamato/compressed-sensor-test.yml +++ b/.yamato/compressed-sensor-test.yml @@ -28,7 +28,7 @@ test_compressed_obs_{{ editor.version }}_{{ editor.extra_test }}: pull_request.target match "release.+") AND NOT pull_request.draft AND (pull_request.changes.any match "com.unity.ml-agents/**" OR - pull_request.changes.any match "com.unity.ml-agents.extensions/**" OR + pull_request.changes.any match "com.unity.ml-agents/**" OR pull_request.changes.any match "Project/**" OR pull_request.changes.any match "ml-agents/tests/yamato/**" OR pull_request.changes.any match "ml-agents-envs/**" OR diff --git a/.yamato/coverage_tests.metafile b/.yamato/coverage_tests.metafile index aa79f55dc9..199717466c 100644 --- a/.yamato/coverage_tests.metafile +++ b/.yamato/coverage_tests.metafile @@ -12,6 +12,3 @@ coverage_test_packages: - name: com.unity.ml-agents assembly: Unity.ML-Agents minCoveragePct: 72 - - name: com.unity.ml-agents.extensions - assembly: Unity.ML-Agents.Extensions* - minCoveragePct: 75 diff --git a/.yamato/standalone-build-test.yml b/.yamato/standalone-build-test.yml index e56ab1d3f3..1c4c78fc53 100644 --- a/.yamato/standalone-build-test.yml +++ b/.yamato/standalone-build-test.yml @@ -30,7 +30,6 @@ test_linux_standalone_{{ editor.version }}_{{ editor.extra_test }}: pull_request.target match "release.+") AND NOT pull_request.draft AND (pull_request.changes.any match "com.unity.ml-agents/**" OR - pull_request.changes.any match "com.unity.ml-agents.extensions/**" OR pull_request.changes.any match ".yamato/standalone-build-test.yml") AND NOT pull_request.changes.all match "**/*.md" artifacts: diff --git a/.yamato/training-int-tests.yml b/.yamato/training-int-tests.yml index 321800d3ad..32a3b21387 100644 --- a/.yamato/training-int-tests.yml +++ b/.yamato/training-int-tests.yml @@ -25,7 +25,7 @@ test_linux_training_int_{{ editor.version }}_{{ editor.extra_test }}: pull_request.target match "release.+") AND NOT pull_request.draft AND (pull_request.changes.any match "com.unity.ml-agents/**" OR - pull_request.changes.any match "com.unity.ml-agents.extensions/**" OR + pull_request.changes.any match "com.unity.ml-agents/**" OR pull_request.changes.any match "Project/**" OR pull_request.changes.any match "ml-agents/**" OR pull_request.changes.any match "ml-agents-envs/**" OR diff --git a/DevProject/Packages/manifest.json b/DevProject/Packages/manifest.json index 767534ce50..eed5e2ce77 100644 --- a/DevProject/Packages/manifest.json +++ b/DevProject/Packages/manifest.json @@ -4,7 +4,6 @@ "com.unity.coding": "0.1.0-preview.13", "com.unity.inputsystem": "1.13.0", "com.unity.ml-agents": "file:../../com.unity.ml-agents", - "com.unity.ml-agents.extensions": "file:../../com.unity.ml-agents.extensions", "com.unity.multiplayer.center": "1.0.0", "com.unity.package-manager-doctools": "3.0.0-preview", "com.unity.package-validation-suite": "0.59.0-preview", @@ -22,7 +21,6 @@ "registry": "https://artifactory.prd.cds.internal.unity3d.com/artifactory/api/npm/upm-candidates", "testables": [ "com.unity.ml-agents", - "com.unity.ml-agents.extensions", "com.unity.inputsystem" ] } diff --git a/DevProject/Packages/packages-lock.json b/DevProject/Packages/packages-lock.json index 682353c648..39095c0939 100644 --- a/DevProject/Packages/packages-lock.json +++ b/DevProject/Packages/packages-lock.json @@ -85,15 +85,6 @@ "com.unity.modules.physics": "1.0.0" } }, - "com.unity.ml-agents.extensions": { - "version": "file:../../com.unity.ml-agents.extensions", - "depth": 0, - "source": "local", - "dependencies": { - "com.unity.ml-agents": "3.0.0", - "com.unity.modules.physics": "1.0.0" - } - }, "com.unity.multiplayer.center": { "version": "1.0.0", "depth": 0, diff --git a/Project/Assets/ML-Agents/Examples/PushBlockWithInput/Scripts/PushBlockWithInputPlayerController.cs b/Project/Assets/ML-Agents/Examples/PushBlockWithInput/Scripts/PushBlockWithInputPlayerController.cs index 99637685cf..23422589aa 100644 --- a/Project/Assets/ML-Agents/Examples/PushBlockWithInput/Scripts/PushBlockWithInputPlayerController.cs +++ b/Project/Assets/ML-Agents/Examples/PushBlockWithInput/Scripts/PushBlockWithInputPlayerController.cs @@ -1,4 +1,5 @@ -using Unity.MLAgents.Extensions.Input; +#if MLA_INPUT_SYSTEM +using Unity.MLAgents.Actuators; using UnityEngine; using UnityEngine.InputSystem; @@ -112,3 +113,4 @@ static float CreateForwardVector(Vector2 move) return (m_PushBlockActions.asset, m_PushBlockActions); } } +#endif diff --git a/Project/Packages/manifest.json b/Project/Packages/manifest.json index 27de52ed88..30298955dd 100644 --- a/Project/Packages/manifest.json +++ b/Project/Packages/manifest.json @@ -5,7 +5,6 @@ "com.unity.ide.rider": "3.0.31", "com.unity.inputsystem": "1.13.0", "com.unity.ml-agents": "file:../../com.unity.ml-agents", - "com.unity.ml-agents.extensions": "file:../../com.unity.ml-agents.extensions", "com.unity.multiplayer.center": "1.0.0", "com.unity.nuget.newtonsoft-json": "3.2.1", "com.unity.recorder": "5.1.2", @@ -21,7 +20,6 @@ }, "testables": [ "com.unity.ml-agents", - "com.unity.ml-agents.extensions", "com.unity.inputsystem" ] } diff --git a/Project/Packages/packages-lock.json b/Project/Packages/packages-lock.json index 05c7777a63..80e18ad625 100644 --- a/Project/Packages/packages-lock.json +++ b/Project/Packages/packages-lock.json @@ -111,15 +111,6 @@ "com.unity.modules.physics": "1.0.0" } }, - "com.unity.ml-agents.extensions": { - "version": "file:../../com.unity.ml-agents.extensions", - "depth": 0, - "source": "local", - "dependencies": { - "com.unity.ml-agents": "3.0.0", - "com.unity.modules.physics": "1.0.0" - } - }, "com.unity.multiplayer.center": { "version": "1.0.0", "depth": 0, diff --git a/com.unity.ml-agents.extensions/.gitignore b/com.unity.ml-agents.extensions/.gitignore deleted file mode 100644 index 9f297351a8..0000000000 --- a/com.unity.ml-agents.extensions/.gitignore +++ /dev/null @@ -1,16 +0,0 @@ -artifacts/** -build/** -.build_script/** -node_modules/** -.DS_Store -.npmrc -!Documentation~ -!.Documentation -npm-debug.log -build.sh.meta -build.bat.meta -.idea/ - -# API Scraper output -*.api -*.api.meta diff --git a/com.unity.ml-agents.extensions/.npmignore b/com.unity.ml-agents.extensions/.npmignore deleted file mode 100644 index 696d110ce9..0000000000 --- a/com.unity.ml-agents.extensions/.npmignore +++ /dev/null @@ -1,19 +0,0 @@ -artifacts/** -build/** -.build_script/** -node_modules/** -Documentation/ApiDocs/** -Documentation~/ApiDocs/** -.DS_Store -.npmrc -.npmignore -.gitignore -CONTRIBUTING.md -CONTRIBUTING.md.meta -QAReport.md -QAReport.md.meta -.gitlab-ci.yml -build.sh -build.sh.meta -build.bat -build.bat.meta diff --git a/com.unity.ml-agents.extensions/CHANGELOG.md b/com.unity.ml-agents.extensions/CHANGELOG.md deleted file mode 100644 index cdff153bbe..0000000000 --- a/com.unity.ml-agents.extensions/CHANGELOG.md +++ /dev/null @@ -1,6 +0,0 @@ -# Changelog -This changelog isn't used; please add to the `com.unity.ml-agents` changelog instead. - -## [Unreleased] -## [0.6.1-preview] - 2022-11-21 - * Initial version diff --git a/com.unity.ml-agents.extensions/CHANGELOG.md.meta b/com.unity.ml-agents.extensions/CHANGELOG.md.meta deleted file mode 100644 index 222c3d6869..0000000000 --- a/com.unity.ml-agents.extensions/CHANGELOG.md.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: cb3bf154cb17b41fca51ce7b73ef4d1b -TextScriptImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/com.unity.ml-agents.extensions/Documentation~/CustomGridSensors.md b/com.unity.ml-agents.extensions/Documentation~/CustomGridSensors.md deleted file mode 100644 index c0244dc186..0000000000 --- a/com.unity.ml-agents.extensions/Documentation~/CustomGridSensors.md +++ /dev/null @@ -1,76 +0,0 @@ -# Extending Grid Sensors - -## Overview -Grid Sensor provides a 2D observation that detects objects around an agent from a top-down view. Compared to RayCasts, it receives a full observation in a grid area without gaps, and the detection is not blocked by objects around the agents. This gives a more granular view while requiring a higher usage of compute resources. - -One extra feature with Grid Sensors is that you can derive from the Grid Sensor base class to collect custom data besides the object tags, to include custom attributes as observations. This allows more flexibility for the use of GridSensor. This doc will elaborate how to create custom grid-based sensor class, and the sensors implementations provided in ml-agents package. - -## Customized Grid Sensor -To create a custom grid sensor, you'll need to derive from two classes: `GridSensorBase` and `GridSensorComponent`. - -### Deriving from `GridSensorBase` -This is the implementation of your sensor. This defines how your sensor process detected colliders, -what the data looks like, and how the observations are constructed from the detected objects. -Consider overriding the following methods depending on your use case: -* `protected virtual int GetCellObservationSize()`: Return the observation size per cell. Default to `1`. -* `protected virtual void GetObjectData(GameObject detectedObject, int tagIndex, float[] dataBuffer)`: Constructs observations from the detected object. The input provides the detected GameObject and the index of its tag (0-indexed). The observations should be written to the given `dataBuffer` and the buffer size is defined in `GetCellObservationSize()`. This data will be gathered from each cell and sent to the trainer as observation. -* `protected virtual bool IsDataNormalized()`: Return whether the observation is normalized to 0~1. This affects whether you're able to use compressed observations as compressed data only supports normalized data. Return `true` if all the values written in `GetObjectData` are within the range of (0, 1), otherwise return `false`. Default to `false`. - - There might be cases when your data is not in the range of (0, 1) but you still wish to use compressed data to speed up training. If your data is naturally bounded within a range, normalize your data first to the possible range and fill the buffer with normalized data. For example, since the angle of rotation is bounded within `0 ~ 360`, record an angle `x` as `x/360` instead of `x`. If your data value is not bounded (position, velocity, etc.), consider setting a reasonable min/max value and use that to normalize your data. -* `protected internal virtual ProcessCollidersMethod GetProcessCollidersMethod()`: Return the method to process colliders detected in a cell. This defines the sensor behavior when multiple objects with detectable tags are detected within a cell. -Currently two methods are provided: - * `ProcessCollidersMethod.ProcessClosestColliders` (Default): Process the closest collider to the agent. In this case each cell's data is represented by one object. - * `ProcessCollidersMethod.ProcessAllColliders`: Process all detected colliders. This is useful when the data from each cell is additive, for instance, the count of detected objects in a cell. When using this option, the input `dataBuffer` in `GetObjectData()` will contain processed data from other colliders detected in the cell. You'll more likely want to add/subtract values from the buffer instead of overwrite it completely. - - -### Deriving from `GridSensorComponent` -To create your sensor, you need to override the sensor component and add your sensor to the creation. -Specifically, you need to override `GetGridSensors()` and return an array of grid sensors you want to use in the component. -It can be used to create multiple different customized grid sensors, or you can also include the ones provided in our package (listed in the next section). - -Example: -``` -public class CustomGridSensorComponent : GridSensorComponent -{ - protected override GridSensorBase[] GetGridSensors() - { - return new GridSensorBase[] { new CustomGridSensor(...)}; - } -} -``` - -## Grid Sensor Types -Here we list out two types of grid sensor we provide in our package: `OneHotGridSensor` and `CountingGridSensor`. -Their implementations are also a good reference for making you own ones. - -### OneHotGridSensor (provided in `com.unity.ml-agents`) -This is the default sensor used by `GridSensorComponent`. It detects objects with detectable tags and the observation is the one-hot representation of the detected tag index. - -The implementation of the sensor is defined as following: -* `GetCellObservationSize()`: `detectableTags.Length` -* `IsDataNormalized()`: `true` -* `ProcessCollidersMethod()`: `ProcessCollidersMethod.ProcessClosestColliders` -* `GetObjectData()`: - -``` -protected override void GetObjectData(GameObject detectedObject, int tagIndex, float[] dataBuffer) -{ - dataBuffer[tagIndex] = 1; -} -``` - -### CountingGridSensor (provided in `com.unity.ml-agents.extensions`) -This is an example of using all colliders detected in a cell. It counts the number of objects detected for each detectable tag. The sensor cannot be used with data compression. - -The implementation of the sensor is defined as following: -* `GetCellObservationSize()`: `detectableTags.Length` -* `IsDataNormalized()`: `false` -* `ProcessCollidersMethod()`: `ProcessCollidersMethod.ProcessAllColliders` -* `GetObjectData()`: - -``` -protected override void GetObjectData(GameObject detectedObject, int tagIndex, float[] dataBuffer) -{ - dataBuffer[tagIndex] += 1; -} -``` diff --git a/com.unity.ml-agents.extensions/Documentation~/InputActuatorComponent.md b/com.unity.ml-agents.extensions/Documentation~/InputActuatorComponent.md deleted file mode 100644 index b72fb3fd8c..0000000000 --- a/com.unity.ml-agents.extensions/Documentation~/InputActuatorComponent.md +++ /dev/null @@ -1,57 +0,0 @@ -# Integration of the Input System Package with ML-Agents - -## Overview -One area we are always trying to improve is getting developers up and running with ML-Agents. With this in mind, -we have implemented an `InputActuatorComponent`. This component integrates with the -[Input System Package](https://docs.unity3d.com/Packages/com.unity.inputsystem@1.1/manual/QuickStartGuide.html) -to set up an action space for your `Agent` based on an `InputActionAsset` that is referenced by the -`IInputActionAssetProvider` interface, or the `PlayerInput` component that may be living on your player controlled -`Agent`. This means that if you have code outside of your agent that handles input, you will not need to implement -the Heuristic function in agent as well. The `InputActuatorComponent` will handle this for you. You can now train and -run inference on `Agents` with an action space defined by an `InputActionAsset`. - -This implementation includes: - -* C# `InputActuatorComponent` you can attach to your Agent. -* Implement the `IInputActionAssetProvider` in the `Componenet` where you handle player input. -* An example environment where the input handling code is not in the Heuristic function of the Agent subclass. - -### Feedback -We have only implemented a small subset of `InputControl` types that we thought would cover a large portion of what -most developers would use. Please let us know if you want more control types implemented by posting in the [ML-Agents -forum.](https://forum.unity.com/forums/ml-agents.453/) - -We would also like your feedback on the workflow of integrating this into your games. If you run -into workflow issues please let us know in the ML-Agents forums, or if you've discovered a bug, -please file a bug on our GitHub page. - -## Getting started -The C# code for the `InputActuatorComponent` exists inside of the extensions package (com.unity.ml-agents.extensions). A good first step would be to familiarize with the extensions package by reading the document [here](com.unity.ml-agents.extensions.md). The second step would be to take a look at how we have implemented the C# code in the example Input Integration scene (located under ML-Agents-Input-Example/Assets/ML-Agents/Examples/PushBlock/). Once you have some familiarity, then the next step would be to add the InputActuatorComponent to your player Agent. The example we have implemented uses C# Events to send information from the Input System. - -Additionally, see below for additional technical specifications on the C# code for the InputActuatorComponent. - -## Technical specifications for the InputActuatorComponent - -### `IInputActionsAssetProvider` Interface -The `InputActuatorComponent` searches for a `Component` that implements -`IInputActionAssetProvider` on the `GameObject` they both are attached to. It is important to note -that if multiple `Components` on your `GameObject` need to access an `InputActionAsset` to handle events, -they will need to share the same instance of the `InputActionAsset` that is returned from the -`IInputActionAssetProvider`. - -### `InputActuatorComponent` class -The `InputActuatorComponent` is the bridge between ML-Agents and the Input System.. It allows ML-Agents to -* create an `ActionSpec` for your Agent based on an `InputActionAsset` that comes from an -`IInputActionAssetProvider`. -* send simulated input from a training process or a neural network -* let developers keep their input handling code in one place - -This is accomplished by adding the `InputActuatorComponenet` to an Agent which already has the PlayerInput component attached. - -### Setting up a scene using the `InputActuatorComponent` -1. Add the `com.unity.inputsystem` version 1.1.0-preview.3 or later to your project via the Package Manager window. -2. If you have already setup an InputActionAsset skip to Step 3, otherwise follow these sub steps: - 1. Create an InputActionAsset to allow your Agent to be controlled by the Input System. - 2. Handle the events from the Input System where you normally would (i.e. a script external to your Agent class). -3. Add the InputSystemActuatorComponent to the GameObject that has the `PlayerInput` and `Agent` components attached. - diff --git a/com.unity.ml-agents.extensions/Documentation~/com.unity.ml-agents.extensions.md b/com.unity.ml-agents.extensions/Documentation~/com.unity.ml-agents.extensions.md deleted file mode 100644 index 9421ae1484..0000000000 --- a/com.unity.ml-agents.extensions/Documentation~/com.unity.ml-agents.extensions.md +++ /dev/null @@ -1,70 +0,0 @@ -# About ML-Agents Extensions package (`com.unity.ml-agents.extensions`) - -The Unity ML-Agents Extensions package contains optional add-ons to the C# SDK for the -[Unity ML-Agents Toolkit](https://github.com/Unity-Technologies/ml-agents). - -These extensions are all considered experimental, and their API or behavior -may change between versions. - - -## Package contents - -The following table describes the package folder structure: - -| **Location** | **Description** | -| ---------------- | ---------------------------------------------------------------------- | -| _Documentation~_ | Contains the documentation for the Unity package. | -| _Editor_ | Contains utilities for Editor windows and drawers. | -| _Runtime_ | Contains core C# APIs for integrating ML-Agents into your Unity scene. | -| _Tests_ | Contains the unit tests for the package. | - -The Runtime directory currently contains these features: - * Physics-based sensors - * [Input System Package Integration](InputActuatorComponent.md) - * [Custom Grid-based Sensors](CustomGridSensors.md) - -## Installation -The ML-Agents Extensions package is not currently available in the Package Manager. There are two -recommended ways to install the package: - -### Local Installation -[Clone the repository](https://github.com/Unity-Technologies/ml-agents/tree/release_22_docs/docs/Installation.md#clone-the-ml-agents-toolkit-repository-optional) and follow the -[Local Installation for Development](https://github.com/Unity-Technologies/ml-agents/tree/release_22_docs/docs/Installation.md#advanced-local-installation-for-development-1) -directions (substituting `com.unity.ml-agents.extensions` for the package name). - -### Github via Package Manager -In Unity 2019.4 or later, open the Package Manager, hit the "+" button, and select "Add package from git URL". - -![Package Manager git URL](https://github.com/Unity-Technologies/ml-agents/blob/release_22_docs/docs/images/unity_package_manager_git_url.png) - -In the dialog that appears, enter - ``` -git+https://github.com/Unity-Technologies/ml-agents.git?path=com.unity.ml-agents.extensions#release_22 -``` - -You can also edit your project's `manifest.json` directly and add the following line to the `dependencies` -section: -``` -"com.unity.ml-agents.extensions": "git+https://github.com/Unity-Technologies/ml-agents.git?path=com.unity.ml-agents.extensions#release_22", -``` -See [Git dependencies](https://docs.unity3d.com/Manual/upm-git.html#subfolder) for more information. Note that this -may take several minutes to resolve the packages the first time that you add it. - - -## Requirements - -This version of the Unity ML-Agents package is compatible with the following -versions of the Unity Editor: - -- 2019.4 and later - -If using the `InputActuatorComponent` -- install the `com.unity.inputsystem` package version `1.1.0-preview.3` or later. - -## Known Limitations -- For the `InputActuatorComponent` - - Limited implementation of `InputControls` - - No way to customize the action space of the `InputActuatorComponent` - -## Need Help? -The main [README](https://github.com/Unity-Technologies/ml-agents/tree/release_22_docs/README.md) contains links for contacting the team or getting support. diff --git a/com.unity.ml-agents.extensions/Editor/EditorExample.cs b/com.unity.ml-agents.extensions/Editor/EditorExample.cs deleted file mode 100644 index e5aaef1724..0000000000 --- a/com.unity.ml-agents.extensions/Editor/EditorExample.cs +++ /dev/null @@ -1,3 +0,0 @@ -namespace Unity.MLAgents.Extensions.Editor -{ -} diff --git a/com.unity.ml-agents.extensions/Editor/Input/Unity.ML-Agents.Extensions.Editor.Input.asmdef b/com.unity.ml-agents.extensions/Editor/Input/Unity.ML-Agents.Extensions.Editor.Input.asmdef deleted file mode 100644 index 162bac2252..0000000000 --- a/com.unity.ml-agents.extensions/Editor/Input/Unity.ML-Agents.Extensions.Editor.Input.asmdef +++ /dev/null @@ -1,26 +0,0 @@ -{ - "name": "Unity.ML-Agents.Extensions.Editor.Input", - "references": [ - "Unity.ML-Agents", - "Unity.ML-Agents.Extensions.Input", - "Unity.ML-Agents.Editor", - "Unity.InputSystem" - ], - "includePlatforms": [ - "Editor" - ], - "excludePlatforms": [], - "allowUnsafeCode": false, - "overrideReferences": false, - "precompiledReferences": [], - "autoReferenced": true, - "defineConstraints": [], - "versionDefines": [ - { - "name": "com.unity.inputsystem", - "expression": "1.1.0-preview", - "define": "MLA_INPUT_SYSTEM" - } - ], - "noEngineReferences": false -} diff --git a/com.unity.ml-agents.extensions/Editor/Input/Unity.ML-Agents.Extensions.Editor.Input.asmdef.meta b/com.unity.ml-agents.extensions/Editor/Input/Unity.ML-Agents.Extensions.Editor.Input.asmdef.meta deleted file mode 100644 index 0d252ad175..0000000000 --- a/com.unity.ml-agents.extensions/Editor/Input/Unity.ML-Agents.Extensions.Editor.Input.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 4851f2d02f9f1423a8593f60b1a9cd7e -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/com.unity.ml-agents.extensions/Editor/Unity.ML-Agents.Extensions.Editor.asmdef b/com.unity.ml-agents.extensions/Editor/Unity.ML-Agents.Extensions.Editor.asmdef deleted file mode 100644 index 300a1530e4..0000000000 --- a/com.unity.ml-agents.extensions/Editor/Unity.ML-Agents.Extensions.Editor.asmdef +++ /dev/null @@ -1,12 +0,0 @@ -{ - "name": "Unity.ML-Agents.Extensions.Editor", - "references": [ - "Unity.ML-Agents.Extensions", - "Unity.ML-Agents", - "Unity.ML-Agents.Editor" - ], - "includePlatforms": [ - "Editor" - ], - "excludePlatforms": [] -} diff --git a/com.unity.ml-agents.extensions/Editor/Unity.ML-Agents.Extensions.Editor.asmdef.meta b/com.unity.ml-agents.extensions/Editor/Unity.ML-Agents.Extensions.Editor.asmdef.meta deleted file mode 100644 index bd9ebd4b70..0000000000 --- a/com.unity.ml-agents.extensions/Editor/Unity.ML-Agents.Extensions.Editor.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: eec81f5d1363e46538604927f0b9199c -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/com.unity.ml-agents.extensions/LICENSE.md b/com.unity.ml-agents.extensions/LICENSE.md deleted file mode 100644 index 00559059c0..0000000000 --- a/com.unity.ml-agents.extensions/LICENSE.md +++ /dev/null @@ -1,202 +0,0 @@ -Copyright 2017-2024 Unity Technologies - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. - - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "{}" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. diff --git a/com.unity.ml-agents.extensions/LICENSE.md.meta b/com.unity.ml-agents.extensions/LICENSE.md.meta deleted file mode 100644 index a909dc934e..0000000000 --- a/com.unity.ml-agents.extensions/LICENSE.md.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 1f518b76bbd7b4806b0653aac1143b42 -TextScriptImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/com.unity.ml-agents.extensions/README.md b/com.unity.ml-agents.extensions/README.md deleted file mode 100644 index ec1b5448ce..0000000000 --- a/com.unity.ml-agents.extensions/README.md +++ /dev/null @@ -1,3 +0,0 @@ -# ML-Agents Extensions - -See the [package documentation](Documentation~/com.unity.ml-agents.extensions.md) for more information diff --git a/com.unity.ml-agents.extensions/README.md.meta b/com.unity.ml-agents.extensions/README.md.meta deleted file mode 100644 index 62684ffce0..0000000000 --- a/com.unity.ml-agents.extensions/README.md.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 86620336dab3b4d3783b0b3114496654 -TextScriptImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/com.unity.ml-agents.extensions/Runtime/AssemblyInfo.cs b/com.unity.ml-agents.extensions/Runtime/AssemblyInfo.cs deleted file mode 100644 index c1bdcc8d5f..0000000000 --- a/com.unity.ml-agents.extensions/Runtime/AssemblyInfo.cs +++ /dev/null @@ -1,5 +0,0 @@ -using System.Runtime.CompilerServices; - -[assembly: InternalsVisibleTo("Unity.ML-Agents.Extensions.EditorTests")] -[assembly: InternalsVisibleTo("Unity.ML-Agents.Extensions.Editor")] -[assembly: InternalsVisibleTo("Unity.ML-Agents.Extensions.Tests")] diff --git a/com.unity.ml-agents.extensions/Runtime/AssemblyInfo.cs.meta b/com.unity.ml-agents.extensions/Runtime/AssemblyInfo.cs.meta deleted file mode 100644 index 21cec76829..0000000000 --- a/com.unity.ml-agents.extensions/Runtime/AssemblyInfo.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 48c8790647c3345e19c57d6c21065112 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/com.unity.ml-agents.extensions/Runtime/Input.meta b/com.unity.ml-agents.extensions/Runtime/Input.meta deleted file mode 100644 index 6d9bda962b..0000000000 --- a/com.unity.ml-agents.extensions/Runtime/Input.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 1694e881b9ec420ba1c201f0612392d6 -timeCreated: 1610754907 \ No newline at end of file diff --git a/com.unity.ml-agents.extensions/Runtime/Input/AssemblyInfo.cs b/com.unity.ml-agents.extensions/Runtime/Input/AssemblyInfo.cs deleted file mode 100644 index ffd66a0ad7..0000000000 --- a/com.unity.ml-agents.extensions/Runtime/Input/AssemblyInfo.cs +++ /dev/null @@ -1,3 +0,0 @@ -using System.Runtime.CompilerServices; - -[assembly: InternalsVisibleTo("Unity.ML-Agents.Extensions.Input.Tests.Runtime")] diff --git a/com.unity.ml-agents.extensions/Runtime/Input/Unity.ML-Agents.Extensions.Input.asmdef b/com.unity.ml-agents.extensions/Runtime/Input/Unity.ML-Agents.Extensions.Input.asmdef deleted file mode 100644 index 51ee27288d..0000000000 --- a/com.unity.ml-agents.extensions/Runtime/Input/Unity.ML-Agents.Extensions.Input.asmdef +++ /dev/null @@ -1,23 +0,0 @@ -{ - "name": "Unity.ML-Agents.Extensions.Input", - "references": [ - "Unity.ML-Agents", - "Unity.InferenceEngine", - "Unity.InputSystem" - ], - "includePlatforms": [], - "excludePlatforms": [], - "allowUnsafeCode": false, - "overrideReferences": false, - "precompiledReferences": [], - "autoReferenced": true, - "defineConstraints": [], - "versionDefines": [ - { - "name": "com.unity.inputsystem", - "expression": "1.3.0", - "define": "MLA_INPUT_SYSTEM" - } - ], - "noEngineReferences": false -} diff --git a/com.unity.ml-agents.extensions/Runtime/Input/Unity.ML-Agents.Extensions.Input.asmdef.meta b/com.unity.ml-agents.extensions/Runtime/Input/Unity.ML-Agents.Extensions.Input.asmdef.meta deleted file mode 100644 index 5ad61670a7..0000000000 --- a/com.unity.ml-agents.extensions/Runtime/Input/Unity.ML-Agents.Extensions.Input.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: a7b0d999fb2a7493a85c4c7017412530 -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors.meta b/com.unity.ml-agents.extensions/Runtime/Sensors.meta deleted file mode 100644 index 8a56d01593..0000000000 --- a/com.unity.ml-agents.extensions/Runtime/Sensors.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 2a66e31170bb04777b9ade862995a624 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/com.unity.ml-agents.extensions/Runtime/Unity.ML-Agents.Extensions.asmdef b/com.unity.ml-agents.extensions/Runtime/Unity.ML-Agents.Extensions.asmdef deleted file mode 100644 index 4bd4bf5bab..0000000000 --- a/com.unity.ml-agents.extensions/Runtime/Unity.ML-Agents.Extensions.asmdef +++ /dev/null @@ -1,8 +0,0 @@ -{ - "name": "Unity.ML-Agents.Extensions", - "references": [ - "Unity.InferenceEngine", - "Unity.ML-Agents", - "Unity.ML-Agents.Extensions.Input" - ] -} diff --git a/com.unity.ml-agents.extensions/Runtime/Unity.ML-Agents.Extensions.asmdef.meta b/com.unity.ml-agents.extensions/Runtime/Unity.ML-Agents.Extensions.asmdef.meta deleted file mode 100644 index 71b01c55fc..0000000000 --- a/com.unity.ml-agents.extensions/Runtime/Unity.ML-Agents.Extensions.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 0234213bbb9574f66bb4d93920cc6bb7 -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/com.unity.ml-agents.extensions/Tests.meta b/com.unity.ml-agents.extensions/Tests.meta deleted file mode 100644 index 983c35226f..0000000000 --- a/com.unity.ml-agents.extensions/Tests.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 8b9992bc4a2804deda293d0d28bbf5e0 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/com.unity.ml-agents.extensions/Tests/.tests.json b/com.unity.ml-agents.extensions/Tests/.tests.json deleted file mode 100644 index 327abb29e5..0000000000 --- a/com.unity.ml-agents.extensions/Tests/.tests.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "createSeparatePackage": false -} diff --git a/com.unity.ml-agents.extensions/Tests/Runtime.meta b/com.unity.ml-agents.extensions/Tests/Runtime.meta deleted file mode 100644 index 39b875009d..0000000000 --- a/com.unity.ml-agents.extensions/Tests/Runtime.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 302e80f9aed2d40a3899643525e5b706 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Input/Unity.ML-Agents.Extensions.Input.Tests.Runtime.asmdef b/com.unity.ml-agents.extensions/Tests/Runtime/Input/Unity.ML-Agents.Extensions.Input.Tests.Runtime.asmdef deleted file mode 100644 index 180d31d42c..0000000000 --- a/com.unity.ml-agents.extensions/Tests/Runtime/Input/Unity.ML-Agents.Extensions.Input.Tests.Runtime.asmdef +++ /dev/null @@ -1,31 +0,0 @@ -{ - "name": "Unity.ML-Agents.Extensions.Input.Tests.Runtime", - "references": [ - "Unity.ML-Agents", - "Unity.ML-Agents.Extensions.Input", - "Unity.InputSystem.TestFramework", - "UnityEngine.TestRunner", - "UnityEditor.TestRunner", - "Unity.InputSystem", - "Unity.InferenceEngine" - ], - "includePlatforms": [], - "excludePlatforms": [], - "allowUnsafeCode": false, - "overrideReferences": true, - "precompiledReferences": [ - "nunit.framework.dll" - ], - "autoReferenced": true, - "defineConstraints": [ - "UNITY_INCLUDE_TESTS" - ], - "versionDefines": [ - { - "name": "com.unity.inputsystem", - "expression": "1.1.0-preview.3", - "define": "MLA_INPUT_TESTS" - } - ], - "noEngineReferences": false -} diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Input/Unity.ML-Agents.Extensions.Input.Tests.Runtime.asmdef.meta b/com.unity.ml-agents.extensions/Tests/Runtime/Input/Unity.ML-Agents.Extensions.Input.Tests.Runtime.asmdef.meta deleted file mode 100644 index 874e8ded0e..0000000000 --- a/com.unity.ml-agents.extensions/Tests/Runtime/Input/Unity.ML-Agents.Extensions.Input.Tests.Runtime.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: ca257bdcba9544f71baf0c291c36b05a -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Sensors/AssemblyInfo.cs b/com.unity.ml-agents.extensions/Tests/Runtime/Sensors/AssemblyInfo.cs deleted file mode 100644 index 0cd831e21f..0000000000 --- a/com.unity.ml-agents.extensions/Tests/Runtime/Sensors/AssemblyInfo.cs +++ /dev/null @@ -1,3 +0,0 @@ -using System.Runtime.CompilerServices; - -[assembly: InternalsVisibleTo("Unity.ML-Agents.Extensions.EditorTests")] diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Unity.ML-Agents.Extensions.Tests.asmdef b/com.unity.ml-agents.extensions/Tests/Runtime/Unity.ML-Agents.Extensions.Tests.asmdef deleted file mode 100644 index 14da330bec..0000000000 --- a/com.unity.ml-agents.extensions/Tests/Runtime/Unity.ML-Agents.Extensions.Tests.asmdef +++ /dev/null @@ -1,12 +0,0 @@ -{ - "name": "Unity.ML-Agents.Extensions.Tests", - "references": [ - "Unity.ML-Agents.Extensions", - "Unity.ML-Agents" - ], - "optionalUnityReferences": [ - "TestAssemblies" - ], - "includePlatforms": [], - "excludePlatforms": [] -} diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Unity.ML-Agents.Extensions.Tests.asmdef.meta b/com.unity.ml-agents.extensions/Tests/Runtime/Unity.ML-Agents.Extensions.Tests.asmdef.meta deleted file mode 100644 index 05ab872e43..0000000000 --- a/com.unity.ml-agents.extensions/Tests/Runtime/Unity.ML-Agents.Extensions.Tests.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 30cbc899aa9234b7c93bfcba45275b9c -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/com.unity.ml-agents.extensions/package.json b/com.unity.ml-agents.extensions/package.json deleted file mode 100644 index c315091c26..0000000000 --- a/com.unity.ml-agents.extensions/package.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "com.unity.ml-agents.extensions", - "displayName": "ML Agents Extensions", - "version": "0.6.1-preview", - "unity": "6000.0", - "description": "A source-only package for new features based on ML-Agents", - "dependencies": { - "com.unity.ml-agents": "3.0.0", - "com.unity.modules.physics": "1.0.0" - } -} diff --git a/com.unity.ml-agents.extensions/package.json.meta b/com.unity.ml-agents.extensions/package.json.meta deleted file mode 100644 index 375a7c7db0..0000000000 --- a/com.unity.ml-agents.extensions/package.json.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: a12a065df9b6f44d0b9a8e85d08d1cef -TextScriptImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/com.unity.ml-agents/Documentation~/com.unity.ml-agents.md b/com.unity.ml-agents/Documentation~/com.unity.ml-agents.md index 60268878b5..0f389432ad 100644 --- a/com.unity.ml-agents/Documentation~/com.unity.ml-agents.md +++ b/com.unity.ml-agents/Documentation~/com.unity.ml-agents.md @@ -13,8 +13,6 @@ The package allows you to convert any Unity scene into a learning environment an ## Special Notes Note that the ML-Agents package does not contain the machine learning algorithms for training behaviors. The ML-Agents package only supports instrumenting a Unity scene, setting it up for training, and then embedding the trained model back into your Unity scene. The machine learning algorithms that orchestrate training are part of the companion [python package]. -Note that we also provide an ML-Agents Extensions package (`com.unity.ml-agents.extensions`) that contains early/experimental features that you may find useful. This package is only available from the [ML-Agents GitHub repo]. - ## Package contents @@ -42,6 +40,112 @@ To add the ML-Agents package to a Unity project: To install the companion Python package to enable training behaviors, follow the [installation instructions] on our [GitHub repository]. +## Advanced Features + +### Custom Grid Sensors + +Grid Sensor provides a 2D observation that detects objects around an agent from a top-down view. Compared to RayCasts, it receives a full observation in a grid area without gaps, and the detection is not blocked by objects around the agents. This gives a more granular view while requiring a higher usage of compute resources. + +One extra feature with Grid Sensors is that you can derive from the Grid Sensor base class to collect custom data besides the object tags, to include custom attributes as observations. This allows more flexibility for the use of GridSensor. + +#### Creating Custom Grid Sensors +To create a custom grid sensor, you'll need to derive from two classes: `GridSensorBase` and `GridSensorComponent`. + +##### Deriving from `GridSensorBase` +This is the implementation of your sensor. This defines how your sensor process detected colliders, +what the data looks like, and how the observations are constructed from the detected objects. +Consider overriding the following methods depending on your use case: +* `protected virtual int GetCellObservationSize()`: Return the observation size per cell. Default to `1`. +* `protected virtual void GetObjectData(GameObject detectedObject, int tagIndex, float[] dataBuffer)`: Constructs observations from the detected object. The input provides the detected GameObject and the index of its tag (0-indexed). The observations should be written to the given `dataBuffer` and the buffer size is defined in `GetCellObservationSize()`. This data will be gathered from each cell and sent to the trainer as observation. +* `protected virtual bool IsDataNormalized()`: Return whether the observation is normalized to 0~1. This affects whether you're able to use compressed observations as compressed data only supports normalized data. Return `true` if all the values written in `GetObjectData` are within the range of (0, 1), otherwise return `false`. Default to `false`. + + There might be cases when your data is not in the range of (0, 1) but you still wish to use compressed data to speed up training. If your data is naturally bounded within a range, normalize your data first to the possible range and fill the buffer with normalized data. For example, since the angle of rotation is bounded within `0 ~ 360`, record an angle `x` as `x/360` instead of `x`. If your data value is not bounded (position, velocity, etc.), consider setting a reasonable min/max value and use that to normalize your data. +* `protected internal virtual ProcessCollidersMethod GetProcessCollidersMethod()`: Return the method to process colliders detected in a cell. This defines the sensor behavior when multiple objects with detectable tags are detected within a cell. +Currently two methods are provided: + * `ProcessCollidersMethod.ProcessClosestColliders` (Default): Process the closest collider to the agent. In this case each cell's data is represented by one object. + * `ProcessCollidersMethod.ProcessAllColliders`: Process all detected colliders. This is useful when the data from each cell is additive, for instance, the count of detected objects in a cell. When using this option, the input `dataBuffer` in `GetObjectData()` will contain processed data from other colliders detected in the cell. You'll more likely want to add/subtract values from the buffer instead of overwrite it completely. + +##### Deriving from `GridSensorComponent` +To create your sensor, you need to override the sensor component and add your sensor to the creation. +Specifically, you need to override `GetGridSensors()` and return an array of grid sensors you want to use in the component. +It can be used to create multiple different customized grid sensors, or you can also include the ones provided in our package (listed in the next section). + +Example: +```csharp +public class CustomGridSensorComponent : GridSensorComponent +{ + protected override GridSensorBase[] GetGridSensors() + { + return new GridSensorBase[] { new CustomGridSensor(...)}; + } +} +``` + +#### Grid Sensor Types +Here we list out two types of grid sensor provided in the package: `OneHotGridSensor` and `CountingGridSensor`. +Their implementations are also a good reference for making you own ones. + +##### OneHotGridSensor +This is the default sensor used by `GridSensorComponent`. It detects objects with detectable tags and the observation is the one-hot representation of the detected tag index. + +The implementation of the sensor is defined as following: +* `GetCellObservationSize()`: `detectableTags.Length` +* `IsDataNormalized()`: `true` +* `ProcessCollidersMethod()`: `ProcessCollidersMethod.ProcessClosestColliders` +* `GetObjectData()`: + +```csharp +protected override void GetObjectData(GameObject detectedObject, int tagIndex, float[] dataBuffer) +{ + dataBuffer[tagIndex] = 1; +} +``` + +##### CountingGridSensor +This is an example of using all colliders detected in a cell. It counts the number of objects detected for each detectable tag. The sensor cannot be used with data compression. + +The implementation of the sensor is defined as following: +* `GetCellObservationSize()`: `detectableTags.Length` +* `IsDataNormalized()`: `false` +* `ProcessCollidersMethod()`: `ProcessCollidersMethod.ProcessAllColliders` +* `GetObjectData()`: + +```csharp +protected override void GetObjectData(GameObject detectedObject, int tagIndex, float[] dataBuffer) +{ + dataBuffer[tagIndex] += 1; +} +``` + +### Input System Integration + +The ML-Agents package integrates with the [Input System Package](https://docs.unity3d.com/Packages/com.unity.inputsystem@1.1/manual/QuickStartGuide.html) through the `InputActuatorComponent`. This component sets up an action space for your `Agent` based on an `InputActionAsset` that is referenced by the `IInputActionAssetProvider` interface, or the `PlayerInput` component that may be living on your player controlled `Agent`. This means that if you have code outside of your agent that handles input, you will not need to implement the Heuristic function in agent as well. The `InputActuatorComponent` will handle this for you. You can now train and run inference on `Agents` with an action space defined by an `InputActionAsset`. + +#### Getting Started with Input System Integration +1. Add the `com.unity.inputsystem` version 1.1.0-preview.3 or later to your project via the Package Manager window. +2. If you have already setup an InputActionAsset skip to Step 3, otherwise follow these sub steps: + 1. Create an InputActionAsset to allow your Agent to be controlled by the Input System. + 2. Handle the events from the Input System where you normally would (i.e. a script external to your Agent class). +3. Add the InputSystemActuatorComponent to the GameObject that has the `PlayerInput` and `Agent` components attached. + +#### Technical Specifications + +##### `IInputActionsAssetProvider` Interface +The `InputActuatorComponent` searches for a `Component` that implements +`IInputActionAssetProvider` on the `GameObject` they both are attached to. It is important to note +that if multiple `Components` on your `GameObject` need to access an `InputActionAsset` to handle events, +they will need to share the same instance of the `InputActionAsset` that is returned from the +`IInputActionAssetProvider`. + +##### `InputActuatorComponent` Class +The `InputActuatorComponent` is the bridge between ML-Agents and the Input System. It allows ML-Agents to: +* create an `ActionSpec` for your Agent based on an `InputActionAsset` that comes from an +`IInputActionAssetProvider`. +* send simulated input from a training process or a neural network +* let developers keep their input handling code in one place + +This is accomplished by adding the `InputActuatorComponent` to an Agent which already has the PlayerInput component attached. + ## Known Limitations ### Training @@ -76,7 +180,6 @@ You can control the frequency of Academy stepping by calling `Academy.Instance.D [installation instructions]: https://github.com/Unity-Technologies/ml-agents/blob/release_22_docs/docs/Installation.md [Unity Inference Engine]: https://docs.unity3d.com/Packages/com.unity.ai.inference@2.2/manual/index.html [python package]: https://github.com/Unity-Technologies/ml-agents -[ML-Agents GitHub repo]: https://github.com/Unity-Technologies/ml-agents/blob/release_22_docs/com.unity.ml-agents.extensions [GitHub repository]: https://github.com/Unity-Technologies/ml-agents [Execution Order of Event Functions]: https://docs.unity3d.com/Manual/ExecutionOrder.html [Unity Discussions]: https://discussions.unity.com/tag/ml-agents diff --git a/com.unity.ml-agents.extensions/Documentation~/images/match3-moves.png b/com.unity.ml-agents/Documentation~/images/match3-moves.png similarity index 100% rename from com.unity.ml-agents.extensions/Documentation~/images/match3-moves.png rename to com.unity.ml-agents/Documentation~/images/match3-moves.png diff --git a/com.unity.ml-agents.extensions/Documentation~/images/match3.png b/com.unity.ml-agents/Documentation~/images/match3.png similarity index 100% rename from com.unity.ml-agents.extensions/Documentation~/images/match3.png rename to com.unity.ml-agents/Documentation~/images/match3.png diff --git a/com.unity.ml-agents.extensions/Documentation~/images/persp_ortho_proj.png b/com.unity.ml-agents/Documentation~/images/persp_ortho_proj.png similarity index 100% rename from com.unity.ml-agents.extensions/Documentation~/images/persp_ortho_proj.png rename to com.unity.ml-agents/Documentation~/images/persp_ortho_proj.png diff --git a/com.unity.ml-agents/Editor/EditorExample.cs b/com.unity.ml-agents/Editor/EditorExample.cs new file mode 100644 index 0000000000..6c8819dca0 --- /dev/null +++ b/com.unity.ml-agents/Editor/EditorExample.cs @@ -0,0 +1,3 @@ +namespace Unity.MLAgents.Editor +{ +} diff --git a/com.unity.ml-agents.extensions/Editor/EditorExample.cs.meta b/com.unity.ml-agents/Editor/EditorExample.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Editor/EditorExample.cs.meta rename to com.unity.ml-agents/Editor/EditorExample.cs.meta diff --git a/com.unity.ml-agents.extensions/Editor.meta b/com.unity.ml-agents/Editor/Extensions.meta similarity index 77% rename from com.unity.ml-agents.extensions/Editor.meta rename to com.unity.ml-agents/Editor/Extensions.meta index 6748720006..1c9024020c 100644 --- a/com.unity.ml-agents.extensions/Editor.meta +++ b/com.unity.ml-agents/Editor/Extensions.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 40d78a1c3c0ef4584a1816f66812de87 +guid: 8c10acdaf5a0c4b008bc5fd7350a15a2 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/com.unity.ml-agents.extensions/Editor/Input.meta b/com.unity.ml-agents/Editor/Input.meta similarity index 100% rename from com.unity.ml-agents.extensions/Editor/Input.meta rename to com.unity.ml-agents/Editor/Input.meta diff --git a/com.unity.ml-agents.extensions/Editor/Input/InputActuatorComponentEditor.cs b/com.unity.ml-agents/Editor/Input/InputActuatorComponentEditor.cs similarity index 89% rename from com.unity.ml-agents.extensions/Editor/Input/InputActuatorComponentEditor.cs rename to com.unity.ml-agents/Editor/Input/InputActuatorComponentEditor.cs index f48f6481f5..875bff45d8 100644 --- a/com.unity.ml-agents.extensions/Editor/Input/InputActuatorComponentEditor.cs +++ b/com.unity.ml-agents/Editor/Input/InputActuatorComponentEditor.cs @@ -1,8 +1,8 @@ #if MLA_INPUT_SYSTEM -using Unity.MLAgents.Extensions.Input; +using Unity.MLAgents.Actuators; using UnityEditor; -namespace Unity.MLAgents.Extensions.Editor.Input +namespace Unity.MLAgents.Editor.Input { [CustomEditor(typeof(InputActuatorComponent))] internal class InputActuatorComponentEditor : UnityEditor.Editor diff --git a/com.unity.ml-agents.extensions/Editor/Input/InputActuatorComponentEditor.cs.meta b/com.unity.ml-agents/Editor/Input/InputActuatorComponentEditor.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Editor/Input/InputActuatorComponentEditor.cs.meta rename to com.unity.ml-agents/Editor/Input/InputActuatorComponentEditor.cs.meta diff --git a/com.unity.ml-agents.extensions/Editor/RigidBodySensorComponentEditor.cs b/com.unity.ml-agents/Editor/RigidBodySensorComponentEditor.cs similarity index 97% rename from com.unity.ml-agents.extensions/Editor/RigidBodySensorComponentEditor.cs rename to com.unity.ml-agents/Editor/RigidBodySensorComponentEditor.cs index 632a2e99e9..05bc02d192 100644 --- a/com.unity.ml-agents.extensions/Editor/RigidBodySensorComponentEditor.cs +++ b/com.unity.ml-agents/Editor/RigidBodySensorComponentEditor.cs @@ -1,8 +1,8 @@ using UnityEditor; using Unity.MLAgents.Editor; -using Unity.MLAgents.Extensions.Sensors; +using Unity.MLAgents.Sensors; -namespace Unity.MLAgents.Extensions.Editor +namespace Unity.MLAgents.Editor { [CustomEditor(typeof(RigidBodySensorComponent))] [CanEditMultipleObjects] diff --git a/com.unity.ml-agents.extensions/Editor/RigidBodySensorComponentEditor.cs.meta b/com.unity.ml-agents/Editor/RigidBodySensorComponentEditor.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Editor/RigidBodySensorComponentEditor.cs.meta rename to com.unity.ml-agents/Editor/RigidBodySensorComponentEditor.cs.meta diff --git a/com.unity.ml-agents/Runtime/Actuators/IBuiltInActuator.cs b/com.unity.ml-agents/Runtime/Actuators/IBuiltInActuator.cs index 8b77672d17..2594b77689 100644 --- a/com.unity.ml-agents/Runtime/Actuators/IBuiltInActuator.cs +++ b/com.unity.ml-agents/Runtime/Actuators/IBuiltInActuator.cs @@ -24,12 +24,12 @@ public enum BuiltInActuatorType VectorActuator = 2, /// - /// Corresponds to the Match3Actuator in com.unity.ml-agents.extensions. + /// Corresponds to the Match3Actuator. /// Match3Actuator = 3, /// - /// Corresponds to the InputActionActuator in com.unity.ml-agents.extensions. + /// Corresponds to the InputActionActuator. /// InputActionActuator = 4, } diff --git a/com.unity.ml-agents/Runtime/AssemblyInfo.cs b/com.unity.ml-agents/Runtime/AssemblyInfo.cs index 2ef5ec62a1..9e8482b8a7 100644 --- a/com.unity.ml-agents/Runtime/AssemblyInfo.cs +++ b/com.unity.ml-agents/Runtime/AssemblyInfo.cs @@ -6,9 +6,6 @@ [assembly: InternalsVisibleTo("Unity.ML-Agents.Runtime.Utils.Tests")] [assembly: InternalsVisibleTo("Unity.ML-Agents.Runtime.Tests")] [assembly: InternalsVisibleTo("Unity.ML-Agents.Editor")] -[assembly: InternalsVisibleTo("Unity.ML-Agents.Extensions")] -[assembly: InternalsVisibleTo("Unity.ML-Agents.Extensions.Input")] -[assembly: InternalsVisibleTo("Unity.ML-Agents.Extensions.Tests")] [assembly: InternalsVisibleTo("Unity.ML-Agents.Pro")] [assembly: InternalsVisibleTo("Unity.ML-Agents.Pro.Tests")] [assembly: InternalsVisibleTo("MLAgentsExamples.Tests.Performance")] diff --git a/com.unity.ml-agents.extensions/Runtime.meta b/com.unity.ml-agents/Runtime/Input.meta similarity index 77% rename from com.unity.ml-agents.extensions/Runtime.meta rename to com.unity.ml-agents/Runtime/Input.meta index 58017d2891..2e063c20aa 100644 --- a/com.unity.ml-agents.extensions/Runtime.meta +++ b/com.unity.ml-agents/Runtime/Input.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 35f52f986759c491cb377b1f3841c566 +guid: aa9a21b8ca96f45799fbb3fb618948e9 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/com.unity.ml-agents.extensions/Runtime/Input/Adaptors.meta b/com.unity.ml-agents/Runtime/Input/Adaptors.meta similarity index 100% rename from com.unity.ml-agents.extensions/Runtime/Input/Adaptors.meta rename to com.unity.ml-agents/Runtime/Input/Adaptors.meta diff --git a/com.unity.ml-agents.extensions/Runtime/Input/Adaptors/ButtonInputActionAdaptor.cs b/com.unity.ml-agents/Runtime/Input/Adaptors/ButtonInputActionAdaptor.cs similarity index 97% rename from com.unity.ml-agents.extensions/Runtime/Input/Adaptors/ButtonInputActionAdaptor.cs rename to com.unity.ml-agents/Runtime/Input/Adaptors/ButtonInputActionAdaptor.cs index d16ad28a95..de3df2b200 100644 --- a/com.unity.ml-agents.extensions/Runtime/Input/Adaptors/ButtonInputActionAdaptor.cs +++ b/com.unity.ml-agents/Runtime/Input/Adaptors/ButtonInputActionAdaptor.cs @@ -4,7 +4,7 @@ using UnityEngine.InputSystem.Controls; using UnityEngine.InputSystem.LowLevel; -namespace Unity.MLAgents.Extensions.Input +namespace Unity.MLAgents.Actuators { /// /// Class that translates data between the a and diff --git a/com.unity.ml-agents.extensions/Runtime/Input/Adaptors/ButtonInputActionAdaptor.cs.meta b/com.unity.ml-agents/Runtime/Input/Adaptors/ButtonInputActionAdaptor.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Runtime/Input/Adaptors/ButtonInputActionAdaptor.cs.meta rename to com.unity.ml-agents/Runtime/Input/Adaptors/ButtonInputActionAdaptor.cs.meta diff --git a/com.unity.ml-agents.extensions/Runtime/Input/Adaptors/DoubleInputActionAdaptor.cs b/com.unity.ml-agents/Runtime/Input/Adaptors/DoubleInputActionAdaptor.cs similarity index 97% rename from com.unity.ml-agents.extensions/Runtime/Input/Adaptors/DoubleInputActionAdaptor.cs rename to com.unity.ml-agents/Runtime/Input/Adaptors/DoubleInputActionAdaptor.cs index 3d42226eaa..99f764cf9e 100644 --- a/com.unity.ml-agents.extensions/Runtime/Input/Adaptors/DoubleInputActionAdaptor.cs +++ b/com.unity.ml-agents/Runtime/Input/Adaptors/DoubleInputActionAdaptor.cs @@ -4,7 +4,7 @@ using UnityEngine.InputSystem.Controls; using UnityEngine.InputSystem.LowLevel; -namespace Unity.MLAgents.Extensions.Input +namespace Unity.MLAgents.Actuators { /// /// Translates data from a . diff --git a/com.unity.ml-agents.extensions/Runtime/Input/Adaptors/DoubleInputActionAdaptor.cs.meta b/com.unity.ml-agents/Runtime/Input/Adaptors/DoubleInputActionAdaptor.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Runtime/Input/Adaptors/DoubleInputActionAdaptor.cs.meta rename to com.unity.ml-agents/Runtime/Input/Adaptors/DoubleInputActionAdaptor.cs.meta diff --git a/com.unity.ml-agents.extensions/Runtime/Input/Adaptors/FloatInputActionAdaptor.cs b/com.unity.ml-agents/Runtime/Input/Adaptors/FloatInputActionAdaptor.cs similarity index 96% rename from com.unity.ml-agents.extensions/Runtime/Input/Adaptors/FloatInputActionAdaptor.cs rename to com.unity.ml-agents/Runtime/Input/Adaptors/FloatInputActionAdaptor.cs index 5de783d812..8bbf6fe1aa 100644 --- a/com.unity.ml-agents.extensions/Runtime/Input/Adaptors/FloatInputActionAdaptor.cs +++ b/com.unity.ml-agents/Runtime/Input/Adaptors/FloatInputActionAdaptor.cs @@ -3,7 +3,7 @@ using UnityEngine.InputSystem; using UnityEngine.InputSystem.LowLevel; -namespace Unity.MLAgents.Extensions.Input +namespace Unity.MLAgents.Actuators { /// /// Translates data from any control that extends from . diff --git a/com.unity.ml-agents.extensions/Runtime/Input/Adaptors/FloatInputActionAdaptor.cs.meta b/com.unity.ml-agents/Runtime/Input/Adaptors/FloatInputActionAdaptor.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Runtime/Input/Adaptors/FloatInputActionAdaptor.cs.meta rename to com.unity.ml-agents/Runtime/Input/Adaptors/FloatInputActionAdaptor.cs.meta diff --git a/com.unity.ml-agents.extensions/Runtime/Input/Adaptors/IntegerInputActionAdaptor.cs b/com.unity.ml-agents/Runtime/Input/Adaptors/IntegerInputActionAdaptor.cs similarity index 97% rename from com.unity.ml-agents.extensions/Runtime/Input/Adaptors/IntegerInputActionAdaptor.cs rename to com.unity.ml-agents/Runtime/Input/Adaptors/IntegerInputActionAdaptor.cs index 3bb9f98d57..a30ba5a20a 100644 --- a/com.unity.ml-agents.extensions/Runtime/Input/Adaptors/IntegerInputActionAdaptor.cs +++ b/com.unity.ml-agents/Runtime/Input/Adaptors/IntegerInputActionAdaptor.cs @@ -3,7 +3,7 @@ using UnityEngine.InputSystem; using UnityEngine.InputSystem.LowLevel; -namespace Unity.MLAgents.Extensions.Input +namespace Unity.MLAgents.Actuators { /// /// Translates data from a . diff --git a/com.unity.ml-agents.extensions/Runtime/Input/Adaptors/IntegerInputActionAdaptor.cs.meta b/com.unity.ml-agents/Runtime/Input/Adaptors/IntegerInputActionAdaptor.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Runtime/Input/Adaptors/IntegerInputActionAdaptor.cs.meta rename to com.unity.ml-agents/Runtime/Input/Adaptors/IntegerInputActionAdaptor.cs.meta diff --git a/com.unity.ml-agents.extensions/Runtime/Input/Adaptors/Vector2InputActionAdaptor.cs b/com.unity.ml-agents/Runtime/Input/Adaptors/Vector2InputActionAdaptor.cs similarity index 97% rename from com.unity.ml-agents.extensions/Runtime/Input/Adaptors/Vector2InputActionAdaptor.cs rename to com.unity.ml-agents/Runtime/Input/Adaptors/Vector2InputActionAdaptor.cs index e46c5a9ef2..abece63d7b 100644 --- a/com.unity.ml-agents.extensions/Runtime/Input/Adaptors/Vector2InputActionAdaptor.cs +++ b/com.unity.ml-agents/Runtime/Input/Adaptors/Vector2InputActionAdaptor.cs @@ -4,7 +4,7 @@ using UnityEngine.InputSystem; using UnityEngine.InputSystem.LowLevel; -namespace Unity.MLAgents.Extensions.Input +namespace Unity.MLAgents.Actuators { /// /// Translates data from any control that extends from . diff --git a/com.unity.ml-agents.extensions/Runtime/Input/Adaptors/Vector2InputActionAdaptor.cs.meta b/com.unity.ml-agents/Runtime/Input/Adaptors/Vector2InputActionAdaptor.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Runtime/Input/Adaptors/Vector2InputActionAdaptor.cs.meta rename to com.unity.ml-agents/Runtime/Input/Adaptors/Vector2InputActionAdaptor.cs.meta diff --git a/com.unity.ml-agents/Runtime/Input/AssemblyInfo.cs b/com.unity.ml-agents/Runtime/Input/AssemblyInfo.cs new file mode 100644 index 0000000000..c83f1d71ce --- /dev/null +++ b/com.unity.ml-agents/Runtime/Input/AssemblyInfo.cs @@ -0,0 +1,3 @@ +using System.Runtime.CompilerServices; + +[assembly: InternalsVisibleTo("Unity.ML-Agents.Runtime.Tests")] diff --git a/com.unity.ml-agents.extensions/Runtime/Input/AssemblyInfo.cs.meta b/com.unity.ml-agents/Runtime/Input/AssemblyInfo.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Runtime/Input/AssemblyInfo.cs.meta rename to com.unity.ml-agents/Runtime/Input/AssemblyInfo.cs.meta diff --git a/com.unity.ml-agents.extensions/Runtime/Input/IInputActionAssetProvider.cs b/com.unity.ml-agents/Runtime/Input/IInputActionAssetProvider.cs similarity index 97% rename from com.unity.ml-agents.extensions/Runtime/Input/IInputActionAssetProvider.cs rename to com.unity.ml-agents/Runtime/Input/IInputActionAssetProvider.cs index fd56c3503f..26e3094f9c 100644 --- a/com.unity.ml-agents.extensions/Runtime/Input/IInputActionAssetProvider.cs +++ b/com.unity.ml-agents/Runtime/Input/IInputActionAssetProvider.cs @@ -1,7 +1,7 @@ #if MLA_INPUT_SYSTEM using UnityEngine.InputSystem; -namespace Unity.MLAgents.Extensions.Input +namespace Unity.MLAgents.Actuators { /// /// Implement this interface if you are listening to C# events from the generated C# class from the diff --git a/com.unity.ml-agents.extensions/Runtime/Input/IInputActionAssetProvider.cs.meta b/com.unity.ml-agents/Runtime/Input/IInputActionAssetProvider.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Runtime/Input/IInputActionAssetProvider.cs.meta rename to com.unity.ml-agents/Runtime/Input/IInputActionAssetProvider.cs.meta diff --git a/com.unity.ml-agents.extensions/Runtime/Input/IRLActionInputAdaptor.cs b/com.unity.ml-agents/Runtime/Input/IRLActionInputAdaptor.cs similarity index 98% rename from com.unity.ml-agents.extensions/Runtime/Input/IRLActionInputAdaptor.cs rename to com.unity.ml-agents/Runtime/Input/IRLActionInputAdaptor.cs index c0f1ade2fb..0506665a89 100644 --- a/com.unity.ml-agents.extensions/Runtime/Input/IRLActionInputAdaptor.cs +++ b/com.unity.ml-agents/Runtime/Input/IRLActionInputAdaptor.cs @@ -3,7 +3,7 @@ using UnityEngine.InputSystem; using UnityEngine.InputSystem.LowLevel; -namespace Unity.MLAgents.Extensions.Input +namespace Unity.MLAgents.Actuators { /// /// Implement this interface in order to customize how information is translated s diff --git a/com.unity.ml-agents.extensions/Runtime/Input/IRLActionInputAdaptor.cs.meta b/com.unity.ml-agents/Runtime/Input/IRLActionInputAdaptor.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Runtime/Input/IRLActionInputAdaptor.cs.meta rename to com.unity.ml-agents/Runtime/Input/IRLActionInputAdaptor.cs.meta diff --git a/com.unity.ml-agents.extensions/Runtime/Input/InputActionActuator.cs b/com.unity.ml-agents/Runtime/Input/InputActionActuator.cs similarity index 99% rename from com.unity.ml-agents.extensions/Runtime/Input/InputActionActuator.cs rename to com.unity.ml-agents/Runtime/Input/InputActionActuator.cs index 8f7d4f530f..c54bf9c0b5 100644 --- a/com.unity.ml-agents.extensions/Runtime/Input/InputActionActuator.cs +++ b/com.unity.ml-agents/Runtime/Input/InputActionActuator.cs @@ -5,7 +5,7 @@ using UnityEngine.InputSystem; using UnityEngine.Profiling; -namespace Unity.MLAgents.Extensions.Input +namespace Unity.MLAgents.Actuators { /// /// This implementation of will send events from the ML-Agents training process, or from diff --git a/com.unity.ml-agents.extensions/Runtime/Input/InputActionActuator.cs.meta b/com.unity.ml-agents/Runtime/Input/InputActionActuator.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Runtime/Input/InputActionActuator.cs.meta rename to com.unity.ml-agents/Runtime/Input/InputActionActuator.cs.meta diff --git a/com.unity.ml-agents.extensions/Runtime/Input/InputActuatorComponent.cs b/com.unity.ml-agents/Runtime/Input/InputActuatorComponent.cs similarity index 99% rename from com.unity.ml-agents.extensions/Runtime/Input/InputActuatorComponent.cs rename to com.unity.ml-agents/Runtime/Input/InputActuatorComponent.cs index b1a75d233b..1cabca3509 100644 --- a/com.unity.ml-agents.extensions/Runtime/Input/InputActuatorComponent.cs +++ b/com.unity.ml-agents/Runtime/Input/InputActuatorComponent.cs @@ -15,7 +15,7 @@ using UnityEditor; #endif -namespace Unity.MLAgents.Extensions.Input +namespace Unity.MLAgents.Actuators { /// /// Component class that handles the parsing of the and translates that into diff --git a/com.unity.ml-agents.extensions/Runtime/Input/InputActuatorComponent.cs.meta b/com.unity.ml-agents/Runtime/Input/InputActuatorComponent.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Runtime/Input/InputActuatorComponent.cs.meta rename to com.unity.ml-agents/Runtime/Input/InputActuatorComponent.cs.meta diff --git a/com.unity.ml-agents.extensions/Runtime/Input/InputActuatorEventContext.cs b/com.unity.ml-agents/Runtime/Input/InputActuatorEventContext.cs similarity index 98% rename from com.unity.ml-agents.extensions/Runtime/Input/InputActuatorEventContext.cs rename to com.unity.ml-agents/Runtime/Input/InputActuatorEventContext.cs index 816c55dbba..80717a673c 100644 --- a/com.unity.ml-agents.extensions/Runtime/Input/InputActuatorEventContext.cs +++ b/com.unity.ml-agents/Runtime/Input/InputActuatorEventContext.cs @@ -7,7 +7,7 @@ using UnityEditor; #endif -namespace Unity.MLAgents.Extensions.Input +namespace Unity.MLAgents.Actuators { /// /// This interface is passed to InputActionActuators to allow them to write to InputEvents. diff --git a/com.unity.ml-agents.extensions/Runtime/Input/InputActuatorEventContext.cs.meta b/com.unity.ml-agents/Runtime/Input/InputActuatorEventContext.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Runtime/Input/InputActuatorEventContext.cs.meta rename to com.unity.ml-agents/Runtime/Input/InputActuatorEventContext.cs.meta diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodyJointExtractor.cs b/com.unity.ml-agents/Runtime/Sensors/ArticulationBodyJointExtractor.cs similarity index 99% rename from com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodyJointExtractor.cs rename to com.unity.ml-agents/Runtime/Sensors/ArticulationBodyJointExtractor.cs index fca56a4795..feac4d0fe4 100644 --- a/com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodyJointExtractor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/ArticulationBodyJointExtractor.cs @@ -4,7 +4,7 @@ using UnityEngine; using Unity.MLAgents.Sensors; -namespace Unity.MLAgents.Extensions.Sensors +namespace Unity.MLAgents.Sensors { public class ArticulationBodyJointExtractor : IJointExtractor { diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodyJointExtractor.cs.meta b/com.unity.ml-agents/Runtime/Sensors/ArticulationBodyJointExtractor.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodyJointExtractor.cs.meta rename to com.unity.ml-agents/Runtime/Sensors/ArticulationBodyJointExtractor.cs.meta diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodyPoseExtractor.cs b/com.unity.ml-agents/Runtime/Sensors/ArticulationBodyPoseExtractor.cs similarity index 98% rename from com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodyPoseExtractor.cs rename to com.unity.ml-agents/Runtime/Sensors/ArticulationBodyPoseExtractor.cs index b0c0246521..02b00ee178 100644 --- a/com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodyPoseExtractor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/ArticulationBodyPoseExtractor.cs @@ -3,7 +3,7 @@ using System.Collections.Generic; using UnityEngine; -namespace Unity.MLAgents.Extensions.Sensors +namespace Unity.MLAgents.Sensors { /// /// Utility class to track a hierarchy of ArticulationBodies. diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodyPoseExtractor.cs.meta b/com.unity.ml-agents/Runtime/Sensors/ArticulationBodyPoseExtractor.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodyPoseExtractor.cs.meta rename to com.unity.ml-agents/Runtime/Sensors/ArticulationBodyPoseExtractor.cs.meta diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodySensorComponent.cs b/com.unity.ml-agents/Runtime/Sensors/ArticulationBodySensorComponent.cs similarity index 93% rename from com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodySensorComponent.cs rename to com.unity.ml-agents/Runtime/Sensors/ArticulationBodySensorComponent.cs index 277f01269d..c378c3016c 100644 --- a/com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodySensorComponent.cs +++ b/com.unity.ml-agents/Runtime/Sensors/ArticulationBodySensorComponent.cs @@ -2,7 +2,7 @@ using UnityEngine; using Unity.MLAgents.Sensors; -namespace Unity.MLAgents.Extensions.Sensors +namespace Unity.MLAgents.Sensors { public class ArticulationBodySensorComponent : SensorComponent { diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodySensorComponent.cs.meta b/com.unity.ml-agents/Runtime/Sensors/ArticulationBodySensorComponent.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Runtime/Sensors/ArticulationBodySensorComponent.cs.meta rename to com.unity.ml-agents/Runtime/Sensors/ArticulationBodySensorComponent.cs.meta diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/CountingGridSensor.cs b/com.unity.ml-agents/Runtime/Sensors/CountingGridSensor.cs similarity index 98% rename from com.unity.ml-agents.extensions/Runtime/Sensors/CountingGridSensor.cs rename to com.unity.ml-agents/Runtime/Sensors/CountingGridSensor.cs index b48deb995f..9f86ff6f6a 100644 --- a/com.unity.ml-agents.extensions/Runtime/Sensors/CountingGridSensor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/CountingGridSensor.cs @@ -1,7 +1,7 @@ using UnityEngine; using Unity.MLAgents.Sensors; -namespace Unity.MLAgents.Extensions.Sensors +namespace Unity.MLAgents.Sensors { /// /// Grid-based sensor that counts the number of detctable objects. diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/CountingGridSensor.cs.meta b/com.unity.ml-agents/Runtime/Sensors/CountingGridSensor.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Runtime/Sensors/CountingGridSensor.cs.meta rename to com.unity.ml-agents/Runtime/Sensors/CountingGridSensor.cs.meta diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/IJointExtractor.cs b/com.unity.ml-agents/Runtime/Sensors/IJointExtractor.cs similarity index 93% rename from com.unity.ml-agents.extensions/Runtime/Sensors/IJointExtractor.cs rename to com.unity.ml-agents/Runtime/Sensors/IJointExtractor.cs index 401e3abf50..27ff730053 100644 --- a/com.unity.ml-agents.extensions/Runtime/Sensors/IJointExtractor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/IJointExtractor.cs @@ -1,6 +1,8 @@ using Unity.MLAgents.Sensors; -namespace Unity.MLAgents.Extensions.Sensors +using System.Collections.Generic; + +namespace Unity.MLAgents.Sensors { /// /// Interface for generating observations from a physical joint or constraint. diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/IJointExtractor.cs.meta b/com.unity.ml-agents/Runtime/Sensors/IJointExtractor.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Runtime/Sensors/IJointExtractor.cs.meta rename to com.unity.ml-agents/Runtime/Sensors/IJointExtractor.cs.meta diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/PhysicsBodySensor.cs b/com.unity.ml-agents/Runtime/Sensors/PhysicsBodySensor.cs similarity index 98% rename from com.unity.ml-agents.extensions/Runtime/Sensors/PhysicsBodySensor.cs rename to com.unity.ml-agents/Runtime/Sensors/PhysicsBodySensor.cs index edcfd16966..ce1671a3ab 100644 --- a/com.unity.ml-agents.extensions/Runtime/Sensors/PhysicsBodySensor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/PhysicsBodySensor.cs @@ -4,7 +4,7 @@ #endif using Unity.MLAgents.Sensors; -namespace Unity.MLAgents.Extensions.Sensors +namespace Unity.MLAgents.Sensors { /// /// ISensor implementation that generates observations for a group of Rigidbodies or ArticulationBodies. diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/PhysicsBodySensor.cs.meta b/com.unity.ml-agents/Runtime/Sensors/PhysicsBodySensor.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Runtime/Sensors/PhysicsBodySensor.cs.meta rename to com.unity.ml-agents/Runtime/Sensors/PhysicsBodySensor.cs.meta diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/PhysicsSensorSettings.cs b/com.unity.ml-agents/Runtime/Sensors/PhysicsSensorSettings.cs similarity index 99% rename from com.unity.ml-agents.extensions/Runtime/Sensors/PhysicsSensorSettings.cs rename to com.unity.ml-agents/Runtime/Sensors/PhysicsSensorSettings.cs index ecfa4417db..4fb7416ef3 100644 --- a/com.unity.ml-agents.extensions/Runtime/Sensors/PhysicsSensorSettings.cs +++ b/com.unity.ml-agents/Runtime/Sensors/PhysicsSensorSettings.cs @@ -1,7 +1,7 @@ using System; using Unity.MLAgents.Sensors; -namespace Unity.MLAgents.Extensions.Sensors +namespace Unity.MLAgents.Sensors { /// /// Settings that define the observations generated for physics-based sensors. diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/PhysicsSensorSettings.cs.meta b/com.unity.ml-agents/Runtime/Sensors/PhysicsSensorSettings.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Runtime/Sensors/PhysicsSensorSettings.cs.meta rename to com.unity.ml-agents/Runtime/Sensors/PhysicsSensorSettings.cs.meta diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/PoseExtractor.cs b/com.unity.ml-agents/Runtime/Sensors/PoseExtractor.cs similarity index 99% rename from com.unity.ml-agents.extensions/Runtime/Sensors/PoseExtractor.cs rename to com.unity.ml-agents/Runtime/Sensors/PoseExtractor.cs index a528dde90a..71febc4802 100644 --- a/com.unity.ml-agents.extensions/Runtime/Sensors/PoseExtractor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/PoseExtractor.cs @@ -3,7 +3,7 @@ using UnityEngine; using Object = UnityEngine.Object; -namespace Unity.MLAgents.Extensions.Sensors +namespace Unity.MLAgents.Sensors { /// /// Abstract class for managing the transforms of a hierarchy of objects. diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/PoseExtractor.cs.meta b/com.unity.ml-agents/Runtime/Sensors/PoseExtractor.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Runtime/Sensors/PoseExtractor.cs.meta rename to com.unity.ml-agents/Runtime/Sensors/PoseExtractor.cs.meta diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodyJointExtractor.cs b/com.unity.ml-agents/Runtime/Sensors/RigidBodyJointExtractor.cs similarity index 97% rename from com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodyJointExtractor.cs rename to com.unity.ml-agents/Runtime/Sensors/RigidBodyJointExtractor.cs index 1a5795521f..30ba5f6182 100644 --- a/com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodyJointExtractor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/RigidBodyJointExtractor.cs @@ -1,7 +1,7 @@ using UnityEngine; using Unity.MLAgents.Sensors; -namespace Unity.MLAgents.Extensions.Sensors +namespace Unity.MLAgents.Sensors { public class RigidBodyJointExtractor : IJointExtractor { diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodyJointExtractor.cs.meta b/com.unity.ml-agents/Runtime/Sensors/RigidBodyJointExtractor.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodyJointExtractor.cs.meta rename to com.unity.ml-agents/Runtime/Sensors/RigidBodyJointExtractor.cs.meta diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodyPoseExtractor.cs b/com.unity.ml-agents/Runtime/Sensors/RigidBodyPoseExtractor.cs similarity index 99% rename from com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodyPoseExtractor.cs rename to com.unity.ml-agents/Runtime/Sensors/RigidBodyPoseExtractor.cs index f1bca877b9..52f9c509c0 100644 --- a/com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodyPoseExtractor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/RigidBodyPoseExtractor.cs @@ -1,7 +1,7 @@ using System.Collections.Generic; using UnityEngine; -namespace Unity.MLAgents.Extensions.Sensors +namespace Unity.MLAgents.Sensors { /// /// Utility class to track a hierarchy of RigidBodies. These are assumed to have a root node, diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodyPoseExtractor.cs.meta b/com.unity.ml-agents/Runtime/Sensors/RigidBodyPoseExtractor.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodyPoseExtractor.cs.meta rename to com.unity.ml-agents/Runtime/Sensors/RigidBodyPoseExtractor.cs.meta diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodySensorComponent.cs b/com.unity.ml-agents/Runtime/Sensors/RigidBodySensorComponent.cs similarity index 98% rename from com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodySensorComponent.cs rename to com.unity.ml-agents/Runtime/Sensors/RigidBodySensorComponent.cs index 6cfc4aa666..667efbbf6c 100644 --- a/com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodySensorComponent.cs +++ b/com.unity.ml-agents/Runtime/Sensors/RigidBodySensorComponent.cs @@ -2,7 +2,7 @@ using UnityEngine; using Unity.MLAgents.Sensors; -namespace Unity.MLAgents.Extensions.Sensors +namespace Unity.MLAgents.Sensors { /// /// Editor component that creates a PhysicsBodySensor for the Agent. diff --git a/com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodySensorComponent.cs.meta b/com.unity.ml-agents/Runtime/Sensors/RigidBodySensorComponent.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Runtime/Sensors/RigidBodySensorComponent.cs.meta rename to com.unity.ml-agents/Runtime/Sensors/RigidBodySensorComponent.cs.meta diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Input.meta b/com.unity.ml-agents/Tests/Runtime/Input.meta similarity index 100% rename from com.unity.ml-agents.extensions/Tests/Runtime/Input.meta rename to com.unity.ml-agents/Tests/Runtime/Input.meta diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors.meta b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors.meta similarity index 100% rename from com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors.meta rename to com.unity.ml-agents/Tests/Runtime/Input/Adaptors.meta diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs similarity index 96% rename from com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs rename to com.unity.ml-agents/Tests/Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs index 7187a7e331..24d15f6c3a 100644 --- a/com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs @@ -1,11 +1,11 @@ #if MLA_INPUT_TESTS using NUnit.Framework; using Unity.MLAgents.Actuators; -using Unity.MLAgents.Extensions.Input; +using Unity.MLAgents.Actuators; using UnityEngine; using UnityEngine.InputSystem; -namespace Unity.MLAgents.Extensions.Tests.Runtime.Input +namespace Unity.MLAgents.Tests.Actuators { public class ButtonInputActionAdaptorTests : InputTestFixture { diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs.meta b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs.meta rename to com.unity.ml-agents/Tests/Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs.meta diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs similarity index 96% rename from com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs rename to com.unity.ml-agents/Tests/Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs index 7033b383fe..407f264150 100644 --- a/com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs @@ -1,11 +1,11 @@ #if MLA_INPUT_TESTS using NUnit.Framework; using Unity.MLAgents.Actuators; -using Unity.MLAgents.Extensions.Input; +using Unity.MLAgents.Actuators; using UnityEngine; using UnityEngine.InputSystem; -namespace Unity.MLAgents.Extensions.Tests.Runtime.Input +namespace Unity.MLAgents.Tests.Actuators { public class DoubleInputActionAdaptorTests : InputTestFixture { diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs.meta b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs.meta rename to com.unity.ml-agents/Tests/Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs.meta diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs similarity index 96% rename from com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs rename to com.unity.ml-agents/Tests/Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs index 300dabec0c..6f4eac32f9 100644 --- a/com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs @@ -1,11 +1,11 @@ #if MLA_INPUT_TESTS using NUnit.Framework; using Unity.MLAgents.Actuators; -using Unity.MLAgents.Extensions.Input; +using Unity.MLAgents.Actuators; using UnityEngine; using UnityEngine.InputSystem; -namespace Unity.MLAgents.Extensions.Tests.Runtime.Input +namespace Unity.MLAgents.Tests.Actuators { public class FloatInputActionAdaptorTests : InputTestFixture { diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs.meta b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs.meta rename to com.unity.ml-agents/Tests/Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs.meta diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs similarity index 96% rename from com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs rename to com.unity.ml-agents/Tests/Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs index a6d92e7af2..8133560b17 100644 --- a/com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs @@ -1,10 +1,10 @@ #if MLA_INPUT_TESTS using NUnit.Framework; using Unity.MLAgents.Actuators; -using Unity.MLAgents.Extensions.Input; +using Unity.MLAgents.Actuators; using UnityEngine.InputSystem; -namespace Unity.MLAgents.Extensions.Tests.Runtime.Input +namespace Unity.MLAgents.Tests.Actuators { public class IntegerInputActionAdaptorTests : InputTestFixture { diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs.meta b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs.meta rename to com.unity.ml-agents/Tests/Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs.meta diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs similarity index 96% rename from com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs rename to com.unity.ml-agents/Tests/Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs index 70f29d9a88..2a6ee68a5c 100644 --- a/com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs @@ -1,11 +1,11 @@ #if MLA_INPUT_TESTS using NUnit.Framework; using Unity.MLAgents.Actuators; -using Unity.MLAgents.Extensions.Input; +using Unity.MLAgents.Actuators; using UnityEngine; using UnityEngine.InputSystem; -namespace Unity.MLAgents.Extensions.Tests.Runtime.Input +namespace Unity.MLAgents.Tests.Actuators { public class Vector2InputActionAdaptorTests : InputTestFixture { diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs.meta b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Tests/Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs.meta rename to com.unity.ml-agents/Tests/Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs.meta diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Input/InputActionActuatorTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/InputActionActuatorTests.cs similarity index 96% rename from com.unity.ml-agents.extensions/Tests/Runtime/Input/InputActionActuatorTests.cs rename to com.unity.ml-agents/Tests/Runtime/Input/InputActionActuatorTests.cs index e73400ce62..6c693644d1 100644 --- a/com.unity.ml-agents.extensions/Tests/Runtime/Input/InputActionActuatorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/InputActionActuatorTests.cs @@ -1,14 +1,14 @@ #if MLA_INPUT_TESTS using NUnit.Framework; using Unity.MLAgents.Actuators; -using Unity.MLAgents.Extensions.Input; +using Unity.MLAgents.Actuators; using Unity.MLAgents.Policies; using Unity.InferenceEngine; using UnityEngine; using UnityEngine.InputSystem; using UnityEngine.InputSystem.LowLevel; -namespace Unity.MLAgents.Extensions.Tests.Runtime.Input +namespace Unity.MLAgents.Tests.Actuators { class TestAdaptor : IRLActionInputAdaptor { diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Input/InputActionActuatorTests.cs.meta b/com.unity.ml-agents/Tests/Runtime/Input/InputActionActuatorTests.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Tests/Runtime/Input/InputActionActuatorTests.cs.meta rename to com.unity.ml-agents/Tests/Runtime/Input/InputActionActuatorTests.cs.meta diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Input/InputActuatorComponentTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/InputActuatorComponentTests.cs similarity index 98% rename from com.unity.ml-agents.extensions/Tests/Runtime/Input/InputActuatorComponentTests.cs rename to com.unity.ml-agents/Tests/Runtime/Input/InputActuatorComponentTests.cs index a3740c304f..1b05ef0230 100644 --- a/com.unity.ml-agents.extensions/Tests/Runtime/Input/InputActuatorComponentTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/InputActuatorComponentTests.cs @@ -3,12 +3,12 @@ using System.Linq; using NUnit.Framework; using Unity.MLAgents.Actuators; -using Unity.MLAgents.Extensions.Input; +using Unity.MLAgents.Actuators; using Unity.MLAgents.Policies; using UnityEngine; using UnityEngine.InputSystem; -namespace Unity.MLAgents.Extensions.Tests.Runtime.Input +namespace Unity.MLAgents.Tests.Actuators { class TestProvider : MonoBehaviour, IInputActionAssetProvider { diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Input/InputActuatorComponentTests.cs.meta b/com.unity.ml-agents/Tests/Runtime/Input/InputActuatorComponentTests.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Tests/Runtime/Input/InputActuatorComponentTests.cs.meta rename to com.unity.ml-agents/Tests/Runtime/Input/InputActuatorComponentTests.cs.meta diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Input/TestPushBlockActions.cs b/com.unity.ml-agents/Tests/Runtime/Input/TestPushBlockActions.cs similarity index 100% rename from com.unity.ml-agents.extensions/Tests/Runtime/Input/TestPushBlockActions.cs rename to com.unity.ml-agents/Tests/Runtime/Input/TestPushBlockActions.cs diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Input/TestPushBlockActions.cs.meta b/com.unity.ml-agents/Tests/Runtime/Input/TestPushBlockActions.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Tests/Runtime/Input/TestPushBlockActions.cs.meta rename to com.unity.ml-agents/Tests/Runtime/Input/TestPushBlockActions.cs.meta diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/RuntimeExampleTest.cs b/com.unity.ml-agents/Tests/Runtime/RuntimeExampleTest.cs similarity index 81% rename from com.unity.ml-agents.extensions/Tests/Runtime/RuntimeExampleTest.cs rename to com.unity.ml-agents/Tests/Runtime/RuntimeExampleTest.cs index 4065dce1dc..aeb03e2bd7 100644 --- a/com.unity.ml-agents.extensions/Tests/Runtime/RuntimeExampleTest.cs +++ b/com.unity.ml-agents/Tests/Runtime/RuntimeExampleTest.cs @@ -1,6 +1,6 @@ using NUnit.Framework; -namespace Unity.MLAgents.Extensions.Tests +namespace Unity.MLAgents.Tests { internal class RuntimeExampleTest { diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/RuntimeExampleTest.cs.meta b/com.unity.ml-agents/Tests/Runtime/RuntimeExampleTest.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Tests/Runtime/RuntimeExampleTest.cs.meta rename to com.unity.ml-agents/Tests/Runtime/RuntimeExampleTest.cs.meta diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Sensors.meta b/com.unity.ml-agents/Tests/Runtime/Sensors.meta similarity index 100% rename from com.unity.ml-agents.extensions/Tests/Runtime/Sensors.meta rename to com.unity.ml-agents/Tests/Runtime/Sensors.meta diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Sensors/ArticulationBodyPoseExtractorTests.cs b/com.unity.ml-agents/Tests/Runtime/Sensors/ArticulationBodyPoseExtractorTests.cs similarity index 95% rename from com.unity.ml-agents.extensions/Tests/Runtime/Sensors/ArticulationBodyPoseExtractorTests.cs rename to com.unity.ml-agents/Tests/Runtime/Sensors/ArticulationBodyPoseExtractorTests.cs index fd5a64df0d..eebea1203a 100644 --- a/com.unity.ml-agents.extensions/Tests/Runtime/Sensors/ArticulationBodyPoseExtractorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Sensors/ArticulationBodyPoseExtractorTests.cs @@ -1,9 +1,9 @@ #if UNITY_2020_1_OR_NEWER using UnityEngine; using NUnit.Framework; -using Unity.MLAgents.Extensions.Sensors; +using Unity.MLAgents.Sensors; -namespace Unity.MLAgents.Extensions.Tests.Sensors +namespace Unity.MLAgents.Tests.Sensors { public class ArticulationBodyPoseExtractorTests { diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Sensors/ArticulationBodyPoseExtractorTests.cs.meta b/com.unity.ml-agents/Tests/Runtime/Sensors/ArticulationBodyPoseExtractorTests.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Tests/Runtime/Sensors/ArticulationBodyPoseExtractorTests.cs.meta rename to com.unity.ml-agents/Tests/Runtime/Sensors/ArticulationBodyPoseExtractorTests.cs.meta diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Sensors/ArticulationBodySensorTests.cs b/com.unity.ml-agents/Tests/Runtime/Sensors/ArticulationBodySensorTests.cs similarity index 98% rename from com.unity.ml-agents.extensions/Tests/Runtime/Sensors/ArticulationBodySensorTests.cs rename to com.unity.ml-agents/Tests/Runtime/Sensors/ArticulationBodySensorTests.cs index 1bd10be9cc..0afa459680 100644 --- a/com.unity.ml-agents.extensions/Tests/Runtime/Sensors/ArticulationBodySensorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Sensors/ArticulationBodySensorTests.cs @@ -1,10 +1,10 @@ #if UNITY_2020_1_OR_NEWER using UnityEngine; using NUnit.Framework; -using Unity.MLAgents.Extensions.Sensors; +using Unity.MLAgents.Sensors; -namespace Unity.MLAgents.Extensions.Tests.Sensors +namespace Unity.MLAgents.Tests.Sensors { public class ArticulationBodySensorTests { diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Sensors/ArticulationBodySensorTests.cs.meta b/com.unity.ml-agents/Tests/Runtime/Sensors/ArticulationBodySensorTests.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Tests/Runtime/Sensors/ArticulationBodySensorTests.cs.meta rename to com.unity.ml-agents/Tests/Runtime/Sensors/ArticulationBodySensorTests.cs.meta diff --git a/com.unity.ml-agents/Tests/Runtime/Sensors/AssemblyInfo.cs b/com.unity.ml-agents/Tests/Runtime/Sensors/AssemblyInfo.cs new file mode 100644 index 0000000000..8df4fbe14b --- /dev/null +++ b/com.unity.ml-agents/Tests/Runtime/Sensors/AssemblyInfo.cs @@ -0,0 +1,3 @@ +using System.Runtime.CompilerServices; + +[assembly: InternalsVisibleTo("Unity.ML-Agents.Editor.Tests")] diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Sensors/AssemblyInfo.cs.meta b/com.unity.ml-agents/Tests/Runtime/Sensors/AssemblyInfo.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Tests/Runtime/Sensors/AssemblyInfo.cs.meta rename to com.unity.ml-agents/Tests/Runtime/Sensors/AssemblyInfo.cs.meta diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Sensors/CountingGridSensorTests.cs b/com.unity.ml-agents/Tests/Runtime/Sensors/CountingGridSensorTests.cs similarity index 98% rename from com.unity.ml-agents.extensions/Tests/Runtime/Sensors/CountingGridSensorTests.cs rename to com.unity.ml-agents/Tests/Runtime/Sensors/CountingGridSensorTests.cs index 4e2054358b..c7fa82d9b6 100644 --- a/com.unity.ml-agents.extensions/Tests/Runtime/Sensors/CountingGridSensorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Sensors/CountingGridSensorTests.cs @@ -5,10 +5,9 @@ using UnityEngine; using UnityEngine.TestTools; using Unity.MLAgents.Sensors; -using Unity.MLAgents.Extensions.Sensors; using Object = UnityEngine.Object; -namespace Unity.MLAgents.Extensions.Tests.Sensors +namespace Unity.MLAgents.Tests.Sensors { public class CountingGridSensorTests { diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Sensors/CountingGridSensorTests.cs.meta b/com.unity.ml-agents/Tests/Runtime/Sensors/CountingGridSensorTests.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Tests/Runtime/Sensors/CountingGridSensorTests.cs.meta rename to com.unity.ml-agents/Tests/Runtime/Sensors/CountingGridSensorTests.cs.meta diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Sensors/PoseExtractorTests.cs b/com.unity.ml-agents/Tests/Runtime/Sensors/PoseExtractorTests.cs similarity index 98% rename from com.unity.ml-agents.extensions/Tests/Runtime/Sensors/PoseExtractorTests.cs rename to com.unity.ml-agents/Tests/Runtime/Sensors/PoseExtractorTests.cs index 1bb4fb4c1e..a52ee8bbcd 100644 --- a/com.unity.ml-agents.extensions/Tests/Runtime/Sensors/PoseExtractorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Sensors/PoseExtractorTests.cs @@ -1,9 +1,9 @@ using System; using UnityEngine; using NUnit.Framework; -using Unity.MLAgents.Extensions.Sensors; +using Unity.MLAgents.Sensors; -namespace Unity.MLAgents.Extensions.Tests.Sensors +namespace Unity.MLAgents.Tests.Sensors { public class PoseExtractorTests { diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Sensors/PoseExtractorTests.cs.meta b/com.unity.ml-agents/Tests/Runtime/Sensors/PoseExtractorTests.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Tests/Runtime/Sensors/PoseExtractorTests.cs.meta rename to com.unity.ml-agents/Tests/Runtime/Sensors/PoseExtractorTests.cs.meta diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Sensors/RigidBodyPoseExtractorTests.cs b/com.unity.ml-agents/Tests/Runtime/Sensors/RigidBodyPoseExtractorTests.cs similarity index 98% rename from com.unity.ml-agents.extensions/Tests/Runtime/Sensors/RigidBodyPoseExtractorTests.cs rename to com.unity.ml-agents/Tests/Runtime/Sensors/RigidBodyPoseExtractorTests.cs index 80130711be..bc4c1662bf 100644 --- a/com.unity.ml-agents.extensions/Tests/Runtime/Sensors/RigidBodyPoseExtractorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Sensors/RigidBodyPoseExtractorTests.cs @@ -1,8 +1,8 @@ using UnityEngine; using NUnit.Framework; -using Unity.MLAgents.Extensions.Sensors; +using Unity.MLAgents.Sensors; -namespace Unity.MLAgents.Extensions.Tests.Sensors +namespace Unity.MLAgents.Tests.Sensors { public class RigidBodyPoseExtractorTests { diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Sensors/RigidBodyPoseExtractorTests.cs.meta b/com.unity.ml-agents/Tests/Runtime/Sensors/RigidBodyPoseExtractorTests.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Tests/Runtime/Sensors/RigidBodyPoseExtractorTests.cs.meta rename to com.unity.ml-agents/Tests/Runtime/Sensors/RigidBodyPoseExtractorTests.cs.meta diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Sensors/RigidBodySensorTests.cs b/com.unity.ml-agents/Tests/Runtime/Sensors/RigidBodySensorTests.cs similarity index 98% rename from com.unity.ml-agents.extensions/Tests/Runtime/Sensors/RigidBodySensorTests.cs rename to com.unity.ml-agents/Tests/Runtime/Sensors/RigidBodySensorTests.cs index 86e3fb45bf..1dac1c41b8 100644 --- a/com.unity.ml-agents.extensions/Tests/Runtime/Sensors/RigidBodySensorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Sensors/RigidBodySensorTests.cs @@ -1,9 +1,8 @@ using UnityEngine; using NUnit.Framework; using Unity.MLAgents.Sensors; -using Unity.MLAgents.Extensions.Sensors; -namespace Unity.MLAgents.Extensions.Tests.Sensors +namespace Unity.MLAgents.Tests.Sensors { public static class SensorTestHelper { diff --git a/com.unity.ml-agents.extensions/Tests/Runtime/Sensors/RigidBodySensorTests.cs.meta b/com.unity.ml-agents/Tests/Runtime/Sensors/RigidBodySensorTests.cs.meta similarity index 100% rename from com.unity.ml-agents.extensions/Tests/Runtime/Sensors/RigidBodySensorTests.cs.meta rename to com.unity.ml-agents/Tests/Runtime/Sensors/RigidBodySensorTests.cs.meta diff --git a/com.unity.ml-agents/Tests/Runtime/Utils/TestClasses.cs b/com.unity.ml-agents/Tests/Runtime/Utils/TestClasses.cs index f17b88279e..28371d71b9 100644 --- a/com.unity.ml-agents/Tests/Runtime/Utils/TestClasses.cs +++ b/com.unity.ml-agents/Tests/Runtime/Utils/TestClasses.cs @@ -9,7 +9,6 @@ [assembly: InternalsVisibleTo("Unity.ML-Agents.Editor.Tests")] [assembly: InternalsVisibleTo("Unity.ML-Agents.Runtime.Sensor.Tests")] -[assembly: InternalsVisibleTo("Unity.ML-Agents.Extensions.EditorTests")] namespace Unity.MLAgents.Utils.Tests { diff --git a/docs/Installation.md b/docs/Installation.md index 43416dea65..e8fa788c99 100644 --- a/docs/Installation.md +++ b/docs/Installation.md @@ -3,13 +3,9 @@ The ML-Agents Toolkit contains several components: - Unity package ([`com.unity.ml-agents`](../com.unity.ml-agents/)) contains the - Unity C# SDK that will be integrated into your Unity project. This package contains - a sample to help you get started with ML-Agents. -- Unity package - ([`com.unity.ml-agents.extensions`](../com.unity.ml-agents.extensions/)) - contains experimental C#/Unity components that are not yet ready to be part - of the base `com.unity.ml-agents` package. `com.unity.ml-agents.extensions` - has a direct dependency on `com.unity.ml-agents`. + Unity C# SDK that will be integrated into your Unity project. This package contains + a sample to help you get started with ML-Agents, including advanced features like + custom sensors, input system integration, and physics-based components. - Two Python packages: - [`mlagents`](../ml-agents/) contains the machine learning algorithms that enables you to train behaviors in your Unity scene. Most users of ML-Agents @@ -28,12 +24,10 @@ Consequently, to install and use the ML-Agents Toolkit you will need to: - Install Python (>= 3.10.1, <=3.10.12) - we recommend using 3.10.12 - Clone this repository (Recommended for the latest version and bug fixes) - __Note:__ If you do not clone the repository, then you will not be - able to access the example environments and training configurations or the - `com.unity.ml-agents.extensions` package. Additionally, the - [Getting Started Guide](Getting-Started.md) assumes that you have cloned the + able to access the example environments and training configurations. + Additionally, the [Getting Started Guide](Getting-Started.md) assumes that you have cloned the repository. - Install the `com.unity.ml-agents` Unity package -- Install the `com.unity.ml-agents.extensions` Unity package (Optional) - Install the `mlagents-envs` - Install the `mlagents` Python package @@ -132,15 +126,6 @@ project by: If you are going to follow the examples from our documentation, you can open the `Project` folder in Unity and start tinkering immediately. -### Install the `com.unity.ml-agents.extensions` Unity package (Optional) - -To install the `com.unity.ml-agents.extensions` package, you need to first -clone the repo and then complete a local installation similar to what was -outlined in the previous -[Advanced: Local Installation for Development](#advanced-local-installation-for-development-1) -section. Complete installation steps can be found in the -[package documentation](../com.unity.ml-agents.extensions/Documentation~/com.unity.ml-agents.extensions.md#installation). - ### Install the `mlagents` Python package Installing the `mlagents` Python package involves installing other Python diff --git a/docs/Learning-Environment-Design-Agents.md b/docs/Learning-Environment-Design-Agents.md index 8000a88465..dbfca2f53c 100644 --- a/docs/Learning-Environment-Design-Agents.md +++ b/docs/Learning-Environment-Design-Agents.md @@ -583,9 +583,7 @@ granularity of the observation and training speed. To allow more variety of observations that grid sensor can capture, the `GridSensorComponent` and the underlying `GridSensorBase` also provides interfaces that can be overridden to collect customized observation from detected objects. -See the doc on -[extending grid Sensors](https://github.com/Unity-Technologies/ml-agents/blob/release_22_docs/com.unity.ml-agents.extensions/Documentation~/CustomGridSensors.md) -for more details on custom grid sensors. +See the Unity package documentation for more details on custom grid sensors. __Note__: The `GridSensor` only works in 3D environments and will not behave properly in 2D environments. diff --git a/docs/Migrating.md b/docs/Migrating.md index aba3d8565f..b69276130a 100644 --- a/docs/Migrating.md +++ b/docs/Migrating.md @@ -121,7 +121,7 @@ public CompressionSpec GetCompressionSpec() - The abstract method `SensorComponent.CreateSensor()` was replaced with `CreateSensors()`, which returns an `ISensor[]`. ### Match3 integration changes -The Match-3 integration utilities were moved from `com.unity.ml-agents.extensions` to `com.unity.ml-agents`. +The Match-3 integration utilities are now included in `com.unity.ml-agents`. The `AbstractBoard` interface was changed: * `AbstractBoard` no longer contains `Rows`, `Columns`, `NumCellTypes`, and `NumSpecialTypes` fields. diff --git a/docs/com.unity.ml-agents.extensions.md b/docs/com.unity.ml-agents.extensions.md deleted file mode 100644 index 48a1449efa..0000000000 --- a/docs/com.unity.ml-agents.extensions.md +++ /dev/null @@ -1 +0,0 @@ -{!../com.unity.ml-agents.extensions/Documentation~/com.unity.ml-agents.extensions.md!} diff --git a/ml-agents/tests/yamato/yamato_utils.py b/ml-agents/tests/yamato/yamato_utils.py index 5474e56285..7471d90d49 100644 --- a/ml-agents/tests/yamato/yamato_utils.py +++ b/ml-agents/tests/yamato/yamato_utils.py @@ -164,7 +164,7 @@ def checkout_csharp_version(csharp_version): return csharp_tag = f"com.unity.ml-agents_{csharp_version}" - csharp_dirs = ["com.unity.ml-agents", "com.unity.ml-agents.extensions", "Project"] + csharp_dirs = ["com.unity.ml-agents", "Project"] for csharp_dir in csharp_dirs: subprocess.check_call(f"rm -rf {csharp_dir}", shell=True) # Allow the checkout to fail, since the extensions folder isn't availabe in 1.0.0 diff --git a/utils/validate_meta_files.py b/utils/validate_meta_files.py index 9d247fa76f..9e7411217c 100644 --- a/utils/validate_meta_files.py +++ b/utils/validate_meta_files.py @@ -6,7 +6,6 @@ def main(): "Project/Assets", "DevProject/Assets", "com.unity.ml-agents", - "com.unity.ml-agents.extensions", ] meta_suffix = ".meta" python_suffix = ".py" @@ -19,9 +18,6 @@ def main(): "com.unity.ml-agents/Tests/.tests.json", "com.unity.ml-agents/.pre-commit-config.yaml", "com.unity.ml-agents/.pre-commit-search-and-replace.yaml", - "com.unity.ml-agents.extensions/.gitignore", - "com.unity.ml-agents.extensions/.npmignore", - "com.unity.ml-agents.extensions/Tests/.tests.json", "com.unity.ml-agents/Samples/3DBall/.sample.json", ] ) diff --git a/utils/validate_versions.py b/utils/validate_versions.py index 0090bbf09d..d953d7fe0a 100755 --- a/utils/validate_versions.py +++ b/utils/validate_versions.py @@ -11,7 +11,6 @@ DIRECTORIES = ["ml-agents/mlagents/trainers", "ml-agents-envs/mlagents_envs"] MLAGENTS_PACKAGE_JSON_PATH = "com.unity.ml-agents/package.json" -MLAGENTS_EXTENSIONS_PACKAGE_JSON_PATH = "com.unity.ml-agents.extensions/package.json" ACADEMY_PATH = "com.unity.ml-agents/Runtime/Academy.cs" @@ -84,16 +83,8 @@ def set_version( # removed exp.1 tag from version strings since MLA package is a supported package again # package_version = f"{csharp_version}-exp.1" package_version = f"{csharp_version}" - if csharp_extensions_version is not None: - # since this has never been promoted we need to keep - # it in preview forever or CI will fail - extension_version = f"{csharp_extensions_version}-preview" - print( - f"Setting package version to {package_version} in {MLAGENTS_PACKAGE_JSON_PATH}" - f" and {MLAGENTS_EXTENSIONS_PACKAGE_JSON_PATH}" - ) + print(f"Setting package version to {package_version} in {MLAGENTS_PACKAGE_JSON_PATH}") set_package_version(package_version) - set_extension_package_version(package_version, extension_version) print(f"Setting package version to {package_version} in {ACADEMY_PATH}") set_academy_version_string(package_version) @@ -108,19 +99,6 @@ def set_package_version(new_version: str) -> None: f.write("\n") -def set_extension_package_version( - new_dependency_version: str, new_extension_version -) -> None: - with open(MLAGENTS_EXTENSIONS_PACKAGE_JSON_PATH) as f: - package_json = json.load(f) - package_json["dependencies"]["com.unity.ml-agents"] = new_dependency_version - if new_extension_version is not None: - package_json["version"] = new_extension_version - with open(MLAGENTS_EXTENSIONS_PACKAGE_JSON_PATH, "w") as f: - json.dump(package_json, f, indent=2) - f.write("\n") - - def set_academy_version_string(new_version): needle = "internal const string k_PackageVersion" found = 0 From 440743f94d99f2983c0d574e0dc6b85a0a758e59 Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Tue, 22 Jul 2025 14:54:27 -0400 Subject: [PATCH 02/29] Update the extension tests --- .../SceneTemplateSettings.json | 5 +++++ .../Runtime/Unity.ML-Agents.asmdef | 8 +++++++- .../Adaptors/ButtonInputActionAdaptorTests.cs | 1 - .../Adaptors/DoubleInputActionAdaptorTests.cs | 1 - .../Adaptors/FloatInputActionAdapatorTests.cs | 1 - .../IntegerInputActionAdaptorTests.cs | 1 - .../Vector2InputActionAdaptorTests.cs | 1 - .../Runtime/Input/InputActionActuatorTests.cs | 1 - .../Input/InputActuatorComponentTests.cs | 2 -- .../ArticulationBodyPoseExtractorTests.cs | 2 +- ...ArticulationBodyPoseExtractorTests.cs.meta | 0 .../ArticulationBodySensorTests.cs | 2 +- .../ArticulationBodySensorTests.cs.meta | 0 .../{Sensors => Sensor}/AssemblyInfo.cs | 0 .../{Sensors => Sensor}/AssemblyInfo.cs.meta | 0 .../CountingGridSensorTests.cs | 2 +- .../CountingGridSensorTests.cs.meta | 0 .../{Sensors => Sensor}/PoseExtractorTests.cs | 2 +- .../PoseExtractorTests.cs.meta | 0 .../RigidBodyPoseExtractorTests.cs | 2 +- .../RigidBodyPoseExtractorTests.cs.meta | 0 .../RigidBodySensorTests.cs | 19 +------------------ .../RigidBodySensorTests.cs.meta | 0 .../Tests/Runtime/Sensors.meta | 3 --- .../Unity.ML-Agents.Runtime.Tests.asmdef | 14 +++++++++++++- 25 files changed, 31 insertions(+), 36 deletions(-) rename com.unity.ml-agents/Tests/Runtime/{Sensors => Sensor}/ArticulationBodyPoseExtractorTests.cs (98%) rename com.unity.ml-agents/Tests/Runtime/{Sensors => Sensor}/ArticulationBodyPoseExtractorTests.cs.meta (100%) rename com.unity.ml-agents/Tests/Runtime/{Sensors => Sensor}/ArticulationBodySensorTests.cs (99%) rename com.unity.ml-agents/Tests/Runtime/{Sensors => Sensor}/ArticulationBodySensorTests.cs.meta (100%) rename com.unity.ml-agents/Tests/Runtime/{Sensors => Sensor}/AssemblyInfo.cs (100%) rename com.unity.ml-agents/Tests/Runtime/{Sensors => Sensor}/AssemblyInfo.cs.meta (100%) rename com.unity.ml-agents/Tests/Runtime/{Sensors => Sensor}/CountingGridSensorTests.cs (99%) rename com.unity.ml-agents/Tests/Runtime/{Sensors => Sensor}/CountingGridSensorTests.cs.meta (100%) rename com.unity.ml-agents/Tests/Runtime/{Sensors => Sensor}/PoseExtractorTests.cs (99%) rename com.unity.ml-agents/Tests/Runtime/{Sensors => Sensor}/PoseExtractorTests.cs.meta (100%) rename com.unity.ml-agents/Tests/Runtime/{Sensors => Sensor}/RigidBodyPoseExtractorTests.cs (99%) rename com.unity.ml-agents/Tests/Runtime/{Sensors => Sensor}/RigidBodyPoseExtractorTests.cs.meta (100%) rename com.unity.ml-agents/Tests/Runtime/{Sensors => Sensor}/RigidBodySensorTests.cs (88%) rename com.unity.ml-agents/Tests/Runtime/{Sensors => Sensor}/RigidBodySensorTests.cs.meta (100%) delete mode 100644 com.unity.ml-agents/Tests/Runtime/Sensors.meta diff --git a/Project/ProjectSettings/SceneTemplateSettings.json b/Project/ProjectSettings/SceneTemplateSettings.json index 5e97f8393e..1edced2aac 100644 --- a/Project/ProjectSettings/SceneTemplateSettings.json +++ b/Project/ProjectSettings/SceneTemplateSettings.json @@ -61,6 +61,11 @@ "type": "UnityEngine.PhysicMaterial", "defaultInstantiationMode": 0 }, + { + "userAdded": false, + "type": "UnityEngine.PhysicsMaterial", + "defaultInstantiationMode": 0 + }, { "userAdded": false, "type": "UnityEngine.PhysicsMaterial2D", diff --git a/com.unity.ml-agents/Runtime/Unity.ML-Agents.asmdef b/com.unity.ml-agents/Runtime/Unity.ML-Agents.asmdef index 1b0f8ca4d7..c1d32e4574 100755 --- a/com.unity.ml-agents/Runtime/Unity.ML-Agents.asmdef +++ b/com.unity.ml-agents/Runtime/Unity.ML-Agents.asmdef @@ -4,7 +4,8 @@ "references": [ "Unity.ML-Agents.CommunicatorObjects", "Unity.Mathematics", - "Unity.InferenceEngine" + "Unity.InferenceEngine", + "Unity.InputSystem" ], "includePlatforms": [], "excludePlatforms": [], @@ -32,6 +33,11 @@ "name": "com.unity.modules.physics2d", "expression": "1.0.0", "define": "MLA_UNITY_PHYSICS2D_MODULE" + }, + { + "name": "com.unity.inputsystem", + "expression": "1.1.0", + "define": "MLA_INPUT_SYSTEM" } ], "noEngineReferences": false diff --git a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs index 24d15f6c3a..a307f30fcc 100644 --- a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs @@ -1,7 +1,6 @@ #if MLA_INPUT_TESTS using NUnit.Framework; using Unity.MLAgents.Actuators; -using Unity.MLAgents.Actuators; using UnityEngine; using UnityEngine.InputSystem; diff --git a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs index 407f264150..b7f8b02381 100644 --- a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs @@ -1,7 +1,6 @@ #if MLA_INPUT_TESTS using NUnit.Framework; using Unity.MLAgents.Actuators; -using Unity.MLAgents.Actuators; using UnityEngine; using UnityEngine.InputSystem; diff --git a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs index 6f4eac32f9..b09ef0efad 100644 --- a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs @@ -1,7 +1,6 @@ #if MLA_INPUT_TESTS using NUnit.Framework; using Unity.MLAgents.Actuators; -using Unity.MLAgents.Actuators; using UnityEngine; using UnityEngine.InputSystem; diff --git a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs index 8133560b17..c50642e55b 100644 --- a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs @@ -1,7 +1,6 @@ #if MLA_INPUT_TESTS using NUnit.Framework; using Unity.MLAgents.Actuators; -using Unity.MLAgents.Actuators; using UnityEngine.InputSystem; namespace Unity.MLAgents.Tests.Actuators diff --git a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs index 2a6ee68a5c..cb6a57cea7 100644 --- a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs @@ -1,7 +1,6 @@ #if MLA_INPUT_TESTS using NUnit.Framework; using Unity.MLAgents.Actuators; -using Unity.MLAgents.Actuators; using UnityEngine; using UnityEngine.InputSystem; diff --git a/com.unity.ml-agents/Tests/Runtime/Input/InputActionActuatorTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/InputActionActuatorTests.cs index 6c693644d1..7ada6fa3e1 100644 --- a/com.unity.ml-agents/Tests/Runtime/Input/InputActionActuatorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/InputActionActuatorTests.cs @@ -1,7 +1,6 @@ #if MLA_INPUT_TESTS using NUnit.Framework; using Unity.MLAgents.Actuators; -using Unity.MLAgents.Actuators; using Unity.MLAgents.Policies; using Unity.InferenceEngine; using UnityEngine; diff --git a/com.unity.ml-agents/Tests/Runtime/Input/InputActuatorComponentTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/InputActuatorComponentTests.cs index 1b05ef0230..18caa03823 100644 --- a/com.unity.ml-agents/Tests/Runtime/Input/InputActuatorComponentTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/InputActuatorComponentTests.cs @@ -1,9 +1,7 @@ #if MLA_INPUT_TESTS -using System; using System.Linq; using NUnit.Framework; using Unity.MLAgents.Actuators; -using Unity.MLAgents.Actuators; using Unity.MLAgents.Policies; using UnityEngine; using UnityEngine.InputSystem; diff --git a/com.unity.ml-agents/Tests/Runtime/Sensors/ArticulationBodyPoseExtractorTests.cs b/com.unity.ml-agents/Tests/Runtime/Sensor/ArticulationBodyPoseExtractorTests.cs similarity index 98% rename from com.unity.ml-agents/Tests/Runtime/Sensors/ArticulationBodyPoseExtractorTests.cs rename to com.unity.ml-agents/Tests/Runtime/Sensor/ArticulationBodyPoseExtractorTests.cs index eebea1203a..1c4aee8f8a 100644 --- a/com.unity.ml-agents/Tests/Runtime/Sensors/ArticulationBodyPoseExtractorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Sensor/ArticulationBodyPoseExtractorTests.cs @@ -3,7 +3,7 @@ using NUnit.Framework; using Unity.MLAgents.Sensors; -namespace Unity.MLAgents.Tests.Sensors +namespace Unity.MLAgents.Tests { public class ArticulationBodyPoseExtractorTests { diff --git a/com.unity.ml-agents/Tests/Runtime/Sensors/ArticulationBodyPoseExtractorTests.cs.meta b/com.unity.ml-agents/Tests/Runtime/Sensor/ArticulationBodyPoseExtractorTests.cs.meta similarity index 100% rename from com.unity.ml-agents/Tests/Runtime/Sensors/ArticulationBodyPoseExtractorTests.cs.meta rename to com.unity.ml-agents/Tests/Runtime/Sensor/ArticulationBodyPoseExtractorTests.cs.meta diff --git a/com.unity.ml-agents/Tests/Runtime/Sensors/ArticulationBodySensorTests.cs b/com.unity.ml-agents/Tests/Runtime/Sensor/ArticulationBodySensorTests.cs similarity index 99% rename from com.unity.ml-agents/Tests/Runtime/Sensors/ArticulationBodySensorTests.cs rename to com.unity.ml-agents/Tests/Runtime/Sensor/ArticulationBodySensorTests.cs index 0afa459680..c8592a88ea 100644 --- a/com.unity.ml-agents/Tests/Runtime/Sensors/ArticulationBodySensorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Sensor/ArticulationBodySensorTests.cs @@ -4,7 +4,7 @@ using Unity.MLAgents.Sensors; -namespace Unity.MLAgents.Tests.Sensors +namespace Unity.MLAgents.Tests { public class ArticulationBodySensorTests { diff --git a/com.unity.ml-agents/Tests/Runtime/Sensors/ArticulationBodySensorTests.cs.meta b/com.unity.ml-agents/Tests/Runtime/Sensor/ArticulationBodySensorTests.cs.meta similarity index 100% rename from com.unity.ml-agents/Tests/Runtime/Sensors/ArticulationBodySensorTests.cs.meta rename to com.unity.ml-agents/Tests/Runtime/Sensor/ArticulationBodySensorTests.cs.meta diff --git a/com.unity.ml-agents/Tests/Runtime/Sensors/AssemblyInfo.cs b/com.unity.ml-agents/Tests/Runtime/Sensor/AssemblyInfo.cs similarity index 100% rename from com.unity.ml-agents/Tests/Runtime/Sensors/AssemblyInfo.cs rename to com.unity.ml-agents/Tests/Runtime/Sensor/AssemblyInfo.cs diff --git a/com.unity.ml-agents/Tests/Runtime/Sensors/AssemblyInfo.cs.meta b/com.unity.ml-agents/Tests/Runtime/Sensor/AssemblyInfo.cs.meta similarity index 100% rename from com.unity.ml-agents/Tests/Runtime/Sensors/AssemblyInfo.cs.meta rename to com.unity.ml-agents/Tests/Runtime/Sensor/AssemblyInfo.cs.meta diff --git a/com.unity.ml-agents/Tests/Runtime/Sensors/CountingGridSensorTests.cs b/com.unity.ml-agents/Tests/Runtime/Sensor/CountingGridSensorTests.cs similarity index 99% rename from com.unity.ml-agents/Tests/Runtime/Sensors/CountingGridSensorTests.cs rename to com.unity.ml-agents/Tests/Runtime/Sensor/CountingGridSensorTests.cs index c7fa82d9b6..094a9bccbe 100644 --- a/com.unity.ml-agents/Tests/Runtime/Sensors/CountingGridSensorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Sensor/CountingGridSensorTests.cs @@ -7,7 +7,7 @@ using Unity.MLAgents.Sensors; using Object = UnityEngine.Object; -namespace Unity.MLAgents.Tests.Sensors +namespace Unity.MLAgents.Tests { public class CountingGridSensorTests { diff --git a/com.unity.ml-agents/Tests/Runtime/Sensors/CountingGridSensorTests.cs.meta b/com.unity.ml-agents/Tests/Runtime/Sensor/CountingGridSensorTests.cs.meta similarity index 100% rename from com.unity.ml-agents/Tests/Runtime/Sensors/CountingGridSensorTests.cs.meta rename to com.unity.ml-agents/Tests/Runtime/Sensor/CountingGridSensorTests.cs.meta diff --git a/com.unity.ml-agents/Tests/Runtime/Sensors/PoseExtractorTests.cs b/com.unity.ml-agents/Tests/Runtime/Sensor/PoseExtractorTests.cs similarity index 99% rename from com.unity.ml-agents/Tests/Runtime/Sensors/PoseExtractorTests.cs rename to com.unity.ml-agents/Tests/Runtime/Sensor/PoseExtractorTests.cs index a52ee8bbcd..25f0b05f95 100644 --- a/com.unity.ml-agents/Tests/Runtime/Sensors/PoseExtractorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Sensor/PoseExtractorTests.cs @@ -3,7 +3,7 @@ using NUnit.Framework; using Unity.MLAgents.Sensors; -namespace Unity.MLAgents.Tests.Sensors +namespace Unity.MLAgents.Tests { public class PoseExtractorTests { diff --git a/com.unity.ml-agents/Tests/Runtime/Sensors/PoseExtractorTests.cs.meta b/com.unity.ml-agents/Tests/Runtime/Sensor/PoseExtractorTests.cs.meta similarity index 100% rename from com.unity.ml-agents/Tests/Runtime/Sensors/PoseExtractorTests.cs.meta rename to com.unity.ml-agents/Tests/Runtime/Sensor/PoseExtractorTests.cs.meta diff --git a/com.unity.ml-agents/Tests/Runtime/Sensors/RigidBodyPoseExtractorTests.cs b/com.unity.ml-agents/Tests/Runtime/Sensor/RigidBodyPoseExtractorTests.cs similarity index 99% rename from com.unity.ml-agents/Tests/Runtime/Sensors/RigidBodyPoseExtractorTests.cs rename to com.unity.ml-agents/Tests/Runtime/Sensor/RigidBodyPoseExtractorTests.cs index bc4c1662bf..ec5073affb 100644 --- a/com.unity.ml-agents/Tests/Runtime/Sensors/RigidBodyPoseExtractorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Sensor/RigidBodyPoseExtractorTests.cs @@ -2,7 +2,7 @@ using NUnit.Framework; using Unity.MLAgents.Sensors; -namespace Unity.MLAgents.Tests.Sensors +namespace Unity.MLAgents.Tests { public class RigidBodyPoseExtractorTests { diff --git a/com.unity.ml-agents/Tests/Runtime/Sensors/RigidBodyPoseExtractorTests.cs.meta b/com.unity.ml-agents/Tests/Runtime/Sensor/RigidBodyPoseExtractorTests.cs.meta similarity index 100% rename from com.unity.ml-agents/Tests/Runtime/Sensors/RigidBodyPoseExtractorTests.cs.meta rename to com.unity.ml-agents/Tests/Runtime/Sensor/RigidBodyPoseExtractorTests.cs.meta diff --git a/com.unity.ml-agents/Tests/Runtime/Sensors/RigidBodySensorTests.cs b/com.unity.ml-agents/Tests/Runtime/Sensor/RigidBodySensorTests.cs similarity index 88% rename from com.unity.ml-agents/Tests/Runtime/Sensors/RigidBodySensorTests.cs rename to com.unity.ml-agents/Tests/Runtime/Sensor/RigidBodySensorTests.cs index 1dac1c41b8..9701ea2025 100644 --- a/com.unity.ml-agents/Tests/Runtime/Sensors/RigidBodySensorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Sensor/RigidBodySensorTests.cs @@ -2,25 +2,8 @@ using NUnit.Framework; using Unity.MLAgents.Sensors; -namespace Unity.MLAgents.Tests.Sensors +namespace Unity.MLAgents.Tests { - public static class SensorTestHelper - { - public static void CompareObservation(ISensor sensor, float[] expected) - { - string errorMessage; - bool isOk = SensorHelper.CompareObservation(sensor, expected, out errorMessage); - Assert.IsTrue(isOk, errorMessage); - } - - public static void CompareObservation(ISensor sensor, float[,,] expected) - { - string errorMessage; - bool isOk = SensorHelper.CompareObservation(sensor, expected, out errorMessage); - Assert.IsTrue(isOk, errorMessage); - } - } - public class RigidBodySensorTests { [Test] diff --git a/com.unity.ml-agents/Tests/Runtime/Sensors/RigidBodySensorTests.cs.meta b/com.unity.ml-agents/Tests/Runtime/Sensor/RigidBodySensorTests.cs.meta similarity index 100% rename from com.unity.ml-agents/Tests/Runtime/Sensors/RigidBodySensorTests.cs.meta rename to com.unity.ml-agents/Tests/Runtime/Sensor/RigidBodySensorTests.cs.meta diff --git a/com.unity.ml-agents/Tests/Runtime/Sensors.meta b/com.unity.ml-agents/Tests/Runtime/Sensors.meta deleted file mode 100644 index b3ae6c4f70..0000000000 --- a/com.unity.ml-agents/Tests/Runtime/Sensors.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 88803e617d2d429aa4838bdaaeb64bac -timeCreated: 1616140923 \ No newline at end of file diff --git a/com.unity.ml-agents/Tests/Runtime/Unity.ML-Agents.Runtime.Tests.asmdef b/com.unity.ml-agents/Tests/Runtime/Unity.ML-Agents.Runtime.Tests.asmdef index ca7211d376..6f8e4f2008 100644 --- a/com.unity.ml-agents/Tests/Runtime/Unity.ML-Agents.Runtime.Tests.asmdef +++ b/com.unity.ml-agents/Tests/Runtime/Unity.ML-Agents.Runtime.Tests.asmdef @@ -7,7 +7,9 @@ "Unity.ML-Agents.Editor", "UnityEngine.TestRunner", "UnityEditor.TestRunner", - "Unity.InferenceEngine" + "Unity.InferenceEngine", + "Unity.InputSystem", + "Unity.InputSystem.TestFramework" ], "includePlatforms": [], "excludePlatforms": [], @@ -34,6 +36,16 @@ "name": "com.unity.modules.physics2d", "expression": "1.0.0", "define": "MLA_UNITY_PHYSICS2D_MODULE" + }, + { + "name": "com.unity.inputsystem", + "expression": "1.1.0", + "define": "MLA_INPUT_SYSTEM" + }, + { + "name": "com.unity.inputsystem", + "expression": "1.1.0", + "define": "MLA_INPUT_TESTS" } ], "noEngineReferences": false From 3bce3bdaa523bd44c8b4d1ee4a6e51159c189ba9 Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Tue, 22 Jul 2025 15:46:45 -0400 Subject: [PATCH 03/29] Remove the duplicate condition --- .yamato/com.unity.ml-agents-coverage.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.yamato/com.unity.ml-agents-coverage.yml b/.yamato/com.unity.ml-agents-coverage.yml index 769bedd787..e47b210929 100644 --- a/.yamato/com.unity.ml-agents-coverage.yml +++ b/.yamato/com.unity.ml-agents-coverage.yml @@ -33,7 +33,6 @@ test_coverage_{{ package.name }}_{{ platform.name }}_{{ editor.version }}_{{ edi NOT pull_request.draft AND (pull_request.changes.any match "com.unity.ml-agents/**" OR pull_request.changes.any match " {{ editor.testProject }}/**" OR - pull_request.changes.any match "com.unity.ml-agents/**" OR pull_request.changes.any match ".yamato/com.unity.ml-agents-coverage.yml") {% endif %} {% endfor %} From 1f974576feee54fb4f834927d695eb5dd5408102 Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Tue, 22 Jul 2025 15:50:43 -0400 Subject: [PATCH 04/29] Remove the duplicate condition --- .yamato/compressed-sensor-test.yml | 1 - .yamato/training-int-tests.yml | 1 - 2 files changed, 2 deletions(-) diff --git a/.yamato/compressed-sensor-test.yml b/.yamato/compressed-sensor-test.yml index a334ec80aa..efc908e4e6 100644 --- a/.yamato/compressed-sensor-test.yml +++ b/.yamato/compressed-sensor-test.yml @@ -28,7 +28,6 @@ test_compressed_obs_{{ editor.version }}_{{ editor.extra_test }}: pull_request.target match "release.+") AND NOT pull_request.draft AND (pull_request.changes.any match "com.unity.ml-agents/**" OR - pull_request.changes.any match "com.unity.ml-agents/**" OR pull_request.changes.any match "Project/**" OR pull_request.changes.any match "ml-agents/tests/yamato/**" OR pull_request.changes.any match "ml-agents-envs/**" OR diff --git a/.yamato/training-int-tests.yml b/.yamato/training-int-tests.yml index 32a3b21387..35161cdef6 100644 --- a/.yamato/training-int-tests.yml +++ b/.yamato/training-int-tests.yml @@ -25,7 +25,6 @@ test_linux_training_int_{{ editor.version }}_{{ editor.extra_test }}: pull_request.target match "release.+") AND NOT pull_request.draft AND (pull_request.changes.any match "com.unity.ml-agents/**" OR - pull_request.changes.any match "com.unity.ml-agents/**" OR pull_request.changes.any match "Project/**" OR pull_request.changes.any match "ml-agents/**" OR pull_request.changes.any match "ml-agents-envs/**" OR From 6391a896cfd26078d5c744e633413c39b328115b Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Tue, 22 Jul 2025 16:01:00 -0400 Subject: [PATCH 05/29] Remove duplicate PhysicsMaterial --- Project/ProjectSettings/SceneTemplateSettings.json | 5 ----- 1 file changed, 5 deletions(-) diff --git a/Project/ProjectSettings/SceneTemplateSettings.json b/Project/ProjectSettings/SceneTemplateSettings.json index 1edced2aac..5e97f8393e 100644 --- a/Project/ProjectSettings/SceneTemplateSettings.json +++ b/Project/ProjectSettings/SceneTemplateSettings.json @@ -61,11 +61,6 @@ "type": "UnityEngine.PhysicMaterial", "defaultInstantiationMode": 0 }, - { - "userAdded": false, - "type": "UnityEngine.PhysicsMaterial", - "defaultInstantiationMode": 0 - }, { "userAdded": false, "type": "UnityEngine.PhysicsMaterial2D", From da5d781202a61b995cf9f618be994c833ea8e4ec Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Tue, 22 Jul 2025 17:23:52 -0400 Subject: [PATCH 06/29] Remove redundant import statements --- .../Runtime/Sensors/ArticulationBodyJointExtractor.cs | 1 - .../Runtime/Sensors/ArticulationBodySensorComponent.cs | 1 - com.unity.ml-agents/Runtime/Sensors/CountingGridSensor.cs | 1 - com.unity.ml-agents/Runtime/Sensors/IJointExtractor.cs | 4 ---- com.unity.ml-agents/Runtime/Sensors/PhysicsBodySensor.cs | 1 - com.unity.ml-agents/Runtime/Sensors/PhysicsSensorSettings.cs | 1 - .../Runtime/Sensors/RigidBodyJointExtractor.cs | 1 - .../Runtime/Sensors/RigidBodySensorComponent.cs | 1 - 8 files changed, 11 deletions(-) diff --git a/com.unity.ml-agents/Runtime/Sensors/ArticulationBodyJointExtractor.cs b/com.unity.ml-agents/Runtime/Sensors/ArticulationBodyJointExtractor.cs index feac4d0fe4..e14881871b 100644 --- a/com.unity.ml-agents/Runtime/Sensors/ArticulationBodyJointExtractor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/ArticulationBodyJointExtractor.cs @@ -2,7 +2,6 @@ using System.Collections.Generic; using UnityEngine; -using Unity.MLAgents.Sensors; namespace Unity.MLAgents.Sensors { diff --git a/com.unity.ml-agents/Runtime/Sensors/ArticulationBodySensorComponent.cs b/com.unity.ml-agents/Runtime/Sensors/ArticulationBodySensorComponent.cs index c378c3016c..e8bdeec0c5 100644 --- a/com.unity.ml-agents/Runtime/Sensors/ArticulationBodySensorComponent.cs +++ b/com.unity.ml-agents/Runtime/Sensors/ArticulationBodySensorComponent.cs @@ -1,6 +1,5 @@ #if UNITY_2020_1_OR_NEWER using UnityEngine; -using Unity.MLAgents.Sensors; namespace Unity.MLAgents.Sensors { diff --git a/com.unity.ml-agents/Runtime/Sensors/CountingGridSensor.cs b/com.unity.ml-agents/Runtime/Sensors/CountingGridSensor.cs index 9f86ff6f6a..193579e70a 100644 --- a/com.unity.ml-agents/Runtime/Sensors/CountingGridSensor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/CountingGridSensor.cs @@ -1,5 +1,4 @@ using UnityEngine; -using Unity.MLAgents.Sensors; namespace Unity.MLAgents.Sensors { diff --git a/com.unity.ml-agents/Runtime/Sensors/IJointExtractor.cs b/com.unity.ml-agents/Runtime/Sensors/IJointExtractor.cs index 27ff730053..31c1fd9ca3 100644 --- a/com.unity.ml-agents/Runtime/Sensors/IJointExtractor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/IJointExtractor.cs @@ -1,7 +1,3 @@ -using Unity.MLAgents.Sensors; - -using System.Collections.Generic; - namespace Unity.MLAgents.Sensors { /// diff --git a/com.unity.ml-agents/Runtime/Sensors/PhysicsBodySensor.cs b/com.unity.ml-agents/Runtime/Sensors/PhysicsBodySensor.cs index ce1671a3ab..187f2442a4 100644 --- a/com.unity.ml-agents/Runtime/Sensors/PhysicsBodySensor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/PhysicsBodySensor.cs @@ -2,7 +2,6 @@ #if UNITY_2020_1_OR_NEWER using UnityEngine; #endif -using Unity.MLAgents.Sensors; namespace Unity.MLAgents.Sensors { diff --git a/com.unity.ml-agents/Runtime/Sensors/PhysicsSensorSettings.cs b/com.unity.ml-agents/Runtime/Sensors/PhysicsSensorSettings.cs index 4fb7416ef3..aed0c9c81d 100644 --- a/com.unity.ml-agents/Runtime/Sensors/PhysicsSensorSettings.cs +++ b/com.unity.ml-agents/Runtime/Sensors/PhysicsSensorSettings.cs @@ -1,5 +1,4 @@ using System; -using Unity.MLAgents.Sensors; namespace Unity.MLAgents.Sensors { diff --git a/com.unity.ml-agents/Runtime/Sensors/RigidBodyJointExtractor.cs b/com.unity.ml-agents/Runtime/Sensors/RigidBodyJointExtractor.cs index 30ba5f6182..fb4cc56bea 100644 --- a/com.unity.ml-agents/Runtime/Sensors/RigidBodyJointExtractor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/RigidBodyJointExtractor.cs @@ -1,5 +1,4 @@ using UnityEngine; -using Unity.MLAgents.Sensors; namespace Unity.MLAgents.Sensors { diff --git a/com.unity.ml-agents/Runtime/Sensors/RigidBodySensorComponent.cs b/com.unity.ml-agents/Runtime/Sensors/RigidBodySensorComponent.cs index 667efbbf6c..4ad0255f1f 100644 --- a/com.unity.ml-agents/Runtime/Sensors/RigidBodySensorComponent.cs +++ b/com.unity.ml-agents/Runtime/Sensors/RigidBodySensorComponent.cs @@ -1,6 +1,5 @@ using System.Collections.Generic; using UnityEngine; -using Unity.MLAgents.Sensors; namespace Unity.MLAgents.Sensors { From befebd390d990b7a46cbdd583b2a8bdd17d897c7 Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Tue, 22 Jul 2025 18:02:39 -0400 Subject: [PATCH 07/29] Remove Extensions meta file --- com.unity.ml-agents/Editor/Extensions.meta | 8 -------- 1 file changed, 8 deletions(-) delete mode 100644 com.unity.ml-agents/Editor/Extensions.meta diff --git a/com.unity.ml-agents/Editor/Extensions.meta b/com.unity.ml-agents/Editor/Extensions.meta deleted file mode 100644 index 1c9024020c..0000000000 --- a/com.unity.ml-agents/Editor/Extensions.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 8c10acdaf5a0c4b008bc5fd7350a15a2 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: From 886f8814b950aeefaa6061737ffade75a758fdeb Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Tue, 22 Jul 2025 18:08:13 -0400 Subject: [PATCH 08/29] Black reformatting --- utils/validate_versions.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/utils/validate_versions.py b/utils/validate_versions.py index d953d7fe0a..069f2db93b 100755 --- a/utils/validate_versions.py +++ b/utils/validate_versions.py @@ -83,7 +83,9 @@ def set_version( # removed exp.1 tag from version strings since MLA package is a supported package again # package_version = f"{csharp_version}-exp.1" package_version = f"{csharp_version}" - print(f"Setting package version to {package_version} in {MLAGENTS_PACKAGE_JSON_PATH}") + print( + f"Setting package version to {package_version} in {MLAGENTS_PACKAGE_JSON_PATH}" + ) set_package_version(package_version) print(f"Setting package version to {package_version} in {ACADEMY_PATH}") set_academy_version_string(package_version) From 9d47fe9faed19c98623a275b71ca166e5c0ccb99 Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Wed, 23 Jul 2025 16:03:09 -0400 Subject: [PATCH 09/29] Remove duplicate entries --- .../Runtime/Sensor/Unity.ML-Agents.Runtime.Sensor.Tests.asmdef | 1 - 1 file changed, 1 deletion(-) diff --git a/com.unity.ml-agents/Tests/Runtime/Sensor/Unity.ML-Agents.Runtime.Sensor.Tests.asmdef b/com.unity.ml-agents/Tests/Runtime/Sensor/Unity.ML-Agents.Runtime.Sensor.Tests.asmdef index ed2c2083f7..2b05d73cb9 100644 --- a/com.unity.ml-agents/Tests/Runtime/Sensor/Unity.ML-Agents.Runtime.Sensor.Tests.asmdef +++ b/com.unity.ml-agents/Tests/Runtime/Sensor/Unity.ML-Agents.Runtime.Sensor.Tests.asmdef @@ -21,7 +21,6 @@ ], "autoReferenced": false, "defineConstraints": [ - "UNITY_INCLUDE_TESTS", "UNITY_INCLUDE_TESTS" ], "versionDefines": [ From 6dd155947eaedb7fdad41630a6624cabb05c3a3d Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Wed, 23 Jul 2025 16:24:44 -0400 Subject: [PATCH 10/29] Move Runtime Input tests to a separate assembly --- .../SceneTemplateSettings.json | 5 +++ .../Adaptors/ButtonInputActionAdaptorTests.cs | 2 +- .../Adaptors/DoubleInputActionAdaptorTests.cs | 2 +- .../Adaptors/FloatInputActionAdapatorTests.cs | 2 +- .../IntegerInputActionAdaptorTests.cs | 2 +- .../Vector2InputActionAdaptorTests.cs | 2 +- .../Runtime/Input/InputActionActuatorTests.cs | 2 +- .../Input/InputActuatorComponentTests.cs | 2 +- ...Unity.ML-Agents.Runtime.Input.Tests.asmdef | 37 +++++++++++++++++++ ....ML-Agents.Runtime.Input.Tests.asmdef.meta | 7 ++++ 10 files changed, 56 insertions(+), 7 deletions(-) create mode 100644 com.unity.ml-agents/Tests/Runtime/Input/Unity.ML-Agents.Runtime.Input.Tests.asmdef create mode 100644 com.unity.ml-agents/Tests/Runtime/Input/Unity.ML-Agents.Runtime.Input.Tests.asmdef.meta diff --git a/Project/ProjectSettings/SceneTemplateSettings.json b/Project/ProjectSettings/SceneTemplateSettings.json index 5e97f8393e..1edced2aac 100644 --- a/Project/ProjectSettings/SceneTemplateSettings.json +++ b/Project/ProjectSettings/SceneTemplateSettings.json @@ -61,6 +61,11 @@ "type": "UnityEngine.PhysicMaterial", "defaultInstantiationMode": 0 }, + { + "userAdded": false, + "type": "UnityEngine.PhysicsMaterial", + "defaultInstantiationMode": 0 + }, { "userAdded": false, "type": "UnityEngine.PhysicsMaterial2D", diff --git a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs index a307f30fcc..46684e83de 100644 --- a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs @@ -4,7 +4,7 @@ using UnityEngine; using UnityEngine.InputSystem; -namespace Unity.MLAgents.Tests.Actuators +namespace Unity.MLAgents.Tests.Input { public class ButtonInputActionAdaptorTests : InputTestFixture { diff --git a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs index b7f8b02381..225eb1217a 100644 --- a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs @@ -4,7 +4,7 @@ using UnityEngine; using UnityEngine.InputSystem; -namespace Unity.MLAgents.Tests.Actuators +namespace Unity.MLAgents.Tests.Input { public class DoubleInputActionAdaptorTests : InputTestFixture { diff --git a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs index b09ef0efad..7b82726d6b 100644 --- a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs @@ -4,7 +4,7 @@ using UnityEngine; using UnityEngine.InputSystem; -namespace Unity.MLAgents.Tests.Actuators +namespace Unity.MLAgents.Tests.Input { public class FloatInputActionAdaptorTests : InputTestFixture { diff --git a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs index c50642e55b..4a13cb6847 100644 --- a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs @@ -3,7 +3,7 @@ using Unity.MLAgents.Actuators; using UnityEngine.InputSystem; -namespace Unity.MLAgents.Tests.Actuators +namespace Unity.MLAgents.Tests.Input { public class IntegerInputActionAdaptorTests : InputTestFixture { diff --git a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs index cb6a57cea7..00dc0e04b9 100644 --- a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs @@ -4,7 +4,7 @@ using UnityEngine; using UnityEngine.InputSystem; -namespace Unity.MLAgents.Tests.Actuators +namespace Unity.MLAgents.Tests.Input { public class Vector2InputActionAdaptorTests : InputTestFixture { diff --git a/com.unity.ml-agents/Tests/Runtime/Input/InputActionActuatorTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/InputActionActuatorTests.cs index 7ada6fa3e1..2785852670 100644 --- a/com.unity.ml-agents/Tests/Runtime/Input/InputActionActuatorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/InputActionActuatorTests.cs @@ -7,7 +7,7 @@ using UnityEngine.InputSystem; using UnityEngine.InputSystem.LowLevel; -namespace Unity.MLAgents.Tests.Actuators +namespace Unity.MLAgents.Tests.Input { class TestAdaptor : IRLActionInputAdaptor { diff --git a/com.unity.ml-agents/Tests/Runtime/Input/InputActuatorComponentTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/InputActuatorComponentTests.cs index 18caa03823..a5e114a7f5 100644 --- a/com.unity.ml-agents/Tests/Runtime/Input/InputActuatorComponentTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/InputActuatorComponentTests.cs @@ -6,7 +6,7 @@ using UnityEngine; using UnityEngine.InputSystem; -namespace Unity.MLAgents.Tests.Actuators +namespace Unity.MLAgents.Tests.Input { class TestProvider : MonoBehaviour, IInputActionAssetProvider { diff --git a/com.unity.ml-agents/Tests/Runtime/Input/Unity.ML-Agents.Runtime.Input.Tests.asmdef b/com.unity.ml-agents/Tests/Runtime/Input/Unity.ML-Agents.Runtime.Input.Tests.asmdef new file mode 100644 index 0000000000..c3f849a8d5 --- /dev/null +++ b/com.unity.ml-agents/Tests/Runtime/Input/Unity.ML-Agents.Runtime.Input.Tests.asmdef @@ -0,0 +1,37 @@ +{ + "name": "Unity.ML-Agents.Runtime.Input.Tests", + "rootNamespace": "", + "references": [ + "Unity.ML-Agents", + "Unity.ML-Agents.CommunicatorObjects", + "UnityEngine.TestRunner", + "UnityEditor.TestRunner", + "Unity.InferenceEngine", + "Unity.InputSystem", + "Unity.InputSystem.TestFramework" + ], + "includePlatforms": [], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": true, + "precompiledReferences": [ + "nunit.framework.dll" + ], + "autoReferenced": false, + "defineConstraints": [ + "UNITY_INCLUDE_TESTS" + ], + "versionDefines": [ + { + "name": "com.unity.inputsystem", + "expression": "1.1.0", + "define": "MLA_INPUT_SYSTEM" + }, + { + "name": "com.unity.inputsystem", + "expression": "1.1.0", + "define": "MLA_INPUT_TESTS" + } + ], + "noEngineReferences": false +} diff --git a/com.unity.ml-agents/Tests/Runtime/Input/Unity.ML-Agents.Runtime.Input.Tests.asmdef.meta b/com.unity.ml-agents/Tests/Runtime/Input/Unity.ML-Agents.Runtime.Input.Tests.asmdef.meta new file mode 100644 index 0000000000..39e5e65165 --- /dev/null +++ b/com.unity.ml-agents/Tests/Runtime/Input/Unity.ML-Agents.Runtime.Input.Tests.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 3b0ef87e2efab493280f7ea1fe55e061 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: From bfd96c18ecc065d587cd0060f0a0eccb7eca1c6f Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Wed, 23 Jul 2025 16:27:07 -0400 Subject: [PATCH 11/29] Move Runtime example test to Tests --- com.unity.ml-agents/Tests/Runtime/RuntimeExampleTest.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/com.unity.ml-agents/Tests/Runtime/RuntimeExampleTest.cs b/com.unity.ml-agents/Tests/Runtime/RuntimeExampleTest.cs index aeb03e2bd7..1f4df8f39d 100644 --- a/com.unity.ml-agents/Tests/Runtime/RuntimeExampleTest.cs +++ b/com.unity.ml-agents/Tests/Runtime/RuntimeExampleTest.cs @@ -1,6 +1,6 @@ using NUnit.Framework; -namespace Unity.MLAgents.Tests +namespace Tests { internal class RuntimeExampleTest { From fc1db4453d58b7104bae1d8e81d56f83637e0675 Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Wed, 23 Jul 2025 16:40:46 -0400 Subject: [PATCH 12/29] Update assembly --- com.unity.ml-agents/Runtime/AssemblyInfo.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/com.unity.ml-agents/Runtime/AssemblyInfo.cs b/com.unity.ml-agents/Runtime/AssemblyInfo.cs index 9e8482b8a7..4ac42d381b 100644 --- a/com.unity.ml-agents/Runtime/AssemblyInfo.cs +++ b/com.unity.ml-agents/Runtime/AssemblyInfo.cs @@ -5,6 +5,7 @@ [assembly: InternalsVisibleTo("Unity.ML-Agents.Runtime.Sensor.Tests")] [assembly: InternalsVisibleTo("Unity.ML-Agents.Runtime.Utils.Tests")] [assembly: InternalsVisibleTo("Unity.ML-Agents.Runtime.Tests")] +[assembly: InternalsVisibleTo("Unity.ML-Agents.Runtime.Input.Tests")] [assembly: InternalsVisibleTo("Unity.ML-Agents.Editor")] [assembly: InternalsVisibleTo("Unity.ML-Agents.Pro")] [assembly: InternalsVisibleTo("Unity.ML-Agents.Pro.Tests")] From 6cfad25d2a75b1b06631d6740515086677547b7c Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Wed, 23 Jul 2025 16:51:52 -0400 Subject: [PATCH 13/29] Update CHANGELOG.md --- com.unity.ml-agents/CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/com.unity.ml-agents/CHANGELOG.md b/com.unity.ml-agents/CHANGELOG.md index 876608252c..38e58ab2c6 100755 --- a/com.unity.ml-agents/CHANGELOG.md +++ b/com.unity.ml-agents/CHANGELOG.md @@ -11,6 +11,7 @@ and this project adheres to #### com.unity.ml-agents / com.unity.ml-agents.extensions (C#) - Upgraded to Inference Engine 2.2.1 (#6212) - The minimum supported Unity version was updated to 6000.0. (#6207) +- Merge the extension package com.unity.ml-agents.extensions to the main package com.unity.ml-agents. (#6227) ### Minor Changes #### ml-agents / ml-agents-envs From 53f2134ad7563e870f41ba87c0aa7b502e3c4a23 Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Thu, 24 Jul 2025 09:19:28 -0400 Subject: [PATCH 14/29] Update inputsystem version in test assembly --- .../Input/Unity.ML-Agents.Runtime.Input.Tests.asmdef | 4 ++-- .../Tests/Runtime/Unity.ML-Agents.Runtime.Tests.asmdef | 7 +++---- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/com.unity.ml-agents/Tests/Runtime/Input/Unity.ML-Agents.Runtime.Input.Tests.asmdef b/com.unity.ml-agents/Tests/Runtime/Input/Unity.ML-Agents.Runtime.Input.Tests.asmdef index c3f849a8d5..765ea9054f 100644 --- a/com.unity.ml-agents/Tests/Runtime/Input/Unity.ML-Agents.Runtime.Input.Tests.asmdef +++ b/com.unity.ml-agents/Tests/Runtime/Input/Unity.ML-Agents.Runtime.Input.Tests.asmdef @@ -24,12 +24,12 @@ "versionDefines": [ { "name": "com.unity.inputsystem", - "expression": "1.1.0", + "expression": "1.1.0-preview.3", "define": "MLA_INPUT_SYSTEM" }, { "name": "com.unity.inputsystem", - "expression": "1.1.0", + "expression": "1.1.0-preview.3", "define": "MLA_INPUT_TESTS" } ], diff --git a/com.unity.ml-agents/Tests/Runtime/Unity.ML-Agents.Runtime.Tests.asmdef b/com.unity.ml-agents/Tests/Runtime/Unity.ML-Agents.Runtime.Tests.asmdef index 6f8e4f2008..e50687b380 100644 --- a/com.unity.ml-agents/Tests/Runtime/Unity.ML-Agents.Runtime.Tests.asmdef +++ b/com.unity.ml-agents/Tests/Runtime/Unity.ML-Agents.Runtime.Tests.asmdef @@ -23,7 +23,6 @@ ], "autoReferenced": false, "defineConstraints": [ - "UNITY_INCLUDE_TESTS", "UNITY_INCLUDE_TESTS" ], "versionDefines": [ @@ -39,14 +38,14 @@ }, { "name": "com.unity.inputsystem", - "expression": "1.1.0", + "expression": "1.1.0-preview.3", "define": "MLA_INPUT_SYSTEM" }, { "name": "com.unity.inputsystem", - "expression": "1.1.0", + "expression": "1.1.0-preview.3", "define": "MLA_INPUT_TESTS" } ], "noEngineReferences": false -} \ No newline at end of file +} From 3dc5882c9444b9b4b4d031d0990d16bb8122dc47 Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Thu, 24 Jul 2025 09:38:58 -0400 Subject: [PATCH 15/29] Undo scene setting --- Project/ProjectSettings/SceneTemplateSettings.json | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/Project/ProjectSettings/SceneTemplateSettings.json b/Project/ProjectSettings/SceneTemplateSettings.json index 1edced2aac..dba4ef919d 100644 --- a/Project/ProjectSettings/SceneTemplateSettings.json +++ b/Project/ProjectSettings/SceneTemplateSettings.json @@ -61,11 +61,6 @@ "type": "UnityEngine.PhysicMaterial", "defaultInstantiationMode": 0 }, - { - "userAdded": false, - "type": "UnityEngine.PhysicsMaterial", - "defaultInstantiationMode": 0 - }, { "userAdded": false, "type": "UnityEngine.PhysicsMaterial2D", @@ -123,4 +118,4 @@ "defaultInstantiationMode": 1 }, "newSceneOverride": 0 -} \ No newline at end of file +} From f8f4c9fe1a954a5b13bd75aaac52241330b30f1d Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Thu, 24 Jul 2025 14:11:38 -0400 Subject: [PATCH 16/29] Update the doc --- com.unity.ml-agents/Documentation~/com.unity.ml-agents.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/com.unity.ml-agents/Documentation~/com.unity.ml-agents.md b/com.unity.ml-agents/Documentation~/com.unity.ml-agents.md index 0f389432ad..e25b5eb760 100644 --- a/com.unity.ml-agents/Documentation~/com.unity.ml-agents.md +++ b/com.unity.ml-agents/Documentation~/com.unity.ml-agents.md @@ -121,6 +121,8 @@ protected override void GetObjectData(GameObject detectedObject, int tagIndex, f The ML-Agents package integrates with the [Input System Package](https://docs.unity3d.com/Packages/com.unity.inputsystem@1.1/manual/QuickStartGuide.html) through the `InputActuatorComponent`. This component sets up an action space for your `Agent` based on an `InputActionAsset` that is referenced by the `IInputActionAssetProvider` interface, or the `PlayerInput` component that may be living on your player controlled `Agent`. This means that if you have code outside of your agent that handles input, you will not need to implement the Heuristic function in agent as well. The `InputActuatorComponent` will handle this for you. You can now train and run inference on `Agents` with an action space defined by an `InputActionAsset`. +Take a look at how we have implemented the C# code in the example Input Integration scene (located under Project/Assets/ML-Agents/Examples/PushBlockWithInput/). Once you have some familiarity, then the next step would be to add the InputActuatorComponent to your player Agent. The example we have implemented uses C# Events to send information from the Input System. + #### Getting Started with Input System Integration 1. Add the `com.unity.inputsystem` version 1.1.0-preview.3 or later to your project via the Package Manager window. 2. If you have already setup an InputActionAsset skip to Step 3, otherwise follow these sub steps: @@ -128,6 +130,7 @@ The ML-Agents package integrates with the [Input System Package](https://docs.un 2. Handle the events from the Input System where you normally would (i.e. a script external to your Agent class). 3. Add the InputSystemActuatorComponent to the GameObject that has the `PlayerInput` and `Agent` components attached. +Additionally, see below for additional technical specifications on the C# code for the InputActuatorComponent. #### Technical Specifications ##### `IInputActionsAssetProvider` Interface From 4856cf4f690f033ab53fb62a641b12a933969aeb Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Thu, 24 Jul 2025 14:23:01 -0400 Subject: [PATCH 17/29] Update the doc --- Project/ProjectSettings/SceneTemplateSettings.json | 7 ++++++- com.unity.ml-agents/Documentation~/com.unity.ml-agents.md | 6 ++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/Project/ProjectSettings/SceneTemplateSettings.json b/Project/ProjectSettings/SceneTemplateSettings.json index dba4ef919d..1edced2aac 100644 --- a/Project/ProjectSettings/SceneTemplateSettings.json +++ b/Project/ProjectSettings/SceneTemplateSettings.json @@ -61,6 +61,11 @@ "type": "UnityEngine.PhysicMaterial", "defaultInstantiationMode": 0 }, + { + "userAdded": false, + "type": "UnityEngine.PhysicsMaterial", + "defaultInstantiationMode": 0 + }, { "userAdded": false, "type": "UnityEngine.PhysicsMaterial2D", @@ -118,4 +123,4 @@ "defaultInstantiationMode": 1 }, "newSceneOverride": 0 -} +} \ No newline at end of file diff --git a/com.unity.ml-agents/Documentation~/com.unity.ml-agents.md b/com.unity.ml-agents/Documentation~/com.unity.ml-agents.md index e25b5eb760..959f5edb75 100644 --- a/com.unity.ml-agents/Documentation~/com.unity.ml-agents.md +++ b/com.unity.ml-agents/Documentation~/com.unity.ml-agents.md @@ -172,6 +172,12 @@ Currently the speed of the game physics can only be increased to 100x real-time. You can control the frequency of Academy stepping by calling `Academy.Instance.DisableAutomaticStepping()`, and then calling `Academy.Instance.EnvironmentStep()`. +### Input System Integration + + For the `InputActuatorComponent` + - Limited implementation of `InputControls` + - No way to customize the action space of the `InputActuatorComponent` + ## Additional Resources * [GitHub repository] From 01509805d9c21054fa185da186cfc3373effb628 Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Thu, 24 Jul 2025 14:26:39 -0400 Subject: [PATCH 18/29] Update scene setting --- Project/ProjectSettings/SceneTemplateSettings.json | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/Project/ProjectSettings/SceneTemplateSettings.json b/Project/ProjectSettings/SceneTemplateSettings.json index 1edced2aac..8030331355 100644 --- a/Project/ProjectSettings/SceneTemplateSettings.json +++ b/Project/ProjectSettings/SceneTemplateSettings.json @@ -56,11 +56,6 @@ "type": "UnityEditor.MonoScript", "defaultInstantiationMode": 1 }, - { - "userAdded": false, - "type": "UnityEngine.PhysicMaterial", - "defaultInstantiationMode": 0 - }, { "userAdded": false, "type": "UnityEngine.PhysicsMaterial", @@ -123,4 +118,4 @@ "defaultInstantiationMode": 1 }, "newSceneOverride": 0 -} \ No newline at end of file +} From a4ab99569eeed766043251ffa4b7e0f6eafb0a7d Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Thu, 24 Jul 2025 14:29:57 -0400 Subject: [PATCH 19/29] Update scene template --- Project/ProjectSettings/SceneTemplateSettings.json | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Project/ProjectSettings/SceneTemplateSettings.json b/Project/ProjectSettings/SceneTemplateSettings.json index 8030331355..874dd8d33f 100644 --- a/Project/ProjectSettings/SceneTemplateSettings.json +++ b/Project/ProjectSettings/SceneTemplateSettings.json @@ -56,6 +56,11 @@ "type": "UnityEditor.MonoScript", "defaultInstantiationMode": 1 }, + { + "userAdded": false, + "type": "UnityEngine.PhysicMaterial", + "defaultInstantiationMode": 0 + }, { "userAdded": false, "type": "UnityEngine.PhysicsMaterial", From 9e44c39950b824fdc43d6af6706a2b3ca0f3abc2 Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Thu, 24 Jul 2025 16:48:12 -0400 Subject: [PATCH 20/29] Update assembly --- .../Input/Unity.ML-Agents.Editor.Input.asmdef | 26 +++++++++++++++++++ .../Unity.ML-Agents.Editor.Input.asmdef.meta | 3 +++ .../Runtime/Unity.ML-Agents.asmdef | 4 +-- 3 files changed, 31 insertions(+), 2 deletions(-) create mode 100644 com.unity.ml-agents/Editor/Input/Unity.ML-Agents.Editor.Input.asmdef create mode 100644 com.unity.ml-agents/Editor/Input/Unity.ML-Agents.Editor.Input.asmdef.meta diff --git a/com.unity.ml-agents/Editor/Input/Unity.ML-Agents.Editor.Input.asmdef b/com.unity.ml-agents/Editor/Input/Unity.ML-Agents.Editor.Input.asmdef new file mode 100644 index 0000000000..1b4d7852fa --- /dev/null +++ b/com.unity.ml-agents/Editor/Input/Unity.ML-Agents.Editor.Input.asmdef @@ -0,0 +1,26 @@ +{ + "name": "Unity.ML-Agents.Editor.Input", + "references": [ + "Unity.ML-Agents", + "Unity.ML-Agents.Input", + "Unity.ML-Agents.Editor", + "Unity.InputSystem" + ], + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [], + "versionDefines": [ + { + "name": "com.unity.inputsystem", + "expression": "1.1.0-preview", + "define": "MLA_INPUT_SYSTEM" + } + ], + "noEngineReferences": false +} diff --git a/com.unity.ml-agents/Editor/Input/Unity.ML-Agents.Editor.Input.asmdef.meta b/com.unity.ml-agents/Editor/Input/Unity.ML-Agents.Editor.Input.asmdef.meta new file mode 100644 index 0000000000..4299cba31b --- /dev/null +++ b/com.unity.ml-agents/Editor/Input/Unity.ML-Agents.Editor.Input.asmdef.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: c154d8d72b03465e94ab9e1f67907c59 +timeCreated: 1753389680 \ No newline at end of file diff --git a/com.unity.ml-agents/Runtime/Unity.ML-Agents.asmdef b/com.unity.ml-agents/Runtime/Unity.ML-Agents.asmdef index c1d32e4574..be1c2f442c 100755 --- a/com.unity.ml-agents/Runtime/Unity.ML-Agents.asmdef +++ b/com.unity.ml-agents/Runtime/Unity.ML-Agents.asmdef @@ -36,9 +36,9 @@ }, { "name": "com.unity.inputsystem", - "expression": "1.1.0", + "expression": "1.3.0", "define": "MLA_INPUT_SYSTEM" } ], "noEngineReferences": false -} \ No newline at end of file +} From 827d56ea97310d016897364afe1c0c5edcab27da Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Thu, 24 Jul 2025 18:08:07 -0400 Subject: [PATCH 21/29] Change namespace to Unity.MLAgents.Input --- .../Scripts/PushBlockWithInputPlayerController.cs | 1 + .../Editor/Input/InputActuatorComponentEditor.cs | 1 + .../Runtime/Input/Adaptors/ButtonInputActionAdaptor.cs | 2 +- .../Runtime/Input/Adaptors/DoubleInputActionAdaptor.cs | 2 +- .../Runtime/Input/Adaptors/FloatInputActionAdaptor.cs | 2 +- .../Runtime/Input/Adaptors/IntegerInputActionAdaptor.cs | 2 +- .../Runtime/Input/Adaptors/Vector2InputActionAdaptor.cs | 2 +- com.unity.ml-agents/Runtime/Input/IInputActionAssetProvider.cs | 2 +- com.unity.ml-agents/Runtime/Input/IRLActionInputAdaptor.cs | 2 +- com.unity.ml-agents/Runtime/Input/InputActionActuator.cs | 2 +- com.unity.ml-agents/Runtime/Input/InputActuatorComponent.cs | 2 +- com.unity.ml-agents/Runtime/Input/InputActuatorEventContext.cs | 2 +- .../Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs | 1 + .../Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs | 1 + .../Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs | 1 + .../Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs | 1 + .../Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs | 1 + .../Tests/Runtime/Input/InputActionActuatorTests.cs | 1 + .../Tests/Runtime/Input/InputActuatorComponentTests.cs | 1 + 19 files changed, 19 insertions(+), 10 deletions(-) diff --git a/Project/Assets/ML-Agents/Examples/PushBlockWithInput/Scripts/PushBlockWithInputPlayerController.cs b/Project/Assets/ML-Agents/Examples/PushBlockWithInput/Scripts/PushBlockWithInputPlayerController.cs index 23422589aa..374590d970 100644 --- a/Project/Assets/ML-Agents/Examples/PushBlockWithInput/Scripts/PushBlockWithInputPlayerController.cs +++ b/Project/Assets/ML-Agents/Examples/PushBlockWithInput/Scripts/PushBlockWithInputPlayerController.cs @@ -1,5 +1,6 @@ #if MLA_INPUT_SYSTEM using Unity.MLAgents.Actuators; +using Unity.MLAgents.Input; using UnityEngine; using UnityEngine.InputSystem; diff --git a/com.unity.ml-agents/Editor/Input/InputActuatorComponentEditor.cs b/com.unity.ml-agents/Editor/Input/InputActuatorComponentEditor.cs index 875bff45d8..cf686a3af6 100644 --- a/com.unity.ml-agents/Editor/Input/InputActuatorComponentEditor.cs +++ b/com.unity.ml-agents/Editor/Input/InputActuatorComponentEditor.cs @@ -1,5 +1,6 @@ #if MLA_INPUT_SYSTEM using Unity.MLAgents.Actuators; +using Unity.MLAgents.Input; using UnityEditor; namespace Unity.MLAgents.Editor.Input diff --git a/com.unity.ml-agents/Runtime/Input/Adaptors/ButtonInputActionAdaptor.cs b/com.unity.ml-agents/Runtime/Input/Adaptors/ButtonInputActionAdaptor.cs index de3df2b200..0b92c48dc0 100644 --- a/com.unity.ml-agents/Runtime/Input/Adaptors/ButtonInputActionAdaptor.cs +++ b/com.unity.ml-agents/Runtime/Input/Adaptors/ButtonInputActionAdaptor.cs @@ -4,7 +4,7 @@ using UnityEngine.InputSystem.Controls; using UnityEngine.InputSystem.LowLevel; -namespace Unity.MLAgents.Actuators +namespace Unity.MLAgents.Input { /// /// Class that translates data between the a and diff --git a/com.unity.ml-agents/Runtime/Input/Adaptors/DoubleInputActionAdaptor.cs b/com.unity.ml-agents/Runtime/Input/Adaptors/DoubleInputActionAdaptor.cs index 99f764cf9e..24fa865fd8 100644 --- a/com.unity.ml-agents/Runtime/Input/Adaptors/DoubleInputActionAdaptor.cs +++ b/com.unity.ml-agents/Runtime/Input/Adaptors/DoubleInputActionAdaptor.cs @@ -4,7 +4,7 @@ using UnityEngine.InputSystem.Controls; using UnityEngine.InputSystem.LowLevel; -namespace Unity.MLAgents.Actuators +namespace Unity.MLAgents.Input { /// /// Translates data from a . diff --git a/com.unity.ml-agents/Runtime/Input/Adaptors/FloatInputActionAdaptor.cs b/com.unity.ml-agents/Runtime/Input/Adaptors/FloatInputActionAdaptor.cs index 8bbf6fe1aa..e757d13f0c 100644 --- a/com.unity.ml-agents/Runtime/Input/Adaptors/FloatInputActionAdaptor.cs +++ b/com.unity.ml-agents/Runtime/Input/Adaptors/FloatInputActionAdaptor.cs @@ -3,7 +3,7 @@ using UnityEngine.InputSystem; using UnityEngine.InputSystem.LowLevel; -namespace Unity.MLAgents.Actuators +namespace Unity.MLAgents.Input { /// /// Translates data from any control that extends from . diff --git a/com.unity.ml-agents/Runtime/Input/Adaptors/IntegerInputActionAdaptor.cs b/com.unity.ml-agents/Runtime/Input/Adaptors/IntegerInputActionAdaptor.cs index a30ba5a20a..f507dd0e7a 100644 --- a/com.unity.ml-agents/Runtime/Input/Adaptors/IntegerInputActionAdaptor.cs +++ b/com.unity.ml-agents/Runtime/Input/Adaptors/IntegerInputActionAdaptor.cs @@ -3,7 +3,7 @@ using UnityEngine.InputSystem; using UnityEngine.InputSystem.LowLevel; -namespace Unity.MLAgents.Actuators +namespace Unity.MLAgents.Input { /// /// Translates data from a . diff --git a/com.unity.ml-agents/Runtime/Input/Adaptors/Vector2InputActionAdaptor.cs b/com.unity.ml-agents/Runtime/Input/Adaptors/Vector2InputActionAdaptor.cs index abece63d7b..92a061aaa9 100644 --- a/com.unity.ml-agents/Runtime/Input/Adaptors/Vector2InputActionAdaptor.cs +++ b/com.unity.ml-agents/Runtime/Input/Adaptors/Vector2InputActionAdaptor.cs @@ -4,7 +4,7 @@ using UnityEngine.InputSystem; using UnityEngine.InputSystem.LowLevel; -namespace Unity.MLAgents.Actuators +namespace Unity.MLAgents.Input { /// /// Translates data from any control that extends from . diff --git a/com.unity.ml-agents/Runtime/Input/IInputActionAssetProvider.cs b/com.unity.ml-agents/Runtime/Input/IInputActionAssetProvider.cs index 26e3094f9c..d01b8a86a6 100644 --- a/com.unity.ml-agents/Runtime/Input/IInputActionAssetProvider.cs +++ b/com.unity.ml-agents/Runtime/Input/IInputActionAssetProvider.cs @@ -1,7 +1,7 @@ #if MLA_INPUT_SYSTEM using UnityEngine.InputSystem; -namespace Unity.MLAgents.Actuators +namespace Unity.MLAgents.Input { /// /// Implement this interface if you are listening to C# events from the generated C# class from the diff --git a/com.unity.ml-agents/Runtime/Input/IRLActionInputAdaptor.cs b/com.unity.ml-agents/Runtime/Input/IRLActionInputAdaptor.cs index 0506665a89..595a363b24 100644 --- a/com.unity.ml-agents/Runtime/Input/IRLActionInputAdaptor.cs +++ b/com.unity.ml-agents/Runtime/Input/IRLActionInputAdaptor.cs @@ -3,7 +3,7 @@ using UnityEngine.InputSystem; using UnityEngine.InputSystem.LowLevel; -namespace Unity.MLAgents.Actuators +namespace Unity.MLAgents.Input { /// /// Implement this interface in order to customize how information is translated s diff --git a/com.unity.ml-agents/Runtime/Input/InputActionActuator.cs b/com.unity.ml-agents/Runtime/Input/InputActionActuator.cs index c54bf9c0b5..436cee3d2e 100644 --- a/com.unity.ml-agents/Runtime/Input/InputActionActuator.cs +++ b/com.unity.ml-agents/Runtime/Input/InputActionActuator.cs @@ -5,7 +5,7 @@ using UnityEngine.InputSystem; using UnityEngine.Profiling; -namespace Unity.MLAgents.Actuators +namespace Unity.MLAgents.Input { /// /// This implementation of will send events from the ML-Agents training process, or from diff --git a/com.unity.ml-agents/Runtime/Input/InputActuatorComponent.cs b/com.unity.ml-agents/Runtime/Input/InputActuatorComponent.cs index 1cabca3509..39d9ade7a8 100644 --- a/com.unity.ml-agents/Runtime/Input/InputActuatorComponent.cs +++ b/com.unity.ml-agents/Runtime/Input/InputActuatorComponent.cs @@ -15,7 +15,7 @@ using UnityEditor; #endif -namespace Unity.MLAgents.Actuators +namespace Unity.MLAgents.Input { /// /// Component class that handles the parsing of the and translates that into diff --git a/com.unity.ml-agents/Runtime/Input/InputActuatorEventContext.cs b/com.unity.ml-agents/Runtime/Input/InputActuatorEventContext.cs index 80717a673c..9ad9260960 100644 --- a/com.unity.ml-agents/Runtime/Input/InputActuatorEventContext.cs +++ b/com.unity.ml-agents/Runtime/Input/InputActuatorEventContext.cs @@ -7,7 +7,7 @@ using UnityEditor; #endif -namespace Unity.MLAgents.Actuators +namespace Unity.MLAgents.Input { /// /// This interface is passed to InputActionActuators to allow them to write to InputEvents. diff --git a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs index 46684e83de..a8b30b786e 100644 --- a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/ButtonInputActionAdaptorTests.cs @@ -1,6 +1,7 @@ #if MLA_INPUT_TESTS using NUnit.Framework; using Unity.MLAgents.Actuators; +using Unity.MLAgents.Input; using UnityEngine; using UnityEngine.InputSystem; diff --git a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs index 225eb1217a..6e6dd46f95 100644 --- a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/DoubleInputActionAdaptorTests.cs @@ -1,6 +1,7 @@ #if MLA_INPUT_TESTS using NUnit.Framework; using Unity.MLAgents.Actuators; +using Unity.MLAgents.Input; using UnityEngine; using UnityEngine.InputSystem; diff --git a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs index 7b82726d6b..4a5a80fe49 100644 --- a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/FloatInputActionAdapatorTests.cs @@ -1,6 +1,7 @@ #if MLA_INPUT_TESTS using NUnit.Framework; using Unity.MLAgents.Actuators; +using Unity.MLAgents.Input; using UnityEngine; using UnityEngine.InputSystem; diff --git a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs index 4a13cb6847..a0e87f4c75 100644 --- a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/IntegerInputActionAdaptorTests.cs @@ -1,6 +1,7 @@ #if MLA_INPUT_TESTS using NUnit.Framework; using Unity.MLAgents.Actuators; +using Unity.MLAgents.Input; using UnityEngine.InputSystem; namespace Unity.MLAgents.Tests.Input diff --git a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs index 00dc0e04b9..136e415ff9 100644 --- a/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/Adaptors/Vector2InputActionAdaptorTests.cs @@ -1,6 +1,7 @@ #if MLA_INPUT_TESTS using NUnit.Framework; using Unity.MLAgents.Actuators; +using Unity.MLAgents.Input; using UnityEngine; using UnityEngine.InputSystem; diff --git a/com.unity.ml-agents/Tests/Runtime/Input/InputActionActuatorTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/InputActionActuatorTests.cs index 2785852670..e9ea3bd45e 100644 --- a/com.unity.ml-agents/Tests/Runtime/Input/InputActionActuatorTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/InputActionActuatorTests.cs @@ -1,6 +1,7 @@ #if MLA_INPUT_TESTS using NUnit.Framework; using Unity.MLAgents.Actuators; +using Unity.MLAgents.Input; using Unity.MLAgents.Policies; using Unity.InferenceEngine; using UnityEngine; diff --git a/com.unity.ml-agents/Tests/Runtime/Input/InputActuatorComponentTests.cs b/com.unity.ml-agents/Tests/Runtime/Input/InputActuatorComponentTests.cs index a5e114a7f5..6bdb6fc2f7 100644 --- a/com.unity.ml-agents/Tests/Runtime/Input/InputActuatorComponentTests.cs +++ b/com.unity.ml-agents/Tests/Runtime/Input/InputActuatorComponentTests.cs @@ -2,6 +2,7 @@ using System.Linq; using NUnit.Framework; using Unity.MLAgents.Actuators; +using Unity.MLAgents.Input; using Unity.MLAgents.Policies; using UnityEngine; using UnityEngine.InputSystem; From 15ff1bba8ee1696a2d07b3c6902585312cf9023c Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Thu, 24 Jul 2025 18:14:14 -0400 Subject: [PATCH 22/29] Remove redundant import --- com.unity.ml-agents/Editor/Input/InputActuatorComponentEditor.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/com.unity.ml-agents/Editor/Input/InputActuatorComponentEditor.cs b/com.unity.ml-agents/Editor/Input/InputActuatorComponentEditor.cs index cf686a3af6..9ddb131718 100644 --- a/com.unity.ml-agents/Editor/Input/InputActuatorComponentEditor.cs +++ b/com.unity.ml-agents/Editor/Input/InputActuatorComponentEditor.cs @@ -1,5 +1,4 @@ #if MLA_INPUT_SYSTEM -using Unity.MLAgents.Actuators; using Unity.MLAgents.Input; using UnityEditor; From 8ad46c749448cd496eb0406b90d105872d95aca3 Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Fri, 25 Jul 2025 10:44:08 -0400 Subject: [PATCH 23/29] Remove unnecessary condition --- .../Scripts/PushBlockWithInputPlayerController.cs | 3 --- 1 file changed, 3 deletions(-) diff --git a/Project/Assets/ML-Agents/Examples/PushBlockWithInput/Scripts/PushBlockWithInputPlayerController.cs b/Project/Assets/ML-Agents/Examples/PushBlockWithInput/Scripts/PushBlockWithInputPlayerController.cs index 374590d970..9a98a849c5 100644 --- a/Project/Assets/ML-Agents/Examples/PushBlockWithInput/Scripts/PushBlockWithInputPlayerController.cs +++ b/Project/Assets/ML-Agents/Examples/PushBlockWithInput/Scripts/PushBlockWithInputPlayerController.cs @@ -1,5 +1,3 @@ -#if MLA_INPUT_SYSTEM -using Unity.MLAgents.Actuators; using Unity.MLAgents.Input; using UnityEngine; using UnityEngine.InputSystem; @@ -114,4 +112,3 @@ static float CreateForwardVector(Vector2 move) return (m_PushBlockActions.asset, m_PushBlockActions); } } -#endif From b3c9106e7556c53f3f0408ee35e5c7baddb05ded Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Fri, 25 Jul 2025 13:05:15 -0400 Subject: [PATCH 24/29] Update assembly files --- com.unity.ml-agents/Runtime/AssemblyInfo.cs | 1 + .../Runtime/Input/AssemblyInfo.cs | 1 + .../Input/Unity.ML-Agents.Input.asmdef | 25 +++++++++++++++++++ .../Input/Unity.ML-Agents.Input.asmdef.meta | 7 ++++++ .../Runtime/Unity.ML-Agents.asmdef | 8 +----- ...Unity.ML-Agents.Runtime.Input.Tests.asmdef | 1 + .../Unity.ML-Agents.Runtime.Tests.asmdef | 14 +---------- 7 files changed, 37 insertions(+), 20 deletions(-) create mode 100644 com.unity.ml-agents/Runtime/Input/Unity.ML-Agents.Input.asmdef create mode 100644 com.unity.ml-agents/Runtime/Input/Unity.ML-Agents.Input.asmdef.meta diff --git a/com.unity.ml-agents/Runtime/AssemblyInfo.cs b/com.unity.ml-agents/Runtime/AssemblyInfo.cs index 4ac42d381b..0f19e37d7f 100644 --- a/com.unity.ml-agents/Runtime/AssemblyInfo.cs +++ b/com.unity.ml-agents/Runtime/AssemblyInfo.cs @@ -6,6 +6,7 @@ [assembly: InternalsVisibleTo("Unity.ML-Agents.Runtime.Utils.Tests")] [assembly: InternalsVisibleTo("Unity.ML-Agents.Runtime.Tests")] [assembly: InternalsVisibleTo("Unity.ML-Agents.Runtime.Input.Tests")] +[assembly: InternalsVisibleTo("Unity.ML-Agents.Input")] [assembly: InternalsVisibleTo("Unity.ML-Agents.Editor")] [assembly: InternalsVisibleTo("Unity.ML-Agents.Pro")] [assembly: InternalsVisibleTo("Unity.ML-Agents.Pro.Tests")] diff --git a/com.unity.ml-agents/Runtime/Input/AssemblyInfo.cs b/com.unity.ml-agents/Runtime/Input/AssemblyInfo.cs index c83f1d71ce..311008db41 100644 --- a/com.unity.ml-agents/Runtime/Input/AssemblyInfo.cs +++ b/com.unity.ml-agents/Runtime/Input/AssemblyInfo.cs @@ -1,3 +1,4 @@ using System.Runtime.CompilerServices; [assembly: InternalsVisibleTo("Unity.ML-Agents.Runtime.Tests")] +[assembly: InternalsVisibleTo("Unity.ML-Agents.Runtime.Input.Tests")] diff --git a/com.unity.ml-agents/Runtime/Input/Unity.ML-Agents.Input.asmdef b/com.unity.ml-agents/Runtime/Input/Unity.ML-Agents.Input.asmdef new file mode 100644 index 0000000000..c58b51e596 --- /dev/null +++ b/com.unity.ml-agents/Runtime/Input/Unity.ML-Agents.Input.asmdef @@ -0,0 +1,25 @@ +{ + "name": "Unity.ML-Agents.Input", + "rootNamespace": "", + "references": [ + "Unity.ML-Agents", + "Unity.InferenceEngine", + "Unity.ML-Agents.CommunicatorObjects", + "Unity.InputSystem" + ], + "includePlatforms": [], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [], + "versionDefines": [ + { + "name": "com.unity.inputsystem", + "expression": "1.3.0", + "define": "MLA_INPUT_SYSTEM" + } + ], + "noEngineReferences": false +} diff --git a/com.unity.ml-agents/Runtime/Input/Unity.ML-Agents.Input.asmdef.meta b/com.unity.ml-agents/Runtime/Input/Unity.ML-Agents.Input.asmdef.meta new file mode 100644 index 0000000000..c18dd6c365 --- /dev/null +++ b/com.unity.ml-agents/Runtime/Input/Unity.ML-Agents.Input.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 49852c668e604b83a3b4b39e4a7609ed +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/com.unity.ml-agents/Runtime/Unity.ML-Agents.asmdef b/com.unity.ml-agents/Runtime/Unity.ML-Agents.asmdef index be1c2f442c..5926d50e62 100755 --- a/com.unity.ml-agents/Runtime/Unity.ML-Agents.asmdef +++ b/com.unity.ml-agents/Runtime/Unity.ML-Agents.asmdef @@ -4,8 +4,7 @@ "references": [ "Unity.ML-Agents.CommunicatorObjects", "Unity.Mathematics", - "Unity.InferenceEngine", - "Unity.InputSystem" + "Unity.InferenceEngine" ], "includePlatforms": [], "excludePlatforms": [], @@ -33,11 +32,6 @@ "name": "com.unity.modules.physics2d", "expression": "1.0.0", "define": "MLA_UNITY_PHYSICS2D_MODULE" - }, - { - "name": "com.unity.inputsystem", - "expression": "1.3.0", - "define": "MLA_INPUT_SYSTEM" } ], "noEngineReferences": false diff --git a/com.unity.ml-agents/Tests/Runtime/Input/Unity.ML-Agents.Runtime.Input.Tests.asmdef b/com.unity.ml-agents/Tests/Runtime/Input/Unity.ML-Agents.Runtime.Input.Tests.asmdef index 765ea9054f..3d195d476c 100644 --- a/com.unity.ml-agents/Tests/Runtime/Input/Unity.ML-Agents.Runtime.Input.Tests.asmdef +++ b/com.unity.ml-agents/Tests/Runtime/Input/Unity.ML-Agents.Runtime.Input.Tests.asmdef @@ -3,6 +3,7 @@ "rootNamespace": "", "references": [ "Unity.ML-Agents", + "Unity.ML-Agents.Input", "Unity.ML-Agents.CommunicatorObjects", "UnityEngine.TestRunner", "UnityEditor.TestRunner", diff --git a/com.unity.ml-agents/Tests/Runtime/Unity.ML-Agents.Runtime.Tests.asmdef b/com.unity.ml-agents/Tests/Runtime/Unity.ML-Agents.Runtime.Tests.asmdef index e50687b380..7b8184317f 100644 --- a/com.unity.ml-agents/Tests/Runtime/Unity.ML-Agents.Runtime.Tests.asmdef +++ b/com.unity.ml-agents/Tests/Runtime/Unity.ML-Agents.Runtime.Tests.asmdef @@ -7,9 +7,7 @@ "Unity.ML-Agents.Editor", "UnityEngine.TestRunner", "UnityEditor.TestRunner", - "Unity.InferenceEngine", - "Unity.InputSystem", - "Unity.InputSystem.TestFramework" + "Unity.InferenceEngine" ], "includePlatforms": [], "excludePlatforms": [], @@ -35,16 +33,6 @@ "name": "com.unity.modules.physics2d", "expression": "1.0.0", "define": "MLA_UNITY_PHYSICS2D_MODULE" - }, - { - "name": "com.unity.inputsystem", - "expression": "1.1.0-preview.3", - "define": "MLA_INPUT_SYSTEM" - }, - { - "name": "com.unity.inputsystem", - "expression": "1.1.0-preview.3", - "define": "MLA_INPUT_TESTS" } ], "noEngineReferences": false From 34a5098d1b44b7ec6437250aff4ba1ab2c405410 Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Fri, 25 Jul 2025 13:29:21 -0400 Subject: [PATCH 25/29] Another update --- .../Runtime/Input/Unity.ML-Agents.Input.asmdef | 1 - .../Input/Unity.ML-Agents.Runtime.Input.Tests.asmdef | 12 +++--------- 2 files changed, 3 insertions(+), 10 deletions(-) diff --git a/com.unity.ml-agents/Runtime/Input/Unity.ML-Agents.Input.asmdef b/com.unity.ml-agents/Runtime/Input/Unity.ML-Agents.Input.asmdef index c58b51e596..ee0c03550e 100644 --- a/com.unity.ml-agents/Runtime/Input/Unity.ML-Agents.Input.asmdef +++ b/com.unity.ml-agents/Runtime/Input/Unity.ML-Agents.Input.asmdef @@ -4,7 +4,6 @@ "references": [ "Unity.ML-Agents", "Unity.InferenceEngine", - "Unity.ML-Agents.CommunicatorObjects", "Unity.InputSystem" ], "includePlatforms": [], diff --git a/com.unity.ml-agents/Tests/Runtime/Input/Unity.ML-Agents.Runtime.Input.Tests.asmdef b/com.unity.ml-agents/Tests/Runtime/Input/Unity.ML-Agents.Runtime.Input.Tests.asmdef index 3d195d476c..5b0af0f389 100644 --- a/com.unity.ml-agents/Tests/Runtime/Input/Unity.ML-Agents.Runtime.Input.Tests.asmdef +++ b/com.unity.ml-agents/Tests/Runtime/Input/Unity.ML-Agents.Runtime.Input.Tests.asmdef @@ -4,12 +4,11 @@ "references": [ "Unity.ML-Agents", "Unity.ML-Agents.Input", - "Unity.ML-Agents.CommunicatorObjects", + "Unity.InputSystem.TestFramework", "UnityEngine.TestRunner", "UnityEditor.TestRunner", - "Unity.InferenceEngine", "Unity.InputSystem", - "Unity.InputSystem.TestFramework" + "Unity.InferenceEngine" ], "includePlatforms": [], "excludePlatforms": [], @@ -18,16 +17,11 @@ "precompiledReferences": [ "nunit.framework.dll" ], - "autoReferenced": false, + "autoReferenced": true, "defineConstraints": [ "UNITY_INCLUDE_TESTS" ], "versionDefines": [ - { - "name": "com.unity.inputsystem", - "expression": "1.1.0-preview.3", - "define": "MLA_INPUT_SYSTEM" - }, { "name": "com.unity.inputsystem", "expression": "1.1.0-preview.3", From 1ce9848597ebba09a0ed4c3e1fdc7622df0e87bb Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Fri, 25 Jul 2025 14:24:39 -0400 Subject: [PATCH 26/29] Remove empty file --- com.unity.ml-agents/Editor/EditorExample.cs | 3 --- com.unity.ml-agents/Editor/EditorExample.cs.meta | 11 ----------- 2 files changed, 14 deletions(-) delete mode 100644 com.unity.ml-agents/Editor/EditorExample.cs delete mode 100644 com.unity.ml-agents/Editor/EditorExample.cs.meta diff --git a/com.unity.ml-agents/Editor/EditorExample.cs b/com.unity.ml-agents/Editor/EditorExample.cs deleted file mode 100644 index 6c8819dca0..0000000000 --- a/com.unity.ml-agents/Editor/EditorExample.cs +++ /dev/null @@ -1,3 +0,0 @@ -namespace Unity.MLAgents.Editor -{ -} diff --git a/com.unity.ml-agents/Editor/EditorExample.cs.meta b/com.unity.ml-agents/Editor/EditorExample.cs.meta deleted file mode 100644 index 5b9a890fa9..0000000000 --- a/com.unity.ml-agents/Editor/EditorExample.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 4d278d118acf74b1294c16f6a065b4ab -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: From 7bde1305fb719f4bc2da25403be917c3305b4c12 Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Tue, 29 Jul 2025 16:43:24 -0400 Subject: [PATCH 27/29] Add MovedFrom tags --- com.unity.ml-agents/Editor/Input/InputActuatorComponentEditor.cs | 1 + com.unity.ml-agents/Editor/RigidBodySensorComponentEditor.cs | 1 + .../Runtime/Input/Adaptors/ButtonInputActionAdaptor.cs | 1 + .../Runtime/Input/Adaptors/DoubleInputActionAdaptor.cs | 1 + .../Runtime/Input/Adaptors/FloatInputActionAdaptor.cs | 1 + .../Runtime/Input/Adaptors/IntegerInputActionAdaptor.cs | 1 + .../Runtime/Input/Adaptors/Vector2InputActionAdaptor.cs | 1 + com.unity.ml-agents/Runtime/Input/IInputActionAssetProvider.cs | 1 + com.unity.ml-agents/Runtime/Input/IRLActionInputAdaptor.cs | 1 + com.unity.ml-agents/Runtime/Input/InputActionActuator.cs | 1 + com.unity.ml-agents/Runtime/Input/InputActuatorComponent.cs | 1 + com.unity.ml-agents/Runtime/Input/InputActuatorEventContext.cs | 1 + .../Runtime/Sensors/ArticulationBodyJointExtractor.cs | 1 + .../Runtime/Sensors/ArticulationBodyPoseExtractor.cs | 1 + .../Runtime/Sensors/ArticulationBodySensorComponent.cs | 1 + com.unity.ml-agents/Runtime/Sensors/CountingGridSensor.cs | 1 + com.unity.ml-agents/Runtime/Sensors/IJointExtractor.cs | 1 + com.unity.ml-agents/Runtime/Sensors/PhysicsBodySensor.cs | 1 + com.unity.ml-agents/Runtime/Sensors/PhysicsSensorSettings.cs | 1 + com.unity.ml-agents/Runtime/Sensors/PoseExtractor.cs | 1 + com.unity.ml-agents/Runtime/Sensors/RigidBodyJointExtractor.cs | 1 + com.unity.ml-agents/Runtime/Sensors/RigidBodyPoseExtractor.cs | 1 + com.unity.ml-agents/Runtime/Sensors/RigidBodySensorComponent.cs | 1 + 23 files changed, 23 insertions(+) diff --git a/com.unity.ml-agents/Editor/Input/InputActuatorComponentEditor.cs b/com.unity.ml-agents/Editor/Input/InputActuatorComponentEditor.cs index 9ddb131718..f932dba9e7 100644 --- a/com.unity.ml-agents/Editor/Input/InputActuatorComponentEditor.cs +++ b/com.unity.ml-agents/Editor/Input/InputActuatorComponentEditor.cs @@ -5,6 +5,7 @@ namespace Unity.MLAgents.Editor.Input { [CustomEditor(typeof(InputActuatorComponent))] + [UnityEngine.Scripting.APIUpdating.MovedFrom("Unity.MLAgents.Extensions.Editor.Input")] internal class InputActuatorComponentEditor : UnityEditor.Editor { const string k_ActionSpecName = "m_ActionSpec"; diff --git a/com.unity.ml-agents/Editor/RigidBodySensorComponentEditor.cs b/com.unity.ml-agents/Editor/RigidBodySensorComponentEditor.cs index 05bc02d192..22de91977e 100644 --- a/com.unity.ml-agents/Editor/RigidBodySensorComponentEditor.cs +++ b/com.unity.ml-agents/Editor/RigidBodySensorComponentEditor.cs @@ -6,6 +6,7 @@ namespace Unity.MLAgents.Editor { [CustomEditor(typeof(RigidBodySensorComponent))] [CanEditMultipleObjects] + [UnityEngine.Scripting.APIUpdating.MovedFrom("Unity.MLAgents.Extensions.Editor")] internal class RigidBodySensorComponentEditor : UnityEditor.Editor { bool ShowHierarchy = true; diff --git a/com.unity.ml-agents/Runtime/Input/Adaptors/ButtonInputActionAdaptor.cs b/com.unity.ml-agents/Runtime/Input/Adaptors/ButtonInputActionAdaptor.cs index 0b92c48dc0..a3ba2206bb 100644 --- a/com.unity.ml-agents/Runtime/Input/Adaptors/ButtonInputActionAdaptor.cs +++ b/com.unity.ml-agents/Runtime/Input/Adaptors/ButtonInputActionAdaptor.cs @@ -10,6 +10,7 @@ namespace Unity.MLAgents.Input /// Class that translates data between the a and /// the ML-Agents object. /// + [UnityEngine.Scripting.APIUpdating.MovedFrom("Unity.MLAgents.Extensions.Input")] public class ButtonInputActionAdaptor : IRLActionInputAdaptor { /// diff --git a/com.unity.ml-agents/Runtime/Input/Adaptors/DoubleInputActionAdaptor.cs b/com.unity.ml-agents/Runtime/Input/Adaptors/DoubleInputActionAdaptor.cs index 24fa865fd8..d845850517 100644 --- a/com.unity.ml-agents/Runtime/Input/Adaptors/DoubleInputActionAdaptor.cs +++ b/com.unity.ml-agents/Runtime/Input/Adaptors/DoubleInputActionAdaptor.cs @@ -9,6 +9,7 @@ namespace Unity.MLAgents.Input /// /// Translates data from a . /// + [UnityEngine.Scripting.APIUpdating.MovedFrom("Unity.MLAgents.Extensions.Input")] public class DoubleInputActionAdaptor : IRLActionInputAdaptor { /// diff --git a/com.unity.ml-agents/Runtime/Input/Adaptors/FloatInputActionAdaptor.cs b/com.unity.ml-agents/Runtime/Input/Adaptors/FloatInputActionAdaptor.cs index e757d13f0c..32b9158aeb 100644 --- a/com.unity.ml-agents/Runtime/Input/Adaptors/FloatInputActionAdaptor.cs +++ b/com.unity.ml-agents/Runtime/Input/Adaptors/FloatInputActionAdaptor.cs @@ -8,6 +8,7 @@ namespace Unity.MLAgents.Input /// /// Translates data from any control that extends from . /// + [UnityEngine.Scripting.APIUpdating.MovedFrom("Unity.MLAgents.Extensions.Input")] public class FloatInputActionAdaptor : IRLActionInputAdaptor { /// diff --git a/com.unity.ml-agents/Runtime/Input/Adaptors/IntegerInputActionAdaptor.cs b/com.unity.ml-agents/Runtime/Input/Adaptors/IntegerInputActionAdaptor.cs index f507dd0e7a..75e60ea9d5 100644 --- a/com.unity.ml-agents/Runtime/Input/Adaptors/IntegerInputActionAdaptor.cs +++ b/com.unity.ml-agents/Runtime/Input/Adaptors/IntegerInputActionAdaptor.cs @@ -8,6 +8,7 @@ namespace Unity.MLAgents.Input /// /// Translates data from a . /// + [UnityEngine.Scripting.APIUpdating.MovedFrom("Unity.MLAgents.Extensions.Input")] public class IntegerInputActionAdaptor : IRLActionInputAdaptor { // TODO need to figure out how we can infer the branch size from here. diff --git a/com.unity.ml-agents/Runtime/Input/Adaptors/Vector2InputActionAdaptor.cs b/com.unity.ml-agents/Runtime/Input/Adaptors/Vector2InputActionAdaptor.cs index 92a061aaa9..72a8e91fe5 100644 --- a/com.unity.ml-agents/Runtime/Input/Adaptors/Vector2InputActionAdaptor.cs +++ b/com.unity.ml-agents/Runtime/Input/Adaptors/Vector2InputActionAdaptor.cs @@ -9,6 +9,7 @@ namespace Unity.MLAgents.Input /// /// Translates data from any control that extends from . /// + [UnityEngine.Scripting.APIUpdating.MovedFrom("Unity.MLAgents.Extensions.Input")] public class Vector2InputActionAdaptor : IRLActionInputAdaptor { /// diff --git a/com.unity.ml-agents/Runtime/Input/IInputActionAssetProvider.cs b/com.unity.ml-agents/Runtime/Input/IInputActionAssetProvider.cs index d01b8a86a6..68bc2dbc71 100644 --- a/com.unity.ml-agents/Runtime/Input/IInputActionAssetProvider.cs +++ b/com.unity.ml-agents/Runtime/Input/IInputActionAssetProvider.cs @@ -14,6 +14,7 @@ namespace Unity.MLAgents.Input /// they will need to share the same instance of the in order to get the simulated /// input. /// + [UnityEngine.Scripting.APIUpdating.MovedFrom("Unity.MLAgents.Extensions.Input")] public interface IInputActionAssetProvider { /// diff --git a/com.unity.ml-agents/Runtime/Input/IRLActionInputAdaptor.cs b/com.unity.ml-agents/Runtime/Input/IRLActionInputAdaptor.cs index 595a363b24..b6aa0d8af5 100644 --- a/com.unity.ml-agents/Runtime/Input/IRLActionInputAdaptor.cs +++ b/com.unity.ml-agents/Runtime/Input/IRLActionInputAdaptor.cs @@ -9,6 +9,7 @@ namespace Unity.MLAgents.Input /// Implement this interface in order to customize how information is translated s /// and . /// + [UnityEngine.Scripting.APIUpdating.MovedFrom("Unity.MLAgents.Extensions.Input")] public interface IRLActionInputAdaptor { /// diff --git a/com.unity.ml-agents/Runtime/Input/InputActionActuator.cs b/com.unity.ml-agents/Runtime/Input/InputActionActuator.cs index 436cee3d2e..12be1003ce 100644 --- a/com.unity.ml-agents/Runtime/Input/InputActionActuator.cs +++ b/com.unity.ml-agents/Runtime/Input/InputActionActuator.cs @@ -13,6 +13,7 @@ namespace Unity.MLAgents.Input /// 's indicate that the Agent is running in Heuristic Mode, /// this Actuator will write actions from the to the object. /// + [UnityEngine.Scripting.APIUpdating.MovedFrom("Unity.MLAgents.Extensions.Input")] public class InputActionActuator : IActuator, IBuiltInActuator { readonly BehaviorParameters m_BehaviorParameters; diff --git a/com.unity.ml-agents/Runtime/Input/InputActuatorComponent.cs b/com.unity.ml-agents/Runtime/Input/InputActuatorComponent.cs index 39d9ade7a8..1233ab8b64 100644 --- a/com.unity.ml-agents/Runtime/Input/InputActuatorComponent.cs +++ b/com.unity.ml-agents/Runtime/Input/InputActuatorComponent.cs @@ -23,6 +23,7 @@ namespace Unity.MLAgents.Input /// [RequireComponent(typeof(PlayerInput), typeof(IInputActionAssetProvider))] [AddComponentMenu("ML Agents/Input Actuator", (int)MenuGroup.Actuators)] + [UnityEngine.Scripting.APIUpdating.MovedFrom("Unity.MLAgents.Extensions.Input")] public class InputActuatorComponent : ActuatorComponent { InputActionAsset m_InputAsset; diff --git a/com.unity.ml-agents/Runtime/Input/InputActuatorEventContext.cs b/com.unity.ml-agents/Runtime/Input/InputActuatorEventContext.cs index 9ad9260960..577d333e13 100644 --- a/com.unity.ml-agents/Runtime/Input/InputActuatorEventContext.cs +++ b/com.unity.ml-agents/Runtime/Input/InputActuatorEventContext.cs @@ -14,6 +14,7 @@ namespace Unity.MLAgents.Input /// The way this interface should be used is to request the by calling /// then call before returning from /// + [UnityEngine.Scripting.APIUpdating.MovedFrom("Unity.MLAgents.Extensions.Input")] public class InputActuatorEventContext : IDisposable { /// diff --git a/com.unity.ml-agents/Runtime/Sensors/ArticulationBodyJointExtractor.cs b/com.unity.ml-agents/Runtime/Sensors/ArticulationBodyJointExtractor.cs index e14881871b..b3b8b7437f 100644 --- a/com.unity.ml-agents/Runtime/Sensors/ArticulationBodyJointExtractor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/ArticulationBodyJointExtractor.cs @@ -5,6 +5,7 @@ namespace Unity.MLAgents.Sensors { + [UnityEngine.Scripting.APIUpdating.MovedFrom("Unity.MLAgents.Extensions.Sensors")] public class ArticulationBodyJointExtractor : IJointExtractor { ArticulationBody m_Body; diff --git a/com.unity.ml-agents/Runtime/Sensors/ArticulationBodyPoseExtractor.cs b/com.unity.ml-agents/Runtime/Sensors/ArticulationBodyPoseExtractor.cs index 02b00ee178..6467948cab 100644 --- a/com.unity.ml-agents/Runtime/Sensors/ArticulationBodyPoseExtractor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/ArticulationBodyPoseExtractor.cs @@ -8,6 +8,7 @@ namespace Unity.MLAgents.Sensors /// /// Utility class to track a hierarchy of ArticulationBodies. /// + [UnityEngine.Scripting.APIUpdating.MovedFrom("Unity.MLAgents.Extensions.Sensors")] public class ArticulationBodyPoseExtractor : PoseExtractor { ArticulationBody[] m_Bodies; diff --git a/com.unity.ml-agents/Runtime/Sensors/ArticulationBodySensorComponent.cs b/com.unity.ml-agents/Runtime/Sensors/ArticulationBodySensorComponent.cs index e8bdeec0c5..00ccca5e07 100644 --- a/com.unity.ml-agents/Runtime/Sensors/ArticulationBodySensorComponent.cs +++ b/com.unity.ml-agents/Runtime/Sensors/ArticulationBodySensorComponent.cs @@ -3,6 +3,7 @@ namespace Unity.MLAgents.Sensors { + [UnityEngine.Scripting.APIUpdating.MovedFrom("Unity.MLAgents.Extensions.Sensors")] public class ArticulationBodySensorComponent : SensorComponent { public ArticulationBody RootBody; diff --git a/com.unity.ml-agents/Runtime/Sensors/CountingGridSensor.cs b/com.unity.ml-agents/Runtime/Sensors/CountingGridSensor.cs index 193579e70a..b3088b70f3 100644 --- a/com.unity.ml-agents/Runtime/Sensors/CountingGridSensor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/CountingGridSensor.cs @@ -5,6 +5,7 @@ namespace Unity.MLAgents.Sensors /// /// Grid-based sensor that counts the number of detctable objects. /// + [UnityEngine.Scripting.APIUpdating.MovedFrom("Unity.MLAgents.Extensions.Sensors")] public class CountingGridSensor : GridSensorBase { /// diff --git a/com.unity.ml-agents/Runtime/Sensors/IJointExtractor.cs b/com.unity.ml-agents/Runtime/Sensors/IJointExtractor.cs index 31c1fd9ca3..ed3d78d5f1 100644 --- a/com.unity.ml-agents/Runtime/Sensors/IJointExtractor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/IJointExtractor.cs @@ -3,6 +3,7 @@ namespace Unity.MLAgents.Sensors /// /// Interface for generating observations from a physical joint or constraint. /// + [UnityEngine.Scripting.APIUpdating.MovedFrom("Unity.MLAgents.Extensions.Sensors")] public interface IJointExtractor { /// diff --git a/com.unity.ml-agents/Runtime/Sensors/PhysicsBodySensor.cs b/com.unity.ml-agents/Runtime/Sensors/PhysicsBodySensor.cs index 187f2442a4..b343945460 100644 --- a/com.unity.ml-agents/Runtime/Sensors/PhysicsBodySensor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/PhysicsBodySensor.cs @@ -8,6 +8,7 @@ namespace Unity.MLAgents.Sensors /// /// ISensor implementation that generates observations for a group of Rigidbodies or ArticulationBodies. /// + [UnityEngine.Scripting.APIUpdating.MovedFrom("Unity.MLAgents.Extensions.Sensors")] public class PhysicsBodySensor : ISensor, IBuiltInSensor { ObservationSpec m_ObservationSpec; diff --git a/com.unity.ml-agents/Runtime/Sensors/PhysicsSensorSettings.cs b/com.unity.ml-agents/Runtime/Sensors/PhysicsSensorSettings.cs index aed0c9c81d..e503f9e988 100644 --- a/com.unity.ml-agents/Runtime/Sensors/PhysicsSensorSettings.cs +++ b/com.unity.ml-agents/Runtime/Sensors/PhysicsSensorSettings.cs @@ -5,6 +5,7 @@ namespace Unity.MLAgents.Sensors /// /// Settings that define the observations generated for physics-based sensors. /// + [UnityEngine.Scripting.APIUpdating.MovedFrom("Unity.MLAgents.Extensions.Sensors")] [Serializable] public struct PhysicsSensorSettings { diff --git a/com.unity.ml-agents/Runtime/Sensors/PoseExtractor.cs b/com.unity.ml-agents/Runtime/Sensors/PoseExtractor.cs index 71febc4802..98989c6499 100644 --- a/com.unity.ml-agents/Runtime/Sensors/PoseExtractor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/PoseExtractor.cs @@ -14,6 +14,7 @@ namespace Unity.MLAgents.Sensors /// Poses are either considered in model space, which is relative to a root body, /// or in local space, which is relative to their parent. /// + [UnityEngine.Scripting.APIUpdating.MovedFrom("Unity.MLAgents.Extensions.Sensors")] public abstract class PoseExtractor { int[] m_ParentIndices; diff --git a/com.unity.ml-agents/Runtime/Sensors/RigidBodyJointExtractor.cs b/com.unity.ml-agents/Runtime/Sensors/RigidBodyJointExtractor.cs index fb4cc56bea..1b30b94e25 100644 --- a/com.unity.ml-agents/Runtime/Sensors/RigidBodyJointExtractor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/RigidBodyJointExtractor.cs @@ -2,6 +2,7 @@ namespace Unity.MLAgents.Sensors { + [UnityEngine.Scripting.APIUpdating.MovedFrom("Unity.MLAgents.Extensions.Sensors")] public class RigidBodyJointExtractor : IJointExtractor { Rigidbody m_Body; diff --git a/com.unity.ml-agents/Runtime/Sensors/RigidBodyPoseExtractor.cs b/com.unity.ml-agents/Runtime/Sensors/RigidBodyPoseExtractor.cs index 52f9c509c0..15b1927c43 100644 --- a/com.unity.ml-agents/Runtime/Sensors/RigidBodyPoseExtractor.cs +++ b/com.unity.ml-agents/Runtime/Sensors/RigidBodyPoseExtractor.cs @@ -7,6 +7,7 @@ namespace Unity.MLAgents.Sensors /// Utility class to track a hierarchy of RigidBodies. These are assumed to have a root node, /// and child nodes are connect to their parents via Joints. /// + [UnityEngine.Scripting.APIUpdating.MovedFrom("Unity.MLAgents.Extensions.Sensors")] public class RigidBodyPoseExtractor : PoseExtractor { Rigidbody[] m_Bodies; diff --git a/com.unity.ml-agents/Runtime/Sensors/RigidBodySensorComponent.cs b/com.unity.ml-agents/Runtime/Sensors/RigidBodySensorComponent.cs index 4ad0255f1f..666be0c2cc 100644 --- a/com.unity.ml-agents/Runtime/Sensors/RigidBodySensorComponent.cs +++ b/com.unity.ml-agents/Runtime/Sensors/RigidBodySensorComponent.cs @@ -6,6 +6,7 @@ namespace Unity.MLAgents.Sensors /// /// Editor component that creates a PhysicsBodySensor for the Agent. /// + [UnityEngine.Scripting.APIUpdating.MovedFrom("Unity.MLAgents.Extensions.Sensors")] public class RigidBodySensorComponent : SensorComponent { /// From 76bd2d49c32b614a89772b0e1bcfb60de88810d4 Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Wed, 30 Jul 2025 09:27:07 -0400 Subject: [PATCH 28/29] Revert extension package change --- docs/Migrating.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/Migrating.md b/docs/Migrating.md index b69276130a..aba3d8565f 100644 --- a/docs/Migrating.md +++ b/docs/Migrating.md @@ -121,7 +121,7 @@ public CompressionSpec GetCompressionSpec() - The abstract method `SensorComponent.CreateSensor()` was replaced with `CreateSensors()`, which returns an `ISensor[]`. ### Match3 integration changes -The Match-3 integration utilities are now included in `com.unity.ml-agents`. +The Match-3 integration utilities were moved from `com.unity.ml-agents.extensions` to `com.unity.ml-agents`. The `AbstractBoard` interface was changed: * `AbstractBoard` no longer contains `Rows`, `Columns`, `NumCellTypes`, and `NumSpecialTypes` fields. From 9227488a20a80a778f511597051fe7210c7e92b1 Mon Sep 17 00:00:00 2001 From: maryam-zia Date: Wed, 30 Jul 2025 14:04:49 -0400 Subject: [PATCH 29/29] Upgrade upm-pvp --- .yamato/com.unity.ml-agents-pack.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.yamato/com.unity.ml-agents-pack.yml b/.yamato/com.unity.ml-agents-pack.yml index 3349cfed90..b37d9980a2 100644 --- a/.yamato/com.unity.ml-agents-pack.yml +++ b/.yamato/com.unity.ml-agents-pack.yml @@ -7,6 +7,8 @@ pack: commands: - | eval "$($HOME/anaconda/bin/conda shell.bash hook)" + sudo apt-get update + sudo apt-get install upm-pvp=0.76.0 conda activate python3.10 python3 -m pip install unity-downloader-cli --index-url https://artifactory.prd.it.unity3d.com/artifactory/api/pypi/pypi/simple --upgrade unity-downloader-cli -u 6000.0 -c editor --wait --fast