Описание тега geometry-shader

Не следует путать геометрический шейдер с [вершинным шейдером], это шейдерные программы, выполняемые после вершинных шейдеров. В качестве входных данных они принимают целый примитив, например точку, линию или треугольник.
1 ответ

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

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

Геометрический шейдер не будет компилироваться в DirectX10 HLSL

Я пытался закодировать геометрический шейдер для создания билбордов, как объяснено в книге Фрэнка Луны "Введение в программирование трехмерных игр с помощью DirectX". Я вставляю шейдер в мою технику следующим образом: pass P3 { SetVertexShader(Compi…
08 июн '11 в 11:08
1 ответ

Билборд с использованием шейдера Geometry

Я пытаюсь визуализировать рекламные щиты, используя геометрический шейдер, который принимает точки в качестве входных данных и выводит поток треугольника (используя DirectX11). Однако текущий результат не тот, который я ожидаю. Для сравнения, вот дв…
08 май '13 в 13:49
1 ответ

Поддержка Geometry Shader в Mesa i965 DRI для оборудования Intel SandyBridge

Я пытаюсь запустить демонстрационный код GS Mesa GS здесь: http://cgit.freedesktop.org/mesa/demos/tree/src/gs, путем клонирования этого: http://cgit.freedesktop.org/mesa/demos Тем не менее, я получаю сообщение об ошибке "необходимо расширение GL_ARB…
18 мар '15 в 05:42
0 ответов

Шейдер создает геометрию вместо использования моей геометрии

Я перенес этот шейдер ( https://www.shadertoy.com/view/XdtGDj) в glsl, и он полностью работает, но я увидел, что шейдер создает свою собственную геометрию вместо того, чтобы использовать геометрию для расчета света блестящего среза. У меня вопрос, е…
06 июн '18 в 21:30
1 ответ

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

Перед добавлением геометрического шейдера я объявил переменную в вершинном шейдере: out vec3 normal; Получать фрагментным шейдером как: in vec3 normal; Однако, если я добавлю геометрический шейдер в программу, компоновщик скажет мне, что normal не б…
31 мар '18 в 08:24
0 ответов

Конкатенация геометрии шейдера

У меня проблема с конкатенацией выходных вершин геометрического шейдера. Я использую openGL 3.3 и QT 5.6. Я использую компоновку lines_adjacency для GS и делаю прямоугольники через каждую строку. Вот так: линия полосы на прямоугольники Но проблема в…
01 апр '17 в 09:52
1 ответ

Геометрический шейдер не работает (unity3d)

Я разрабатываю шейдер в единстве. Шейдер должен содержать вершинный, фрагментный и геометрический шейдеры, и хотя первые два работают нормально, у меня есть проблемы с геометрическим шейдером. Когда я использую приведенный ниже код, затененный объек…
23 ноя '17 в 16:11
1 ответ

Как вы находите положение Y точки между четырьмя вершинами? HLSL

Допустим, в игре есть сетка ландшафта, состоящая из плиток, состоящих из двух треугольников - из четырех вершин. Как бы мы нашли положение Y (вверх) точки между четырьмя вершинами? Я попробовал это: float diffZ1 = lerp(heights[0], heights[2], zOffse…
31 авг '14 в 22:25
1 ответ

OpenGL TES, возможно ли иметь информацию о смежности в выводе?

Мне интересно, может ли шейдер оценки тесселяции (TES) каким-то образом вывести информацию о смежности, которая затем может быть использована геометрическим шейдером (GS). Давайте возьмем в качестве примера комбинацию TCS/TES, отрисовывающую некотор…
22 мар '17 в 00:51
2 ответа

Расстояние от экрана до линейной полосы в GLSL

При рендеринге линейной полосы, как я могу получить расстояние фрагмента до начальной точки всей полосы вдоль линии в пикселях? При рендеринге одного отрезка прямой между двумя точками в 3D, расстояние между этими двумя точками в пространстве экрана…
24 сен '14 в 12:30
1 ответ

Множественное подразделение икосаэдра с помощью HLSL Geometry Shader

В настоящее время я делю икосаэдр один раз, используя следующий геометрический шейдер: [maxvertexcount(8)] void gs(triangle VS_OUT gin[3], inout TriangleStream<GS_OUT> s) { // p1 // / \ // / \ // m0 --- m1 // / \ / \ // / \ / \ // p0 -- m2 -- …
17 окт '11 в 15:13
1 ответ

Почему геометрический шейдер обрабатывается после вершинного шейдера?

И в конвейерах рендеринга OpenGL, и в Direct3D геометрический шейдер обрабатывается после вершинного шейдера и перед фрагментным / пиксельным шейдером. Теперь очевидно, что обработка геометрического шейдера после фрагментного / пиксельного шейдера н…
0 ответов

Зеркальное отображение с использованием геометрического шейдера

Я пытаюсь выполнить простое зеркальное отображение геометрии на этапе геометрического шейдера. Мои данные вершин выходят правильно, но освещение вершин не подходит для зеркальной геометрии. Для вершин я просто отражаю плоскость XZ, которая отлично п…
16 дек '16 в 21:00
1 ответ

GLSL пройти через проблему геометрии шейдеров

На данный момент у меня есть рабочий вершинный и фрагментный шейдеры. Если я полностью удалю свой геометрический шейдер, то получу ожидаемый куб с цветами в каждой вершине. Но с добавленным геометрическим шейдером геометрия вообще не отображается. В…
17 апр '13 в 04:01
1 ответ

Можно ли нарисовать шар с помощью нитей, используя уникальный геометрический шейдер?

Я хотел бы отобразить простую УФ-сферу (экспортированную из Blender) и генерировать линии с нормальными координатами, используя уникальный геометрический шейдер. В первый раз я написал простой геометрический шейдер, который просто возвращает информа…
05 ноя '13 в 14:58
2 ответа

Вокселизация геометрии шейдера неверна

Я пытаюсь сделать геометрический шейдер (с помощью Shader Maker), чтобы леголизировать модель. Прежде всего, я пытаюсь сделать вокселизацию, но результаты не хороши, и я не могу найти, в чем дело. В следующем коде идея состоит в том, чтобы найти бар…
10 янв '13 в 10:53
1 ответ

Многослойная рендеринг куба карты за один проход

Я пытаюсь создать динамическую кубическую карту с геометрическим шейдером и gl_Layer, где у каждого лица есть собственная текстура, но она не работает так, как ожидалось. Или у меня есть черная кубическая карта без ничего или у меня ничего нет... во…
16 дек '18 в 15:50
2 ответа

Разный цвет для двух сторон плоскости в OpenGL

Я хочу дать разные цвета для двух сторон плоскости для сетки в OpenGL. Могу ли я использовать clip_Distance как переменные, чтобы разрезать лицо на две половины? или путем написания пользовательского геометрического шейдера для создания вершин в пло…
30 дек '18 в 11:05
0 ответов

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

Я пытаюсь написать простой шейдер для рисования трехмерной линии с толщиной, чтобы выучить геометрический шейдер в единстве. Однако я сталкиваюсь с проблемой с выводом из шейдера при установке входного значения геометрического шейдера в топологию li…