Сразу прошу извинить за нубизм, но с этим вопросом я парюсь не один день. Имеется вот такой простой класс:

Код AS3:
package main {
import flash.display.Sprite;
import flash.geom.Vector3D;
import flash.geom.Matrix3D;
public class MatrixTest extends Sprite {
public function MatrixTest () {
var mat1:Matrix3D=new Matrix3D ();
var vec1:Vector3D=new Vector3D (1,1,1);
trace ("Matrix rawData: "+mat1.rawData);
trace ("Input vector: "+vec1);
vec1=mat1.transformVector (vec1);
trace ("Output vector: "+vec1);
}
}
}
Что должно быть в output? Мне казалось, что mat1 - матрица идентичности и не изменяет векторы, к которым применяется. Однако вот что он мне выдает:

Код:
Matrix rawData: 1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1
Input vector: Vector3D(1, 1, 1)
Output vector: Vector3D(0.05000000074505806, 0.05000000074505806, 0.05000000074505806)
то есть все компоненты вектора vec1 делятся на двадцать. Объясните плиз мне балбесу, что к чему.