Давно этот вопрос меня интересует. Т.к. с обычной графикой в OpenGL я разобрался (относительно конечно). А теперь появилось время, хочется что-то новенькое узнать. Да и примеры на шейдерах как-то посимпатичнее выглядят зачастую.
С чего начинать изучение шейдеров?
Сообщений 1 страница 3 из 3
Поделиться22009-11-28 23:59:32
Зависит от того, что тебе ближе - теория или учеба на практике.
Если теория, то тут однозначно OrangeBook (OpenGL® Shading Language By Randi J. Rost или переведенная "OpenGL. Трехмерная графика и язык программирования шейдеров. Рэнди Дж. Рост издательство Питер").
Если проще осваивать на примерах - рекомендую эту статью:
http://bimedev.ru/post/2008/05/RenderMonkey.aspx
По сути с нее и началось мое изучение шейдеров, предлагаю и тебе с ней ознакомиться.
Там простым языком на примере редактора эффектов от ATI с хитрым названием RenderMonkey рассказывается об основных этапах создания шейдера. Прочитав эту небольшую статью - ты уже сможешь создать шейдер, передать в него параметры, рассчитать освещение и наложить текстуру, не отвлекаясь на сотни страниц истории и теории, а так же на попытку написать свое приложение работающее с GLSL.
Так же рекомендую скачать эту программку:
http://www.3dshaders.com/downloads/glsldemo-3.8.exe
Там комплект шейдеров из OrangeBook и ShaderDesigner от 3DLabs
О конструкции языка можно узнать из этой презентации:
http://ati.amd.com/developer/Tatarchuk- … ToGLSL.pps
Здесь более подробно расписывается использование GLSL в OpenGL:
http://www.benve.org/Download/Introduction to GLSL.pdf
Здесь можно найти уроки по GLSL:
http://wingman.org.ru/glsl
Здесь краткий перечень операторов и типов данных GLSL
http://wiki.mirgames.ru/glsl
Так же есть статейка на геймдеве:
http://www.gamedev.ru/articles/?id=20123&page=1
Это по GLSL а тут по HLSL (язык шейдеров для DirecX. практически идентичен GLSL, потому можешь смело читать весь материал по HLSL):
Тут немного теории:
http://www.gamedev.ru/articles/?id=10100
http://www.gamedev.ru/articles/?id=10109
А тут рассказывается о расширениях ARB
http://www.gamedev.ru/community/opengl/articles/fp
http://www.gamedev.ru/community/opengl/articles/vp
Вообщем материала по шейдерам море, успехов в изучении.
Поделиться32009-11-29 17:25:29
Доступно, спасибо =)