速度數學與向量計算
本頁面詳細介紹了 速度計 (Speedometer) 用於計算玩家與實體移動速度的數學公式、向量力學以及 tick 到秒的轉換公式。
📊 數學向量公式資訊框
| 物理屬性 | 計算公式 / 取值 |
|---|---|
| 原版刻率 | $20.0\text{ ticks} = 1.0\text{ 秒}$ |
| Native Speed Source | entity.getKnownSpeed() ($\text{Vec3}$) |
| Total 3D Speed ($S$) | $S = \sqrt{v_x^2 + v_y^2 + v_z^2} \times 20.0$ |
| Horizontal Speed ($H$) | $H = \sqrt{v_x^2 + v_z^2} \times 20.0$ |
| Vertical Speed ($V$) | $V = |
| Unit of Measurement | 方塊/秒 (b/s) |
| Display Precision | %.2f (Locale.ROOT) |
🧮 向量數學換算公式
Minecraft 內部按每個 Tick 計算實體移動。設 $\vec{v} = (v_x, v_y, v_z)$ 為 entity.getKnownSpeed() 返回的速度向量,單位為 $\text{blocks/tick}$。
1. 三維全速純量換算
$$S_{\text{bps}} = |\vec{v}| \times 20.0 = \sqrt{v_x^2 + v_y^2 + v_z^2} \times 20.0$$
2. 水平速度分量 ($H$)
$$H_{\text{bps}} = \sqrt{v_x^2 + v_z^2} \times 20.0$$
3. 垂直速度分量 ($V$)
$$V_{\text{bps}} = |v_y| \times 20.0$$
🔄 Tick 與秒換算矩陣對照
| 運動動作 | 原始速度 ($\text{blocks/tick}$) | 水平分量 ($H$) | 垂直分量 ($V$) | 速度計輸出 (b/s) |
|---|---|---|---|---|
| 行走 | $0.215\text{ b/t}$ | $4.30\text{ b/s}$ | $0.00\text{ b/s}$ | Speed: 4.30 b/s (H: 4.30, V: 0.00) |
| 疾跑 | $0.280\text{ b/t}$ | $5.60\text{ b/s}$ | $0.00\text{ b/s}$ | Speed: 5.60 b/s (H: 5.60, V: 0.00) |
| 疾跑跳躍 | $0.340\text{ b/t}$ | $6.20\text{ b/s}$ | $2.42\text{ b/s}$ | Speed: 6.66 b/s (H: 6.20, V: 2.42) |
| 船 (藍冰) | $3.500\text{ b/t}$ | $70.00\text{ b/s}$ | $0.00\text{ b/s}$ | Speed: 70.00 b/s (H: 70.00, V: 0.00) |
| 鞘翅俯衝 | $2.500\text{ b/t}$ | $30.00\text{ b/s}$ | $40.00\text{ b/s}$ | Speed: 50.00 b/s (H: 30.00, V: 40.00) |
