diff --git a/U3D_DrivingSystem/Assembly-CSharp.csproj b/U3D_DrivingSystem/Assembly-CSharp.csproj
index 26f3a47b..8cd8c65a 100644
--- a/U3D_DrivingSystem/Assembly-CSharp.csproj
+++ b/U3D_DrivingSystem/Assembly-CSharp.csproj
@@ -64,6 +64,7 @@
+
@@ -115,6 +116,7 @@
+
@@ -410,8 +412,6 @@
-
-
diff --git a/U3D_DrivingSystem/Assets/GameAssets/Art/建筑模型/收费站/prefab/收费站.prefab b/U3D_DrivingSystem/Assets/GameAssets/Art/建筑模型/收费站/prefab/收费站.prefab
index 55f0b0a7..76e3680b 100644
--- a/U3D_DrivingSystem/Assets/GameAssets/Art/建筑模型/收费站/prefab/收费站.prefab
+++ b/U3D_DrivingSystem/Assets/GameAssets/Art/建筑模型/收费站/prefab/收费站.prefab
@@ -943,8 +943,8 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1103061781233615414}
m_LocalRotation: {x: -3.7493998e-33, y: -6.123234e-17, z: -0, w: 1}
- m_LocalPosition: {x: 8.88, y: 1.32, z: -136.53}
- m_LocalScale: {x: 7.1287, y: 4.553939, z: 1.9917}
+ m_LocalPosition: {x: 8.67, y: 1.32, z: -132.94}
+ m_LocalScale: {x: 7.549293, y: 4.553939, z: 6.34}
m_Children: []
m_Father: {fileID: 2080977185018652271}
m_RootOrder: 11
@@ -3826,8 +3826,8 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3575635220137957818}
m_LocalRotation: {x: -3.7493998e-33, y: -6.123234e-17, z: -0, w: 1}
- m_LocalPosition: {x: 17.7, y: 1.32, z: -136.37}
- m_LocalScale: {x: 7.1287, y: 4.553939, z: 1.9917}
+ m_LocalPosition: {x: 19.5, y: 1.32, z: -133.68}
+ m_LocalScale: {x: 10.725129, y: 4.553939, z: 6.34}
m_Children: []
m_Father: {fileID: 3754593856869199415}
m_RootOrder: 11
@@ -4032,8 +4032,8 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3722997025499302048}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
- m_LocalPosition: {x: -17.5, y: 1.32, z: -100.63}
- m_LocalScale: {x: 7.1287, y: 4.553939, z: 1.9917}
+ m_LocalPosition: {x: -19.21, y: 1.32, z: -112.61}
+ m_LocalScale: {x: 10.539783, y: 4.553939, z: 6.34}
m_Children: []
m_Father: {fileID: 8159294693412934162}
m_RootOrder: 11
@@ -4239,8 +4239,8 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4030142108679120251}
m_LocalRotation: {x: -3.7493998e-33, y: -6.123234e-17, z: -0, w: 1}
- m_LocalPosition: {x: -8.53, y: 1.3199997, z: -100.630005}
- m_LocalScale: {x: 7.1287, y: 4.553939, z: 1.9917}
+ m_LocalPosition: {x: -8.53, y: 1.32, z: -109.55}
+ m_LocalScale: {x: 7.1287, y: 4.553939, z: 6.34}
m_Children: []
m_Father: {fileID: 7136885523355303906}
m_RootOrder: 1
diff --git a/U3D_DrivingSystem/Assets/Scenes/main_.unity b/U3D_DrivingSystem/Assets/Scenes/main_.unity
index a71e1480..2c2cd70a 100644
--- a/U3D_DrivingSystem/Assets/Scenes/main_.unity
+++ b/U3D_DrivingSystem/Assets/Scenes/main_.unity
@@ -47647,7 +47647,7 @@ GameObject:
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
- m_IsActive: 0
+ m_IsActive: 1
--- !u!114 &152701625
MonoBehaviour:
m_ObjectHideFlags: 0
@@ -148662,7 +148662,7 @@ GameObject:
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
- m_IsActive: 1
+ m_IsActive: 0
--- !u!4 &463649141
Transform:
m_ObjectHideFlags: 0
@@ -150633,6 +150633,12 @@ Transform:
m_Father: {fileID: 917995222}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!33 &468594977 stripped
+MeshFilter:
+ m_CorrespondingSourceObject: {fileID: 3371284, guid: 4292160a5e1fde347934ac660b2c5d30,
+ type: 3}
+ m_PrefabInstance: {fileID: 2037673174}
+ m_PrefabAsset: {fileID: 0}
--- !u!1 &468702952
GameObject:
m_ObjectHideFlags: 0
@@ -169067,7 +169073,7 @@ GameObject:
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
- m_IsActive: 0
+ m_IsActive: 1
--- !u!114 &528661332
MonoBehaviour:
m_ObjectHideFlags: 0
@@ -250383,7 +250389,7 @@ GameObject:
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
- m_IsActive: 0
+ m_IsActive: 1
--- !u!114 &802318044
MonoBehaviour:
m_ObjectHideFlags: 0
@@ -371443,7 +371449,7 @@ GameObject:
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
- m_IsActive: 0
+ m_IsActive: 1
--- !u!114 &1198207951
MonoBehaviour:
m_ObjectHideFlags: 0
@@ -411338,8 +411344,8 @@ MonoBehaviour:
carGearControl: {fileID: 1276762320}
zuiwei: {fileID: 968945826}
diandongcheren: {fileID: 1384190233}
- mesh: {fileID: 0}
- meshFilter: {fileID: 0}
+ mesh: {fileID: -7193705671270685957, guid: efe2b86486a526a4e809023d89746bad, type: 3}
+ meshFilter: {fileID: 468594977}
--- !u!1 &1323235811
GameObject:
m_ObjectHideFlags: 0
@@ -477205,7 +477211,7 @@ GameObject:
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
- m_IsActive: 0
+ m_IsActive: 1
--- !u!114 &1537967814
MonoBehaviour:
m_ObjectHideFlags: 0
diff --git a/U3D_DrivingSystem/Assets/Script/CarGearControl.cs b/U3D_DrivingSystem/Assets/Script/CarGearControl.cs
index d0c5ac16..4ce131aa 100644
--- a/U3D_DrivingSystem/Assets/Script/CarGearControl.cs
+++ b/U3D_DrivingSystem/Assets/Script/CarGearControl.cs
@@ -1,6 +1,7 @@
using EVP;
using UnityEngine;
using UnityEngine.UIElements;
+using Button = UnityEngine.UI.Button;
namespace Script
{
@@ -106,267 +107,279 @@ namespace Script
//
// carData = client.modbusQueue.Dequeue();
- if (ModbusTcpClient.modbusTcpClient.modbusQueue.Count > 0)
+ try
{
- // Debug.Log(ModbusTcpClient.modbusTcpClient.modbusQueue.Count);
-
- carData = ModbusTcpClient.modbusTcpClient.modbusQueue.Dequeue();
-
-
- //方向盘
- vehicleController.steerInput = NormalizeValue(carData.SteeringWheelAngle, minValue, maxValue);
-
- //钥匙 00是熄火,1是通电,2是点火
- switch (carData.KeyStatus)
+ if (ModbusTcpClient.modbusTcpClient.modbusQueue.Count > 0)
{
- case 0:
- uiGame.SetActive(false);
- break;
- case 1:
- break;
- case 2:
- if (carData.BrakePedalPosition > 30)
- {
- uiGame.SetActive(true);
- currentGear = 1;
- dianhuo = true;
- ui2d.SetActive(true);
- }
+ // Debug.Log(ModbusTcpClient.modbusTcpClient.modbusQueue.Count);
- break;
- }
+ carData = ModbusTcpClient.modbusTcpClient.modbusQueue.Dequeue();
- if (!dianhuo)
- continue;
- //手刹
- // vehicleController.throttleInput = carData.HandbrakeStatus == 0 ? 1 : 0;
- //挡位 00空挡,1前进档,2倒挡,3为P档
- //当钥匙为点火状态,才能启动车
- if (carData.IgnitionSwitch == 1)
- {
- switch (carData.GearPosition)
+ //方向盘
+ vehicleController.steerInput = NormalizeValue(carData.SteeringWheelAngle, minValue, maxValue);
+
+ //钥匙 00是熄火,1是通电,2是点火
+ switch (carData.KeyStatus)
{
case 0:
+ uiGame.SetActive(false);
break;
- case 1: //1前进档
- if (carData.HandbrakeStatus == 0)
+ case 1:
+ break;
+ case 2:
+ if (carData.BrakePedalPosition > 30)
{
- if (carData.AcceleratorPedalPosition > 20 && carData.AcceleratorPedalPosition <= 50)
- {
- vehicleController.throttleInput = 1;
- currentGear = 1;
- }
- else if (carData.AcceleratorPedalPosition > 50 && carData.AcceleratorPedalPosition <= 80)
- { vehicleController.throttleInput = 1;
- currentGear = 2;
- }
- else if (carData.AcceleratorPedalPosition > 80 && carData.AcceleratorPedalPosition <= 100)
- { vehicleController.throttleInput = 1;
- currentGear = 3;
- }
- else
- {
- vehicleController.throttleInput = 0;
- currentGear = 0;
- }
- }
- else
- {
- vehicleController.throttleInput = 0;
+ uiGame.SetActive(true);
+ currentGear = 1;
+ dianhuo = true;
+ ui2d.SetActive(true);
}
break;
- case 2: //2倒挡
- if (carData.HandbrakeStatus == 0)
- {
- if (carData.AcceleratorPedalPosition > 20)
+ }
+
+ if (!dianhuo)
+ continue;
+
+ //手刹
+ // vehicleController.throttleInput = carData.HandbrakeStatus == 0 ? 1 : 0;
+ //挡位 00空挡,1前进档,2倒挡,3为P档
+ //当钥匙为点火状态,才能启动车
+ if (carData.IgnitionSwitch == 1)
+ {
+ switch (carData.GearPosition)
+ {
+ case 0:
+ break;
+ case 1: //1前进档
+ if (carData.HandbrakeStatus == 0)
{
- vehicleController.throttleInput = -0.5f;
+ if (carData.AcceleratorPedalPosition > 20 && carData.AcceleratorPedalPosition <= 50)
+ {
+ vehicleController.throttleInput = 1;
+ currentGear = 1;
+ }
+ else if (carData.AcceleratorPedalPosition > 50 && carData.AcceleratorPedalPosition <= 80)
+ {
+ vehicleController.throttleInput = 1;
+ currentGear = 2;
+ }
+ else if (carData.AcceleratorPedalPosition > 80 && carData.AcceleratorPedalPosition <= 100)
+ {
+ vehicleController.throttleInput = 1;
+ currentGear = 3;
+ }
+ else
+ {
+ vehicleController.throttleInput = 0;
+ currentGear = 0;
+ }
}
else
{
vehicleController.throttleInput = 0;
}
- }
- else
- {
- vehicleController.throttleInput = 0;
- }
- break;
- case 3:
- break;
+ break;
+ case 2: //2倒挡
+ if (carData.HandbrakeStatus == 0)
+ {
+ if (carData.AcceleratorPedalPosition > 20)
+ {
+ vehicleController.throttleInput = -0.5f;
+ }
+ else
+ {
+ vehicleController.throttleInput = 0;
+ }
+ }
+ else
+ {
+ vehicleController.throttleInput = 0;
+ }
+
+ break;
+ case 3:
+ break;
+ }
}
- }
- //转向灯 00是未开转向灯,1是左转向灯,2是右转向灯
- //当钥匙转为通电才能启动转向灯 0熄火,1通电,2启动
- // if (carData.IgnitionSwitch == 1)
- // {
- // switch (carData.TurnSignalStatus)
- // {
- // case 0:
- // carInfoManager.StopBlinking();
- // break;
- // case 1:
- // carInfoManager.LeftStartBlinking();
- // break;
- // case 2:
- // carInfoManager.RightStartBlinking();
- // break;
- // }
- // }
+ //转向灯 00是未开转向灯,1是左转向灯,2是右转向灯
+ //当钥匙转为通电才能启动转向灯 0熄火,1通电,2启动
+ // if (carData.IgnitionSwitch == 1)
+ // {
+ // switch (carData.TurnSignalStatus)
+ // {
+ // case 0:
+ // carInfoManager.StopBlinking();
+ // break;
+ // case 1:
+ // carInfoManager.LeftStartBlinking();
+ // break;
+ // case 2:
+ // carInfoManager.RightStartBlinking();
+ // break;
+ // }
+ // }
- //上1,右2,下3,左4
- if (NewValue != carData.ButtonData)
- {
- NewValue = carData.ButtonData;
- CarMenuButton(NewValue);
- }
- // else
- // {
- // continue;
- // }
-
- //雨刮器
- if (carData.WiperStatus == 2)
- {
- ygq.PlayAnimation("donghua");
- }
- else
- {
- ygq.StopAnimationLoop();
- }
-
-
- if (mingdi)
- {
- if (carData.HornStatus == 1)
+ //上1,右2,下3,左4
+ if (NewValue != carData.ButtonData)
{
- mingdi = false;
- accidentManager.Tr(ttt, true);
+ NewValue = carData.ButtonData;
+ CarMenuButton(NewValue);
}
- }
+ // else
+ // {
+ // continue;
+ // }
- //转向灯和双闪
- if (carData.ButtonData == 1)
- {
- if (!inputUp)
+ //雨刮器
+ if (carData.WiperStatus == 2)
{
- inputUp = true;
- inputUpV = carData.TurnSignalStatus;
+ ygq.PlayAnimation("donghua");
}
else
{
- inputUp = false;
- inputUpV = -1;
- turnSignalController.rightTurnSignalGame.SetActive(false);
- turnSignalController.leftTurnSignalGame.SetActive(false);
- turnSignalController.SetSignal(0);
+ ygq.StopAnimationLoop();
}
- }
- if (inputUpV == carData.TurnSignalStatus)
- {
- turnSignalController.SetSignal(3);
- }
- else
- {
- inputUpV = -1;
- switch (carData.TurnSignalStatus)
+
+ if (mingdi)
+ {
+ if (carData.HornStatus == 1)
+ {
+ mingdi = false;
+ accidentManager.Tr(ttt, true);
+ }
+ }
+
+ //转向灯和双闪
+ if (carData.ButtonData == 1)
+ {
+ if (!inputUp)
+ {
+ inputUp = true;
+ inputUpV = carData.TurnSignalStatus;
+ }
+ else
+ {
+ inputUp = false;
+ inputUpV = -1;
+ turnSignalController.rightTurnSignalGame.SetActive(false);
+ turnSignalController.leftTurnSignalGame.SetActive(false);
+ turnSignalController.SetSignal(0);
+ }
+ }
+
+ if (inputUpV == carData.TurnSignalStatus)
+ {
+ turnSignalController.SetSignal(3);
+ }
+ else
+ {
+ inputUpV = -1;
+ switch (carData.TurnSignalStatus)
+ {
+ case 0:
+ turnSignalController.SetSignal(0);
+ break;
+ case 1:
+ turnSignalController.SetSignal(1);
+ break;
+ case 2:
+ turnSignalController.SetSignal(2);
+ break;
+ }
+ }
+
+
+ // 灯光
+ switch (carData.LightStatus)
{
case 0:
- turnSignalController.SetSignal(0);
+ turnSignalController.CloseLight();
break;
case 1:
- turnSignalController.SetSignal(1);
+ turnSignalController.OpenLight();
break;
case 2:
- turnSignalController.SetSignal(2);
+
break;
}
- }
- // 灯光
- switch (carData.LightStatus)
- {
- case 0:
- turnSignalController.CloseLight();
- break;
- case 1:
- turnSignalController.OpenLight();
- break;
- case 2:
-
- break;
- }
-
-
- if (accident.activeInHierarchy)
- {
- if (carData.AcceleratorPedalPosition > 90)
+ if (accident.activeInHierarchy)
{
- accident.transform.Find("重置").GetComponent().onClick.Invoke();
- }
- }
- else
- {
- //踩离合弹出菜单UI
- if (carData.ClutchPedalPosition > 30)
- {
- if (!ClutchPedalPositionBool)
+ if (carData.AcceleratorPedalPosition > 90)
{
- ClutchPedalPositionBool = true;
- carMenuUI.SetActive(true);
+ accident.transform.Find("重置").GetComponent