V2.4 Add new reward function

add new reward function in attack mode
calculate distance between closest enemy and facing center line.
let agent could spawn in whole map area.
add penalty while mouseX is moving.
This commit is contained in:
Koha9 2022-12-08 06:24:51 +09:00
parent b2f80287d5
commit f9b806de02
7 changed files with 30521 additions and 30276 deletions

View File

@ -1 +1 @@
{"count":1,"self":27.078879999999998,"total":27.587156999999998,"children":{"InitializeActuators":{"count":2,"self":0.0020005,"total":0.0020005,"children":null},"InitializeSensors":{"count":2,"self":0.0005046,"total":0.0005046,"children":null},"AgentSendState":{"count":1131,"self":0.0065818,"total":0.4350072,"children":{"CollectObservations":{"count":1131,"self":0.42089679999999996,"total":0.42089679999999996,"children":null},"WriteActionMask":{"count":1131,"self":0.0015006,"total":0.0015006,"children":null},"RequestDecision":{"count":1131,"self":0.0060279999999999995,"total":0.0060279999999999995,"children":null}}},"DecideAction":{"count":1131,"self":0.0085232,"total":0.0085232,"children":null},"AgentAct":{"count":1131,"self":0.0607297,"total":0.0607297,"children":null}},"gauges":{},"metadata":{"timer_format_version":"0.1.0","start_time_seconds":"1670220557","unity_version":"2021.3.14f1","command_line_arguments":"C:\\Program Files\\Unity\\Hub\\Editor\\2021.3.14f1\\Editor\\Unity.exe -projectpath C:\\Users\\UCUNI\\OneDrive\\Unity\\ML-Agents\\Aimbot-ParallelEnv -useHub -hubIPC -cloudEnvironment production -licensingIpc LicenseClient-UCUNI -hubSessionId 17fd75c0-73f2-11ed-ae93-8b2766ae699b -accessToken xyv47LyYfxjrKoKJF2JxRySrgVkeGaEV5onFZkcJqLE00ef","communication_protocol_version":"1.5.0","com.unity.ml-agents_version":"2.0.1","scene_name":"InGame","end_time_seconds":"1670220585"}} {"count":1,"self":68.6533376,"total":73.8963627,"children":{"InitializeActuators":{"count":16,"self":0.0020016,"total":0.0020016,"children":null},"InitializeSensors":{"count":16,"self":0.0015004999999999999,"total":0.0015004999999999999,"children":null},"AgentSendState":{"count":3437,"self":0.0406625,"total":0.1679606,"children":{"CollectObservations":{"count":27496,"self":0.0937596,"total":0.0937596,"children":null},"WriteActionMask":{"count":27496,"self":0.0085214,"total":0.0085214,"children":null},"RequestDecision":{"count":27496,"self":0.0250171,"total":0.0250171,"children":null}}},"DecideAction":{"count":3437,"self":0.051228499999999996,"total":0.051228499999999996,"children":null},"AgentAct":{"count":3437,"self":5.0198247999999994,"total":5.0198249,"children":null}},"gauges":{"AKMAgent.CumulativeReward":{"count":18,"max":2136.51074,"min":-6861.4585,"runningAverage":-3835.49414,"value":2136.51074,"weightedAverage":-1836.73022}},"metadata":{"timer_format_version":"0.1.0","start_time_seconds":"1670446861","unity_version":"2021.3.14f1","command_line_arguments":"C:\\Program Files\\Unity\\Hub\\Editor\\2021.3.14f1\\Editor\\Unity.exe -projectpath C:\\Users\\UCUNI\\OneDrive\\Unity\\ML-Agents\\Aimbot-ParallelEnv -useHub -hubIPC -cloudEnvironment production -licensingIpc LicenseClient-UCUNI -hubSessionId 65c82a90-7486-11ed-899f-f7f93bed2228 -accessToken K6WsTHUI33yXzJI3wDtPXzHPZq5eLKSYBLKbLhzh7nc00ef","communication_protocol_version":"1.5.0","com.unity.ml-agents_version":"2.0.1","scene_name":"InGame","end_time_seconds":"1670446934"}}

File diff suppressed because it is too large Load Diff

View File

@ -12,6 +12,7 @@
using System.Linq; using System.Linq;
using System.Drawing; using System.Drawing;
using Color = UnityEngine.Color; using Color = UnityEngine.Color;
using static TargetController;
/*TODO: /*TODO:
tag tag
@ -289,6 +290,7 @@ float ballistic()
float facingReward() float facingReward()
{ {
float thisReward = 0; float thisReward = 0;
bool isFacingtoEnemy = false;
Ray ray = thisCam.ScreenPointToRay(new Vector3(thisCam.pixelWidth / 2, thisCam.pixelHeight / 2, 0)); Ray ray = thisCam.ScreenPointToRay(new Vector3(thisCam.pixelWidth / 2, thisCam.pixelHeight / 2, 0));
if (targetCon.targetTypeInt == (int)TargetController.Targets.Free) if (targetCon.targetTypeInt == (int)TargetController.Targets.Free)
{ {
@ -296,14 +298,37 @@ float facingReward()
RaycastHit hit; RaycastHit hit;
if (Physics.Raycast(ray, out hit, 100)) if (Physics.Raycast(ray, out hit, 100))
{ {
// facing to an enemy
if (hit.collider.tag != myTag && hit.collider.tag != "Wall") if (hit.collider.tag != myTag && hit.collider.tag != "Wall")
{ {
thisReward = paramContainer.facingReward; thisReward = paramContainer.facingReward;
isFacingtoEnemy = true;
} }
} }
if (rayScript.inViewEnemies.Count > 0 && !isFacingtoEnemy) {
// have enemy in view
List<float> projectionDis = new List<float>();
foreach (GameObject thisEnemy in rayScript.inViewEnemies)
{
// for each enemy in view
Vector3 projection = Vector3.Project(thisEnemy.transform.position - transform.position, (ray.direction * 10));
Vector3 verticalToRay = transform.position + projection - thisEnemy.transform.position;
projectionDis.Add(verticalToRay.magnitude);
// Debug.Log("enemy!" + verticalToRay.magnitude);
// Debug.DrawRay(transform.position, (ray.direction * 100), Color.cyan);
// Debug.DrawRay(transform.position, thisEnemy.transform.position - transform.position, Color.yellow);
// Debug.DrawRay(transform.position, projection, Color.blue);
// Debug.DrawRay(thisEnemy.transform.position, verticalToRay, Color.magenta);
}
// enemy in view Reward
thisReward = 1 / MathF.Sqrt(paramContainer.facingInviewEnemyDisCOEF* projectionDis.Min()+0.00001f);
if (thisReward >= paramContainer.facingReward) thisReward = paramContainer.facingReward; // limit
Debug.Log("ninimum = " + thisReward);
}
} }
else if(targetCon.targetTypeInt == (int)TargetController.Targets.Attack) else if(targetCon.targetTypeInt == (int)TargetController.Targets.Attack)
{ {
// attack mode
float targetDis = Vector3.Distance(blockContainer.thisBlock.transform.position, transform.position); float targetDis = Vector3.Distance(blockContainer.thisBlock.transform.position, transform.position);
if(targetDis <= rayScript.viewDistance) if(targetDis <= rayScript.viewDistance)
{ {
@ -388,6 +413,10 @@ public float rewardCalculate(float sceneReward,float mouseX)
{ {
epreward -= spinPenaltyReward; epreward -= spinPenaltyReward;
} }
else
{
epreward -= Math.Abs(mouseX) * paramContainer.mousePenalty;
}
return epreward; return epreward;
} }
@ -418,7 +447,6 @@ public override void CollectObservations(VectorSensor sensor)
//List<float> enemyLDisList = RaySensors.enemyLDisList;// All Enemy Lside Distances //List<float> enemyLDisList = RaySensors.enemyLDisList;// All Enemy Lside Distances
//List<float> enemyRDisList = RaySensors.enemyRDisList;// All Enemy Rside Distances //List<float> enemyRDisList = RaySensors.enemyRDisList;// All Enemy Rside Distances
rayScript.updateRayInfo();
float[] myObserve = { transform.localPosition.x, transform.localPosition.y, transform.localPosition.z, transform.eulerAngles.y }; float[] myObserve = { transform.localPosition.x, transform.localPosition.y, transform.localPosition.z, transform.eulerAngles.y };
float[] rayTagResult = rayScript.rayTagResult;// 探测用RayTag结果 float[](raySensorNum,1) float[] rayTagResult = rayScript.rayTagResult;// 探测用RayTag结果 float[](raySensorNum,1)
float[] rayDisResult = rayScript.rayDisResult; // 探测用RayDis结果 float[](raySensorNum,1) float[] rayDisResult = rayScript.rayDisResult; // 探测用RayDis结果 float[](raySensorNum,1)
@ -456,6 +484,7 @@ public override void OnActionReceived(ActionBuffers actionBuffers)
shoot = mouseShoot; shoot = mouseShoot;
cameraControl(Mouse_X, 0); cameraControl(Mouse_X, 0);
moveAgent(vertical, horizontal); moveAgent(vertical, horizontal);
rayScript.updateRayInfo(); // update raycast
//判断结束 //判断结束
float sceneReward = 0f; float sceneReward = 0f;

View File

@ -22,8 +22,10 @@ public class ParameterContainer : MonoBehaviour
public bool lockCameraX = false; public bool lockCameraX = false;
public bool lockCameraY = true; public bool lockCameraY = true;
public bool chartOn = false; public bool chartOn = false;
public bool spawnAgentInAllMap = false;
public int spinRecordMax = 20; public int spinRecordMax = 20;
public float spinPenaltyThreshold = 50; public float spinPenaltyThreshold = 50;
public float facingInviewEnemyDisCOEF = 0.5f;
[Header("Dynamic Defaut Rewards")] [Header("Dynamic Defaut Rewards")]
@ -78,8 +80,10 @@ public class ParameterContainer : MonoBehaviour
[Header("Penalty Rewards")] [Header("Penalty Rewards")]
[Tooltip("Speed Penalty Reward")] [Tooltip("Speed Penalty Reward")]
public float speedPenalty = 0f; public float speedPenalty = 0f;
[Tooltip("view Panalty Reward")] [Tooltip("spiiiiiiin Panalty Reward")]
public float spinPenalty = 0f; public float spinPenalty = 0f;
[Tooltip("while move mouse a little bit's penalty")]
public float mousePenalty = 0f;
[Header("Dynamic Rewards")] [Header("Dynamic Rewards")]
[Tooltip("Free mode Hit Enemy reward")] [Tooltip("Free mode Hit Enemy reward")]

View File

@ -36,6 +36,7 @@ public class RaySensors : MonoBehaviour
GameObject[] rayInfoOBJ; GameObject[] rayInfoOBJ;
LineRenderer[] lineRenderers; LineRenderer[] lineRenderers;
rayInfoUI[] rayInfoUIs; rayInfoUI[] rayInfoUIs;
public List<GameObject> inViewEnemies = new List<GameObject>();
private void Start() private void Start()
@ -102,6 +103,7 @@ private void singleRaycastUpdate(Ray ray,LineRenderer thisLineRenderer,rayInfoUI
break; break;
case 2: // Enemy case 2: // Enemy
rayColor = Color.red; rayColor = Color.red;
inViewEnemies.Add(thisHit.transform.gameObject);
break; break;
case -1: // Hit Nothing case -1: // Hit Nothing
rayColor = Color.gray; rayColor = Color.gray;
@ -162,7 +164,7 @@ public void updateRayInfo()
float focusLEdge = agentCam.pixelWidth * (1 - focusRange) / 2; float focusLEdge = agentCam.pixelWidth * (1 - focusRange) / 2;
float focusREdge = agentCam.pixelWidth * (1 + focusRange) / 2; float focusREdge = agentCam.pixelWidth * (1 + focusRange) / 2;
float thisCamPixelHeight = agentCam.pixelHeight; float thisCamPixelHeight = agentCam.pixelHeight;
inViewEnemies.Clear();
for (int i = 0; i < halfOuterRayNum; i++) // create left outside rays; 0 ~ focusLeftEdge for (int i = 0; i < halfOuterRayNum; i++) // create left outside rays; 0 ~ focusLeftEdge
{ {
Vector3 point = new Vector3(i * focusLEdge / (halfOuterRayNum - 1), thisCamPixelHeight / 2, 0); Vector3 point = new Vector3(i * focusLEdge / (halfOuterRayNum - 1), thisCamPixelHeight / 2, 0);

View File

@ -215,8 +215,19 @@ public void updateTargetStates()
// move Agent into Agent Spawn Area // move Agent into Agent Spawn Area
public void moveAgentToSpwanArea() public void moveAgentToSpwanArea()
{ {
float randX = UnityEngine.Random.Range(minAgentAreaX, maxAgentAreaX); float randX = UnityEngine.Random.Range(minAgentAreaX, maxAgentAreaX); ;
float randZ = UnityEngine.Random.Range(minAgentAreaZ, maxAgentAreaZ); float randZ = 0f;
if (paramCon.spawnAgentInAllMap)
{
// spawn agent in all around map
randZ = UnityEngine.Random.Range(minAgentAreaZ, maxEnemyAreaZ);
}
else
{
// spawn agent in only agent spawn area
randZ = UnityEngine.Random.Range(minAgentAreaZ, maxAgentAreaZ);
}
int Y = 1; int Y = 1;
Vector3 initAgentLoc = new Vector3(randX, Y, randZ); Vector3 initAgentLoc = new Vector3(randX, Y, randZ);
moveAgentTo(initAgentLoc); moveAgentTo(initAgentLoc);
@ -369,6 +380,7 @@ public float getDistanceReward(float nowDistance,int inarea)
{ {
if (firstRewardFlag) if (firstRewardFlag)
{ {
// first distance record
(lastDistance, _) = blockCont.getAgentTargetDistanceAndInside(AgentObj.transform.position); (lastDistance, _) = blockCont.getAgentTargetDistanceAndInside(AgentObj.transform.position);
firstRewardFlag = false; firstRewardFlag = false;
} }

View File

@ -1,6 +1,30 @@
%YAML 1.1 %YAML 1.1
%TAG !u! tag:unity3d.com,2011: %TAG !u! tag:unity3d.com,2011:
--- !u!114 &1 --- !u!114 &1
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 12004, guid: 0000000000000000e000000000000000, type: 0}
m_Name:
m_EditorClassIdentifier:
m_PixelRect:
serializedVersion: 2
x: -1073
y: -631
width: 1080
height: 584
m_ShowMode: 0
m_Title: Game
m_RootView: {fileID: 4}
m_MinSize: {x: 100, y: 121}
m_MaxSize: {x: 4000, y: 4021}
m_Maximized: 0
--- !u!114 &2
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 52 m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@ -14,17 +38,67 @@ MonoBehaviour:
m_EditorClassIdentifier: m_EditorClassIdentifier:
m_PixelRect: m_PixelRect:
serializedVersion: 2 serializedVersion: 2
x: 70 x: 62
y: 53 y: 43
width: 1840 width: 1858
height: 1019 height: 1037
m_ShowMode: 4 m_ShowMode: 4
m_Title: Project m_Title: Hierarchy
m_RootView: {fileID: 9} m_RootView: {fileID: 12}
m_MinSize: {x: 875, y: 542} m_MinSize: {x: 875, y: 542}
m_MaxSize: {x: 10000, y: 10000} m_MaxSize: {x: 10000, y: 10000}
m_Maximized: 0 m_Maximized: 1
--- !u!114 &2 --- !u!114 &3
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0}
m_Name: GameView
m_EditorClassIdentifier:
m_Children: []
m_Position:
serializedVersion: 2
x: 0
y: 0
width: 1080
height: 584
m_MinSize: {x: 100, y: 121}
m_MaxSize: {x: 4000, y: 4021}
m_ActualView: {fileID: 16}
m_Panes:
- {fileID: 16}
m_Selected: 0
m_LastSelected: 0
--- !u!114 &4
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0}
m_Name:
m_EditorClassIdentifier:
m_Children:
- {fileID: 3}
m_Position:
serializedVersion: 2
x: 0
y: 0
width: 1080
height: 584
m_MinSize: {x: 100, y: 121}
m_MaxSize: {x: 4000, y: 4021}
vertical: 0
controlID: 93
--- !u!114 &5
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 52 m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@ -40,18 +114,18 @@ MonoBehaviour:
m_Position: m_Position:
serializedVersion: 2 serializedVersion: 2
x: 0 x: 0
y: 585 y: 596
width: 1094 width: 1100
height: 384 height: 391
m_MinSize: {x: 231, y: 271} m_MinSize: {x: 231, y: 271}
m_MaxSize: {x: 10001, y: 10021} m_MaxSize: {x: 10001, y: 10021}
m_ActualView: {fileID: 14} m_ActualView: {fileID: 18}
m_Panes: m_Panes:
- {fileID: 14} - {fileID: 18}
- {fileID: 13} - {fileID: 17}
m_Selected: 0 m_Selected: 0
m_LastSelected: 1 m_LastSelected: 1
--- !u!114 &3 --- !u!114 &6
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 52 m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@ -64,19 +138,19 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
m_Children: m_Children:
- {fileID: 12} - {fileID: 15}
- {fileID: 2} - {fileID: 5}
m_Position: m_Position:
serializedVersion: 2 serializedVersion: 2
x: 0 x: 0
y: 0 y: 0
width: 1094 width: 1100
height: 969 height: 987
m_MinSize: {x: 100, y: 200} m_MinSize: {x: 100, y: 200}
m_MaxSize: {x: 8096, y: 16192} m_MaxSize: {x: 8096, y: 16192}
vertical: 1 vertical: 1
controlID: 65 controlID: 23
--- !u!114 &4 --- !u!114 &7
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 52 m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@ -92,17 +166,17 @@ MonoBehaviour:
m_Position: m_Position:
serializedVersion: 2 serializedVersion: 2
x: 0 x: 0
y: 375 y: 382
width: 229 width: 271
height: 594 height: 605
m_MinSize: {x: 102, y: 121} m_MinSize: {x: 100, y: 100}
m_MaxSize: {x: 4002, y: 4021} m_MaxSize: {x: 4000, y: 4000}
m_ActualView: {fileID: 18} m_ActualView: {fileID: 22}
m_Panes: m_Panes:
- {fileID: 18} - {fileID: 22}
m_Selected: 0 m_Selected: 0
m_LastSelected: 0 m_LastSelected: 0
--- !u!114 &5 --- !u!114 &8
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 52 m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@ -115,19 +189,19 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
m_Children: m_Children:
- {fileID: 6} - {fileID: 9}
- {fileID: 4} - {fileID: 7}
m_Position: m_Position:
serializedVersion: 2 serializedVersion: 2
x: 1094 x: 1100
y: 0 y: 0
width: 229 width: 271
height: 969 height: 987
m_MinSize: {x: 100, y: 200} m_MinSize: {x: 100, y: 200}
m_MaxSize: {x: 8096, y: 16192} m_MaxSize: {x: 8096, y: 16192}
vertical: 1 vertical: 1
controlID: 119 controlID: 65
--- !u!114 &6 --- !u!114 &9
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 52 m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@ -144,16 +218,16 @@ MonoBehaviour:
serializedVersion: 2 serializedVersion: 2
x: 0 x: 0
y: 0 y: 0
width: 229 width: 271
height: 375 height: 382
m_MinSize: {x: 202, y: 221} m_MinSize: {x: 200, y: 200}
m_MaxSize: {x: 4002, y: 4021} m_MaxSize: {x: 4000, y: 4000}
m_ActualView: {fileID: 16} m_ActualView: {fileID: 20}
m_Panes: m_Panes:
- {fileID: 16} - {fileID: 20}
m_Selected: 0 m_Selected: 0
m_LastSelected: 0 m_LastSelected: 0
--- !u!114 &7 --- !u!114 &10
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 52 m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@ -166,20 +240,20 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
m_Children: m_Children:
- {fileID: 3} - {fileID: 6}
- {fileID: 5}
- {fileID: 8} - {fileID: 8}
- {fileID: 11}
m_Position: m_Position:
serializedVersion: 2 serializedVersion: 2
x: 0 x: 0
y: 30 y: 30
width: 1840 width: 1858
height: 969 height: 987
m_MinSize: {x: 300, y: 200} m_MinSize: {x: 300, y: 200}
m_MaxSize: {x: 24288, y: 16192} m_MaxSize: {x: 24288, y: 16192}
vertical: 0 vertical: 0
controlID: 28 controlID: 22
--- !u!114 &8 --- !u!114 &11
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 52 m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@ -194,18 +268,18 @@ MonoBehaviour:
m_Children: [] m_Children: []
m_Position: m_Position:
serializedVersion: 2 serializedVersion: 2
x: 1323 x: 1371
y: 0 y: 0
width: 517 width: 487
height: 969 height: 987
m_MinSize: {x: 276, y: 71} m_MinSize: {x: 275, y: 50}
m_MaxSize: {x: 4001, y: 4021} m_MaxSize: {x: 4000, y: 4000}
m_ActualView: {fileID: 15} m_ActualView: {fileID: 19}
m_Panes: m_Panes:
- {fileID: 15} - {fileID: 19}
m_Selected: 0 m_Selected: 0
m_LastSelected: 0 m_LastSelected: 0
--- !u!114 &9 --- !u!114 &12
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 52 m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@ -218,22 +292,22 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
m_Children: m_Children:
- {fileID: 13}
- {fileID: 10} - {fileID: 10}
- {fileID: 7} - {fileID: 14}
- {fileID: 11}
m_Position: m_Position:
serializedVersion: 2 serializedVersion: 2
x: 0 x: 0
y: 0 y: 0
width: 1840 width: 1858
height: 1019 height: 1037
m_MinSize: {x: 875, y: 300} m_MinSize: {x: 875, y: 300}
m_MaxSize: {x: 10000, y: 10000} m_MaxSize: {x: 10000, y: 10000}
m_UseTopView: 1 m_UseTopView: 1
m_TopViewHeight: 30 m_TopViewHeight: 30
m_UseBottomView: 1 m_UseBottomView: 1
m_BottomViewHeight: 20 m_BottomViewHeight: 20
--- !u!114 &10 --- !u!114 &13
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 52 m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@ -250,12 +324,12 @@ MonoBehaviour:
serializedVersion: 2 serializedVersion: 2
x: 0 x: 0
y: 0 y: 0
width: 1840 width: 1858
height: 30 height: 30
m_MinSize: {x: 0, y: 0} m_MinSize: {x: 0, y: 0}
m_MaxSize: {x: 0, y: 0} m_MaxSize: {x: 0, y: 0}
m_LastLoadedLayoutName: m_LastLoadedLayoutName:
--- !u!114 &11 --- !u!114 &14
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 52 m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@ -271,12 +345,12 @@ MonoBehaviour:
m_Position: m_Position:
serializedVersion: 2 serializedVersion: 2
x: 0 x: 0
y: 999 y: 1017
width: 1840 width: 1858
height: 20 height: 20
m_MinSize: {x: 0, y: 0} m_MinSize: {x: 0, y: 0}
m_MaxSize: {x: 0, y: 0} m_MaxSize: {x: 0, y: 0}
--- !u!114 &12 --- !u!114 &15
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 52 m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@ -293,16 +367,108 @@ MonoBehaviour:
serializedVersion: 2 serializedVersion: 2
x: 0 x: 0
y: 0 y: 0
width: 1094 width: 1100
height: 585 height: 596
m_MinSize: {x: 201, y: 221} m_MinSize: {x: 201, y: 221}
m_MaxSize: {x: 4001, y: 4021} m_MaxSize: {x: 4001, y: 4021}
m_ActualView: {fileID: 17} m_ActualView: {fileID: 21}
m_Panes: m_Panes:
- {fileID: 17} - {fileID: 21}
m_Selected: 0 m_Selected: 0
m_LastSelected: 0 m_LastSelected: 0
--- !u!114 &13 --- !u!114 &16
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 12015, guid: 0000000000000000e000000000000000, type: 0}
m_Name:
m_EditorClassIdentifier:
m_MinSize: {x: 100, y: 100}
m_MaxSize: {x: 4000, y: 4000}
m_TitleContent:
m_Text: Game
m_Image: {fileID: -6423792434712278376, guid: 0000000000000000d000000000000000, type: 0}
m_Tooltip:
m_Pos:
serializedVersion: 2
x: -1073
y: -631
width: 1080
height: 563
m_ViewDataDictionary: {fileID: 0}
m_OverlayCanvas:
m_LastAppliedPresetName: Default
m_SaveData: []
m_SerializedViewNames: []
m_SerializedViewValues: []
m_PlayModeViewName: GameView
m_ShowGizmos: 0
m_TargetDisplay: 0
m_ClearColor: {r: 0, g: 0, b: 0, a: 0}
m_TargetSize: {x: 1080, y: 542}
m_TextureFilterMode: 0
m_TextureHideFlags: 61
m_RenderIMGUI: 1
m_EnterPlayModeBehavior: 0
m_UseMipMap: 0
m_VSyncEnabled: 0
m_Gizmos: 0
m_Stats: 0
m_SelectedSizes: 00000000000000000000000000000000000000000000000000000000000000000000000000000000
m_ZoomArea:
m_HRangeLocked: 0
m_VRangeLocked: 0
hZoomLockedByDefault: 0
vZoomLockedByDefault: 0
m_HBaseRangeMin: -540
m_HBaseRangeMax: 540
m_VBaseRangeMin: -271
m_VBaseRangeMax: 271
m_HAllowExceedBaseRangeMin: 1
m_HAllowExceedBaseRangeMax: 1
m_VAllowExceedBaseRangeMin: 1
m_VAllowExceedBaseRangeMax: 1
m_ScaleWithWindow: 0
m_HSlider: 0
m_VSlider: 0
m_IgnoreScrollWheelUntilClicked: 0
m_EnableMouseInput: 1
m_EnableSliderZoomHorizontal: 0
m_EnableSliderZoomVertical: 0
m_UniformScale: 1
m_UpDirection: 1
m_DrawArea:
serializedVersion: 2
x: 0
y: 21
width: 1080
height: 542
m_Scale: {x: 1, y: 1}
m_Translation: {x: 540, y: 271}
m_MarginLeft: 0
m_MarginRight: 0
m_MarginTop: 0
m_MarginBottom: 0
m_LastShownAreaInsideMargins:
serializedVersion: 2
x: -540
y: -271
width: 1080
height: 542
m_MinimalGUI: 1
m_defaultScale: 1
m_LastWindowPixelSize: {x: 1080, y: 563}
m_ClearInEditMode: 1
m_NoCameraWarning: 1
m_LowResolutionForAspectRatios: 01000000000000000000
m_XRRenderMode: 0
m_RenderTexture: {fileID: 0}
--- !u!114 &17
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 52 m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@ -330,7 +496,7 @@ MonoBehaviour:
m_OverlayCanvas: m_OverlayCanvas:
m_LastAppliedPresetName: Default m_LastAppliedPresetName: Default
m_SaveData: [] m_SaveData: []
--- !u!114 &14 --- !u!114 &18
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 52 m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@ -350,10 +516,10 @@ MonoBehaviour:
m_Tooltip: m_Tooltip:
m_Pos: m_Pos:
serializedVersion: 2 serializedVersion: 2
x: 70 x: 62
y: 668 y: 669
width: 1093 width: 1099
height: 363 height: 370
m_ViewDataDictionary: {fileID: 0} m_ViewDataDictionary: {fileID: 0}
m_OverlayCanvas: m_OverlayCanvas:
m_LastAppliedPresetName: Default m_LastAppliedPresetName: Default
@ -383,10 +549,10 @@ MonoBehaviour:
m_LockTracker: m_LockTracker:
m_IsLocked: 0 m_IsLocked: 0
m_FolderTreeState: m_FolderTreeState:
scrollPos: {x: 0, y: 0} scrollPos: {x: 0, y: 34}
m_SelectedIDs: 6a780000 m_SelectedIDs: 7a780000
m_LastClickedID: 30826 m_LastClickedID: 30842
m_ExpandedIDs: 00000000287800002a7800002c7800002e780000307800006478000000ca9a3b m_ExpandedIDs: 0000000030780000327800003478000036780000387800006e7800007478000000ca9a3b
m_RenameOverlay: m_RenameOverlay:
m_UserAcceptedRename: 0 m_UserAcceptedRename: 0
m_Name: m_Name:
@ -402,7 +568,7 @@ MonoBehaviour:
m_IsRenaming: 0 m_IsRenaming: 0
m_OriginalEventType: 11 m_OriginalEventType: 11
m_IsRenamingFilename: 1 m_IsRenamingFilename: 1
m_ClientGUIView: {fileID: 2} m_ClientGUIView: {fileID: 5}
m_SearchString: m_SearchString:
m_CreateAssetUtility: m_CreateAssetUtility:
m_EndAction: {fileID: 0} m_EndAction: {fileID: 0}
@ -414,7 +580,7 @@ MonoBehaviour:
scrollPos: {x: 0, y: 0} scrollPos: {x: 0, y: 0}
m_SelectedIDs: m_SelectedIDs:
m_LastClickedID: 0 m_LastClickedID: 0
m_ExpandedIDs: 00000000287800002a7800002c7800002e78000030780000 m_ExpandedIDs: 000000003078000032780000347800003678000038780000
m_RenameOverlay: m_RenameOverlay:
m_UserAcceptedRename: 0 m_UserAcceptedRename: 0
m_Name: m_Name:
@ -458,7 +624,7 @@ MonoBehaviour:
m_IsRenaming: 0 m_IsRenaming: 0
m_OriginalEventType: 11 m_OriginalEventType: 11
m_IsRenamingFilename: 1 m_IsRenamingFilename: 1
m_ClientGUIView: {fileID: 2} m_ClientGUIView: {fileID: 5}
m_CreateAssetUtility: m_CreateAssetUtility:
m_EndAction: {fileID: 0} m_EndAction: {fileID: 0}
m_InstanceID: 0 m_InstanceID: 0
@ -470,7 +636,7 @@ MonoBehaviour:
m_GridSize: 16 m_GridSize: 16
m_SkipHiddenPackages: 0 m_SkipHiddenPackages: 0
m_DirectoriesAreaWidth: 355 m_DirectoriesAreaWidth: 355
--- !u!114 &15 --- !u!114 &19
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 52 m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@ -490,10 +656,10 @@ MonoBehaviour:
m_Tooltip: m_Tooltip:
m_Pos: m_Pos:
serializedVersion: 2 serializedVersion: 2
x: 1393 x: 1433
y: 83 y: 73
width: 516 width: 486
height: 948 height: 966
m_ViewDataDictionary: {fileID: 0} m_ViewDataDictionary: {fileID: 0}
m_OverlayCanvas: m_OverlayCanvas:
m_LastAppliedPresetName: Default m_LastAppliedPresetName: Default
@ -505,13 +671,13 @@ MonoBehaviour:
m_ControlHash: -371814159 m_ControlHash: -371814159
m_PrefName: Preview_InspectorPreview m_PrefName: Preview_InspectorPreview
m_LastInspectedObjectInstanceID: -1 m_LastInspectedObjectInstanceID: -1
m_LastVerticalScrollValue: 0 m_LastVerticalScrollValue: 339
m_GlobalObjectId: m_GlobalObjectId:
m_InspectorMode: 0 m_InspectorMode: 0
m_LockTracker: m_LockTracker:
m_IsLocked: 0 m_IsLocked: 0
m_PreviewWindow: {fileID: 0} m_PreviewWindow: {fileID: 0}
--- !u!114 &16 --- !u!114 &20
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 52 m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@ -531,10 +697,10 @@ MonoBehaviour:
m_Tooltip: m_Tooltip:
m_Pos: m_Pos:
serializedVersion: 2 serializedVersion: 2
x: 1164 x: 1162
y: 83 y: 73
width: 227 width: 269
height: 354 height: 361
m_ViewDataDictionary: {fileID: 0} m_ViewDataDictionary: {fileID: 0}
m_OverlayCanvas: m_OverlayCanvas:
m_LastAppliedPresetName: Default m_LastAppliedPresetName: Default
@ -542,9 +708,9 @@ MonoBehaviour:
m_SceneHierarchy: m_SceneHierarchy:
m_TreeViewState: m_TreeViewState:
scrollPos: {x: 0, y: 0} scrollPos: {x: 0, y: 0}
m_SelectedIDs: 180e0000 m_SelectedIDs: 28760400087a0400288104000e810400dc7e0400c27f040014810400467d0400
m_LastClickedID: 0 m_LastClickedID: 294214
m_ExpandedIDs: 32fbffff m_ExpandedIDs: e442f9ff4243f9ff9043f9ffb045f9ff0c46f9ff8e47f9ffaa39fafffaa3faffce30fbff7644fbff8005fcffaa05fcffd405fcffb091fdffda91fdff54bdfdff60bdfdff8abdfdff7207ffffce07ffff5009ffff32fbffffe8690000f46a0000ac5c010006610100966301003865010074690100186c0100246d0100
m_RenameOverlay: m_RenameOverlay:
m_UserAcceptedRename: 0 m_UserAcceptedRename: 0
m_Name: m_Name:
@ -560,7 +726,7 @@ MonoBehaviour:
m_IsRenaming: 0 m_IsRenaming: 0
m_OriginalEventType: 11 m_OriginalEventType: 11
m_IsRenamingFilename: 0 m_IsRenamingFilename: 0
m_ClientGUIView: {fileID: 6} m_ClientGUIView: {fileID: 9}
m_SearchString: m_SearchString:
m_ExpandedScenes: [] m_ExpandedScenes: []
m_CurrenRootInstanceID: 0 m_CurrenRootInstanceID: 0
@ -568,7 +734,7 @@ MonoBehaviour:
m_IsLocked: 0 m_IsLocked: 0
m_CurrentSortingName: TransformSorting m_CurrentSortingName: TransformSorting
m_WindowGUID: 4c969a2b90040154d917609493e03593 m_WindowGUID: 4c969a2b90040154d917609493e03593
--- !u!114 &17 --- !u!114 &21
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 52 m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@ -588,10 +754,10 @@ MonoBehaviour:
m_Tooltip: m_Tooltip:
m_Pos: m_Pos:
serializedVersion: 2 serializedVersion: 2
x: 70 x: 62
y: 83 y: 73
width: 1093 width: 1099
height: 564 height: 575
m_ViewDataDictionary: {fileID: 0} m_ViewDataDictionary: {fileID: 0}
m_OverlayCanvas: m_OverlayCanvas:
m_LastAppliedPresetName: Default m_LastAppliedPresetName: Default
@ -826,9 +992,9 @@ MonoBehaviour:
m_PlayAudio: 0 m_PlayAudio: 0
m_AudioPlay: 0 m_AudioPlay: 0
m_Position: m_Position:
m_Target: {x: -239.0546, y: -114.70053, z: -22.453913} m_Target: {x: -195.93393, y: 33.51526, z: -136.41278}
speed: 2 speed: 2
m_Value: {x: -239.0546, y: -114.70053, z: -22.453913} m_Value: {x: -195.93393, y: 33.51526, z: -136.41278}
m_RenderMode: 0 m_RenderMode: 0
m_CameraMode: m_CameraMode:
drawMode: 0 drawMode: 0
@ -875,13 +1041,13 @@ MonoBehaviour:
m_GridAxis: 1 m_GridAxis: 1
m_gridOpacity: 0.5 m_gridOpacity: 0.5
m_Rotation: m_Rotation:
m_Target: {x: 0.40307263, y: 0.2750459, z: -0.1284353, w: 0.86333007} m_Target: {x: 0.5397075, y: 0.021956332, z: -0.014136463, w: 0.8414428}
speed: 2 speed: 2
m_Value: {x: 0.40308225, y: 0.2750525, z: -0.12843837, w: 0.8633507} m_Value: {x: 0.5397096, y: 0.021956418, z: -0.014136519, w: 0.84144616}
m_Size: m_Size:
m_Target: 122.92201 m_Target: 12.821374
speed: 2 speed: 2
m_Value: 122.92201 m_Value: 12.821374
m_Ortho: m_Ortho:
m_Target: 0 m_Target: 0
speed: 2 speed: 2
@ -899,14 +1065,14 @@ MonoBehaviour:
m_FarClip: 10000 m_FarClip: 10000
m_DynamicClip: 1 m_DynamicClip: 1
m_OcclusionCulling: 0 m_OcclusionCulling: 0
m_LastSceneViewRotation: {x: -0.08717229, y: 0.89959055, z: -0.21045254, w: -0.3726226} m_LastSceneViewRotation: {x: 0.7098538, y: -0.00044325352, z: 0.00036315605, w: 0.70432067}
m_LastSceneViewOrtho: 0 m_LastSceneViewOrtho: 0
m_ReplacementShader: {fileID: 0} m_ReplacementShader: {fileID: 0}
m_ReplacementString: m_ReplacementString:
m_SceneVisActive: 1 m_SceneVisActive: 1
m_LastLockedObject: {fileID: 0} m_LastLockedObject: {fileID: 0}
m_ViewIsLockedToObject: 0 m_ViewIsLockedToObject: 0
--- !u!114 &18 --- !u!114 &22
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 52 m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0} m_CorrespondingSourceObject: {fileID: 0}
@ -926,10 +1092,10 @@ MonoBehaviour:
m_Tooltip: m_Tooltip:
m_Pos: m_Pos:
serializedVersion: 2 serializedVersion: 2
x: 1164 x: 1162
y: 458 y: 455
width: 227 width: 269
height: 573 height: 584
m_ViewDataDictionary: {fileID: 0} m_ViewDataDictionary: {fileID: 0}
m_OverlayCanvas: m_OverlayCanvas:
m_LastAppliedPresetName: Default m_LastAppliedPresetName: Default