Skip to content

[Renderer] Optimizations #85

@Flamaros

Description

@Flamaros

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions