Видеосистема ПК
Естественным развитием блока T&L стал программируемый блок геометрических преобразований, поддерживающий вершинные шейдеры (Vertex Shader). Программируемый вершинный блок способен имитировать мимику персонажа, переливы меха, развевающиеся волосы, стелющуюся под ветром траву, и выполнять прочие геометрические преобразования, реализуя их на лету. Разработчик программы получает полный контроль над механизмами T&L и может использовать вершинные шейдеры для расчета вспомогательных геометрических данных, которые затем будут использовать пиксельные шейдеры.
Например, программист пишет шейдер, в котором указывает, что его следует использовать для вершин треугольников, составляющих листок дерева. Графический процессор исполняет эту программу, и в результате листочек на дереве поворачивается на определенный угол в каждом кадре. Другой вариант использования вершинного шейдера связан с обработкой текстур. Например, шейдер изменяет текстурные координаты вершин полигонов, а в результате выражение лица персонажа изменяется от улыбки до плача за счет наложения других текстур. Программированию поддаются практически все параметры, связанные с обработкой вершин: помимо уже названных геометрических и текстурных координат можно задавать цвет вершины, параметры смешивания, прозрачность.
Возможности шейдеров росли от версии к версии. Начиная с версии 3.0 (включены в API DirectX 9), шейдеры почти не ограничивают методы программирования, позволяя использовать в вычислениях текстуры и задавать уникальные свойства вершин. То есть вершинный блок графического процессора сейчас мало чем уступает по функциональности центральному процессору