Прочитал пост... Мдя, товаришь Uri. Эка вас торкнуло. Но в любом случае - glsl это язык высокого уровня, а мы ведь низкоуровники? А значит будем программировать на асме, как саму программу, так и шейдеры. Объясняю по понятиям. GL_ARB_vertex_program и GL_ARB_fragment_program хоть и выглядят как ассемблер, но к родной системе команд GPU отношения никакого не имеют. Родной ассемблер GPU тебе вобще хрен кто просто так даст. GLSL только "с виду" выше уровнем, а является ли он на самом деле выше уровнем чем тот же GL_ARB_fragment_program - вопрос спорный. Далее, чтобы писать на асме GPU надо знать особенности его архитектуры. Их тебе тоже просто так никто не расскажет. И самое неприятное. Если для Intel - AMD оптимизация за счет свойств архитектуры имеет более-менее схожий характер, то кто тебе сказал, что то что будет рулить на nVidia будет рулить и на ATi? GLSL (HLSL) тем и хорош, что компилятор сам тебе все прооптимизирует, а самый быстрый шейдер скажем расчитывающий преломление на GL_ARB_fragment_program может вобще по-разному выглядеть для каждого GPU. 9 шансов из 10-ти что твои "низкоуровневые" шейдеры будут работать менленнее, чем то же самое, написанное на GLSL (HLSL). И вуаля - у вас карта сама тени расчитывает, бамп ложит, преломление в прозрачных объектах делает и еще куча всякой фигни... Наивный какой. Думаешь присунул шейдер и у тебя тени с преломлением тут же появились? Ничего не завернуть? В расчете теней шейдер это самая простая часть, самое сложное всегда творится вне шейдера. Для использования всего этого чуда нужна будет довольно крутая видео - а именно с поддержкой вертексных и пиксельных шейдеров версии 1.1. Самая убогая GeForceFX-5200 держит оба типа шейдеров до версии 2.0 включительно и стоит порядка 50$
У кого нибудь есть пример программирования шейдеров на низкоуровневом языке Direct3D? И указания по компиляции?
Что-то у меня складывается ощущение что не стОит мне высказываться по поводу DX/GL. Как только объясню по понятиям "что и как", так топик тут же умирает