Сбой программы при доступе к SSBO в шейдере - PullRequest
1 голос
/ 27 апреля 2020

Каждый раз, когда я пытаюсь получить доступ к SSBO, я получаю сообщение о том, что atio6axx.pdb not loaded.

Драйверы моей видеокарты (AMD) обновляются, но, как ни странно, при поиске решения, которое я нашел эта ветка , которая была опубликована всего за несколько часов go, может ли это быть проблемой с драйверами? Я искал свой P C и нашел .dll, но не .pdb, может ли это быть проблемой? У меня VS настроено на загрузку символов с серверов Microsoft Symbol, но не с серверов символов NuGet.org.

Соответствующий код:

Шейдер (упрощенный, чтобы показывать только необходимый код):

#version 430 core

layout(binding = 5, std430) buffer test
{
    float t[];
};

out vec4 colour;

void main()
{
    colour = vec4(test.t[0], test.t[1], test.t[2], 1);
}

Создание SSBO:

float test[3] { 0, 10, 0 };

glGenBuffers(1, &ss_id);
glBindBuffer(GL_SHADER_STORAGE_BUFFER, ss_id);
glBufferData(GL_SHADER_STORAGE_BUFFER, sizeof(float) * 3, test, GL_STATIC_READ);
glBindBufferBase(GL_SHADER_STORAGE_BUFFER, 5, ss_id);
glBindBuffer(GL_SHADER_STORAGE_BUFFER, 0);

Любая помощь приветствуется

1 Ответ

0 голосов
/ 27 апреля 2020

Для всех, кто имел эту проблему, я узнал, почему это происходит. Я имел в виду данные в SSBO с test.t[0], когда вместо этого должно было быть просто t[0].

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...