Skip to content

Fix wrong glBuffer usage

Martin Heistermann requested to merge glBuffer-bugfixes into master

On some GL implementations (mesa software rendering, some AMD cards on Linux), picking would stop working when switching between pick targets.

The previous logic only updates a buffer when deemed necessary, however in any case it is first invalidated via glBufferData.

I suppose nvidia graphics, where this worked, did not clear the buffer and with some luck we got an unchanged buffer.

Fix: only use glBufferData if we actually need to change the buffer.

The same applies to the regular getBuffer() member function. Maybe this is responsible for some weird render bugs I have observed in the past.

Edited by Martin Heistermann

Merge request reports