Программирование шейдеров на асме

Тема в разделе "WASM.PROJECTS", создана пользователем Uri, 1 сен 2004.

  1. jekyll

    jekyll New Member

    Публикаций:
    0
    Регистрация:
    20 мар 2003
    Сообщения:
    92
    Адрес:
    Russia
    jekyll

    Ага. Все ok. =). Почитал, что представляет из себя dll - очень прикольно придумано.
     
  2. Jaman

    Jaman New Member

    Публикаций:
    0
    Регистрация:
    11 дек 2004
    Сообщения:
    15
    Подскажите, как скомпилировать opengl?
     
  3. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    Прочитал пост... Мдя, товаришь 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$
     
  4. Jaman

    Jaman New Member

    Публикаций:
    0
    Регистрация:
    11 дек 2004
    Сообщения:
    15
    У кого нибудь есть пример программирования шейдеров на низкоуровневом языке Direct3D? И указания по компиляции?
     
  5. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    Uri

    Как успехи? :derisive:
     
  6. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    Что-то у меня складывается ощущение что не стОит мне высказываться по поводу DX/GL. Как только объясню по понятиям "что и как", так топик тут же умирает :)