数学或 MathUtils - Libgdx

Math or MathUtils - Libgdx

我在每一帧中都进行了大量的三角计算。 Java 的 Math 函数是否比 Libgdx 的 MathUtils 更快?

或者我可以使用比这两个都更快的其他库吗?

com.badlogic.gdx.math.MathUtils 的三角函数比 java.lang.Math 中的三角函数更快。例如,对于 sin()cos() 方法,它 returns 与预先计算的 table 最接近的值。这肯定不如精确计算准确,但速度快得多:

static public float sin (float radians) {
    return Sin.table[(int)(radians * radToIndex) & SIN_MASK];
}

MathUtils的其他方法主要是LibGDX的其他部分使用的实用函数。我认为它们的编写主要是为了方便而不是为了速度(但它们也经过了很好的优化)。