diff --git a/assets/materials/basic_ball_material.tres b/assets/materials/basic_ball_material.tres new file mode 100644 index 0000000..2e49b2d --- /dev/null +++ b/assets/materials/basic_ball_material.tres @@ -0,0 +1,16 @@ +[gd_resource type="StandardMaterial3D" load_steps=3 format=3 uid="uid://dpsmjlhjpc7vs"] + +[ext_resource type="Texture2D" uid="uid://ckhiq6rfjv63u" path="res://assets/textures/gfolfball/gfolfball.png" id="1_vmujt"] +[ext_resource type="Texture2D" uid="uid://btntjs7mbdigu" path="res://assets/textures/gfolfball/gfolfball_normal.png" id="2_i1w1d"] + +[resource] +albedo_texture = ExtResource("1_vmujt") +albedo_texture_force_srgb = true +metallic = 0.27 +roughness = 0.67 +normal_enabled = true +normal_scale = 0.2 +normal_texture = ExtResource("2_i1w1d") +clearcoat_roughness = 0.0 +uv1_scale = Vector3(3, 1.5, 3) +texture_filter = 4 diff --git a/src/equipment/balls/physics_ball/physics_ball.tscn b/src/equipment/balls/physics_ball/physics_ball.tscn index d217347..e0a1b5d 100644 --- a/src/equipment/balls/physics_ball/physics_ball.tscn +++ b/src/equipment/balls/physics_ball/physics_ball.tscn @@ -1,9 +1,8 @@ -[gd_scene load_steps=24 format=3 uid="uid://dfttci386ohip"] +[gd_scene load_steps=22 format=3 uid="uid://dfttci386ohip"] [ext_resource type="Script" path="res://src/equipment/balls/physics_ball/game_ball.gd" id="1_iwh2u"] [ext_resource type="PhysicsMaterial" uid="uid://3bih72l068ic" path="res://src/equipment/balls/physics_ball/normal_physics.tres" id="1_l23pw"] -[ext_resource type="Texture2D" uid="uid://ckhiq6rfjv63u" path="res://assets/textures/gfolfball/gfolfball.png" id="1_y3q5j"] -[ext_resource type="Texture2D" uid="uid://btntjs7mbdigu" path="res://assets/textures/gfolfball/gfolfball_normal.png" id="2_mx7l6"] +[ext_resource type="Material" uid="uid://dpsmjlhjpc7vs" path="res://assets/materials/basic_ball_material.tres" id="3_rc7m1"] [ext_resource type="Script" path="res://src/equipment/balls/physics_ball/ball_sfx.gd" id="5_bhshl"] [ext_resource type="AudioStream" uid="uid://cayyndwmxua5x" path="res://assets/sound/sfx/ball/grass2.wav" id="7_l22cv"] [ext_resource type="AudioStream" uid="uid://orisjdcj3mes" path="res://assets/sound/sfx/ball/concrete3.wav" id="7_t2ak2"] @@ -14,20 +13,8 @@ [ext_resource type="Script" path="res://src/equipment/balls/physics_ball/ball_particle_effects.gd" id="12_7krl6"] [ext_resource type="Texture2D" uid="uid://c47bkx508biqr" path="res://assets/sprites/particles/plasma.png" id="12_guipt"] -[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_s3hrj"] -albedo_texture = ExtResource("1_y3q5j") -albedo_texture_force_srgb = true -metallic = 0.27 -roughness = 0.67 -normal_enabled = true -normal_scale = 0.2 -normal_texture = ExtResource("2_mx7l6") -clearcoat_roughness = 0.0 -uv1_scale = Vector3(3, 1.5, 3) -texture_filter = 4 - [sub_resource type="SphereMesh" id="SphereMesh_y0d13"] -material = SubResource("StandardMaterial3D_s3hrj") +material = ExtResource("3_rc7m1") radius = 0.05 height = 0.1 radial_segments = 6 diff --git a/src/ui/menus/title_screen/title_crawl.tscn b/src/ui/menus/title_screen/title_crawl.tscn index 5d2e6a3..6e12dec 100644 --- a/src/ui/menus/title_screen/title_crawl.tscn +++ b/src/ui/menus/title_screen/title_crawl.tscn @@ -126,6 +126,35 @@ tracks/9/keys = { "values": [0.0] } +[sub_resource type="Animation" id="Animation_hkogt"] +resource_name = "fade_out" +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath(".:modulate") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 1), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [Color(1, 1, 1, 1), Color(1, 1, 1, 0)] +} +tracks/1/type = "method" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath(".") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(1), +"transitions": PackedFloat32Array(1), +"values": [{ +"args": [], +"method": &"queue_free" +}] +} + [sub_resource type="Animation" id="Animation_hrox7"] resource_name = "play" length = 55.0 @@ -264,35 +293,6 @@ tracks/10/keys = { }] } -[sub_resource type="Animation" id="Animation_hkogt"] -resource_name = "fade_out" -tracks/0/type = "value" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath(".:modulate") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"times": PackedFloat32Array(0, 1), -"transitions": PackedFloat32Array(1, 1), -"update": 0, -"values": [Color(1, 1, 1, 1), Color(1, 1, 1, 0)] -} -tracks/1/type = "method" -tracks/1/imported = false -tracks/1/enabled = true -tracks/1/path = NodePath(".") -tracks/1/interp = 1 -tracks/1/loop_wrap = true -tracks/1/keys = { -"times": PackedFloat32Array(1), -"transitions": PackedFloat32Array(1), -"values": [{ -"args": [], -"method": &"queue_free" -}] -} - [sub_resource type="AnimationLibrary" id="AnimationLibrary_1o035"] _data = { "RESET": SubResource("Animation_dmc3y"), diff --git a/src/ui/menus/title_screen/title_screen.tscn b/src/ui/menus/title_screen/title_screen.tscn index 736a265..507bed3 100644 --- a/src/ui/menus/title_screen/title_screen.tscn +++ b/src/ui/menus/title_screen/title_screen.tscn @@ -1,13 +1,205 @@ -[gd_scene load_steps=65 format=3 uid="uid://7fsgocmdas7i"] +[gd_scene load_steps=87 format=3 uid="uid://7fsgocmdas7i"] [ext_resource type="Script" path="res://src/ui/menus/title_screen/title_screen.gd" id="1_2qtlb"] [ext_resource type="Texture2D" uid="uid://880x5n8j3b5l" path="res://assets/logo/title.png" id="1_pm82i"] [ext_resource type="PackedScene" uid="uid://d3eaqw2rdurct" path="res://src/ui/menus/settings_menu/settings_menu.tscn" id="2_g5q2v"] [ext_resource type="Texture2D" uid="uid://clesl8lljs6of" path="res://assets/logo/subtitle.png" id="2_y0ulk"] [ext_resource type="PackedScene" uid="uid://ccx2u5oli6men" path="res://src/ui/menus/title_screen/deathmatch_setup/deathmatch_setup.tscn" id="3_bo4ty"] +[ext_resource type="Material" uid="uid://dpsmjlhjpc7vs" path="res://assets/materials/basic_ball_material.tres" id="5_5q83g"] [ext_resource type="AudioStream" uid="uid://8uynlpios7u1" path="res://assets/sound/sfx/ui/ecofuture2.wav" id="5_fg1a4"] [ext_resource type="PackedScene" uid="uid://cqu315hviu72n" path="res://src/ui/menus/title_screen/title_crawl.tscn" id="7_r26eu"] +[sub_resource type="Environment" id="Environment_ardux"] +background_mode = 1 +ambient_light_source = 2 +ambient_light_color = Color(0.0156863, 0.0156863, 0.0156863, 1) +tonemap_mode = 2 +ssil_enabled = true +ssil_intensity = 0.4 +glow_enabled = true +glow_intensity = 2.0 + +[sub_resource type="Animation" id="Animation_bby3k"] +resource_name = "rotate" +length = 180.0 +loop_mode = 1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath(".:rotation") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 180), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [Vector3(-0.785398, 0, 0), Vector3(-0.785398, 6.28319, 0)] +} + +[sub_resource type="Animation" id="Animation_vci0b"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath(".:rotation") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector3(-0.785398, -3.14159, 0)] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_g0lq7"] +_data = { +"RESET": SubResource("Animation_vci0b"), +"rotate": SubResource("Animation_bby3k") +} + +[sub_resource type="SphereMesh" id="SphereMesh_korig"] +material = ExtResource("5_5q83g") +radial_segments = 6 +rings = 4 + +[sub_resource type="Curve" id="Curve_mfs4k"] +_data = [Vector2(0, 0), 0.0, 0.0, 0, 0] +point_count = 1 + +[sub_resource type="Curve" id="Curve_4a340"] +min_value = -2.0 +max_value = 2.0 +_data = [Vector2(0, 1), 0.0, 0.0, 0, 0] +point_count = 1 + +[sub_resource type="Curve" id="Curve_jugu4"] +_data = [Vector2(0, 0), 0.0, 0.0, 0, 0] +point_count = 1 + +[sub_resource type="CurveXYZTexture" id="CurveXYZTexture_6ny4o"] +curve_x = SubResource("Curve_mfs4k") +curve_y = SubResource("Curve_4a340") +curve_z = SubResource("Curve_jugu4") + +[sub_resource type="Curve" id="Curve_dlr4d"] +_data = [Vector2(0, 0.001), 0.0, 0.0, 0, 0, Vector2(0.0315789, 1), 0.0, 0.0, 0, 0, Vector2(0.355789, 1), 0.0, 0.0, 0, 0, Vector2(0.633684, 0), 0.0, 0.0, 0, 0] +point_count = 4 + +[sub_resource type="CurveTexture" id="CurveTexture_ynn40"] +curve = SubResource("Curve_dlr4d") + +[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_v2b30"] +emission_shape = 6 +emission_ring_axis = Vector3(0, 1, 0) +emission_ring_height = 0.1 +emission_ring_radius = 4.0 +emission_ring_inner_radius = 4.0 +spread = 0.0 +orbit_velocity_min = 0.25 +orbit_velocity_max = 0.25 +orbit_velocity_curve = SubResource("CurveXYZTexture_6ny4o") +radial_velocity_min = -1.00002 +radial_velocity_max = -1.00002 +gravity = Vector3(0, 0, 0) +scale_curve = SubResource("CurveTexture_ynn40") + +[sub_resource type="Curve" id="Curve_o7r8j"] +_data = [Vector2(0, 0), 0.0, 33.9978, 0, 0, Vector2(0.0335306, 0.824067), 2.50004, 2.50004, 0, 0, Vector2(0.315582, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0] +point_count = 4 + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_f43mj"] +transparency = 1 +cull_mode = 2 +shading_mode = 0 +vertex_color_use_as_albedo = true +albedo_color = Color(1, 1, 1, 0.156863) +texture_filter = 0 +use_particle_trails = true + +[sub_resource type="RibbonTrailMesh" id="RibbonTrailMesh_brdwn"] +material = SubResource("StandardMaterial3D_f43mj") +shape = 0 +size = 0.1 +sections = 16 +section_length = 0.1 +section_segments = 8 +curve = SubResource("Curve_o7r8j") + +[sub_resource type="Animation" id="Animation_baak2"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("CameraPivot:rotation") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector3(0, 0, 0)] +} + +[sub_resource type="Animation" id="Animation_0w1b5"] +resource_name = "idle" +length = 120.0 +loop_mode = 1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("CameraPivot:rotation") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 120), +"transitions": PackedFloat32Array(1, 1), +"update": 0, +"values": [Vector3(0, 0, 0), Vector3(0, 6.28319, 0)] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_om72j"] +_data = { +"RESET": SubResource("Animation_baak2"), +"idle": SubResource("Animation_0w1b5") +} + +[sub_resource type="Animation" id="Animation_a1sa7"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath(".:color") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Color(0, 0, 0, 1)] +} + +[sub_resource type="Animation" id="Animation_f0ohc"] +resource_name = "fade_in" +length = 8.0 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath(".:color") +tracks/0/interp = 1 +tracks/0/loop_wrap = false +tracks/0/keys = { +"times": PackedFloat32Array(0, 8), +"transitions": PackedFloat32Array(0.618, 1), +"update": 0, +"values": [Color(0, 0, 0, 1), Color(0, 0, 0, 0.5)] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_kjacl"] +_data = { +"RESET": SubResource("Animation_a1sa7"), +"fade_in": SubResource("Animation_f0ohc") +} + [sub_resource type="Animation" id="Animation_fths4"] length = 0.001 @@ -1181,6 +1373,67 @@ title_crawl_scene = ExtResource("7_r26eu") settings_scene = ExtResource("2_g5q2v") local_deathmatch_setup_scene = ExtResource("3_bo4ty") +[node name="SceneRoot" type="Node3D" parent="."] + +[node name="WorldEnvironment" type="WorldEnvironment" parent="SceneRoot"] +environment = SubResource("Environment_ardux") + +[node name="LightRotationRoot" type="Node3D" parent="SceneRoot"] +transform = Transform3D(-0.5, 0, 0.866025, 0, 1, 0, -0.866025, 0, -0.5, 0, 0, 0) + +[node name="DirectionalLight3D" type="DirectionalLight3D" parent="SceneRoot/LightRotationRoot"] +transform = Transform3D(-1, -6.18172e-08, 6.18172e-08, 0, 0.707107, 0.707107, -8.74228e-08, 0.707107, -0.707107, 0, 0, 0) +light_color = Color(0.95, 1, 0.989167, 1) +light_energy = 1.2 + +[node name="AnimationPlayer" type="AnimationPlayer" parent="SceneRoot/LightRotationRoot/DirectionalLight3D"] +libraries = { +"": SubResource("AnimationLibrary_g0lq7") +} +autoplay = "rotate" + +[node name="Ball" type="MeshInstance3D" parent="SceneRoot"] +mesh = SubResource("SphereMesh_korig") + +[node name="GPUParticles3D" type="GPUParticles3D" parent="SceneRoot/Ball"] +amount = 256 +lifetime = 6.0 +speed_scale = 0.1 +fixed_fps = 60 +trail_enabled = true +trail_lifetime = 4.0 +process_material = SubResource("ParticleProcessMaterial_v2b30") +draw_pass_1 = SubResource("RibbonTrailMesh_brdwn") + +[node name="CameraPivot" type="Node3D" parent="SceneRoot"] + +[node name="Pitch" type="Node3D" parent="SceneRoot/CameraPivot"] +transform = Transform3D(1, 0, 0, 0, 0.866025, 0.5, 0, -0.5, 0.866025, 0, 0, 0) + +[node name="Camera3D" type="Camera3D" parent="SceneRoot/CameraPivot/Pitch"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1) + +[node name="AnimationPlayer" type="AnimationPlayer" parent="SceneRoot"] +libraries = { +"": SubResource("AnimationLibrary_om72j") +} +autoplay = "idle" + +[node name="Shade" type="ColorRect" parent="."] +visible = false +layout_mode = 2 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +color = Color(0, 0, 0, 1) + +[node name="AnimationPlayer" type="AnimationPlayer" parent="Shade"] +libraries = { +"": SubResource("AnimationLibrary_kjacl") +} +autoplay = "fade_in" + [node name="Title" type="Control" parent="."] clip_contents = true layout_mode = 1 @@ -1237,7 +1490,7 @@ grow_horizontal = 2 grow_vertical = 2 [node name="PressStart" type="Label" parent="Menu"] -modulate = Color(1, 1, 1, 0.999998) +modulate = Color(1, 1, 1, 0.0413553) layout_mode = 1 anchors_preset = 8 anchor_left = 0.5 diff --git a/src/ui/menus/title_screen/title_world.tres b/src/ui/menus/title_screen/title_world.tres new file mode 100644 index 0000000..6c3b5ae --- /dev/null +++ b/src/ui/menus/title_screen/title_world.tres @@ -0,0 +1,15 @@ +[gd_resource type="World3D" load_steps=2 format=3 uid="uid://ctfbo13yjwt6n"] + +[sub_resource type="Environment" id="Environment_4jfqc"] +background_mode = 1 +ambient_light_source = 2 +ambient_light_color = Color(1, 1, 1, 1) +tonemap_mode = 3 +ssr_enabled = true +ssao_enabled = true +ssil_enabled = true +glow_enabled = true +glow_strength = 1.4 + +[resource] +environment = SubResource("Environment_4jfqc")