OpenGL的一个难题,把高手难住了!

zxywest 2003-10-31 02:25:04
如果一个给定三角形与视点方向平行(即三角形法向量与视点方向垂直),在非线框模式下在framebuffer中将没有这个三角形对应的像素。例如:如果视点方向为z轴负向,用下面的代码画三角形,屏幕上(framebuffer)没有变化。
glBegin(GL_TRIANGLES );
glVertex3f(-1.0, 1.0, 0.0);
glVertex3f(1.0, 1.0, 0.0);
glVertex3f(0.0, 1.00, 1.0);
glEnd();

哪位高人遇到这样的问题.
说明:因为要读取depth信息,如果出项这种情况,该三角形的depth信息就会丢掉。改成线框模式不行,因为如果前后裁减面很近(前后面都与这个三角形相交),在裁减体内除了边上的两个点,内部就没有东西了。只能用非线框模式,但是就会遇到最开始提到的问题.
高手们,想想如何解决。
...全文
17 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
友情UP
magicprogrammer 2003-11-07
  • 打赏
  • 举报
回复
哦,顺便说一句。认真学习,天天向上
magicprogrammer 2003-11-07
  • 打赏
  • 举报
回复
glSetPolygonMode(GL_FRONT_AND_BACK,GL_FILL);
根本原因是,你没有认真理解多边形的正面和反面。
lsl7909 2003-11-07
  • 打赏
  • 举报
回复
没看明白,关注
legendsky 2003-11-02
  • 打赏
  • 举报
回复
friendly up
fanfyj 2003-11-01
  • 打赏
  • 举报
回复
up
SlayerCarrier 2003-11-01
  • 打赏
  • 举报
回复
非线框模式?英文名叫什么?怎么没听过啊。

19,468

社区成员

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

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