Что такое матрица трансляции и как ей пользоваться в OpenGL ES 2.0?

Рейтинг: 0Ответов: 1Опубликовано: 03.01.2015

Пишу под Андроид. Суть в том, что rotateM вращает по оси x y z, а translateM не могу понять (что она делает). Нашёл пояснение на английском: Translate matrix m by x y z in place, но всё равно не пойму. Обьясните, пожалуйста.

Matrix.setIdentityM(mLightModelMatrix, 0);
Matrix.translateM(mLightModelMatrix, 0, 0.0f, 0.0f, -5.0f);      
Matrix.rotateM(mLightModelMatrix, 0, angleInDegrees, 0.0f, 5.0f, 5.0f);
Matrix.translateM(mLightModelMatrix, 0, 0.0f, 0.0f, 2.0f);

Ответы

▲ 1

translateM сдвигает модель в сторону, соответственно осям X Y Z, до или после вращения. Порядок операций имеет значение.