mat3 introduced; outerproduct on the go