#include <GL/glut.h>
typedef GLfloat point2[2];
point2 v[]={
{-1.0,-0.58},{1.0,-0.58},{0.0,1.15}};
int n;
void mydisplay()
{
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(0.5,0.5,0.4);
glBegin(GL_LINE);
glVertex2d(-0.5,-0.5);
glVertex2d(-0.5,0.5);
glVertex2d(0.5,0.5);
glVertex2d(0.5,-0.5);
glEnd();
glFlush();
}
void triangle(point2 a,point2 b,point2 c)
{
//glBegin(GL_TRIANGLES);
glVertex2fv(a);
glVertex2fv(b);
glVertex2fv(c);
//glEnd();
}
void divide_triangle(point2 a,point2 b,point2 c,int m)
{
point2 v0,v1,v2;
int j;
if(m>0)
{
for (j=0;j<2;j++)
{
v0[j]=(a[j]+b[j])/2;
}
for (j=0;j<2;j++)
{
【OpenGL】细分三角形
最新推荐文章于 2025-01-05 19:02:22 发布
该博客介绍了一个使用OpenGL进行三角形细分渲染的示例代码。通过递归地将三角形分割为更小的三角形,实现了对原始三角形的细化,从而达到平滑图形的效果。代码中定义了点的结构,设置颜色,初始化窗口,并在main函数中设置了细分级别和渲染流程。

最低0.47元/天 解锁文章
1277

被折叠的 条评论
为什么被折叠?



