Compare commits

...

3 Commits

Author SHA1 Message Date
Rob Kelly f60641ff7d Path-based highway roads 2024-11-13 11:29:50 -07:00
Rob Kelly 00e13638a2 Moved terrain asset sources under asset_dev 2024-11-13 10:56:54 -07:00
Rob Kelly 475c28b31e Guard rail textures & tweaks 2024-11-13 09:38:59 -07:00
16 changed files with 174 additions and 6 deletions

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,9 @@
[gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://cift6p0wn1oce"]
[ext_resource type="Texture2D" uid="uid://b8vgf8wy7h4nx" path="res://assets/textures/guard_rail/guard_rail.png" id="1_3fqse"]
[resource]
specular_mode = 1
albedo_texture = ExtResource("1_3fqse")
uv1_offset = Vector3(0, -0.125, 0)
texture_filter = 4

BIN
assets/textures/guard_rail/guard_rail.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b8vgf8wy7h4nx"
path.s3tc="res://.godot/imported/guard_rail.png-c5478404987848bc11f90ea8062336a0.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://assets/textures/guard_rail/guard_rail.png"
dest_files=["res://.godot/imported/guard_rail.png-c5478404987848bc11f90ea8062336a0.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

BIN
assets/textures/highway/highway_road.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cqlp0tjmadi75"
path="res://.godot/imported/highway_road.png-7a18eb79d4021efe772ce8923729a767.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/textures/highway/highway_road.png"
dest_files=["res://.godot/imported/highway_road.png-7a18eb79d4021efe772ce8923729a767.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

BIN
assets/textures/highway/highway_road_grass.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dloe67udf7fpd"
path="res://.godot/imported/highway_road_grass.png-d6a0b9289b0770924fee63b6f2d00589.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/textures/highway/highway_road_grass.png"
dest_files=["res://.godot/imported/highway_road_grass.png-d6a0b9289b0770924fee63b6f2d00589.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=40 format=3 uid="uid://bm2o3mex10v11"] [gd_scene load_steps=42 format=3 uid="uid://bm2o3mex10v11"]
[ext_resource type="Terrain3DStorage" uid="uid://bu1gewgsgc5hm" path="res://levels/debug_level/terrain_3d_storage.res" id="1_nlsu2"] [ext_resource type="Terrain3DStorage" uid="uid://bu1gewgsgc5hm" path="res://levels/debug_level/terrain_3d_storage.res" id="1_nlsu2"]
[ext_resource type="Texture2D" path="res://assets/textures/grass_fairway/grass_fairway_albedo.dds" id="2_e4m27"] [ext_resource type="Texture2D" path="res://assets/textures/grass_fairway/grass_fairway_albedo.dds" id="2_e4m27"]
@ -16,6 +16,7 @@
[ext_resource type="PackedScene" uid="uid://c7l58wuuahn7w" path="res://src/props/flag/flag.tscn" id="13_6jtao"] [ext_resource type="PackedScene" uid="uid://c7l58wuuahn7w" path="res://src/props/flag/flag.tscn" id="13_6jtao"]
[ext_resource type="Texture2D" uid="uid://dj60e8ri2fco" path="res://assets/models/scenery/city/concrete_building_1/concrete_building_1.png" id="14_y7s2h"] [ext_resource type="Texture2D" uid="uid://dj60e8ri2fco" path="res://assets/models/scenery/city/concrete_building_1/concrete_building_1.png" id="14_y7s2h"]
[ext_resource type="PackedScene" uid="uid://nqar1qcun8ax" path="res://src/props/scenery/highway/guard_rail.tscn" id="16_xtxyj"] [ext_resource type="PackedScene" uid="uid://nqar1qcun8ax" path="res://src/props/scenery/highway/guard_rail.tscn" id="16_xtxyj"]
[ext_resource type="PackedScene" uid="uid://d0tcr6uijpym5" path="res://src/props/scenery/highway/highway_road.tscn" id="17_amems"]
[sub_resource type="FastNoiseLite" id="FastNoiseLite_rpgb7"] [sub_resource type="FastNoiseLite" id="FastNoiseLite_rpgb7"]
noise_type = 0 noise_type = 0
@ -171,6 +172,13 @@ _data = {
} }
point_count = 3 point_count = 3
[sub_resource type="Curve3D" id="Curve3D_u4eo7"]
_data = {
"points": PackedVector3Array(10.8695, 0, -3.68539, -10.8695, 0, 3.68539, -14.925, 0, 18.9744, 2.975, 0, -11.175, -2.975, 0, 11.175, -30.3645, 0, 45.9536, -12.075, 0, -20.125, 12.075, 0, 20.125, -21.5332, 0, 96.8633, 0.125, 0, 20.4, -0.125, 0, -20.4, 35.8701, 0, 94.7854, 0.9, 0, 27.9, -0.9, 0, -27.9, 35.9986, 0, 26.4862, 11, 0, -4, 0, 0, 0, -15, 0, 19),
"tilts": PackedFloat32Array(0, 0, 0, 0, 0, 0)
}
point_count = 6
[node name="TestLevel" type="Node3D"] [node name="TestLevel" type="Node3D"]
[node name="Terrain3D" type="Terrain3D" parent="."] [node name="Terrain3D" type="Terrain3D" parent="."]
@ -254,3 +262,8 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 212.717, 4, 294.073)
[node name="GuardRail" parent="." instance=ExtResource("16_xtxyj")] [node name="GuardRail" parent="." instance=ExtResource("16_xtxyj")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 211.416, 4, 288.708) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 211.416, 4, 288.708)
curve = SubResource("Curve3D_3gyu3") curve = SubResource("Curve3D_3gyu3")
end_cap = true
[node name="HighwayRoad" parent="." instance=ExtResource("17_amems")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 124.25, 0, 267.5)
curve = SubResource("Curve3D_u4eo7")

BIN
levels/debug_level/terrain_3d_storage.res (Stored with Git LFS)

Binary file not shown.

View File

@ -39,6 +39,8 @@ const CAMERA_SNAP_TIME := 0.3
@export var debug_ball_impact := false @export var debug_ball_impact := false
## When enabled, ignore curve meter and hit a perfect shot every time. ## When enabled, ignore curve meter and hit a perfect shot every time.
@export var perfect_aim := false @export var perfect_aim := false
## Keep projection visible
@export var keep_projection := false
var base_speed: float = ProjectSettings.get_setting("game/config/controls/camera/free_camera_speed") var base_speed: float = ProjectSettings.get_setting("game/config/controls/camera/free_camera_speed")
@ -214,7 +216,10 @@ func insert_free_cam() -> void:
func return_free_cam() -> void: func return_free_cam() -> void:
# TODO alter shot aim based on free camera selection # TODO alter shot aim based on free camera selection
arrow_animation.play("show") arrow_animation.play("show")
#shot_projection.hide()
if not keep_projection:
shot_projection.hide()
hud_state.travel("visible") hud_state.travel("visible")
_free_camera.queue_free() _free_camera.queue_free()
_free_camera = null _free_camera = null

View File

@ -1,6 +1,7 @@
[gd_scene load_steps=6 format=3 uid="uid://nqar1qcun8ax"] [gd_scene load_steps=7 format=3 uid="uid://nqar1qcun8ax"]
[ext_resource type="Script" path="res://src/props/scenery/highway/guard_rail.gd" id="1_imntf"] [ext_resource type="Script" path="res://src/props/scenery/highway/guard_rail.gd" id="1_imntf"]
[ext_resource type="Material" uid="uid://cift6p0wn1oce" path="res://assets/materials/guard_rail.tres" id="2_1s4wy"]
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_fo7j3"] [sub_resource type="CompressedTexture2D" id="CompressedTexture2D_fo7j3"]
load_path = "res://.godot/imported/guard_rail_post.png-4447ff881a5916e5281ed251b7beecd0.ctex" load_path = "res://.godot/imported/guard_rail_post.png-4447ff881a5916e5281ed251b7beecd0.ctex"
@ -26,7 +27,6 @@ mesh = SubResource("PlaneMesh_ko4yv")
[node name="GuardRail" type="Path3D"] [node name="GuardRail" type="Path3D"]
script = ExtResource("1_imntf") script = ExtResource("1_imntf")
end_cap = true
[node name="UpperRail" type="CSGPolygon3D" parent="."] [node name="UpperRail" type="CSGPolygon3D" parent="."]
use_collision = true use_collision = true
@ -41,6 +41,7 @@ path_local = true
path_continuous_u = true path_continuous_u = true
path_u_distance = 1.0 path_u_distance = 1.0
path_joined = false path_joined = false
material = ExtResource("2_1s4wy")
[node name="LowerRail" type="CSGPolygon3D" parent="."] [node name="LowerRail" type="CSGPolygon3D" parent="."]
use_collision = true use_collision = true
@ -55,6 +56,7 @@ path_local = true
path_continuous_u = true path_continuous_u = true
path_u_distance = 1.0 path_u_distance = 1.0
path_joined = false path_joined = false
material = ExtResource("2_1s4wy")
[node name="PostMultiMesh" type="MultiMeshInstance3D" parent="."] [node name="PostMultiMesh" type="MultiMeshInstance3D" parent="."]
multimesh = SubResource("MultiMesh_o7ch8") multimesh = SubResource("MultiMesh_o7ch8")

View File

@ -0,0 +1,27 @@
[gd_scene load_steps=3 format=3 uid="uid://d0tcr6uijpym5"]
[ext_resource type="Texture2D" uid="uid://dloe67udf7fpd" path="res://assets/textures/highway/highway_road_grass.png" id="1_f3xui"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_nkovu"]
transparency = 1
albedo_texture = ExtResource("1_f3xui")
uv1_scale = Vector3(0.054, 2.605, 1)
texture_filter = 4
grow_amount = 0.941
[node name="HighwayRoad" type="Path3D"]
[node name="CSGPolygon3D" type="CSGPolygon3D" parent="."]
use_collision = true
polygon = PackedVector2Array(-10, 0, -8, 0.1, -6, 0.1, -4, 0.1, -2, 0.1, 0, 0.1, 2, 0.1, 4, 0.1, 6, 0.1, 8, 0.1, 10, 0, 10, -0.5, -10, -0.5)
mode = 2
path_node = NodePath("..")
path_interval_type = 0
path_interval = 1.0
path_simplify_angle = 0.0
path_rotation = 2
path_local = true
path_continuous_u = true
path_u_distance = 1.0
path_joined = false
material = SubResource("StandardMaterial3D_nkovu")