Вопросы с тегом «opengl»

11
Имеет ли значение, изучаю ли я OpenGL или Direct3D?

Являются ли различия между этими двумя API незначительными деталями реализации, которые означают, что как только я изучу один, я могу использовать его для всего? Или есть причины для изучения одного, а не другого, если я хочу иметь возможность использовать его вообще без необходимости переучивать...

11
Нужно ли повторно связывать униформу или атрибуты при смене шейдерных программ?

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

10
Как убрать четырехугольник в прямоугольник?

tl; dr: математическая задача в проективной геометрии: как найти матрицу камеры 4x4, которая дает проекцию, как показано ниже, такую, что точки A, B, C, D находятся где-то на краях блока устройства (например, нормализованное устройство OpenGL координаты), а углы блока блока падают где-то разумно...

10
Причина теневых прыщей

Я знаю, как работает отображение теней, но я не понимаю причину появления прыщей! Может кто-нибудь сказать мне простой причиной появления прыщей в тени и как это связано с разрешением карты...

10
Имеет ли значение порядок выравнивания и декларации униформы?

В разделе 6.4 Буферы констант книги Практический рендеринг и вычисления с Direct3D 11 (страницы 325, 326) упоминается: По умолчанию компилятор HLSL пытается выровнять константы так, чтобы они не охватывали несколько регистров float4. [...] Упаковка для постоянного буфера HLSL также может быть...

9
Каковы пробелы образца во время преобразования сканирования?

В этом учебном пособии , Очень часто бывает так, что отображаются треугольники с общими ребрами. OpenGL предлагает гарантию того, что, пока позиции вершин общего ребра идентичны, при преобразовании сканирования не будет пробельных пробелов. 1 Что такое пробелы в выборке при конвертации? 2 При каких...

9
Возможно ли альфа-смешивание нескольких целей рендеринга, используя указанную альфа?

Скажем, у меня есть цели рендеринга от 0 до N, а в RT 0 в четвертом компоненте есть альфа-канал, заданный материалом, маской или чем-то еще. Возможно ли, чтобы аппаратный композитор смешивал цели рендеринга с 1 по N, используя альфа первой цели...

9
Несколько окон просмотра с современным OpenGL?

Я использую SDL2 . В настоящее время мой единственный шейдер имеет матрицу MVP и преобразует точки с ее помощью. Я рассчитываю свою матрицу просмотра и проекции для камеры с GLM: glm::lookAt(pos, pos + forward, up); glm::perspective(fov, aspectRatio, zNear, zFar); Я искал его, но я могу найти...

9
OpenGL GLSL - фильтр обнаружения краев Собеля

Что касается этой темы, я успешно внедрил фильтр Sobel Edge Detection в GLSL. Вот фрагмент кода шейдера фильтра: #version 330 core in vec2 TexCoords; out vec4 color; uniform sampler2D screenTexture; mat3 sx = mat3( 1.0, 2.0, 1.0, 0.0, 0.0, 0.0, -1.0, -2.0, -1.0 ); mat3 sy = mat3( 1.0, 0.0, -1.0,...

9
Это хорошая практика, чтобы использовать все доступные текстурные блоки?

При применении нескольких текстур к сетке, например, для рельефного отображения, я обычно привязываю текстуры к первым нескольким фиксированным текстурным блокам, например: diffuse = unit 0, bump = unit 1, specular = unit 2, затем продолжаю использовать их для каждого разные сетки с разными...

9
Создание общих вершинных нормалей на GPU

Я в основном преуспел в переносе реализации Marching Cubes с CPU на вычислительные шейдеры OpenGL, но я еще не справился с нормой и задаюсь вопросом, как лучше это сделать. Моя реализация имеет дело именно с бинарными полями (я пытаюсь смоделировать трехмерные фрактальные функции, у которых пока...

9
Расчет на вершину в тесселяции OpenGL

Я пытаюсь реализовать позиционное моделирование одежды с использованием аппаратного тесселяции. Это означает, что я хочу просто загрузить контрольный квад на графическую карту, а затем использовать тесселяцию и затенение геометрии для создания узлов в ткани. Эта идея следует за бумагой: Huynh,...

9
Каков современный эквивалент списков отображения?

Списки отображения были функцией OpenGL, которая теоретически могла ускорить любую часть API, сохраняя группу команд для последующего использования. В моем понимании, это имеет большой смысл в отношении текущих усилий по сокращению накладных расходов на драйвер. Списки отображения были объявлены...

9
Оптимальный доступ к памяти при использовании справочных таблиц на GPU?

Я изучаю изоповерхностные алгоритмы на графическом процессоре для проекта бакалавра (особенно концентрируясь только на двоичных входных / выходных данных вокселей, а не на полях с действительными значениями). Итак, у меня есть реализация CPU старых добрых марширующих кубов, запущенная в...

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

На данный момент, при рендеринге моей сцены и итерации по графу сцены, для каждого узла его матрица модели вычисляется из матрицы модели родителя и позы узла сцены. Это довольно просто и уже уменьшает количество умножений матриц до одного умножения на узел и кадр. Но все эти умножения матриц должны...

8
Shadow Mapping артефакты

Я играл с теневым отображением в OpenGL, используя текстуры глубины. Глубина текстуры хорошая, и я могу нанести ее на сцену, но у меня есть странные артефакты на задней стороне объекта: У меня вопрос, что является причиной этого и как я могу это исправить? Фрагментный шейдер, который я использую,...

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

Я пытаюсь выяснить, как лучше всего создать текстуру OpenGL с помощью вычислительного шейдера. До сих пор я читал, что объекты пиксельного буфера хороши для неблокирующей передачи CPU -> GPU, и что вычислительные шейдеры способны читать и записывать буферы независимо от того, как они связаны. В...

8
Выполняются ли вызовы отрисовки параллельно, последовательно или одновременно?

Это продолжение вопроса, на который я ответил на GameDev SE. Вопрос заключался в том, является ли glDrawArraysInstanced в OpenGL параллельным при рисовании этих экземпляров? Мой ответ был в следующих строках: «Графический процессор может выполнять несколько вызовов отрисовки параллельно в...

8
Рендеринг тумана под водой

Мне известно о glFog, который смешивается между цветом тумана и цветом поверхности в зависимости от расстояния до камеры, например: Уравнения даже приведены в документах . Но туман наносится сразу перед камерой. Я пытаюсь визуализировать поверхность воды и хочу, чтобы она имела некоторую глубину,...