[Feat] (MG_State/Texture, MG_Impl/Texture): glTexBuffer (and implement TextureObjectBuffer accordingly)

This commit is contained in:
2025-12-09 21:20:39 +08:00
parent 3f36248638
commit cb4e6b5f19
13 changed files with 118 additions and 31 deletions
@@ -69,9 +69,9 @@ namespace MobileGL {
UintVec2 m_levelRange = {0, 1000};
};
class TextureMipmapObject : public TextureObjectBase {
class TextureObjectMipmap : public TextureObjectBase {
public:
TextureMipmapObject(TextureTarget target, Uint externalIndex): TextureObjectBase(target, externalIndex) {}
TextureObjectMipmap(TextureTarget target, Uint externalIndex): TextureObjectBase(target, externalIndex) {}
TextureStorageType GetStorageType() const override { return TextureStorageType::Mipmap; }
@@ -85,10 +85,10 @@ namespace MobileGL {
virtual bool IsStorageDirty(TextureUploadTarget uploadTarget, Uint mipmapLevel) const = 0;
};
class TextureObjectWithOneMipmap : public TextureMipmapObject {
class TextureObjectWithOneMipmap : public TextureObjectMipmap {
public:
TextureObjectWithOneMipmap(TextureTarget target, Uint externalIndex)
: TextureMipmapObject(target, externalIndex) {}
: TextureObjectMipmap(target, externalIndex) {}
virtual ~TextureObjectWithOneMipmap() = default;
Uint GetMipmapLevelCount() const override;