From c86a28af5cd88dd3515297fd55a9914718f28d13 Mon Sep 17 00:00:00 2001 From: Chris Robinson Date: Sat, 16 Nov 2019 14:33:09 -0800 Subject: Simplify some pi statements --- alc/panning.cpp | 55 +++++++++++++++++++++++++++++-------------------------- 1 file changed, 29 insertions(+), 26 deletions(-) (limited to 'alc/panning.cpp') diff --git a/alc/panning.cpp b/alc/panning.cpp index b754d18b..893147a0 100644 --- a/alc/panning.cpp +++ b/alc/panning.cpp @@ -523,34 +523,37 @@ void InitCustomPanning(ALCdevice *device, bool hqdec, const AmbDecConf *conf, void InitHrtfPanning(ALCdevice *device) { constexpr float PI{al::MathDefs::Pi()}; + constexpr float PI_2{al::MathDefs::Pi() / 2.0f}; + constexpr float PI_4{al::MathDefs::Pi() / 4.0f}; + constexpr float PI3_4{al::MathDefs::Pi() * 3.0f / 4.0f}; const float CornerElev{static_cast(std::atan2(1.0, std::sqrt(2.0)))}; static const AngularPoint AmbiPoints[]{ - { ElevRadius{ 0.0f}, AzimRadius{ 0.0f} }, - { ElevRadius{ 0.0f}, AzimRadius{ PI} }, - { ElevRadius{ 0.0f}, AzimRadius{ -PI/2.0f} }, - { ElevRadius{ 0.0f}, AzimRadius{ PI/2.0f} }, - { ElevRadius{ PI/2.0f}, AzimRadius{ 0.0f} }, - { ElevRadius{ -PI/2.0f}, AzimRadius{ 0.0f} }, - { ElevRadius{ PI/4.0f}, AzimRadius{ -PI/2.0f} }, - { ElevRadius{ -PI/4.0f}, AzimRadius{ -PI/2.0f} }, - { ElevRadius{ PI/4.0f}, AzimRadius{ PI/2.0f} }, - { ElevRadius{ -PI/4.0f}, AzimRadius{ PI/2.0f} }, - { ElevRadius{ PI/4.0f}, AzimRadius{ 0.0f} }, - { ElevRadius{ -PI/4.0f}, AzimRadius{ 0.0f} }, - { ElevRadius{ PI/4.0f}, AzimRadius{ PI} }, - { ElevRadius{ -PI/4.0f}, AzimRadius{ PI} }, - { ElevRadius{ 0.0f}, AzimRadius{ -PI/4.0f} }, - { ElevRadius{ 0.0f}, AzimRadius{ PI/4.0f} }, - { ElevRadius{ 0.0f}, AzimRadius{-PI*3.0f/4.0f} }, - { ElevRadius{ 0.0f}, AzimRadius{ PI*3.0f/4.0f} }, - { ElevRadius{ CornerElev}, AzimRadius{ -PI/4.0f} }, - { ElevRadius{-CornerElev}, AzimRadius{ -PI/4.0f} }, - { ElevRadius{ CornerElev}, AzimRadius{ PI/4.0f} }, - { ElevRadius{-CornerElev}, AzimRadius{ PI/4.0f} }, - { ElevRadius{ CornerElev}, AzimRadius{-PI*3.0f/4.0f} }, - { ElevRadius{-CornerElev}, AzimRadius{-PI*3.0f/4.0f} }, - { ElevRadius{ CornerElev}, AzimRadius{ PI*3.0f/4.0f} }, - { ElevRadius{-CornerElev}, AzimRadius{ PI*3.0f/4.0f} }, + { ElevRadius{ 0.0f}, AzimRadius{ 0.0f} }, + { ElevRadius{ 0.0f}, AzimRadius{ PI} }, + { ElevRadius{ 0.0f}, AzimRadius{ -PI_2} }, + { ElevRadius{ 0.0f}, AzimRadius{ PI_2} }, + { ElevRadius{ PI_2}, AzimRadius{ 0.0f} }, + { ElevRadius{ -PI_2}, AzimRadius{ 0.0f} }, + { ElevRadius{ PI_4}, AzimRadius{ -PI_2} }, + { ElevRadius{ -PI_4}, AzimRadius{ -PI_2} }, + { ElevRadius{ PI_4}, AzimRadius{ PI_2} }, + { ElevRadius{ -PI_4}, AzimRadius{ PI_2} }, + { ElevRadius{ PI_4}, AzimRadius{ 0.0f} }, + { ElevRadius{ -PI_4}, AzimRadius{ 0.0f} }, + { ElevRadius{ PI_4}, AzimRadius{ PI} }, + { ElevRadius{ -PI_4}, AzimRadius{ PI} }, + { ElevRadius{ 0.0f}, AzimRadius{ -PI_4} }, + { ElevRadius{ 0.0f}, AzimRadius{ PI_4} }, + { ElevRadius{ 0.0f}, AzimRadius{-PI3_4} }, + { ElevRadius{ 0.0f}, AzimRadius{ PI3_4} }, + { ElevRadius{ CornerElev}, AzimRadius{ -PI_4} }, + { ElevRadius{-CornerElev}, AzimRadius{ -PI_4} }, + { ElevRadius{ CornerElev}, AzimRadius{ PI_4} }, + { ElevRadius{-CornerElev}, AzimRadius{ PI_4} }, + { ElevRadius{ CornerElev}, AzimRadius{-PI3_4} }, + { ElevRadius{-CornerElev}, AzimRadius{-PI3_4} }, + { ElevRadius{ CornerElev}, AzimRadius{ PI3_4} }, + { ElevRadius{-CornerElev}, AzimRadius{ PI3_4} }, }; static const float AmbiMatrix[][MAX_AMBI_CHANNELS]{ { 3.846153846e-02f, 0.000000000e+00f, 0.000000000e+00f, 6.661733875e-02f, 0.000000000e+00f, 0.000000000e+00f, -4.969039950e-02f, 0.000000000e+00f, 8.606629658e-02f }, -- cgit v1.2.3