Developer knowledge network · moderated exchange

Społeczność UnreliableCode

Badania programistów, inżynieria wsteczna i społeczność programistów

Knowledge indexNa żywo
4Categories
919Threads
2.8KPosty
Analysis

Kraber & Sentinel 500m Ballistic Trajectory Math: Bullet Gravity & Velocity Decay [v2.4 Technical Discussion]

matrix_math_guy
Math Specialist
MEMBER
Rozpustnik: 105
Data dołączenia: Aug 2018
Posty: 52
Dzięki: 41
1 miesięcy temu · Jul 3, 2026 5:52 AM
#1

In Apex Legends, weapon bullets have dynamic initial muzzle velocity and gravity scale:

  • Kraber .50-Cal: muzzleVelocity = 29500.0f (approx. 750 m/s), gravityScale = 1.0f
  • Sentinel Charged: muzzleVelocity = 31000.0f, gravityScale = 0.85f
  • Longbow DMR: muzzleVelocity = 30500.0f, gravityScale = 1.0f
CPP
Vector3 CalculateBallisticLead(Vector3 targetPos, Vector3 targetVel, Vector3 localEye, float muzzleVel, float gravScale) {
    float dist = (targetPos - localEye).Length();
    float timeToTarget = dist / muzzleVel;
    // Lead position along target movement vector
    Vector3 predictedPos = targetPos + (targetVel * timeToTarget);
    // Compensate bullet drop
    predictedPos.z += 0.5f * 750.0f * gravScale * (timeToTarget * timeToTarget);
    return predictedPos;
}
apex_glow_god
Apex Reverser
MEMBER
Rozpustnik: 128
Data dołączenia: Dec 2020
Posty: 8
Dzięki: 30
1 miesięcy temu · Jul 3, 2026 8:13 AM
#2

Tested this formula with Kraber at 450m: landed a clean 145 damage body shot on a running Wraith!

raycast_ryan
Ballistics Dev
MEMBER
Rozpustnik: 72
Data dołączenia: Sep 2019
Posty: 32
Dzięki: 16
1 miesięcy temu · Jul 3, 2026 6:14 PM
#3

The 750.0f world gravity constant matches the Apex physics engine.