Make the ResourcePool hold FBOs as a per-context resource.
authorSteinar H. Gunderson <sgunderson@bigfoot.com>
Wed, 26 Mar 2014 00:02:20 +0000 (01:02 +0100)
committerSteinar H. Gunderson <sgunderson@bigfoot.com>
Wed, 26 Mar 2014 00:02:20 +0000 (01:02 +0100)
commit86cdfc6ea4318cfe6fd5d4bef51daf00f480973a
treef458a7c08a19d9c5e5233a941de77007d88e4276
parent983fe15061b6e199877577b363a9f2fa102cf107
Make the ResourcePool hold FBOs as a per-context resource.

This is an attempt to get out of the FBO sharability mess (unfortunately
we can't just stop having persistent FBOs, due to NVidia performance).
We now require the client to tell us whenever a context is going away,
and we try to be more careful about not deleting them in the wrong context.

Also, we assumed FBO names were globally unique, which isn't necessarily
true, so re-key them.

For good measure, we were deleting FBOs off the freelist from the front,
not the back as we should have -- fixed.
effect_chain.cpp
effect_chain.h
resource_pool.cpp
resource_pool.h