我在cpp中有一些结构
struct Vertex
{
GLfloat position[3];
GLubyte color[4];
GLfloat textCoord[2];
GLfloat normal[3];
}
Vertex verts[5];
我现在需要做的是将大量独特数据放入其中。问题是,它非常受阻,非常混乱和恐怖......
verts[3].position[0] = 0.5; verts[3].position[1] = -0.5; verts[3].position[2] = 0.0;
verts[3].color[0] = 255; verts[3].color[1] = 255; verts[3].color[2] = 0; verts[3].color[3] = 255;
verts[3].normal[0] = verts[3].normal[1] = verts[3].normal[2] = 0.0;
verts[3].textCoord[0] = 0.0; verts[3].textCoord[1] = 0.0;
我怎样才能更方便地使用它?当然我可以从文件中读取它,但出于某种原因我不想这样做。 对我来说,最好的方法是将它填充为数组或其他东西。我想过重载一些运算符,但我找不到任何解决方案,因为大多数只是一个参数。
答案 0 :(得分:0)
编写一个简单的程序来生成测试数据到文件。
修改程序以从文件中输入测试数据。
该文件有两个用途:1)在每次测试运行期间获得相同的数据以进行调试; 2)您可以轻松更改数据,而无需重建程序。
答案 1 :(得分:0)
下面的内容应该对你有用 - 它只是数组初始化:
struct Vertex
{
GLfloat position[3];
GLubyte color[4];
GLfloat textCoord[2];
GLfloat normal[3];
};
Vertex verts[5] =
{
{{0.5, -0.5, 0.0}, {255, 255, 0, 255}, {0.0, 0.0}, {0.0, 0.0, 0.0}},
< ... repeat for other vertices probably with other numbers ... >
};