比较提交

...
此合并请求有变更与目标分支冲突。
/.gitignore
/Project/Packages/manifest.json
/Project/ProjectSettings/DynamicsManager.asset
/Project/ProjectSettings/ProjectVersion.txt
/Project/Assets/ML-Agents/Examples/Crawler/Scripts/CrawlerAgent.cs
/Project/Assets/ML-Agents/Examples/GridWorld/Demos/ExpertGrid.demo.meta
/docs/Learning-Environment-Examples.md
/Project/Assets/ML-Agents/Examples/Worm
/Project/Assets/ML-Agents/Examples/SharedAssets/Prefabs/DynamicTargetPlatform.prefab
/config/trainer_config.yaml
/Project/Assets/ML-Agents/Examples/Bouncer/TFModels/Bouncer.nn.meta
/Project/Assets/ML-Agents/Examples/Tennis/TFModels/Tennis.nn.meta
/Project/Assets/ML-Agents/Examples/Hallway/TFModels/Hallway.nn.meta
/Project/Assets/ML-Agents/Examples/3DBall/TFModels/3DBallHard.nn.meta
/Project/Assets/ML-Agents/Examples/GridWorld/TFModels/GridWorld.nn.meta
/Project/Assets/ML-Agents/Examples/FoodCollector/TFModels/FoodCollector.nn.meta
/Project/Assets/ML-Agents/Examples/Crawler/Scenes/CrawlerDynamicTarget.unity
/Project/Assets/ML-Agents/Examples/Crawler/Demos/ExpertCrawlerDyn.demo.meta
/Project/Assets/ML-Agents/Examples/Crawler/Demos/ExpertCrawlerSta.demo.meta
/Project/Assets/ML-Agents/Examples/Crawler/TFModels/CrawlerDynamic.nn.meta

44 次代码提交

作者 SHA1 备注 提交日期
HH e54abece add 2020 year end blog images scenes 4 年前
HH 048bf088 Release 7 scene added 4 年前
HH 121c75fd add meta files 4 年前
HH e3a08bfb tweak rot 4 年前
HH a5e1878a adjust characters 4 年前
HH 27ded81d moved posed scene to SharedAssets 4 年前
Hunter-Unity fd2f8d61 final pose 5 年前
Hunter-Unity f52150ef updated light angle 5 年前
Hunter-Unity 4a9df3a8 posed scene 1 5 年前
Hunter-Unity 196c70c7 added posed crawler 5 年前
Hunter-Unity ee22bd50 added corgi/probuilder package 5 年前
Hunter-Unity 77f231b5 cp 5 年前
Hunter-Unity ff9a6a91 updated size on grid material 5 年前
Hunter-Unity 76b0686c added new scene for posing 5 年前
Hunter-Unity 85ee0ed3 cp 5 年前
Hunter-Unity 9bb867a5 change crawler body mass to 12 5 年前
Hunter-Unity 75c7fb85 added more nn files from testing 5 年前
Hunter-Unity dd3b1fbf comparing rewards in fu vs in decision 5 年前
Hunter-Unity 6d1b23af put rewards back in fu for testing 5 年前
Hunter-Unity 1367670d added new model with worm settings 5 年前
Hunter-Unity 2751b3a4 updated crawlerAgent code to match worm env 5 年前
GitHub d45b1f73 updated worm static benchmark. 5 年前
bhh 4eef4185 added retrained worm static model 5 年前
GitHub b11f93bc updated mean reward for worm doc 5 年前
GitHub 634a7284 Updated Doc with worm env into 5 年前
bhh 5e3c8d44 add worm image 5 年前
bhh c3e74451 Remove 28M model 5 年前
bhh 9e40ed64 update config to 3.5M steps 5 年前
bhh 58354f1b updated dynamic 3.5M model 5 年前
bhh 5f2c7a4c updated static model, added 28M step dyamic model for testing. redoing dynamic model now 5 年前
bhh b32dab7a added dynamic 3.5M step model 5 年前
bhh 1ecc8924 final training done. ready to go. 5 年前
bhh a9c5d24b cleaned up code and removed old prefabs 5 年前
bhh dc9fcd46 loosened joints retrained looking good 5 年前
bhh 59933799 Worm dynamic scene ready 5 年前
bhh 4e8a65ef fixed char forward since it's a rotated capsule 5 年前
bhh d07a48a3 added more platforms 5 年前
bhh e8035a23 training works now 5 年前
bhh a4461583 updated script 5 年前
bhh 35736d30 added scripts 5 年前
bhh 5c24f925 more model tweaks 5 年前
bhh e18ea8ab updating snake model 5 年前
bhh 1f4a7c58 misc 5 年前
bhh 823fa3a5 initial snake proto 5 年前
共有 735 个文件被更改,包括 17210 次插入61 次删除
  1. 33
      config/trainer_config.yaml
  2. 23
      docs/Learning-Environment-Examples.md
  3. 1
      .gitignore
  4. 1
      Project/Packages/manifest.json
  5. 6
      Project/ProjectSettings/DynamicsManager.asset
  6. 2
      Project/ProjectSettings/ProjectVersion.txt
  7. 3
      Project/Assets/ML-Agents/Examples/Bouncer/TFModels/Bouncer.nn.meta
  8. 3
      Project/Assets/ML-Agents/Examples/PushBlock/TFModels/PushBlock.nn.meta
  9. 3
      Project/Assets/ML-Agents/Examples/Pyramids/TFModels/Pyramids.nn.meta
  10. 3
      Project/Assets/ML-Agents/Examples/Tennis/TFModels/Tennis.nn.meta
  11. 3
      Project/Assets/ML-Agents/Examples/WallJump/TFModels/BigWallJump.nn.meta
  12. 3
      Project/Assets/ML-Agents/Examples/Hallway/TFModels/Hallway.nn.meta
  13. 3
      Project/Assets/ML-Agents/Examples/3DBall/TFModels/3DBall.nn.meta
  14. 3
      Project/Assets/ML-Agents/Examples/3DBall/TFModels/3DBallHard.nn.meta
  15. 3
      Project/Assets/ML-Agents/Examples/Basic/TFModels/Basic.nn.meta
  16. 2
      Project/Assets/ML-Agents/Examples/GridWorld/Demos/ExpertGrid.demo.meta
  17. 3
      Project/Assets/ML-Agents/Examples/GridWorld/TFModels/GridWorld.nn.meta
  18. 3
      Project/Assets/ML-Agents/Examples/FoodCollector/TFModels/FoodCollector.nn.meta
  19. 112
      Project/Assets/ML-Agents/Examples/Crawler/Scripts/CrawlerAgent.cs
  20. 952
      Project/Assets/ML-Agents/Examples/Crawler/Scenes/CrawlerDynamicTarget.unity
  21. 2
      Project/Assets/ML-Agents/Examples/Crawler/Demos/ExpertCrawlerDyn.demo.meta
  22. 2
      Project/Assets/ML-Agents/Examples/Crawler/Demos/ExpertCrawlerSta.demo.meta
  23. 2
      Project/Assets/ML-Agents/Examples/Crawler/TFModels/CrawlerDynamic.nn.meta
  24. 7
      Project/Assets/ML-Agents/Examples/SharedAssets/Materials/GridMatFloor.mat
  25. 13
      Project/Assets/ML-Agents/Examples/SharedAssets/Materials/Green.mat
  26. 717
      docs/images/worm.png
  27. 8
      Project/Assets/Puppo.meta
  28. 55
      Project/Assets/ML-Agents/Examples/Walker/Scripts/FramesPerSecond.cs
  29. 11
      Project/Assets/ML-Agents/Examples/Walker/Scripts/FramesPerSecond.cs.meta
  30. 8
      Project/Assets/ML-Agents/Examples/Worm.meta
  31. 1001
      Project/Assets/ML-Agents/Examples/Crawler/TFModels/CrawlerDynamicNewRewardsInFU.nn
  32. 11
      Project/Assets/ML-Agents/Examples/Crawler/TFModels/CrawlerDynamicNewRewardsInFU.nn.meta
  33. 1001
      Project/Assets/ML-Agents/Examples/Crawler/TFModels/CrawlerDynamicWormSettingsRewardsInDecision.nn
  34. 11
      Project/Assets/ML-Agents/Examples/Crawler/TFModels/CrawlerDynamicWormSettingsRewardsInDecision.nn.meta
  35. 1001
      Project/Assets/ML-Agents/Examples/Crawler/TFModels/CrawlerDynamic2xGravityRewInDec.nn
  36. 11
      Project/Assets/ML-Agents/Examples/Crawler/TFModels/CrawlerDynamic2xGravityRewInDec.nn.meta
  37. 1001
      Project/Assets/ML-Agents/Examples/Crawler/TFModels/CrawlerDynamicWeakerJointsRewInDec.nn
  38. 11
      Project/Assets/ML-Agents/Examples/Crawler/TFModels/CrawlerDynamicWeakerJointsRewInDec.nn.meta
  39. 1001
      Project/Assets/ML-Agents/Examples/Crawler/TFModels/CrawlerDynamicWeakerJointsRewInFU.nn
  40. 11
      Project/Assets/ML-Agents/Examples/Crawler/TFModels/CrawlerDynamicWeakerJointsRewInFU.nn.meta
  41. 198
      Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/AvgCenterOfMass.cs
  42. 11
      Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/AvgCenterOfMass.cs.meta
  43. 35
      Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/MenuController.cs
  44. 11
      Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/MenuController.cs.meta
  45. 44
      Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/ScreenTouchObject.cs
  46. 11
      Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/ScreenTouchObject.cs.meta
  47. 702
      Project/Assets/ML-Agents/Examples/SharedAssets/Prefabs/DynamicTargetPlatform.prefab
  48. 7
      Project/Assets/ML-Agents/Examples/SharedAssets/Prefabs/DynamicTargetPlatform.prefab.meta
  49. 8
      Project/Assets/ML-Agents/Examples/SharedAssets/Scenes.meta
  50. 76
      Project/Assets/ML-Agents/Examples/SharedAssets/Materials/Block.mat
  51. 8
      Project/Assets/ML-Agents/Examples/SharedAssets/Materials/Block.mat.meta
  52. 77
      Project/Assets/ML-Agents/Examples/SharedAssets/Materials/TreeGreen.mat
  53. 8
      Project/Assets/ML-Agents/Examples/SharedAssets/Materials/TreeGreen.mat.meta
  54. 77
      Project/Assets/ML-Agents/Examples/SharedAssets/Materials/YellowLight.mat
  55. 8
      Project/Assets/ML-Agents/Examples/SharedAssets/Materials/YellowLight.mat.meta
  56. 8
      Project/Assets/ML-Agents/Examples/SharedAssets/Meshes/New Folder.meta
  57. 71
      Project/Assets/ML-Agents/Examples/SharedAssets/Meshes/SantaHat.fbx
  58. 98
      Project/Assets/ML-Agents/Examples/SharedAssets/Meshes/SantaHat.fbx.meta
  59. 43
      Project/Assets/ML-Agents/Examples/SharedAssets/Meshes/Tree.fbx
  60. 98
      Project/Assets/ML-Agents/Examples/SharedAssets/Meshes/Tree.fbx.meta
  61. 8
      Project/Assets/Particle Examples.meta
  62. 8
      Project/Assets/TextMesh Pro.meta
  63. 1001
      results/CrawlerDynamic/CrawlerDynamic.nn
  64. 2
      results/CrawlerDynamic/CrawlerDynamic/checkpoint
  65. 5
      results/CrawlerDynamic/CrawlerDynamic/events.out.tfevents.1593650175.BrandonHunterHenry.local
  66. 1001
      results/CrawlerDynamic/CrawlerDynamic/frozen_graph_def.pb
  67. 22
      results/CrawlerDynamic/CrawlerDynamic/model-1429.ckpt.index
  68. 1001
      results/CrawlerDynamic/CrawlerDynamic/model-1429.ckpt.meta
  69. 1001
      results/CrawlerDynamic/CrawlerDynamic/raw_graph_def.pb
  70. 56
      results/CrawlerDynamic/configuration.yaml
  71. 208
      results/CrawlerDynamic/run_logs/timers.json
  72. 7
      results/CrawlerDynamic/run_logs/training_status.json
  73. 1001
      results/CrawlerStatic/CrawlerStatic.nn
  74. 2
      results/CrawlerStatic/CrawlerStatic/checkpoint
  75. 5
      results/CrawlerStatic/CrawlerStatic/events.out.tfevents.1593650221.BrandonHunterHenry.local
  76. 1001
      results/CrawlerStatic/CrawlerStatic/frozen_graph_def.pb
  77. 20
      results/CrawlerStatic/CrawlerStatic/model-1548.ckpt.index
  78. 1001
      results/CrawlerStatic/CrawlerStatic/model-1548.ckpt.meta
  79. 1001
      results/CrawlerStatic/CrawlerStatic/raw_graph_def.pb
  80. 56
      results/CrawlerStatic/configuration.yaml
  81. 208
      results/CrawlerStatic/run_logs/timers.json
  82. 7
      results/CrawlerStatic/run_logs/training_status.json

33
config/trainer_config.yaml


time_horizon: 1000
batch_size: 2024
buffer_size: 20240
max_steps: 1e7
max_steps: 3.5e6
# max_steps: 1e7
summary_freq: 30000
num_layers: 3
hidden_units: 512
reward_signals:
extrinsic:
strength: 1.0
gamma: 0.995
WormDynamic:
normalize: true
num_epoch: 3
time_horizon: 1000
batch_size: 2024
buffer_size: 20240
max_steps: 3.5e6
summary_freq: 30000
num_layers: 3
hidden_units: 512
reward_signals:
extrinsic:
strength: 1.0
gamma: 0.995
WormStatic:
normalize: true
num_epoch: 3
time_horizon: 1000
batch_size: 2024
buffer_size: 20240
max_steps: 3.5e6
summary_freq: 30000
num_layers: 3
hidden_units: 512

23
docs/Learning-Environment-Examples.md


* Benchmark Mean Reward for `CrawlerStaticTarget`: 2000
* Benchmark Mean Reward for `CrawlerDynamicTarget`: 400
## Worm
![Worm](images/worm.png)
* Set-up: A worm with a head and 3 body segments.
* Goal: The agents must move its body toward the goal direction.
* `WormStaticTarget` - Goal direction is always forward.
* `WormDynamicTarget`- Goal direction is randomized.
* Agents: The environment contains 10 agents with same Behavior Parameters.
* Agent Reward Function (independent):
* +0.01 times body velocity in the goal direction.
* +0.01 times body direction alignment with goal direction.
* Behavior Parameters:
* Vector Observation space: 57 variables corresponding to position, rotation,
velocity, and angular velocities of each limb plus the acceleration and
angular acceleration of the body.
* Vector Action space: (Continuous) Size of 9, corresponding to target
rotations for joints.
* Visual Observations: None
* Float Properties: None
* Benchmark Mean Reward for `WormStaticTarget`: 150
* Benchmark Mean Reward for `WormDynamicTarget`: 200
## Food Collector
![Collector](images/foodCollector.png)

1
.gitignore


# Tensorflow Model Info
/models
/summaries
/results
# Training environments
/envs

1
Project/Packages/manifest.json


"com.unity.ml-agents": "file:../../com.unity.ml-agents",
"com.unity.package-manager-ui": "2.0.8",
"com.unity.package-validation-suite": "0.7.15-preview",
"com.unity.probuilder": "4.2.3",
"com.unity.purchasing": "2.0.3",
"com.unity.textmeshpro": "1.4.1",
"com.unity.modules.ai": "1.0.0",

6
Project/ProjectSettings/DynamicsManager.asset


--- !u!55 &1
PhysicsManager:
m_ObjectHideFlags: 0
serializedVersion: 7
serializedVersion: 10
m_Gravity: {x: 0, y: -9.81, z: 0}
m_DefaultMaterial: {fileID: 0}
m_BounceThreshold: 2

m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffebffffffddffffffeffffffff5fffffffbffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
m_AutoSimulation: 1
m_AutoSyncTransforms: 1
m_ReuseCollisionCallbacks: 0
m_ClothInterCollisionSettingsToggle: 0
m_ContactPairsMode: 0
m_BroadphaseType: 0

m_WorldSubdivisions: 8
m_FrictionType: 0
m_EnableEnhancedDeterminism: 0
m_EnableUnifiedHeightmaps: 1

2
Project/ProjectSettings/ProjectVersion.txt


m_EditorVersion: 2018.4.18f1
m_EditorVersion: 2018.4.24f1

3
Project/Assets/ML-Agents/Examples/Bouncer/TFModels/Bouncer.nn.meta


fileIDToRecycleName:
11400000: main obj
11400002: model data
2186277476908879412: ImportLogs
script: {fileID: 11500000, guid: 19ed1486aa27d4903b34839f37b8f69f, type: 3}
script: {instanceID: 0}

3
Project/Assets/ML-Agents/Examples/PushBlock/TFModels/PushBlock.nn.meta


fileIDToRecycleName:
11400000: main obj
11400002: model data
2186277476908879412: ImportLogs
script: {fileID: 11500000, guid: 19ed1486aa27d4903b34839f37b8f69f, type: 3}
script: {instanceID: 0}

3
Project/Assets/ML-Agents/Examples/Pyramids/TFModels/Pyramids.nn.meta


fileIDToRecycleName:
11400000: main obj
11400002: model data
2186277476908879412: ImportLogs
script: {fileID: 11500000, guid: 19ed1486aa27d4903b34839f37b8f69f, type: 3}
script: {instanceID: 0}

3
Project/Assets/ML-Agents/Examples/Tennis/TFModels/Tennis.nn.meta


fileIDToRecycleName:
11400000: main obj
11400002: model data
2186277476908879412: ImportLogs
script: {fileID: 11500000, guid: 19ed1486aa27d4903b34839f37b8f69f, type: 3}
script: {instanceID: 0}

3
Project/Assets/ML-Agents/Examples/WallJump/TFModels/BigWallJump.nn.meta


fileIDToRecycleName:
11400000: main obj
11400002: model data
2186277476908879412: ImportLogs
script: {fileID: 11500000, guid: 19ed1486aa27d4903b34839f37b8f69f, type: 3}
script: {instanceID: 0}

3
Project/Assets/ML-Agents/Examples/Hallway/TFModels/Hallway.nn.meta


fileIDToRecycleName:
11400000: main obj
11400002: model data
2186277476908879412: ImportLogs
script: {fileID: 11500000, guid: 19ed1486aa27d4903b34839f37b8f69f, type: 3}
script: {instanceID: 0}

3
Project/Assets/ML-Agents/Examples/3DBall/TFModels/3DBall.nn.meta


fileIDToRecycleName:
11400000: main obj
11400002: model data
2186277476908879412: ImportLogs
script: {fileID: 11500000, guid: 19ed1486aa27d4903b34839f37b8f69f, type: 3}
script: {instanceID: 0}

3
Project/Assets/ML-Agents/Examples/3DBall/TFModels/3DBallHard.nn.meta


fileIDToRecycleName:
11400000: main obj
11400002: model data
2186277476908879412: ImportLogs
script: {fileID: 11500000, guid: 19ed1486aa27d4903b34839f37b8f69f, type: 3}
script: {instanceID: 0}

3
Project/Assets/ML-Agents/Examples/Basic/TFModels/Basic.nn.meta


fileIDToRecycleName:
11400000: main obj
11400002: model data
2186277476908879412: ImportLogs
script: {fileID: 11500000, guid: 19ed1486aa27d4903b34839f37b8f69f, type: 3}
script: {instanceID: 0}

2
Project/Assets/ML-Agents/Examples/GridWorld/Demos/ExpertGrid.demo.meta


fileFormatVersion: 2
guid: 3938e0ee1f99e473db8e45d334dfa329
guid: 0092f2e4aece345aea4730a37eeebf68
ScriptedImporter:
fileIDToRecycleName:
11400000: Assets/ML-Agents/Examples/GridWorld/Demos/ExpertGrid.demo

3
Project/Assets/ML-Agents/Examples/GridWorld/TFModels/GridWorld.nn.meta


fileIDToRecycleName:
11400000: main obj
11400002: model data
2186277476908879412: ImportLogs
script: {fileID: 11500000, guid: 19ed1486aa27d4903b34839f37b8f69f, type: 3}
script: {instanceID: 0}

3
Project/Assets/ML-Agents/Examples/FoodCollector/TFModels/FoodCollector.nn.meta


fileIDToRecycleName:
11400000: main obj
11400002: model data
2186277476908879412: ImportLogs
script: {fileID: 11500000, guid: 19ed1486aa27d4903b34839f37b8f69f, type: 3}
script: {instanceID: 0}

112
Project/Assets/ML-Agents/Examples/Crawler/Scripts/CrawlerAgent.cs


m_JdController.SetupBodyPart(leg3Upper);
m_JdController.SetupBodyPart(leg3Lower);
}
//Get Joint Rotation Relative to the Connected Rigidbody
//We want to collect this info because it is the actual rotation, not the "target rotation"
public Quaternion GetJointRotation(ConfigurableJoint joint)
{
return(Quaternion.FromToRotation(joint.axis, joint.connectedBody.transform.rotation.eulerAngles));
}
/// <summary>
/// Add relevant information on each body part to observations.

{
var localPosRelToBody = body.InverseTransformPoint(rb.position);
sensor.AddObservation(localPosRelToBody);
sensor.AddObservation(bp.currentXNormalizedRot); // Current x rot
sensor.AddObservation(bp.currentYNormalizedRot); // Current y rot
sensor.AddObservation(bp.currentZNormalizedRot); // Current z rot
sensor.AddObservation(GetJointRotation(bp.joint));
// sensor.AddObservation(bp.currentXNormalizedRot); // Current x rot
// sensor.AddObservation(bp.currentYNormalizedRot); // Current y rot
// sensor.AddObservation(bp.currentZNormalizedRot); // Current z rot
sensor.AddObservation(bp.currentStrength / m_JdController.maxJointForceLimit);
}
}

m_TargetDirMatrix = Matrix4x4.TRS(Vector3.zero, m_LookRotation, Vector3.one);
RaycastHit hit;
if (Physics.Raycast(body.position, Vector3.down, out hit, 10.0f))
float maxDist = 10;
if (Physics.Raycast(body.position, Vector3.down, out hit, maxDist))
sensor.AddObservation(hit.distance);
sensor.AddObservation(hit.distance/maxDist);
sensor.AddObservation(10.0f);
// Forward & up to help with orientation
var bodyForwardRelativeToLookRotationToTarget = m_TargetDirMatrix.inverse.MultiplyVector(body.forward);
sensor.AddObservation(bodyForwardRelativeToLookRotationToTarget);
var bodyUpRelativeToLookRotationToTarget = m_TargetDirMatrix.inverse.MultiplyVector(body.up);
sensor.AddObservation(bodyUpRelativeToLookRotationToTarget);
sensor.AddObservation(1);
// // Forward & up to help with orientation
// var bodyForwardRelativeToLookRotationToTarget = m_TargetDirMatrix.inverse.MultiplyVector(body.forward);
// sensor.AddObservation(bodyForwardRelativeToLookRotationToTarget);
//
// var bodyUpRelativeToLookRotationToTarget = m_TargetDirMatrix.inverse.MultiplyVector(body.up);
// sensor.AddObservation(bodyUpRelativeToLookRotationToTarget);
//Rotation delta between the matrix and the head
Quaternion headRotationDeltaFromMatrixRot = Quaternion.Inverse(m_TargetDirMatrix.rotation) * body.rotation;
sensor.AddObservation(headRotationDeltaFromMatrixRot);
// foreach (var bodyPart in m_JdController.bodyPartsDict.Values)
// {
// CollectObservationBodyPart(bodyPart, sensor);
// }
}
/// <summary>

bpDict[leg1Lower].SetJointStrength(vectorAction[++i]);
bpDict[leg2Lower].SetJointStrength(vectorAction[++i]);
bpDict[leg3Lower].SetJointStrength(vectorAction[++i]);
// Set reward for this step according to mixture of the following elements.
if (rewardMovingTowardsTarget)
{
RewardFunctionMovingTowards();
}
if (rewardFacingTarget)
{
RewardFunctionFacingTarget();
}
if (rewardUseTimePenalty)
{
RewardFunctionTimePenalty();
}
}
void FixedUpdate()

: unGroundedMaterial;
}
// Set reward for this step according to mixture of the following elements.
if (rewardMovingTowardsTarget)
{
RewardFunctionMovingTowards();
}
if (rewardFacingTarget)
{
RewardFunctionFacingTarget();
}
if (rewardUseTimePenalty)
{
RewardFunctionTimePenalty();
}
// /// <summary>
// /// Reward moving towards target & Penalize moving away from target.
// /// </summary>
// void RewardFunctionMovingTowards()
// {
// m_MovingTowardsDot = Vector3.Dot(m_JdController.bodyPartsDict[body].rb.velocity, m_DirToTarget.normalized);
// AddReward(0.03f * m_MovingTowardsDot);
// }
//
// /// <summary>
// /// Reward facing target & Penalize facing away from target
// /// </summary>
// void RewardFunctionFacingTarget()
// {
// m_FacingDot = Vector3.Dot(m_DirToTarget.normalized, body.forward);
// AddReward(0.01f * m_FacingDot);
// }
/// <summary>
/// Reward moving towards target & Penalize moving away from target.
/// </summary>

AddReward(0.03f * m_MovingTowardsDot);
AddReward(0.01f * m_MovingTowardsDot);
}
/// <summary>

{
m_FacingDot = Vector3.Dot(m_DirToTarget.normalized, body.forward);
AddReward(0.01f * m_FacingDot);
float bodyRotRelativeToMatrixDot = Quaternion.Dot(m_TargetDirMatrix.rotation, body.rotation);
AddReward(0.01f * bodyRotRelativeToMatrixDot);
/// <summary>
/// Existential penalty for time-contrained tasks.

/// </summary>
public override void OnEpisodeBegin()
{
foreach (var bodyPart in m_JdController.bodyPartsDict.Values)
{
bodyPart.Reset(bodyPart);
}
if (m_DirToTarget != Vector3.zero)
{
transform.rotation = Quaternion.LookRotation(m_DirToTarget);

foreach (var bodyPart in m_JdController.bodyPartsDict.Values)
{
bodyPart.Reset(bodyPart);
}
if (!targetIsStatic)
{
GetRandomTargetPos();

952
Project/Assets/ML-Agents/Examples/Crawler/Scenes/CrawlerDynamicTarget.unity
文件差异内容过多而无法显示
查看文件

2
Project/Assets/ML-Agents/Examples/Crawler/Demos/ExpertCrawlerDyn.demo.meta


fileFormatVersion: 2
guid: 557283e524ca0493ebc67c7b475304fe
guid: 3f667fd81a6f9437ba91dd70a1f2209b
ScriptedImporter:
fileIDToRecycleName:
11400000: Assets/ML-Agents/Examples/Crawler/Demos/ExpertCrawlerDyn.demo

2
Project/Assets/ML-Agents/Examples/Crawler/Demos/ExpertCrawlerSta.demo.meta


fileFormatVersion: 2
guid: 4975695b6ea23446a94c9be3b5d21731
guid: a7654a04b30024a8cbe6121997b01f59
ScriptedImporter:
fileIDToRecycleName:
11400000: Assets/ML-Agents/Examples/Crawler/Demos/ExpertCrawlerSta.demo

2
Project/Assets/ML-Agents/Examples/Crawler/TFModels/CrawlerDynamic.nn.meta


fileFormatVersion: 2
guid: 039557e683d584183a2a82cf8b1904c0
guid: 2dc51465533e7468d8bcafc17250cebf
ScriptedImporter:
fileIDToRecycleName:
11400000: main obj

7
Project/Assets/ML-Agents/Examples/SharedAssets/Materials/GridMatFloor.mat


Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: GridMatFloor
m_Shader: {fileID: 4800000, guid: bbecf177c38d84ff08d7c683c116affd, type: 3}
m_ShaderKeywords:

- _GlossMapScale: 1
- _Glossiness: 0
- _GlossyReflections: 1
- _GridSize: 6
- _GridSize: 24
- _LineOffset: 0.5
- _LineSize: 0.02
- _Metallic: 0

13
Project/Assets/ML-Agents/Examples/SharedAssets/Materials/Green.mat


Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_ShaderKeywords: _GLOSSYREFLECTIONS_OFF _SPECULARHIGHLIGHTS_OFF
m_LightmapFlags: 4
m_ShaderKeywords: _EMISSION _GLOSSYREFLECTIONS_OFF _SPECULARHIGHLIGHTS_OFF
m_LightmapFlags: 1
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1

- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 0.40392157, g: 0.7372549, b: 0.41960785, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _Color: {r: 0.509434, g: 0.509434, b: 0.509434, a: 1}
- _EmissionColor: {r: 0.3752265, g: 0.8301887, b: 0, a: 1}

717
docs/images/worm.png

之前 之后
宽度: 2184  |  高度: 924  |  大小: 162 KiB

8
Project/Assets/Puppo.meta


fileFormatVersion: 2
guid: 8fe7964b5935448bbb5ea7625e228d8e
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

55
Project/Assets/ML-Agents/Examples/Walker/Scripts/FramesPerSecond.cs


using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using TMPro;
public class FramesPerSecond : MonoBehaviour {
// public TMP_Text fpsText;
public int frameRange = 60;
public int[] fpsBuffer;
public int fpsBufferIndex;
public int AverageFPS;
// Use this for initialization
void Start () {
}
void Update () {
if (fpsBuffer == null || fpsBuffer.Length != frameRange) {
InitializeBuffer();
}
UpdateBuffer();
// CalculateFPS();
// if(fpsText)
// {
// fpsText.text = AverageFPS.ToString();
// }
}
void InitializeBuffer () {
if (frameRange <= 0) {
frameRange = 1;
}
fpsBuffer = new int[frameRange];
fpsBufferIndex = 0;
}
void UpdateBuffer () {
fpsBuffer[fpsBufferIndex++] = (int)(1f / Time.unscaledDeltaTime);
if (fpsBufferIndex >= frameRange) {
fpsBufferIndex = 0;
}
}
public void CalculateFPS ()
{
int sum = 0;
for (int i = 0; i < frameRange; i++) {
sum += fpsBuffer[i];
}
AverageFPS = sum / frameRange;
}
}

11
Project/Assets/ML-Agents/Examples/Walker/Scripts/FramesPerSecond.cs.meta


fileFormatVersion: 2
guid: 9607353d694f54ee79bf0f2ee8abc2c2
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

8
Project/Assets/ML-Agents/Examples/Worm.meta


fileFormatVersion: 2
guid: fa2e0f8693a174e6fbecd7778e6cb364
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

1001
Project/Assets/ML-Agents/Examples/Crawler/TFModels/CrawlerDynamicNewRewardsInFU.nn
文件差异内容过多而无法显示
查看文件

11
Project/Assets/ML-Agents/Examples/Crawler/TFModels/CrawlerDynamicNewRewardsInFU.nn.meta


fileFormatVersion: 2
guid: bf9c2d30164a940608c7779d5bd4455d
ScriptedImporter:
fileIDToRecycleName:
11400000: main obj
11400002: model data
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 19ed1486aa27d4903b34839f37b8f69f, type: 3}

1001
Project/Assets/ML-Agents/Examples/Crawler/TFModels/CrawlerDynamicWormSettingsRewardsInDecision.nn
文件差异内容过多而无法显示
查看文件

11
Project/Assets/ML-Agents/Examples/Crawler/TFModels/CrawlerDynamicWormSettingsRewardsInDecision.nn.meta


fileFormatVersion: 2
guid: 3ea6002831b994df98e7be0f5bf1eaf3
ScriptedImporter:
fileIDToRecycleName:
11400000: main obj
11400002: model data
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 19ed1486aa27d4903b34839f37b8f69f, type: 3}

1001
Project/Assets/ML-Agents/Examples/Crawler/TFModels/CrawlerDynamic2xGravityRewInDec.nn
文件差异内容过多而无法显示
查看文件

11
Project/Assets/ML-Agents/Examples/Crawler/TFModels/CrawlerDynamic2xGravityRewInDec.nn.meta


fileFormatVersion: 2
guid: 3023dfa12c7bb49899dcc33036d3f366
ScriptedImporter:
fileIDToRecycleName:
11400000: main obj
11400002: model data
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 19ed1486aa27d4903b34839f37b8f69f, type: 3}

1001
Project/Assets/ML-Agents/Examples/Crawler/TFModels/CrawlerDynamicWeakerJointsRewInDec.nn
文件差异内容过多而无法显示
查看文件

11
Project/Assets/ML-Agents/Examples/Crawler/TFModels/CrawlerDynamicWeakerJointsRewInDec.nn.meta


fileFormatVersion: 2
guid: 098eaf7ee7173493d9fe88375ab09bb7
ScriptedImporter:
fileIDToRecycleName:
11400000: main obj
11400002: model data
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 19ed1486aa27d4903b34839f37b8f69f, type: 3}

1001
Project/Assets/ML-Agents/Examples/Crawler/TFModels/CrawlerDynamicWeakerJointsRewInFU.nn
文件差异内容过多而无法显示
查看文件

11
Project/Assets/ML-Agents/Examples/Crawler/TFModels/CrawlerDynamicWeakerJointsRewInFU.nn.meta


fileFormatVersion: 2
guid: 1f3b8166988e240f181d10826eecae63
ScriptedImporter:
fileIDToRecycleName:
11400000: main obj
11400002: model data
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 19ed1486aa27d4903b34839f37b8f69f, type: 3}

198
Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/AvgCenterOfMass.cs


using System.Collections.Generic;
using UnityEngine;
/// <summary>
/// Used for visualizing the average center of mass of a ragdoll
/// </summary>
[DisallowMultipleComponent]
[ExecuteInEditMode]
public class AvgCenterOfMass : MonoBehaviour
{
/// <summary>
/// Enable to show a green spehere at the current center of mass.
/// </summary>
[Tooltip("Enable to show a green spehere at the current center of mass.")]
public bool showCOMGizmos = true;
public Vector3 avgCOMWorldSpace;
public Color avgCOMColor = Color.green;
public Color bodyPartCOMColor = Color.yellow;
List<Rigidbody> rbList = new List<Rigidbody>();
public float totalMass;
void Start()
{
SetUpRigidbodies();
}
void SetUpRigidbodies()
{
rbList.Clear();
totalMass = 0;
foreach(var item in GetComponentsInChildren<Rigidbody>())
{
rbList.Add(item);
totalMass += item.mass;
}
}
// void FixedUpdate()
// {
// if(Application.isPlaying)
// {
// avgCOMWorldSpace = Vector3.zero;
// foreach(var item in rbList)
// {
// if (item)
// {
// avgCOMWorldSpace += item.worldCenterOfMass;
// }
// }
// //DRAW AVG GIZMOS
// avgCOMWorldSpace /= rbList.Count; //divide by num of rb's to get avg in WORLD space
// }
// }
void FixedUpdate()
{
if(Application.isPlaying)
{
// avgCOMWorldSpace = Vector3.zero;
// foreach(var item in rbList)
// {
// if (item)
// {
// avgCOMWorldSpace += item.worldCenterOfMass;
// }
// }
// //DRAW AVG GIZMOS
// avgCOMWorldSpace /= rbList.Count; //divide by num of rb's to get avg in WORLD space
Vector3 CoM = Vector3.zero;
float c = 0f;
foreach(var item in rbList)
{
CoM += item.worldCenterOfMass * item.mass;
c += item.mass;
}
avgCOMWorldSpace = CoM/c;
// CoM /= c;
}
}
private void OnDrawGizmosSelected()
{
if(!Application.isPlaying)
{
if (showCOMGizmos)
{
Vector3 CoM = Vector3.zero;
float c = 0f;
// avgCOMWorldSpace = Vector3.zero;
//SHOW BODY PART GIZMOS
foreach(var item in rbList)
{
// if (item)
// {
Gizmos.color = bodyPartCOMColor;
float drawCOMRadius = item.mass/totalMass;
Gizmos.DrawWireSphere(item.worldCenterOfMass, drawCOMRadius);
CoM += item.worldCenterOfMass * item.mass;
c += item.mass;
// avgCOMWorldSpace += item.worldCenterOfMass;
// }
}
//DRAW AVG GIZMOS
avgCOMWorldSpace = CoM/c;
// avgCOMWorldSpace /= rbList.Count; //divide by num of rb's to get avg in WORLD space
float avgCOMRadius = 0.1f; //radius of gizmo
Gizmos.color = avgCOMColor;
Gizmos.DrawSphere(avgCOMWorldSpace, avgCOMRadius);
}
}
else
{
if (showCOMGizmos)
{
// avgCOMWorldSpace = Vector3.zero;
//SHOW BODY PART GIZMOS
foreach(var item in rbList)
{
// if (item)
// {
Gizmos.color = bodyPartCOMColor;
float drawCOMRadius = item.mass/totalMass;
Gizmos.DrawWireSphere(item.worldCenterOfMass, drawCOMRadius);
// avgCOMWorldSpace += item.worldCenterOfMass;
// }
}
//DRAW AVG GIZMOS
// avgCOMWorldSpace /= rbList.Count; //divide by num of rb's to get avg in WORLD space
float avgCOMGizmoRadius = 0.1f; //radius of gizmo
Gizmos.color = avgCOMColor;
Gizmos.DrawSphere(avgCOMWorldSpace, avgCOMGizmoRadius);
}
}
}
// {
// if(!Application.isPlaying)
// {
// if (showCOMGizmos)
// {
// avgCOMWorldSpace = Vector3.zero;
// //SHOW BODY PART GIZMOS
// foreach(var item in rbList)
// {
// if (item)
// {
// Gizmos.color = bodyPartCOMColor;
// float drawCOMRadius = item.mass/totalMass;
// Gizmos.DrawWireSphere(item.worldCenterOfMass, drawCOMRadius);
// avgCOMWorldSpace += item.worldCenterOfMass;
// }
// }
// //DRAW AVG GIZMOS
// avgCOMWorldSpace /= rbList.Count; //divide by num of rb's to get avg in WORLD space
// float avgCOMRadius = 0.1f; //radius of gizmo
// Gizmos.color = avgCOMColor;
// Gizmos.DrawSphere(avgCOMWorldSpace, avgCOMRadius);
// }
// }
// else
// {
// if (showCOMGizmos)
// {
// // avgCOMWorldSpace = Vector3.zero;
// //SHOW BODY PART GIZMOS
// foreach(var item in rbList)
// {
// if (item)
// {
// Gizmos.color = bodyPartCOMColor;
// float drawCOMRadius = item.mass/totalMass;
// Gizmos.DrawWireSphere(item.worldCenterOfMass, drawCOMRadius);
// // avgCOMWorldSpace += item.worldCenterOfMass;
// }
// }
// //DRAW AVG GIZMOS
// // avgCOMWorldSpace /= rbList.Count; //divide by num of rb's to get avg in WORLD space
// float avgCOMGizmoRadius = 0.1f; //radius of gizmo
// Gizmos.color = avgCOMColor;
// Gizmos.DrawSphere(avgCOMWorldSpace, avgCOMGizmoRadius);
// }
// }
// }
}

11
Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/AvgCenterOfMass.cs.meta


fileFormatVersion: 2
guid: 35bd0d2facf4149ad86cde561dcedd64
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

35
Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/MenuController.cs


// Connected to the Cube and includes a DontDestroyOnLoad()
// LoadScene() is called by the first script and switches to the second.
using UnityEngine;
using UnityEngine.SceneManagement;
public class MenuController : MonoBehaviour
{
private static bool created = false;
void Awake()
{
if (!created)
{
DontDestroyOnLoad(this.gameObject);
created = true;
Debug.Log("Awake: " + this.gameObject);
}
}
// public void LoadScene()
// {
// if (SceneManager.GetActiveScene().name == "scene1")
// {
// SceneManager.LoadScene("scene2", LoadSceneMode.Single);
// }
// }
public void LoadScene(string sceneName)
{
// if (SceneManager.GetActiveScene().name == "scene1")
// {
SceneManager.LoadScene(sceneName, LoadSceneMode.Single);
// }
}
}

11
Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/MenuController.cs.meta


fileFormatVersion: 2
guid: 2002e4c557d9d41f79c3f9e2b2206eae
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

44
Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/ScreenTouchObject.cs


using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ScreenTouchObject : MonoBehaviour {
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}
// void ThrowRaycast(Vector3 pos)
// {
// // Construct a ray from the current touch coordinates
// Ray ray = Camera.main.ScreenPointToRay(pos);
// RaycastHit hit;
// if (Physics.Raycast(ray, out hit, 20, groundLayer))
// {
// bone.position = hit.point;
// // hasThrownBone = true;
// dog.target = bone;
// dog.shouldGoGetBone = true;
// }
// }
// void ThrowRaycast(Vector3 pos)
// {
// // Construct a ray from the current touch coordinates
// Ray ray = Camera.main.ScreenPointToRay(pos);
// RaycastHit hit;
// if (Physics.Raycast(ray, out hit, 20, groundLayer))
// {
// bone.position = hit.point;
// // hasThrownBone = true;
// dog.target = bone;
// dog.shouldGoGetBone = true;
// }
// }
}

11
Project/Assets/ML-Agents/Examples/SharedAssets/Scripts/ScreenTouchObject.cs.meta


fileFormatVersion: 2
guid: a93fbbb00343f473c839c6cb9fca172d
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

702
Project/Assets/ML-Agents/Examples/SharedAssets/Prefabs/DynamicTargetPlatform.prefab


%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &845536147473668688
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 840131528275521684}
- component: {fileID: 850925866003461664}
- component: {fileID: 859076012202878004}
- component: {fileID: 815643536240931858}
m_Layer: 0
m_Name: Wall (1)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 4294967295
m_IsActive: 1
--- !u!4 &840131528275521684
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845536147473668688}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: -50, y: 0, z: 0}
m_LocalScale: {x: 1, y: 5, z: 101}
m_Children: []
m_Father: {fileID: 839929025558985770}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &850925866003461664
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845536147473668688}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &859076012202878004
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845536147473668688}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 66163cf35956a4be08e801b750c26f33, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 0
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
--- !u!65 &815643536240931858
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845536147473668688}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 1
serializedVersion: 2
m_Size: {x: 1, y: 5, z: 1}
m_Center: {x: 0, y: 0, z: 0}
--- !u!1 &845566399918322646
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 839922442615925678}
m_Layer: 0
m_Name: DynamicPlatform
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &839922442615925678
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845566399918322646}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: -0.031, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 839929025558985770}
- {fileID: 840186797462469276}
- {fileID: 844321025358320794}
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &845609993457303584
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 840297416095417194}
- component: {fileID: 851088301024847298}
- component: {fileID: 858742211616569018}
- component: {fileID: 819454741375499406}
m_Layer: 0
m_Name: Wall
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 4294967295
m_IsActive: 1
--- !u!4 &840297416095417194
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845609993457303584}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 50, y: 0, z: 0}
m_LocalScale: {x: 1, y: 5, z: 101}
m_Children: []
m_Father: {fileID: 839929025558985770}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &851088301024847298
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845609993457303584}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &858742211616569018
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845609993457303584}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 66163cf35956a4be08e801b750c26f33, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 0
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
--- !u!65 &819454741375499406
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845609993457303584}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 1
serializedVersion: 2
m_Size: {x: 1, y: 5, z: 1}
m_Center: {x: 0, y: 0, z: 0}
--- !u!1 &845711308080566368
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 840287990888334796}
- component: {fileID: 850355067456890338}
- component: {fileID: 859124036259725104}
- component: {fileID: 815238519217806050}
m_Layer: 0
m_Name: Wall (2)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 4294967295
m_IsActive: 1
--- !u!4 &840287990888334796
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845711308080566368}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 50}
m_LocalScale: {x: 100, y: 5, z: 1}
m_Children: []
m_Father: {fileID: 839929025558985770}
m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &850355067456890338
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845711308080566368}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &859124036259725104
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845711308080566368}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 66163cf35956a4be08e801b750c26f33, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 0
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
--- !u!65 &815238519217806050
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845711308080566368}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 1
serializedVersion: 2
m_Size: {x: 1, y: 5, z: 1}
m_Center: {x: 0, y: 0, z: 0}
--- !u!1 &845742365997159796
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 844321025358320794}
- component: {fileID: 851178619372665464}
- component: {fileID: 819411542484216416}
- component: {fileID: 859320361128752180}
- component: {fileID: 827313176772345230}
m_Layer: 0
m_Name: Target
m_TagString: target
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &844321025358320794
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845742365997159796}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 6.2, y: 1.15, z: 3.824}
m_LocalScale: {x: 1.2356956, y: 1.2356961, z: 1.2356961}
m_Children:
- {fileID: 844417529820221198}
m_Father: {fileID: 839922442615925678}
m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &851178619372665464
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845742365997159796}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!65 &819411542484216416
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845742365997159796}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 1
serializedVersion: 2
m_Size: {x: 1, y: 1, z: 1}
m_Center: {x: 0, y: 0, z: 0}
--- !u!23 &859320361128752180
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845742365997159796}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: c67450f290f3e4897bc40276a619e78d, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 1
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 0
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
--- !u!54 &827313176772345230
Rigidbody:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845742365997159796}
serializedVersion: 2
m_Mass: 5
m_Drag: 0
m_AngularDrag: 0.05
m_UseGravity: 1
m_IsKinematic: 0
m_Interpolate: 0
m_Constraints: 0
m_CollisionDetection: 0
--- !u!1 &845745296463925942
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 844417529820221198}
- component: {fileID: 737110191758369644}
m_Layer: 0
m_Name: Point Light
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 0
--- !u!4 &844417529820221198
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845745296463925942}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 844321025358320794}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!108 &737110191758369644
Light:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845745296463925942}
m_Enabled: 1
serializedVersion: 8
m_Type: 2
m_Color: {r: 1, g: 0.85834146, b: 0.472, a: 1}
m_Intensity: 1
m_Range: 15
m_SpotAngle: 30
m_CookieSize: 10
m_Shadows:
m_Type: 0
m_Resolution: -1
m_CustomResolution: -1
m_Strength: 1
m_Bias: 0.05
m_NormalBias: 0.4
m_NearPlane: 0.2
m_Cookie: {fileID: 0}
m_DrawHalo: 0
m_Flare: {fileID: 0}
m_RenderMode: 1
m_CullingMask:
serializedVersion: 2
m_Bits: 4294967295
m_Lightmapping: 4
m_LightShadowCasterMode: 0
m_AreaSize: {x: 1, y: 1}
m_BounceIntensity: 1
m_ColorTemperature: 6570
m_UseColorTemperature: 0
m_ShadowRadius: 0
m_ShadowAngle: 0
--- !u!1 &845759966583653904
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 844403944355493640}
- component: {fileID: 850961583964857778}
- component: {fileID: 858710160614006974}
- component: {fileID: 815445646158418370}
m_Layer: 0
m_Name: Wall (3)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 4294967295
m_IsActive: 1
--- !u!4 &844403944355493640
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845759966583653904}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: -50}
m_LocalScale: {x: 100, y: 5, z: 1}
m_Children: []
m_Father: {fileID: 839929025558985770}
m_RootOrder: 3
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &850961583964857778
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845759966583653904}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &858710160614006974
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845759966583653904}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 66163cf35956a4be08e801b750c26f33, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 0
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
--- !u!65 &815445646158418370
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845759966583653904}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 1
serializedVersion: 2
m_Size: {x: 1, y: 5, z: 1}
m_Center: {x: 0, y: 0, z: 0}
--- !u!1 &845889415043745588
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 840186797462469276}
- component: {fileID: 846923533051838968}
- component: {fileID: 815440076290523758}
- component: {fileID: 858612234444023958}
m_Layer: 14
m_Name: Ground
m_TagString: ground
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 4294967295
m_IsActive: 1
--- !u!4 &840186797462469276
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845889415043745588}
m_LocalRotation: {x: 0, y: 0.7071068, z: 0, w: 0.7071068}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 100, y: 1, z: 100}
m_Children: []
m_Father: {fileID: 839922442615925678}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 90, z: 0}
--- !u!33 &846923533051838968
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845889415043745588}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!65 &815440076290523758
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845889415043745588}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 1
serializedVersion: 2
m_Size: {x: 1, y: 1, z: 1}
m_Center: {x: 0, y: 0, z: 0}
--- !u!23 &858612234444023958
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 845889415043745588}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: acba6bf2a290a496bb8989b42bf8698d, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_PreserveUVs: 1
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 0
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
--- !u!1 &846045050685113208
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 839929025558985770}
m_Layer: 0
m_Name: Walls
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 4294967295
m_IsActive: 1
--- !u!4 &839929025558985770
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 846045050685113208}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 2, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 840297416095417194}
- {fileID: 840131528275521684}
- {fileID: 840287990888334796}
- {fileID: 844403944355493640}
m_Father: {fileID: 839922442615925678}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}

7
Project/Assets/ML-Agents/Examples/SharedAssets/Prefabs/DynamicTargetPlatform.prefab.meta


fileFormatVersion: 2
guid: d6fc96a99a9754f07b48abf1e0d55a5c
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

8
Project/Assets/ML-Agents/Examples/SharedAssets/Scenes.meta


fileFormatVersion: 2
guid: 60bd92f6edd434a8c8a5089a08ca414b
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

76
Project/Assets/ML-Agents/Examples/SharedAssets/Materials/Block.mat


%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: Block
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0
- _GlossyReflections: 1
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 0.9056604, g: 0.6140483, b: 0.252047, a: 0}
- _EmissionColor: {r: 0.849, g: 0.544531, b: 0, a: 1}

8
Project/Assets/ML-Agents/Examples/SharedAssets/Materials/Block.mat.meta


fileFormatVersion: 2
guid: f4abcb290251940948a31b349a6f9995
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

77
Project/Assets/ML-Agents/Examples/SharedAssets/Materials/TreeGreen.mat


%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: TreeGreen
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords: _GLOSSYREFLECTIONS_OFF _SPECULARHIGHLIGHTS_OFF
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 0
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 0
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 0.44950107, g: 0.7372549, b: 0.36051768, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}

8
Project/Assets/ML-Agents/Examples/SharedAssets/Materials/TreeGreen.mat.meta


fileFormatVersion: 2
guid: 7b40959c1b2504ae099ea02da51e6feb
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

77
Project/Assets/ML-Agents/Examples/SharedAssets/Materials/YellowLight.mat


%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: YellowLight
m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0}
m_ShaderKeywords: _EMISSION _GLOSSYREFLECTIONS_OFF _SPECULARHIGHLIGHTS_OFF
m_LightmapFlags: 1
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _BumpScale: 1
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _GlossMapScale: 1
- _Glossiness: 0.5
- _GlossyReflections: 0
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 0
- _SrcBlend: 1
- _UVSec: 0
- _ZWrite: 1
m_Colors:
- _Color: {r: 1, g: 0.8196079, b: 0, a: 1}
- _EmissionColor: {r: 0.22399999, g: 0.13947171, b: 0, a: 1}

8
Project/Assets/ML-Agents/Examples/SharedAssets/Materials/YellowLight.mat.meta


fileFormatVersion: 2
guid: ad186dd068ebb42d490c8c9b26077a2d
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

8
Project/Assets/ML-Agents/Examples/SharedAssets/Meshes/New Folder.meta


fileFormatVersion: 2
guid: dea476a38ef5541ca9cfda9060b81081
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

71
Project/Assets/ML-Agents/Examples/SharedAssets/Meshes/SantaHat.fbx


Kaydara FBX Binary �MFBXHeaderExtension\FBXHeaderVersionI�x
FBXVersionI��EncryptionTypeI�CreationTimeStamp�VersionI��YearI��MonthI DayI'HourI ?MinuteIWSecondI!t MillisecondI��.CreatorS)Blender (stable FBX IO) - 2.91.0 - 4.21.3@' SceneInfoSGlobalInfoSceneInfoSUserData TypeSUserData7VersionIdMetaDataeVersionId|TitleS�SubjectS�AuthorS�KeywordsS�RevisionS�CommentS3 Properties70g9PS DocumentUrlSKStringSUrlSS /foobar.fbx�<PSSrcDocumentUrlSKStringSUrlSS /foobar.fbx�$PSOriginalSCompoundSS=LPSOriginal|ApplicationVendorSKStringSSSBlender Foundation�OPSOriginal|ApplicationNameSKStringSSSBlender (stable FBX IO)�APSOriginal|ApplicationVersionSKStringSSS2.91.0DMPSOriginal|DateTime_GMTSDateTimeSSS01/01/1970 00:00:00.000�<PSOriginal|FileNameSKStringSSS /foobar.fbx�%PS LastSavedSCompoundSSMPSLastSaved|ApplicationVendorSKStringSSSBlender FoundationzPPSLastSaved|ApplicationNameSKStringSSSBlender (stable FBX IO)�BPSLastSaved|ApplicationVersionSKStringSSS2.91.0&NPSLastSaved|DateTime_GMTSDateTimeSSS01/01/1970 00:00:00.000uFileIdR(�*��$�¿Ȱ*�+��� CreationTimeS1970-01-01 10:00:00:000�.CreatorS)Blender (stable FBX IO) - 2.91.0 - 4.21.3j GlobalSettings VersionI�] Properties70p)PSUpAxisSintSIntegerSI�-PS
UpAxisSignSintSIntegerSI�,PS FrontAxisSintSIntegerSI# 0PS FrontAxisSignSintSIntegerSI] ,PS CoordAxisSintSIntegerSI� 0PS CoordAxisSignSintSIntegerSI� 1PSOriginalUpAxisSintSIntegerSI����
5PSOriginalUpAxisSignSintSIntegerSIc
8PSUnitScaleFactorSdoubleSNumberSDY@�
@PSOriginalUnitScaleFactorSdoubleSNumberSDY@ HPS AmbientColorSColorRGBSColorSDDDV APS DefaultCameraSKStringSSSProducer Perspective� %PSTimeModeSenumSSI � 3PS TimeSpanStartSKTimeSTimeSL
2PS TimeSpanStopSKTimeSTimeSL����
P 8PSCustomFrameRateSdoubleSNumberSD8@� Documents� CountI� DocumentLr��SSceneSScened Properties70 &PS SourceObjectSobjectSSW 3PSActiveAnimStackNameSKStringSSS�  RootNodeL�
References�+ Definitions� VersionIdCountIV
ObjectTypeSGlobalSettingsICountI�
ObjectTypeSGeometry�CountI� PropertyTemplateSFbxMesh� Properties70"APSColorSColorRGBSColorSD�������?D�������?D�������?tDPSBBoxMinSVector3DSVectorSDDD�DPSBBoxMaxSVector3DSVectorSDDD/PSPrimary VisibilitySboolSSI;*PS Casts ShadowsSboolSSIu,PSReceive ShadowsSboolSSI?$
ObjectTypeSModel�CountI2$ PropertyTemplateSFbxNode%$ Properties70V2PSQuaternionInterpolateSenumSSI�KPSRotationOffsetSVector3DSVectorSDDDJPS RotationPivotSVector3DSVectorSDDD_JPS ScalingOffsetSVector3DSVectorSDDD�IPS ScalingPivotSVector3DSVectorSDDD�.PSTranslationActiveSboolSSIKKPSTranslationMinSVector3DSVectorSDDD�KPSTranslationMaxSVector3DSVectorSDDD�,PSTranslationMinXSboolSSI,PSTranslationMinYSboolSSIR,PSTranslationMinZSboolSSI�,PSTranslationMaxXSboolSSI�,PSTranslationMaxYSboolSSI,PSTranslationMaxZSboolSSI8*PS RotationOrderSenumSSI|6PSRotationSpaceForLimitOnlySboolSSI�;PSRotationStiffnessXSdoubleSNumberSD;PSRotationStiffnessYSdoubleSNumberSDW;PSRotationStiffnessZSdoubleSNumberSD�0PSAxisLenSdoubleSNumberSD$@�HPS PreRotationSVector3DSVectorSDDDBIPS PostRotationSVector3DSVectorSDDD{+PSRotationActiveSboolSSI�HPS RotationMinSVector3DSVectorSDDD'HPS RotationMaxSVector3DSVectorSDDD^)PS RotationMinXSboolSSI�)PS RotationMinYSboolSSI�)PS RotationMinZSboolSSI)PS RotationMaxXSboolSSI:)PS RotationMaxYSboolSSIq)PS RotationMaxZSboolSSI�(PS InheritTypeSenumSSI�*PS ScalingActiveSboolSSI4GPS
ScalingMinSVector3DSVectorSDDD�GPS
ScalingMaxSVector3DSVectorSD�?D�?D�?�(PS ScalingMinXSboolSSI�(PS ScalingMinYSboolSSI+(PS ScalingMinZSboolSSIa(PS ScalingMaxXSboolSSI�(PS ScalingMaxYSboolSSI�(PS ScalingMaxZSboolSSI,QPSGeometricTranslationSVector3DSVectorSDDD�NPSGeometricRotationSVector3DSVectorSDDD�MPSGeometricScalingSVector3DSVectorSD�?D�?D�?'6PS MinDampRangeXSdoubleSNumberSDk6PS MinDampRangeYSdoubleSNumberSD�6PS MinDampRangeZSdoubleSNumberSD�6PS MaxDampRangeXSdoubleSNumberSD76PS MaxDampRangeYSdoubleSNumberSD{6PS MaxDampRangeZSdoubleSNumberSD�9PSMinDampStrengthXSdoubleSNumberSD 9PSMinDampStrengthYSdoubleSNumberSDP9PSMinDampStrengthZSdoubleSNumberSD�9PSMaxDampStrengthXSdoubleSNumberSD�9PSMaxDampStrengthYSdoubleSNumberSD% 9PSMaxDampStrengthZSdoubleSNumberSDj 7PSPreferedAngleXSdoubleSNumberSD� 7PSPreferedAngleYSdoubleSNumberSD� 7PSPreferedAngleZSdoubleSNumberSD*!(PSLookAtPropertySobjectSSb!*PSUpVectorPropertySobjectSS�!!PSShowSboolSSI�!8PSNegativePercentShapeSupportSboolSSI"8PSDefaultAttributeIndexSintSIntegerSI����N"#PSFreezeSboolSSI"#PSLODBoxSboolSSI�"NPSLcl TranslationSLcl TranslationSSADDD1#HPS Lcl RotationS Lcl RotationSSADDD�#FPS Lcl ScalingS Lcl ScalingSSAD�?D�?D�?�#2PS
VisibilityS
VisibilitySSAD�?$EPSVisibility InheritanceSVisibility InheritanceSSI�+
ObjectTypeSMaterialz$CountI�+PropertyTemplateSFbxSurfacePhong�+ Properties70%1PS ShadingModelSKStringSSSPhong8%'PS
MultiLayerSboolSSI�%BPS EmissiveColorSColorSSADDD�%2PSEmissiveFactorSNumberSSAD�?&APS AmbientColorSColorSSAD�������?D�������?D�������?V&1PS AmbientFactorSNumberSSAD�?�&APS DiffuseColorSColorSSAD�������?D�������?D�������?�&1PS DiffuseFactorSNumberSSAD�?7'EPSTransparentColorSColorSSADDD{'6PSTransparencyFactorSNumberSSAD�'+PSOpacitySNumberSSAD�?(FPS NormalMapSVector3DSVectorSDDDW(APSBumpSVector3DSVectorSDDD�(3PS
BumpFactorSdoubleSNumberSD�?�(MPSDisplacementColorSColorRGBSColorSDDD<);PSDisplacementFactorSdoubleSNumberSD�?�)SPSVectorDisplacementColorSColorRGBSColorSDDD�)APSVectorDisplacementFactorSdoubleSNumberSD�?<*BPS SpecularColorSColorSSAD�������?D�������?D�������?|*2PSSpecularFactorSNumberSSAD�?�*-PS ShininessSNumberSSAD4@�*5PSShininessExponentSNumberSSAD4@L+DPSReflectionColorSColorSSADDD�+4PSReflectionFactorSNumberSSAD�?IuObjectsl)GeometryL�:�SCone.007GeometrySMesh:, Properties70[,GeometryVersionI|�79 Verticesd[, x-W{\��?��ad������1�n�����if2��?���0���h�-V�ǘ[�r�e}[��&����%�_��������<��<��y��|�BkHA��B�w=�Rcš�7i-�."����n�N���L)��� +[�_�7('ܮ�
\'�*�����W_%���­����U��n��*�.���Xq�pk��y�_VE�Ջ��O^��};��U��|��RId�_G�.��`?΍����шo�X���� �u����i-�l?NV x��q�ut�4�ܩ�*p��#��M��5�%����ȋd��Q�s63���, +?���ij�C)��;�pW�c\���vN�NV��Oִ� ��5/N��ۭ���6����Y� �{�;��o��y�%�b��˴Uz8��#_q�m<��oq��>��F~�����o��s��#~_��E�
��>�����&�!܉n]Ĵ��M-#\�#?+t � ��!��-D��Ꭓ���O�W���%��}Owa]U�*�wO.�Jl���~�nѾ�_~��)���љ��?�>��Ԑ�bݧ)�׫#1����b��W�!��s:��c%��\>��o ���+����٬۪ڈk6D@���u�33b0'��=�����b��]��|����:��w{�Al>n#n�`�n|���v�{��o�6�r����^j����r�[���^ �������_���恵��-��V�?f�J�����U���]����z��K�OP\���k=�r��vD`^�U��jZH�Ug� �vܣkde��P����Z�^?���ͼ<�<�m�
�؃+0��@?�g�r�&��$�|�{kRjhtׇ<o϶�%���9�D���|��;o�#�� ız
5��B�QU���c. �^��o^}�xE��ݴ�F���B_츜4^���OF� d����� ��g�������دۑ㽾�[��c.��f��v���䧝��'*�;F|&>����x�g���sb�C���!t��<�H�#��b|��|���p��H�\��1�Ki����+�#�{L���wy>-�;���+%Qk���I<g7����I���b S��_D���<�W��;,�7��0o��� ��G}ޯ��V{^�wo�ob���a�������f֯�I�fp����%\/i���v���Z<���xr� �[��.�Z׉=JV�5�5�_aNĖ�t�����Z�w�����i�G !�<I/~b~(Y������� ~�:��k ^�a^��e8������/����v<�E�]�܁��W�Z�#��Z�o�h�۹�&�s�V�W�����N&܊v��v�(�I��&�_��U�A�s��<�����~>���Z�q��d�� ��L_�ߝ�������a�TT&���k_�x"�^x��s�6�+P�.�d�� -"�R.��ջ�<��.���})�N���q�)5~V�f��;�@�<̧���s�����]���٘EkeF��0qY�7��\ׄ�W����P���w~���lJ�9�}<���2��゙�|f����1�:��r���·w���f��_=\|�p;dyYgD�]�w�.aNdY+�+�&Ӿl�_������à����E�*�>类����ۈO7�<�ɚ�z�1��܉Ǽ�N>x�Հxt���g�b=Ĺ8~�?�N��'0ozo1��G_.���w�*�LB?,��̯�Ik����+��|�.ۖ�9���V+*����2�K&\g�Jı.��>b� �W�wY�T#�T�wصA�����㴶�����c4��wL &\-��z���씚�XT'��^��ʳy�j�����p���t�<�΂yކO����`��s��_2c=��|�� �� ���4M�q�dAk���%�+;����W�#����S/gT������,Χ[�����g��,�
ˣ��u������ǚ����]� �M��_�� ~�<
<�~��Y�
t6���]�G��ROĕ���"�c����<�@� �m���9�Q%t�Y�������g�T|�{1y�/��7n����|�O��ۛS��G�0�NzΧ�w���)7�Ӹ�v@O�!���/�<��*�]��E��(�+:��O��[^5�L�'��b�i��l8�����a�[-6s]�6!�j1��17?y� ���Ie<�-�]t�d���b��+��6��/6=�w����w:%��=Z���u�z��9��r�#O�-��J�c}��l-�E�:���>��u���kD1t��x�xD�M�i�쏸�]g֧�q�!w�������9Qލ�/f`��,�#ժ����orIO̭��7pS��|���7,z���#|�
<���~܉�D���'��V�٬�-�#������r܍���:�΢ޡ]��]2��!���傿=ō��ew�_���s*r������� }m����M~r�wY���}����s%�Jp�uH,p3s�s���;��-��eI�7�j���w���r��ܖ\6�ŽP~�����{�(CM`(�y�S~fr8��(����Q �s9Ϲ���:y�K+���S��?"�s�X�À������5�w�X�����\W���� ��^+�}W�[p���X���̔^�zm���u��� =|D:ߗӾ<?+:gn�f�=�
�B��>ĕ�O��0��r�5�W�$���Mfr�ND>r�8��6u�����z�s�Y����S���~,��]>ǜ8���dN��5<����.œ��a�ͪ���[a9�����>��/��A��Y��~�29���$cN����7͆�G���3�$�+�<���<��¸މ<��~K�;��3��8 Y���o= *���fNB�?�PolygonVertexIndexi��xM�t�U�G(��"��("*�F��Ha�6��ctl���)�56�������AZ��y8�s��������{���JGDD� ������e���g�7�1�_x��♃����#<�~���-`^�����d���#��-�a2N���xHų���+E:�u�6���H����5�<^�� �R���ސ� ��%ɧ�}��8�J���%� Y��yH�s�,o��Y���G�C�2�(|��# ÷���?�9ɺ�#^����ϑ��x}�;��ϒ�yw���7x �(��۹�k����u��wp����W'��
�4��<_"���ih����2�=�8o���{�'����w�_7q��y8��o���k����
�6ƻ��=c���T���)
���k?��"]�����I�=[��;�7�Ӹ��Y~�;�w� ^�� .����Gp���������ad l�{�/B">�|n������K���x2 l���M`1ޛ�3�#ԷƷ���ưLF�|�?����6�D:�}��� J:?�ީn���=��.�;º���?���N������YI����ly�W�v��n�10<��ݣYx9f�O��a.> ��y��w�{�>8׼�o�����oO�_ q�zf�X�3K� ��s n��0w�<�ixW�󘎷%��r�3��&��]��'�S`>!�D|,> Z��ɐ�[�[?��
cpkw��>���\�/$a4n�Ah�ۦ� ~o��'g�x|F��x2> ��>w���`��%��M��Q���qku�����n_���p�tk��P�C:���"2�Zݾ��e� _J����m� _�+�sǷF_]����~�!��J�jl��;�Z���v&��#7@;��M�;�-�o ��������K����p��������n�mӭ7ӠM��x�ss�<�f��;�zr4������h�{g�h���`�mI`�m �]��y���G����z���uq�\�����[c��k��D�'���S������P ��{S����]<���߫��YȬ�w�� n�1���������:���l6ނt\���������xk2��Z�C�wK52V�yI������p��a�祉��#��*ܹ7��x��6k��d~8�?O>��H�;|�g ��[x�Y8�;NM��|��!Y��8N%�����dq��?CV�cxy�A��;f��;���|9�)��7���H{)���s��(�~ր+�sd�
�O�%��{\��ӿ�]_=�wl����y_�;\�]SY����Bຜ�s�������I�� ��tm���=���{H���{��P��=C����T�ǽt������j��gp�� ����=�x���nօ��k���]ߓ��{w�7p������;p�o��{���a�Q�9[��x6�����#��|_>��~N{�����H���G��aޗ| ���Ϻ�x?2����?���-�� �}�`�)���v(líuN�qkG����y������#������5�Y V�~���z<�������1��B{c��f#_�Չ��<wc`*Ov�ix�q?g�! w]���6Iǚ���!����x���#k6�8`n:�˸�v�y�}=��x,���t� ����y���� qk}�"��6���w��''�D|,��ֺ��|9-�5!��)�T��|!��'�ӡ9��D����ap����! ��3�Y���%0����lܚ���rp���#�À����oy���"���n}�1R���F�
��۷��Cw�\z���]i�m��+H�&Ww�5Ё����2�O}����ȍw��j6���-�Vh����c���F��=x-�}�sn�����wMz4��='�y���B�nh���3m�;��0�E�pۼg���M�����r�'�n:�~�<u�ä祻�#�Z����q�(D���j���|�t�D?�W�Mk�>?֜&=3�H��x7�23��LC�EdgesiOwx�����3ه8���p�8�q�ur�>��="�2�"�Q�l%2�HV����-+�
?|���y���$"1I $9)HI*Ґ����Ld!��d#;9�I.B�M����� �(L�R��� ����4a�!����<T�"�x��T!��T�:QԠ&��M4u�K ��O҈X�.M��)�hN ZҊִ�-�hO:O':Ӆ�$Ѝ���'��M�ҏ� ` ���������F2�ьa,��>d"����1��d��ç�e> X�"���,c9+X�*V�����;ֳ����&���m��Olg;��n���}��~p��8�a~�G9�qN�'9�i�� g9�y.p�K��e�p�k\�7�����w��}��y�c���g<���/yś(��$$%�d$'o��T�&-�"y��d!��d#;9�I��C^�����)J1�S�PJR�҄Q�p�Q�*P�JT�
�T�Չ�5�Em��C]b�G}АF�Ҙ&�єf4�-iEk�Жv���t�3]�J��Nzҋ���/�� 3�� c8#�(F3���c<��$&3����4�3��|�,f� s��ϙ�<泀/���,b1_��e,g+Y��� ߲��l`#���~`+���~f'�����a/���r���(�8� Nr�Ӝ�,�8�.r��\�*׸� nr����.�x�C��'<�9���W$J�1IFrR��T�& iIGz��H&2��`����� !�&/�(@A
S���8���4a�S��DP�JT�
�T�Չ�&��M4u�K ��OCbiBMiAK�Ё�ē@0�Q�e���3���c)_��լc;�9�n���$�'Q4�=���/�9�!s�[��>Oy��3�� 2��`rJ)�'�H��!�8:O��p&3�׎�^LayerElementNormalI�CVersionIe�CNameS�CMappingInformationTypeSByPolygonVertexD ReferenceInformationTypeSDirect^�Normalsd� �x�������/B���W�d-��e�C�D���|��-Bמ]Y�����>����Y̘��X�m�bf��[���������>>�����9�޳���r̨� !�1/�V3d���ӕ�uăS$��ë�7zJ��r�#����t��k��\�ol =��H^T=�M+��z�\"=��b�Opyć�u��o��h~:��pu}�rq�d>��N-���6I��\.w����7��֏v#�\�^\�||���S3�Uu�~1���ɫ�bi57Z�������AO�Dl��7��ŋ���E�I��tv"�ru�-Z�\}��^�M� �mk�.>Ln2k-<�~o���\yz�|��y��%}�� �3L�@͈߯����Ga���;zzZ>M�����_\�Bz��:�����M���g�e��L�z�V�ol�0�ZZ6��t��.��A�r���||�U�i�^9�z��bca�1}mꢩ���r��Xf����
�EN�y~2���:΍��rH�xx~r�������!�ެ���F5����_��3����!9$gΆ\�U������"���o���H�������m�H�A�� �6��"���O,�xj�j]�4٣&�\nK��>�~u�Vu������?"d=Ώi����jV�2������@�9��s�v����<%+y���U��s�� 2��e�w.כ��sw�ߙ�S��� 8�\��NH"y�&<�V;|*��� �.Ϸ}Z!^l�w5�j[��>9��� �����(W_�q~�^���捾�~벋Q��W�O�H&7��>� �A�)��e������H�NIFR�v��g.�o]�>�G�����v�V6/�#��̔���N-�9�gr��b�����tfC7�0������8�,٥B+����f� �U�|�y�F��y�rQ�~6١�^s�K��w.73 �I� n��j�z�br{�����iQ$�V�A�r��d�Y,�����B��\�Y�}�_@|�u7�_\n燠o�jٮO��q�r3�*��_�%�L����_\n�\��;}?�ۮ�'aer����C�[iò������~��Vqu�?�&}����ί���?���մr�~���񶤧���I��i�r��|����) ?�\�v�\���Œ>���r���٦ynť�Z�K.��%p��sD�{n`g�R3ݼ8p���[LC}�L�����0?{���$����R9���{a��kf�.��^"=*j9��� A]�ry7��K�O��>��xq�}�$Ο\>}T���8s�HY���� B�h���b߹�?>�:ɋЊxGR1�p��ܤ���{�����s���oOr����pnTȌk��p����?j�� AO彩�m�&W9Mp_��J�A�r������IQ��1��|ȟ���\����%9�����K�|s��<��L݇�a?�
{���~��9\�����^��������B�g�Q�3�\Olt���[�-�����
}�r�@��v�`����r�x)��ޫ���W�d�����9���z�G�,���p� }�ɗ�us����/.��_�_~��]�Qc���^�)�ϺyF6��������~��� ooS� ��Oq��˽�?�=ü��P�W�D�0�|���d�d�xry��~�t�� ��Kz��5��\��.�|ҋcv���'�\n��H�x���G�W����L���������:����׫� ;d�m7vtq��e���g���Վ��$��J��H^5<�wC9ɢ�q���x�����9�~�0�p��>ye�}��(��A\.$`~�ǣ~�ځXċ���A=�����l���L.�W�J��?��*�c^�r�u��c��wV�q�H���[7C��1ofA߯�`�fr3>���_��w_er��׿��"���c߹\U��s�e�<{m���s����R/錹׶�N$�ؼ�t�^�(���Uo��&���p�2'��>�����l^hI,���~���:6�=��N��9�ŧ[).*7q�r��=�1cc�.5��3.וW�}2�����&�"�7��>���.>���i.�� ��Ί�F�ѣ��}L3�_�,������<�r11����}�ϴ�C��r?�?�fѯ��� &���˽'�0?���������+�˯����R�K�z����ޅ� �~���NѾq���}Y4k���ەx��p����9���X�W�|O�r������_�=�u�����u�׿:�w(�l̽\.�n��"���ҥ{�op�-�' �y> �B����r�g9�Iʃ6~�����6��O\��`&�7���,2?�>��y����^���O����j�c\���� =zu+䇟�q�ro�q�?;h"��l�y����1gz�o���{�D~2�_|���Q�w����[�\4��s��% N޹}�=��������3�1ӫ�q��ͯ~��P}�(����`�kY&���»��W� >7{�<r��4�Cj���~q�r���䏸9����N�\.c��$=r�l�??�+�4���3��z�C���4wgrD��O���i�#w��������H^U[�9Q�� {���r�P? A�P�Ϻwh&��8?^�.����.Qܹ\��C?�� `�?l<���޹Q�K�p��.v����bM�A���h~��-r������� I�Ǜ��o
�q�1�����J������er-ޞL~ؾwᗮ�p#����R�a��]5��+xs���j��ީ�d�����r����8��yᗉ-���r����'9Y�/�3��71�n1"��7���>��NyX���nwsF��5p����\6��b����.{5qb�����/��9*$ �/������?Z�!�g�c�9���f�:E~�'B�����Wnn�� y3 +��*�����{�=��{�ar�p������ws�\�?N�Ĺk6��v�9��p�y }X}��شo��y�ܤ&��%�Y��R�7.�;����ѻ�?@}�r�6�Ź��?��E�2��O��Oza���+��ɽQ�ܽ���?򙲨�\.,p}��� A�cd�{WP�e� �{��bI���a�x)�fA�p���b�H�B \�Wy����� ��l�xZ��
~
&���9�Y��E�F0��l:s��X��.}ݜ��be�?ޟr�_�g��\�=y��I��E�+��<r�x�m�{���'��L���M�Fy���U�"��O��������co_i�/;�_�W.7�QW��$w���:�0�Mv�F*�b4ɫ�ߣ�q���C��A�#t� 6/����KI�X��o����F���+� �_�6���\��i əy?l����;.Wyi��fC1�[ܾ3�����2���y�s�|���aʖ�U�����o�}gr٣α�p�Kf`9�U\��m��� %�="��;�L.�tv����B��1�#��#���n�g�2u���-������?Fz������Պ1�oYx��ǜ:=\��ѽ�%/u�����(�\��^=����d�*�z�\Tm�}����Kh�_�s��ɽ�5���vɣ�7ܽ�q��� �ϟ31��M�=\�^,{�U�w���p��1!��g���+�(�����7�Ovc�S��Ynfru?>��5Ʈ�� �vs0�ˏ�ג_&%z鱛]��rqz�Z��F_u��E���{�g �����d���������ž��Dzt�WW�����y�7ћq�MN3�l޲|,����$���:�s�3���$����Fe�}�����AO�[1�'g��rh�Qң{'�y�V����"�G��nU�͛��rI���?d�?�ݿ�W���\#=\.��=Gr^�B�3 Ǥ�^.��7A<l�nN>�<�ۢS0Gٔ��GԨ��}\�>���?��s5���r]Eܿt�>��x�བྷ�W��{�]v����d�%�\�k����Jܻ쪴C�w&�v�d�����x�t$�%��|�&����$Z�[3q_���\��<]�Jz웵��L.
��ȞOR�=�V����~�����k���K��Bvq��긇�Lh[�Au��Y���:�"�O�=v�n�S�\��C���35y�����K���=�Q�#��r�c�Z��ٰ2qjZ�:�����e��k���ώ�}g�"�rI^Nh�����$�{�?����|`z�&�l~��ۯ��8������cr��g�޴���j6�@��r�pn&}�i�z����*��/��_���K�s�����Ҩ7��LW��,s�n&����~z�����#ލ��v+��˛�g�I�[�L+��* �36��_�k�z���H~,}�ڒ���A_">\��>y/oC⳷4�p�l��".s�!/�ls��Jp~��u���Ry���ЗW[��z�����;�L�OVJD\ƭ�=�n�D.��������e 1�q�)Q� ����(�1�p.�ܛ4�8�EV?z������\��\Lz����:�p��w��� ;O���]�;�{��@�2�a�^9��l��h?T�Xܻe�����{�w�~FE����#�����3}��������.�O�a~�_T@�ͣ���l>$yj_�x��G���ܛ70��d�2����3.O�\?��Fv�r�/a}�z�\��添x���r�q��@
�!"Cq��;���ɽ[+��_؆y�VO�g.W7�N��S���.����Ǯ��ֹ��H���~Oer�"-���@�VZ��u\�bro�����p�������r[d>���:uG\uw���r�+��,�����C���l�}[WG��I L~�E����S?��i�f��M�a��_��k"g��k������~�߫ y��IW��\�{~����KM��L�p��z�&�����=F+��OZ`����<�>����9 >��gۃ��aV_�y��<��u��u�φ��b��.�ɵ���g��I^��?�� ܏�����9J�<�y.�?̾AvxG��'��J��\Vl���W������-AO�p� �v���[`����w;.�ͪ".rG.���؄�E��/��3䞹�(.�aS�y.�Y�0���LA��E�r��I�������W&7嫌&;�����G]������H�w$o��f����.��ˎ�����xZE�\�E.�!��~uu���k������^�d������]�����I��6�� ����q�?w*��&��%�ĸY�7.���́�'��^��'�>.W[?v�Y�� OU���p���7��u���{ �a9�:.QQ��/�
��v{s�{��\=�t�ͫs� E|���q��1�9���z���E������눳���{����q^l`�{��oC~ &�]yz�߮��z��jRM엹�%޳��d�.7�>@^����'ѯ?�@~q��-��q�SnҾy�⽍�u��<~'Ы��?6/������'��ix��Ln[�"�^�J�(.���Z�\E���
�.}���W&��E��a���[�����@ݲÿq��x��br٠%�B���v,:��-LnC� OU��L�c�NB��r�fJf��K^D~y�A��\���@|T͟1�r�-Q?����oG��&�}\��i����w�������L.g�>���q�E��/�=\�?.} ~�G�����܌��}����Q�>^Dz�<�2Ν7�������ɵZ��}f7s�:��{�ar1�.ޣ��Y�?�L+�w\�X���6��*x����U����#.ׁ]zx2����������;�O������-?��d*��.)c��>���Q�w��5�� ۅ���L.���\gf������Θ���WIN�K?9���t��1�����t��65r1�p���~�U�eo&�l�I��3���y`�]�s#��G�ټ�-����]~f��;�`r]��z�GFMF�ߋB=�rIk��(�8ӵu��UX�U��^�~��ߵ.��r�@�lң�L�D�ycg�݄���gLj�x�2='e!^L����!{��ܻ��~u��p��{@^���=j��h����jWwn�t�$���Cp?�r1mr$}������.�����?�=ފ�$o�a�Ln#.��`ig���{�>.��o����A�>�8��p��,��.�������Q7�\��v�?��%��%��\l�l'�lX�x����<q�׽�l�7�Q��~o&W��u5�K6���7��w{#�eLq�g����{L���W�S|E�R�1l���������_�
�W�� *�����Q���I���jO��/�YA�Ȗ��i�r�����߹�d�Z� �7��7���׋J#��ڄ,������c$'3z!�D�?>}�r�e-�Q:�nl�uws.��r�r�:�m/���� �}.� ��ή�M���6������Y�7�1�q��φ_\��w��,Y>��P��\�'U��um�Q�������u���F�w� �_} �c��_���/OE||&��Dd�>��rx�R :�r��������C�D�WQ���� ��?{�#=�dO�Y&ױ�.���� ����;�?���D�3(�Z3�|i �w��$�9�px���z���f΍�`k��p�?v�|�nWO��?v9�L���܂��Kb�f�NZ�\l��Ar��OG���&����w���j@�6ҧ��r~1�*6߽���wzR�`��r}z6�A���.�u`0�����b��[���r1�W.6����OE�Z�<s����%v��O��k��͛�;Hq1Ic1�لnш7����RyiLayerElementUVIU^VersionIep^
NameSUVMap�^MappingInformationTypeSByPolygonVertex�^ReferenceInformationTypeS IndexToDirectb�UVd��x�WMHQ�Ѧ@ 4JhѣV��ԢMAzWQ�B[D���CD��6�(�YF�+E�b�h�Lkѳ��Ҽ=�(#A��g�7:g�yg�yg��w�=wB?C��o��$�K���ƚ��k�bO��'�3��z��B����WfH^~����/��`���ׯ>�{�W
������I��՜������0��n��T"o�w�i2u_ ppG6}��a�q��#�>c���D�q�g`�_���|>��ſ������;���So&�ܿjf�6�H��|�P�Q�s#��9p ^��)�/ׯ��O��^��������R�}n���٣�Y�p��>�������㬇����`ށ�`�1u��o-P>F/מ�s瞭z��_�?�^�G=���I�Dz:�_��+r�J�o�?�\� d<���VG~�u�g�x�� �&o�������9� ���l��l�埮��%�>�����'�>�},����髣Ki�9����p1�+̋�o뛠��� j��}�3��_V?S�l0��up���3�$��j��}��B<��#�>C���,�.L���Z��NV�}����������������ؕ����t���{4>�k��׃}
�Ǔ�u47���t��ȓ����g�C��hR��>�Ocr��̉*����ݕ�Oȱ/�y��cs�����_K�u^r���~�W��f�|�'����νS�:�^V��_L�| u�=Y���yy������� ��i���t��ǜ�u��X�_��7�|��eOtr�n���G".��ߴ����e��<J╫��U�X��#��y�1��ɯܾ�Q���,��;��#ջ���-~_��o�D��L�?'�������z�8Ƣ?� �<7�<�'�eޭ��<��}�y���<r|m���<};�;j�えrli�UVIndexi��xM�sVG�a�hq��ŭ@p��Kpw�&���Bp��R���9}ߙ��|3���ݳ��޽IZ�L����8)/ �S�q�`\<_�ih��X��n�G�@7<���4�f\�T�Bn��}���� �i �ñ<� ��X��*$��b���c/��z��S�a��8�%�<�稈m( k�@QXk:�c-FD�
��K��L@�0���_*ܗu[ 3�� kzNY�w6 �պr�֝ ��;�\��|�wx�����^����_��$���>�9�����ܷ߆����=��>���B2܇{H�8�ֹ�HE?8����4? ��=KE}��gj� �����wj�ټK���۱����X���]����������}��{��` ��{��8\�C<�[��N�}ȃ�(��X�p��W�֘��p����)��V�B��(v�5��^\���5����8 ���R���X�?�������Q�����n���3��9���s�rD���`�^F�w��������폑����lkx��p�U�ץ������=��<�����=S��;q�{� ������\�^=����z�|�]Yý�x^�.�`c��i�� �����7�ر�X��- ���ǜ7vl+� }l �k36ϸ�b6:�}��,�@d�0�>�1w^���}�m�sG��;f� ��:c�:Kᘱ9ƃ�o���%�1s�k��8������5���1��o�����gl׵B��oģ���}k86�͇��q y#�E����m��<[�;n�7G��۷����~�s�&�w�8}��u����*����}_�vM�νDy�{2��ω�ߌ�c�ހ����k{Ǎ���c ~�d�{���J��΍�F����6+<�y��>b�$F옹o�0��n�k>7�QX��X��������ݜ�ߔ�C����E� l�ؾu]kkmצ�}F�s�#Z�^a*�� ��뻾�Â�����kr��_���6��f
�߇��Q����h��H@<�2���v,�ul}fE|�)�M��s�����" ��gpK���
kZo��=��w:��gDY��T�v��s.|O�a=�Y����a=�(��|>����~����m�]y�$$��~��ro�iW��h}_�ᙽ�j�l���1��z���)0�=������}7k�|���9׶��2�{6���Ra ��C���������~����O��i�o��z��Z�yO��}���/
ߵ{1��q,c��w�:�� �����R� �0yP-���7W��7�(���y��5@6T@c�����s��C�[��|��殆{(���qA�-�}�r�{��*��h�G��pt��¿��p<;�!G��h��7����}���w�p�{/��?<��gsֺ�nk=�o-��^��;��HԎ�Z�W�m-k��*�é� �]�νں����޻2�����[���wkyϳ��Q/�%Z�������|��/�}��¾s�P2�E�o�c`l~�������@����}�y� �6W�ί�u���#�� ��sK�c�oG?�ֽ���Ĉ];��9�g{>C\�xr��^C��ό�o��ֳ��Vxqڼ8��ؙ!�>z�翅Ǵְo���;^3�ޏ����:���y�K�<2^�~ b��{��'��Ý{���<�o��p��<��]���7bkM�1苕��#�?�Y�K�z�߃��:w���s �{7v�M���-8������f������5�G�jLayerElementMaterialI�iVersionIe�iNameS�iMappingInformationTypeS ByPolygon6jReferenceInformationTypeS IndexToDirect�j9 Materialsi�,xc`����`�� mYb�?���t2��ih��]?��x���� lLayerI�jVersionId,k LayerElementkTypeSLayerElementNormalk
TypedIndexI�k LayerElementikTypeSLayerElementUV�k
TypedIndexI�k LayerElement�kTypeSLayerElementMaterial�k
TypedIndexI:n&ModelL�16SSantaHatModelSMeshilVersionI��m Properties70�lNPSLcl TranslationSLcl TranslationSSAD�4�?D��?D4mHPS Lcl RotationS Lcl RotationSSAD�''�V�DDzm8PSDefaultAttributeIndexSintSIntegerSI�m(PS InheritTypeSenumSSI�m
MultiLayerI�m MultiTakeI
nShadingC-nCullingS
CullingOff�q MaterialL^t�S RedMaterialS�nVersionIf�n
ShadingModelSPhong�n
MultiLayerI�q Properties70/oAPS DiffuseColorSColorSSAD����?D`��?D~oAPS AmbientColorSColorSSAD@n �?D@n �?D@n �?�o1PS AmbientFactorSNumberSSAD�o3PS
BumpFactorSdoubleSNumberSDNpBPS SpecularColorSColorSSAD����?D`��?D�p2PSSpecularFactorSNumberSSAD�?�p-PS ShininessSNumberSSAD9@ q5PSShininessExponentSNumberSSAD9@^qDPSReflectionColorSColorSSAD����?D`��?D�q4PSReflectionFactorSNumberSSAD<u"MaterialL���5SWhiteMaterialS
rVersionIf-r
ShadingModelSPhongIr
MultiLayerI/u Properties70�rAPS DiffuseColorSColorSSAD����?D����?D����?sAPS AmbientColorSColorSSAD@n �?D@n �?D@n �??s1PS AmbientFactorSNumberSSAD�s3PS
BumpFactorSdoubleSNumberSD�sBPS SpecularColorSColorSSAD����?D����?D����?t2PSSpecularFactorSNumberSSAD�?Kt-PS ShininessSNumberSSAD9@�t5PSShininessExponentSNumberSSAD9@�tDPSReflectionColorSColorSSAD����?D����?D����?"u4PSReflectionFactorSNumberSSAD
v Connections�uCSOOL�16L�uCSOOL�:�L�16�uCSOOL^t�L�16�uCSOOL���5L�16BvTakes5vCurrentS��� ���f�v���&~��Z�j���~�� �u�)

98
Project/Assets/ML-Agents/Examples/SharedAssets/Meshes/SantaHat.fbx.meta


fileFormatVersion: 2
guid: c13be3bb9e24b4aada7d15fc54eacf1e
ModelImporter:
serializedVersion: 23
fileIDToRecycleName:
100000: //RootNode
400000: //RootNode
2100000: Red
2100002: White
2300000: //RootNode
3300000: //RootNode
4300000: SantaHat
externalObjects: {}
materials:
importMaterials: 1
materialName: 0
materialSearch: 1
materialLocation: 1
animations:
legacyGenerateAnimations: 4
bakeSimulation: 0
resampleCurves: 1
optimizeGameObjects: 0
motionNodeName:
rigImportErrors:
rigImportWarnings:
animationImportErrors:
animationImportWarnings:
animationRetargetingWarnings:
animationDoRetargetingWarnings: 0
importAnimatedCustomProperties: 0
importConstraints: 0
animationCompression: 1
animationRotationError: 0.5
animationPositionError: 0.5
animationScaleError: 0.5
animationWrapMode: 0
extraExposedTransformPaths: []
extraUserProperties: []
clipAnimations: []
isReadable: 1
meshes:
lODScreenPercentages: []
globalScale: 1
meshCompression: 0
addColliders: 0
useSRGBMaterialColor: 1
importVisibility: 1
importBlendShapes: 1
importCameras: 1
importLights: 1
swapUVChannels: 0
generateSecondaryUV: 0
useFileUnits: 1
optimizeMeshForGPU: 1
keepQuads: 0
weldVertices: 1
preserveHierarchy: 0
indexFormat: 0
secondaryUVAngleDistortion: 8
secondaryUVAreaDistortion: 15.000001
secondaryUVHardAngle: 88
secondaryUVPackMargin: 4
useFileScale: 1
previousCalculatedGlobalScale: 1
hasPreviousCalculatedGlobalScale: 0
tangentSpace:
normalSmoothAngle: 60
normalImportMode: 0
tangentImportMode: 3
normalCalculationMode: 4
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
blendShapeNormalImportMode: 1
normalSmoothingSource: 0
importAnimation: 1
copyAvatar: 0
humanDescription:
serializedVersion: 2
human: []
skeleton: []
armTwist: 0.5
foreArmTwist: 0.5
upperLegTwist: 0.5
legTwist: 0.5
armStretch: 0.05
legStretch: 0.05
feetSpacing: 0
rootMotionBoneName:
hasTranslationDoF: 0
hasExtraRoot: 0
skeletonHasParents: 1
lastHumanDescriptionAvatarSource: {instanceID: 0}
animationType: 0
humanoidOversampling: 1
additionalBone: 0
userData:
assetBundleName:
assetBundleVariant:

43
Project/Assets/ML-Agents/Examples/SharedAssets/Meshes/Tree.fbx


Kaydara FBX Binary �MFBXHeaderExtension\FBXHeaderVersionI�x
FBXVersionI��EncryptionTypeI�CreationTimeStamp�VersionI��YearI��MonthI DayI'HourI?MinuteIWSecondI+t MillisecondI��.CreatorS)Blender (stable FBX IO) - 2.91.0 - 4.21.3@' SceneInfoSGlobalInfoSceneInfoSUserData TypeSUserData7VersionIdMetaDataeVersionId|TitleS�SubjectS�AuthorS�KeywordsS�RevisionS�CommentS3 Properties70g9PS DocumentUrlSKStringSUrlSS /foobar.fbx�<PSSrcDocumentUrlSKStringSUrlSS /foobar.fbx�$PSOriginalSCompoundSS=LPSOriginal|ApplicationVendorSKStringSSSBlender Foundation�OPSOriginal|ApplicationNameSKStringSSSBlender (stable FBX IO)�APSOriginal|ApplicationVersionSKStringSSS2.91.0DMPSOriginal|DateTime_GMTSDateTimeSSS01/01/1970 00:00:00.000�<PSOriginal|FileNameSKStringSSS /foobar.fbx�%PS LastSavedSCompoundSSMPSLastSaved|ApplicationVendorSKStringSSSBlender FoundationzPPSLastSaved|ApplicationNameSKStringSSSBlender (stable FBX IO)�BPSLastSaved|ApplicationVersionSKStringSSS2.91.0&NPSLastSaved|DateTime_GMTSDateTimeSSS01/01/1970 00:00:00.000uFileIdR(�*��$�¿Ȱ*�+��� CreationTimeS1970-01-01 10:00:00:000�.CreatorS)Blender (stable FBX IO) - 2.91.0 - 4.21.3j GlobalSettings VersionI�] Properties70p)PSUpAxisSintSIntegerSI�-PS
UpAxisSignSintSIntegerSI�,PS FrontAxisSintSIntegerSI# 0PS FrontAxisSignSintSIntegerSI] ,PS CoordAxisSintSIntegerSI� 0PS CoordAxisSignSintSIntegerSI� 1PSOriginalUpAxisSintSIntegerSI����
5PSOriginalUpAxisSignSintSIntegerSIc
8PSUnitScaleFactorSdoubleSNumberSDY@�
@PSOriginalUnitScaleFactorSdoubleSNumberSDY@ HPS AmbientColorSColorRGBSColorSDDDV APS DefaultCameraSKStringSSSProducer Perspective� %PSTimeModeSenumSSI � 3PS TimeSpanStartSKTimeSTimeSL
2PS TimeSpanStopSKTimeSTimeSL����
P 8PSCustomFrameRateSdoubleSNumberSD8@� Documents� CountI� DocumentLr��SSceneSScened Properties70 &PS SourceObjectSobjectSSW 3PSActiveAnimStackNameSKStringSSS�  RootNodeL�
References�+ Definitions� VersionIdCountIV
ObjectTypeSGlobalSettingsICountI�
ObjectTypeSGeometry�CountI� PropertyTemplateSFbxMesh� Properties70"APSColorSColorRGBSColorSD�������?D�������?D�������?tDPSBBoxMinSVector3DSVectorSDDD�DPSBBoxMaxSVector3DSVectorSDDD/PSPrimary VisibilitySboolSSI;*PS Casts ShadowsSboolSSIu,PSReceive ShadowsSboolSSI?$
ObjectTypeSModel�CountI2$ PropertyTemplateSFbxNode%$ Properties70V2PSQuaternionInterpolateSenumSSI�KPSRotationOffsetSVector3DSVectorSDDDJPS RotationPivotSVector3DSVectorSDDD_JPS ScalingOffsetSVector3DSVectorSDDD�IPS ScalingPivotSVector3DSVectorSDDD�.PSTranslationActiveSboolSSIKKPSTranslationMinSVector3DSVectorSDDD�KPSTranslationMaxSVector3DSVectorSDDD�,PSTranslationMinXSboolSSI,PSTranslationMinYSboolSSIR,PSTranslationMinZSboolSSI�,PSTranslationMaxXSboolSSI�,PSTranslationMaxYSboolSSI,PSTranslationMaxZSboolSSI8*PS RotationOrderSenumSSI|6PSRotationSpaceForLimitOnlySboolSSI�;PSRotationStiffnessXSdoubleSNumberSD;PSRotationStiffnessYSdoubleSNumberSDW;PSRotationStiffnessZSdoubleSNumberSD�0PSAxisLenSdoubleSNumberSD$@�HPS PreRotationSVector3DSVectorSDDDBIPS PostRotationSVector3DSVectorSDDD{+PSRotationActiveSboolSSI�HPS RotationMinSVector3DSVectorSDDD'HPS RotationMaxSVector3DSVectorSDDD^)PS RotationMinXSboolSSI�)PS RotationMinYSboolSSI�)PS RotationMinZSboolSSI)PS RotationMaxXSboolSSI:)PS RotationMaxYSboolSSIq)PS RotationMaxZSboolSSI�(PS InheritTypeSenumSSI�*PS ScalingActiveSboolSSI4GPS
ScalingMinSVector3DSVectorSDDD�GPS
ScalingMaxSVector3DSVectorSD�?D�?D�?�(PS ScalingMinXSboolSSI�(PS ScalingMinYSboolSSI+(PS ScalingMinZSboolSSIa(PS ScalingMaxXSboolSSI�(PS ScalingMaxYSboolSSI�(PS ScalingMaxZSboolSSI,QPSGeometricTranslationSVector3DSVectorSDDD�NPSGeometricRotationSVector3DSVectorSDDD�MPSGeometricScalingSVector3DSVectorSD�?D�?D�?'6PS MinDampRangeXSdoubleSNumberSDk6PS MinDampRangeYSdoubleSNumberSD�6PS MinDampRangeZSdoubleSNumberSD�6PS MaxDampRangeXSdoubleSNumberSD76PS MaxDampRangeYSdoubleSNumberSD{6PS MaxDampRangeZSdoubleSNumberSD�9PSMinDampStrengthXSdoubleSNumberSD 9PSMinDampStrengthYSdoubleSNumberSDP9PSMinDampStrengthZSdoubleSNumberSD�9PSMaxDampStrengthXSdoubleSNumberSD�9PSMaxDampStrengthYSdoubleSNumberSD% 9PSMaxDampStrengthZSdoubleSNumberSDj 7PSPreferedAngleXSdoubleSNumberSD� 7PSPreferedAngleYSdoubleSNumberSD� 7PSPreferedAngleZSdoubleSNumberSD*!(PSLookAtPropertySobjectSSb!*PSUpVectorPropertySobjectSS�!!PSShowSboolSSI�!8PSNegativePercentShapeSupportSboolSSI"8PSDefaultAttributeIndexSintSIntegerSI����N"#PSFreezeSboolSSI"#PSLODBoxSboolSSI�"NPSLcl TranslationSLcl TranslationSSADDD1#HPS Lcl RotationS Lcl RotationSSADDD�#FPS Lcl ScalingS Lcl ScalingSSAD�?D�?D�?�#2PS
VisibilityS
VisibilitySSAD�?$EPSVisibility InheritanceSVisibility InheritanceSSI�+
ObjectTypeSMaterialz$CountI�+PropertyTemplateSFbxSurfacePhong�+ Properties70%1PS ShadingModelSKStringSSSPhong8%'PS
MultiLayerSboolSSI�%BPS EmissiveColorSColorSSADDD�%2PSEmissiveFactorSNumberSSAD�?&APS AmbientColorSColorSSAD�������?D�������?D�������?V&1PS AmbientFactorSNumberSSAD�?�&APS DiffuseColorSColorSSAD�������?D�������?D�������?�&1PS DiffuseFactorSNumberSSAD�?7'EPSTransparentColorSColorSSADDD{'6PSTransparencyFactorSNumberSSAD�'+PSOpacitySNumberSSAD�?(FPS NormalMapSVector3DSVectorSDDDW(APSBumpSVector3DSVectorSDDD�(3PS
BumpFactorSdoubleSNumberSD�?�(MPSDisplacementColorSColorRGBSColorSDDD<);PSDisplacementFactorSdoubleSNumberSD�?�)SPSVectorDisplacementColorSColorRGBSColorSDDD�)APSVectorDisplacementFactorSdoubleSNumberSD�?<*BPS SpecularColorSColorSSAD�������?D�������?D�������?|*2PSSpecularFactorSNumberSSAD�?�*-PS ShininessSNumberSSAD4@�*5PSShininessExponentSNumberSSAD4@L+DPSReflectionColorSColorSSADDD�+4PSReflectionFactorSNumberSSAD�?�TObjectsZK.GeometryL�{%SIcosphere.006GeometrySMesh?, Properties70`,GeometryVersionI|
2�Verticesd&�x]�yP�Uǯ�J3ΐ[���L �tL+zW �C�1�˸6�c��^�P\���)��x�d����UE��₠A��f���tF��;�s���{�;��co����"z]�#�EEY\)��:G����|c�e�:��)����ä�ym)�ȫ�sQ=8����F��+��UԴ�U�wH��1�kY�A�Lϩ!.�Φ���F^������ ��E�V�3�ܵx@t�^N�,d@-�"ǑGj\ ,��̦FR|=��C������b9�*�F��ǔ����x�����J�w�I����'o�-�"��{��� �#s�)��n�� c
I�"/�T7�^��/+"�|.�3J��wk8G*���n#�h_�WF��P���ƕ �I�G��V�ѯ��(A,>H�j�f����}�������c�Sn�]�|z"�ͬ���������t�7|�H�G��s��n�~�1W�z�e��&���?��]����B�*���3�1�b=p�Q:�+�R��'�ww�|E���ĥ3�&�m��y� �7~J�br�*���8���dR,�<�Gj���c ��~��&���*ɧ�<ѹ�USl�������7����
��$_�����\��r����#O},~���A31�Vb�q������'R>���,�^����=��=VYY�nf����2+ߊq���}�y↰G���c���~�3������u�w�3VU�=U� ��.�.��vlj뫃J���u�,%���ɗH͝k�Ie����E����O36\t���u�:�N���:5�"]��t_E5��3&UP~h=�/T�f���'��E5q��˿��l;\f��whW#�� {+|��_����([k�����6~?x����Ο�]����L!��/˼�yQ��E�������s��E?�9*�b���|T���Wc�� ϗ�c��y������0^闧؃���+�57e_���x�f�I�5gc�3���·�����ܸ�qv�o��+�Y~Z�������oD��^�c����P�}\����:�X<���yԅ�V6�ҶP�����������X��W,���^������������:���������2���Y�>������'|��!n�D]�U�$��3�����xM�H#.�� ξ.,�W?=u��V�,v�.�����c=��ƈn���g&:�/�X��.p��8k[�~ͺ�(��Ҟ� �O����"�>�р������~&�g�@]e��.�O����o���#?{r�N~U���VG�ET�Q�' �xg�*�7�/G�} ����~�:�b��m��!uժ�����띝��p����΋��k8�|4�bs�������o� �C�����.��ǼtΤx[�_y;Q״_����K�^�|P��W�.��C�b�tt2ꪠo�>�;a��Б�Y�Cs/�5�PolygonVertexIndexi��xM��\e������Xqw/�-�R�Z(��!�!�B)w��}�o&Y��Zg�=�;gf2�L�L����V&k�?⵫�w㕫������6��x����X���g��Y1r�^��&�s:r�~��U��|�\�t��I����~�&�����[V��^��S�Q�w��_�<v}&�qvv�wJ���|��Fii�N���;������'V� ϫn������_��Ή�{G����7��=����c�3�����x������4w��ʝq�dO�a�����v���.V��:��\�c��=�U��~v��c;z��c�wM���Ξ���r=���cU�W�:ÿ����x�*�}���/���`�٦���[�����X��r����;�o��=Ӵ�Qn��ҟ�}�mU�U�b����b����7{�d���'��E��葿�faױ����r��C����Ӂ��� ��>�?��M�� >�z{��*>2-ɛc��#sͽ/t����v}��*��x~����tH:,����Qի�1��<^�槧���tlz*��Hǥ'���9�ys/K昏/M���y|I2��<�8�sm;�����za2��<� �sC���Y���%sn�c��̛��N2��<>;�ss��̹%�&sn�c��������ɜ����d�y|z2��<>-�sW�-�yw�{:%��b��̹7�OJ�ܗ�'&s��c�53�{�ޭ9/���d�Cy�ݚ�p{��<��ޭ����Y�I��6�Edgesi��x�[O�O()J�e���K�V�(E�F��4�La�-&�4��!����\f5m��-c��5c66�����lfc�p<�p�@`A�b6��0�P�F8��O�, �h��b�#�e$�H+Ia ��c=Hc#d�E69��G>�줄RvQF9졒}Tq�jj8�!�PKǩ�$ 4q�fN��YZi�i���t�E����7���.�a�11�c��� �3�/x�+^󆷼�=��'>3�������'�����?C3 &�0‰ ������g)�I �$�L
�X�ZRI#� 6��L��B69le���O��A!ESB)e즂J�R�~���0���c���F�h� -���y.p��p�n�q�>���d�{ ��F�!�<e�I���`� ALayerElementNormalI�6VersionIe 7NameSC7MappingInformationTypeSByPolygonVertexs7 ReferenceInformationTypeSDirect�@x Normalsdpk x͚yPW�ǯ�&Uc"i�@��c��A3��`��Q�=&�.ј��B�N��h\F���!q qA��Aw67pA.Ȣ��X���w���f�ϙy3���3�3s�����=��Bwk��B�����;v�-�y�����+ed���7������E䧓�n {L��r=xM)��G��Щ��"��V��J��}e�5�bG*t�\���$��C>t�L=�#=&������o����N{����2����^!��WA��Ŕ9���}�v�ud�\����n������i%d��iv�t�A�o��X9l,��ܭx�:t>�:Y�뮒��a=*�O�QkW�i��r}ea.��Կb]���&].�F�%��>��ߍ���1���~X���P��� ���:��b�l˧x��>U�������'�U�����TG�����/���S'�+����ۋ\��7� ���|�r��� 䑱���� .&���Ғ$�Q��� /�.�������̕���Kf>sya���~�������dm&�9�x?�����r�Ǹ�~k0��L.p)���k>���}If=�̻���/��fr1<�G�(A~���s�z9�y4 )&+�T^$����b���N��_�&�Os��M6ֻUl�Ǥ��=.Wg�TQ����S���p��7���^Kz�����r����Cͭ7�NIԙ�Ep�Y�͂L�$�d��E�P� ��N�%�7��V����/F��^�G\.��F�G����I���� �g���9Yk�ᓾ��r��:���m1�D�Y8q���~j�#�~1?������h�W:v�)�K�D`}p�ܬ���r�2�8�[
).��l4q ��z놴L��r��7}�[9����Y��\n��~���N��h9�����jbk�{ya�?�'�~��,�;��p~���/��is��yo)�!�X���\t�\�*I�<�� �'�:�1��Yob�.�S<���g�\��ޓ�e+�ϗ��(.�n����S��}��8�_�\E��<v[Ǘ �n�4Y6n*��#�|���ҿ��)&w��
�ۣBp��'>�� ��<[����iD�d\��0��9|?���8����ȋ�ݠѷ� �Hޜ�{
�����TV��|�����n���������Ϡ<��YW�ue m�����&�,���t���.�!=a��\.'�4 �-��z��6�5����&��0����Y�?���8/[_����̛q:L.Ģ�:-q9s>�'.qOR}�e�Q'���8��\g&�����{{0���L.����#w���8��Ng`���h.��L�A�Nh��\.��1�Q�F�{���f�0��x&�x�Z���.w�6�}R&d��|TV|�����)�4�j`�90��|�Kwx����1�&&wf����68�Y�[`}q��s:v�����/G�r�������[�yS�%�\�$߄�9_ Yw�`���\|}���E��2���`ԙ�U�'��� �+Ƕ�Gc.{"/��ʵ�o��x���Z�Au�]��¡W�+���f|?P��_ 1���ar-�������_}t��˭^Ï��<�և4��1�����f��s��Z������.*j��;����p��d5��U�u��G|Fy�������I5�;��(>���������:��o��+�[�A� ��v�y} ����۹�O����y͏!/&wCc�έ�jч���%���E=�O[���������W\��B��2�c��9����܎��U�c>[!�WR��#n��b���c�_����������n����O���
��������I��G\d���I����K
��q�<:���6=���˲%8?����)�����W\��WFy��TS���8�zŭ�)x�V���)�S(~��=ď�eb����㽤��on�����~U���x�]g:��8�/�s�–'(~���7��8��y������������v?�S�23(��W��� ��r�A���i�����Q�z�.Rgd�s<��q��v.�Fq��� ��w��P���_�գb+���#^���5ќ����B�q��5�w��˓��i���fB_Ƭ��~f�V��+�$��x�� �FN������u���=����Ix�G\��I�z�窌��i��������������q��w��'=1���&-p����=�^��H�<�_{�l|����������=�+.޻YCznU+��o�b�x�e�-įz�B}\��5��G\��A��W>S�wwm }���6�|�x�%��b_[s��=�/7@/:}�n��1����$����Ɉۙ1��+.CZA��^g�%�,����N�~F�y�m��+���\��>���o����!���!��fRS�#��d�? �W?$WR�n��z����P�x�~�+���QWc�?�W|��R�wz�>��<���3e��HLayerElementUVIEAVersionIe`A
NameSUVMap�AMappingInformationTypeSByPolygonVertex�AReferenceInformationTypeS IndexToDirect-FPUVd*CxmVmh�U>+
�!��D�b43�lPD�=�4ԏr �������adN���|�r~$��gC������@�,7e"�1�ڲ����-�������9���J�s�zι����s���J)�t��W�R�'���5��Q��o v��3b�Ce{a?\{��]c� �)�>���)6Ֆ�I���0$VmD;�8(�4gnc}wůb��j�E55#X���]���r���/�V����赯��P�q��;������v�o�u�^���� �I� �������~���� �8��S�=~�.��P���}V�]~�g���)�.����nk�P��1��O��d��y����k�aԙë�\�����'IJ.�v������������O�m����Ǜo!N�筎�a�/;���z�-����8�h��9��:�{�����W�S� �A~Q��&���i���~��7�?�:=��sA�9+��̝>f���������_�+�������'�T��}�߼w���h:^�m8?�73w��Qr����~�-�%_C����/A�����{fї�/�S�{U?������_���<pN��ɨ#�v���o��S���!_�ڂ>��!��_]?�~&�]�#�L}��[���&�E^S�.x���F�A_����~�~z[9��A�v��σp_��z�}e'�G?Ƌ�F=����I���_�/����a?����}��ݱ����I�����/��:�U��W�SP2a���Y���_����u�9��n�Nm~����J���&����㛯�M��xJx��g�(�^{ʿA��������-[e� ��|Ֆ�1wT�h����-��|�ȟ|��!��R�c�O����'7o������i>����+�G������E����ǜ��<}ĝ�=��3�3��������r�Z��w�_�{��O����a^��+�����ߵ��a��Y���v'��=�4��:��j�q�:�TU������^��%���T��_�/�G��I�������.�n�K��S��I����G���w�u�u��v�5}1�:������*9&�������y��yL���R?w׷��_R֎����?A����H�UVIndexi�xxMӉוS��O��LQ�Wd�2$)%3e&�cȔ�P$$4������Z���[�Z���{������9����(�ůq4v�,��#�5�����X��s�^;��G���3��[[��u~F����ː�<W����}��̐�2pkg�?�j�������ΰ��#�>/ ��a}uX��z�'��pw�^.�����w�L�h��ۧ�'���h��}�}������C�>�����������o
wл�[�\�΢Ά;��y>wN�z�p=�?���|è w�)��_S8�w�=O�R�ϪZ�9�~��!S�|S����B?�=l~�:�cq�p��f!_2�h�2����̊p�5qj|2pkS<����^��φOիB��6\����b_���L/�~�r�z�p=��g��|�w���+���2����>� �����/�=�`|OƏqs���۷=>�C�Z�O�y�q����J\W��ß��62~_�=2�n�22#�3N3���92�9̑�g��f�a����0G��sd��0GƽO3e�Ŀa����0G��sd��0GƷ������0�l�W�#㧄92~O�#��fʞ�O����a��/ sd��0GƷ���+��0�l~Y�#㏅92�b�#���f�NJ����ILayerElementMaterialIIVersionIe(INameSYIMappingInformationTypeS ByPolygon�IReferenceInformationTypeS IndexToDirect�I! Materialsi�xc`�@K��-MKLayerIJVersionIdnJ LayerElementEJTypeSLayerElementNormalaJ
TypedIndexI�J LayerElement�JTypeSLayerElementUV�J
TypedIndexI@K LayerElementKTypeSLayerElementMaterial3K
TypedIndexIxM"ModelL�$S TreeModelSMesh�KVersionI��L Properties70LNPSLcl TranslationSLcl TranslationSSAD��z@D�_r�?D@O��>rLHPS Lcl RotationS Lcl RotationSSAD�''�V�DD�L8PSDefaultAttributeIndexSintSIntegerSI�L(PS InheritTypeSenumSSIM
MultiLayerI2M MultiTakeIHMShadingCkMCullingS
CullingOff�P"MaterialLS�gSgreenMaterialS�MVersionIf�M
ShadingModelSPhongN
MultiLayerI�P Properties70oNAPS DiffuseColorSColorSSAD|8�?D��&�?D���?�NAPS AmbientColorSColorSSAD@n �?D@n �?D@n �?�N1PS AmbientFactorSNumberSSAD>O3PS
BumpFactorSdoubleSNumberSD�OBPS SpecularColorSColorSSAD|8�?D��&�?D���?�O2PSSpecularFactorSNumberSSAD�? P-PS ShininessSNumberSSAD9@LP5PSShininessExponentSNumberSSAD9@�PDPSReflectionColorSColorSSAD|8�?D��&�?D���?�P4PSReflectionFactorSNumberSSAD|T"MaterialLک;SBrownMaterialSJQVersionIfmQ
ShadingModelSPhong�Q
MultiLayerIoT Properties70�QAPS DiffuseColorSColorSSAD�wb�?D� O�?D@RAPS AmbientColorSColorSSAD@n �?D@n �?D@n �?R1PS AmbientFactorSNumberSSAD�R3PS
BumpFactorSdoubleSNumberSDSBPS SpecularColorSColorSSAD�wb�?D� O�?DPS2PSSpecularFactorSNumberSSAD�?�S-PS ShininessSNumberSSAD9@�S5PSShininessExponentSNumberSSAD9@ TDPSReflectionColorSColorSSAD�wb�?D� O�?DbT4PSReflectionFactorSNumberSSADJU Connections�TCSOOL�$L�TCSOOL�{%L�$UCSOOLS�gL�$=UCSOOLک;L�$�UTakesuUCurrentS��� ���f�v���&~��Z�j���~�� �u�)

98
Project/Assets/ML-Agents/Examples/SharedAssets/Meshes/Tree.fbx.meta


fileFormatVersion: 2
guid: 29b2c1b01780e435ab39707b6571228e
ModelImporter:
serializedVersion: 23
fileIDToRecycleName:
100000: //RootNode
400000: //RootNode
2100000: green
2100002: Brown
2300000: //RootNode
3300000: //RootNode
4300000: Tree
externalObjects: {}
materials:
importMaterials: 1
materialName: 0
materialSearch: 1
materialLocation: 1
animations:
legacyGenerateAnimations: 4
bakeSimulation: 0
resampleCurves: 1
optimizeGameObjects: 0
motionNodeName:
rigImportErrors:
rigImportWarnings:
animationImportErrors:
animationImportWarnings:
animationRetargetingWarnings:
animationDoRetargetingWarnings: 0
importAnimatedCustomProperties: 0
importConstraints: 0
animationCompression: 1
animationRotationError: 0.5
animationPositionError: 0.5
animationScaleError: 0.5
animationWrapMode: 0
extraExposedTransformPaths: []
extraUserProperties: []
clipAnimations: []
isReadable: 1
meshes:
lODScreenPercentages: []
globalScale: 1
meshCompression: 0
addColliders: 0
useSRGBMaterialColor: 1
importVisibility: 1
importBlendShapes: 1
importCameras: 1
importLights: 1
swapUVChannels: 0
generateSecondaryUV: 0
useFileUnits: 1
optimizeMeshForGPU: 1
keepQuads: 0
weldVertices: 1
preserveHierarchy: 0
indexFormat: 0
secondaryUVAngleDistortion: 8
secondaryUVAreaDistortion: 15.000001
secondaryUVHardAngle: 88
secondaryUVPackMargin: 4
useFileScale: 1
previousCalculatedGlobalScale: 1
hasPreviousCalculatedGlobalScale: 0
tangentSpace:
normalSmoothAngle: 60
normalImportMode: 0
tangentImportMode: 3
normalCalculationMode: 4
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
blendShapeNormalImportMode: 1
normalSmoothingSource: 0
importAnimation: 1
copyAvatar: 0
humanDescription:
serializedVersion: 2
human: []
skeleton: []
armTwist: 0.5
foreArmTwist: 0.5
upperLegTwist: 0.5
legTwist: 0.5
armStretch: 0.05
legStretch: 0.05
feetSpacing: 0
rootMotionBoneName:
hasTranslationDoF: 0
hasExtraRoot: 0
skeletonHasParents: 1
lastHumanDescriptionAvatarSource: {instanceID: 0}
animationType: 0
humanoidOversampling: 1
additionalBone: 0
userData:
assetBundleName:
assetBundleVariant:

8
Project/Assets/Particle Examples.meta


fileFormatVersion: 2
guid: 6da21228af3e44a7ab127bbb75a9da93
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

8
Project/Assets/TextMesh Pro.meta


fileFormatVersion: 2
guid: f54d1bd14bd3ca042bd867b519fee8cc
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

1001
results/CrawlerDynamic/CrawlerDynamic.nn
文件差异内容过多而无法显示
查看文件

2
results/CrawlerDynamic/CrawlerDynamic/checkpoint


model_checkpoint_path: "model-1429.ckpt"
all_model_checkpoint_paths: "model-1429.ckpt"

5
results/CrawlerDynamic/CrawlerDynamic/events.out.tfevents.1593650175.BrandonHunterHenry.local


�K" ��J��A brain.Event:2__p}]�� ���J��A*�
�
HyperparametersB� B trainer_typeBppoBhyperparametersB�{'batch_size': 2024, 'buffer_size': 20240, 'learning_rate': 0.0003, 'beta': 0.005, 'epsilon': 0.2, 'lambd': 0.95, 'num_epoch': 3, 'learning_rate_schedule': 'linear'}Bnetwork_settingsBf{'normalize': True, 'hidden_units': 512, 'num_layers': 3, 'vis_encode_type': 'simple', 'memory': None}Breward_signalsB0{'extrinsic': {'gamma': 0.995, 'strength': 1.0}}B init_pathBNoneBkeep_checkpointsB5Bcheckpoint_intervalB500000B max_stepsB10000000B time_horizonB1000B summary_freqB30000BthreadedBTrueB self_playBNoneBbehavioral_cloningBNoneJ

textԹN�

1001
results/CrawlerDynamic/CrawlerDynamic/frozen_graph_def.pb
文件差异内容过多而无法显示
查看文件

22
results/CrawlerDynamic/CrawlerDynamic/model-1429.ckpt.index


 action_output_shape(5��8 global_step (5��W� is_continuous_control (5�e memory_size (5�{: normalization_steps (5��W�optimizer//extrinsic_value/bias (5�{:kernel � (�5/�= main_graph_0/hidden_0/bias� �(�5�3"�!kernel
�� � (��5���1/bias� ��(�5�3"�!kernel
�� ��(��@5��Ҍ2/bias� ��Q(�5�3"�!kernel
�� ��Q(��@5�71� $optimizer//extrinsic_value/bias/Adam ���(5�{:/_1 ���(5�{:1optimizer//optimizer//extrinsic_value/kernel/Adam � ���(�5�3"�1_1 � ���(�5�3"�main_graph_0/hidden_0/bias/Adam� ���(�5�3"�5_1� ���(�5�3"�, kernel/Adam
�� ���(��5��>7_1
�� ���(��5��>* 1/bias/Adam� ���(�5�3"�5_1� ���(�5�3"�, kernel/Adam
�� ���(��@5+��7_1
�� ���(��@5+��* 2/bias/Adam� ���(�5�3"�5_1� ���(�5�3"�, kernel/Adam
�� ���(��@5+��7_1
�� ���(��@5+�� policy/log_std/Adam ���(P5C+�f_1 ���(P5C+�f1optimizer//policy/main_graph_0/hidden_0/bias/Adam� ���(�5�3"�1_1� ���(�5�3"�( kernel/Adam
�� ���(��5��>3_1
�� ���(��5��>& 1/bias/Adam� ���(�5�3"�1_1� ���(�5�3"�( kernel/Adam
�� ���(��@5+��3_1
�� ���(��@5+��& 2/bias/Adam� ���(�5�3"�1_1� ���(�5�3"�( kernel/Adam
�� ���(��@5+��3_1
�� ���(��@5+�� u/bias/Adam ���(P5C+�f_1 ���(P5C+�f kernel/Adam � ���(��5c?c _1 � ���(��5c?coptimizer/beta1_power ���(5����2_power ���(5����policy/log_std ���(P5C+�fmain_graph_0/hidden_0/bias� ���(�5�3"�kernel
�� ���(��5]�=�1/bias� ���(�5�3"�kernel
�� ���(��@5����2/bias� ���(�5�3"�kernel
�� ���(��@5
e�gu/bias ���(P5C+�f
kernel � ���(��5v�E� running_mean� ���(�5^���variance� ���(�5
�1trainer_major_version ���(5�{: inor_version ���(5�'yU patch_version ���(5�{:version_number ���(5��s'�� �H�{����w��2%���W���$uG�

1001
results/CrawlerDynamic/CrawlerDynamic/model-1429.ckpt.meta
文件差异内容过多而无法显示
查看文件

1001
results/CrawlerDynamic/CrawlerDynamic/raw_graph_def.pb
文件差异内容过多而无法显示
查看文件

56
results/CrawlerDynamic/configuration.yaml


behaviors:
CrawlerDynamic:
trainer_type: ppo
hyperparameters:
batch_size: 2024
buffer_size: 20240
learning_rate: 0.0003
beta: 0.005
epsilon: 0.2
lambd: 0.95
num_epoch: 3
learning_rate_schedule: linear
network_settings:
normalize: true
hidden_units: 512
num_layers: 3
vis_encode_type: simple
memory: null
reward_signals:
extrinsic:
gamma: 0.995
strength: 1.0
init_path: null
keep_checkpoints: 5
checkpoint_interval: 500000
max_steps: 10000000
time_horizon: 1000
summary_freq: 30000
threaded: true
self_play: null
behavioral_cloning: null
env_settings:
env_path: null
env_args: null
base_port: 5005
num_envs: 1
seed: -1
engine_settings:
width: 84
height: 84
quality_level: 5
time_scale: 20
target_frame_rate: -1
capture_frame_rate: 60
no_graphics: false
parameter_randomization: null
curriculum: null
checkpoint_settings:
run_id: CrawlerDynamic
initialize_from: null
load_model: false
resume: false
force: true
train_model: false
inference: false
debug: false

208
results/CrawlerDynamic/run_logs/timers.json


{
"name": "root",
"metadata": {
"timer_format_version": "0.1.0",
"start_time_seconds": "1593650162",
"python_version": "3.6.4 (default, Mar 1 2018, 18:36:42) \n[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.39.2)]",
"command_line_arguments": "/Users/brandonh/unity_projects/ml-agents-master/ml-agents/venv/bin/mlagents-learn config/ppo/CrawlerDynamic.yaml --run-id=CrawlerDynamic --force",
"mlagents_version": "0.18.0.dev0",
"mlagents_envs_version": "0.18.0.dev0",
"communication_protocol_version": "1.0.0",
"tensorflow_version": "2.2.0",
"end_time_seconds": "1593650180"
},
"total": 18.675483288941905,
"count": 1,
"self": 0.008750283974222839,
"children": {
"run_training.setup": {
"total": 0.015203848015516996,
"count": 1,
"self": 0.015203848015516996
},
"TrainerController.start_learning": {
"total": 18.651529156952165,
"count": 1,
"self": 1.732642306946218,
"children": {
"TrainerController._reset_env": {
"total": 13.572397847892717,
"count": 1,
"self": 13.572397847892717
},
"TrainerController.advance": {
"total": 3.0705842591123655,
"count": 235,
"self": 0.002972850692458451,
"children": {
"env_step": {
"total": 3.067611408419907,
"count": 235,
"self": 2.728578581358306,
"children": {
"SubprocessEnvManager._take_step": {
"total": 0.33576088724657893,
"count": 235,
"self": 0.007079660310409963,
"children": {
"NNPolicy.evaluate": {
"total": 0.32868122693616897,
"count": 166,
"self": 0.32868122693616897
}
}
},
"workers": {
"total": 0.0032719398150220513,
"count": 234,
"self": 0.0,
"children": {
"worker_root": {
"total": 17.95689078711439,
"count": 234,
"is_parallel": true,
"self": 15.592823190963827,
"children": {
"run_training.setup": {
"total": 0.0,
"count": 0,
"is_parallel": true,
"self": 0.0,
"children": {
"steps_from_proto": {
"total": 0.003518798970617354,
"count": 1,
"is_parallel": true,
"self": 0.00029500690288841724,
"children": {
"_process_vector_observation": {
"total": 0.0032237920677289367,
"count": 2,
"is_parallel": true,
"self": 0.0032237920677289367
}
}
},
"UnityEnvironment.step": {
"total": 0.0244212350808084,
"count": 1,
"is_parallel": true,
"self": 0.0002589779905974865,
"children": {
"UnityEnvironment._generate_step_input": {
"total": 0.0002669510431587696,
"count": 1,
"is_parallel": true,
"self": 0.0002669510431587696
},
"communicator.exchange": {
"total": 0.023314381018280983,
"count": 1,
"is_parallel": true,
"self": 0.023314381018280983
},
"steps_from_proto": {
"total": 0.000580925028771162,
"count": 1,
"is_parallel": true,
"self": 0.00011981092393398285,
"children": {
"_process_vector_observation": {
"total": 0.0004611141048371792,
"count": 2,
"is_parallel": true,
"self": 0.0004611141048371792
}
}
}
}
}
}
},
"UnityEnvironment.step": {
"total": 2.364067596150562,
"count": 233,
"is_parallel": true,
"self": 0.035590133047662675,
"children": {
"UnityEnvironment._generate_step_input": {
"total": 0.03359149140305817,
"count": 233,
"is_parallel": true,
"self": 0.03359149140305817
},
"communicator.exchange": {
"total": 2.196396351675503,
"count": 233,
"is_parallel": true,
"self": 2.196396351675503
},
"steps_from_proto": {
"total": 0.09848962002433836,
"count": 233,
"is_parallel": true,
"self": 0.022750661824829876,
"children": {
"_process_vector_observation": {
"total": 0.07573895819950849,
"count": 466,
"is_parallel": true,
"self": 0.07573895819950849
}
}
}
}
}
}
}
}
}
}
}
}
},
"trainer_threads": {
"total": 3.962998744100332e-05,
"count": 1,
"self": 3.962998744100332e-05,
"children": {
"thread_root": {
"total": 0.0,
"count": 0,
"is_parallel": true,
"self": 0.0,
"children": {
"trainer_advance": {
"total": 3.0491049140691757,
"count": 12027,
"is_parallel": true,
"self": 0.19714495609514415,
"children": {
"process_trajectory": {
"total": 2.8519599579740316,
"count": 12027,
"is_parallel": true,
"self": 2.8519599579740316
}
}
}
}
}
}
},
"TrainerController._save_model": {
"total": 0.275865113013424,
"count": 1,
"self": 0.00018105306662619114,
"children": {
"Trainer.save_model": {
"total": 0.2756840599467978,
"count": 1,
"self": 0.2756840599467978
}
}
}
}
}
}
}

7
results/CrawlerDynamic/run_logs/training_status.json


{
"metadata": {
"stats_format_version": "0.1.0",
"mlagents_version": "0.18.0.dev0",
"tensorflow_version": "2.2.0"
}
}

1001
results/CrawlerStatic/CrawlerStatic.nn
文件差异内容过多而无法显示
查看文件

2
results/CrawlerStatic/CrawlerStatic/checkpoint


model_checkpoint_path: "model-1548.ckpt"
all_model_checkpoint_paths: "model-1548.ckpt"

5
results/CrawlerStatic/CrawlerStatic/events.out.tfevents.1593650221.BrandonHunterHenry.local


�K" @ K��A brain.Event:2q�S�}]�� #2E K��A*�
�
HyperparametersB� B trainer_typeBppoBhyperparametersB�{'batch_size': 2024, 'buffer_size': 20240, 'learning_rate': 0.0003, 'beta': 0.005, 'epsilon': 0.2, 'lambd': 0.95, 'num_epoch': 3, 'learning_rate_schedule': 'linear'}Bnetwork_settingsBf{'normalize': True, 'hidden_units': 512, 'num_layers': 3, 'vis_encode_type': 'simple', 'memory': None}Breward_signalsB0{'extrinsic': {'gamma': 0.995, 'strength': 1.0}}B init_pathBNoneBkeep_checkpointsB5Bcheckpoint_intervalB500000B max_stepsB10000000B time_horizonB1000B summary_freqB30000BthreadedBTrueB self_playBNoneBbehavioral_cloningBNoneJ

text�b�y

1001
results/CrawlerStatic/CrawlerStatic/frozen_graph_def.pb
文件差异内容过多而无法显示
查看文件

20
results/CrawlerStatic/CrawlerStatic/model-1548.ckpt.index


 action_output_shape(5��8 global_step (59 � is_continuous_control (5�e memory_size (5�{: normalization_steps (59 �optimizer//extrinsic_value/bias (5�{:kernel � (�5Q�[U main_graph_0/hidden_0/bias� �(�5�3"�!kernel
�� � (��5���-1/bias� ��(�5�3"�!kernel
�� ��(��@5��D�2/bias� ��Q(�5�3"�!kernel
�� ��Q(��@5�nm3 $optimizer//extrinsic_value/bias/Adam ���(5�{:/_1 ���(5�{:1optimizer//optimizer//extrinsic_value/kernel/Adam � ���(�5�3"�1_1 � ���(�5�3"�main_graph_0/hidden_0/bias/Adam� ���(�5�3"�5_1� ���(�5�3"�, kernel/Adam
�� ���(��5��>7_1
�� ���(��5��>* 1/bias/Adam� ���(�5�3"�5_1� ���(�5�3"�, kernel/Adam
�� ���(��@5+��7_1
�� ���(��@5+��* 2/bias/Adam� ���(�5�3"�5_1� ���(�5�3"�, kernel/Adam
�� ���(��@5+��7_1
�� ���(��@5+�� policy/log_std/Adam ���(P5C+�f_1 ���(P5C+�f1optimizer//policy/main_graph_0/hidden_0/bias/Adam� ���(�5�3"�1_1� ���(�5�3"�( kernel/Adam
�� ���(��5��>3_1
�� ���(��5��>& 1/bias/Adam� ���(�5�3"�1_1� ���(�5�3"�( kernel/Adam
�� ���(��@5+��3_1
�� ���(��@5+��& 2/bias/Adam� ���(�5�3"�1_1� ���(�5�3"�( kernel/Adam
�� ���(��@5+��3_1
�� ���(��@5+�� u/bias/Adam ���(P5C+�f_1 ���(P5C+�f kernel/Adam � ���(��5c?c _1 � ���(��5c?coptimizer/beta1_power ���(5����2_power ���(5����policy/log_std ���(P5C+�fmain_graph_0/hidden_0/bias� ���(�5�3"�kernel
�� ���(��5H�m�1/bias� ���(�5�3"�kernel
�� ���(��@5~t&2/bias� ���(�5�3"�kernel
�� ���(��@5��wLu/bias ���(P5C+�f
kernel � ���(��5�H running_mean� ���(�5�i�variance� ���(�5{8�*trainer_major_version ���(5�{: inor_version ���(5�'yU patch_version ���(5�{:version_number ���(5��s'�� #�Ӹ����w��2%���W���$uG�

1001
results/CrawlerStatic/CrawlerStatic/model-1548.ckpt.meta
文件差异内容过多而无法显示
查看文件

1001
results/CrawlerStatic/CrawlerStatic/raw_graph_def.pb
文件差异内容过多而无法显示
查看文件

56
results/CrawlerStatic/configuration.yaml


behaviors:
CrawlerStatic:
trainer_type: ppo
hyperparameters:
batch_size: 2024
buffer_size: 20240
learning_rate: 0.0003
beta: 0.005
epsilon: 0.2
lambd: 0.95
num_epoch: 3
learning_rate_schedule: linear
network_settings:
normalize: true
hidden_units: 512
num_layers: 3
vis_encode_type: simple
memory: null
reward_signals:
extrinsic:
gamma: 0.995
strength: 1.0
init_path: null
keep_checkpoints: 5
checkpoint_interval: 500000
max_steps: 10000000
time_horizon: 1000
summary_freq: 30000
threaded: true
self_play: null
behavioral_cloning: null
env_settings:
env_path: null
env_args: null
base_port: 5005
num_envs: 1
seed: -1
engine_settings:
width: 84
height: 84
quality_level: 5
time_scale: 20
target_frame_rate: -1
capture_frame_rate: 60
no_graphics: false
parameter_randomization: null
curriculum: null
checkpoint_settings:
run_id: CrawlerStatic
initialize_from: null
load_model: false
resume: false
force: true
train_model: false
inference: false
debug: false

208
results/CrawlerStatic/run_logs/timers.json


{
"name": "root",
"metadata": {
"timer_format_version": "0.1.0",
"start_time_seconds": "1593650208",
"python_version": "3.6.4 (default, Mar 1 2018, 18:36:42) \n[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.39.2)]",
"command_line_arguments": "/Users/brandonh/unity_projects/ml-agents-master/ml-agents/venv/bin/mlagents-learn config/ppo/CrawlerStatic.yaml --run-id=CrawlerStatic --force",
"mlagents_version": "0.18.0.dev0",
"mlagents_envs_version": "0.18.0.dev0",
"communication_protocol_version": "1.0.0",
"tensorflow_version": "2.2.0",
"end_time_seconds": "1593650226"
},
"total": 18.12544374493882,
"count": 1,
"self": 0.008958819904364645,
"children": {
"run_training.setup": {
"total": 0.010861473041586578,
"count": 1,
"self": 0.010861473041586578
},
"TrainerController.start_learning": {
"total": 18.10562345199287,
"count": 1,
"self": 1.6754347131354734,
"children": {
"TrainerController._reset_env": {
"total": 12.422339505981654,
"count": 1,
"self": 12.422339505981654
},
"TrainerController.advance": {
"total": 3.6985495468834415,
"count": 251,
"self": 0.0033409703755751252,
"children": {
"env_step": {
"total": 3.6952085765078664,
"count": 251,
"self": 3.3399255577242,
"children": {
"SubprocessEnvManager._take_step": {
"total": 0.35151520220097154,
"count": 251,
"self": 0.00889498379547149,
"children": {
"NNPolicy.evaluate": {
"total": 0.34262021840550005,
"count": 181,
"self": 0.34262021840550005
}
}
},
"workers": {
"total": 0.0037678165826946497,
"count": 250,
"self": 0.0,
"children": {
"worker_root": {
"total": 17.38591544260271,
"count": 250,
"is_parallel": true,
"self": 14.477078061550856,
"children": {
"run_training.setup": {
"total": 0.0,
"count": 0,
"is_parallel": true,
"self": 0.0,
"children": {
"steps_from_proto": {
"total": 0.00139414903242141,
"count": 1,
"is_parallel": true,
"self": 0.0003408790798857808,
"children": {
"_process_vector_observation": {
"total": 0.0010532699525356293,
"count": 2,
"is_parallel": true,
"self": 0.0010532699525356293
}
}
},
"UnityEnvironment.step": {
"total": 0.024324635043740273,
"count": 1,
"is_parallel": true,
"self": 0.00019912992138415575,
"children": {
"UnityEnvironment._generate_step_input": {
"total": 0.00030468206387013197,
"count": 1,
"is_parallel": true,
"self": 0.00030468206387013197
},
"communicator.exchange": {
"total": 0.023232000996358693,
"count": 1,
"is_parallel": true,
"self": 0.023232000996358693
},
"steps_from_proto": {
"total": 0.0005888220621272922,
"count": 1,
"is_parallel": true,
"self": 0.0001468671252951026,
"children": {
"_process_vector_observation": {
"total": 0.00044195493683218956,
"count": 2,
"is_parallel": true,
"self": 0.00044195493683218956
}
}
}
}
}
}
},
"UnityEnvironment.step": {
"total": 2.9088373810518533,
"count": 249,
"is_parallel": true,
"self": 0.0450834094081074,
"children": {
"UnityEnvironment._generate_step_input": {
"total": 0.0420442724134773,
"count": 249,
"is_parallel": true,
"self": 0.0420442724134773
},
"communicator.exchange": {
"total": 2.6973308051237836,
"count": 249,
"is_parallel": true,
"self": 2.6973308051237836
},
"steps_from_proto": {
"total": 0.12437889410648495,
"count": 249,
"is_parallel": true,
"self": 0.02756049670279026,
"children": {
"_process_vector_observation": {
"total": 0.09681839740369469,
"count": 498,
"is_parallel": true,
"self": 0.09681839740369469
}
}
}
}
}
}
}
}
}
}
}
}
},
"trainer_threads": {
"total": 4.0604034438729286e-05,
"count": 1,
"self": 4.0604034438729286e-05,
"children": {
"thread_root": {
"total": 0.0,
"count": 0,
"is_parallel": true,
"self": 0.0,
"children": {
"trainer_advance": {
"total": 3.662667714059353,
"count": 12283,
"is_parallel": true,
"self": 0.25680465332698077,
"children": {
"process_trajectory": {
"total": 3.405863060732372,
"count": 12283,
"is_parallel": true,
"self": 3.405863060732372
}
}
}
}
}
}
},
"TrainerController._save_model": {
"total": 0.3092590819578618,
"count": 1,
"self": 0.00035183189902454615,
"children": {
"Trainer.save_model": {
"total": 0.30890725005883723,
"count": 1,
"self": 0.30890725005883723
}
}
}
}
}
}
}

7
results/CrawlerStatic/run_logs/training_status.json


{
"metadata": {
"stats_format_version": "0.1.0",
"mlagents_version": "0.18.0.dev0",
"tensorflow_version": "2.2.0"
}
}

部分文件因为文件数量过多而无法显示

正在加载...
取消
保存