Язык шейдеров OpenGL (GLSL) - это стандартный язык программирования для шейдеров в OpenGL. Существует множество версий языка, каждая из которых соответствует версии OpenGL. OpenGL ES 2.0 и выше имеют отдельные версии GLSL.
1 ответ

Ошибки в реализации затенения по фонгу (по текстуре) в моих шейдерах

Я пытаюсь изучить webGL, попытался реализовать затенение по Фонгу, следуя этому примеру кода по ссылке http://voxelent.com/html/beginners-guide/chapter_3/ch3_Sphere_Phong.html Я получаю две ошибки при компиляции шейдеров, и, следовательно, не отобра…
18 окт '15 в 15:14
0 ответов

Использование одного и того же шейдерного кода в нескольких процессах

Являются ли переменные шейдера и однородные переменные уникальными в разных приложениях? У меня есть ситуация, когда мне нужно иметь несколько процессов (фактически отдельных программ), которые используют шейдерный код с одинаковыми именами переменн…
10 дек '14 в 19:12
2 ответа

Куб не рендерит в OpenGL

Я пытаюсь написать базовую программу OpenGL 3.3 с шейдерами, буферами и т. Д., Рисуя куб. Проблема в том, что куб не нарисован. Извините за такое количество кода, но я чувствую, что ошибка может быть где угодно, потому что мне все кажется правильным…
26 окт '13 в 17:43
1 ответ

Ввод геометрического шейдера с пользовательским количеством вершин в OpenGL?

Я работаю над проектом, где (и я немного упрощаю) Мне нужно рассчитать сечения трехмерных фигур и отрисовать их. Например, у меня может быть список тетраэдров (каждый тетраэдр состоит из 4 вершин), или список треугольных призм (каждая треугольная пр…
04 окт '15 в 14:58
3 ответа

Можете ли вы иметь несколько пиксельных (фрагментных) шейдеров в одной программе?

Я хотел бы иметь два пиксельных шейдера; первый делает одно, а потом другой делает что-то другое. Возможно ли это, или я должен упаковать все в один шейдер?
26 фев '10 в 19:29
1 ответ

Чтение текущего цвета фрагмента в GLSL

Я пытаюсь нарисовать круг на экране, где цвет круга всегда противоположен цвету того, что было раньше. Подобно перекрестию в Minecraft, цвет которого всегда отличается от того, на котором они в настоящее время сфокусированы. Есть ли способ получить …
09 сен '18 в 14:47
1 ответ

OpenGL Shader - обнаружение краев с детектором краев Frei-Chen

Я попытался создать шейдер, который окрашивает все края в черный цвет, как вы, возможно, знаете из затенения cel. Я много гуглил и нашел много статей и исходного кода, как создавать черные контуры. К сожалению, я не понимаю большинство из них: Я наш…
07 май '16 в 15:23
3 ответа

GLSL шейдер генерация нормалей

Привет, я пишу приложение для 3D моделирования и хочу ускорить рендеринг в OpenGL. В настоящее время я использую glBegin/glEnd, что очень медленно и не рекомендуется. Мне нужно рисовать очень быстрые модели с плоским затенением. Я генерирую нормали …
26 дек '09 в 20:38
2 ответа

THREE.js повторяет обтекание текстуры в шейдер

Я хочу повторить обтекание текстуры в шейдере THREE.js. Исходное изображение текстуры: Я хочу, чтобы это повторилось 4x4 раза, что будет выглядеть так: Но с помощью следующего кода получается: Вершинный шейдер: varying vec2 vUv; uniform float textRe…
06 мар '13 в 06:54
0 ответов

GLSL: повторно использовать шейдерный объект

В спецификации OpenGL 4.3 на странице 79 говорится, что Несколько шейдерных объектов одного типа могут быть присоединены к одному программному объекту, и один шейдерный объект может быть присоединен к более чем одному программному объекту. Присоедин…
15 фев '14 в 20:54
0 ответов

Несколько полосковых линий в одном вызове

Я хочу нарисовать много линий, и производительность очень важна для меня, поэтому я не могу использовать тысячи вызовов. Мое первое решение использует LineSegments с повторяющимися индексами, как это [1,2,2,3,3,4,4,5, 1,7,7,6,6,8, ...] Я знаю о Buff…
27 авг '17 в 10:10
1 ответ

Как определить, масштабируется ли матрица 2x2 по оси x больше, чем по оси y?

Позволять M быть обратимой матрицей 2х2. Позволять C быть кругом радиуса 1 с центром в (0,0). Позволять E быть эллипсом M*C с большой полуосью s1 и малая ось s2, (Затем s1 >= s2.) Мне нужно найти sxгоризонтальный масштаб применяется к C от M, а т…
01 июл '17 в 17:36
1 ответ

GLSL: искажение данных

Я использую OpenGL 3.3 GLSL 1.5 совместимость. У меня странная проблема с данными вершин. Я пытаюсь передать значение индекса фрагментному шейдеру, но значение, похоже, меняется в зависимости от положения моей камеры. Это должно быть просто: я перед…
15 янв '15 в 20:45
2 ответа

Фрагментный шейдер для целочисленных текстур без знака

Я использую следующий шейдер для целочисленных текстур без знака для чтения данных: Фрагмент шейдера: Код: #version 150 out uvec4 fragColor; uniform uint factor; void main() { uint temp=factor; temp=temp/2; fragColor = uvec4(temp,temp,temp,temp); } …
22 фев '13 в 12:29
1 ответ

Атомные встречные аномалии в геометрии шейдеров

Я пытаюсь контролировать поведение фрагментного шейдера, вычисляя количество вершин в геометрическом шейдере, чтобы, если у меня был поток вершин из 1000 треугольников, когда число достигло 500, я установил некоторые переменные для фрагментного шейд…
09 июл '14 в 08:08
2 ответа

Как фрагментный шейдер может использовать значения цвета ранее визуализированного кадра?

Я учусь использовать шейдеры в OpenGL ES. В качестве примера: вот мой фрагментный шейдер игровой площадки, который берет текущий видеокадр и делает его в градациях серого: varying highp vec2 textureCoordinate; uniform sampler2D videoFrame; void main…
1 ответ

Свертка шейдера не подойдет?

Я пытался выполнить свертку на GPU с использованием GLSL, OpenGL, GLFW3. Но я продолжаю получать ERROR: One or more attached shaders not successfully compiled, Я думал, что правильно прикрепил шейдеры, кто-нибудь может увидеть, где может быть моя ош…
11 июн '14 в 15:06
1 ответ

Ошибка связывания в тесселяционных шейдерах в GLSL

Я тестирую тесселяцию треугольника по ссылке http://prideout.net/blog/?p=48. Все шейдеры скомпилированы правильно, но когда я пытаюсь связать программу, используя команду: glLinkProgram(programID); Я получил следующую ошибку: Tessellation control in…
18 дек '13 в 08:10
1 ответ

GLSL/OpenGL 2.1: зеркальное освещение с использованием униформы

Итак, я приступил к поиску реализации потрясающего освещения без использования системы освещения OpenGL. Я успешно реализовал диффузное освещение Phong. Specular доставляет мне неприятности. Мне нужно знать, какие места занимают используемые мной ко…
12 ноя '11 в 16:15
1 ответ

Как использовать glFogCoordEXT в GLSL

Я использовал glFogCoordEXT, чтобы различать исследуемую и неизведанную местность. Но после того, как я использую шейдер для нормального картирования на местности, он работает нормально, но тумана больше нет. Может ли кто-нибудь мне помочь, (я не зн…
20 июн '13 в 09:24