Как создать рендерер, который бы работал даже на компьютере вашей бабушки? Изначально перед нами стояла немного другая задача — создать unbiased рендер для всех моделей GPU: NVidia, ATI, Intel.
Хотя идея такого рендера для всех видеокарт витала в воздухе давно, до качественной реализации, тем более на Direct3D, дело не доходило. В своей работе мы пришли к весьма дикой связке и дальше расскажем, что нас к ней привело и как она работает.
Рубрика «shaders» - 5
Unbiased DirectX Рендеринг на GPU, CPU и в облаке
2012-10-02 в 6:24, admin, рубрики: cloud computing, CUDA, direct3d, DirectX, gpgpu, gpu, HLSL, intel, opencl, path tracing, ray tracing, shaders, unbiased rendering, windows azure, x64, x86, Анимация и 3D графика, Облачные вычисления, рендеринг, рендеринг без допущений, трассировка лучей, трассировка пути, шейдеры, метки: 3d графика, cloud computing, CUDA, direct3d, DirectX, gpgpu, gpu, HLSL, intel, Nvidia, opencl, path tracing, ray tracing, shaders, unbiased rendering, windows azure, x64, x86, АРМ, облачные вычисления, рендеринг, рендеринг без допущений, трассировка лучей, трассировка пути, шейдерыРазработка системы частиц на платформе DirectX 9. Часть II
2012-08-21 в 17:59, admin, рубрики: c++, direct3d, DirectX 9, effects, game development, particles system, shaders, Анимация и 3D графика, Программирование, система частиц, шейдеры, метки: 3d графика, c++, direct3d, DirectX 9, effects, particles system, shaders, система частиц, шейдерыЭтот пост является 2-ой и последней частью статьи о разработки системы частиц на DirectX 9. Если вы еще не читали первую часть, то рекомендую с ней ознакомится.
В этой части статьи будет рассмотрено: работа со спрайтами, вершинные и пиксельные шейдеры, эффекты, пост-эффекты. В частности для реализации пост-эффекта приём рендера в текстуру.
Читать полностью »
XNA Draw: улучшаем графику игры
2012-07-14 в 6:34, admin, рубрики: bloom, effects, game development, motion blur, shaders, xna, метки: bloom, c++, effects, game development, motion blur, shaders, xna
Всем привет.
Все мои восемь статьей на хабре — статьи о геймдеве, большая часть из них связанна с таким замечательным фреймворком, как XNA. Первым знакомством с XNA была статья о создании музыкальной игрушки, потом сложность статей нарастала, я начал писать об системах частиц, а затем о шейдерах и еще шейдерах.
В целом — на шейдерах я и хотел закончить, однако, стоить немного дополнить их, я расскажу о нескольких алгоритмах для улучшения графике в игре. Примеры улучшений:
Если интересно — под хабракат.Читать полностью »
Рисуем мерцающий текст системой частиц
2012-06-06 в 7:50, admin, рубрики: android, effects, opengl es 2.0, shaders, Разработка под android, метки: android, effects, opengl es 2.0, shadersВ позапрошлой своей статье, посвящённой созданию открытки средствами OpenGL под Android, я оставил фразу «текст поздравления добавим позже». Так вот, время пришло.
Текст будет выглядеть примерно так, как на картинке, за исключением того, что он слегка мерцает, каждая «звёздочка» плавно исчезает и появляется (кроме того, в финальном варианте и сам текст другой, и цвет не тот, и размеры шрифта и частиц тоже). Нарисован он с помощью анимированной системы частиц, причём в массиве вершин задаются лишь координаты центра каждой точки и некий «сдвиг по фазе» для анимации, ну а сама анимация сделана через шейдеры.
Отрисовка частиц осуществляется механизмом Point Sprites, который как раз и создан для таких случаев. Основная его особенность в том, что мы задаём лишь координаты центра точки и её размер, а OpenGL сам генерит нам по четыре угловых вершины и два треугольника, включая их пространственные и текстурные координаты, для отрисовки множества одинаковых (в смысле, имеющих одну и ту же текстуру) квадратных картинок. Итак, заглянем под ка[по]т.
Читать полностью »
Эффект Glow гауссовым размытием на Android
2012-05-30 в 7:30, admin, рубрики: android, glow, opengl es 2.0, shaders, Разработка под android, метки: android, glow, opengl es 2.0, shadersВведение
Сей эпичный труд появился благодаря нескольким событиям.
Во-первых, в эмуляторе Android появилась поддержка аппаратного видеоускорения, что позволяет с полной скоростью работать не только интерфейсу, но и тестировать программы, использующие OpenGL ES 2.0.
Во-вторых, близится день рождения любимой супруги, а лучшим дополнением к новому смартфону или планшету будет собственноручно написанная программа-открытка для него.
Сказано — сделано: создаём канву проекта по андроидному Tutorial'у, достаём с полки старые Direct3D-проекты с использованием загрузки файлов .3ds, рендера-в-текстуру и пачки шейдеров, переписываем на Java и OpenGL ES 2.0, получаем то, что на картинке. Текст поздравления и тому подобное добавим потом.
Вся информация по использованию OpenGL ES 2.0 на Android оказалась сильно разрозненной, знания собирались по крупицам… Надеюсь, этот пост поможет тем, кто в будущем столкнётся с теми же трудностями, что и я.
А теперь подробнее.
Читать полностью »