Translate the source position separately
commitfc2473f8264a6b6677306fcfec35180d58827203
authorChris Robinson <chris.kcat@gmail.com>
Fri, 16 Apr 2010 09:09:53 +0000 (16 02:09 -0700)
committerChris Robinson <chris.kcat@gmail.com>
Fri, 16 Apr 2010 09:09:53 +0000 (16 02:09 -0700)
treeb70960bbe027c719498e126c5e35e7af5dcb79c2
parent000d848f0b668a2a5048ee7c7d1ab71e69f3ddb3
Translate the source position separately
This is to handle the case where an app specifies the same values for the
source and listener, and expects centered panning. This fails due to floating-
point errors in the matrix, causing the result to be ever-so-slightly off of 0.

This error would normally be hidden by the position normalization, which will
not lengthen a distance shorter than the reference distance so the panning
would be nearly imperceptible. But that also fails if the reference distance
is set to 0, causing the position to expand to a full unit.

Keep the 4x4 matrix calculations, however. It will still be useful for the
requested listener matrix extension.
Alc/ALu.c