Selection and feedback done in software or hardware?

Hi all,

I have written an application which use feedback for getting vertex information every time a frame is rendered. When using feedback, my application performance drop considerably.

Why is feedback so slow? I have read on newsgroups that selection and feedback was done with a software fallback in graphic card drivers. But the posts I have read are 5 years old. I would imagine that since then, the feedback vertex processing would be done in hardware and the driver would simply read back vertex data that the hardware generated.

Since selection and feedback must work when using a GLSL vertex shader, I suppose that graphic card driver do not use a software fallback since they would have to be able to emulate GLSL shader which is complicated I suppose.

So does anyone if selection and feedback is processed in hardware or in software with current hardware and why it is so slow?

it was mentioned here multiple times as well, that it is done in software (just “search” this forum, and you’ll find more info)

Yes, it’s software. It will emulate your VS in software.
Perhap you have many vertices in your scene and I’m sure SSE is used but perhaps it is still too slow.

"I would imagine that since then, the feedback vertex processing would be done in hardware "

Nah, it doesn’t belong in a graphics API.

I would imagine that since then, the feedback vertex processing would be done in hardware
Quite the opposite. Feedback and selection are very likely to be officially deprecated in the next version of OpenGL :slight_smile: