diff --git a/.gitignore b/.gitignore index 0a3fc02..0af181c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,3 @@ # Godot 4+ specific ignores .godot/ /android/ -*.blend? diff --git a/Root.tscn b/Root.tscn index 7f20ab1..c194197 100644 --- a/Root.tscn +++ b/Root.tscn @@ -1,8 +1,7 @@ -[gd_scene load_steps=6 format=3 uid="uid://bj5ykdjle10tt"] +[gd_scene load_steps=5 format=3 uid="uid://bj5ykdjle10tt"] [ext_resource type="Script" uid="uid://dmq3i7qmo1qe0" path="res://VRPN.gd" id="2_24d08"] [ext_resource type="Script" uid="uid://dpj1wrvfsiq4v" path="res://VRPN_Receiver.gd" id="2_170dk"] -[ext_resource type="PackedScene" uid="uid://b426fy7d6jw2d" path="res://axis.blend" id="3_170dk"] [sub_resource type="BoxMesh" id="BoxMesh_24d08"] size = Vector3(0.1, 0.1, 0.1) @@ -54,26 +53,22 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.764802, 0) script = ExtResource("2_170dk") tracker_name = "Tracker1" -[node name="axis2" parent="Root/SpinTracker/Tracker1" instance=ExtResource("3_170dk")] -transform = Transform3D(0.1, 0, 0, 0, 0.1, 0, 0, 0, 0.1, 0, 0, 0) - -[node name="Label3D2" type="Label3D" parent="Root/SpinTracker/Tracker1"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.759683, 0) -text = "Y-Axis" +[node name="Box2" type="MeshInstance3D" parent="Root/SpinTracker/Tracker1"] +mesh = SubResource("BoxMesh_24d08") +skeleton = NodePath("../../RB1") [node name="Offset2" type="Node3D" parent="Root/SpinTracker"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1, 0, 0) +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.40838, 0, 0) [node name="Tracker2" type="Node3D" parent="Root/SpinTracker/Offset2"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.40838, 0, 0) script = ExtResource("2_170dk") tracker_name = "Tracker2" -[node name="axis" parent="Root/SpinTracker/Offset2/Tracker2" instance=ExtResource("3_170dk")] -transform = Transform3D(0.1, 0, 0, 0, 0.1, 0, 0, 0, 0.1, 0, 0, 0) - -[node name="Label3D3" type="Label3D" parent="Root/SpinTracker/Offset2/Tracker2"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.764205, 0) -text = "Z-Axis" +[node name="Box2" type="MeshInstance3D" parent="Root/SpinTracker/Offset2/Tracker2"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.40838, 0, 0) +mesh = SubResource("BoxMesh_24d08") +skeleton = NodePath("../../RB1") [node name="Offset0" type="Node3D" parent="Root/SpinTracker"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0) @@ -81,9 +76,6 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0) [node name="Tracker0" type="Node3D" parent="Root/SpinTracker/Offset0"] script = ExtResource("2_170dk") -[node name="axis" parent="Root/SpinTracker/Offset0/Tracker0" instance=ExtResource("3_170dk")] -transform = Transform3D(0.1, 0, 0, 0, 0.1, 0, 0, 0, 0.1, 0, 0, 0) - -[node name="Label3D" type="Label3D" parent="Root/SpinTracker/Offset0/Tracker0"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.769847, 0) -text = "X-Axis" +[node name="Box2" type="MeshInstance3D" parent="Root/SpinTracker/Offset0/Tracker0"] +mesh = SubResource("BoxMesh_24d08") +skeleton = NodePath("../../RB1") diff --git a/VRPN.gd b/VRPN.gd index 72fd42f..849b1ef 100644 --- a/VRPN.gd +++ b/VRPN.gd @@ -176,8 +176,7 @@ static func marshall_body(data : PackedByteArray,message_type : int, sender_id: var quat_x = body.get_double() var quat_y = body.get_double() var quat_z = body.get_double() - #var quat = Quaternion(quat_x,quat_y,quat_z,quat_w).normalized() - var quat = Quaternion(quat_w,quat_x,quat_y,quat_z).normalized() + var quat = Quaternion(quat_x,quat_y,quat_z,quat_w).normalized() for r in session.tracker_receivers: r._on_pos_quat({ diff --git a/VRPN_Receiver.gd b/VRPN_Receiver.gd index b540535..8611d13 100644 --- a/VRPN_Receiver.gd +++ b/VRPN_Receiver.gd @@ -11,7 +11,4 @@ func _on_pos_quat(tracker_data : Dictionary): #self.global_position = tracker_data['position'] var rotation := tracker_data['rotation'] as Quaternion - var rot_basis = Basis(rotation) - - self.global_basis = rot_basis - #self.global_basis = Basis(rot_basis.z,-rot_basis.y,rot_basis.x) + self.global_basis = Basis(rotation) diff --git a/axis.blend b/axis.blend deleted file mode 100644 index 6ed72dd..0000000 Binary files a/axis.blend and /dev/null differ diff --git a/axis.blend.import b/axis.blend.import deleted file mode 100644 index 7503db5..0000000 --- a/axis.blend.import +++ /dev/null @@ -1,62 +0,0 @@ -[remap] - -importer="scene" -importer_version=1 -type="PackedScene" -uid="uid://b426fy7d6jw2d" -path="res://.godot/imported/axis.blend-5b7f41137e49e6b98e717dd423c9150b.scn" - -[deps] - -source_file="res://axis.blend" -dest_files=["res://.godot/imported/axis.blend-5b7f41137e49e6b98e717dd423c9150b.scn"] - -[params] - -nodes/root_type="" -nodes/root_name="" -nodes/apply_root_scale=true -nodes/root_scale=1.0 -nodes/import_as_skeleton_bones=false -nodes/use_node_type_suffixes=true -meshes/ensure_tangents=true -meshes/generate_lods=true -meshes/create_shadow_meshes=true -meshes/light_baking=1 -meshes/lightmap_texel_size=0.2 -meshes/force_disable_compression=false -skins/use_named_skins=true -animation/import=true -animation/fps=30 -animation/trimming=false -animation/remove_immutable_tracks=true -animation/import_rest_as_RESET=false -import_script/path="" -_subresources={ -"nodes": { -"PATH:Camera": { -"import/skip_import": true -}, -"PATH:Light": { -"import/skip_import": true -} -} -} -blender/nodes/visible=0 -blender/nodes/active_collection_only=false -blender/nodes/punctual_lights=true -blender/nodes/cameras=true -blender/nodes/custom_properties=true -blender/nodes/modifiers=1 -blender/meshes/colors=false -blender/meshes/uvs=true -blender/meshes/normals=true -blender/meshes/export_geometry_nodes_instances=false -blender/meshes/tangents=true -blender/meshes/skins=2 -blender/meshes/export_bones_deforming_mesh_only=false -blender/materials/unpack_enabled=true -blender/materials/export_materials=1 -blender/animation/limit_playback=true -blender/animation/always_sample=true -blender/animation/group_tracks=true