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

OpenGL ES 2.0 делает упор на программируемый конвейер трехмерной графики (по сравнению с конвейером фиксированных функций OpenGL ES 1.1).

20
Возможен ли отложенный рендеринг / затенение в OpenGL ES 2.0?

Я спрашивал об этом в StackOverflow , но здесь может быть больше смысла: Кто-нибудь реализовал отложенный рендеринг / шейдинг в OpenGL ES 2.0? Он не поддерживает MRT, поэтому при наличии только одного цветового буфера это не то, что может быть реализовано «обычным» образом. В частности, я исследую...

17
OpenGL: где мне разместить шейдеры?

Я пытаюсь изучить OpenGL ES 2.0, и мне интересно, что является наиболее распространенной практикой "управления" шейдерами. Я задаю этот вопрос, потому что в примерах, которые я нашел (например, включенный в демоверсию API, поставляемую с android sdk), я обычно вижу все внутри класса GLRenderer, и я...

14
GLSL Shader - изменение оттенка / насыщенности / яркости

Я пытаюсь изменить оттенок изображения, используя фрагментный шейдер GLSL. Я хочу добиться чего-то похожего на слой корректировки оттенка / насыщенности в Photoshop. На следующем изображении вы можете увидеть, что я получил до сих пор. Я хочу изменить оттенок зеленого квадрата, чтобы он выглядел...

12
Создание экземпляров геометрии в OpenGL ES 2.0

Я планирую создавать экземпляры геометрии в OpenGL ES 2.0. По сути, я планирую визуализировать одну и ту же геометрию (стул), возможно, 1000 раз в моей сцене. Каков наилучший способ сделать это в OpenGL ES 2.0? Я рассматриваю прохождение модели view mat4 как атрибут. Поскольку атрибуты относятся к...

12
Должны ли открепить буферы?

Я делаю некоторые тесты с OpenGL ES 2 и получил несколько вопросов, моя текущая программа выглядит так: Init ------- -> create index buffer -> fill index buffer glBufferData … -> create vertex buffer -> fill vertex buffer glBufferData … Draw ------- 1. Apply vertex buffer -> Bind VAO...

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

Я пытаюсь заставить работать скины персонажей на Android. Идея довольно ванильная: у меня есть свои матрицы скинов, и вместе с каждой вершиной я посылаю до четырех индексов матриц и четыре соответствующих веса. Я суммирую их в вершинном шейдере и применяю к каждой вершине. Вот что я делаю в...

11
Как я могу согнуть объект в OpenGL?

Есть ли способ согнуть объект, например, цилиндр или плоскость, используя OpenGL? Я новичок в OpenGL (я использую OpenGL ES 2.0, если это имеет значение, хотя я подозреваю, что математика важнее всего в этом случае, так что она как-то не зависит от версии), я понимаю основы: перевод, поворот,...

11
2D обнаружение столкновений

Давайте предположим, что я использую этот персонаж. (источник: iconbug.com ) Как бы вы реализовали обнаружение столкновений для него? Использование ограничивающего прямоугольника не является хорошим приближением, потому что форма птицы далеко не квадратная. Я думал о том, чтобы внутри объекта была...

10
Использование многопоточности между игровым циклом и openGL

Разговор в контексте игры на основе рендерера openGL: Давайте предположим, что есть два потока: Обновляет игровую логику, физику и т. Д. Для игровых объектов. Делает вызовы openGL для рисования для каждого игрового объекта на основе данных в игровых объектах (этот поток 1 продолжает обновляться)...

10
Листовые текстуры спрайта, собирающие края смежной текстуры

У меня есть собственная подпрограмма спрайта (openGL 2.0), в которой используется простой лист спрайта (мои текстуры расположены горизонтально рядом друг с другом). Так, например, вот тестовый спрайт с двумя простыми текстурами: Теперь, когда я создаю свой спрайтовый объект openGL, я указываю общее...

10
OpenGL ES создает эффект трафарета, используя текстуру

Окружающая обстановка Это среда, в которой я работаю: OpenGL ES 2.0 Симулятор iPhone и iPhone 4 iMac 27 "с использованием NVIDIA GeForce GTX 680MX 2048 МБ Надеюсь, это поможет. Проблема Был поиск высокого и низкого уровня из нескольких источников и нескольких сайтов, включая Stackoverflow, но у...

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
Как работает gluLookAt?

Из моего понимания, gluLookAt( eye_x, eye_y, eye_z, center_x, center_y, center_z, up_x, up_y, up_z ); эквивалентно: glRotatef(B, 0.0, 0.0, 1.0); glRotatef(A, wx, wy, wz); glTranslatef(-eye_x, -eye_y, -eye_z); Но когда я распечатываю ModelViewматрицу, вызов glTranslatef()не работает должным образом....

9
Как отправить несколько матриц в вершинный шейдер?

Я практикую анимацию с использованием костей / скинов. Я пытаюсь отправить шейдеру одну матрицу на вершину. Я могу думать об этих двух подходах. Способ 1 У меня есть одна единая ручка для каждой костной матрицы, как это u_Bone0 = GLES20.glGetUniformLocation(mProgram, "u_Bone[0]"); u_Bone1 =...

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

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

9
Путаница по поводу GLViewport

Я надеюсь, что кто-то может помочь мне понять GLViewport и что произойдет, когда мы изменим его размер Это проиллюстрирует мою путаницу .... Итак, здесь я застрял в середине экрана. Если мой GLViewport соответствует ширине и высоте устройства, я получаю то, что находится на первом (левом)...

8
GL ES: оптимизация фрагмента шейдера

Резюме: я получаю замедление FPS, как только я пытаюсь тонировать спрайты (то есть: умножить текстуру на цвет в фрагментном шейдере) Подробности: Аппаратное обеспечение: iPod touch 4 Я рисую 700 спрайтов на экране, используя glDrawArrays. И да, я собираю все это в один розыгрыш. Ниже показана...

8
Как избежать субпиксельных значений в независимой от разрешения 2D-игре с ортогональной проекцией?

Я пытаюсь сделать независимый от разрешения рендеринг движущихся спрайтов в 2D игре. Мой план - работать в фиксированной системе координат в моем мире (например, 960x540) и использовать ортогональную проекцию, чтобы масштабировать ее вверх или вниз, чтобы соответствовать области просмотра. Я делаю...

8
Какой лучший способ нарисовать много деревьев

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

8
Получение количества фрагментов, прошедших тест глубины

В «современных» средах расширение «NV Occlusion Query» предоставляет метод для получения количества фрагментов, прошедших тест глубины. Однако на iPad / iPhone, использующем OpenGL ES, расширение недоступно. Каков наиболее эффективный подход для реализации аналогичного поведения во фрагментном...