我一直在尝试使用以下代码来创建一个全局的无绑定纹理句柄列表,这些纹理句柄是使用UBO发送到GPU的。
struct Material
{
sampler2D diff;
sampler2D spec;
sampler2D norm;
};
layout(std140,binding = 2) uniform Materials
{
Material materials[64];
};
但是,我认为我在c ++中错误地填充了缓冲区,没有考虑正确的偏移量等。我似乎找不到关于std140布局如何处理sampler2D的任何信息。我应该怎么做?我需要考虑哪些补偿?