关于NV卡和OpenGL的Select模式的问题

hoory 2009-04-21 11:44:56
我使用OpenGL的Select模式做鼠标拣选,但在NV卡下会报运行时错误,请问怎么回事啊?我大显卡是9800GTX+,驱动已更新至官方最新版本。
我的拣选代码如下:
uint sel_buf[256];
int hits;
memset(sel_buf, 0, sizeof(uint) * 256);

glSelectBuffer(256, sel_buf);
glRenderMode(GL_SELECT);
glInitNames();
glPushName(0);

scmat4 pick_mat;
scgl_pick_mat(&pick_mat, pick_x, pick_y, cam->scr_width, cam->scr_height, 3, 3);
scmulmat4(&pick_mat, &pick_mat, cam->get_viewproj_mat());

scshader *shader = scene->res.sh.get_pick_sh();
shader->bind();
shader->set_uniform(scshader_mat4, "mat_pick", &pick_mat);
shader->set_uniform(scshader_mat4, "mat_world", brick->get_world_mat());

scvec3 vbuf[6];
scclvec3s(vbuf, 6);
int ibuf[20];
memset(ibuf, 0, 20 * sizeof(int));

glLoadName(1);

glEnableClientState(GL_VERTEX_ARRAY);
glBindBuffer(GL_ARRAY_BUFFER, 0);
glVertexPointer(3, GL_FLOAT, 0, vbuf);

glEnableClientState(GL_INDEX_ARRAY);
glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0);
glIndexPointer(GL_INT, 0, 0);

glDrawElements(GL_LINES, 10, GL_UNSIGNED_INT, ibuf);

代码执行到glDrawElements会跳出错误,请高手指教!
...全文
102 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
hoory 2009-04-21
  • 打赏
  • 举报
回复
我自己用RTT实现了一个ogl select的模拟,拣选过程就完全正常。。。这到底是怎么回事啊。。。

4,506

社区成员

发帖
与我相关
我的任务
社区描述
图形图像/机器视觉
社区管理员
  • 机器视觉
  • 迪菲赫尔曼
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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