OpenGL 点数组
OpenGL point array
我需要像这样使用浮点数组绘制体素:
{ v1.x, v1.y, v1.z, v1.size, v2.x, [...] }
在我的例子中,出于测试目的看起来像这样:
{ -0.6f, -0.4f, -0.0f, 1, 0.6f, -0.4f, -0.0f, 1, 0.f, 0.6f, -0.0f, 1, }
如何将它们加载到 GPU,然后如何在着色器中获取位置和大小值?
您需要创建一个顶点缓冲区对象,然后使用特定的 API 将其传递给 GPU。在着色器中,您可以访问每个顶点的数据。看看 API glBufferData,例如 https://open.gl/drawing.
我不确定你是否真的需要顶点的 Size/number,但如果你需要它,你需要它通过 glUniform1f 作为统一传递。
我需要像这样使用浮点数组绘制体素:
{ v1.x, v1.y, v1.z, v1.size, v2.x, [...] }
在我的例子中,出于测试目的看起来像这样:
{ -0.6f, -0.4f, -0.0f, 1, 0.6f, -0.4f, -0.0f, 1, 0.f, 0.6f, -0.0f, 1, }
如何将它们加载到 GPU,然后如何在着色器中获取位置和大小值?
您需要创建一个顶点缓冲区对象,然后使用特定的 API 将其传递给 GPU。在着色器中,您可以访问每个顶点的数据。看看 API glBufferData,例如 https://open.gl/drawing.
我不确定你是否真的需要顶点的 Size/number,但如果你需要它,你需要它通过 glUniform1f 作为统一传递。