Матрица представления является унифицированной, и униформы не изменяются в середине пакета рендеринга, и при этом они не могут быть записаны из шейдера (напрямую). Поскольку я не понимаю, насколько это возможно, по крайней мере, не напрямую.
Также обратите внимание, что геометрический шейдер запускается после того, как вершины были преобразованы с помощью матрицы вида модели, поэтому не имеет особого смысла (по крайней мере, во время того же прохода) повторно генерировать эту матрицу или ее часть.
Конечно, вы, вероятно, все еще можете взломать обратную связь с преобразованием, записать некоторые значения в буфер и либо скопировать / связать это как однородный буфер позже, либо просто прочитать значения из шейдера и умножить как матрицу. Это, по крайней мере, позволило бы избежать обхода ЦП - вопрос в том, имеет ли такой подход смысл, и действительно ли вы хотите делать такие непонятные вещи. Трудно сказать, что лучше, не зная точно, чего вы хотите достичь, но вполне вероятно, что просто преобразование вещей в вершинном шейдере (чтение этих текстур, построение матрицы, умножение) будет работать лучше и проще.