The arrow leaves the bow with speed v0 ≈ 25 + 0.9 × (draw weight), approximating how a stiffer draw stores more energy in the limbs and transfers it to a light shaft. In flight, gravity and quadratic aerodynamic drag act on the arrow simultaneously — this is not the ideal parabola from a first-physics course:
a = g + (1/m) · (−½ ρ Cd A |v_rel| v_rel)
v_rel = v_arrow − v_wind (wind acts only horizontally)
Each frame the simulator integrates this with small time steps (semi-implicit Euler), so the crosswind continuously pushes the arrow sideways in proportion to how long it stays airborne — a slow, high, or long shot drifts far more than a fast flat one, exactly as real archers compensate for wind at longer distances.
- Draw weight — sets launch speed; heavier draws mean a flatter, faster, less wind-affected shot.
- Launch angle — the elevation above line-of-sight needed to fight gravity over distance; too little and the arrow falls short, too much and it sails over.
- Crosswind — a positive value pushes the arrow toward +x throughout its flight time, so drift grows with time-of-flight, not just distance.
- Target distance — the standard 122 cm, 10-ring face is scored by radial distance from centre: ring = 10 − ⌊10·r/R⌋, clipped to 0–10.