Improved movement interpolation
This commit is contained in:
13
client/player/controller/BotController.gd
Normal file
13
client/player/controller/BotController.gd
Normal file
@ -0,0 +1,13 @@
|
||||
class_name BotController
|
||||
extends Controller
|
||||
|
||||
var turn: float
|
||||
var turn_speed: float = 2.0
|
||||
|
||||
func _process(delta):
|
||||
if (Time.get_ticks_msec() / 1000) % 2 == 0:
|
||||
direction_changed.emit(Vector3.ZERO)
|
||||
else:
|
||||
turn += turn_speed * delta
|
||||
var direction := Vector3.RIGHT.rotated(Vector3.UP, turn)
|
||||
direction_changed.emit(direction)
|
@ -1,7 +1,7 @@
|
||||
class_name ProxyController
|
||||
extends Controller
|
||||
|
||||
@export var interpolation_speed: float = 10.0
|
||||
@export var interpolation_speed := 5.0
|
||||
|
||||
var player: Player
|
||||
var server_position: Vector3
|
||||
@ -13,7 +13,7 @@ func _init(new_player: Player):
|
||||
func _ready():
|
||||
server_position = player.position
|
||||
|
||||
func _process(delta: float):
|
||||
func _physics_process(delta: float):
|
||||
var time := interpolation_speed * delta
|
||||
player.position.x = Math.dampf(player.position.x, server_position.x, time)
|
||||
player.position.z = Math.dampf(player.position.z, server_position.z, time)
|
Reference in New Issue
Block a user