generated from krampus/template-godot4
Camera controls don't use delta factor (prevents jitter at low framerates)
This commit is contained in:
parent
0fc25d753f
commit
7d9c6997bc
|
@ -17,7 +17,6 @@ run/main_scene="res://src/game/game.tscn"
|
||||||
config/use_custom_user_dir=true
|
config/use_custom_user_dir=true
|
||||||
config/project_settings_override="user://settings.godot"
|
config/project_settings_override="user://settings.godot"
|
||||||
config/features=PackedStringArray("4.3", "Forward Plus")
|
config/features=PackedStringArray("4.3", "Forward Plus")
|
||||||
run/max_fps=60
|
|
||||||
|
|
||||||
[autoload]
|
[autoload]
|
||||||
|
|
||||||
|
|
|
@ -534,7 +534,7 @@ func _on_game_ball_changed(ball: GameBall) -> void:
|
||||||
player_offset.position.z = z_offset
|
player_offset.position.z = z_offset
|
||||||
|
|
||||||
|
|
||||||
func _process(delta: float) -> void:
|
func _process(_delta: float) -> void:
|
||||||
# REMOVEME
|
# REMOVEME
|
||||||
if Input.is_action_just_pressed("ui_menu"):
|
if Input.is_action_just_pressed("ui_menu"):
|
||||||
print("Debugging...")
|
print("Debugging...")
|
||||||
|
@ -544,19 +544,19 @@ func _process(delta: float) -> void:
|
||||||
## Visual updates
|
## Visual updates
|
||||||
# Rotation
|
# Rotation
|
||||||
direction.rotation.y = lerp_angle(
|
direction.rotation.y = lerp_angle(
|
||||||
direction.rotation.y, _target_rotation.y, delta * Game.settings.x_acceleration
|
direction.rotation.y, _target_rotation.y, Game.settings.x_acceleration / 60.0
|
||||||
)
|
)
|
||||||
pitch.rotation.x = lerp_angle(
|
pitch.rotation.x = lerp_angle(
|
||||||
pitch.rotation.x, _target_rotation.x, delta * Game.settings.y_acceleration
|
pitch.rotation.x, _target_rotation.x, Game.settings.y_acceleration / 60.0
|
||||||
)
|
)
|
||||||
|
|
||||||
# Arrow lags behind camera control
|
# Arrow lags behind camera control
|
||||||
arrow_pivot.rotation.y = lerp_angle(
|
arrow_pivot.rotation.y = lerp_angle(
|
||||||
arrow_pivot.rotation.y, _target_rotation.y, delta * ARROW_ACCELERATION
|
arrow_pivot.rotation.y, _target_rotation.y, ARROW_ACCELERATION / 60.0
|
||||||
)
|
)
|
||||||
# Player lags further behind
|
# Player lags further behind
|
||||||
player_pivot.rotation.y = lerp_angle(
|
player_pivot.rotation.y = lerp_angle(
|
||||||
player_pivot.rotation.y, _target_rotation.y, delta * PLAYER_ACCELERATION
|
player_pivot.rotation.y, _target_rotation.y, PLAYER_ACCELERATION / 60.0
|
||||||
)
|
)
|
||||||
|
|
||||||
## Input Handling
|
## Input Handling
|
||||||
|
|
|
@ -31,10 +31,10 @@ func camera_motion(motion: Vector2) -> void:
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
func _physics_process(delta: float) -> void:
|
func _physics_process(_delta: float) -> void:
|
||||||
# Rotation
|
# Rotation
|
||||||
rotation.y = lerp_angle(rotation.y, _target.y, delta * Game.settings.x_acceleration)
|
rotation.y = lerp_angle(rotation.y, _target.y, Game.settings.x_acceleration / 60.0)
|
||||||
rotation.x = lerp_angle(rotation.x, _target.x, delta * Game.settings.y_acceleration)
|
rotation.x = lerp_angle(rotation.x, _target.x, Game.settings.y_acceleration / 60.0)
|
||||||
|
|
||||||
# Handle spatial movement
|
# Handle spatial movement
|
||||||
var xz_input := Input.get_vector("camera_left", "camera_right", "camera_forward", "camera_back")
|
var xz_input := Input.get_vector("camera_left", "camera_right", "camera_forward", "camera_back")
|
||||||
|
|
|
@ -1482,7 +1482,7 @@ grow_horizontal = 2
|
||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
|
|
||||||
[node name="PressStart" type="Label" parent="Menu"]
|
[node name="PressStart" type="Label" parent="Menu"]
|
||||||
modulate = Color(1, 1, 1, 0.98649)
|
modulate = Color(1, 1, 1, 0.899996)
|
||||||
layout_mode = 1
|
layout_mode = 1
|
||||||
anchors_preset = 8
|
anchors_preset = 8
|
||||||
anchor_left = 0.5
|
anchor_left = 0.5
|
||||||
|
|
Loading…
Reference in New Issue