тяга к революциям TONY (TONY@EYKONTECH.COM) Спецвыпуск: Хакер, номер #064, стр. 064-012-4 фрагментный процессор Посмотри еще раз на код примера (XML узел PixelShader). Входные данные для фрагментного процессора аналогичны выходным данным вершинного процессора с учетом того, что они интерполированы для конкретного фрагмента внутри треугольника. На выходе из фрагментной программы мы должны получить результирующий цвет фрагмента с учетом текстур, освещения, затенения и т.д. (в зависимости от решаемой задачи). В константных регистрах процессора задаются константы из главной программы. Временные регистры служат для сохранения промежуточных результатов вычислений. Самплеры — это то же самое, что и текстуры. Регистры текстурных координат содержат интерполированные текстурные координаты для фрагмента. Регистр предикатов и, соответственно, статические и динамические ветвления появляются только в 2.Х-версии пиксельных шейдеров. В последнем (третьем) поколении шейдеров появляется регистр стороны треугольника, который содержит положительное значение для передней стороны и отрицательное — для задней. Эта возможность используется для выбора различных схем расчета результирующего цвета (выбор освещения) для разных сторон треугольников. недалекое будущее Гадание на кофейной гуще — чрезвычайно увлекательный процесс, именно им и занимаются многие аналитики IT-рынка. Их фантазии нельзя назвать никак по-другому. В пришествии технологии шейдеров на платформу PC нет ничего удивительного. Если в прошлом видеокарты выполняли фиксированный набор действий, то теперь этих действий стало на порядок больше за счет того, что появилась возможность писать управляющие программы (шейдеры) для графических процессоров. После резкого перехода от технологий фиксированного к технологиям программируемого графического конвейера индустрия продолжила свою эволюцию. Шейдеры обрастали мясом функциональности, новыми возможностями и регистрами, высокой частотой и возможностями распараллеливания вычислений. На сегодня мегамонстр PC-графики держит на своем борту 512 Мб памяти, работает на частоте 600 МГц, данные обрабатываются 24-мя пиксельными конвейерами. Также имеются решения на базе технологии SLI из двух видеокарт. Налицо тенденции к распараллеливанию вычислений. Почему существуют такие тенденции? Все очень просто, инженеры подходят к границам миниатюризации технологического процесса, преодолеть которые невозможно физически. Так что остается двигаться в сторону параллельных вычислений: многоядерные процессоры, многоканальные контроллеры памяти, мультиконвейерные графические решения. В ближайшем будущем нас ожидает новая операционная система от Microsoft, вместе с ней к нам придет новая архитектура графических драйверов и новый DirectX. Прыгнут ли графические технологии еще раз вперед? Вряд ли. Получим ли мы ощутимую прибавку к производительности и качеству? Наверняка. Нужно ли нам это как пользователям? Вот здесь я сильно сомневаюсь, мне, к примеру, надоело менять видеокарту каждые два года, отваливая за нее от $100 до 200. А тебе? Если не надоело, то прочитай вот это: http://thg.ru/graphic/20060114/onepage.html. |