mirror of
https://github.com/orange-cpp/omath.git
synced 2026-02-13 15:03:27 +00:00
19 lines
623 B
C++
19 lines
623 B
C++
//
|
|
// Created by Vlad on 6/9/2024.
|
|
//
|
|
|
|
#include "omath/prediction/Projectile.hpp"
|
|
#include <cmath>
|
|
#include <omath/engines/Source/Formulas.hpp>
|
|
|
|
namespace omath::prediction
|
|
{
|
|
Vector3 Projectile::PredictPosition(const float pitch, const float yaw, const float time, const float gravity) const
|
|
{
|
|
auto currentPos = m_origin + omath::source::ForwardVector({source::PitchAngle::FromDegrees(-pitch), source::YawAngle::FromDegrees(yaw), source::RollAngle::FromDegrees(0)}) * m_launchSpeed * time;
|
|
currentPos.z -= (gravity * m_gravityScale) * std::pow(time, 2.f) * 0.5f;
|
|
|
|
return currentPos;
|
|
}
|
|
}
|