diff --git a/src/engine/qcommon/q_math.cpp b/src/engine/qcommon/q_math.cpp index b7b7a78add..4fe267702d 100644 --- a/src/engine/qcommon/q_math.cpp +++ b/src/engine/qcommon/q_math.cpp @@ -2871,7 +2871,7 @@ void QuatFromMatrix( quat_t q, const matrix_t m ) if ( t > 0.0f ) { - s = ( 1.0f / sqrtf( t ) ) * 0.5f; + s = Q_rsqrt( t ) * 0.5f; q[ 3 ] = s * t; q[ 2 ] = ( m[ 1 ] - m[ 4 ] ) * s; @@ -2882,7 +2882,7 @@ void QuatFromMatrix( quat_t q, const matrix_t m ) else if ( m[ 0 ] > m[ 5 ] && m[ 0 ] > m[ 10 ] ) { t = m[ 0 ] - m[ 5 ] - m[ 10 ] + 1.0f; - s = ( 1.0f / sqrtf( t ) ) * 0.5f; + s = Q_rsqrt( t ) * 0.5f; q[ 0 ] = s * t; q[ 1 ] = ( m[ 1 ] + m[ 4 ] ) * s; @@ -2893,7 +2893,7 @@ void QuatFromMatrix( quat_t q, const matrix_t m ) else if ( m[ 5 ] > m[ 10 ] ) { t = -m[ 0 ] + m[ 5 ] - m[ 10 ] + 1.0f; - s = ( 1.0f / sqrtf( t ) ) * 0.5f; + s = Q_rsqrt( t ) * 0.5f; q[ 1 ] = s * t; q[ 0 ] = ( m[ 1 ] + m[ 4 ] ) * s; @@ -2904,7 +2904,7 @@ void QuatFromMatrix( quat_t q, const matrix_t m ) else { t = -m[ 0 ] - m[ 5 ] + m[ 10 ] + 1.0f; - s = ( 1.0f / sqrtf( t ) ) * 0.5f; + s = Q_rsqrt( t ) * 0.5f; q[ 2 ] = s * t; q[ 3 ] = ( m[ 1 ] - m[ 4 ] ) * s;