V3.1.5 修正PlayMode中TargetUI问题

修正TargetUI初始化StayMode Button可使用的问题
修正TargetUI可使用按钮逻辑问题
修正TargetUI与TargetController联动问题
修正Enemy击杀后不死亡问题
This commit is contained in:
Koha9 2023-07-28 19:44:02 +09:00
parent 13e5c82862
commit 630cbc4f70
20 changed files with 31015 additions and 30874 deletions

View File

@ -1 +1 @@
{"count":1,"self":24.7677008,"total":25.0365407,"children":{"InitializeActuators":{"count":2,"self":0.0015003,"total":0.0015003,"children":null},"InitializeSensors":{"count":2,"self":0.0014996999999999999,"total":0.0014996999999999999,"children":null},"AgentSendState":{"count":1017,"self":0.007495,"total":0.0511248,"children":{"CollectObservations":{"count":1017,"self":0.0386265,"total":0.0386265,"children":null},"WriteActionMask":{"count":1017,"self":0.00099969999999999985,"total":0.00099969999999999985,"children":null},"RequestDecision":{"count":1017,"self":0.0040035999999999995,"total":0.0040035999999999995,"children":null}}},"DecideAction":{"count":1017,"self":0.0070006,"total":0.0070006,"children":null},"AgentAct":{"count":1017,"self":0.2072142,"total":0.2072142,"children":null}},"gauges":{},"metadata":{"timer_format_version":"0.1.0","start_time_seconds":"1688924863","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 44edc017-c2ef-4ee2-a46e-a805348063c3 -accessToken hwwekuWWOiWUQhx9nSaQ-lN3ldhffV3XBnjmGsVD5O400ef","communication_protocol_version":"1.5.0","com.unity.ml-agents_version":"2.0.1","scene_name":"Play","end_time_seconds":"1688924888"}}
{"count":1,"self":126.74634239999999,"total":128.0847739,"children":{"InitializeActuators":{"count":2,"self":0.0009999,"total":0.0009999,"children":null},"InitializeSensors":{"count":2,"self":0.0010008,"total":0.0010008,"children":null},"AgentSendState":{"count":6178,"self":0.026903399999999997,"total":0.223186,"children":{"CollectObservations":{"count":6178,"self":0.1734102,"total":0.1734102,"children":null},"WriteActionMask":{"count":6178,"self":0.0093753,"total":0.0093753,"children":null},"RequestDecision":{"count":6178,"self":0.0134971,"total":0.0134971,"children":null}}},"DecideAction":{"count":6178,"self":0.0307529,"total":0.0307529,"children":null},"AgentAct":{"count":6178,"self":1.0819883,"total":1.0819883,"children":null}},"gauges":{"AKMAgent.CumulativeReward":{"count":7,"max":5501.69238,"min":-2529.91821,"runningAverage":1871.90051,"value":5501.69238,"weightedAverage":2216.80957}},"metadata":{"timer_format_version":"0.1.0","start_time_seconds":"1690539320","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 4b63fb8e-9776-4262-b4cb-28aa0e369085 -accessToken Pb-uYo6-TCqI_VYWW4hD7qruW991NK-uVlSKxlTMxiM00ef","communication_protocol_version":"1.5.0","com.unity.ml-agents_version":"2.0.1","scene_name":"Play","end_time_seconds":"1690539448"}}

View File

@ -1 +1 @@
{"count":1,"self":21.093688,"total":21.0986854,"children":{"InitializeActuators":{"count":2,"self":0.0009999,"total":0.0009999,"children":null},"InitializeSensors":{"count":2,"self":0.0010000999999999999,"total":0.0010000999999999999,"children":null},"AgentSendState":{"count":591,"self":0.0005004,"total":0.0005004,"children":null},"DecideAction":{"count":591,"self":0.0024974,"total":0.0024974,"children":null},"AgentAct":{"count":591,"self":0,"total":0,"children":null}},"gauges":{},"metadata":{"timer_format_version":"0.1.0","start_time_seconds":"1688923374","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 44edc017-c2ef-4ee2-a46e-a805348063c3 -accessToken hwwekuWWOiWUQhx9nSaQ-lN3ldhffV3XBnjmGsVD5O400ef","communication_protocol_version":"1.5.0","com.unity.ml-agents_version":"2.0.1","scene_name":"StartScene","end_time_seconds":"1688923395"}}
{"count":1,"self":13.571579199999999,"total":13.7595613,"children":{"InitializeActuators":{"count":16,"self":0.0014984,"total":0.0014984,"children":null},"InitializeSensors":{"count":16,"self":0.00099899999999999989,"total":0.00099899999999999989,"children":null},"AgentSendState":{"count":138,"self":0.0040011,"total":0.0211731,"children":{"CollectObservations":{"count":1104,"self":0.01567,"total":0.01567,"children":null},"WriteActionMask":{"count":1104,"self":0.0005011,"total":0.0005011,"children":null},"RequestDecision":{"count":1104,"self":0.0010008999999999999,"total":0.0010008999999999999,"children":null}}},"DecideAction":{"count":138,"self":0.0009996,"total":0.0009996,"children":null},"AgentAct":{"count":138,"self":0.1633126,"total":0.1633126,"children":null}},"gauges":{},"metadata":{"timer_format_version":"0.1.0","start_time_seconds":"1690540829","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 4b63fb8e-9776-4262-b4cb-28aa0e369085 -accessToken Pb-uYo6-TCqI_VYWW4hD7qruW991NK-uVlSKxlTMxiM00ef","communication_protocol_version":"1.5.0","com.unity.ml-agents_version":"2.0.1","scene_name":"StartScene","end_time_seconds":"1690540842"}}

View File

@ -1 +1 @@
{"count":1,"self":25.2639312,"total":25.5526563,"children":{"InitializeActuators":{"count":2,"self":0.0015004999999999999,"total":0.0015004999999999999,"children":null},"InitializeSensors":{"count":2,"self":0.00099969999999999985,"total":0.00099969999999999985,"children":null},"AgentSendState":{"count":1054,"self":0.0034980999999999996,"total":0.045699899999999995,"children":{"CollectObservations":{"count":1054,"self":0.0368365,"total":0.0368365,"children":null},"WriteActionMask":{"count":1054,"self":0.0004996,"total":0.0004996,"children":null},"RequestDecision":{"count":1054,"self":0.0048657,"total":0.0048657,"children":null}}},"DecideAction":{"count":1054,"self":0.0070008,"total":0.0070008,"children":null},"AgentAct":{"count":1054,"self":0.2325234,"total":0.2325234,"children":null}},"gauges":{},"metadata":{"timer_format_version":"0.1.0","start_time_seconds":"1688924949","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 44edc017-c2ef-4ee2-a46e-a805348063c3 -accessToken hwwekuWWOiWUQhx9nSaQ-lN3ldhffV3XBnjmGsVD5O400ef","communication_protocol_version":"1.5.0","com.unity.ml-agents_version":"2.0.1","scene_name":"Train","end_time_seconds":"1688924974"}}
{"count":1,"self":104.97326079999999,"total":112.0977204,"children":{"InitializeActuators":{"count":16,"self":0.0010003,"total":0.0010003,"children":null},"InitializeSensors":{"count":16,"self":0.0005001,"total":0.0005001,"children":null},"AgentSendState":{"count":5390,"self":0.076617499999999991,"total":0.813488,"children":{"CollectObservations":{"count":43120,"self":0.6721809,"total":0.6721809,"children":null},"WriteActionMask":{"count":43120,"self":0.0220062,"total":0.0220062,"children":null},"RequestDecision":{"count":43120,"self":0.042683399999999996,"total":0.042683399999999996,"children":null}}},"DecideAction":{"count":5390,"self":0.0811302,"total":0.0811302,"children":null},"AgentAct":{"count":5390,"self":6.22784,"total":6.2278401,"children":null}},"gauges":{"AKMAgent.CumulativeReward":{"count":24,"max":-2072.377,"min":-3955.04,"runningAverage":-3431.14233,"value":-3949.06714,"weightedAverage":-3815.8313}},"metadata":{"timer_format_version":"0.1.0","start_time_seconds":"1690540848","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 4b63fb8e-9776-4262-b4cb-28aa0e369085 -accessToken Pb-uYo6-TCqI_VYWW4hD7qruW991NK-uVlSKxlTMxiM00ef","communication_protocol_version":"1.5.0","com.unity.ml-agents_version":"2.0.1","scene_name":"Train","end_time_seconds":"1690540960"}}

View File

@ -4851,7 +4851,7 @@ Mesh:
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: pb_Mesh22960
m_Name: pb_Mesh22996
serializedVersion: 10
m_SubMeshes:
- serializedVersion: 2
@ -5438,7 +5438,7 @@ Mesh:
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: pb_Mesh23968
m_Name: pb_Mesh24008
serializedVersion: 10
m_SubMeshes:
- serializedVersion: 2
@ -5799,7 +5799,7 @@ MonoBehaviour:
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_margin: {x: 0, y: 0, z: 20.544281, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
@ -7787,7 +7787,7 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 749443372}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalPosition: {x: -30, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
@ -8522,7 +8522,7 @@ Mesh:
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: pb_Mesh22922
m_Name: pb_Mesh22958
serializedVersion: 10
m_SubMeshes:
- serializedVersion: 2
@ -10617,6 +10617,50 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1156799888}
m_CullTransparentMesh: 1
--- !u!1 &1178079198
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1178079199}
- component: {fileID: 1178079200}
m_Layer: 0
m_Name: MousePreview
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1178079199
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1178079198}
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_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 1962276267}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1178079200
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1178079198}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 344fcc32b8a34e44395c603ede216670, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1 &1179942010
GameObject:
m_ObjectHideFlags: 0
@ -11349,7 +11393,7 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1356284071}
m_LocalRotation: {x: 0.35355338, y: 0.35355338, z: -0.1464466, w: 0.8535535}
m_LocalPosition: {x: -6, y: 24, z: -9}
m_LocalPosition: {x: -40, y: 24, z: -9}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
@ -17709,7 +17753,6 @@ GameObject:
m_Component:
- component: {fileID: 1962276267}
- component: {fileID: 1962276266}
- component: {fileID: 1962276268}
m_Layer: 0
m_Name: MouseSelector
m_TagString: Untagged
@ -17731,7 +17774,7 @@ MonoBehaviour:
m_EditorClassIdentifier:
playCamera: {fileID: 1586670226}
environmentObj: {fileID: 749443372}
selectEffect: {fileID: 6561472780860268583, guid: 66420aca630480743a18632a2ac888e9, type: 3}
mousePreviewObj: {fileID: 1178079198}
enemyContainerObj: {fileID: 891195334}
sceneBlockContainerObj: {fileID: 1811162388}
targetControllerObj: {fileID: 1692325237}
@ -17748,22 +17791,11 @@ Transform:
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Children:
- {fileID: 1178079199}
m_Father: {fileID: 0}
m_RootOrder: 8
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1962276268
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1962276265}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 344fcc32b8a34e44395c603ede216670, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1 &1969016142
GameObject:
m_ObjectHideFlags: 0
@ -18023,7 +18055,7 @@ Canvas:
m_Enabled: 1
serializedVersion: 3
m_RenderMode: 2
m_Camera: {fileID: 0}
m_Camera: {fileID: 1586670226}
m_PlaneDistance: 100
m_PixelPerfect: 0
m_ReceivesEvents: 1
@ -19423,7 +19455,7 @@ Mesh:
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: pb_Mesh22998
m_Name: pb_Mesh23034
serializedVersion: 10
m_SubMeshes:
- serializedVersion: 2

File diff suppressed because it is too large Load Diff

View File

@ -47,7 +47,7 @@ private void Update()
{
// while result is active and show time over timeOut
// clear the result
Debug.Log("clear result");
Debug.Log("EnvironmentUIControl: clear result");
winLoseText.text = "";
winLoseText.color = Color.white;
resultActive = false;
@ -182,11 +182,15 @@ public void UpdateStateText(float[] targetStates, float inAreaState, float remai
stateBuilder.Clear();
stateBuilder.Append($"States:\r\nTType:{targetStates[0]}");
stateBuilder.Append("\r\nTPosition:");
stateBuilder.Append(targetStates[1]).Append(targetStates[2]).Append(targetStates[3]);
stateBuilder.Append("\r\nTDiameter:");
stateBuilder.Append("\r\nTargetPosition:\r\nx:");
stateBuilder.Append(targetStates[1]);
stateBuilder.Append("\r\ny:");
stateBuilder.Append(targetStates[2]);
stateBuilder.Append("\r\nz:");
stateBuilder.Append(targetStates[3]);
stateBuilder.Append("\r\nTargetDiameter:");
stateBuilder.Append(targetStates[4]);
stateBuilder.Append("\r\nTRatio:");
stateBuilder.Append("\r\nTargetBelongRatio:");
stateBuilder.Append(targetStates[5]);
stateBuilder.Append("\r\nInArea:");
stateBuilder.Append(inAreaState);

View File

@ -20,6 +20,7 @@ public class MLAgentsCustomController : Agent
private TargetController targetController;
private EnvironmentUIControl envUIController;
private HUDController hudController;
private TargetUIController targetUIController;
private RaySensors raySensors;
// observation
@ -44,6 +45,7 @@ private void Start()
targetController = targetControllerObj.GetComponent<TargetController>();
envUIController = environmentUIObj.GetComponent<EnvironmentUIControl>();
hudController = hudUIObj.GetComponent<HUDController>();
targetUIController = hudUIObj.GetComponent<TargetUIController>();
}
// ML-AGENTS处理-------------------------------------------------------------------------------------------ML-AGENTS
@ -64,6 +66,8 @@ public override void OnEpisodeBegin()
{
// play mode
targetController.PlayInitialize();
// reset target UI
targetUIController.ClearGamePressed();
}
// give default Reward to Reward value will be used.

View File

@ -133,7 +133,7 @@ public class ParameterContainer : MonoBehaviour
private float targetInAreaTime = 0f;
private float lastFrameTime = 0f;
[System.NonSerialized] public int gameMode;
[System.NonSerialized] public int gameMode; // 0 = trainning mode, 1 = play mode
[System.NonSerialized] public float attackProb = 0f;
[System.NonSerialized] public float gotoProb = 0f;
[System.NonSerialized] public float defenceProb = 0f;
@ -148,7 +148,7 @@ private void Start()
try
{
startSceneData = GameObject.Find("StartSceneDataTransfer").GetComponent<StartSeneData>();
gameMode = startSceneData.gamemode;
gameMode = startSceneData.gameMode;
attackProb = startSceneData.attackProb;
gotoProb = startSceneData.gotoProb;
defenceProb = startSceneData.defenceProb;
@ -156,7 +156,7 @@ private void Start()
catch
{
Debug.LogError("PrameterContainer:Run WithOut StartScreen!");
gameMode = 1;
gameMode = 0;
}
}

View File

@ -3,7 +3,7 @@
public class SceneBlock : MonoBehaviour
{
public GameObject firebasesAreaObj;
public GameObject fireBasesAreaObj;
public GameObject enemyContainerObj;
public float group1InareaNum = 0;
public float group2InareaNum = 0;
@ -37,21 +37,6 @@ public enum SceneType
// Start is called before the first frame update
private void Start()
{
// if firebasesAreaObj is null, find sub object by name
if (firebasesAreaObj == null)
{
firebasesAreaObj = transform.Find("FirebasesArea").gameObject;
}
// if enemyContainerObj is null, find them by name
if (enemyContainerObj == null)
{
enemyContainerObj = transform.Find("EnemyContainer").gameObject;
}
firebasesAreaPosition = transform.position + firebasesAreaObj.transform.position;
firebasesAreaScale = firebasesAreaObj.transform.localScale.x;
firebasesAreaDiameter = firebasesAreaScale * blockSize;
firebasesBelong = -belongMaxPoint;
addPointEachInterval = belongMaxPoint / (stayTimeNeeded / addPointInterval);
intervalStart = Time.time;
}
@ -111,6 +96,25 @@ public void InitBlock(GameObject envObj)
}
group1Objs = group1ObjsList.ToArray();
group2Objs = group2ObjsList.ToArray();
// if firebasesAreaObj is null, find sub object by name
if (fireBasesAreaObj == null)
{
Debug.Log("SceneBlock.Start: fireBasesAreaObj not found, get it by name");
fireBasesAreaObj = transform.Find("FirebasesArea").gameObject;
}
// if enemyContainerObj is null, find them by name
if (enemyContainerObj == null)
{
Debug.Log("SceneBlock.Start: enemyContainerObj not found, get it by name");
enemyContainerObj = transform.Find("EnemyContainer").gameObject;
}
firebasesAreaPosition = transform.position + fireBasesAreaObj.transform.position;
firebasesAreaScale = fireBasesAreaObj.transform.localScale.x;
firebasesAreaDiameter = firebasesAreaScale * blockSize;
firebasesBelong = -belongMaxPoint;
addPointEachInterval = belongMaxPoint / (stayTimeNeeded / addPointInterval);
intervalStart = Time.time;
}
//check game over 0=notover 1=win
@ -182,8 +186,8 @@ public float GetInAreaNumber(string thisTag)
// get this position and target's distance and is in firebase area
public (float, int) GetDistInArea(Vector3 thisPosition)
{
thisPosition.y = firebasesAreaObj.transform.position.y;
float dist = Vector3.Distance(thisPosition, firebasesAreaObj.transform.position) - (firebasesAreaDiameter / 2);
thisPosition.y = fireBasesAreaObj.transform.position.y;
float dist = Vector3.Distance(thisPosition, fireBasesAreaObj.transform.position) - (firebasesAreaDiameter / 2);
int isinarea = 0;
if (dist <= 0)
{

View File

@ -25,7 +25,7 @@ public void CreateNewBlock(Targets targetType, int blockType, Vector3 blockPosit
if (thisBlockObj != null)
{
// delete thisBlock
Debug.LogWarning("Block not clear!");
Debug.LogWarning("SceneBlockContainer.CreateNewBlock: Block not clear!");
DestroyBlock();
}
// choose target type
@ -59,7 +59,7 @@ public void CreateNewBlock(Targets targetType, int blockType, Vector3 blockPosit
break;
default:
Debug.LogWarning("SceneBlock: CreateNewBlock: targetType not found!");
Debug.LogWarning("SceneBlockContainer.CreateNewBlock: targetType not found!");
break;
}
}

View File

@ -57,8 +57,8 @@ public enum EndType
private Vector3 targetLocalPosition;
private bool firstRewardFlag = true;
private bool targetEnemySpawnFinish = false;
private SceneBlockContainer blockCont;
private EnemyContainer enemyCont;
private SceneBlockContainer sceneBlockCon;
private EnemyContainer enemyCon;
private EnvironmentUIControl envUICon;
private ParameterContainer paramCon;
private CharacterController agentCharaCon;
@ -72,9 +72,9 @@ public enum EndType
// Start is called before the first frame update
private void Start()
{
blockCont = sceneBlockContainerObj.GetComponent<SceneBlockContainer>();
sceneBlockCon = sceneBlockContainerObj.GetComponent<SceneBlockContainer>();
envUICon = environmentUIObj.GetComponent<EnvironmentUIControl>();
enemyCont = enemyContainerObj.GetComponent<EnemyContainer>();
enemyCon = enemyContainerObj.GetComponent<EnemyContainer>();
agentCharaCon = agentObj.GetComponent<CharacterController>();
paramCon = parameterContainerObj.GetComponent<ParameterContainer>();
worldUICon = worldUIObj.GetComponent<WorldUIController>();
@ -102,7 +102,7 @@ private void Start()
targetNum = (int)SceneBlockContainer.Targets.Num;
if (freeProb < 0)
{
Debug.LogError("target percentage wrong");
Debug.LogError("TargetController.Start: target percentage wrong");
}
// initialize a simple fake onehot encoder.
@ -125,7 +125,7 @@ private void Update()
{
leftTime = paramCon.timeLimit;
// print out time
Debug.Log("Playing Time: " + leftTime);
// Debug.Log("Playing Time: " + leftTime);
}
else
{
@ -142,7 +142,7 @@ public void RollNewScene()
{
// goto target spawn
Debug.Log("GOTO THIS TARGET!");
SpawnSceneBlock(SceneBlockContainer.Targets.Go);
RandomSpawnSceneBlock(SceneBlockContainer.Targets.Go);
// set startDistance
firstRewardFlag = true;
}
@ -150,7 +150,7 @@ public void RollNewScene()
{
// attack target spawn
Debug.Log("ATTACK!");
SpawnSceneBlock(SceneBlockContainer.Targets.Attack);
RandomSpawnSceneBlock(SceneBlockContainer.Targets.Attack);
// set startDistance
firstRewardFlag = true;
targetEnemySpawnFinish = false;
@ -159,7 +159,7 @@ public void RollNewScene()
{
// defence target spawn
Debug.Log("DEFENCE!");
SpawnSceneBlock(SceneBlockContainer.Targets.Defence);
RandomSpawnSceneBlock(SceneBlockContainer.Targets.Defence);
// set startDistance
firstRewardFlag = true;
}
@ -167,20 +167,24 @@ public void RollNewScene()
{
//Debug.Log("Free");
targetTypeInt = (int)SceneBlockContainer.Targets.Free;
enemyCont.DestroyAllEnemys();
enemyCont.RandomInitEnemys(hudCon.enemyNum);
enemyCon.DestroyAllEnemys();
enemyCon.RandomInitEnemys(hudCon.enemyNum);
MoveAgentToSpwanArea();
blockCont.DestroyBlock();
sceneBlockCon.DestroyBlock();
}
UpdateTargetStates();
envUICon.UpdateTargetType(targetTypeInt);
}
// get target observation states
private void UpdateTargetStates()
private void UpdateTargetStates(Vector3? thisTargetPosition = null)
{
// targettype, x,y,z, firebasesAreaDiameter
targetState[0] = targetTypeInt;
if (thisTargetPosition != null)
{
targetPosition = (Vector3)thisTargetPosition;
}
if (targetTypeInt == (int)SceneBlockContainer.Targets.Free || targetTypeInt == (int)SceneBlockContainer.Targets.Stay)
{
for (int i = 1; i < targetState.Length; i++)
@ -188,14 +192,11 @@ private void UpdateTargetStates()
}
else
{
/* targetState[1] = targetPosition.x / raySensors.viewDistance; // normalization
targetState[2] = targetPosition.y / raySensors.viewDistance;
targetState[3] = targetPosition.z / raySensors.viewDistance;*/
targetState[1] = targetPosition.x; // normalization
targetState[1] = targetPosition.x;
targetState[2] = targetPosition.y;
targetState[3] = targetPosition.z;
targetState[4] = blockCont.thisBlock.firebasesAreaDiameter / raySensors.viewDistance;
targetState[5] = blockCont.thisBlock.belongRatio;
targetState[4] = sceneBlockCon.thisBlock.firebasesAreaDiameter;
targetState[5] = sceneBlockCon.thisBlock.belongRatio;
}
}
@ -242,11 +243,11 @@ public void MoveAgentTo(Vector3 thisPosition)
{
case (int)SceneBlockContainer.Targets.Go:
// goto
(nowDistance, inArea) = blockCont.GetAgentTargetDistanceAndInside(agentObj.transform.position);
envUICon.UpdateTargetGauge(blockCont.thisBlock.firebasesBelong, blockCont.thisBlock.belongMaxPoint);
(nowDistance, inArea) = sceneBlockCon.GetAgentTargetDistanceAndInside(agentObj.transform.position);
envUICon.UpdateTargetGauge(sceneBlockCon.thisBlock.firebasesBelong, sceneBlockCon.thisBlock.belongMaxPoint);
float areaTargetReward = GetDistanceReward(nowDistance, inArea);
//if(inArea != 0)
if (blockCont.thisBlock.firebasesBelong >= blockCont.thisBlock.belongMaxPoint)
if (sceneBlockCon.thisBlock.firebasesBelong >= sceneBlockCon.thisBlock.belongMaxPoint)
{
// win
// let the area belongs to me
@ -273,11 +274,10 @@ public void MoveAgentTo(Vector3 thisPosition)
case (int)SceneBlockContainer.Targets.Attack:
// attack
(nowDistance, inArea) = blockCont.GetAgentTargetDistanceAndInside(agentObj.transform.position);
envUICon.UpdateTargetGauge(blockCont.thisBlock.firebasesBelong, blockCont.thisBlock.belongMaxPoint);
if (blockCont.thisBlock.GetInAreaNumber(group2Tag) <= 0 && targetEnemySpawnFinish)
(nowDistance, inArea) = sceneBlockCon.GetAgentTargetDistanceAndInside(agentObj.transform.position);
envUICon.UpdateTargetGauge(sceneBlockCon.thisBlock.firebasesBelong, sceneBlockCon.thisBlock.belongMaxPoint);
if (sceneBlockCon.thisBlock.GetInAreaNumber(group2Tag) <= 0 && targetEnemySpawnFinish)
{
Debug.Log(blockCont.thisBlock.GetInAreaNumber(group2Tag));
// win
// let the area belongs to me and kill every enmy in this area.
thisReward = 0;
@ -309,9 +309,9 @@ public void MoveAgentTo(Vector3 thisPosition)
case (int)SceneBlockContainer.Targets.Defence:
//defence
// !!! DIDN't FINISH!!!
(nowDistance, inArea) = blockCont.GetAgentTargetDistanceAndInside(agentObj.transform.position);
envUICon.UpdateTargetGauge(blockCont.thisBlock.firebasesBelong, blockCont.thisBlock.belongMaxPoint);
if (leftTime <= 0 && blockCont.thisBlock.firebasesBelong >= 0f)
(nowDistance, inArea) = sceneBlockCon.GetAgentTargetDistanceAndInside(agentObj.transform.position);
envUICon.UpdateTargetGauge(sceneBlockCon.thisBlock.firebasesBelong, sceneBlockCon.thisBlock.belongMaxPoint);
if (leftTime <= 0 && sceneBlockCon.thisBlock.firebasesBelong >= 0f)
{
// win
// time over and the area still mine
@ -319,7 +319,7 @@ public void MoveAgentTo(Vector3 thisPosition)
//thisReward = (paramCon.inAreaReward * inArea) + getSceneReward(nowDistance);
endTypeInt = (int)EndType.Win;
}
else if (blockCont.thisBlock.firebasesBelong <= blockCont.thisBlock.belongMaxPoint)
else if (sceneBlockCon.thisBlock.firebasesBelong <= sceneBlockCon.thisBlock.belongMaxPoint)
{
// lost area lose
thisReward = paramCon.loseReward;
@ -375,18 +375,18 @@ public void MoveAgentTo(Vector3 thisPosition)
}
// initialize scene block by target type
private void SpawnSceneBlock(SceneBlockContainer.Targets thisTargetType)
private void RandomSpawnSceneBlock(SceneBlockContainer.Targets thisTargetType)
{
int randBlockType = 0;
switch (thisTargetType)
{
case SceneBlockContainer.Targets.Go:
randBlockType = Random.Range(0, blockCont.goBlockPrefabs.Length);
sceneBlockSize = blockCont.goBlockPrefabs[randBlockType].GetComponent<SceneBlock>().blockSize;
randBlockType = Random.Range(0, sceneBlockCon.goBlockPrefabs.Length);
sceneBlockSize = sceneBlockCon.goBlockPrefabs[randBlockType].GetComponent<SceneBlock>().blockSize;
break;
case SceneBlockContainer.Targets.Attack:
randBlockType = Random.Range(0, blockCont.attackBlockPrefabs.Length);
sceneBlockSize = blockCont.attackBlockPrefabs[randBlockType].GetComponent<SceneBlock>().blockSize;
randBlockType = Random.Range(0, sceneBlockCon.attackBlockPrefabs.Length);
sceneBlockSize = sceneBlockCon.attackBlockPrefabs[randBlockType].GetComponent<SceneBlock>().blockSize;
break;
case SceneBlockContainer.Targets.Defence:
// randBlockType = Random.Range(0, blockCont.defenceBlockPrefabs.Length);
@ -402,11 +402,11 @@ private void SpawnSceneBlock(SceneBlockContainer.Targets thisTargetType)
targetPosition = new Vector3(randX, 0, randZ);
// init scene block
blockCont.DestroyBlock();
blockCont.CreateNewBlock(thisTargetType, randBlockType, targetPosition, group1Tag, group2Tag);
enemyCont.DestroyAllEnemys();
enemyCont.RandomInitEnemysExcept(hudCon.enemyNum, targetPosition, sceneBlockSize);
blockCont.thisBlock.InitBlock(environmentObj);
sceneBlockCon.DestroyBlock();
sceneBlockCon.CreateNewBlock(thisTargetType, randBlockType, targetPosition, group1Tag, group2Tag);
enemyCon.DestroyAllEnemys();
enemyCon.RandomInitEnemysExcept(hudCon.enemyNum, targetPosition, sceneBlockSize);
sceneBlockCon.thisBlock.InitBlock(environmentObj);
}
// caulculate sceneReward if close to target then get great reward
@ -415,7 +415,7 @@ private float GetDistanceReward(float nowDistance, int inarea)
if (firstRewardFlag)
{
// first distance record
(lastDistance, _) = blockCont.GetAgentTargetDistanceAndInside(agentObj.transform.position);
(lastDistance, _) = sceneBlockCon.GetAgentTargetDistanceAndInside(agentObj.transform.position);
firstRewardFlag = false;
}
float thisSceneReward = 0f;
@ -441,7 +441,7 @@ public float KillReward(Vector3 enemyPosition)
if (targetTypeInt == (int)SceneBlockContainer.Targets.Attack)
{
// attack mode
(_, int isInArea) = blockCont.thisBlock.GetDistInArea(enemyPosition);
(_, int isInArea) = sceneBlockCon.thisBlock.GetDistInArea(enemyPosition);
if (isInArea == 1)
{
// kill in area enemy
@ -472,7 +472,7 @@ public float HitEnemyReward(Vector3 enemyPosition)
if (targetTypeInt == (int)SceneBlockContainer.Targets.Attack)
{
// attack mode
(_, int isInArea) = blockCont.thisBlock.GetDistInArea(enemyPosition);
(_, int isInArea) = sceneBlockCon.thisBlock.GetDistInArea(enemyPosition);
if (isInArea == 1)
{
// hit in area enemy
@ -515,16 +515,18 @@ public int GetInAreaState()
public void PlayInitialize()
{
targetTypeInt = (int)SceneBlockContainer.Targets.Stay;
UpdateTargetStates();
envUICon.UpdateTargetType(targetTypeInt);
MoveAgentToSpwanArea();
enemyCont.DestroyAllEnemys();
blockCont.DestroyBlock();
enemyCon.DestroyAllEnemys();
sceneBlockCon.DestroyBlock();
}
// change to attack mode
public void AttackModeChange()
public void AttackModeChange(Vector3 thisTargetPosition)
{
targetTypeInt = (int)SceneBlockContainer.Targets.Attack;
UpdateTargetStates(thisTargetPosition);
envUICon.UpdateTargetType(targetTypeInt);
}
@ -532,13 +534,15 @@ public void AttackModeChange()
public void FreeModeChange()
{
targetTypeInt = (int)SceneBlockContainer.Targets.Free;
UpdateTargetStates();
envUICon.UpdateTargetType(targetTypeInt);
}
// change to goto mode
public void GotoModeChange()
public void GotoModeChange(Vector3 thisTargetPosition)
{
targetTypeInt = (int)SceneBlockContainer.Targets.Go;
UpdateTargetStates(thisTargetPosition);
envUICon.UpdateTargetType(targetTypeInt);
}
@ -546,6 +550,7 @@ public void GotoModeChange()
public void StayModeChange()
{
targetTypeInt = (int)SceneBlockContainer.Targets.Stay;
UpdateTargetStates();
envUICon.UpdateTargetType(targetTypeInt);
}
}

View File

@ -33,7 +33,7 @@ public void ReactToHit(float Damage, GameObject damageSource)
{
if (damageSource.tag == "Player")
{
damageSource.GetComponent<AgentWithGun>().KillRecord(transform.position);
damageSource.GetComponent<AgentController>().KillRecord(transform.position);
Destroy(this.gameObject);
isDead = true;
}

View File

@ -4,14 +4,14 @@ public class MouseInMap : MonoBehaviour
{
public Camera playCamera;
public GameObject environmentObj;
public GameObject selectEffect;
public GameObject mousePreviewObj;
public GameObject enemyContainerObj;
public GameObject sceneBlockContainerObj;
public GameObject targetControllerObj;
public GameObject HUDObj;
private Vector3 mouseInMapPosition = Vector3.zero;
private Vector3 nowHitPosition = Vector3.zero;
private Vector3 nowHitPositionRelative = Vector3.zero;
private LayerMask groundMask;
private int randBlockNum;
private GameObject preSet;
@ -35,7 +35,7 @@ private void Start()
{
groundMask = LayerMask.GetMask("Ground");
targetCon = targetControllerObj.GetComponent<TargetController>();
mousePreviewCon = this.GetComponent<MousePreview>();
mousePreviewCon = mousePreviewObj.GetComponent<MousePreview>();
enemyCon = enemyContainerObj.GetComponent<EnemyContainer>();
sceneBlockCon = sceneBlockContainerObj.GetComponent<SceneBlockContainer>();
targetUICon = HUDObj.GetComponent<TargetUIController>();
@ -44,32 +44,32 @@ private void Start()
private void Update()
{
nowHitPosition = GetMouseOnMapPosition();
nowHitPositionRelative = nowHitPosition - environmentObj.transform.position;
// if mouse position in area, update mouseInMapPosition as nowHitPosition
if (nowHitPosition.x < targetCon.maxAgentAreaX && nowHitPosition.x > targetCon.minAgentAreaX && nowHitPosition.z < targetCon.maxEnemyAreaZ && nowHitPosition.z > targetCon.minAgentAreaZ)
if (nowHitPositionRelative.x < targetCon.maxAgentAreaX && nowHitPositionRelative.x > targetCon.minAgentAreaX && nowHitPositionRelative.z < targetCon.maxEnemyAreaZ && nowHitPositionRelative.z > targetCon.minAgentAreaZ)
{
mouseInMapPosition = nowHitPosition;
mousePreviewCon.UpdatePreviewPosition(mouseInMapPosition);
mousePreviewCon.UpdatePreviewPosition(nowHitPosition);
// Mouse button R pressed
if (Input.GetMouseButtonDown(1))
{
switch (mouseMode)
{
case MouseMode.AttackSet:
sceneBlockCon.CreateNewBlock(SceneBlockContainer.Targets.Attack, randBlockNum, mouseInMapPosition);
sceneBlockCon.CreateNewBlock(SceneBlockContainer.Targets.Attack, randBlockNum, nowHitPositionRelative);
sceneBlockCon.InitializeBlock(environmentObj);
targetCon.AttackModeChange();
targetCon.AttackModeChange(nowHitPositionRelative);
ChangeMouseModeTo(MouseMode.Default);
break;
case MouseMode.GotoSet:
sceneBlockCon.CreateNewBlock(SceneBlockContainer.Targets.Go, randBlockNum, mouseInMapPosition);
sceneBlockCon.CreateNewBlock(SceneBlockContainer.Targets.Go, randBlockNum, nowHitPositionRelative);
sceneBlockCon.InitializeBlock(environmentObj);
targetCon.GotoModeChange();
targetCon.GotoModeChange(nowHitPositionRelative);
ChangeMouseModeTo(MouseMode.Default);
break;
case MouseMode.EnemySet:
enemyCon.InitEnemyAtHere(new Vector3(mouseInMapPosition.x, 1, mouseInMapPosition.z));
enemyCon.InitEnemyAtHere(new Vector3(nowHitPositionRelative.x, 1, nowHitPositionRelative.z));
break;
default:
@ -109,20 +109,18 @@ public void ChangeMouseModeTo(MouseMode thisMouseMode)
}
}
// get mouse position on map, return a Vector3
// get mouse position on map, return an absolute Vector3 coordinate
public Vector3 GetMouseOnMapPosition()
{
// shoot raycast from mainCamera center to mousepositon
RaycastHit thisHit;
Color rayColor = Color.red;
Vector3 onMapPosition;
Ray ray = playCamera.ScreenPointToRay(Input.mousePosition);
// if raycast hit gameobject
if (Physics.Raycast(ray, out thisHit, Mathf.Infinity, groundMask))
{
//draw raycast
Debug.DrawRay(ray.origin, ray.direction * 100, rayColor);
return onMapPosition = thisHit.point;
Debug.DrawRay(ray.origin, ray.direction * 100, Color.red);
return thisHit.point;
}
else
{

View File

@ -1,22 +1,20 @@
using System.Collections;
using System.Collections.Generic;
using System.Xml.Serialization;
using UnityEngine;
public class MousePreview : MonoBehaviour
{
// show mousePreviewObj in mouse position
public void ChangePreviewTo(GameObject mousePreviewObj)
{
DeleteAllPreviewModele();
Instantiate(mousePreviewObj, this.transform.position, Quaternion.identity, this.transform);
Instantiate(mousePreviewObj, transform.position, Quaternion.identity, this.transform);
}
public void UpdatePreviewPosition(Vector3 previewPos)
{
// move this gameobject to previewPos
this.transform.position = previewPos;
transform.position = previewPos;
}
public void DeleteAllPreviewModele()
{
// delete all child object

View File

@ -6,7 +6,6 @@ public class TargetUIController : MonoBehaviour
// Controller to control the UI of the target,
// select target type, select prefeb to set or sth.
public GameObject targetControllerObj;
public GameObject mouseSelectorObj;
public GameObject environmentUIObj;
@ -24,6 +23,7 @@ private void Start()
targetCon = targetControllerObj.GetComponent<TargetController>();
mouseInMapCon = mouseSelectorObj.GetComponent<MouseInMap>();
envUICon = environmentUIObj.GetComponent<EnvironmentUIControl>();
ClearGamePressed();
}
public void ClearGamePressed()
@ -47,11 +47,19 @@ public void SetEnemyPressed()
public void SetGotoPressed()
{
mouseInMapCon.ChangeMouseModeTo(MouseInMap.MouseMode.GotoSet);
setStayButton.interactable = true;
setAttackButton.interactable = true;
setGotoButton.interactable = false;
setFreeButton.interactable = true;
}
public void SetAttackPressed()
{
mouseInMapCon.ChangeMouseModeTo(MouseInMap.MouseMode.AttackSet);
setStayButton.interactable = true;
setAttackButton.interactable = false;
setGotoButton.interactable = true;
setFreeButton.interactable = true;
}
public void SetFreePressed()

View File

@ -3,7 +3,7 @@
public class StartSeneData : MonoBehaviour
{
[Header("Game mode")]
public int gamemode = 0;// default trainning mode
public int gameMode = 0;// default trainning mode
[Header("Targets Prob")]
public float attackProb = 0f;
public float gotoProb = 0f;

View File

@ -36,7 +36,7 @@ private void Update()
// while StartButton-Play Pressed
public void OnPlayButtonPressed()
{
startSceneData.gamemode = 1;
startSceneData.gameMode = 1;
sceneLoader.LoadGameScene(SceneLoader.SceneType.Play);
messageTextObj.text = "Loading Play Scene...";
}

View File

@ -9,14 +9,14 @@ EditorUserSettings:
value: 55090405535008090b5608764626074415151c79747c74602b7c1861e4b96c6c
flags: 0
RecentlyUsedSceneGuid-1:
value: 5703025650035e5d090f087148715d4443161e2c7e2c20357b281b31b0e43060
flags: 0
RecentlyUsedSceneGuid-2:
value: 5453565f53020f085f5d0e72157a0844454f4c2b757d7265757a4f64b7b4313c
flags: 0
RecentlyUsedSceneGuid-3:
RecentlyUsedSceneGuid-2:
value: 06570c0704040b0e5a575520137b5e44154f192e292d22367c2c4866b7b3376f
flags: 0
RecentlyUsedSceneGuid-3:
value: 5703025650035e5d090f087148715d4443161e2c7e2c20357b281b31b0e43060
flags: 0
RecentlyUsedScenePath-0:
value: 22424703114646680e0b0227036c6c111b07142f1f2b233e2867083debf42d
flags: 0

View File

@ -1,6 +1,30 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: 58
width: 1080
height: 693
m_ShowMode: 0
m_Title: Scene
m_RootView: {fileID: 4}
m_MinSize: {x: 200, y: 221}
m_MaxSize: {x: 4000, y: 4021}
m_Maximized: 0
--- !u!114 &2
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
@ -14,17 +38,67 @@ MonoBehaviour:
m_EditorClassIdentifier:
m_PixelRect:
serializedVersion: 2
x: 64
x: 62
y: 43
width: 1856
width: 1858
height: 1037
m_ShowMode: 4
m_Title: Scene
m_RootView: {fileID: 9}
m_Title: Console
m_RootView: {fileID: 12}
m_MinSize: {x: 875, y: 300}
m_MaxSize: {x: 10000, y: 10000}
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: SceneView
m_EditorClassIdentifier:
m_Children: []
m_Position:
serializedVersion: 2
x: 0
y: 0
width: 1080
height: 693
m_MinSize: {x: 200, y: 221}
m_MaxSize: {x: 4000, y: 4021}
m_ActualView: {fileID: 21}
m_Panes:
- {fileID: 21}
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: 693
m_MinSize: {x: 200, y: 221}
m_MaxSize: {x: 4000, y: 4021}
vertical: 0
controlID: 105
--- !u!114 &5
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
@ -41,17 +115,17 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 717
width: 1083
width: 1082
height: 270
m_MinSize: {x: 231, y: 271}
m_MaxSize: {x: 10001, y: 10021}
m_ActualView: {fileID: 15}
m_ActualView: {fileID: 18}
m_Panes:
- {fileID: 15}
- {fileID: 14}
- {fileID: 18}
- {fileID: 17}
m_Selected: 0
m_LastSelected: 1
--- !u!114 &3
--- !u!114 &6
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
@ -64,19 +138,19 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
m_Children:
- {fileID: 12}
- {fileID: 2}
- {fileID: 15}
- {fileID: 5}
m_Position:
serializedVersion: 2
x: 0
y: 0
width: 1083
width: 1082
height: 987
m_MinSize: {x: 100, y: 200}
m_MaxSize: {x: 8096, y: 16192}
vertical: 1
controlID: 23
--- !u!114 &4
controlID: 119
--- !u!114 &7
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
@ -92,17 +166,17 @@ MonoBehaviour:
m_Position:
serializedVersion: 2
x: 0
y: 717
y: 470
width: 316
height: 270
height: 517
m_MinSize: {x: 102, y: 121}
m_MaxSize: {x: 4002, y: 4021}
m_ActualView: {fileID: 19}
m_ActualView: {fileID: 22}
m_Panes:
- {fileID: 19}
- {fileID: 22}
m_Selected: 0
m_LastSelected: 0
--- !u!114 &5
--- !u!114 &8
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
@ -115,19 +189,19 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
m_Children:
- {fileID: 6}
- {fileID: 4}
- {fileID: 9}
- {fileID: 7}
m_Position:
serializedVersion: 2
x: 1083
x: 1082
y: 0
width: 316
height: 987
m_MinSize: {x: 100, y: 200}
m_MaxSize: {x: 8096, y: 16192}
vertical: 1
controlID: 63
--- !u!114 &6
controlID: 52
--- !u!114 &9
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
@ -145,15 +219,15 @@ MonoBehaviour:
x: 0
y: 0
width: 316
height: 717
height: 470
m_MinSize: {x: 202, y: 221}
m_MaxSize: {x: 4002, y: 4021}
m_ActualView: {fileID: 17}
m_ActualView: {fileID: 20}
m_Panes:
- {fileID: 17}
- {fileID: 20}
m_Selected: 0
m_LastSelected: 0
--- !u!114 &7
--- !u!114 &10
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
@ -166,20 +240,20 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
m_Children:
- {fileID: 3}
- {fileID: 5}
- {fileID: 6}
- {fileID: 8}
- {fileID: 11}
m_Position:
serializedVersion: 2
x: 0
y: 30
width: 1856
width: 1858
height: 987
m_MinSize: {x: 300, y: 200}
m_MaxSize: {x: 24288, y: 16192}
vertical: 0
controlID: 17
--- !u!114 &8
controlID: 118
--- !u!114 &11
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
@ -194,18 +268,18 @@ MonoBehaviour:
m_Children: []
m_Position:
serializedVersion: 2
x: 1399
x: 1398
y: 0
width: 457
width: 460
height: 987
m_MinSize: {x: 276, y: 71}
m_MaxSize: {x: 4001, y: 4021}
m_ActualView: {fileID: 16}
m_ActualView: {fileID: 19}
m_Panes:
- {fileID: 16}
- {fileID: 19}
m_Selected: 0
m_LastSelected: 0
--- !u!114 &9
--- !u!114 &12
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
@ -218,14 +292,14 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
m_Children:
- {fileID: 13}
- {fileID: 10}
- {fileID: 7}
- {fileID: 11}
- {fileID: 14}
m_Position:
serializedVersion: 2
x: 0
y: 0
width: 1856
width: 1858
height: 1037
m_MinSize: {x: 875, y: 300}
m_MaxSize: {x: 10000, y: 10000}
@ -233,7 +307,7 @@ MonoBehaviour:
m_TopViewHeight: 30
m_UseBottomView: 1
m_BottomViewHeight: 20
--- !u!114 &10
--- !u!114 &13
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
@ -250,12 +324,12 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 0
width: 1856
width: 1858
height: 30
m_MinSize: {x: 0, y: 0}
m_MaxSize: {x: 0, y: 0}
m_LastLoadedLayoutName:
--- !u!114 &11
--- !u!114 &14
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
@ -272,11 +346,11 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 1017
width: 1856
width: 1858
height: 20
m_MinSize: {x: 0, y: 0}
m_MaxSize: {x: 0, y: 0}
--- !u!114 &12
--- !u!114 &15
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
@ -286,24 +360,23 @@ MonoBehaviour:
m_Enabled: 1
m_EditorHideFlags: 1
m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0}
m_Name: SceneView
m_Name: GameView
m_EditorClassIdentifier:
m_Children: []
m_Position:
serializedVersion: 2
x: 0
y: 0
width: 1083
width: 1082
height: 717
m_MinSize: {x: 201, y: 221}
m_MinSize: {x: 101, y: 121}
m_MaxSize: {x: 4001, y: 4021}
m_ActualView: {fileID: 18}
m_ActualView: {fileID: 16}
m_Panes:
- {fileID: 18}
- {fileID: 13}
- {fileID: 16}
m_Selected: 0
m_LastSelected: 1
--- !u!114 &13
m_LastSelected: 0
--- !u!114 &16
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
@ -323,9 +396,9 @@ MonoBehaviour:
m_Tooltip:
m_Pos:
serializedVersion: 2
x: 64
x: 62
y: 73
width: 1082
width: 1081
height: 696
m_ViewDataDictionary: {fileID: 0}
m_OverlayCanvas:
@ -337,7 +410,7 @@ MonoBehaviour:
m_ShowGizmos: 0
m_TargetDisplay: 0
m_ClearColor: {r: 0, g: 0, b: 0, a: 0}
m_TargetSize: {x: 1082, y: 675}
m_TargetSize: {x: 1081, y: 675}
m_TextureFilterMode: 0
m_TextureHideFlags: 61
m_RenderIMGUI: 1
@ -352,8 +425,8 @@ MonoBehaviour:
m_VRangeLocked: 0
hZoomLockedByDefault: 0
vZoomLockedByDefault: 0
m_HBaseRangeMin: -541
m_HBaseRangeMax: 541
m_HBaseRangeMin: -540.5
m_HBaseRangeMax: 540.5
m_VBaseRangeMin: -337.5
m_VBaseRangeMax: 337.5
m_HAllowExceedBaseRangeMin: 1
@ -364,7 +437,7 @@ MonoBehaviour:
m_HSlider: 0
m_VSlider: 0
m_IgnoreScrollWheelUntilClicked: 0
m_EnableMouseInput: 0
m_EnableMouseInput: 1
m_EnableSliderZoomHorizontal: 0
m_EnableSliderZoomVertical: 0
m_UniformScale: 1
@ -373,29 +446,29 @@ MonoBehaviour:
serializedVersion: 2
x: 0
y: 21
width: 1082
width: 1081
height: 675
m_Scale: {x: 1, y: 1}
m_Translation: {x: 541, y: 337.5}
m_Translation: {x: 540.5, y: 337.5}
m_MarginLeft: 0
m_MarginRight: 0
m_MarginTop: 0
m_MarginBottom: 0
m_LastShownAreaInsideMargins:
serializedVersion: 2
x: -541
x: -540.5
y: -337.5
width: 1082
width: 1081
height: 675
m_MinimalGUI: 1
m_defaultScale: 1
m_LastWindowPixelSize: {x: 1082, y: 696}
m_LastWindowPixelSize: {x: 1081, y: 696}
m_ClearInEditMode: 1
m_NoCameraWarning: 1
m_LowResolutionForAspectRatios: 01000000000000000000
m_XRRenderMode: 0
m_RenderTexture: {fileID: 0}
--- !u!114 &14
--- !u!114 &17
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
@ -423,7 +496,7 @@ MonoBehaviour:
m_OverlayCanvas:
m_LastAppliedPresetName: Default
m_SaveData: []
--- !u!114 &15
--- !u!114 &18
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
@ -443,9 +516,9 @@ MonoBehaviour:
m_Tooltip:
m_Pos:
serializedVersion: 2
x: 64
x: 62
y: 790
width: 1082
width: 1081
height: 249
m_ViewDataDictionary: {fileID: 0}
m_OverlayCanvas:
@ -464,7 +537,7 @@ MonoBehaviour:
m_SkipHidden: 0
m_SearchArea: 1
m_Folders:
- Assets/Scenes
- Assets/Script/InGame
m_Globs: []
m_OriginalText:
m_ViewMode: 1
@ -476,10 +549,10 @@ MonoBehaviour:
m_LockTracker:
m_IsLocked: 0
m_FolderTreeState:
scrollPos: {x: 0, y: 0}
m_SelectedIDs: 05ca9a3b
m_LastClickedID: 1000000005
m_ExpandedIDs: 000000006a7600006c7600006e760000707600007276000000ca9a3b
scrollPos: {x: 0, y: 155}
m_SelectedIDs: 46670000
m_LastClickedID: 26438
m_ExpandedIDs: 0000000000670000026700000467000006670000086700004067000000ca9a3b
m_RenameOverlay:
m_UserAcceptedRename: 0
m_Name:
@ -495,7 +568,7 @@ MonoBehaviour:
m_IsRenaming: 0
m_OriginalEventType: 11
m_IsRenamingFilename: 1
m_ClientGUIView: {fileID: 2}
m_ClientGUIView: {fileID: 5}
m_SearchString:
m_CreateAssetUtility:
m_EndAction: {fileID: 0}
@ -507,7 +580,7 @@ MonoBehaviour:
scrollPos: {x: 0, y: 0}
m_SelectedIDs:
m_LastClickedID: 0
m_ExpandedIDs: 000000006a7600006c7600006e7600007076000072760000
m_ExpandedIDs: 000000000067000002670000046700000667000008670000
m_RenameOverlay:
m_UserAcceptedRename: 0
m_Name:
@ -532,9 +605,9 @@ MonoBehaviour:
m_Icon: {fileID: 0}
m_ResourceFile:
m_ListAreaState:
m_SelectedInstanceIDs:
m_LastClickedInstanceID: 0
m_HadKeyboardFocusLastEvent: 0
m_SelectedInstanceIDs: c25a0000
m_LastClickedInstanceID: 23234
m_HadKeyboardFocusLastEvent: 1
m_ExpandedInstanceIDs: c62300008a5c000000000000
m_RenameOverlay:
m_UserAcceptedRename: 0
@ -551,7 +624,7 @@ MonoBehaviour:
m_IsRenaming: 0
m_OriginalEventType: 11
m_IsRenamingFilename: 1
m_ClientGUIView: {fileID: 2}
m_ClientGUIView: {fileID: 5}
m_CreateAssetUtility:
m_EndAction: {fileID: 0}
m_InstanceID: 0
@ -559,11 +632,11 @@ MonoBehaviour:
m_Icon: {fileID: 0}
m_ResourceFile:
m_NewAssetIndexInList: -1
m_ScrollPosition: {x: 0, y: 0}
m_ScrollPosition: {x: 0, y: 59}
m_GridSize: 16
m_SkipHiddenPackages: 0
m_DirectoriesAreaWidth: 355
--- !u!114 &16
--- !u!114 &19
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
@ -583,9 +656,9 @@ MonoBehaviour:
m_Tooltip:
m_Pos:
serializedVersion: 2
x: 1463
x: 1460
y: 73
width: 456
width: 459
height: 966
m_ViewDataDictionary: {fileID: 0}
m_OverlayCanvas:
@ -597,14 +670,14 @@ MonoBehaviour:
m_CachedPref: 160
m_ControlHash: -371814159
m_PrefName: Preview_InspectorPreview
m_LastInspectedObjectInstanceID: -1
m_LastVerticalScrollValue: 0
m_LastInspectedObjectInstanceID: 23234
m_LastVerticalScrollValue: 667
m_GlobalObjectId:
m_InspectorMode: 0
m_LockTracker:
m_IsLocked: 0
m_PreviewWindow: {fileID: 0}
--- !u!114 &17
--- !u!114 &20
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
@ -624,10 +697,10 @@ MonoBehaviour:
m_Tooltip:
m_Pos:
serializedVersion: 2
x: 1147
x: 1144
y: 73
width: 314
height: 696
height: 449
m_ViewDataDictionary: {fileID: 0}
m_OverlayCanvas:
m_LastAppliedPresetName: Default
@ -635,9 +708,9 @@ MonoBehaviour:
m_SceneHierarchy:
m_TreeViewState:
scrollPos: {x: 0, y: 0}
m_SelectedIDs:
m_LastClickedID: 0
m_ExpandedIDs: 32fbffff
m_SelectedIDs: c25a0000
m_LastClickedID: 23234
m_ExpandedIDs: 32fbffff2a5b0000
m_RenameOverlay:
m_UserAcceptedRename: 0
m_Name:
@ -653,7 +726,7 @@ MonoBehaviour:
m_IsRenaming: 0
m_OriginalEventType: 11
m_IsRenamingFilename: 0
m_ClientGUIView: {fileID: 6}
m_ClientGUIView: {fileID: 9}
m_SearchString:
m_ExpandedScenes: []
m_CurrenRootInstanceID: 0
@ -661,7 +734,7 @@ MonoBehaviour:
m_IsLocked: 0
m_CurrentSortingName: TransformSorting
m_WindowGUID: 4c969a2b90040154d917609493e03593
--- !u!114 &18
--- !u!114 &21
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
@ -681,10 +754,10 @@ MonoBehaviour:
m_Tooltip:
m_Pos:
serializedVersion: 2
x: 64
y: 73
width: 1082
height: 696
x: -1073
y: 58
width: 1080
height: 672
m_ViewDataDictionary: {fileID: 0}
m_OverlayCanvas:
m_LastAppliedPresetName: Default
@ -919,9 +992,9 @@ MonoBehaviour:
m_PlayAudio: 0
m_AudioPlay: 0
m_Position:
m_Target: {x: 35.909485, y: -489.08286, z: 447.1831}
m_Target: {x: 32.245174, y: 39.198368, z: 44.195084}
speed: 2
m_Value: {x: 35.909485, y: -489.08286, z: 447.1831}
m_Value: {x: 32.245174, y: 39.198368, z: 44.195084}
m_RenderMode: 0
m_CameraMode:
drawMode: 0
@ -968,13 +1041,13 @@ MonoBehaviour:
m_GridAxis: 1
m_gridOpacity: 0.5
m_Rotation:
m_Target: {x: 0.32789153, y: 0.21797852, z: -0.078089386, w: 0.9158536}
m_Target: {x: 0.6133127, y: 0.005624831, z: -0.004448684, w: 0.78973943}
speed: 2
m_Value: {x: -0.32789153, y: -0.21797852, z: 0.078089386, w: -0.9158537}
m_Value: {x: 0.61334574, y: 0.0056251343, z: -0.0044489237, w: 0.789782}
m_Size:
m_Target: 574.0399
m_Target: 1.4054321
speed: 2
m_Value: 574.0399
m_Value: 1.4054321
m_Ortho:
m_Target: 0
speed: 2
@ -999,7 +1072,7 @@ MonoBehaviour:
m_SceneVisActive: 1
m_LastLockedObject: {fileID: 0}
m_ViewIsLockedToObject: 0
--- !u!114 &19
--- !u!114 &22
MonoBehaviour:
m_ObjectHideFlags: 52
m_CorrespondingSourceObject: {fileID: 0}
@ -1019,10 +1092,10 @@ MonoBehaviour:
m_Tooltip:
m_Pos:
serializedVersion: 2
x: 1147
y: 790
x: 1144
y: 543
width: 314
height: 249
height: 496
m_ViewDataDictionary: {fileID: 0}
m_OverlayCanvas:
m_LastAppliedPresetName: Default

View File

@ -7,9 +7,9 @@ onBoardingDoNotAskAgain = true
showPackageIndexes = false
showStatusBar = false
scopes = {
"last_search.DD5CDD96" = "StartUIManager"
"last_search.DD5CDD96" = "ray"
"OpenInspectorPreview.DD5CDD96" = "0"
"currentGroup.DD5CDD96" = "scene"
"currentGroup.DD5CDD96" = "asset"
"last_search.2138236A" = "t:selectEffect"
"OpenInspectorPreview.2138236A" = "0"
"currentGroup.2138236A" = "asset"
@ -59,6 +59,7 @@ providers = {
objectSelectors = {
}
recentSearches = [
"ray"
"StartUIManager"
"t:PlayerCamera"
"t"