add robot, fix world
This commit is contained in:
+16311
-116
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,121 @@
|
||||
{
|
||||
"templatePinStates": [],
|
||||
"dependencyTypeInfos": [
|
||||
{
|
||||
"userAdded": false,
|
||||
"type": "UnityEngine.AnimationClip",
|
||||
"defaultInstantiationMode": 0
|
||||
},
|
||||
{
|
||||
"userAdded": false,
|
||||
"type": "UnityEditor.Animations.AnimatorController",
|
||||
"defaultInstantiationMode": 0
|
||||
},
|
||||
{
|
||||
"userAdded": false,
|
||||
"type": "UnityEngine.AnimatorOverrideController",
|
||||
"defaultInstantiationMode": 0
|
||||
},
|
||||
{
|
||||
"userAdded": false,
|
||||
"type": "UnityEditor.Audio.AudioMixerController",
|
||||
"defaultInstantiationMode": 0
|
||||
},
|
||||
{
|
||||
"userAdded": false,
|
||||
"type": "UnityEngine.ComputeShader",
|
||||
"defaultInstantiationMode": 1
|
||||
},
|
||||
{
|
||||
"userAdded": false,
|
||||
"type": "UnityEngine.Cubemap",
|
||||
"defaultInstantiationMode": 0
|
||||
},
|
||||
{
|
||||
"userAdded": false,
|
||||
"type": "UnityEngine.GameObject",
|
||||
"defaultInstantiationMode": 0
|
||||
},
|
||||
{
|
||||
"userAdded": false,
|
||||
"type": "UnityEditor.LightingDataAsset",
|
||||
"defaultInstantiationMode": 0
|
||||
},
|
||||
{
|
||||
"userAdded": false,
|
||||
"type": "UnityEngine.LightingSettings",
|
||||
"defaultInstantiationMode": 0
|
||||
},
|
||||
{
|
||||
"userAdded": false,
|
||||
"type": "UnityEngine.Material",
|
||||
"defaultInstantiationMode": 0
|
||||
},
|
||||
{
|
||||
"userAdded": false,
|
||||
"type": "UnityEditor.MonoScript",
|
||||
"defaultInstantiationMode": 1
|
||||
},
|
||||
{
|
||||
"userAdded": false,
|
||||
"type": "UnityEngine.PhysicsMaterial",
|
||||
"defaultInstantiationMode": 0
|
||||
},
|
||||
{
|
||||
"userAdded": false,
|
||||
"type": "UnityEngine.PhysicsMaterial2D",
|
||||
"defaultInstantiationMode": 0
|
||||
},
|
||||
{
|
||||
"userAdded": false,
|
||||
"type": "UnityEngine.Rendering.PostProcessing.PostProcessProfile",
|
||||
"defaultInstantiationMode": 0
|
||||
},
|
||||
{
|
||||
"userAdded": false,
|
||||
"type": "UnityEngine.Rendering.PostProcessing.PostProcessResources",
|
||||
"defaultInstantiationMode": 0
|
||||
},
|
||||
{
|
||||
"userAdded": false,
|
||||
"type": "UnityEngine.Rendering.VolumeProfile",
|
||||
"defaultInstantiationMode": 0
|
||||
},
|
||||
{
|
||||
"userAdded": false,
|
||||
"type": "UnityEditor.SceneAsset",
|
||||
"defaultInstantiationMode": 1
|
||||
},
|
||||
{
|
||||
"userAdded": false,
|
||||
"type": "UnityEngine.Shader",
|
||||
"defaultInstantiationMode": 1
|
||||
},
|
||||
{
|
||||
"userAdded": false,
|
||||
"type": "UnityEngine.ShaderVariantCollection",
|
||||
"defaultInstantiationMode": 1
|
||||
},
|
||||
{
|
||||
"userAdded": false,
|
||||
"type": "UnityEngine.Texture",
|
||||
"defaultInstantiationMode": 0
|
||||
},
|
||||
{
|
||||
"userAdded": false,
|
||||
"type": "UnityEngine.Texture2D",
|
||||
"defaultInstantiationMode": 0
|
||||
},
|
||||
{
|
||||
"userAdded": false,
|
||||
"type": "UnityEngine.Timeline.TimelineAsset",
|
||||
"defaultInstantiationMode": 0
|
||||
}
|
||||
],
|
||||
"defaultDependencyTypeInfo": {
|
||||
"userAdded": false,
|
||||
"type": "<default_scene_template_dependencies>",
|
||||
"defaultInstantiationMode": 1
|
||||
},
|
||||
"newSceneOverride": 0
|
||||
}
|
||||
Generated
+8
-5
@@ -2,8 +2,9 @@
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!78 &1
|
||||
TagManager:
|
||||
serializedVersion: 2
|
||||
tags: []
|
||||
serializedVersion: 3
|
||||
tags:
|
||||
- robot
|
||||
layers:
|
||||
- Default
|
||||
- TransparentFX
|
||||
@@ -11,9 +12,9 @@ TagManager:
|
||||
-
|
||||
- Water
|
||||
- UI
|
||||
-
|
||||
-
|
||||
-
|
||||
- obstacles
|
||||
- terrain
|
||||
- robot
|
||||
-
|
||||
-
|
||||
-
|
||||
@@ -41,3 +42,5 @@ TagManager:
|
||||
- name: Default
|
||||
uniqueID: 0
|
||||
locked: 0
|
||||
m_RenderingLayers:
|
||||
- Default
|
||||
|
||||
@@ -51,3 +51,51 @@ git submodule update
|
||||
- [URDF-Importer](https://github.com/Unity-Technologies/URDF-Importer)
|
||||
`https://github.com/Unity-Technologies/URDF-Importer.git?path=/com.unity.robotics.urdf-importer#v0.5.2`
|
||||
6. Если не все ошибки были исправленны, то выходим из режима `Safe Mode > Exit Safe Mode`. Во вкладке `Robotics > ROS Settings` переключаем на протокол `ROS2` и ждем компиляции проекта. После компиляции оставшихся скриптов не должно возникнуть никаких критических ошибок.
|
||||
|
||||
# 4. ROS2: установка дополнительных пакетов
|
||||
Рабочим воркспейсом будем считать `~/sirius_ws`.
|
||||
|
||||
1. В `sirius_ws/src` клонируем пакет [ROS TCP Endpoint](https://github.com/Unity-Technologies/ROS-TCP-Endpoint):
|
||||
```bash
|
||||
cd ~/sirius_ws/src
|
||||
git clone -b main-ros2 https://github.com/Unity-Technologies/ROS-TCP-Endpoint.git
|
||||
```
|
||||
|
||||
2. Собираем workspace из его корня командой
|
||||
```bash
|
||||
cd ~/sirius_ws
|
||||
colcon build --symlink-install
|
||||
```
|
||||
# 5. Запуск симуляции
|
||||
|
||||
1. На стороне ROS2 запускает TCP-сервер:
|
||||
```bash
|
||||
ros2 run ros_tcp_endpoint default_server_endpoint --ros-args -p ROS_IP:=127.0.0.1
|
||||
```
|
||||
2. В Unity запускаем симуляцию нажав кнопку `Play` (внешний вид: ▶) на панели инструментов (чуть выше окна просмотра сцены `Scene` / игрового окна `Game`). В верхнем левом углу игрового окна будет отображаться плашка с указанием IP-адреса и индикацией состояния подключения (внешний вид: ⇄): если стрелки <span style="color:red">красного цвета</span> - соединения нет, если <span style="color:blue">синего</span> - есть. Ошибки работы симуляции будут выводиться в собственную консоль Unity. Для прекращения работы симуляции повторно нажмите кнопку `Play`.
|
||||
> Во время симуляции можно изменять параметры скриптов, положение объектов и другие элементы, но после ее завершения все изменения автоматически откатятся к начальному состоянию.
|
||||
|
||||
## 🚨 Известные проблемы и их решения
|
||||
|
||||
### Проблема импорта текстур
|
||||
|
||||
При импроте текстур и материалов может возникнуть конфликт при рендеринге: предметы на сцене будут ярко розового цвета. Для устранения этой проблемы перейдите в строке меню наверху:<br>
|
||||
`Edit > Render Pipeline > Universal Render Pipeline > Upgrade Project Materials to URP Materials или Upgrade Selected Project Materials to URP Materials` (второй вариант доступен при предварительном выборе проблемных текстур перед вызовом контекстного меню).
|
||||
|
||||
### Ошибка компиляции библиотеки URDF-Importer `DllNotFoundException: libdl.so`
|
||||
> [Похожее Issue](https://github.com/Unity-Technologies/URDF-Importer/issues/224)
|
||||
|
||||
Полный текст ошибки:
|
||||
```console
|
||||
DllNotFoundException: libdl.so assembly:<unknown assembly> type:<unknown type> member:(null)
|
||||
Assimp.Unmanaged.UnmanagedLibrary+UnmanagedLinuxLibraryImplementation.NativeLoadLibrary (System.String path) (at <d40f2b0ad6814d4c8094142d8473733f>:0)
|
||||
Assimp.Unmanaged.UnmanagedLibrary+UnmanagedLibraryImplementation.LoadLibrary (System.String path) (at <d40f2b0ad6814d4c8094142d8473733f>:0)
|
||||
Assimp.Unmanaged.UnmanagedLibrary.LoadLibrary (System.String libPath) (at <d40f2b0ad6814d4c8094142d8473733f>:0)
|
||||
Assimp.Unmanaged.UnmanagedLibrary.LoadLibrary () (at <d40f2b0ad6814d4c8094142d8473733f>:0)
|
||||
Assimp.AssimpUnity.InitializePlugin () (at ./Library/PackageCache/com.unity.robotics.urdf-importer@4ed58f8d00fe/Runtime/UnityMeshImporter/Plugins/AssimpNet/AssimpUnity.cs:147)
|
||||
```
|
||||
Чтобы устранить эту ошибку, выполните следующие шаги:
|
||||
1. Проверить наличие файла `libdl.so.2` в директории `/usr/lib/x86_64-linux-gnu`.
|
||||
2. Если имеется, то добавить ссылку командой `sudo ln -s /usr/lib/x86_64-linux-gnu/libdl.so.2 /usr/lib/libdl.so`.
|
||||
3. Если нет то найти и модифицировать команду из п.2.
|
||||
4. Повторно открыть проект.
|
||||
Reference in New Issue
Block a user