diff --git a/.gitignore b/.gitignore index 2a6ea76..a290788 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,4 @@ Thumbs.db android/ .venv/ .vscode +bin diff --git a/demo_staging.tscn b/demo_staging.tscn index ec8a2d9..9acc1ff 100644 --- a/demo_staging.tscn +++ b/demo_staging.tscn @@ -6,7 +6,7 @@ [node name="DemoStaging" instance=ExtResource("1")] script = ExtResource("2") -main_scene = "res://scenes/main_menu/main_menu_level.tscn" +main_scene = "res://scenes/title_scene.tscn" [node name="LoadingScreen" parent="." index="2"] splash_screen = ExtResource("3_2an2h") diff --git a/export_presets.cfg b/export_presets.cfg index e2e753d..8b0fc54 100644 --- a/export_presets.cfg +++ b/export_presets.cfg @@ -3,33 +3,29 @@ name="Windows Desktop" platform="Windows Desktop" runnable=true +advanced_options=false dedicated_server=false custom_features="" export_filter="all_resources" include_filter="" exclude_filter="" -export_path="" +export_path="bin/SneedXR Game Jam Feb 2025.exe" encryption_include_filters="" encryption_exclude_filters="" encrypt_pck=false encrypt_directory=false -script_encryption_key="" +script_export_mode=2 [preset.0.options] custom_template/debug="" custom_template/release="" -debug/export_console_script=1 +debug/export_console_wrapper=0 binary_format/embed_pck=false -texture_format/bptc=true -texture_format/s3tc=true -texture_format/etc=false -texture_format/etc2=false +texture_format/s3tc_bptc=true +texture_format/etc2_astc=false binary_format/architecture="x86_64" codesign/enable=false -codesign/identity_type=0 -codesign/identity="" -codesign/password="" codesign/timestamp=true codesign/timestamp_server_url="" codesign/digest_algorithm=1 @@ -46,6 +42,9 @@ application/product_name="" application/file_description="" application/copyright="" application/trademarks="" +application/export_angle=0 +application/export_d3d12=0 +application/d3d12_agility_sdk_multiarch=true ssh_remote_deploy/enabled=false ssh_remote_deploy/host="user@host_ip" ssh_remote_deploy/port="22" @@ -63,12 +62,18 @@ Unregister-ScheduledTask -TaskName godot_remote_debug -Confirm:$false -ErrorActi ssh_remote_deploy/cleanup_script="Stop-ScheduledTask -TaskName godot_remote_debug -ErrorAction:SilentlyContinue Unregister-ScheduledTask -TaskName godot_remote_debug -Confirm:$false -ErrorAction:SilentlyContinue Remove-Item -Recurse -Force '{temp_dir}'" +debug/export_console_script=1 +texture_format/bptc=true +texture_format/s3tc=true +texture_format/etc=false +texture_format/etc2=false [preset.1] name="Linux/X11" -platform="Linux/X11" +platform="Linux" runnable=true +advanced_options=false dedicated_server=false custom_features="" export_filter="all_resources" @@ -79,18 +84,16 @@ encryption_include_filters="" encryption_exclude_filters="" encrypt_pck=false encrypt_directory=false -script_encryption_key="" +script_export_mode=2 [preset.1.options] custom_template/debug="" custom_template/release="" -debug/export_console_script=1 +debug/export_console_wrapper=1 binary_format/embed_pck=false -texture_format/bptc=true -texture_format/s3tc=true -texture_format/etc=false -texture_format/etc2=false +texture_format/s3tc_bptc=true +texture_format/etc2_astc=false binary_format/architecture="x86_64" ssh_remote_deploy/enabled=false ssh_remote_deploy/host="user@host_ip" @@ -104,12 +107,18 @@ unzip -o -q \"{temp_dir}/{archive_name}\" -d \"{temp_dir}\" ssh_remote_deploy/cleanup_script="#!/usr/bin/env bash kill $(pgrep -x -f \"{temp_dir}/{exe_name} {cmd_args}\") rm -rf \"{temp_dir}\"" +debug/export_console_script=1 +texture_format/bptc=true +texture_format/s3tc=true +texture_format/etc=false +texture_format/etc2=false [preset.2] name="Android Quest" platform="Android" runnable=true +advanced_options=false dedicated_server=false custom_features="" export_filter="all_resources" @@ -120,30 +129,23 @@ encryption_include_filters="" encryption_exclude_filters="" encrypt_pck=false encrypt_directory=false -script_encryption_key="" +script_export_mode=2 [preset.2.options] custom_template/debug="" custom_template/release="" gradle_build/use_gradle_build=true +gradle_build/gradle_build_directory="" +gradle_build/android_source_template="" +gradle_build/compress_native_libraries=false gradle_build/export_format=0 gradle_build/min_sdk="" gradle_build/target_sdk="" -plugins/GodotOpenXRKHR=false -plugins/GodotOpenXRLynx=false -plugins/GodotOpenXRMeta=true -plugins/GodotOpenXRPico=false architectures/armeabi-v7a=false architectures/arm64-v8a=true architectures/x86=false architectures/x86_64=false -keystore/debug="" -keystore/debug_user="" -keystore/debug_password="" -keystore/release="" -keystore/release_user="" -keystore/release_password="" version/code=1 version/name="1.0" package/unique_name="org.godotengine.godotxrtoolsdemo" @@ -152,14 +154,14 @@ package/signed=true package/app_category=2 package/retain_data_on_uninstall=false package/exclude_from_recents=false +package/show_in_android_tv=false +package/show_in_app_library=true +package/show_as_launcher_app=false launcher_icons/main_192x192="" launcher_icons/adaptive_foreground_432x432="" launcher_icons/adaptive_background_432x432="" graphics/opengl_debug=false xr_features/xr_mode=1 -xr_features/hand_tracking=1 -xr_features/hand_tracking_frequency=0 -xr_features/passthrough=0 screen/immersive_mode=true screen/support_small=true screen/support_normal=true @@ -252,6 +254,7 @@ permissions/mount_format_filesystems=false permissions/mount_unmount_filesystems=false permissions/nfc=false permissions/persistent_activity=false +permissions/post_notifications=false permissions/process_outgoing_calls=false permissions/read_calendar=false permissions/read_call_log=false @@ -317,12 +320,20 @@ permissions/write_sms=false permissions/write_social_stream=false permissions/write_sync_settings=false permissions/write_user_dictionary=false +plugins/GodotOpenXRKHR=false +plugins/GodotOpenXRLynx=false +plugins/GodotOpenXRMeta=true +plugins/GodotOpenXRPico=false +xr_features/hand_tracking=1 +xr_features/hand_tracking_frequency=0 +xr_features/passthrough=0 [preset.3] name="Android Pico" platform="Android" runnable=false +advanced_options=false dedicated_server=false custom_features="" export_filter="all_resources" @@ -333,30 +344,23 @@ encryption_include_filters="" encryption_exclude_filters="" encrypt_pck=false encrypt_directory=false -script_encryption_key="" +script_export_mode=2 [preset.3.options] custom_template/debug="" custom_template/release="" gradle_build/use_gradle_build=true +gradle_build/gradle_build_directory="" +gradle_build/android_source_template="" +gradle_build/compress_native_libraries=false gradle_build/export_format=0 gradle_build/min_sdk="" gradle_build/target_sdk="" -plugins/GodotOpenXRKHR=false -plugins/GodotOpenXRLynx=false -plugins/GodotOpenXRMeta=false -plugins/GodotOpenXRPico=true architectures/armeabi-v7a=false architectures/arm64-v8a=true architectures/x86=false architectures/x86_64=false -keystore/debug="" -keystore/debug_user="" -keystore/debug_password="" -keystore/release="" -keystore/release_user="" -keystore/release_password="" version/code=1 version/name="1.0" package/unique_name="org.godotengine.godotxrtoolsdemo" @@ -365,14 +369,14 @@ package/signed=true package/app_category=2 package/retain_data_on_uninstall=false package/exclude_from_recents=false +package/show_in_android_tv=false +package/show_in_app_library=true +package/show_as_launcher_app=false launcher_icons/main_192x192="" launcher_icons/adaptive_foreground_432x432="" launcher_icons/adaptive_background_432x432="" graphics/opengl_debug=false xr_features/xr_mode=1 -xr_features/hand_tracking=0 -xr_features/hand_tracking_frequency=0 -xr_features/passthrough=0 screen/immersive_mode=true screen/support_small=true screen/support_normal=true @@ -465,6 +469,7 @@ permissions/mount_format_filesystems=false permissions/mount_unmount_filesystems=false permissions/nfc=false permissions/persistent_activity=false +permissions/post_notifications=false permissions/process_outgoing_calls=false permissions/read_calendar=false permissions/read_call_log=false @@ -530,12 +535,20 @@ permissions/write_sms=false permissions/write_social_stream=false permissions/write_sync_settings=false permissions/write_user_dictionary=false +plugins/GodotOpenXRKHR=false +plugins/GodotOpenXRLynx=false +plugins/GodotOpenXRMeta=false +plugins/GodotOpenXRPico=true +xr_features/hand_tracking=0 +xr_features/hand_tracking_frequency=0 +xr_features/passthrough=0 [preset.4] name="Android Lynx" platform="Android" runnable=false +advanced_options=false dedicated_server=false custom_features="" export_filter="all_resources" @@ -546,30 +559,23 @@ encryption_include_filters="" encryption_exclude_filters="" encrypt_pck=false encrypt_directory=false -script_encryption_key="" +script_export_mode=2 [preset.4.options] custom_template/debug="" custom_template/release="" gradle_build/use_gradle_build=true +gradle_build/gradle_build_directory="" +gradle_build/android_source_template="" +gradle_build/compress_native_libraries=false gradle_build/export_format=0 gradle_build/min_sdk="" gradle_build/target_sdk="" -plugins/GodotOpenXRKHR=false -plugins/GodotOpenXRLynx=true -plugins/GodotOpenXRMeta=false -plugins/GodotOpenXRPico=false architectures/armeabi-v7a=false architectures/arm64-v8a=true architectures/x86=false architectures/x86_64=false -keystore/debug="" -keystore/debug_user="" -keystore/debug_password="" -keystore/release="" -keystore/release_user="" -keystore/release_password="" version/code=1 version/name="1.0" package/unique_name="org.godotengine.godotxrtoolsdemo" @@ -578,14 +584,14 @@ package/signed=true package/app_category=2 package/retain_data_on_uninstall=false package/exclude_from_recents=false +package/show_in_android_tv=false +package/show_in_app_library=true +package/show_as_launcher_app=false launcher_icons/main_192x192="" launcher_icons/adaptive_foreground_432x432="" launcher_icons/adaptive_background_432x432="" graphics/opengl_debug=false xr_features/xr_mode=1 -xr_features/hand_tracking=0 -xr_features/hand_tracking_frequency=0 -xr_features/passthrough=0 screen/immersive_mode=true screen/support_small=true screen/support_normal=true @@ -678,6 +684,7 @@ permissions/mount_format_filesystems=false permissions/mount_unmount_filesystems=false permissions/nfc=false permissions/persistent_activity=false +permissions/post_notifications=false permissions/process_outgoing_calls=false permissions/read_calendar=false permissions/read_call_log=false @@ -743,12 +750,20 @@ permissions/write_sms=false permissions/write_social_stream=false permissions/write_sync_settings=false permissions/write_user_dictionary=false +plugins/GodotOpenXRKHR=false +plugins/GodotOpenXRLynx=true +plugins/GodotOpenXRMeta=false +plugins/GodotOpenXRPico=false +xr_features/hand_tracking=0 +xr_features/hand_tracking_frequency=0 +xr_features/passthrough=0 [preset.5] name="Android Khronos (Magic Leap 2, HTC, Etc)" platform="Android" runnable=false +advanced_options=false dedicated_server=false custom_features="" export_filter="all_resources" @@ -759,30 +774,23 @@ encryption_include_filters="" encryption_exclude_filters="" encrypt_pck=false encrypt_directory=false -script_encryption_key="" +script_export_mode=2 [preset.5.options] custom_template/debug="" custom_template/release="" gradle_build/use_gradle_build=true +gradle_build/gradle_build_directory="" +gradle_build/android_source_template="" +gradle_build/compress_native_libraries=false gradle_build/export_format=0 gradle_build/min_sdk="" gradle_build/target_sdk="" -plugins/GodotOpenXRKHR=true -plugins/GodotOpenXRLynx=false -plugins/GodotOpenXRMeta=false -plugins/GodotOpenXRPico=false architectures/armeabi-v7a=false architectures/arm64-v8a=true architectures/x86=false architectures/x86_64=false -keystore/debug="" -keystore/debug_user="" -keystore/debug_password="" -keystore/release="" -keystore/release_user="" -keystore/release_password="" version/code=1 version/name="1.0" package/unique_name="org.godotengine.godotxrtoolsdemo" @@ -791,14 +799,14 @@ package/signed=true package/app_category=2 package/retain_data_on_uninstall=false package/exclude_from_recents=false +package/show_in_android_tv=false +package/show_in_app_library=true +package/show_as_launcher_app=false launcher_icons/main_192x192="" launcher_icons/adaptive_foreground_432x432="" launcher_icons/adaptive_background_432x432="" graphics/opengl_debug=false xr_features/xr_mode=1 -xr_features/hand_tracking=0 -xr_features/hand_tracking_frequency=0 -xr_features/passthrough=0 screen/immersive_mode=true screen/support_small=true screen/support_normal=true @@ -891,6 +899,7 @@ permissions/mount_format_filesystems=false permissions/mount_unmount_filesystems=false permissions/nfc=false permissions/persistent_activity=false +permissions/post_notifications=false permissions/process_outgoing_calls=false permissions/read_calendar=false permissions/read_call_log=false @@ -956,12 +965,20 @@ permissions/write_sms=false permissions/write_social_stream=false permissions/write_sync_settings=false permissions/write_user_dictionary=false +plugins/GodotOpenXRKHR=true +plugins/GodotOpenXRLynx=false +plugins/GodotOpenXRMeta=false +plugins/GodotOpenXRPico=false +xr_features/hand_tracking=0 +xr_features/hand_tracking_frequency=0 +xr_features/passthrough=0 [preset.6] name="WebXR" platform="Web" runnable=true +advanced_options=false dedicated_server=false custom_features="" export_filter="all_resources" @@ -972,13 +989,14 @@ encryption_include_filters="" encryption_exclude_filters="" encrypt_pck=false encrypt_directory=false -script_encryption_key="" +script_export_mode=2 [preset.6.options] custom_template/debug="" custom_template/release="" variant/extensions_support=false +variant/thread_support=false vram_texture_compression/for_desktop=true vram_texture_compression/for_mobile=false html/export_icon=true @@ -995,6 +1013,7 @@ html/canvas_resize_policy=2 html/focus_canvas_on_start=true html/experimental_virtual_keyboard=false progressive_web_app/enabled=false +progressive_web_app/ensure_cross_origin_isolation_headers=true progressive_web_app/offline_page="" progressive_web_app/display=1 progressive_web_app/orientation=0 diff --git a/project.godot b/project.godot index 10b3bbe..9b440dc 100644 --- a/project.godot +++ b/project.godot @@ -10,7 +10,8 @@ config_version=5 [application] -config/name="Godot XR Tools Demo" +config/name="Sneed: XR Game Jam Feb 2025" +config/version="0.1" run/main_scene="res://demo_staging.tscn" config/features=PackedStringArray("4.3") config/icon="res://icon.png" diff --git a/scenes/main_menu/main_menu_level.tscn b/scenes/main_menu/main_menu_level.tscn index 06d2da0..67c5504 100644 --- a/scenes/main_menu/main_menu_level.tscn +++ b/scenes/main_menu/main_menu_level.tscn @@ -42,65 +42,65 @@ [ext_resource type="Texture2D" uid="uid://cr1l4g7btdyht" path="res://scenes/origin_gravity_demo/origin_gravity_demo.png" id="32_c4n1q"] [ext_resource type="Texture2D" uid="uid://dhd30j0xpcxoi" path="res://scenes/sphere_world_demo/sphere_world_demo.png" id="34_xw8ig"] -[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_bvajl"] +[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_uemdn"] animation = &"Grip" -[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_f07e2"] +[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_cetcl"] animation = &"Grip" -[sub_resource type="AnimationNodeBlend2" id="AnimationNodeBlend2_5aai0"] +[sub_resource type="AnimationNodeBlend2" id="AnimationNodeBlend2_7ad3m"] filter_enabled = true filters = ["Armature/Skeleton3D:Little_Distal_L", "Armature/Skeleton3D:Little_Intermediate_L", "Armature/Skeleton3D:Little_Metacarpal_L", "Armature/Skeleton3D:Little_Proximal_L", "Armature/Skeleton3D:Middle_Distal_L", "Armature/Skeleton3D:Middle_Intermediate_L", "Armature/Skeleton3D:Middle_Metacarpal_L", "Armature/Skeleton3D:Middle_Proximal_L", "Armature/Skeleton3D:Ring_Distal_L", "Armature/Skeleton3D:Ring_Intermediate_L", "Armature/Skeleton3D:Ring_Metacarpal_L", "Armature/Skeleton3D:Ring_Proximal_L", "Armature/Skeleton3D:Thumb_Distal_L", "Armature/Skeleton3D:Thumb_Metacarpal_L", "Armature/Skeleton3D:Thumb_Proximal_L", "Armature/Skeleton:Little_Distal_L", "Armature/Skeleton:Little_Intermediate_L", "Armature/Skeleton:Little_Proximal_L", "Armature/Skeleton:Middle_Distal_L", "Armature/Skeleton:Middle_Intermediate_L", "Armature/Skeleton:Middle_Proximal_L", "Armature/Skeleton:Ring_Distal_L", "Armature/Skeleton:Ring_Intermediate_L", "Armature/Skeleton:Ring_Proximal_L", "Armature/Skeleton:Thumb_Distal_L", "Armature/Skeleton:Thumb_Proximal_L"] -[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_lctvu"] +[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_nedco"] animation = &"Grip 5" -[sub_resource type="AnimationNodeBlend2" id="AnimationNodeBlend2_7e485"] +[sub_resource type="AnimationNodeBlend2" id="AnimationNodeBlend2_dxfrv"] filter_enabled = true filters = ["Armature/Skeleton3D:Index_Distal_L", "Armature/Skeleton3D:Index_Intermediate_L", "Armature/Skeleton3D:Index_Metacarpal_L", "Armature/Skeleton3D:Index_Proximal_L", "Armature/Skeleton:Index_Distal_L", "Armature/Skeleton:Index_Intermediate_L", "Armature/Skeleton:Index_Proximal_L"] -[sub_resource type="AnimationNodeBlendTree" id="AnimationNodeBlendTree_x4nai"] +[sub_resource type="AnimationNodeBlendTree" id="AnimationNodeBlendTree_wvkh4"] graph_offset = Vector2(-536, 11) -nodes/ClosedHand1/node = SubResource("AnimationNodeAnimation_bvajl") +nodes/ClosedHand1/node = SubResource("AnimationNodeAnimation_uemdn") nodes/ClosedHand1/position = Vector2(-600, 300) -nodes/ClosedHand2/node = SubResource("AnimationNodeAnimation_f07e2") +nodes/ClosedHand2/node = SubResource("AnimationNodeAnimation_cetcl") nodes/ClosedHand2/position = Vector2(-360, 300) -nodes/Grip/node = SubResource("AnimationNodeBlend2_5aai0") +nodes/Grip/node = SubResource("AnimationNodeBlend2_7ad3m") nodes/Grip/position = Vector2(0, 20) -nodes/OpenHand/node = SubResource("AnimationNodeAnimation_lctvu") +nodes/OpenHand/node = SubResource("AnimationNodeAnimation_nedco") nodes/OpenHand/position = Vector2(-600, 100) -nodes/Trigger/node = SubResource("AnimationNodeBlend2_7e485") +nodes/Trigger/node = SubResource("AnimationNodeBlend2_dxfrv") nodes/Trigger/position = Vector2(-360, 20) node_connections = [&"Grip", 0, &"Trigger", &"Grip", 1, &"ClosedHand2", &"Trigger", 0, &"OpenHand", &"Trigger", 1, &"ClosedHand1", &"output", 0, &"Grip"] -[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_j005m"] +[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_66tgm"] animation = &"Grip" -[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_w78nm"] +[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_2dxub"] animation = &"Grip" -[sub_resource type="AnimationNodeBlend2" id="AnimationNodeBlend2_4g20o"] +[sub_resource type="AnimationNodeBlend2" id="AnimationNodeBlend2_b2nhh"] filter_enabled = true filters = ["Armature/Skeleton3D:Little_Distal_R", "Armature/Skeleton3D:Little_Intermediate_R", "Armature/Skeleton3D:Little_Metacarpal_R", "Armature/Skeleton3D:Little_Proximal_R", "Armature/Skeleton3D:Middle_Distal_R", "Armature/Skeleton3D:Middle_Intermediate_R", "Armature/Skeleton3D:Middle_Metacarpal_R", "Armature/Skeleton3D:Middle_Proximal_R", "Armature/Skeleton3D:Ring_Distal_R", "Armature/Skeleton3D:Ring_Intermediate_R", "Armature/Skeleton3D:Ring_Metacarpal_R", "Armature/Skeleton3D:Ring_Proximal_R", "Armature/Skeleton3D:Thumb_Distal_R", "Armature/Skeleton3D:Thumb_Metacarpal_R", "Armature/Skeleton3D:Thumb_Proximal_R", "Armature/Skeleton:Little_Distal_R", "Armature/Skeleton:Little_Intermediate_R", "Armature/Skeleton:Little_Proximal_R", "Armature/Skeleton:Middle_Distal_R", "Armature/Skeleton:Middle_Intermediate_R", "Armature/Skeleton:Middle_Proximal_R", "Armature/Skeleton:Ring_Distal_R", "Armature/Skeleton:Ring_Intermediate_R", "Armature/Skeleton:Ring_Proximal_R", "Armature/Skeleton:Thumb_Distal_R", "Armature/Skeleton:Thumb_Proximal_R"] -[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_7ko83"] +[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_xs4y0"] animation = &"Grip 5" -[sub_resource type="AnimationNodeBlend2" id="AnimationNodeBlend2_4ayl1"] +[sub_resource type="AnimationNodeBlend2" id="AnimationNodeBlend2_7l3h6"] filter_enabled = true filters = ["Armature/Skeleton3D:Index_Distal_R", "Armature/Skeleton3D:Index_Intermediate_R", "Armature/Skeleton3D:Index_Metacarpal_R", "Armature/Skeleton3D:Index_Proximal_R", "Armature/Skeleton:Index_Distal_R", "Armature/Skeleton:Index_Intermediate_R", "Armature/Skeleton:Index_Proximal_R"] -[sub_resource type="AnimationNodeBlendTree" id="AnimationNodeBlendTree_jq8ph"] +[sub_resource type="AnimationNodeBlendTree" id="AnimationNodeBlendTree_jr1q8"] graph_offset = Vector2(-552.664, 107.301) -nodes/ClosedHand1/node = SubResource("AnimationNodeAnimation_j005m") +nodes/ClosedHand1/node = SubResource("AnimationNodeAnimation_66tgm") nodes/ClosedHand1/position = Vector2(-600, 300) -nodes/ClosedHand2/node = SubResource("AnimationNodeAnimation_w78nm") +nodes/ClosedHand2/node = SubResource("AnimationNodeAnimation_2dxub") nodes/ClosedHand2/position = Vector2(-360, 300) -nodes/Grip/node = SubResource("AnimationNodeBlend2_4g20o") +nodes/Grip/node = SubResource("AnimationNodeBlend2_b2nhh") nodes/Grip/position = Vector2(0, 40) -nodes/OpenHand/node = SubResource("AnimationNodeAnimation_7ko83") +nodes/OpenHand/node = SubResource("AnimationNodeAnimation_xs4y0") nodes/OpenHand/position = Vector2(-600, 100) -nodes/Trigger/node = SubResource("AnimationNodeBlend2_4ayl1") +nodes/Trigger/node = SubResource("AnimationNodeBlend2_7l3h6") nodes/Trigger/position = Vector2(-360, 40) node_connections = [&"Grip", 0, &"Trigger", &"Grip", 1, &"ClosedHand2", &"Trigger", 0, &"OpenHand", &"Trigger", 1, &"ClosedHand1", &"output", 0, &"Grip"] @@ -120,11 +120,6 @@ auto_inner_radius = 0.5 [node name="LeftHand" parent="XROrigin3D/LeftHand" index="0" instance=ExtResource("23_pr05t")] -[node name="Skeleton3D" parent="XROrigin3D/LeftHand/LeftHand/Hand_low_L/Armature" index="0"] -bones/1/rotation = Quaternion(0.323537, -2.56588e-05, -0.0272204, 0.945824) -bones/6/rotation = Quaternion(0.102925, -0.00993208, -0.00794416, 0.994608) -bones/21/rotation = Quaternion(-0.0625182, -0.000225721, -0.115393, 0.991351) - [node name="BoneAttachment3D" type="BoneAttachment3D" parent="XROrigin3D/LeftHand/LeftHand/Hand_low_L/Armature/Skeleton3D" index="1"] transform = Transform3D(0.54083, 0.840813, -0.0231736, -0.0826267, 0.0805243, 0.993322, 0.837064, -0.535303, 0.113023, 0.039902, 0.0402828, -0.150096) bone_name = "Index_Tip_L" @@ -134,8 +129,7 @@ bone_idx = 9 transform = Transform3D(0.999999, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) [node name="AnimationTree" parent="XROrigin3D/LeftHand/LeftHand" index="1"] -root_node = NodePath("../Hand_low_L") -tree_root = SubResource("AnimationNodeBlendTree_x4nai") +tree_root = SubResource("AnimationNodeBlendTree_wvkh4") [node name="FunctionPoseDetector" parent="XROrigin3D/LeftHand" index="1" instance=ExtResource("5_xgcrx")] @@ -150,7 +144,24 @@ strafe = true [node name="Skeleton3D" parent="XROrigin3D/RightHand/RightHand/Hand_low_R/Armature" index="0"] bones/1/rotation = Quaternion(0.323537, 2.56588e-05, 0.0272204, 0.945824) +bones/2/rotation = Quaternion(-0.0904441, 0.0415175, 0.166293, 0.981042) +bones/3/rotation = Quaternion(-0.0466199, -0.020971, -0.0103276, 0.998639) +bones/5/rotation = Quaternion(-0.00128455, 0.0116081, 0.0168259, 0.99979) +bones/6/rotation = Quaternion(0.102925, 0.00993208, 0.00794419, 0.994608) +bones/7/rotation = Quaternion(-0.012859, 0.0236108, 0.323258, 0.945929) +bones/8/rotation = Quaternion(0.0120575, 0.00929193, 0.247472, 0.968775) +bones/10/rotation = Quaternion(-0.0357539, 0.000400032, -0.00636763, 0.99934) +bones/11/rotation = Quaternion(-0.00264964, 0.00114471, 0.125992, 0.992027) +bones/12/rotation = Quaternion(0.0394225, -0.00193393, 0.228074, 0.972843) +bones/13/rotation = Quaternion(-0.0123395, 0.00881294, 0.280669, 0.959685) +bones/15/rotation = Quaternion(-0.0702656, -0.0101908, 0.0243307, 0.99718) +bones/16/rotation = Quaternion(-0.0320634, 0.00223624, 0.0686366, 0.997124) +bones/17/rotation = Quaternion(0.0253452, -0.00812462, 0.249005, 0.968136) +bones/18/rotation = Quaternion(0.00252233, -0.00788073, 0.243204, 0.96994) +bones/20/rotation = Quaternion(-0.0917369, -0.0203027, 0.010183, 0.995524) bones/21/rotation = Quaternion(-0.0625182, 0.000225722, 0.115393, 0.991351) +bones/22/rotation = Quaternion(0.0585786, -0.0216483, 0.269905, 0.96086) +bones/23/rotation = Quaternion(0.00687177, 0.00357275, 0.211953, 0.977249) [node name="mesh_Hand_low_R" parent="XROrigin3D/RightHand/RightHand/Hand_low_R/Armature/Skeleton3D" index="0"] surface_material_override/0 = ExtResource("26_id1x7") @@ -165,7 +176,7 @@ transform = Transform3D(0.999999, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) [node name="AnimationTree" parent="XROrigin3D/RightHand/RightHand" index="1"] root_node = NodePath("../Hand_low_R") -tree_root = SubResource("AnimationNodeBlendTree_jq8ph") +tree_root = SubResource("AnimationNodeBlendTree_jr1q8") [node name="FunctionPoseDetector" parent="XROrigin3D/RightHand" index="1" instance=ExtResource("5_xgcrx")] diff --git a/scenes/player_rig.tscn b/scenes/player_rig.tscn index d880e1e..0e57b72 100644 --- a/scenes/player_rig.tscn +++ b/scenes/player_rig.tscn @@ -1,56 +1,7 @@ -[gd_scene load_steps=9 format=3 uid="uid://4aglyx1y67kh"] +[gd_scene load_steps=2 format=3 uid="uid://4aglyx1y67kh"] -[ext_resource type="PackedScene" uid="uid://bq86r4yll8po" path="res://addons/godot-xr-tools/hands/scenes/lowpoly/left_fullglove_low.tscn" id="1_20jn5"] -[ext_resource type="PackedScene" uid="uid://b4ysuy43poobf" path="res://addons/godot-xr-tools/functions/function_pickup.tscn" id="2_cnhbw"] -[ext_resource type="PackedScene" uid="uid://xqimcf20s2jp" path="res://addons/godot-xr-tools/hands/scenes/lowpoly/right_fullglove_low.tscn" id="3_rvq1d"] -[ext_resource type="PackedScene" uid="uid://dg3gr6ofd8yx4" path="res://addons/godot-xr-tools/functions/movement_world_grab.tscn" id="4_3s67p"] -[ext_resource type="PackedScene" uid="uid://diyu06cw06syv" path="res://addons/godot-xr-tools/player/player_body.tscn" id="5_bs6i8"] -[ext_resource type="Script" path="res://addons/godot-xr-tools/overrides/ground_physics_settings.gd" id="6_hpams"] -[ext_resource type="PackedScene" uid="uid://6uusxts6n6gm" path="res://addons/godot-xr-tools/desktop-support/movement_desktop_direct.tscn" id="6_k7epg"] - -[sub_resource type="Resource" id="Resource_117uy"] -script = ExtResource("6_hpams") -flags = 0 -move_drag = 5.0 -move_traction = 30.0 -stop_on_slope = true -move_max_slope = 45.0 -jump_max_slope = 45.0 -jump_velocity = 3.0 -bounciness = 0.0 -bounce_threshold = 1.0 +[ext_resource type="PackedScene" uid="uid://7uc6tf2tvn1k" path="res://scenes/xr_origin_3d.tscn" id="1_42h7e"] [node name="PlayerRig" type="Node3D"] -[node name="XROrigin3D" type="XROrigin3D" parent="."] - -[node name="XRCamera3D" type="XRCamera3D" parent="XROrigin3D"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.72, 0) - -[node name="LeftHand" type="XRController3D" parent="XROrigin3D"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.25, 1, 0) -tracker = &"left_hand" - -[node name="LeftHand" parent="XROrigin3D/LeftHand" instance=ExtResource("1_20jn5")] - -[node name="FunctionPickup" parent="XROrigin3D/LeftHand" instance=ExtResource("2_cnhbw")] - -[node name="RightHand" type="XRController3D" parent="XROrigin3D"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.25, 1, 0) -tracker = &"right_hand" - -[node name="RightHand" parent="XROrigin3D/RightHand" instance=ExtResource("3_rvq1d")] - -[node name="FunctionPickup" parent="XROrigin3D/RightHand" instance=ExtResource("2_cnhbw")] - -[node name="MovementWorldGrab" parent="XROrigin3D" instance=ExtResource("4_3s67p")] -order = 5 -world_scale_min = 0.01 -world_scale_max = 10.0 - -[node name="PlayerBody" parent="XROrigin3D" instance=ExtResource("5_bs6i8")] -motion_mode = 1 -push_rigid_bodies = false -physics = SubResource("Resource_117uy") - -[node name="MovementDesktopDirect" parent="XROrigin3D" instance=ExtResource("6_k7epg")] +[node name="XROrigin3D" parent="." instance=ExtResource("1_42h7e")] diff --git a/scenes/title_scene.VoxelGI_data.res b/scenes/title_scene.VoxelGI_data.res index dd2c148..534622b 100644 Binary files a/scenes/title_scene.VoxelGI_data.res and b/scenes/title_scene.VoxelGI_data.res differ diff --git a/scenes/title_scene.tscn b/scenes/title_scene.tscn index 8fb5bfc..6a19397 100644 --- a/scenes/title_scene.tscn +++ b/scenes/title_scene.tscn @@ -1,7 +1,7 @@ [gd_scene load_steps=22 format=3 uid="uid://bd86thqpujh3p"] [ext_resource type="Script" path="res://addons/godot-xr-tools/staging/scene_base.gd" id="1_t86sx"] -[ext_resource type="PackedScene" uid="uid://4aglyx1y67kh" path="res://scenes/player_rig.tscn" id="2_3jwhg"] +[ext_resource type="PackedScene" uid="uid://7uc6tf2tvn1k" path="res://scenes/xr_origin_3d.tscn" id="2_xk21l"] [ext_resource type="PackedScene" uid="uid://clc5dre31iskm" path="res://addons/godot-xr-tools/xr/start_xr.tscn" id="3_hdcpx"] [ext_resource type="PackedScene" uid="uid://57q7hhomocdh" path="res://addons/godot-xr-tools/objects/world_grab_area.tscn" id="4_nruf2"] [ext_resource type="VoxelGIData" uid="uid://bxphdae7hohsh" path="res://scenes/title_scene.VoxelGI_data.res" id="5_ebg1r"] @@ -107,11 +107,11 @@ curve = SubResource("Curve_polom") [node name="TitleScene" type="Node3D"] script = ExtResource("1_t86sx") +[node name="XROrigin3D" parent="." instance=ExtResource("2_xk21l")] + [node name="WorldEnvironment" type="WorldEnvironment" parent="."] environment = SubResource("Environment_vgkyp") -[node name="PlayerRig" parent="." instance=ExtResource("2_3jwhg")] - [node name="Floor" type="MeshInstance3D" parent="."] mesh = SubResource("PlaneMesh_gsjte") @@ -125,6 +125,7 @@ light_energy = 1.308 light_bake_mode = 1 shadow_enabled = true omni_range = 14.8072 +metadata/_edit_lock_ = true [node name="StartXR" parent="." instance=ExtResource("3_hdcpx")] @@ -154,6 +155,7 @@ trail_enabled = true trail_lifetime = 0.5 process_material = SubResource("ParticleProcessMaterial_y126y") draw_pass_1 = SubResource("TubeTrailMesh_xiw4w") +metadata/_edit_lock_ = true [node name="GPUParticlesCollisionSDF3D" type="GPUParticlesCollisionSDF3D" parent="."] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.171387, 1.63794, -9.15827) diff --git a/scenes/xr_origin_3d.tscn b/scenes/xr_origin_3d.tscn new file mode 100644 index 0000000..348c4bf --- /dev/null +++ b/scenes/xr_origin_3d.tscn @@ -0,0 +1,54 @@ +[gd_scene load_steps=9 format=3 uid="uid://7uc6tf2tvn1k"] + +[ext_resource type="PackedScene" uid="uid://bq86r4yll8po" path="res://addons/godot-xr-tools/hands/scenes/lowpoly/left_fullglove_low.tscn" id="1_gehoc"] +[ext_resource type="PackedScene" uid="uid://b4ysuy43poobf" path="res://addons/godot-xr-tools/functions/function_pickup.tscn" id="2_sqnjc"] +[ext_resource type="PackedScene" uid="uid://xqimcf20s2jp" path="res://addons/godot-xr-tools/hands/scenes/lowpoly/right_fullglove_low.tscn" id="3_7rd4f"] +[ext_resource type="PackedScene" uid="uid://dg3gr6ofd8yx4" path="res://addons/godot-xr-tools/functions/movement_world_grab.tscn" id="4_ou5a5"] +[ext_resource type="PackedScene" uid="uid://diyu06cw06syv" path="res://addons/godot-xr-tools/player/player_body.tscn" id="5_ug2p8"] +[ext_resource type="Script" path="res://addons/godot-xr-tools/overrides/ground_physics_settings.gd" id="6_2gwa8"] +[ext_resource type="PackedScene" uid="uid://6uusxts6n6gm" path="res://addons/godot-xr-tools/desktop-support/movement_desktop_direct.tscn" id="7_wvixp"] + +[sub_resource type="Resource" id="Resource_117uy"] +script = ExtResource("6_2gwa8") +flags = 0 +move_drag = 5.0 +move_traction = 30.0 +stop_on_slope = true +move_max_slope = 45.0 +jump_max_slope = 45.0 +jump_velocity = 3.0 +bounciness = 0.0 +bounce_threshold = 1.0 + +[node name="XROrigin3D" type="XROrigin3D"] + +[node name="XRCamera3D" type="XRCamera3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.72, 0) + +[node name="LeftHand" type="XRController3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.25, 1, 0) +tracker = &"left_hand" + +[node name="LeftHand" parent="LeftHand" instance=ExtResource("1_gehoc")] + +[node name="FunctionPickup" parent="LeftHand" instance=ExtResource("2_sqnjc")] + +[node name="RightHand" type="XRController3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.25, 1, 0) +tracker = &"right_hand" + +[node name="RightHand" parent="RightHand" instance=ExtResource("3_7rd4f")] + +[node name="FunctionPickup" parent="RightHand" instance=ExtResource("2_sqnjc")] + +[node name="MovementWorldGrab" parent="." instance=ExtResource("4_ou5a5")] +order = 5 +world_scale_min = 0.01 +world_scale_max = 10.0 + +[node name="PlayerBody" parent="." instance=ExtResource("5_ug2p8")] +motion_mode = 1 +push_rigid_bodies = false +physics = SubResource("Resource_117uy") + +[node name="MovementDesktopDirect" parent="." instance=ExtResource("7_wvixp")]