Вопросы с тегом «fragment-shader»

Программа, работающая на графическом процессоре, для определения выходных цветов пикселей. Также известен как фрагментный шейдер.

3
Почему H (blinn) используется вместо R (phong) в зеркальном затенении?
Я не могу найти вескую причину для этого нигде. Вектор отражения, используемый в фонге, имеет простую основу в физике. Но половинный вектор, используемый в блинне, по-видимому, не имеет рациональной основы и не является надлежащим отражением. И все же он используется в каждой так называемой «физической» функции затенения. Если для этого …

2
Потеряю ли я производительность при отбрасывании пикселей, даже если я не использую тестирование глубины?
Когда я впервые искал инструкцию по сбросу, я обнаружил, что эксперты говорят, что использование отклонения приведет к снижению производительности. Они сказали, что отбрасывание пикселей нарушит способность GPU правильно использовать zBuffer, потому что GPU должен сначала запустить шейдер Fragment для обоих объектов, чтобы проверить, сброшен ли один из них ближе к …

2
GLSL - однопроходное размытие по Гауссу
Возможно ли реализовать фрагментный шейдер, чтобы сделать однопроходное размытие по Гауссу? Я нашел много реализации двухпроходного размытия (гауссово и размытие в рамке): http://callumhay.blogspot.com/2010/09/gaussian-blur-shader-glsl.html http://www.gamerendering.com/2008/10/11/gaussian-blur-filter-shader/ http://www.geeks3d.com/20100909/shader-library-gaussian-blur-post-processing-filter-in-glsl/ и так далее. Я думал о реализации размытия по Гауссу как свертки (на самом деле, это свертка, приведенные выше примеры являются лишь приблизительными): http://en.wikipedia.org/wiki/Gaussian_blur

3
Как написать шейдер, который загорается, когда объекты находятся рядом с поверхностью?
В этом видео об игре Overwatch щит персонажа светится белым в областях, которые находятся рядом с геометрией других объектов. Обратите внимание на белые края на синем щите около пола, стен и колонны. Я полагаю, что у щита есть своя собственная модель, и эффект достигается с помощью шейдера, но я теряюсь, …

2
Затенение Toon / Cel с переменной шириной линии?
Я вижу несколько общих подходов к затенению cel: Дублирование и увеличение модели с перевернутыми нормалями (не вариант для меня) Фильтр Собеля / фрагментный шейдер подходит к обнаружению края Трафаретный буфер подходит к обнаружению края Геометрические (или вершинные) шейдерные подходы, которые вычисляют грани и грани нормали Правильно ли я считаю, что …

2
GLSL Shader - изменение оттенка / насыщенности / яркости
Я пытаюсь изменить оттенок изображения, используя фрагментный шейдер GLSL. Я хочу добиться чего-то похожего на слой корректировки оттенка / насыщенности в Photoshop. На следующем изображении вы можете увидеть, что я получил до сих пор. Я хочу изменить оттенок зеленого квадрата, чтобы он выглядел как красный квадрат справа, но с помощью …

5
Какие методы рендеринга я бы использовал, чтобы нарисовать эффект тени для карточек в карточной игре?
Какой тип алгоритма затенения может быть использован для создания таких теней? тот, который я делаю, похож на него, но все это делается с помощью API 2D-рисования, работающего на OpenGL, поэтому Z-координаты нет. Кроме того, что касается самой руки, мне бы очень хотелось получить затененное ощущение, которое можно увидеть здесь: Я …

1
Как мне реализовать 2D тени, отбрасываемые между слоями?
Как я могу реализовать 2d тени, которые отбрасываются объектами в другом слое? НЕ нравится динамическое освещение в известном уроке от Catalin Zima : Но, как тени труб в этом видео : И как тень от платформы и персонажа в этом видео : Я хотел бы использовать один и тот же …

1
Как создать «ретро» пиксельный шейдер для преобразованных 2D спрайтов, который поддерживает точность пикселей?
Изображение ниже показывает два спрайта, визуализированных с точечной выборкой поверх фона: К левому черепу не применяется вращение / масштабирование, поэтому каждый пиксель идеально соответствует фону. Правый череп поворачивается / масштабируется, и это приводит к большим пикселям , которые больше не выровнены по оси . Как я могу разработать пиксельный шейдер, …

1
Оптимизация производительности шейдера с тяжелыми фрагментами
Мне нужна помощь в оптимизации следующего набора шейдеров: Vertex: precision mediump float; uniform vec2 rubyTextureSize; attribute vec4 vPosition; attribute vec2 a_TexCoordinate; varying vec2 tc; void main() { gl_Position = vPosition; tc = a_TexCoordinate; } Фрагмент: precision mediump float; /* Uniforms - rubyTexture: texture sampler - rubyTextureSize: size of the texture …

3
Наброски спрайтов
В настоящее время я работаю над 2D-игрой, и моя текущая задача - наметить выделенный объект. Я в основном использую размытие шейдера, чтобы сделать это полностью во время выполнения. Сначала я рисую свой спрайт с помощью вертикального гауссова размытия, затем я рисую его с помощью горизонтального гауссова размытия, а затем я …

1
GL ES: оптимизация фрагмента шейдера
Резюме: я получаю замедление FPS, как только я пытаюсь тонировать спрайты (то есть: умножить текстуру на цвет в фрагментном шейдере) Подробности: Аппаратное обеспечение: iPod touch 4 Я рисую 700 спрайтов на экране, используя glDrawArrays. И да, я собираю все это в один розыгрыш. Ниже показана структура данных Vertex: struct Vertex …

1
Как использовать производные пространства экрана для сглаживания параметрической фигуры в пиксельном шейдере?
В документе Valve Alpha Tested Magnification упоминается использование «производных пространства экрана на пиксель» для сглаживания. Я понимаю, что это ddxи есть ddyвстроенные функции в HLSL? Я пытаюсь нарисовать параметрические фигуры (например, круг: x² + y² <1 ) в шейдере, и я не знаю, как использовать эту технику для правильного сглаживания …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.