基于OpenGL的C++自适应网格
我需要用OpenGL为正方形创建一个自适应网格,但我不知道如何创建。 基本上,我用4个点来创建我的正方形基于OpenGL的C++自适应网格,c++,opengl,mesh,C++,Opengl,Mesh,我需要用OpenGL为正方形创建一个自适应网格,但我不知道如何创建。 基本上,我用4个点来创建我的正方形 p* p1 = new p(-10.0f, 10.0f, 0.0f); p* p2 = new p(10.0f, 10.0f, 0.0f); p* p3 = new p(10.0f, -10.0f, 0.0f); p* p4 = new p(-10.0f, -10.0f, 0.0f); 然后我希望能够创建一个网格,在那里我可以改变组成网格的正方形的数量。为此,我有2个FOR循环,其中我使用
p* p1 = new p(-10.0f, 10.0f, 0.0f);
p* p2 = new p(10.0f, 10.0f, 0.0f);
p* p3 = new p(10.0f, -10.0f, 0.0f);
p* p4 = new p(-10.0f, -10.0f, 0.0f);
然后我希望能够创建一个网格,在那里我可以改变组成网格的正方形的数量。为此,我有2个FOR循环,其中我使用glBeginGL_LINE_循环和4个glVertex3f创建每个正方形,但我不知道如何定义这些点的坐标
for (int j=-10; j<nb; j+=nb)
{
for (int i=-10; i<nb; i+=nb)
{
glBegin(GL_LINE_LOOP);
glVertex3f (i, j, 0);
glVertex3f (i, j+1, 0);
glVertex3f (i+1, j+1, 0);
glVertex3f (i+1, j, 0);
glEnd();
}
}
请发布您需要帮助的实际代码。不幸的是,您发布的代码与问题不太相关,而您询问的关于两个for循环的实际代码不存在。@martin_pr我编辑了我的文章。这个代码的问题是,它在我的正方形中创建了小正方形,但我不能修改正方形的数量。是的,内部循环的每次迭代都会创建一个边长为1的正方形。假设nb变量是初始化为10的int,将其更改为更高的值将生成更多的平方。编辑:啊,你可能希望for循环中的i+=1和j+=1。@martin_pr是的,你是对的,但我希望有更大的平方,因为我的nb变量被初始化为2。当nb=4时,我应该有4个正方形,而当nb等于100时,我应该有100个正方形