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

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

OpenGL - шейдеры (2.1) На экране ничего не отображается

Итак, я создаю игру и хочу поддержать OpenGL версии 2.1 с шейдерами. Я реализовал все, что мог, в соответствии с онлайн-уроками, и когда я запускаю игру, ничего не появляется, Примечание: если шейдеры заменены на последнюю версию, я поддерживаю все …
08 ноя '13 в 13:16
1 ответ

Как применить цвет к треугольнику с OpenGL

Я пытаюсь создать простую программу с openGL. Цель состоит в том, чтобы создать треугольник с цветами для каждой вершины. Проблема в том, что я не могу понять, как применить цвета к вершинам треугольника. Мой вершинный шейдер: #version 330 layout(lo…
08 ноя '18 в 14:49
1 ответ

OpenGLES2 Shader: Положение освещения и движение камеры?

Я попытался добавить освещение в свое приложение OpenGLES2, следуя инструкциям на http://www.learnopengles.com/android-lesson-two-ambient-and-diffuse-lighting/ В отличие от предыдущего урока, у меня есть движения камеры FPS. В вершинном шейдере я же…
1 ответ

Карта глубины белая - webgl

Я использую шейдеры, чтобы нарисовать карту глубины на моем изображении. Вот мой код шейдера: вершинный шейдер: void main(void) { gl_PointSize = aPointSize; gl_Position = uPMatrix * uMVMatrix * vec4(aVertexPosition, 1.0); vColor = aVertexColor; visd…
1 ответ

gl_Position не будет перемещать вершину, когда я передам позицию шейдеру с атрибутом?

Попробуй использовать createVertices() переместить coords атрибут: Plunkr живой код: Вопрос: как я могу переместить мою gl_Position с атрибутом? Это работает, когда я вручную устанавливаю vec4 значение: let gl; let shaderProgram; initGl(); createSha…
06 окт '17 в 01:52
1 ответ

Как переместить вершинное преобразование в вершинный шейдер

Мне нужна ваша помощь! Я пытаюсь переместить часть преобразования вершины из кода процессора в вершинный шейдер, вот код cpp преобразования вершины: //calculate the transform matrix of a refelcting surface //@point: a point on the surface //@normal:…
18 мар '13 в 01:44
2 ответа

GLSL Shader - Как рассчитать высоту текстуры?

В этом вопросе я спросил, как создать "зеркальную" текстуру, и теперь я хочу переместить это "зеркальное" изображение вниз по оси Y на высоту изображения. Я пробовал что-то вроде этого с разными значениями высоты, но я не могу найти правильное решен…
06 мар '12 в 07:03
1 ответ

Как мне умножить вектор на "ModelViewProjectionMatrix" в openGL?

У меня есть строка в вершинном шейдере gl_Position = gl_ModelViewProjectionMatrix * vertex; Мне нужно сделать то же самое вычисление без шейдера, например: float vertex[4]; float modelviewProjection[16]; glGetFloatv(GL_MODELVIEW_MATRIX, modelviewPro…
10 апр '11 в 12:10
1 ответ

Визуализация текстуры прямоугольника с помощью GLSL

Я создал класс, который отображает видеокадры (на Mac) в пользовательский объект кадрового буфера. В качестве входных данных у меня есть текстура YUV, и я успешно создал фрагментный шейдер, который принимает в качестве входных данных 3 текстуры прям…
18 май '12 в 07:41
1 ответ

Проблема с использованием объекта атрибутов в RawShaderMaterial

Мне трудно создавать свой собственный материал, используя ThreeJs RawShaderMaterial учебный класс. В настоящее время у меня есть: var geometry = new THREE.RingGeometry(/* params */); //geometry.vertices.length = 441; var vertexFooAttribs = [/* 441 i…
17 ноя '14 в 12:43
1 ответ

glVertexAttribPointer() работает только с первым потоком

Я пытаюсь использовать glVertexAttribPointer(), чтобы передать некоторые данные моему вершинному шейдеру. Дело в том, что он работает только с атрибутом FIRST... Вот мой код OpenGL: struct Flag_vertex { GLfloat position_1[ 8 ]; GLfloat position_2[ 8…
24 янв '13 в 13:52
0 ответов

Three.js Sky Sphere рендерится вбок

У меня работает моя небесная сфера... кроме... она рендерится вбок... "нижняя" и "верхняя" области расположены вдоль базовой плоскости. Я подумал, что это может быть как-то связано с тем, что у меня есть ось "у" в качестве направления "вверх" для мо…
1 ответ

SharpDX - ошибка fxc.exe при компиляции файла hlsl

Я начинаю изучать SharpDX и голографический шаблон для C#. При компиляции проекта у меня возникает ошибка при компиляции файла шейдера. var vertexShaderByteCode = ShaderBytecode.CompileFromFile("Content/Shaders/VertexSharderShared.hlsl", "VS", "vs_5…
22 янв '18 в 14:13
1 ответ

OpenGL ES 2.0: glVertexAttribPointer vs vec3

Я пытаюсь нарисовать некоторые точки с помощью GL_POINTS, и заставить его работать как можно быстрее. У меня есть две переменные, которые необходимо передать шейдеру - позиция (vec2), а также размер точки (float) - и я не уверен в самом быстром спос…
01 мар '17 в 08:22
1 ответ

При использовании Context3DVertexBufferFormat.BYTES_4, каков диапазон значений одного поля?

Если я заполню буфер вершин, используя метод байтового массива: //Example: var ba:ByteArray = new ByteArray(); //Write vertex #0: ba.writeFloat(-.5); ba.writeFloat(-.5); ba.writeUnsignedInt(0); ba.writeUnsignedInt(0); //Write vertex #1: ba.writeFloa…
1 ответ

Вершинный шейдер с массивами ввода

Учитывая вершинный шейдер, который выглядит примерно так #version 400 compatibility const int max_valence = 6; in int valence; in vec3 patch_data[1 + 2 * max_valence]; ... Как правильно отобразить данные на правильные атрибуты вершин? Я пытаюсь испо…
24 ноя '12 в 03:55
0 ответов

Запись в текстуру в OpenGL 3.2 / GLSL 1.50, а затем запись текстуры на экран

Я хочу реализовать отложенное затенение в OpenGL. У меня есть фреймворк, поддерживающий OpenGL. Прямое затенение с помощью обычного вершинного шейдера и фрагментного шейдера работает нормально, масштабирование и преобразование не проблема. Но реализ…
03 июл '15 в 10:36
0 ответов

Ошибка HLSL X3000: нераспознанный идентификатор

У меня нет опыта работы с hlsl и я не могу понять, как исправить эту ошибку. Вот мой файл SimpleVertexShader.hlsl cbuffer PerApplication : register (b0) { matrix projectionMatrix; } cbuffer PerFrame : register (b1) { matrix viewMatrix; } cbuffer Per…
09 янв '15 в 01:02
1 ответ

Frag Shader, если еще странное поведение

Ниже приведена упрощенная версия текущей шейдерной системы, над которой я работаю, она извлекает данные из одноразового вычислительного шейдера в вершинную программу: v2f, а затем анализирует эти данные в v2fc - эта структура хранит статические данн…
13 сен '15 в 18:02
0 ответов

Матрица вершинных шейдеров нарушена?

OpenGL ES 2.0 на Android: очень простой шейдер, который работает практически на всех устройствах, но не на Huawei Ascend P6: вершинный шейдер: attribute vec2 a_position; attribute vec2 a_texcoords; uniform mat4 u_matrix; varying mediump vec2 v_texco…