gpt4 book ai didi

c++ - 如何使用开放式 GL、c++ 而不是 Glut/Glu 渲染球体

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:51:03 24 4
gpt4 key购买 nike

<分区>

总的来说,我对 OpenGL 和 C++ 比较陌生,我一直在研究一个自定义框架,我被要求在其中渲染球体。我已经完成研究并设法生成了一个由点组成的球体。如果可能的话,我想对其进行改造,这样我就可以拥有一个由具有半径等属性的三角形制成的实际球体。我用来生成由点组成的球体的代码如下:

Mesh* Mesh::GenerateSphere()
{

const int Y_SEGMENT= 10;
const int X_SEGMENT = 20;
//const float count;


Mesh*m = new Mesh();
m->numVertices = (X_SEGMENT+1)*(Y_SEGMENT+1);
m->type = GL_POINTS;
m->vertices = new Vector3[m->numVertices];

//s->GenerateTriangle();
for (int i = 0; i < Y_SEGMENT+1;i++)
{
float angleY = PI*i / Y_SEGMENT;
float y = cos(angleY);
float xz = sin(angleY);

for (int j = 0; j < X_SEGMENT+1; j++)
{

float angleX = 2*PI*j / X_SEGMENT;
float x = xz*cos(angleX);
float z = xz*sin(angleX);
Vector3 v(x,y,z);
m->vertices[i * (X_SEGMENT+1)+j] = v;
}
}
m->BufferData();
return m;
}

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com