Expose nvgCreateBgfxTexture() helper function (#3046)

The nvgCreateBgfxTexture() helper function is already implemented in
the nanovg wrapper library, so its useful to expose this function
to the user.

Also expose the NVG_IMAGE_NODELETE flag so this can be passed to the
nvgCreateBgfxTexture() function, to indicate that the caller retains
ownership of the bgfx texture.
This commit is contained in:
Francis Hart 2023-02-27 17:10:53 +02:00 committed by GitHub
parent 9d5b980f5c
commit caa637dbd5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 5 deletions

View File

@ -58,11 +58,6 @@ namespace
NSVG_SHADER_IMG NSVG_SHADER_IMG
}; };
// These are additional flags on top of NVGimageFlags.
enum NVGimageFlagsGL {
NVG_IMAGE_NODELETE = 1<<16, // Do not delete GL texture handle.
};
struct GLNVGtexture struct GLNVGtexture
{ {
bgfx::TextureHandle id; bgfx::TextureHandle id;

View File

@ -20,6 +20,11 @@ struct NVGLUframebuffer
bgfx::ViewId viewId; bgfx::ViewId viewId;
}; };
// These are additional flags on top of NVGimageFlags.
enum NVGimageFlagsGL {
NVG_IMAGE_NODELETE = 1<<16, // Do not delete GL texture handle.
};
/// ///
NVGcontext* nvgCreate(int32_t _edgeaa, bgfx::ViewId _viewId, bx::AllocatorI* _allocator); NVGcontext* nvgCreate(int32_t _edgeaa, bgfx::ViewId _viewId, bx::AllocatorI* _allocator);
@ -76,4 +81,7 @@ void nvgluDeleteFramebuffer(NVGLUframebuffer* _framebuffer);
/// ///
void nvgluSetViewFramebuffer(bgfx::ViewId _viewId, NVGLUframebuffer* _framebuffer); void nvgluSetViewFramebuffer(bgfx::ViewId _viewId, NVGLUframebuffer* _framebuffer);
///
int nvgCreateBgfxTexture(struct NVGcontext *_ctx, bgfx::TextureHandle _id, int _width, int _height, int _flags);
#endif // NANOVG_BGFX_H_HEADER_GUARD #endif // NANOVG_BGFX_H_HEADER_GUARD