Описание тега buffer-objects

Buffer Objects is the general term for unformatted linear memory allocated by the OpenGL context.
1 ответ

Чтение данных из gpu асинхронно с объектами Pixel Buffer

Получение данных из gpu кажется очень медленной задачей, если вы хотите читать их синхронизированными с вашим приложением. Одной из возможностей является асинхронное чтение с помощью объектов Pixel Buffer. К сожалению, я не могу увидеть, как это дел…
30 ноя '15 в 21:11
0 ответов

Чтение содержимого SSBO, возвращаемого glMapBufferRange

Я хочу получить данные из объекта буфера хранения. Сначала я хочу воспользоваться glGetBufferSubData, Но, похоже, что эта функция не существует в OpenGLES, хотя она существует в OpenGL. Тогда я отступаю на glMapBufferRange,Это прекрасно, если я могу…
12 фев '19 в 06:24
0 ответов

OpenGL, занимаясь скайбоксом и желая, чтобы снаружи куба была задрапирована, заметил что-то странное

Я пытался сделать куб, чтобы задняя сторона отбрасывала сторону наружу, я успешно завершил свои показания, так что это сработало. Но я наткнулся на странную вещь, когда я, например, хотел изменить // бот показывает, что он не обновлялся в программе,…
07 апр '18 в 12:27
1 ответ

Когда возвращается glBufferSubData?

Я хочу перенести содержимое очень большого куска памяти в достаточно большой буфер графического процессора, а затем немедленно изменить содержимое памяти на процессоре. Примерно так в псевдокоде: glBindBuffer(/*very_large_buffer*/); glBufferSubData(…
21 июн '17 в 05:04
1 ответ

Можете ли вы использовать несколько целей с одним VBO?

Образец кода: 1. glGenBuffers(1, &VboId); 2. glBindBuffer(GL_ARRAY_BUFFER, VboId); 3. glBufferData(GL_ARRAY_BUFFER, sizeof(Vertices), Vertices, GL_STATIC_DRAW); 4. glVertexAttribPointer(0, 4, GL_FLOAT, GL_FALSE, 0, 0); Таким образом, мы генериру…
01 янв '12 в 03:18
0 ответов

Размер буфера элемента для общего VAO

Я хочу сохранить свою индексированную геометрию в общем хранилище. Если текущий vao заполнен, я создаю еще один vao вместе с буферами для макетов (Pos, Normals, Uvs и т. Д.). Я создаю их с возможностью сказать, N вершин. (Может быть тысячи, я хочу п…
05 май '18 в 10:41
2 ответа

Должен ли VBO быть свободным перед вызовом glDeleteBuffers?

Требуется ли, чтобы мы удалили буферный объект перед его удалением? Что произойдет, если я связал его в VAO и удалил без отмены привязки (привязка к 0)? Будет ли ссылка еще существовать? public void dispose() { glBindVertexArray(0); glDeleteVertexAr…
09 май '14 в 12:41
1 ответ

OpenGL ES 3.0: нулевая копия рендеринга процессора в текстуру?

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

Как связать несколько IBO из одного VBO в OpenGL

Я пытаюсь сделать два разных треугольника с IBO. Я сохранил шесть вершин в одном VBO и попытался получить к ним доступ через два отдельных IBO. Проблема в том, что первый IBO рендерит, а второй нет. CreateVertices и createIndices вызываются при иниц…
31 мар '13 в 22:28
2 ответа

OpenCL Создание буфера

Я довольно новичок в OpenCL и, хотя я все понял до сих пор, но мне трудно понять, как работают буферные объекты. Я не понял, где хранится буферный объект. В этом вопросе Stackru указано, что: Если у вас есть только одно устройство, вероятно (99,99%)…
25 ноя '18 в 21:35
0 ответов

При рисовании в окне предыдущее содержимое обычно отбрасывается? и как лучше их сохранить?

Я пытаюсь ускорить рендеринг (как по задержке, так и по пропускной способности) в редакторе векторных изображений Inkscape, чтобы он был более удобным для художника. Я пытаюсь решить, следует ли рисовать непосредственно в окне или рисовать на промеж…
19 янв '18 в 11:11
1 ответ

Смещения в одном UBO, используемые в нескольких шейдерах

Я использую один единый блок, как это: uniform matrices { mat4 pv_matrix; mat4 screen_matrix; }; в разных шейдерах с одинаковой точкой привязки, определенной явно UniformBlockBinding, Для работы с объектом Uniform Buffer необходимо запросить смещени…
12 сен '17 в 15:03
1 ответ

Opengl 3/4: Могу ли я привязать один и тот же буферный объект к разным целям

В моем конкретном случае я пытаюсь связать объект буфера вершин с единым буферным объектом. Для получения более подробной информации, в моем конвейере рендеринга непрозрачных объектов с отложенным затенением я создаю буфер G, затем визуализирую объе…
05 июн '20 в 02:13
0 ответов

Насколько доступны для совместного использования индексы точек привязки OpenGL между программами и типами буферов и когда мне нужно выполнять повторное связывание?

Объекты буфера хранилища шейдеров OpenGL должны быть привязаны к некоторому индексу точки привязки, а некоторый индекс блока хранилища шейдеров должен быть привязан к тому же индексу точки привязки, если этот блок должен использовать этот SSBO. Анал…
0 ответов

Недетерминированный SSBO имеет слишком маленький GL_BUFFER_DATA_SIZE после glBufferData

Кажется, у меня в буфере хранилища шейдеров есть недетерминированные данные. я использовал apitrace для проверки конечного автомата и заметил следующую последовательность вызовов функций в трассировке: glBindBuffer (GL_SHADER_STORAGE_BUFFER, 3); glB…
1 ответ

Несколько UBO без явного указания индекса точки привязки

Я изучаю объекты унифицированного буфера OpenGL и буферы хранения шейдеров. Я думаю, что этот вопрос относится к ним обоим, но давайте сосредоточимся только на БП. Похоже, что в руководствах говорится, что "индекс блока" и "индекс точки привязки" - …
01 сен '19 в 10:08
1 ответ

Проблемы с SSBO в JOGL

Я пытался инициализировать SSBO и передать его в вычислительный шейдер. int ssbo = glGenBuffers(); FloatBuffer buff = BufferUtils.createFloatBuffer(4); buff.put(0.1f); buff.put(0.4f); buff.put(1.5f); buff.put(0.2f); glBindBuffer(GL_SHADER_STORAGE_BU…
1 ответ

Массивы динамической длины как объекты буфера хранилища шейдеров

Допустим, у меня есть динамическое количество "шаров", к которым я хочу получить доступ в своих шейдерах OpenGL. В C++ данные могут быть такими: struct Ball { glm::vec3 position; glm:vec3 colour; float size; }; std::vector<Ball> all_balls; Есл…
1 ответ

Стриминг PBO, когда именно происходит синхронизация?

Я пытался заставить ffmpeg декодировать и преобразовывать пиксели в формат rgb8, записывать в сопоставленный буфер пикселей и использовать потоковую передачу для обновления текстуры opengl, которая затем отображается в окне sdl. Декодирование и загр…
13 фев '20 в 11:44
1 ответ

OpenGL 4 - UV-координаты для куба с треугольными полосками

У меня есть куб, сделанный из треугольной полосы, и я пытаюсь найти для него UV-координаты. vert = new VBO<Vector3>(new Vector3[] { new Vector3(1, 1, 1), new Vector3(0, 1, 1), new Vector3(1, 1, 0), new Vector3(0, 1, 0), new Vector3(1, 0, 1), n…
29 авг '20 в 18:51