this repo has no description
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Inital dev commit with functional click to move

Coolkat 52fb485c f08abce2

+235 -137
.gitattributes
.gitignore
addons/godot-git-plugin/LICENSE
addons/godot-git-plugin/THIRDPARTY.md
addons/godot-git-plugin/git_plugin.gdextension
+1
addons/godot-git-plugin/git_plugin.gdextension.uid
··· 1 + uid://qpxjn5lkv86k
addons/godot-git-plugin/linux/libgit_plugin.linux.editor.x86_64.so
addons/godot-git-plugin/macos/libgit_plugin.macos.editor.universal.dylib
addons/godot-git-plugin/plugin.cfg
addons/godot-git-plugin/win64/libgit_plugin.windows.editor.x86_64.dll
addons/godot-git-plugin/win64/libgit_plugin.windows.editor.x86_64.exp
addons/godot-git-plugin/win64/libgit_plugin.windows.editor.x86_64.lib
addons/godot-git-plugin/win64/~libgit_plugin.windows.editor.x86_64.dll

This is a binary file and will not be displayed.

assets/models/player.glb
+1
assets/models/player.glb.import
··· 18 18 nodes/apply_root_scale=true 19 19 nodes/root_scale=1.0 20 20 nodes/import_as_skeleton_bones=false 21 + nodes/use_node_type_suffixes=true 21 22 meshes/ensure_tangents=true 22 23 meshes/generate_lods=true 23 24 meshes/create_shadow_meshes=true
assets/shaders/forground_shader.gdshader
+1
assets/shaders/forground_shader.gdshader.uid
··· 1 + uid://cwabx3gobytqe
assets/shaders/forground_shader_2.gdshader
+1
assets/shaders/forground_shader_2.gdshader.uid
··· 1 + uid://b0jjclv45pbc
assets/textures/Dark/texture_01.png
assets/textures/Dark/texture_01.png.import
assets/textures/Dark/texture_02.png
assets/textures/Dark/texture_02.png.import
assets/textures/Dark/texture_03.png
assets/textures/Dark/texture_03.png.import
assets/textures/Dark/texture_04.png
assets/textures/Dark/texture_04.png.import
assets/textures/Dark/texture_05.png
assets/textures/Dark/texture_05.png.import
assets/textures/Dark/texture_06.png
assets/textures/Dark/texture_06.png.import
assets/textures/Dark/texture_07.png
assets/textures/Dark/texture_07.png.import
assets/textures/Dark/texture_08.png
assets/textures/Dark/texture_08.png.import
assets/textures/Dark/texture_09.png
assets/textures/Dark/texture_09.png.import
assets/textures/Dark/texture_10.png
assets/textures/Dark/texture_10.png.import
assets/textures/Dark/texture_11.png
assets/textures/Dark/texture_11.png.import
assets/textures/Dark/texture_12.png
assets/textures/Dark/texture_12.png.import
assets/textures/Dark/texture_13.png
assets/textures/Dark/texture_13.png.import
assets/textures/Green/texture_01.png
assets/textures/Green/texture_01.png.import
assets/textures/Green/texture_02.png
assets/textures/Green/texture_02.png.import
assets/textures/Green/texture_03.png
assets/textures/Green/texture_03.png.import
assets/textures/Green/texture_04.png
assets/textures/Green/texture_04.png.import
assets/textures/Green/texture_05.png
assets/textures/Green/texture_05.png.import
assets/textures/Green/texture_06.png
assets/textures/Green/texture_06.png.import
assets/textures/Green/texture_07.png
assets/textures/Green/texture_07.png.import
assets/textures/Green/texture_08.png
assets/textures/Green/texture_08.png.import
assets/textures/Green/texture_09.png
assets/textures/Green/texture_09.png.import
assets/textures/Green/texture_10.png
assets/textures/Green/texture_10.png.import
assets/textures/Green/texture_11.png
assets/textures/Green/texture_11.png.import
assets/textures/Green/texture_12.png
assets/textures/Green/texture_12.png.import
assets/textures/Green/texture_13.png
assets/textures/Green/texture_13.png.import
assets/textures/Light/texture_01.png
+13 -6
assets/textures/Light/texture_01.png.import
··· 3 3 importer="texture" 4 4 type="CompressedTexture2D" 5 5 uid="uid://b1e34bnad5idk" 6 - path="res://.godot/imported/texture_01.png-112895a2b5067cee00558ef09adbc8f7.ctex" 6 + path.s3tc="res://.godot/imported/texture_01.png-112895a2b5067cee00558ef09adbc8f7.s3tc.ctex" 7 7 metadata={ 8 - "vram_texture": false 8 + "imported_formats": ["s3tc_bptc"], 9 + "vram_texture": true 9 10 } 10 11 11 12 [deps] 12 13 13 14 source_file="res://assets/textures/Light/texture_01.png" 14 - dest_files=["res://.godot/imported/texture_01.png-112895a2b5067cee00558ef09adbc8f7.ctex"] 15 + dest_files=["res://.godot/imported/texture_01.png-112895a2b5067cee00558ef09adbc8f7.s3tc.ctex"] 15 16 16 17 [params] 17 18 18 - compress/mode=0 19 + compress/mode=2 19 20 compress/high_quality=false 20 21 compress/lossy_quality=0.7 22 + compress/uastc_level=0 23 + compress/rdo_quality_loss=0.0 21 24 compress/hdr_compression=1 22 25 compress/normal_map=0 23 26 compress/channel_pack=0 24 - mipmaps/generate=false 27 + mipmaps/generate=true 25 28 mipmaps/limit=-1 26 29 roughness/mode=0 27 30 roughness/src_normal="" 31 + process/channel_remap/red=0 32 + process/channel_remap/green=1 33 + process/channel_remap/blue=2 34 + process/channel_remap/alpha=3 28 35 process/fix_alpha_border=true 29 36 process/premult_alpha=false 30 37 process/normal_map_invert_y=false 31 38 process/hdr_as_srgb=false 32 39 process/hdr_clamp_exposure=false 33 40 process/size_limit=0 34 - detect_3d/compress_to=1 41 + detect_3d/compress_to=0
assets/textures/Light/texture_02.png
+13 -6
assets/textures/Light/texture_02.png.import
··· 3 3 importer="texture" 4 4 type="CompressedTexture2D" 5 5 uid="uid://wcm11exyc1rm" 6 - path="res://.godot/imported/texture_02.png-d51d270794b3180d66d1205c3745731e.ctex" 6 + path.s3tc="res://.godot/imported/texture_02.png-d51d270794b3180d66d1205c3745731e.s3tc.ctex" 7 7 metadata={ 8 - "vram_texture": false 8 + "imported_formats": ["s3tc_bptc"], 9 + "vram_texture": true 9 10 } 10 11 11 12 [deps] 12 13 13 14 source_file="res://assets/textures/Light/texture_02.png" 14 - dest_files=["res://.godot/imported/texture_02.png-d51d270794b3180d66d1205c3745731e.ctex"] 15 + dest_files=["res://.godot/imported/texture_02.png-d51d270794b3180d66d1205c3745731e.s3tc.ctex"] 15 16 16 17 [params] 17 18 18 - compress/mode=0 19 + compress/mode=2 19 20 compress/high_quality=false 20 21 compress/lossy_quality=0.7 22 + compress/uastc_level=0 23 + compress/rdo_quality_loss=0.0 21 24 compress/hdr_compression=1 22 25 compress/normal_map=0 23 26 compress/channel_pack=0 24 - mipmaps/generate=false 27 + mipmaps/generate=true 25 28 mipmaps/limit=-1 26 29 roughness/mode=0 27 30 roughness/src_normal="" 31 + process/channel_remap/red=0 32 + process/channel_remap/green=1 33 + process/channel_remap/blue=2 34 + process/channel_remap/alpha=3 28 35 process/fix_alpha_border=true 29 36 process/premult_alpha=false 30 37 process/normal_map_invert_y=false 31 38 process/hdr_as_srgb=false 32 39 process/hdr_clamp_exposure=false 33 40 process/size_limit=0 34 - detect_3d/compress_to=1 41 + detect_3d/compress_to=0
assets/textures/Light/texture_03.png
assets/textures/Light/texture_03.png.import
assets/textures/Light/texture_04.png
assets/textures/Light/texture_04.png.import
assets/textures/Light/texture_05.png
assets/textures/Light/texture_05.png.import
assets/textures/Light/texture_06.png
assets/textures/Light/texture_06.png.import
assets/textures/Light/texture_07.png
assets/textures/Light/texture_07.png.import
assets/textures/Light/texture_08.png
assets/textures/Light/texture_08.png.import
assets/textures/Light/texture_09.png
assets/textures/Light/texture_09.png.import
assets/textures/Light/texture_10.png
assets/textures/Light/texture_10.png.import
assets/textures/Light/texture_11.png
assets/textures/Light/texture_11.png.import
assets/textures/Light/texture_12.png
assets/textures/Light/texture_12.png.import
assets/textures/Light/texture_13.png
assets/textures/Light/texture_13.png.import
assets/textures/Orange/texture_01.png
assets/textures/Orange/texture_01.png.import
assets/textures/Orange/texture_02.png
assets/textures/Orange/texture_02.png.import
assets/textures/Orange/texture_03.png
assets/textures/Orange/texture_03.png.import
assets/textures/Orange/texture_04.png
assets/textures/Orange/texture_04.png.import
assets/textures/Orange/texture_05.png
assets/textures/Orange/texture_05.png.import
assets/textures/Orange/texture_06.png
assets/textures/Orange/texture_06.png.import
assets/textures/Orange/texture_07.png
assets/textures/Orange/texture_07.png.import
assets/textures/Orange/texture_08.png
assets/textures/Orange/texture_08.png.import
assets/textures/Orange/texture_09.png
assets/textures/Orange/texture_09.png.import
assets/textures/Orange/texture_10.png
assets/textures/Orange/texture_10.png.import
assets/textures/Orange/texture_11.png
assets/textures/Orange/texture_11.png.import
assets/textures/Orange/texture_12.png
assets/textures/Orange/texture_12.png.import
assets/textures/Orange/texture_13.png
assets/textures/Orange/texture_13.png.import
assets/textures/Purple/texture_01.png
assets/textures/Purple/texture_01.png.import
assets/textures/Purple/texture_02.png
assets/textures/Purple/texture_02.png.import
assets/textures/Purple/texture_03.png
assets/textures/Purple/texture_03.png.import
assets/textures/Purple/texture_04.png
assets/textures/Purple/texture_04.png.import
assets/textures/Purple/texture_05.png
assets/textures/Purple/texture_05.png.import
assets/textures/Purple/texture_06.png
assets/textures/Purple/texture_06.png.import
assets/textures/Purple/texture_07.png
assets/textures/Purple/texture_07.png.import
assets/textures/Purple/texture_08.png
assets/textures/Purple/texture_08.png.import
assets/textures/Purple/texture_09.png
assets/textures/Purple/texture_09.png.import
assets/textures/Purple/texture_10.png
assets/textures/Purple/texture_10.png.import
assets/textures/Purple/texture_11.png
assets/textures/Purple/texture_11.png.import
assets/textures/Purple/texture_12.png
assets/textures/Purple/texture_12.png.import
assets/textures/Purple/texture_13.png
assets/textures/Purple/texture_13.png.import
assets/textures/Red/texture_01.png
assets/textures/Red/texture_01.png.import
assets/textures/Red/texture_02.png
assets/textures/Red/texture_02.png.import
assets/textures/Red/texture_03.png
assets/textures/Red/texture_03.png.import
assets/textures/Red/texture_04.png
assets/textures/Red/texture_04.png.import
assets/textures/Red/texture_05.png
assets/textures/Red/texture_05.png.import
assets/textures/Red/texture_06.png
assets/textures/Red/texture_06.png.import
assets/textures/Red/texture_07.png
assets/textures/Red/texture_07.png.import
assets/textures/Red/texture_08.png
assets/textures/Red/texture_08.png.import
assets/textures/Red/texture_09.png
assets/textures/Red/texture_09.png.import
assets/textures/Red/texture_10.png
assets/textures/Red/texture_10.png.import
assets/textures/Red/texture_11.png
assets/textures/Red/texture_11.png.import
assets/textures/Red/texture_12.png
assets/textures/Red/texture_12.png.import
assets/textures/Red/texture_13.png
assets/textures/Red/texture_13.png.import
icon.svg
icon.svg.import
material/floor_material.tres
+1 -1
material/wall_material.tres
··· 1 - [gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://cwcaq03bnb5p2"] 1 + [gd_resource type="StandardMaterial3D" format=3 uid="uid://cwcaq03bnb5p2"] 2 2 3 3 [ext_resource type="Texture2D" uid="uid://cnw6pflrxpu0l" path="res://assets/textures/Orange/texture_05.png" id="1_r62eb"] 4 4
+34 -22
project.godot
··· 8 8 9 9 config_version=5 10 10 11 + [animation] 12 + 13 + compatibility/default_parent_skeleton_in_mesh_instance_3d=true 14 + 11 15 [application] 12 16 13 17 config/name="Decent DS Clone" 14 18 run/main_scene="res://scenes/main.tscn" 15 - config/features=PackedStringArray("4.3", "Forward Plus") 19 + config/features=PackedStringArray("4.6", "Forward Plus") 16 20 config/icon="res://icon.svg" 17 21 18 22 [autoload] ··· 26 30 27 31 [input] 28 32 29 - forward={ 33 + leftMouse={ 30 34 "deadzone": 0.5, 31 - "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":90,"physical_keycode":0,"key_label":0,"unicode":122,"location":0,"echo":false,"script":null) 32 - , Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":1,"axis_value":-1.0,"script":null) 35 + "events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":1,"position":Vector2(124, 12),"global_position":Vector2(133, 58),"factor":1.0,"button_index":1,"canceled":false,"pressed":true,"double_click":false,"script":null) 33 36 ] 34 37 } 35 - backward={ 36 - "deadzone": 0.5, 37 - "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":83,"physical_keycode":0,"key_label":0,"unicode":115,"location":0,"echo":false,"script":null) 38 - , Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":1,"axis_value":1.0,"script":null) 38 + scrollUp={ 39 + "deadzone": 0.2, 40 + "events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":4,"canceled":false,"pressed":false,"double_click":false,"script":null) 39 41 ] 40 42 } 41 - left={ 42 - "deadzone": 0.5, 43 + scrollDown={ 44 + "deadzone": 0.2, 45 + "events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":5,"canceled":false,"pressed":false,"double_click":false,"script":null) 46 + ] 47 + } 48 + strifeLeft={ 49 + "deadzone": 0.2, 43 50 "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":81,"physical_keycode":0,"key_label":0,"unicode":113,"location":0,"echo":false,"script":null) 44 - , Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":0,"axis_value":-1.0,"script":null) 51 + , Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":65,"key_label":0,"unicode":113,"location":0,"echo":false,"script":null) 45 52 ] 46 53 } 47 - right={ 48 - "deadzone": 0.5, 54 + strifeRight={ 55 + "deadzone": 0.2, 49 56 "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":68,"physical_keycode":0,"key_label":0,"unicode":100,"location":0,"echo":false,"script":null) 50 - , Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":0,"axis_value":1.0,"script":null) 57 + , Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":68,"key_label":0,"unicode":100,"location":0,"echo":false,"script":null) 51 58 ] 52 59 } 53 - jump={ 54 - "deadzone": 0.5, 55 - "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":32,"physical_keycode":0,"key_label":0,"unicode":32,"location":0,"echo":false,"script":null) 56 - , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":0,"pressure":0.0,"pressed":true,"script":null) 60 + strifeUp={ 61 + "deadzone": 0.2, 62 + "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":90,"physical_keycode":0,"key_label":0,"unicode":122,"location":0,"echo":false,"script":null) 63 + , Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":87,"key_label":0,"unicode":122,"location":0,"echo":false,"script":null) 57 64 ] 58 65 } 59 - sprint={ 60 - "deadzone": 0.5, 61 - "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":4194325,"physical_keycode":0,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null) 62 - , Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":4,"axis_value":1.0,"script":null) 66 + strifeDown={ 67 + "deadzone": 0.2, 68 + "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":83,"physical_keycode":0,"key_label":0,"unicode":115,"location":0,"echo":false,"script":null) 69 + , Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":83,"key_label":0,"unicode":115,"location":0,"echo":false,"script":null) 70 + ] 71 + } 72 + centerCamera={ 73 + "deadzone": 0.2, 74 + "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":32,"key_label":0,"unicode":32,"location":0,"echo":false,"script":null) 63 75 ] 64 76 } 65 77
+11
scenes/camera_ray_tracing.gd
··· 1 + extends Camera3D 2 + 3 + 4 + # Called when the node enters the scene tree for the first time. 5 + func _ready() -> void: 6 + pass # Replace with function body. 7 + 8 + 9 + # Called every frame. 'delta' is the elapsed time since the previous frame. 10 + func _process(delta: float) -> void: 11 + pass
+1
scenes/camera_ray_tracing.gd.uid
··· 1 + uid://bvui7x51gd2eq
+11 -11
scenes/camera_rig.tscn
··· 1 - [gd_scene load_steps=4 format=3 uid="uid://cihypvwasq571"] 1 + [gd_scene format=3 uid="uid://cihypvwasq571"] 2 2 3 - [ext_resource type="Script" path="res://scripts/camera_rig.gd" id="1_482ip"] 4 - [ext_resource type="Shader" path="res://assets/shaders/forground_shader.gdshader" id="2_jvvcf"] 3 + [ext_resource type="Script" uid="uid://b155iplq08454" path="res://scripts/camera_rig.gd" id="1_482ip"] 4 + [ext_resource type="Shader" uid="uid://cwabx3gobytqe" path="res://assets/shaders/forground_shader.gdshader" id="2_jvvcf"] 5 5 6 6 [sub_resource type="ShaderMaterial" id="ShaderMaterial_gepmr"] 7 7 shader = ExtResource("2_jvvcf") ··· 10 10 shader_parameter/SOFTNESS = 0.45 11 11 shader_parameter/BASE_OPACITY = 1.06 12 12 13 - [node name="camera_rig" type="Node3D"] 13 + [node name="camera_rig" type="Node3D" unique_id=1778050779] 14 14 script = ExtResource("1_482ip") 15 15 16 - [node name="base_camera" type="Camera3D" parent="."] 16 + [node name="base_camera" type="Camera3D" parent="." unique_id=851890800 groups=["camera"]] 17 17 cull_mask = 1047552 18 18 19 - [node name="background_viewport_container" type="SubViewportContainer" parent="base_camera"] 19 + [node name="background_viewport_container" type="SubViewportContainer" parent="base_camera" unique_id=1671368063] 20 20 anchors_preset = 15 21 21 anchor_right = 1.0 22 22 anchor_bottom = 1.0 23 23 grow_horizontal = 2 24 24 grow_vertical = 2 25 25 26 - [node name="background_viewport" type="SubViewport" parent="base_camera/background_viewport_container"] 26 + [node name="background_viewport" type="SubViewport" parent="base_camera/background_viewport_container" unique_id=1552800858] 27 27 transparent_bg = true 28 28 handle_input_locally = false 29 29 render_target_update_mode = 4 30 30 31 - [node name="background_camera" type="Camera3D" parent="base_camera/background_viewport_container/background_viewport"] 31 + [node name="background_camera" type="Camera3D" parent="base_camera/background_viewport_container/background_viewport" unique_id=388709087] 32 32 cull_mask = 1047553 33 33 34 - [node name="foreground_viewport_container" type="SubViewportContainer" parent="base_camera"] 34 + [node name="foreground_viewport_container" type="SubViewportContainer" parent="base_camera" unique_id=1389520788] 35 35 material = SubResource("ShaderMaterial_gepmr") 36 36 anchors_preset = 15 37 37 anchor_right = 1.0 ··· 39 39 grow_horizontal = 2 40 40 grow_vertical = 2 41 41 42 - [node name="foreground_viewport" type="SubViewport" parent="base_camera/foreground_viewport_container"] 42 + [node name="foreground_viewport" type="SubViewport" parent="base_camera/foreground_viewport_container" unique_id=146777230] 43 43 transparent_bg = true 44 44 handle_input_locally = false 45 45 render_target_update_mode = 4 46 46 47 - [node name="foreground_camera" type="Camera3D" parent="base_camera/foreground_viewport_container/foreground_viewport"] 47 + [node name="foreground_camera" type="Camera3D" parent="base_camera/foreground_viewport_container/foreground_viewport" unique_id=1414814981] 48 48 cull_mask = 1047554
+31 -37
scenes/main.tscn
··· 1 - [gd_scene load_steps=9 format=3 uid="uid://8jytguy3risv"] 1 + [gd_scene format=3 uid="uid://8jytguy3risv"] 2 2 3 - [ext_resource type="Material" uid="uid://bi6wf5occcp8e" path="res://material/floor_material.tres" id="1_3pq1t"] 4 3 [ext_resource type="Material" uid="uid://cwcaq03bnb5p2" path="res://material/wall_material.tres" id="2_13sbk"] 4 + [ext_resource type="Texture2D" uid="uid://wcm11exyc1rm" path="res://assets/textures/Light/texture_02.png" id="2_jyhfs"] 5 5 [ext_resource type="PackedScene" uid="uid://bjid4s7n2tvap" path="res://scenes/player.tscn" id="3_6yui6"] 6 - [ext_resource type="Script" path="res://scripts/auto_hider.gd" id="3_kxhnw"] 7 6 [ext_resource type="PackedScene" uid="uid://cihypvwasq571" path="res://scenes/camera_rig.tscn" id="4_uoky2"] 8 7 9 8 [sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_a1783"] ··· 21 20 sdfgi_enabled = true 22 21 glow_enabled = true 23 22 24 - [node name="world" type="Node3D"] 23 + [sub_resource type="NavigationMesh" id="NavigationMesh_jyhfs"] 24 + vertices = PackedVector3Array(-4, 0.4995, -10, -4, 0.4995, 10, 4, 0.4995, 10, 4, 0.4995, -10) 25 + polygons = [PackedInt32Array(3, 2, 0), PackedInt32Array(0, 2, 1)] 25 26 26 - [node name="WorldEnvironment" type="WorldEnvironment" parent="."] 27 - environment = SubResource("Environment_wcd8c") 27 + [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_tbgi4"] 28 + albedo_texture = ExtResource("2_jyhfs") 28 29 29 - [node name="map" type="Node3D" parent="."] 30 + [node name="world" type="Node3D" unique_id=727314571] 30 31 31 - [node name="floor" type="CSGBox3D" parent="map"] 32 - transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.5, -6) 33 - material_override = ExtResource("1_3pq1t") 34 - use_collision = true 35 - size = Vector3(10, 1, 22) 32 + [node name="WorldEnvironment" type="WorldEnvironment" parent="." unique_id=1175986166] 33 + environment = SubResource("Environment_wcd8c") 34 + 35 + [node name="map" type="Node3D" parent="." unique_id=778874792] 36 36 37 - [node name="wall" type="CSGBox3D" parent="map"] 37 + [node name="wall" type="CSGBox3D" parent="map" unique_id=251616043] 38 38 transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4.5, 1.5, -5.5) 39 39 layers = 2 40 40 material_override = ExtResource("2_13sbk") 41 41 use_collision = true 42 42 size = Vector3(1, 3, 21) 43 43 44 - [node name="wall5" type="CSGBox3D" parent="map"] 45 - transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.157293, 1.25919, 2.74103) 46 - layers = 2 47 - material_override = ExtResource("2_13sbk") 48 - use_collision = true 49 - size = Vector3(1, 2.51837, 3) 50 - script = ExtResource("3_kxhnw") 51 - 52 - [node name="wall6" type="CSGBox3D" parent="map"] 53 - transform = Transform3D(0.0254616, 0, 0.999676, 0, 1, 0, -0.999676, 0, 0.0254616, 1.65681, 1.25919, -6.43279) 54 - layers = 2 55 - material_override = ExtResource("2_13sbk") 56 - use_collision = true 57 - size = Vector3(1, 2.51837, 6) 58 - script = ExtResource("3_kxhnw") 59 - 60 - [node name="wall2" type="CSGBox3D" parent="map"] 44 + [node name="wall2" type="CSGBox3D" parent="map" unique_id=923724786] 61 45 transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.5, 1.5, -6) 62 46 material_override = ExtResource("2_13sbk") 63 47 use_collision = true 64 48 size = Vector3(1, 3, 22) 65 49 66 - [node name="wall3" type="CSGBox3D" parent="map"] 67 - transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, 0, 1.5, 4.5) 50 + [node name="wall3" type="CSGBox3D" parent="map" unique_id=840277306] 51 + transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, 0, 1.5, 4.59073) 68 52 layers = 2 69 53 material_override = ExtResource("2_13sbk") 70 54 use_collision = true 71 55 size = Vector3(1, 3, 8) 72 56 73 - [node name="wall4" type="CSGBox3D" parent="map"] 57 + [node name="wall4" type="CSGBox3D" parent="map" unique_id=1549902390] 74 58 transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, 0.5, 1.5, -16.5) 75 59 material_override = ExtResource("2_13sbk") 76 60 use_collision = true 77 61 size = Vector3(1, 3, 9) 78 62 79 - [node name="OmniLight3D" type="OmniLight3D" parent="map"] 63 + [node name="OmniLight3D" type="OmniLight3D" parent="map" unique_id=1680181972] 80 64 transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 6.04557, -5.47398) 81 65 layers = 3 82 66 light_energy = 2.258 83 67 omni_range = 10.597 84 68 85 - [node name="player" parent="." instance=ExtResource("3_6yui6")] 86 - transform = Transform3D(0.707107, 0, 0.707107, 0, 1, 0, -0.707107, 0, 0.707107, 0, 0.296026, 0) 69 + [node name="NavigationRegion3D" type="NavigationRegion3D" parent="map" unique_id=1373761826] 70 + transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.018477738, -6) 71 + navigation_mesh = SubResource("NavigationMesh_jyhfs") 72 + 73 + [node name="floor" type="CSGBox3D" parent="map/NavigationRegion3D" unique_id=537547836] 74 + use_collision = true 75 + size = Vector3(9, 0.001, 21) 76 + material = SubResource("StandardMaterial3D_tbgi4") 87 77 88 - [node name="camera_rig" parent="." instance=ExtResource("4_uoky2")] 78 + [node name="player" parent="map/NavigationRegion3D/floor" unique_id=145475950 instance=ExtResource("3_6yui6")] 79 + transform = Transform3D(0.707107, 0, 0.707107, 0, 1, 0, -0.707107, 0, 0.707107, 2, 0.31450373, 2) 80 + 81 + [node name="camera_rig" parent="." unique_id=1704094373 instance=ExtResource("4_uoky2")] 82 + transform = Transform3D(-1, -8.74228e-08, -4.26813e-15, 6.18172e-08, -0.707107, 0.707107, -6.18172e-08, 0.707107, 0.707107, 0, 4.9, 3.3)
+29 -21
scenes/player.tscn
··· 1 - [gd_scene load_steps=14 format=4 uid="uid://bjid4s7n2tvap"] 1 + [gd_scene format=4 uid="uid://bjid4s7n2tvap"] 2 2 3 - [ext_resource type="Script" path="res://scripts/player.gd" id="1_j6sfb"] 3 + [ext_resource type="Script" uid="uid://bwxy8r6h2gqer" path="res://scripts/player.gd" id="1_j6sfb"] 4 + [ext_resource type="Script" uid="uid://bvui7x51gd2eq" path="res://scenes/camera_ray_tracing.gd" id="2_g2els"] 4 5 5 6 [sub_resource type="CylinderShape3D" id="CylinderShape3D_sn6x8"] 6 7 ··· 3886 3887 3887 3888 [sub_resource type="AnimationLibrary" id="AnimationLibrary_0ixyq"] 3888 3889 _data = { 3889 - "aim_idle": SubResource("Animation_ggxhp"), 3890 - "aim_walk": SubResource("Animation_0lceh"), 3891 - "idle": SubResource("Animation_r0jyk"), 3892 - "run": SubResource("Animation_r2g0b"), 3893 - "walk": SubResource("Animation_4d0g1") 3890 + &"aim_idle": SubResource("Animation_ggxhp"), 3891 + &"aim_walk": SubResource("Animation_0lceh"), 3892 + &"idle": SubResource("Animation_r0jyk"), 3893 + &"run": SubResource("Animation_r2g0b"), 3894 + &"walk": SubResource("Animation_4d0g1") 3894 3895 } 3895 3896 3896 - [node name="player" type="CharacterBody3D"] 3897 + [node name="player" type="CharacterBody3D" unique_id=724113694] 3897 3898 script = ExtResource("1_j6sfb") 3898 3899 3899 - [node name="CollisionShape3D" type="CollisionShape3D" parent="."] 3900 + [node name="CollisionShape3D" type="CollisionShape3D" parent="." unique_id=1264818817] 3900 3901 transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0) 3901 3902 shape = SubResource("CylinderShape3D_sn6x8") 3902 3903 3903 - [node name="visuals" type="Node3D" parent="."] 3904 + [node name="visuals" type="Node3D" parent="." unique_id=1828959252] 3904 3905 3905 - [node name="player" type="Node3D" parent="visuals"] 3906 + [node name="player" type="Node3D" parent="visuals" unique_id=1405309605] 3906 3907 transform = Transform3D(-1, 0, 8.74228e-08, 0, 1, 0, -8.74228e-08, 0, -1, 0, 0, 0) 3907 3908 3908 - [node name="Armature" type="Node3D" parent="visuals/player"] 3909 + [node name="Armature" type="Node3D" parent="visuals/player" unique_id=1016991038] 3909 3910 transform = Transform3D(0.01, 0, 0, 0, -3.57628e-09, -0.01, 0, 0.01, -3.57628e-09, 0, 0, 0) 3910 3911 3911 - [node name="Skeleton3D" type="Skeleton3D" parent="visuals/player/Armature"] 3912 + [node name="Skeleton3D" type="Skeleton3D" parent="visuals/player/Armature" unique_id=1336651260] 3912 3913 bones/0/name = "mixamorig_Hips" 3913 3914 bones/0/parent = -1 3914 3915 bones/0/rest = Transform3D(1, -5.00981e-07, 6.47142e-09, -2.84217e-14, 0.0129163, 0.999917, -5.01023e-07, -0.999917, 0.0129163, -7.72729e-06, 1.55432, -104.275) ··· 4365 4366 bones/64/rotation = Quaternion(1.21626e-08, -0.0118692, -1.4436e-10, 0.99993) 4366 4367 bones/64/scale = Vector3(1, 1, 1) 4367 4368 4368 - [node name="Beta_Joints" type="MeshInstance3D" parent="visuals/player/Armature/Skeleton3D"] 4369 + [node name="Beta_Joints" type="MeshInstance3D" parent="visuals/player/Armature/Skeleton3D" unique_id=33290833] 4369 4370 mesh = SubResource("ArrayMesh_xyxkd") 4370 4371 skin = SubResource("Skin_bx153") 4371 4372 4372 - [node name="Beta_Surface" type="MeshInstance3D" parent="visuals/player/Armature/Skeleton3D"] 4373 + [node name="Beta_Surface" type="MeshInstance3D" parent="visuals/player/Armature/Skeleton3D" unique_id=1990613681] 4373 4374 mesh = SubResource("ArrayMesh_mjwes") 4374 4375 skin = SubResource("Skin_bx153") 4375 4376 4376 - [node name="AnimationPlayer" type="AnimationPlayer" parent="visuals/player"] 4377 - libraries = { 4378 - "": SubResource("AnimationLibrary_0ixyq") 4379 - } 4380 - autoplay = "idle" 4377 + [node name="AnimationPlayer" type="AnimationPlayer" parent="visuals/player" unique_id=1918030915] 4378 + libraries/ = SubResource("AnimationLibrary_0ixyq") 4379 + autoplay = &"idle" 4381 4380 4382 - [node name="camera_point" type="Node3D" parent="."] 4381 + [node name="camera_point" type="Node3D" parent="." unique_id=922629456] 4383 4382 transform = Transform3D(1, 0, 0, 0, 0.866025, 0.5, 0, -0.5, 0.866025, 0, 5, 5) 4383 + 4384 + [node name="NavigationAgent3D" type="NavigationAgent3D" parent="." unique_id=566507110] 4385 + path_desired_distance = 0.1 4386 + target_desired_distance = 0.1 4387 + path_max_distance = 30.21 4388 + 4389 + [node name="camera_ray_tracing" type="Camera3D" parent="." unique_id=947011554] 4390 + transform = Transform3D(1, 0, 0, 0, 0.8660254, 0.5, 0, -0.5, 0.8660254, 0, 5, 5) 4391 + script = ExtResource("2_g2els")
scripts/auto_hider.gd
+1
scripts/auto_hider.gd.uid
··· 1 + uid://cxyhj3od5gm45
scripts/camera_rig.gd
+1
scripts/camera_rig.gd.uid
··· 1 + uid://b155iplq08454
scripts/globals/game_manager.gd
+1
scripts/globals/game_manager.gd.uid
··· 1 + uid://1s3m5su5dpn8
+83 -33
scripts/player.gd
··· 13 13 14 14 @onready var camera_point: Node3D = $camera_point 15 15 16 + @onready var navigation_agent_3d: NavigationAgent3D = $NavigationAgent3D 17 + 18 + 16 19 var walking = false 17 20 var sprinting = false 18 21 ··· 28 31 animation_player.set_blend_time("walk", "run", 0.2) 29 32 animation_player.set_blend_time("run", "walk", 0.2) 30 33 34 + func moveToPoint(delta, speed): 35 + var targetPos = navigation_agent_3d.target_position 36 + var direction = global_position.direction_to(targetPos) 37 + 38 + velocity = direction * speed 39 + visuals.look_at(direction + position) 40 + 41 + move_and_slide() 42 + 31 43 func _physics_process(delta: float) -> void: 32 - 33 44 # Add the gravity. 34 45 if not is_on_floor(): 35 46 velocity += get_gravity() * delta 36 - 37 - # Handle jump. 38 - if Input.is_action_just_pressed("jump") and is_on_floor(): 39 - velocity.y = JUMP_VELOCITY 40 - 41 - # Get the input direction and handle the movement/deceleration. 42 - # As good practice, you should replace UI actions with custom gameplay actions. 43 - var input_dir := Input.get_vector("left", "right", "forward", "backward") 44 - var direction := (transform.basis * Vector3(input_dir.x, 0, input_dir.y)).normalized() 45 - if direction: 46 - var speed = WALKING_SPEED 47 - if Input.is_action_pressed("sprint"): 48 - sprinting = true 49 - speed = speed * SPRINT_MULT 50 - 51 - velocity.x = direction.x * speed 52 - velocity.z = direction.z * speed 53 47 54 - visuals.look_at(direction + position) 55 - if sprinting: 56 - sprinting = false 57 - animation_player.play("run") 58 - else: 59 - walking = true 60 - animation_player.play("walk") 48 + var speed = WALKING_SPEED 49 + if (navigation_agent_3d.is_navigation_finished()): 50 + animation_player.play("idle") 51 + return 52 + 53 + # Actual moving 54 + if (navigation_agent_3d.distance_to_target() > 10): 55 + animation_player.play("run") 56 + speed = speed * SPRINT_MULT 61 57 else: 62 - velocity.x = move_toward(velocity.x, 0, WALKING_SPEED) 63 - velocity.z = move_toward(velocity.z, 0, WALKING_SPEED) 58 + animation_player.play("walk") 59 + speed = WALKING_SPEED 60 + moveToPoint(delta, speed) 61 + 62 + 63 + ## Get the input direction and handle the movement/deceleration. 64 + ## As good practice, you should replace UI actions with custom gameplay actions. 65 + #var input_dir := Input.get_vector("left", "right", "forward", "backward") 66 + #var direction := (transform.basis * Vector3(input_dir.x, 0, input_dir.y)).normalized() 67 + #if direction: 68 + #if Input.is_action_pressed("sprint"): 69 + #sprinting = true 70 + # 71 + # 72 + #velocity.x = direction.x * speed 73 + #velocity.z = direction.z * speed 74 + # 75 + # 76 + #if sprinting: 77 + #sprinting = false 78 + # 79 + #else: 80 + #walking = true 81 + #animation_player.play("walk") 82 + #else: 83 + #velocity.x = move_toward(velocity.x, 0, WALKING_SPEED) 84 + #velocity.z = move_toward(velocity.z, 0, WALKING_SPEED) 85 + # 86 + #if walking: 87 + #walking = false 88 + #sprinting = false 89 + #animation_player.play("idle") 90 + # 91 + #sprinting = false 92 + #move_and_slide() 93 + 94 + func _input(event: InputEvent) -> void: 95 + 96 + # Move character 97 + if Input.is_action_just_pressed("leftMouse"): 98 + # Setup 99 + var camera = get_node("camera_ray_tracing") 100 + var mousePos = get_viewport().get_mouse_position() 101 + var rayLength = 100 102 + # We cast a ray from the mouse position on the screen (of the camera) 103 + var from = camera.project_ray_origin(mousePos) 104 + # to a point 100 units forward perpendicular to the camera 105 + var to = from + camera.project_ray_normal(mousePos) * rayLength 106 + # We get the state of the space which we are going to ray-query 107 + # If a ray is a query to get a coordinate, the space state is the BDD 108 + var space = get_world_3d().direct_space_state 109 + # We instantiate a ray query, load it up and fire it 110 + var rayQuery = PhysicsRayQueryParameters3D.new() 111 + rayQuery.from = from 112 + rayQuery.to = to 113 + rayQuery.collide_with_areas = true 114 + var result = space.intersect_ray(rayQuery) 64 115 65 - if walking: 66 - walking = false 67 - sprinting = false 68 - animation_player.play("idle") 116 + # We tell the navigation agent to travel to the queried position 117 + navigation_agent_3d.target_position = result.position 118 + var debug_pos = "Navigating to %s" 119 + print(debug_pos % result.position) 69 120 70 - sprinting = false 71 - move_and_slide() 121 +
+1
scripts/player.gd.uid
··· 1 + uid://bwxy8r6h2gqer