Gfx::ApplyTextureData() currently updates the entire texture
...this is wasteful if only a small part of the texture should be written. The ImageDataAttrs struct either needs a width+height definition, or a a separate ImageUpdateAttrs struct is needed.
already implemented this in my branch along with format and internal format separation for the ability to apply a buffer of float32 for instance and let the GPU convert it to f16 internally.
I can make the change in oryol and create a pull request.
-neshume
This feature is very important for implementation of a texture compression schemes (texture atlas variations of packing many features into a single texture ... or in my case packing a 3D texture array without using the texture array feature ;o)
hmm interesting, if it isn't too much work for you a PR would be appreciated, can't guarantee that I will use it as is, but I'd like to least have a look :)