diff --git a/Assets/GameAssets/Materials/JiGuang/BB 1.mat b/Assets/GameAssets/Materials/JiGuang/BB 1.mat new file mode 100644 index 00000000..7c1f4f29 --- /dev/null +++ b/Assets/GameAssets/Materials/JiGuang/BB 1.mat @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: BB 1 + m_Shader: {fileID: 4800000, guid: 260447483c9f45747adf8dccb662f5f5, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 10307, guid: 0000000000000000f000000000000000, type: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} diff --git a/Assets/GameAssets/Materials/JiGuang/BB 1.mat.meta b/Assets/GameAssets/Materials/JiGuang/BB 1.mat.meta new file mode 100644 index 00000000..a947fc54 --- /dev/null +++ b/Assets/GameAssets/Materials/JiGuang/BB 1.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e7ef8bb32df671e41a9812ab6b2d4763 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/GameAssets/Materials/JiGuang/BB.mat b/Assets/GameAssets/Materials/JiGuang/BB.mat new file mode 100644 index 00000000..17f85c27 --- /dev/null +++ b/Assets/GameAssets/Materials/JiGuang/BB.mat @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: BB + m_Shader: {fileID: 4800000, guid: 260447483c9f45747adf8dccb662f5f5, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 2800000, guid: e1c10d947473169409cd40fe73c2577b, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} diff --git a/Assets/GameAssets/Materials/JiGuang/BB.mat.meta b/Assets/GameAssets/Materials/JiGuang/BB.mat.meta new file mode 100644 index 00000000..02adec65 --- /dev/null +++ b/Assets/GameAssets/Materials/JiGuang/BB.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 32399b504ec89a54d85ba58a496a4919 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/GameAssets/Materials/JiGuang/PosPrefab.prefab b/Assets/GameAssets/Materials/JiGuang/PosPrefab.prefab new file mode 100644 index 00000000..6ae8993d --- /dev/null +++ b/Assets/GameAssets/Materials/JiGuang/PosPrefab.prefab @@ -0,0 +1,95 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &555760222174720032 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 555760222174720060} + - component: {fileID: 555760222174720035} + - component: {fileID: 555760222174720034} + - component: {fileID: 555760222174720033} + m_Layer: 0 + m_Name: PosPrefab + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &555760222174720060 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 555760222174720032} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 2, y: 2, z: 2} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &555760222174720035 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 555760222174720032} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &555760222174720034 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 555760222174720032} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 32399b504ec89a54d85ba58a496a4919, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!135 &555760222174720033 +SphereCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 555760222174720032} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.5 + m_Center: {x: 0, y: 0, z: 0} diff --git a/Assets/GameAssets/Materials/JiGuang/PosPrefab.prefab.meta b/Assets/GameAssets/Materials/JiGuang/PosPrefab.prefab.meta new file mode 100644 index 00000000..2412edc7 --- /dev/null +++ b/Assets/GameAssets/Materials/JiGuang/PosPrefab.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 0a6b1bba5c868ad4fb819e6d82b500ca +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/GameAssets/Prefebs/Models/NewLine.prefab b/Assets/GameAssets/Prefebs/Models/NewLine.prefab new file mode 100644 index 00000000..9cde370b --- /dev/null +++ b/Assets/GameAssets/Prefebs/Models/NewLine.prefab @@ -0,0 +1,148 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &739704727871026136 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 271854476170806724} + - component: {fileID: 4924142890420127964} + - component: {fileID: 1925857787081531138} + m_Layer: 13 + m_Name: NewLine + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &271854476170806724 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 739704727871026136} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &4924142890420127964 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 739704727871026136} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 3de6a11d37ad2f942ac7f33ac612059c, type: 3} + m_Name: + m_EditorClassIdentifier: + isPathCanBePlanned: 0 + lineRenderer: {fileID: 1925857787081531138} + markers: + - {fileID: 0} + PosPrefab: {fileID: 555760222174720032, guid: 0a6b1bba5c868ad4fb819e6d82b500ca, + type: 3} + unmannedAerialVehicleManage: {fileID: 0} +--- !u!120 &1925857787081531138 +LineRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 739704727871026136} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 0 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 54feb25efff2fd5459ceb02f62ca6ef2, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Positions: [] + m_Parameters: + serializedVersion: 3 + widthMultiplier: 1 + widthCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorGradient: + serializedVersion: 2 + key0: {r: 0, g: 1, b: 0, a: 1} + key1: {r: 0, g: 1, b: 0, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + numCornerVertices: 0 + numCapVertices: 0 + alignment: 0 + textureMode: 0 + shadowBias: 0.5 + generateLightingData: 0 + m_UseWorldSpace: 0 + m_Loop: 0 diff --git a/Assets/GameAssets/Prefebs/Models/NewLine.prefab.meta b/Assets/GameAssets/Prefebs/Models/NewLine.prefab.meta new file mode 100644 index 00000000..d749e0ef --- /dev/null +++ b/Assets/GameAssets/Prefebs/Models/NewLine.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 3e35ca2d6b8539a45b9b9bd9ec287f2b +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Zion/Scripts/ModelFunction/DrawingLine/DistanceMeasurement.cs b/Assets/Zion/Scripts/ModelFunction/DrawingLine/DistanceMeasurement.cs new file mode 100644 index 00000000..0883938c --- /dev/null +++ b/Assets/Zion/Scripts/ModelFunction/DrawingLine/DistanceMeasurement.cs @@ -0,0 +1,96 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class DistanceMeasurement : MonoBehaviour +{ + public bool isPathCanBePlanned = false;//是否可以规划路径 + public LineRenderer lineRenderer; // 用于绘制路径的线段渲染器 + public Transform[] markers; // 存储所有标记点的数组 + public GameObject PosPrefab; + public UnmannedAerialVehicleManage unmannedAerialVehicleManage; + void Start() + { + lineRenderer.positionCount = 0; + } + + void Update() + { + if (isPathCanBePlanned) + { + if (Input.GetMouseButtonDown(0)) + { + Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition); + RaycastHit hit; + if (Physics.Raycast(ray, out hit)) + { + AddMarker(hit.point); + } + } + if (Input.GetMouseButtonDown(1)) + { + ClearMarkers(); + } + } + + } + + void AddMarker(Vector3 position) + { + // 创建一个新的游戏对象作为标记点 + GameObject go = Instantiate(PosPrefab); + go.transform.position = position; + + // 将新的标记点添加到数组中 + if (markers == null) + { + markers = new Transform[] { go.transform }; + } + else + { + Transform[] newMarkers = new Transform[markers.Length + 1]; + markers.CopyTo(newMarkers, 0); + newMarkers[markers.Length] = go.transform; + markers = newMarkers; + unmannedAerialVehicleManage.positions.Enqueue(go.transform.position); + } + + // 根据新的标记点数组重新绘制路径 + DrawPath(); + } + + void DrawPath() + { + if (markers.Length < 2) + { + return; // 如果标记点不足两个,则不绘制路径 + } + + // 将所有路径点存储到列表中 + List pathPoints = new List(); + for (int i = 0; i < markers.Length; i++) + { + pathPoints.Add(markers[i].position); + } + + // 绘制路径 + lineRenderer.positionCount = pathPoints.Count; + lineRenderer.SetPositions(pathPoints.ToArray()); + } + + void ClearMarkers() + { + if (markers != null) + { + Transform[] newmarkers = new Transform[1]; + newmarkers[0] = markers[0]; + for (int i=1;i< markers.Length; i++) + { + Destroy(markers[i].gameObject); + } + markers = newmarkers; + lineRenderer.positionCount = 0; + unmannedAerialVehicleManage.positions.Clear(); + } + } +} diff --git a/Assets/Zion/Scripts/ModelFunction/DrawingLine/DistanceMeasurement.cs.meta b/Assets/Zion/Scripts/ModelFunction/DrawingLine/DistanceMeasurement.cs.meta new file mode 100644 index 00000000..d243a12d --- /dev/null +++ b/Assets/Zion/Scripts/ModelFunction/DrawingLine/DistanceMeasurement.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3de6a11d37ad2f942ac7f33ac612059c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: