diff --git a/Assets/Materials/Velodyne.meta b/Assets/Materials/Velodyne.meta new file mode 100644 index 0000000..62b2b8d --- /dev/null +++ b/Assets/Materials/Velodyne.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1cbf6f83d268eed3ca5cf47822346771 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Materials/Velodyne/Puck (VLP16).meta b/Assets/Materials/Velodyne/Puck (VLP16).meta new file mode 100644 index 0000000..576d875 --- /dev/null +++ b/Assets/Materials/Velodyne/Puck (VLP16).meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 09c3cbf4fd5579f48b99aa6793c47ddd +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Materials/Velodyne/Puck (VLP16)/PuckMaterial1.mat b/Assets/Materials/Velodyne/Puck (VLP16)/PuckMaterial1.mat new file mode 100644 index 0000000..a8c9af4 --- /dev/null +++ b/Assets/Materials/Velodyne/Puck (VLP16)/PuckMaterial1.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: PuckMaterial1 + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: _EMISSION + m_LightmapFlags: 2 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.1 + - _GlossyReflections: 1 + - _Metallic: 0.7 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.2264151, g: 0.2264151, b: 0.2264151, a: 1} + - _EmissionColor: {r: 0.4528302, g: 0.44001424, b: 0.44001424, a: 1} diff --git a/Assets/Materials/Velodyne/Puck (VLP16)/PuckMaterial1.mat.meta b/Assets/Materials/Velodyne/Puck (VLP16)/PuckMaterial1.mat.meta new file mode 100644 index 0000000..6a3efbf --- /dev/null +++ b/Assets/Materials/Velodyne/Puck (VLP16)/PuckMaterial1.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 50a20c5797bd49edab54be3f9d7eebb8 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Materials/Velodyne/Puck (VLP16)/PuckMaterial2.mat b/Assets/Materials/Velodyne/Puck (VLP16)/PuckMaterial2.mat new file mode 100644 index 0000000..d1df4a9 --- /dev/null +++ b/Assets/Materials/Velodyne/Puck (VLP16)/PuckMaterial2.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: PuckMaterial2 + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: _EMISSION + m_LightmapFlags: 2 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 1 + - _GlossyReflections: 1 + - _Metallic: 0.7 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0, g: 0.15805517, b: 0.16981131, a: 1} + - _EmissionColor: {r: 0.1981132, g: 0.19344072, b: 0.19344072, a: 1} diff --git a/Assets/Materials/Velodyne/Puck (VLP16)/PuckMaterial2.mat.meta b/Assets/Materials/Velodyne/Puck (VLP16)/PuckMaterial2.mat.meta new file mode 100644 index 0000000..f535e91 --- /dev/null +++ b/Assets/Materials/Velodyne/Puck (VLP16)/PuckMaterial2.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e05487c7871719bdbb2fbe3d35281d5e +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefab/Velodyne.meta b/Assets/Prefab/Velodyne.meta new file mode 100644 index 0000000..7e242fb --- /dev/null +++ b/Assets/Prefab/Velodyne.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 72d46dfc6a11ddb0c886cafba189d62e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefab/Velodyne/Puck (VLP16).prefab b/Assets/Prefab/Velodyne/Puck (VLP16).prefab new file mode 100644 index 0000000..2064243 --- /dev/null +++ b/Assets/Prefab/Velodyne/Puck (VLP16).prefab @@ -0,0 +1,339 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &418335419929235642 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2710380819314901752} + - component: {fileID: 4023352827538984644} + - component: {fileID: 8297306268988057207} + m_Layer: 0 + m_Name: "\u5186\u67F1" + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2710380819314901752 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 418335419929235642} + m_LocalRotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071068} + m_LocalPosition: {x: -0, y: -0.0284, z: 0} + m_LocalScale: {x: 5.1650004, y: 5.1650004, z: 0.94000006} + m_Children: [] + m_Father: {fileID: 7836557611519928369} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &4023352827538984644 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 418335419929235642} + m_Mesh: {fileID: -593053110101353100, guid: 7083e14fd9d4fe124995a89ef0853497, type: 3} +--- !u!23 &8297306268988057207 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 418335419929235642} + 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: 50a20c5797bd49edab54be3f9d7eebb8, 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!1 &1146614056072283863 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2121714391888252029} + - component: {fileID: 3792824409339208160} + - component: {fileID: 3917249703033649194} + m_Layer: 0 + m_Name: "\u5186\u67F1.001" + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2121714391888252029 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1146614056072283863} + m_LocalRotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071068} + m_LocalPosition: {x: -0, y: -0.00000000189, z: 0} + m_LocalScale: {x: 5, y: 5, z: 1.905} + m_Children: [] + m_Father: {fileID: 7836557611519928369} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &3792824409339208160 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1146614056072283863} + m_Mesh: {fileID: 4977202743080756836, guid: 7083e14fd9d4fe124995a89ef0853497, type: 3} +--- !u!23 &3917249703033649194 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1146614056072283863} + 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: e05487c7871719bdbb2fbe3d35281d5e, 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!1 &5078391958335333553 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6096721088798546429} + - component: {fileID: 8830730340323369956} + - component: {fileID: 1193015184563849965} + m_Layer: 0 + m_Name: "\u5186\u67F1.002" + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6096721088798546429 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5078391958335333553} + m_LocalRotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071068} + m_LocalPosition: {x: -0, y: 0.026499998, z: 0} + m_LocalScale: {x: 5.1650004, y: 5.1650004, z: 0.74000007} + m_Children: [] + m_Father: {fileID: 7836557611519928369} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &8830730340323369956 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5078391958335333553} + m_Mesh: {fileID: -3696680023821087833, guid: 7083e14fd9d4fe124995a89ef0853497, type: 3} +--- !u!23 &1193015184563849965 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5078391958335333553} + 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: 50a20c5797bd49edab54be3f9d7eebb8, 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!1 &6528621286637279778 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7836557611519928369} + - component: {fileID: 5795945417605209054} + - component: {fileID: 2348453325183345179} + - component: {fileID: 6066355295940586742} + - component: {fileID: 6868413665846823909} + m_Layer: 0 + m_Name: Puck (VLP16) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7836557611519928369 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6528621286637279778} + 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: + - {fileID: 2710380819314901752} + - {fileID: 2121714391888252029} + - {fileID: 6096721088798546429} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &5795945417605209054 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6528621286637279778} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 0.1033, y: 0.0717, z: 0.1033} + m_Center: {x: 0, y: 0, z: 0} +--- !u!114 &2348453325183345179 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6528621286637279778} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 479d6f4dc5ab1e446ab2d632598c7ad5, type: 3} + m_Name: + m_EditorClassIdentifier: + maxAngle: 15 + minAngle: -15 + numberOfLayers: 16 + numberOfIncrements: 180 + maxRange: 100 + distances: [] + azimuts: [] +--- !u!114 &6066355295940586742 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6528621286637279778} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff98778ae051cfd40a6e4effdf851ebd, type: 3} + m_Name: + m_EditorClassIdentifier: + SecondsTimeout: 10 + Serializer: 0 + protocol: 0 + RosBridgeServerUrl: ws://localhost:9090 +--- !u!114 &6868413665846823909 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6528621286637279778} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 2cf09ecb17efba9459a691ba8a4bda9f, type: 3} + m_Name: + m_EditorClassIdentifier: + Topic: velodyne_packets + FrameId: velodyne + numDataBlocks: 12 diff --git a/Assets/Prefab/Velodyne/Puck (VLP16).prefab.meta b/Assets/Prefab/Velodyne/Puck (VLP16).prefab.meta new file mode 100644 index 0000000..59e460a --- /dev/null +++ b/Assets/Prefab/Velodyne/Puck (VLP16).prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: d6ec601ec6cdfc03b9a08fc86740f18c +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefab/unit04.prefab b/Assets/Prefab/unit04.prefab index 4213451..0b2690f 100644 --- a/Assets/Prefab/unit04.prefab +++ b/Assets/Prefab/unit04.prefab @@ -304,7 +304,7 @@ Transform: m_Children: - {fileID: 1834194364934737599} m_Father: {fileID: 1834194365399667186} - m_RootOrder: 8 + m_RootOrder: 9 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1834194364808679675 MonoBehaviour: @@ -428,7 +428,7 @@ Transform: m_Children: - {fileID: 1834194365266631116} m_Father: {fileID: 1834194365399667186} - m_RootOrder: 5 + m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1834194364868902912 MonoBehaviour: @@ -740,9 +740,9 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: ff98778ae051cfd40a6e4effdf851ebd, type: 3} m_Name: m_EditorClassIdentifier: - Timeout: 10 + SecondsTimeout: 10 Serializer: 0 - Protocol: 0 + protocol: 0 RosBridgeServerUrl: ws://localhost:9090 --- !u!114 &1834194364951995676 MonoBehaviour: @@ -953,9 +953,9 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: ff98778ae051cfd40a6e4effdf851ebd, type: 3} m_Name: m_EditorClassIdentifier: - Timeout: 10 + SecondsTimeout: 10 Serializer: 0 - Protocol: 0 + protocol: 0 RosBridgeServerUrl: ws://localhost:9090 --- !u!114 &1834194365089542769 MonoBehaviour: @@ -1140,6 +1140,7 @@ Transform: - {fileID: 1834194365372357525} - {fileID: 1834194364951995677} - {fileID: 1834194365089542734} + - {fileID: 4743075444478471771} - {fileID: 1834194366752875321} - {fileID: 1834194364868902941} - {fileID: 1834194366044563480} @@ -1494,7 +1495,7 @@ Transform: m_Children: - {fileID: 1834194365789587898} m_Father: {fileID: 1834194365399667186} - m_RootOrder: 9 + m_RootOrder: 10 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1834194365856065916 MonoBehaviour: @@ -1707,7 +1708,7 @@ Transform: m_Children: - {fileID: 1834194366221472005} m_Father: {fileID: 1834194365399667186} - m_RootOrder: 7 + m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1834194366006760649 MonoBehaviour: @@ -1784,20 +1785,6 @@ FixedJoint: m_EnablePreprocessing: 1 m_MassScale: 1 m_ConnectedMassScale: 1 ---- !u!64 &1834194366042997710 -MeshCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 6709278294576844996} - m_Material: {fileID: 13400000, guid: db2a87f8ddbb92a4cbb3cc634c4a3d61, type: 2} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 4 - m_Convex: 1 - m_CookingOptions: 30 - m_Mesh: {fileID: 4300000, guid: 57f9d7cb466e13a4abf4a251aaf85795, type: 2} --- !u!1 &1834194366044563481 GameObject: m_ObjectHideFlags: 0 @@ -1832,7 +1819,7 @@ Transform: m_Children: - {fileID: 1834194365256844624} m_Father: {fileID: 1834194365399667186} - m_RootOrder: 6 + m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1834194366044563487 MonoBehaviour: @@ -2286,7 +2273,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!4 &1834194366752875321 Transform: m_ObjectHideFlags: 0 @@ -2300,7 +2287,7 @@ Transform: m_Children: - {fileID: 1834194364717643613} m_Father: {fileID: 1834194365399667186} - m_RootOrder: 4 + m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1834194366752875324 MonoBehaviour: @@ -2377,6 +2364,20 @@ FixedJoint: m_EnablePreprocessing: 1 m_MassScale: 1 m_ConnectedMassScale: 1 +--- !u!64 &1834194366042997710 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6709278294576844996} + m_Material: {fileID: 13400000, guid: db2a87f8ddbb92a4cbb3cc634c4a3d61, type: 2} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 4 + m_Convex: 1 + m_CookingOptions: 30 + m_Mesh: {fileID: 4300000, guid: 57f9d7cb466e13a4abf4a251aaf85795, type: 2} --- !u!1001 &1834194364814277103 PrefabInstance: m_ObjectHideFlags: 0 @@ -2903,18 +2904,18 @@ PrefabInstance: - {fileID: 4193202316459527479, guid: 79ebbb2befd00a44c82fe0c1f73dcfc9, type: 3} - {fileID: 6647879764948377881, guid: 79ebbb2befd00a44c82fe0c1f73dcfc9, type: 3} m_SourcePrefab: {fileID: 100100000, guid: 79ebbb2befd00a44c82fe0c1f73dcfc9, type: 3} ---- !u!4 &2153284995836479576 stripped -Transform: - m_CorrespondingSourceObject: {fileID: 330556374173148508, guid: 79ebbb2befd00a44c82fe0c1f73dcfc9, - type: 3} - m_PrefabInstance: {fileID: 1834194365989776644} - m_PrefabAsset: {fileID: 0} --- !u!1 &6709278294576844996 stripped GameObject: m_CorrespondingSourceObject: {fileID: 4929325036762447296, guid: 79ebbb2befd00a44c82fe0c1f73dcfc9, type: 3} m_PrefabInstance: {fileID: 1834194365989776644} m_PrefabAsset: {fileID: 0} +--- !u!4 &2153284995836479576 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 330556374173148508, guid: 79ebbb2befd00a44c82fe0c1f73dcfc9, + type: 3} + m_PrefabInstance: {fileID: 1834194365989776644} + m_PrefabAsset: {fileID: 0} --- !u!1001 &1834194366488569432 PrefabInstance: m_ObjectHideFlags: 0 @@ -2990,3 +2991,78 @@ Transform: type: 3} m_PrefabInstance: {fileID: 1834194366488569432} m_PrefabAsset: {fileID: 0} +--- !u!1001 &3248153457118611050 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1834194365399667186} + m_Modifications: + - target: {fileID: 6528621286637279778, guid: d6ec601ec6cdfc03b9a08fc86740f18c, + type: 3} + propertyPath: m_Name + value: Puck (VLP16) + objectReference: {fileID: 0} + - target: {fileID: 7836557611519928369, guid: d6ec601ec6cdfc03b9a08fc86740f18c, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7836557611519928369, guid: d6ec601ec6cdfc03b9a08fc86740f18c, + type: 3} + propertyPath: m_LocalPosition.y + value: 0.431 + objectReference: {fileID: 0} + - target: {fileID: 7836557611519928369, guid: d6ec601ec6cdfc03b9a08fc86740f18c, + type: 3} + propertyPath: m_LocalPosition.z + value: -0.06229 + objectReference: {fileID: 0} + - target: {fileID: 7836557611519928369, guid: d6ec601ec6cdfc03b9a08fc86740f18c, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7836557611519928369, guid: d6ec601ec6cdfc03b9a08fc86740f18c, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7836557611519928369, guid: d6ec601ec6cdfc03b9a08fc86740f18c, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7836557611519928369, guid: d6ec601ec6cdfc03b9a08fc86740f18c, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7836557611519928369, guid: d6ec601ec6cdfc03b9a08fc86740f18c, + type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 7836557611519928369, guid: d6ec601ec6cdfc03b9a08fc86740f18c, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7836557611519928369, guid: d6ec601ec6cdfc03b9a08fc86740f18c, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7836557611519928369, guid: d6ec601ec6cdfc03b9a08fc86740f18c, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: d6ec601ec6cdfc03b9a08fc86740f18c, type: 3} +--- !u!4 &4743075444478471771 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 7836557611519928369, guid: d6ec601ec6cdfc03b9a08fc86740f18c, + type: 3} + m_PrefabInstance: {fileID: 3248153457118611050} + m_PrefabAsset: {fileID: 0} diff --git a/Assets/RawData.meta b/Assets/RawData.meta new file mode 100644 index 0000000..1d8b88e --- /dev/null +++ b/Assets/RawData.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d98dcd575648fc0129980527d3b7acdf +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/RawData/Velodyne.meta b/Assets/RawData/Velodyne.meta new file mode 100644 index 0000000..776e6f1 --- /dev/null +++ b/Assets/RawData/Velodyne.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6b5d2ecc1e3c17b45a8e22c91219e946 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/RawData/Velodyne/puck.fbx b/Assets/RawData/Velodyne/puck.fbx new file mode 100644 index 0000000..ed556e5 --- /dev/null +++ b/Assets/RawData/Velodyne/puck.fbx @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a32109ceab68f17c97c9079b10b516200b5abbad79dd308a622bba734e3731b +size 21788 diff --git a/Assets/RawData/Velodyne/puck.fbx.meta b/Assets/RawData/Velodyne/puck.fbx.meta new file mode 100644 index 0000000..0ee8c12 --- /dev/null +++ b/Assets/RawData/Velodyne/puck.fbx.meta @@ -0,0 +1,96 @@ +fileFormatVersion: 2 +guid: 7083e14fd9d4fe124995a89ef0853497 +ModelImporter: + serializedVersion: 19300 + internalIDToNameTable: [] + externalObjects: {} + materials: + materialImportMode: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 0 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + sortHierarchyByName: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + skinWeightsMode: 0 + maxBonesPerVertex: 4 + minBoneWeight: 0.001 + meshOptimizationFlags: -1 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + referencedClips: [] + importAnimation: 1 + humanDescription: + serializedVersion: 3 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + globalScale: 1 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + autoGenerateAvatarMappingIfUnspecified: 1 + animationType: 2 + humanoidOversampling: 1 + avatarSetup: 0 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/running.unity b/Assets/Scenes/unit04_test.unity similarity index 77% rename from Assets/Scenes/running.unity rename to Assets/Scenes/unit04_test.unity index 422bb26..913cb15 100644 --- a/Assets/Scenes/running.unity +++ b/Assets/Scenes/unit04_test.unity @@ -494,172 +494,12 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1671675747} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: -1.31, y: 0.62, z: 0.23} + m_LocalPosition: {x: -1.533, y: 0.532, z: 1.701} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &1779710246 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1779710252} - - component: {fileID: 1779710251} - - component: {fileID: 1779710250} - - component: {fileID: 1779710249} - - component: {fileID: 1779710248} - - component: {fileID: 1779710247} - - component: {fileID: 1779710254} - - component: {fileID: 1779710253} - m_Layer: 0 - m_Name: Cylinder - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!114 &1779710247 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1779710246} - m_Enabled: 0 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 3f13aa18ca716d841978f7821bcb3921, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!114 &1779710248 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1779710246} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 479d6f4dc5ab1e446ab2d632598c7ad5, type: 3} - m_Name: - m_EditorClassIdentifier: - maxAngle: 10 - minAngle: -10 - numberOfLayers: 16 - numberOfIncrements: 360 - maxRange: 100 - distances: [] - azimuts: [] ---- !u!136 &1779710249 -CapsuleCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1779710246} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - m_Radius: 0.5000001 - m_Height: 2 - m_Direction: 1 - m_Center: {x: 0.000000059604645, y: 0, z: -0.00000008940697} ---- !u!23 &1779710250 -MeshRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1779710246} - 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: 10303, guid: 0000000000000000f000000000000000, type: 0} - 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!33 &1779710251 -MeshFilter: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1779710246} - m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0} ---- !u!4 &1779710252 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1779710246} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0.5, y: 0.2, z: 1} - m_LocalScale: {x: 0.3, y: 0.2, z: 0.3} - m_Children: [] - m_Father: {fileID: 0} - m_RootOrder: 5 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &1779710253 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1779710246} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: ff98778ae051cfd40a6e4effdf851ebd, type: 3} - m_Name: - m_EditorClassIdentifier: - SecondsTimeout: 10 - Serializer: 0 - protocol: 0 - RosBridgeServerUrl: ws://localhost:9090 ---- !u!114 &1779710254 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1779710246} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 2cf09ecb17efba9459a691ba8a4bda9f, type: 3} - m_Name: - m_EditorClassIdentifier: - Topic: velodyne_packets - FrameId: velodyne - numDataBlocks: 12 --- !u!1001 &1834194366728725521 PrefabInstance: m_ObjectHideFlags: 0 diff --git a/Assets/Scenes/running.unity.meta b/Assets/Scenes/unit04_test.unity.meta similarity index 100% rename from Assets/Scenes/running.unity.meta rename to Assets/Scenes/unit04_test.unity.meta diff --git a/Assets/Scripts/LiDAR.meta b/Assets/Scripts/LiDAR.meta new file mode 100644 index 0000000..3fe399e --- /dev/null +++ b/Assets/Scripts/LiDAR.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8d69ed6aea345fd958089b32bdbd5573 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/VelodyneLidarUnity/Lidar.cs b/Assets/Scripts/LiDAR/Lidar.cs similarity index 100% rename from Assets/Scripts/VelodyneLidarUnity/Lidar.cs rename to Assets/Scripts/LiDAR/Lidar.cs diff --git a/Assets/Scripts/VelodyneLidarUnity/Lidar.cs.meta b/Assets/Scripts/LiDAR/Lidar.cs.meta similarity index 100% rename from Assets/Scripts/VelodyneLidarUnity/Lidar.cs.meta rename to Assets/Scripts/LiDAR/Lidar.cs.meta diff --git a/Assets/Scripts/VelodyneLidarUnity.meta b/Assets/Scripts/Velodyne.meta similarity index 100% rename from Assets/Scripts/VelodyneLidarUnity.meta rename to Assets/Scripts/Velodyne.meta diff --git a/Assets/Scripts/VelodyneLidarUnity/VelodynePublisher.cs b/Assets/Scripts/Velodyne/VelodynePublisher.cs similarity index 100% rename from Assets/Scripts/VelodyneLidarUnity/VelodynePublisher.cs rename to Assets/Scripts/Velodyne/VelodynePublisher.cs diff --git a/Assets/Scripts/VelodyneLidarUnity/VelodynePublisher.cs.meta b/Assets/Scripts/Velodyne/VelodynePublisher.cs.meta similarity index 100% rename from Assets/Scripts/VelodyneLidarUnity/VelodynePublisher.cs.meta rename to Assets/Scripts/Velodyne/VelodynePublisher.cs.meta diff --git a/Assets/Scripts/VelodyneLidarUnity/Velodyne_UDP_Send.cs b/Assets/Scripts/VelodyneLidarUnity/Velodyne_UDP_Send.cs deleted file mode 100644 index 0941494..0000000 --- a/Assets/Scripts/VelodyneLidarUnity/Velodyne_UDP_Send.cs +++ /dev/null @@ -1,218 +0,0 @@ -using UnityEngine; -using System.Collections; -using System; -using System.Text; -using System.Net; -using System.Net.Sockets; -using System.Threading; -using System.IO; - -public class Velodyne_UDP_Send : MonoBehaviour -{ - // - public static string IP = "192.168.2.101"; - public static int port = 2368; - public static int numDataBLocks = 12; - - // - private static int[] laserIdxs = { 0, 2, 4, 6, 8, 10, 12, 14, 1, 3, 5, 7, 9, 11, 13, 15 }; - private static int[] laserIdxs1 = { 0,8 ,1,9, 2,10, 3,11, 4,12, 5,13, 6,14, 7, 15}; - - // connection - private static IPAddress broadcast; - private static IPEndPoint ep; - private static Socket s; - - //gos - private static Lidar lidarGO; - - //functions - public static string ByteArrayToString(byte[] ba) - { - StringBuilder hex = new StringBuilder(ba.Length * 2); - foreach (byte b in ba) - hex.AppendFormat("{0:x2}", b); - return hex.ToString(); - } - - public static float getAzimuth(byte[] az) - { - //Console.WriteLine("Hex: {0:X}", ByteArrayToString(az)); - ushort azInt = System.BitConverter.ToUInt16(az, 0); - float azimuth = (float)azInt / 100.0f; - //Console.Write("azimuth : {0} -->", azimuth); - return azimuth; - } - - public static byte[] makeAzimuthBytes(float az) - { - ushort azimuth = (ushort)(az * 100.0f); - //Console.Write("azimuth : {0} -->", azimuth); - byte[] azimuthArr = System.BitConverter.GetBytes(azimuth); - //Console.WriteLine("Hex: {0:X}", ByteArrayToString(azimuthArr)); - return azimuthArr; - } - - public static byte[] makeDistanceBytes(float dist) - { - ushort distance = (ushort)(dist / 0.002f); - //Console.Write("distance : {0} ", distance); - byte[] distArr = System.BitConverter.GetBytes(distance); - //Console.WriteLine("Hex: {0:X}", ByteArrayToString(distArr)); - return distArr; - } - - public static float getDistance(byte[] distance) - { - //Console.WriteLine("Hex: {0:X}", ByteArrayToString(distance)); - ushort distInt = System.BitConverter.ToUInt16(distance, 0); - float dist = (float)distInt * 0.002f; - //Console.Write(" {0} |", dist); - return dist; - } - - public static byte[] Serialize(float[] distanceData, float[] azimuth, int azimutStart, int numLayers, int numIncrements) - { - byte[] result = new byte[1206]; - byte[] azimuthArr; - byte[] distanceArr; - - int dbIdx = 0; - int azIdx = azimutStart; - int distIdx; - - for (int db = 0; db < 12; db++) - { - if (azIdx >= numIncrements) - { - azIdx = 0; - } - //Debug.Log("azIdx " + azIdx + " dbIdx " + db + "\n"); - - distIdx = azIdx * numLayers; - - // write a data block - dbIdx = db * 100; - result[dbIdx + 0] = 0xff; - result[dbIdx + 1] = 0xee; - azimuthArr = makeAzimuthBytes(azimuth[azIdx]); - Buffer.BlockCopy(azimuthArr, 0, result, dbIdx + 2, 2); - //Debug.Log("db "+db +" azimut " + azimuth[azIdx]); - - // write channel data, first firing - for (int c1 = 0; c1 < 16; c1++) - { - distanceArr = makeDistanceBytes(distanceData[distIdx + laserIdxs1[c1]]); - //Debug.Log("dist1[ " + (distIdx + c1) + "] " + distanceData[distIdx + c1]+ " for idx "+ laserIdxs1[c1] + " mapped "+ distanceData[distIdx + laserIdxs1[c1]]); - - Buffer.BlockCopy(distanceArr, 0, result, dbIdx + 4 + c1 * 3, 2); - result[dbIdx + 4 + c1 * 3 + 2] = 0xff; - } - // write channel data, 2nd firing - for (int c2 = 16; c2 < 32; c2++) - { - distanceArr = makeDistanceBytes(distanceData[distIdx + laserIdxs1[c2 -16]]); - //Debug.Log("dist2[ " + (distIdx + c2)+"] " + distanceData[distIdx + c2]); - - Buffer.BlockCopy(distanceArr, 0, result, dbIdx + 4 + c2 * 3, 2); - result[dbIdx + 4 + c2 * 3 + 2] = 0x12; - } - - //update idxs - azIdx = azIdx + 2; - } - result[1200] = 0x00; - result[1201] = 0x00; - result[1202] = 0x00; - result[1203] = 0x00; - result[1204] = 0x37; - result[1205] = 0x22; - return result; - } - - public static int Deserialize(byte[] data) - { - using (MemoryStream inputStream = new MemoryStream(data)) - using (BinaryReader reader = new BinaryReader(inputStream)) - { - byte[] flagArr, azimuthArr, distanceArr; - byte reflectivity; - int idx; - - float distance = 0; - float azimuth = 0; - float[] distanceValues = new float[16]; - - - //----channel blocks--- - for (int db = 0; db < 12; db++) - { - flagArr = reader.ReadBytes(2); - azimuthArr = reader.ReadBytes(2); - azimuth = getAzimuth(azimuthArr); - - for (int c = 0; c < 16; c++) - { - distanceArr = reader.ReadBytes(2); - idx = laserIdxs[c]; - distance = getDistance(distanceArr); - distanceValues[idx] = distance; - reflectivity = reader.ReadByte(); - } - for (int c = 16; c < 32; c++) - { - distanceArr = reader.ReadBytes(2); - idx = laserIdxs[c-16]; - distance = getDistance(distanceArr); - distanceValues[idx] = distance; - reflectivity = reader.ReadByte(); - } - Console.Write("res azimuth : {0} -->", azimuth); - for (int i = 0; i < 16; i++) - { - Console.Write(" {0} | ", distanceValues[i]); - } - Console.WriteLine(""); - } - - //----get time--- - byte[] timestamp = reader.ReadBytes(4); - Array.Reverse(timestamp); - float time = System.BitConverter.ToSingle(timestamp, 0); - //Console.WriteLine("time : {0}", time); - - //----get factory--- - byte[] factory = reader.ReadBytes(2); - } - return 0; - } - - public void Start() - { - broadcast = IPAddress.Parse(IP); - ep = new IPEndPoint(broadcast, 2368); - s = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp); - lidarGO = gameObject.GetComponent(); - } - - public void FixedUpdate() - { - Boolean cont = true; - int idx = 0; - int azIncrPerMsg = 2 * numDataBLocks; - while (cont) - { - //Debug.Log("start with IDx "+idx+" at "+Time.time); - byte[] dummy1 = Serialize(lidarGO.distances, lidarGO.azimuts, idx, lidarGO.numberOfLayers, lidarGO.numberOfIncrements); - s.SendTo(dummy1, ep); - idx = idx + azIncrPerMsg; - if (idx > (lidarGO.numberOfIncrements-1)) - { - idx = idx - lidarGO.numberOfIncrements; - cont = false; - } - - } - } -} - diff --git a/Assets/Scripts/VelodyneLidarUnity/Velodyne_UDP_Send.cs.meta b/Assets/Scripts/VelodyneLidarUnity/Velodyne_UDP_Send.cs.meta deleted file mode 100644 index 01a24f2..0000000 --- a/Assets/Scripts/VelodyneLidarUnity/Velodyne_UDP_Send.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3f13aa18ca716d841978f7821bcb3921 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: