opengl拾取遇到的问题

下一页盛夏花开 2017-03-09 03:29:28
我用opengl画了一个三维的管线,这条三维的管线是在三个坐标面上画的。现在想实现鼠标点击某一点都出现这个点的坐标。我把整个管线当做一个图元然后给它命名,然后在选择模式下投影到相关平面,进栈出栈进行拾取。但是一直无法实现拾取拾取到管线上的所有点,只能拾取部分点,大神们帮我看一下是什么问题?代码如下:
OnLButton(UINT nFlags,CPoint point)
{
int xPos = point.x;
int yPos = point.y;
GLint hits,viewport[4];
glGetIntegerv(GL_VIEWPORT,viewport);
glRenderMode(GL_SELECT);
glMatrixMode(GL_PROJECTION);
glPushMatrix();
glLoadIdentity();
gluPickMatrix((GLdouble)xPox,(GLdouble)viewport[3]-yPos,1,1,viewport);
gluPerspective(30.5f,aspect_ratio,1.0f,100.f);
RenderScene();
hits = glRenderMode(GL_RENDER);
if(hits == 1)
{
MessageBox(("nvnvnvnvnnvn"));
}
glMatrixMode(GL_PROJECTION);
glPopMatrix();
glMatrixMode(GL_MODELVIEW);
}
Void RenderScene()
{
glMstrixMode(GL_MODELVIEW);
glLoadIdentity();
glPushMatrix();
glInitNames();
glPushName(0);

glPushMatrix();
glLoadName(1);
DrawPipes(One_Pipe.pAllCount,One_Pipe.pVectors);
glPopMatrix();
}
...全文
586 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 1 楼 zhao4zhong1 的回复:
搜网络教程“学OpenGL编3D游戏”。
可是我在网上没有找到这个教程
赵4老师 2017-03-10
  • 打赏
  • 举报
回复
搜网络教程“学OpenGL编3D游戏”。
赵4老师 2017-03-10
  • 打赏
  • 举报
回复
引用 2 楼 lv0918_qian 的回复:
引用 1 楼 zhao4zhong1 的回复:
搜网络教程“学OpenGL编3D游戏”。
可是我在网上没有找到这个教程
https://www.baidu.com/s?wd="学OpenGL编3D游戏"

604

社区成员

发帖
与我相关
我的任务
社区描述
异构开发技术
社区管理员
  • OpenCL和异构编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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