-
Notifications
You must be signed in to change notification settings - Fork 7
Description
OpenGL :
Preallocate textureIds with glGenTextures id, and try to reuse it if possible. Sending a null ptr as buffer will release GPU memory.
We can also find some types on batching and scenegraph here :
http://qt-project.org/doc/qt-5.0/qtquick/qtquick-visualcanvas-scenegraph.html
http://qt-project.org/doc/qt-5/qtquick-visualcanvas-scenegraph-renderer.html
We can also use PBO (Pixels Buffer Objects), those function doesn't lock the client (because it use DMA and no buffer copy is done on the client side of driver).
I don't think VRAM mapping can be done on older openGL version, but these can avoid some other memory copy if textures are directly uncompressed on the VRAM memory. This require to change the Image API.
We may have to check texture swapping for fast update too (driver will be able to read the first version of the texture when we are uploading the new one without locks).
Some hints :
http://www.slideshare.net/CassEveritt/beyond-porting