• Advertisement
Sign in to follow this  

glRenderMode(GL_SELECT) is slow?

This topic is 2816 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi. I'm doing my selection of objects rendered on screen by using
glPushName(object[c].name);
object[c]->draw();
glPopName();
But this is proving to be very slow. ie I can crash the application by maniacally clicking all over the screen. On slower computers it can wait for a half a second or more just to print the name number. Is this supposed to be so slow or did I do something wrong?

Share this post


Link to post
Share on other sites
Advertisement
Selection rendermode may be forcing your driver into a software-only rendering. IIRC it's deprecated in OG3 and hence driver developers may not be making any attempt to make it run efficiently.

Depending on your application, you may find there are several replacement options -- one is to use your app side data structures looking for picks instead of having OpenGL do it. Another option is to use transform feedback to do the work on graphics cards. {This option has its own problems revolving around the rather buggy implementations in some OpenGL drivers}.

We've gone for the latter where available, and currently generate bounding boxes around geometry sections. It happens that this is easy in our particular application.

Share this post


Link to post
Share on other sites
Yup, I tried doing selection with it to my pet project as well, and it was so ridiculously slow, that I had to scrap the damn thing.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement