Правильно конвертировать int в uint в вычислительном шейдере - PullRequest
0 голосов
/ 20 апреля 2020

В вычислительном шейдере я использую изображение r16ui, и у меня проблема:

layout (binding = 0, r16ui) uniform writeonly uimage2D texture;
imageStore(texture, iTextureCoords, uvec4(0xffff, 0, 0, 0));

Результат в buffer - это не 0xffff, а 32767. Как правильно конвертировать 0xffff int в uint внутри шейдера?

1 Ответ

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

ОК проблема была решена! Я передал текстуру для вычисления шейдера (посредством bindImage), поскольку GL_R16I не GL_R16UI. Это была проблема.

...