Commit graph

64 commits

Author SHA1 Message Date
f3d38c7569 Minor MAVLink fixes 2025-12-13 21:45:02 +01:00
e5bebc86cc Move README content to MARSH docs, license art assets under CC-BY 2025-12-13 21:04:03 +01:00
1f3c747c72 Move the pilot's point of view with keyboard 2025-12-05 18:09:54 +01:00
fcea9ab6ed Update visual settings 2025-12-05 17:45:35 +01:00
8f7ef6116b Set Manager address and mouse control to defaults 2025-11-28 16:22:44 +01:00
91c985ec1b Handle parameters over MAVLink and document their usage 2025-11-27 18:13:53 +01:00
1be96daa3b Describe Git LFS in README 2025-11-26 14:14:55 +01:00
ec4c9c7947 Fix order of applying NAV_OFS 2025-11-20 15:40:48 +01:00
6226ebb74f Use NAV_OFS parameters 2025-11-19 16:11:21 +01:00
2b147e4479 Document using Godot 4.4
Some scenes were already requiring that to open correctly.
2025-07-16 13:13:38 +02:00
98b83c756f Update README 2025-07-16 12:02:35 +02:00
faf477aba4 Add MIT license 2025-07-16 11:48:25 +02:00
48154002cc Change component identification to HEARTBEAT.type 2025-05-27 13:48:49 +02:00
0514c64f02 Adjust the terrain and fallback camera for bobup trials
Now there are two targets at 15 and 40 feet.
The fallback camera has minimal FoV that still shows the instruments.
2025-03-26 12:28:27 +01:00
f6b002c718 Merge remote-tracking branch 'mirror/margaux' 2025-03-25 10:06:32 +01:00
Margaux Touzard
7f901c30e7 Terrain modification
terrain made square, larger and ref hovering moved
diff --git a/project/ads33-terrain/Cones_scene_terrain.tscn b/project/ads33-terrain/Cones_scene_terrain.tscn
index 5e021a8..495b351 100644
--- a/project/ads33-terrain/Cones_scene_terrain.tscn
+++ b/project/ads33-terrain/Cones_scene_terrain.tscn
@@ -1,5 +1,6 @@
-[gd_scene load_steps=201 format=3 uid="uid://bchcr54i3piaw"]
+[gd_scene load_steps=205 format=3 uid="uid://bchcr54i3piaw"]

+[ext_resource type="Texture2D" uid="uid://41mr2bbcbjpo" path="res://ads33-terrain/concrete_moss_diff_4k.jpg" id="1_ong3a"]
 [ext_resource type="PackedScene" uid="uid://7tddcx4u26w4" path="res://assets/cone/cone.tscn" id="2_hj5f7"]
 [ext_resource type="Texture2D" uid="uid://pgqkydgc7rm4" path="res://ads33-terrain/oak_veneer_01_diff_4k.jpg" id="3_37lsk"]
 [ext_resource type="Texture2D" uid="uid://cvxiq2l0ultl6" path="res://ads33-terrain/wood_planks_grey_diff_4k.jpg" id="4_poywc"]
@@ -14,6 +15,7 @@
 [ext_resource type="Texture2D" uid="uid://c5qyy8c0uau0a" path="res://ads33-terrain/Cones_scene_terrain_slot0_normal_roughness.png" id="12_x847j"]
 [ext_resource type="Texture2D" uid="uid://i00ufp2i21wl" path="res://ads33-terrain/Cones_scene_terrain_slot1_normal_roughness.png" id="13_befda"]
 [ext_resource type="Texture2D" uid="uid://byh5p5nehessp" path="res://ads33-terrain/Cones_scene_terrain_slot2_normal_roughness.png" id="14_3s8vf"]
+[ext_resource type="Script" uid="uid://bkd7vli4qkc5d" path="res://ads33-terrain/panneau_1.gd" id="14_okeb4"]
 [ext_resource type="Texture2D" uid="uid://cuf4phertnpjl" path="res://ads33-terrain/Cones_scene_terrain_slot3_normal_roughness.png" id="16_x847j"]

 [sub_resource type="VisualShader" id="VisualShader_x847j"]
@@ -31,6 +33,13 @@ script = ExtResource("7_futte")
 mode = 0
 textures = [[ExtResource("9_r18km"), ExtResource("10_bf0io"), ExtResource("11_r6ich"), ExtResource("12_r6ich")], [ExtResource("12_x847j"), ExtResource("13_befda"), ExtResource("14_3s8vf"), ExtResource("16_x847j")]]

+[sub_resource type="PlaneMesh" id="PlaneMesh_pfic1"]
+size = Vector2(3000, 3000)
+
+[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_omy3l"]
+albedo_texture = ExtResource("1_ong3a")
+uv1_scale = Vector3(100, 50, 50)
+
 [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_io3gc"]
 albedo_color = Color(0, 0, 0, 1)
 emission_enabled = true
@@ -676,7 +685,7 @@ orientation = 1

 [node name="HTerrain" type="Node3D" parent="."]
 script = ExtResource("6_1xj3b")
-map_scale = Vector3(4, 1, 2)
+map_scale = Vector3(6, 1, 6)
 centered = true
 _terrain_data = ExtResource("7_1ux7j")
 chunk_size = 32
@@ -700,6 +709,11 @@ shader_params/u_specular = 0.5
 metadata/_custom_type_script = ExtResource("6_1xj3b")
 metadata/MaterialOverride = false

+[node name="Flat_herbe" type="MeshInstance3D" parent="."]
+transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.01, 0)
+mesh = SubResource("PlaneMesh_pfic1")
+surface_material_override/0 = SubResource("StandardMaterial3D_omy3l")
+
 [node name="Table" type="Node3D" parent="."]
 transform = Transform3D(0.305, 0, 0, 0, 0.305, 0, 0, 0, 0.305, 0, 0, 15)

@@ -707,7 +721,7 @@ transform = Transform3D(0.305, 0, 0, 0, 0.305, 0, 0, 0, 0.305, 0, 0, 15)
 transform = Transform3D(3.281, 0, 0, 0, 3.281, 0, 0, 0, 3.281, 0, 25, 0)

 [node name="boule" type="MeshInstance3D" parent="Table/TargetHeightFeet"]
-transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.678, 0)
+transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.678, -1)
 material_override = SubResource("StandardMaterial3D_io3gc")
 mesh = SubResource("SphereMesh_x847j")
 skeleton = NodePath("")
@@ -719,57 +733,53 @@ mesh = SubResource("CylinderMesh_x847j")
 skeleton = NodePath("")
 surface_material_override/0 = SubResource("StandardMaterial3D_6b770")

-[node name="panneau1" type="MeshInstance3D" parent="Table/TargetHeightFeet/boule"]
-transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1)
+[node name="panneau1" type="MeshInstance3D" parent="Table/TargetHeightFeet"]
+transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.678, 2)
 mesh = SubResource("BoxMesh_aqqlo")
 skeleton = NodePath("")
 surface_material_override/0 = SubResource("StandardMaterial3D_araq8")
+script = ExtResource("14_okeb4")

-[node name="Support" type="MeshInstance3D" parent="Table/TargetHeightFeet/boule/panneau1"]
+[node name="Support" type="MeshInstance3D" parent="Table/TargetHeightFeet/panneau1"]
 transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.15, -1.25077, 0)
 mesh = SubResource("BoxMesh_oo0l3")
 skeleton = NodePath("")
 surface_material_override/0 = SubResource("StandardMaterial3D_yo10o")

-[node name="Support2" type="MeshInstance3D" parent="Table/TargetHeightFeet/boule/panneau1"]
+[node name="Support2" type="MeshInstance3D" parent="Table/TargetHeightFeet/panneau1"]
 transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.15, -1.25141, 0)
 mesh = SubResource("BoxMesh_oo0l3")
 skeleton = NodePath("")
 surface_material_override/0 = SubResource("StandardMaterial3D_7icp3")

-[node name="centrage" type="MeshInstance3D" parent="Table/TargetHeightFeet/boule/panneau1"]
+[node name="centrage" type="MeshInstance3D" parent="Table/TargetHeightFeet/panneau1"]
 mesh = SubResource("BoxMesh_u22o6")
 skeleton = NodePath("")
 surface_material_override/0 = SubResource("StandardMaterial3D_ohwyq")

-[node name="Top" type="MeshInstance3D" parent="Table/TargetHeightFeet"]
-transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.15, 0)
+[node name="Top" type="MeshInstance3D" parent="Table"]
+transform = Transform3D(3.281, 0, 0, 0, 3.281, 0, 0, 0, 3.281, 0, 24.5079, 0)
 mesh = SubResource("BoxMesh_rnkd2")
-skeleton = NodePath("../..")
 surface_material_override/0 = SubResource("StandardMaterial3D_jm3fw")

-[node name="Column" type="MeshInstance3D" parent="Table/TargetHeightFeet"]
-transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.15, -7.62, 2.15)
+[node name="Column" type="MeshInstance3D" parent="Table"]
+transform = Transform3D(3.281, 0, 0, 0, 3.281, 0, 0, 0, 3.281, 7.05415, -0.00121945, 7.05415)
 mesh = SubResource("CylinderMesh_ri5lb")
-skeleton = NodePath("../..")
 surface_material_override/0 = SubResource("StandardMaterial3D_ugwq3")

-[node name="Column2" type="MeshInstance3D" parent="Table/TargetHeightFeet"]
-transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.15, -7.62, 2.15)
+[node name="Column2" type="MeshInstance3D" parent="Table"]
+transform = Transform3D(3.281, 0, 0, 0, 3.281, 0, 0, 0, 3.281, -7.05415, -0.00121945, 7.05415)
 mesh = SubResource("CylinderMesh_ri5lb")
-skeleton = NodePath("../..")
 surface_material_override/0 = SubResource("StandardMaterial3D_ugwq3")

-[node name="Column3" type="MeshInstance3D" parent="Table/TargetHeightFeet"]
-transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.15, -7.62, -2.15)
+[node name="Column3" type="MeshInstance3D" parent="Table"]
+transform = Transform3D(3.281, 0, 0, 0, 3.281, 0, 0, 0, 3.281, 7.05415, -0.00121945, -7.05415)
 mesh = SubResource("CylinderMesh_ri5lb")
-skeleton = NodePath("../..")
 surface_material_override/0 = SubResource("StandardMaterial3D_ugwq3")

-[node name="Column4" type="MeshInstance3D" parent="Table/TargetHeightFeet"]
-transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.15, -7.62, -2.15)
+[node name="Column4" type="MeshInstance3D" parent="Table"]
+transform = Transform3D(3.281, 0, 0, 0, 3.281, 0, 0, 0, 3.281, -7.05415, -0.00121945, -7.05415)
 mesh = SubResource("CylinderMesh_ri5lb")
-skeleton = NodePath("../..")
 surface_material_override/0 = SubResource("StandardMaterial3D_ugwq3")

 [node name="Cercle" type="Node3D" parent="."]
2025-03-18 15:39:27 +01:00
2c72168568 Maintain tracker correction until it times out 2025-03-10 10:03:15 +01:00
c7f7f85992 Update roadmap 2025-03-04 17:27:48 +01:00
Margaux Touzard
80b6bbae8b Delete flat grass 2025-03-04 14:06:28 +01:00
1574256328 Add roadmap to README 2025-03-04 10:47:11 +01:00
d1c450493d Add controls view to instruments and set address with property 2025-03-03 11:07:09 +01:00
f8d769ebc6 Add property for manager hostname 2025-03-03 11:06:49 +01:00
ad4bb45951 Add fallback camera with mouse controls 2025-03-03 10:01:54 +01:00
2824f77450 Successful test with motion platform and VR together 2025-02-25 14:36:57 +01:00
416aa8a392 Place the terrain in the main scene 2025-02-21 14:29:53 +01:00
9fa17e76dd Add ADS-33 terrain scene 2025-02-21 14:03:31 +01:00
141dbf42c0 Setup zylann.hterrain addon 2025-02-21 13:55:02 +01:00
4d1ca58952 Add heightmap submodule 2025-02-21 13:51:03 +01:00
attila-vr
5cf5a6f5a0 Add new files for instruments and tracker 2025-02-21 13:49:15 +01:00
681c313870 Merge branch 'master' of gitlab.polimi.it:DAER/frame-sim/marsh/visualisation-marsh 2025-02-20 17:18:34 +01:00
55004f3e60 Working with Varjo and Vive Tracker 2025-02-20 17:18:02 +01:00
6d93630e50 Setup gdcef addon 2025-02-20 10:54:05 +01:00
e21e7aadbc Revert deleting update_addons.py
Refs: 4ddccdaf
2025-02-20 09:59:28 +01:00
7b6b037f0d Add gdcef submodule 2025-02-20 09:54:39 +01:00
a9aa7843d9 Allow the game to run without VR 2025-02-18 16:59:46 +01:00
2869d390f8 Spin main rotor when receiving data from flight model› 2025-02-18 15:29:06 +01:00
ab91016524 Move cyclic stick visually 2025-02-18 14:47:50 +01:00
c83135a67b Track connection to manager and receive MANUAL_CONTROL 2025-02-18 12:47:35 +01:00
attila-vr
4ddccdaf62 Redo main scene
Much simpler XR setup based on Bastiaan Olij's Dev stream 58
Correctly applied bone deformation in Mi-2 model
2025-02-18 11:34:59 +01:00
9ebb025f8a Add cone model 2025-02-13 09:48:52 +01:00
b868c2bdbb Cleanup MarshConnector
Receive ATTITUDE and LOCAL_POSITION_NED
Remove unnecessary prints
2025-02-12 15:57:45 +01:00
046388a3eb Start project in Godot 4.4 beta3 2025-02-12 15:46:23 +01:00
8787bdd8f6 Add initial Mi-2 3D model 2025-02-11 15:22:30 +01:00
e3b6c3f501 Setup main scene for XR 2025-01-31 15:13:57 +01:00
432dca80d0 Setup addon installation from submodules 2025-01-31 14:53:09 +01:00
attila-vr
379adbb397 Add godot-xr-tools submodule 2025-01-31 14:37:59 +01:00
17190e20b8 Add Windows instructions to README 2025-01-31 14:20:53 +01:00
231b639901 Fix receiving packets 2025-01-31 11:51:20 +01:00
372468b5a1 Setup basic scene to move the cube to last data received 2025-01-30 17:11:10 +01:00
73fed102c2 Change MarshConnector to runtime class 2025-01-30 14:35:04 +01:00