You.i Engine
CYITextAtlas Class Reference

Detailed Description

Class for a text atlas.

#include <graphics/YiTextAtlas.h>

Inheritance diagram for CYITextAtlas:

Public Member Functions

 CYITextAtlas (CYIAssetTextureBase::Filtering textureFiltering=CYIAssetTextureBase::Filtering::Nearest)
virtual ~CYITextAtlas ()
virtual bool CreateNewFontAtlas (uint32_t width, uint32_t height) override
virtual void SetRegion (ssize_t id, void *pReference, YI_REGION region, GlyphData glyphData) override
- Public Member Functions inherited from CYIAbstractTextAtlas
 CYIAbstractTextAtlas ()
virtual ~CYIAbstractTextAtlas ()
virtual void SetRegion (ssize_t id, void *pReference, YI_REGION region, const uint8_t *pData, const int32_t stride) override final
virtual YI_TEXTURE_DETAILSGetTexture (ssize_t id, void *pReference) override
int32_t GetGlyphPadding () const
bool AddGlyph (const uint32_t glyphWidth, const uint32_t glyphHeight, YI_GLYPH_DETAILS *pGlyphDetails, GlyphData glyphData)
- Public Member Functions inherited from CYITextureAtlas
 CYITextureAtlas ()
virtual ~CYITextureAtlas ()
bool CreateNewAtlas (uint32_t unWidth, uint32_t unHeight, size_t pages)
YI_REGION GetRegion (int32_t width, int32_t height)
void UpdateAtlas ()
const std::shared_ptr< CYIBitmapGetBitmap () const
const std::vector< glm::ivec4 > * GetNodes (size_t page) const
virtual std::shared_ptr< CYIAssetTextureGetGLTexture () const
const std::shared_ptr< CYIAssetTextureGetTextureAsset ()
YI_LOADED_TEXTURESGetLoadedTextures ()
void SetTextureFilter (CYIAssetTexture::Filtering minificationFilter, CYIAssetTexture::Filtering magnificationFilter)
void SetTextureWrap (CYIAssetTexture::WrapMode wrapS, CYIAssetTexture::WrapMode wrapT)
void SetName (const CYIString &name)
const CYIStringGetName () const
float GetAtlasPercentageUsed () const
bool RenderAtlasToPng (const CYIString &filePath) const
void Reset ()

Additional Inherited Members

- Protected Member Functions inherited from CYIAbstractTextAtlas
void SetGlyphPadding (int32_t glyphPadding)
virtual bool CompareGlyphDetails (YI_GLYPH_DETAILS *pLeft, YI_GLYPH_DETAILS *pRight) const
- Protected Member Functions inherited from CYITextureAtlas
int32_t Fit (size_t page, size_t unIndex, int32_t width, int32_t height)
void Merge (size_t page)
- Protected Attributes inherited from CYITextureAtlas
CYIString m_name
std::shared_ptr< CYIBitmapm_Image
std::vector< glm::ivec4 > m_Nodes [4]
std::shared_ptr< CYIAssetTexturem_pTextureAsset
int32_t m_width
int32_t m_height
size_t m_pages
CYIAssetTexture::TextureConfig m_textureConfiguration
size_t m_unPixelsUsed
size_t m_unLastUpdatedSize

Constructor & Destructor Documentation

◆ CYITextAtlas()

CYITextAtlas::CYITextAtlas ( CYIAssetTextureBase::Filtering  textureFiltering = CYIAssetTextureBase::Filtering::Nearest)

◆ ~CYITextAtlas()

virtual CYITextAtlas::~CYITextAtlas ( )

Member Function Documentation

◆ CreateNewFontAtlas()

virtual bool CYITextAtlas::CreateNewFontAtlas ( uint32_t  width,
uint32_t  height 

Should be implemented to do any internal initialization of the text atlas such as creating the atlas buffer. The width and height of the buffer are given as parameters.

Implements CYIAbstractTextAtlas.

◆ SetRegion()

virtual void CYITextAtlas::SetRegion ( ssize_t  id,
void *  pReference,
YI_REGION  region,
GlyphData  glyphData 

Should be implemented to write the given data to the atlas buffer and store a reference to it as a YI_TEXTURE_DETAILS.

[in]idA user provided ID. The implementation can use this for whatever it wants
[in]pReferenceA user provided pointer. The implementation can use this for whatever it wants
[in]regionThe region in the atlas to write the data to
[in]glyphDataThe glyph data to write into the atlas

Implements CYIAbstractTextAtlas.

The documentation for this class was generated from the following file: