if I may add some complement to the previous answer, delta represent the time difference (time delta) between this frame and the precedent one.
As process execute as fast as possible for the PC (depending on its CPU processing power) the rate of execution between a PC and another (or even on the same computer but in different situations) may vary.
So when you multiply a speed_factor
by delta in a _process
or _physic_process
callback, the speed_factor
is now a unit / second
for exemple, position = transform.x * 200 * delta
in a 2D game will move the transform forward by 200 pixels per second
Note: _physic_process
has a stable delta
which initialy is 1 / 60 (to match 60FPS) however, this can be configured in the "Project" menu
Hope you better understand why your code runs differently using delta or not ;)