首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OpenGL渲染顺序导致在背景中绘制前景中的三角形

OpenGL渲染顺序导致在背景中绘制前景中的三角形
EN

Stack Overflow用户
提问于 2011-11-14 08:12:00
回答 1查看 186关注 0票数 0

我在一个世界中画我的三角形,三角形在背景中,但是当我在它后面的时候,三角形并不在前景中(正如它应该的那样)。

我在YouTube上放了一段视频,展示了有问题的here (确保你阅读了描述)

编辑:

代码语言:javascript
复制
//create instance of camera class
mainCamera = [[Camera alloc]init];
//Tell window to log mouse events
[[self window] setAcceptsMouseMovedEvents:YES];
//Timer for updating frames
NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:1/30 target:self selector:@selector(redraw) userInfo:nil repeats:YES];
//keep timer running during event tracking
[[NSRunLoop currentRunLoop] addTimer:timer forMode:NSEventTrackingRunLoopMode];
[[NSRunLoop currentRunLoop] addTimer:timer forMode:NSModalPanelRunLoopMode];

glEnable(GL_DEPTH_TEST);
glClearDepth(1.0f);
glShadeModel(GL_SMOOTH);    
glEnable(GL_LINE_SMOOTH);


glClearColor(0.0f, 0.0f, 0.0f, 0.0f);

glMatrixMode(GL_PROJECTION);
glLoadIdentity();
//self in this case is my view. The code below is getting the size of the view.
gluPerspective(45.0f, [self frame].size.width / [self frame].size.height, 1.0f, 1000.0f);   

glMatrixMode(GL_MODELVIEW);
//creating triangle objects
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-11-14 08:16:01

你有没有用深度缓冲区创建你的上下文?

你用glEnable(GL_DEPTH_TEST);激活深度测试了吗?

您是否使用了适当的glDepthFunc深度测试?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8115897

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档