渲染的标准方法是首先定义 VBO,然后使用layout in
layout (location = 0) in vec4 point;
void main(){
gl_Position = point;
}
但是,使用 SSBO 可以达到完全相同的结果
layout(std430, binding = 0) buffer Points{
vec4 points[];
};
void main(){
gl_Position = points[gl_VertexIndex];
}
我想知道这两种方法之间是否存在任何性能差异。
难道我们不能一直使用 SSBO 并完全摆脱 VBO 吗?
当然,较旧的硬件可能不支持 SSBO,但如果我不关心这种兼容性,那么真正阻止我的是什么?