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

10
Что означают компоненты gl_TexCoord [0]?

Каковы различия между gl_TexCoord[0].s, gl_TexCoord[0].t gl_TexCoord[0].pи gl_TexCoord[0].x, gl_TexCoord[0].y gl_TexCoord[0].z? Я так понимаю gl_TexCoord[0].x, gl_TexCoord[0].y gl_TexCoord[0].zэто пиксельные координаты? Но что это gl_TexCoord[0].s, gl_TexCoord[0].t gl_TexCoord[0].pзначит и где я...

10
Сортировка объектов перед рендерингом

Я пытаюсь реализовать граф сцены, и во всех встреченных мной статьях рассказывается о сортировке объектов. Например, вы сортируете свои объекты по «материалу». Теперь, пока я не сел и не начал это реализовывать, я воспринимал это как должное, потому что это имело смысл. Но теперь мне интересно, что...

9
Отложенное затенение - как объединить несколько источников света?

Я начинаю с GLSL и реализовал простое отложенное затенение, которое выводит G-буфер с позициями, нормалями и альбедо. Я также написал простой точечный световой шейдер. Теперь я рисую сферу для точечного источника света, и вывод идет в буфер освещения. Проблема в том, как объединить результаты...

9
Оптимизация производительности шейдера с тяжелыми фрагментами

Мне нужна помощь в оптимизации следующего набора шейдеров: 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; /*...

9
Использование двух шейдеров вместо одного с операторами IF

Я работал над переносом относительно большого исходного кода ES 1.1 opengl на ES 2.0. В OpenGL ES 2.0 (что означает, что все используют шейдеры), я хочу нарисовать чайник три раза. Первый, с однородным цветом (аля старый glColor4f). Второй, с цветом для каждой вершины (чайник также имеет свой...

9
Как вычислить касательные и битангентные векторы

У меня есть текстура, загруженная в three.js, затем переданная в шейдеры. В вершинном шейдере я вычисляю нормаль и сохраняю в переменную вектор uv. <script id="vertexShader" type="x-shader/x-vertex"> varying vec3 N,P; varying vec2 UV; void main() { gl_Position= projectionMatrix *...

9
Как визуализировать 2D направленный поток воды сверху вниз?

Я работаю над довольно графической 2D-игрой на основе плиток, вдохновленной Dwarf Fortress. Я нахожусь в стадии реализации реки в игровом мире, которая охватывает несколько плиток, и я рассчитал направление потока для каждой плитки, как показано ниже красной линией в каждой плитке. Для справки о...

9
Почему я не могу использовать оператор '> =' с Vector3s?

Я пытаюсь получить прямоугольник для перемещения между двумя позициями, которые я называю _positionAи _positionB. Оба имеют тип Vector3. Прямоугольник движется просто отлично. Однако, когда он достигает, _positionBон не движется в противоположном направлении, как это должно быть. Я вернулся в код,...

9
Влияние петель переменной длины на шейдеры GPU

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

9
Первые проблемы с отображением теней

Я впервые реализовал базовое отображение теней в OpenGL с использованием шейдеров, и столкнулся с некоторыми проблемами. Ниже вы можете увидеть пример моей визуализированной сцены: Процесс отображения теней, которому я следую, состоит в том, что я рендерил сцену в буфер кадров, используя матрицу...

8
Афиша рендеринга без искажений?

Я использую стандартный подход к рекламному щиту в Unity, который в порядке, но не идеален: transform.LookAt(camera) Проблема состоит в том, что это вносит искажение к краям области просмотра, особенно когда угол поля зрения увеличивается. Это не похоже на идеальный рекламный щит, который вы могли...

8
Принудительно перезагрузить VS Soution Explorer при добавлении нового скрипта c # через Unity3d?

Когда я создаю C # script ( Create -> C# Script) через Unity3d или удаляю его из Unity3d- Visual Studioпоказывает мне окно с предупреждением. это раздражает. Есть ли способ заставить "ReloadAll" в обозревателе решений без...

8
Разрыв экрана во фрагментном шейдере на графических процессорах R9 380

у двух игроков возникла проблема с моей игрой, когда экран использует разрыв, когда он использует фрагментный шейдер, но, похоже, он делает это только для игроков с графическим процессором R9 380. Вот как это выглядит в игре: После работы с одним из игроков я сузил его до использования шейдера, но...

8
Пакет GLSL плавает в текстуру RGBA

Я хочу составить обычные модели на основе треугольников и частицы с трассировкой лучей с разумной частотой кадров. WebGL не позволяет вам писать gl_FragDepthво фрагментном шейдере. У вас не может быть нескольких целей рендеринга, но вы можете рендерить в текстуру RGBA, а затем использовать эту...

8
Редакторы шейдеров GLSL для Linux

Существуют ли хорошие IDE для Linux, которые позволяют нам редактировать шейдеры GLSL и визуализировать их эффект? Примечание: Shader Designer от Typhoon Labs - хороший вариант, но я ищу альтернативы, поскольку у этого программного обеспечения есть некоторые проблемы с Ubuntu...

8
Геометрический шейдер для нескольких примитивов

Как я могу создать геометрический шейдер, который может обрабатывать несколько примитивов? Например, при создании геометрического шейдера для треугольников я определяю макет следующим образом: layout(triangles) in; layout(triangle_strip, max_vertices=3) out; Но если я использую этот шейдер, то...