OpenGL导入3D模型,为什么显示的都是2D的,怎样才能显示3D的?

如图所示,我用OpenGL打开一个3D模型,为什么都显示的是这样的2D平面图,怎样才能显示3D效果,代码如下:#include"obj.h"#include#includ... 如图所示,我用OpenGL打开一个3D模型,为什么都显示的是这样的2D平面图,怎样才能显示3D效果,代码如下:#include"obj.h" #include #include man obj; void myDisplay() { glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BITS); obj.Man_View(); } void myInit() { glClearColor(1.0, 1.0, 1.0, 0.0);glColor3f(0.5, 0.5, 0.5);glMatrixMode(GL_PROJECTION);glLoadIdentity();gluPerspective(30.0, 64 / 48.0, 2.0, 4.0);glMatrixMode(GL_MODELVIEW);glLoadIdentity();gluLookAt(0.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0);glEnable(GL_TEXTURE_2D);glEnable(GL_DEPTH_TEST);} void main(int argc, char ** argv) { obj.In_File("man.obj"); glutInit(&argc, argv); glutInitDisplayMode(GLUT_DEPTH | GLUT_RGB); glutInitWindowSize(640.0, 480.0); glutInitWindowPosition(0.0, 0.0); glutCreateWindow("man"); glutDisplayFunc(myDisplay); myInit(); glutMainLoop();求OpenGL高手解答,是不是我没有载入纹理图片,或者是没有使用光照等。 展开
 我来答
archmageee4
2016-06-03 · TA获得超过1516个赞
知道大有可为答主
回答量:1581
采纳率:78%
帮助的人:921万
展开全部
你没有打开光照嘛.所以模型上没有光的效果,这导致模型看起来不立体
追问
我后面改了,加了光照也是一样的啊,后来我加入glPolygonMode(GL_FRONT_AND_BACK, POINT)只看网格的时候就是立体的了,是不是因为没加材质啊,这个obj文件没有材质文件的
追答
没有材质也就罢了.关键是必须有法线信息.而且要打开光照系统. 这两个条件都满足才能有立体的效果.
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式