Godot 3.4.2
添加到 2D 的 Sprite 节点上即可查看效果
# 抛物线
extends Node2D
## x 轴阻力
export var resistance = 300
## 重力
export var gravity = 800
## 计算阻力后的速度
var _resistance = 0.0
var motion_velocity = Vector2(0,0)
# 投掷的方向和力度
func force(value: Vector2):
_resistance = resistance / value.x
motion_velocity = value
func _physics_process(delta):
motion_velocity.x = lerp(motion_velocity.x, 0, _resistance * delta)
motion_velocity.y += gravity * delta
position += motion_velocity * delta