diff options
author | tpart <tpart120@proton.me> | 2024-07-03 18:02:15 +0200 |
---|---|---|
committer | tpart <tpart120@proton.me> | 2024-07-03 18:02:41 +0200 |
commit | f92ac36cc36769b5ad5692ec82e5bbb1042ad557 (patch) | |
tree | 779bb4d95ed87a9a2b2c82ff95ca0309fdfc6c9a | |
parent | bb7e2bc3967779ab43cb87465e66f5bf6dcb1c56 (diff) | |
download | hurrycurry-f92ac36cc36769b5ad5692ec82e5bbb1042ad557.tar hurrycurry-f92ac36cc36769b5ad5692ec82e5bbb1042ad557.tar.bz2 hurrycurry-f92ac36cc36769b5ad5692ec82e5bbb1042ad557.tar.zst |
Add debug info setting to show framerate in-game
-rw-r--r-- | client/game.gd | 19 | ||||
-rw-r--r-- | client/game.tscn | 9 | ||||
-rw-r--r-- | client/global.gd | 1 | ||||
-rw-r--r-- | client/menu/overlay.tscn | 1 |
4 files changed, 24 insertions, 6 deletions
diff --git a/client/game.gd b/client/game.gd index d3ad3bb5..f1d06441 100644 --- a/client/game.gd +++ b/client/game.gd @@ -17,12 +17,6 @@ class_name Game extends Node3D -@onready var camera: FollowCamera = $FollowCamera -@onready var mp: Multiplayer = $Multiplayer -@onready var map: Map = $Map -@onready var marker: Marker = $Marker -@onready var environment = $WorldEnvironment - var player_id: int = -1 var item_names: Array = [] var item_index_by_name: Dictionary = {} @@ -34,6 +28,13 @@ var tile_interact: Array = [] var marker_target = Vector3(0,0,0) var players := {} +@onready var camera: FollowCamera = $FollowCamera +@onready var mp: Multiplayer = $Multiplayer +@onready var map: Map = $Map +@onready var marker: Marker = $Marker +@onready var environment = $WorldEnvironment +@onready var debug_label = $Debug + func _ready(): if !Global.on_vulkan(): environment.environment.tonemap_exposure = 0.5 @@ -205,6 +206,12 @@ func _ready(): func _process(delta): marker.position = Global.interpolate(marker.position, marker_target, delta * 30.) + + if Global.get_setting("debug_info"): + debug_label.show() + debug_label.text = "%d FPS" % Engine.get_frames_per_second() + else: + debug_label.hide() func get_tile_collision(pos: Vector2i) -> bool: var t = map.get_tile_name(pos) diff --git a/client/game.tscn b/client/game.tscn index d71ae4be..61370569 100644 --- a/client/game.tscn +++ b/client/game.tscn @@ -48,3 +48,12 @@ visible = false [node name="Overlay" parent="." instance=ExtResource("7_7xrr6")] offset_left = -280.0 offset_bottom = 102.0 + +[node name="Debug" type="RichTextLabel" parent="."] +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +theme_override_colors/font_outline_color = Color(0, 0, 0, 1) +theme_override_constants/outline_size = 5 diff --git a/client/global.gd b/client/global.gd index 9d0a376b..50a27c89 100644 --- a/client/global.gd +++ b/client/global.gd @@ -49,6 +49,7 @@ var default_settings := { "server_data": TextSetting.new(tr("Server data directory (leave empty to auto-detect)"), "", "Enter path"), "voxel_gi": ToggleSetting.new(tr("Use VoxelGI (Blocks the game on map update but is more accurate)"), false), "sdfgi": ToggleSetting.new(tr("Use SDFGI (Doesn't block the game but produces more artifacts)"), false), + "debug_info": ToggleSetting.new(tr("Display debug info (Framerate, etc.)"), false), "grass_amount": RangeSetting.new(tr("3D grass amount per grass tile"), 16, 0, 32), "setup_complete": ToggleSetting.new(tr("Initial setup complete. (Uncheck and restart to reenter)"), false), "latch_boost": ToggleSetting.new(tr("Always extend boost to maximum duration"), true) diff --git a/client/menu/overlay.tscn b/client/menu/overlay.tscn index 9745de5d..fc9181e9 100644 --- a/client/menu/overlay.tscn +++ b/client/menu/overlay.tscn @@ -21,6 +21,7 @@ color_ramp = SubResource("Gradient_pkrjd") noise = SubResource("FastNoiseLite_k7p6k") [node name="Overlay" type="PanelContainer"] +visible = false anchors_preset = 15 anchor_right = 1.0 anchor_bottom = 1.0 |