В самом простом, простом случае;
Вершинный шейдер вызывается для каждой вершины примитива. 100 вершин = 100 вызовов активного вершинного шейдера. Последняя стадия затем генерирует треугольники из вершин.
Теперь для каждого треугольника, сгенерированного вершинным шейдером, он растеризуется для создания фрагментов (то есть потенциальных пикселей). Растеризатор линейно интерполирует между каждой вершиной треугольника, чтобы сгенерировать расположение фрагментов треугольника. Когда вы запутываетесь, вы, вероятно, думаете, что фрагментный шейдер называется 1-к-1 вместе с вершинным шейдером. Нет, может быть от нуля до миллионов сгенерированных фрагментов - это зависит от того, насколько большим (визуально) будет конечный треугольник. Фрагментный шейдер вызывается для каждого сгенерированного фрагмента. это зависит от вершин, выводимых вершинным шейдером.
Если треугольник находится далеко от точки обзора, это может быть несколько фрагментов. Если оно близко к экрану, оно может занимать весь видовой экран.