Adjustable debug fly speed (use mouse wheel)

This commit is contained in:
Rob Kelly 2025-10-02 18:51:36 -06:00
parent 2c065a2663
commit 0714bc8122
6 changed files with 38 additions and 7 deletions

View File

@ -132,6 +132,16 @@ debug_4={
"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":4194335,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
]
}
debug_speed_up={
"deadzone": 0.2,
"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":8,"position":Vector2(160, 1),"global_position":Vector2(169, 47),"factor":1.0,"button_index":4,"canceled":false,"pressed":true,"double_click":false,"script":null)
]
}
debug_speed_down={
"deadzone": 0.2,
"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":16,"position":Vector2(145, 7),"global_position":Vector2(154, 53),"factor":1.0,"button_index":5,"canceled":false,"pressed":true,"double_click":false,"script":null)
]
}
[layer_names]

View File

@ -2,17 +2,19 @@ class_name DebugMovement extends Node
## Movement controller for debug flight
const ACCELERATION := 10.0
const SPEED_SCALE_FACTOR := 1.2
@export var enabled := false
@export var normal_speed := 160.0
@export var fast_speed := 320.0
@export var speed_scale := 1.0
@onready var character: CharacterBody3D = get_parent()
func get_speed() -> float:
return fast_speed if Input.is_action_pressed("sprint") else normal_speed
return speed_scale * (fast_speed if Input.is_action_pressed("sprint") else normal_speed)
func _physics_process(delta: float) -> void:
@ -30,3 +32,11 @@ func _physics_process(delta: float) -> void:
character.velocity = character.velocity.lerp(motion, weight)
character.move_and_slide()
func _unhandled_input(event: InputEvent) -> void:
if enabled:
if event.is_action_pressed("debug_speed_up"):
speed_scale *= SPEED_SCALE_FACTOR
elif event.is_action_pressed("debug_speed_down"):
speed_scale /= SPEED_SCALE_FACTOR

View File

@ -17,6 +17,9 @@ metadata/_custom_type_script = "uid://drk82eeqk2mjs"
[node name="InnerPyramid" type="CSGCylinder3D" parent="."]
transform = Transform3D(0.70710677, 0, 0.70710677, 0, 1, 0, -0.70710677, 0, 0.70710677, 50000, 30000, 50000)
visibility_range_end = 100000.0
visibility_range_end_margin = 64.0
visibility_range_fade_mode = 1
use_collision = true
radius = 60000.0
height = 60000.0

View File

@ -6,7 +6,8 @@ const GRID_SIZE := Vector2(100000, 100000)
@export var arcology_feature_scene: PackedScene
@export var empty_feature_scene: PackedScene
@export var arcology_probability := 0.2
@export var sample_scale := 2.0
@export var arcology_probability := 0.1
var features: Dictionary[Vector2, GenerationFeature] = {}
@ -30,7 +31,7 @@ func probe_grid(grid_pos: Vector2) -> void:
# Generate if needed
if grid_pos not in features:
var feature: GenerationFeature
var sample := absf(WorldGenManager.noise.get_noise_2dv(grid_pos))
var sample := absf(WorldGenManager.noise.get_noise_2dv(sample_scale * grid_pos))
print_debug("Sampled ", sample, " at ", grid_pos)
if sample < arcology_probability:
print_debug("Generating arcology at ", grid_pos)

View File

@ -3,7 +3,9 @@
[ext_resource type="Script" uid="uid://7frynyj4vspc" path="res://src/world/generation/worldgen_manager/worldgen_manager.gd" id="1_7xvag"]
[sub_resource type="FastNoiseLite" id="FastNoiseLite_7xvag"]
noise_type = 0
frequency = 0.1
offset = Vector3(1024, 1024, 1024)
[node name="WorldGenManager" type="Node"]
script = ExtResource("1_7xvag")

View File

@ -5,7 +5,7 @@
[ext_resource type="PackedScene" uid="uid://cop4mkrv70yhc" path="res://src/world/generation/generated_world.tscn" id="3_jte2u"]
[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_6fy3g"]
sky_horizon_color = Color(0.66224277, 0.6717428, 0.6867428, 1)
sky_curve = 0.39585283
ground_bottom_color = Color(0.78, 0.78, 0.78, 1)
ground_horizon_color = Color(0.66224277, 0.6717428, 0.6867428, 1)
ground_curve = 0.012311422
@ -22,14 +22,19 @@ ssao_enabled = true
ssil_enabled = true
sdfgi_min_cell_size = 5.734082
glow_enabled = true
fog_enabled = true
fog_mode = 1
fog_density = 0.0447
fog_sky_affect = 0.045
fog_light_color = Color(0.85, 0.90749997, 1, 1)
fog_density = 1.0
fog_sky_affect = 0.129
fog_depth_curve = 0.5
fog_depth_begin = 0.0
fog_depth_end = 10000.0
volumetric_fog_enabled = true
volumetric_fog_density = 0.002
volumetric_fog_albedo = Color(0.7, 0.83000004, 1, 1)
volumetric_fog_length = 1024.0
volumetric_fog_sky_affect = 0.3
volumetric_fog_sky_affect = 0.0
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_jte2u"]
albedo_color = Color(0.16, 0.16, 0.16, 1)