Лучший способ выполнить это задание представить список векторов в виде одной матрицы, где каждый вектор представлен одной колонкой.
Если N векторов должны быть умножены на матрицу 4х4, они могут быть выражены
в виде одной матрицы 4хN:
а список векторов:

Заметьте, что вся дополнительная четвертая строка равна константе 1. Она не играет никакой роли, используется, чтобы порядок матрицы M совпадал с порядком списка V.
Умножение производится так:

На каждый вектор в списке приходится в общем 12 умножений, 16 сложений и 1 деление для перспективы.
Если известно, что это матрица поворота или переноса, то можно не делить.