为什么只显示二维 应该是三维的 帮帮忙啊

crazyinit 2009-03-27 03:18:28
#include <iostream>
#include "GL/glut.h"
using namespace std;
void Tringles(void);

int main(int argc,char **argv){
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);
glutInitWindowSize(600,600);
glutCreateWindow("三角形旋转");
glClearColor(0.0,0.0,0.0,0.0);
glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
// glLoadIdentity();
glutDisplayFunc(Tringles);
glutMainLoop();
return 0;
}

void Tringles(){
glBegin(GL_TRIANGLES);
glColor3f(1.0,0.0,0.0);//前
glVertex3f(0.0,1.0,0.0);
glColor3f(0.0,1.0,0.0);
glVertex3f(-1.0,-1.0,1.0);
glColor3f(0.0,0.0,1.0);
glVertex3f(1.0,-1.0,1.0);

glColor3f(1.0,0.0,0.0);//右
glVertex3i(0.0,1.0,0.0);
glColor3f(0.0,1.0,0.0);
glVertex3i(1.0,-1.0,-1.0);
glColor3f(0.0,0.0,1.0);
glVertex3i(-1.0,-1.0,-1.0);

glColor3f(1.0,0.0,0.0);//左
glVertex3i(0.0,1.0,0.0);
glColor3f(0.0,1.0,0.0);
glVertex3i(-1.0,-1.0,-1.0);
glColor3f(0.0,0.0,1.0);
glVertex3i(-1.0,-1.0,1.0);
glEnd();
glFlush();
}
...全文
125 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
taxi 2009-04-07
  • 打赏
  • 举报
回复
是啊,要转转看,还要确保顶点顺序是正确的,如果打开了剔除。
volturi 2009-04-06
  • 打赏
  • 举报
回复
第一个三角形没错,第二个和第三个函数用错了,应该用glVertex3f,用glVertex3i的话回把0.5强制转换为0,实际上会把三角形画成1个点
zzz822163 2009-03-27
  • 打赏
  • 举报
回复
全部代码贴出来,人家叫你旋转,你旋转了吗,不旋转的话3维看起来就是二维的
crazyinit 2009-03-27
  • 打赏
  • 举报
回复
glBegin(GL_TRIANGLES);
glColor3f(1.0,0.0,0.0);//前
glVertex3f(0.0,0.5,0.0);
glColor3f(0.0,1.0,0.0);
glVertex3f(-0.5,-0.5,0.5);
glColor3f(0.0,0.0,1.0);
glVertex3f(0.5,-0.5,0.5);

glColor3f(1.0,0.0,0.0);//右
glVertex3i(0.0,0.5,0.0);
glColor3f(0.0,1.0,0.0);
glVertex3i(0.5,-0.5,-0.5);
glColor3f(0.0,0.0,1.0);
glVertex3i(-0.5,-0.5,-0.5);

glColor3f(1.0,0.0,0.0);//左
glVertex3i(0.0,0.5,0.0);
glColor3f(0.0,1.0,0.0);
glVertex3i(-0.5,-0.5,-0.5);
glColor3f(0.0,0.0,1.0);
glVertex3i(-0.5,-0.5,0.5);

这样还是一个二维的
  • 打赏
  • 举报
回复
坐标点对吗
crazyinit 2009-03-27
  • 打赏
  • 举报
回复
为什么显示的是二维三角形 本来是想显示三维的三角形

19,466

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧