nCine::RHI::LegacyGL::LegacyGlTexture::Page struct

One GL-addressable piece of the texture.

A texture no larger than MaxPageDimension on either axis has exactly one page covering it whole, which is the case for practically all content; bigger images are tiled by pages (see the class documentation).

Public variables

std::uint32_t GlTexture
The GL texture object holding this page's texels (RGBA8, padded to a power of two).
const void* Data
Base of the page's texels in the CPU store the GL texture was uploaded from.
std::int32_t OriginX
Position of the page's first texel within the source image.
std::int32_t OriginY
std::int32_t Width
Size of the source region the page covers.
std::int32_t Height
std::int32_t PaddedWidth
Power-of-two size of the texture object (the region above padded up).
std::int32_t PaddedHeight
bool Uploaded
Whether this page's GL texture is up to date with the store.