luna engine
software engine
Loading...
Searching...
No Matches
luna::renderer::textureAtlas Class Referenceabstract

textureAtlas api. More...

#include <texture.h>

Inheritance diagram for luna::renderer::textureAtlas:
Collaboration diagram for luna::renderer::textureAtlas:

Public Member Functions

virtual ~textureAtlas ()=default
 
virtual uint32_t getTileWidth ()=0
 
virtual uint32_t getTileWidth (const uint16_t &xIndex, const uint16_t &yIndex)=0
 
virtual uint32_t getTileHeight ()=0
 
virtual uint32_t getTileHeight (const uint16_t &xIndex, const uint16_t &yIndex)=0
 
virtual glm::vec2 addTile (const glm::vec2 &dimensions)=0
 
virtual glm::vec2 addTile (const uint32_t &width, const uint32_t &height)=0
 
virtual glm::vec2 getTileDimensions (const glm::vec2 &textureindex)=0
 
virtual glm::vec2 getTextureUv (const glm::vec2 &textureindex)=0
 
- Public Member Functions inherited from luna::renderer::texture
virtual ~texture ()=default
 
virtual uint32_t getWidth () const =0
 
virtual uint32_t getHeight () const =0
 
virtual const std::string & getPath () const =0
 
virtual void setData (void *data, uint32_t size)=0
 
virtual void bind (uint32_t slot=0) const =0
 
virtual bool isLoaded () const =0
 
void setDestroy (const bool &destroy)
 
void setUv (const glm::vec2 &_uvStart, const glm::vec2 &_uvEnd)
 
std::vector< glm::vec2 > getUv ()
 
uint64_t handle ()
 

Private Attributes

uint32_t tileWidth
 
uint32_t tileHeight
 
std::vector< std::vector< glm::vec2 > > tileCustomTexCoords
 

Additional Inherited Members

- Static Public Member Functions inherited from luna::renderer::texture
static ref< texturecreate (const std::string &filePath)
 
static ref< texturecreate (const uint64_t &handle, const glm::vec2 &dimensions)
 
- Protected Attributes inherited from luna::renderer::texture
bool destroy = true
 
uint64_t _handle
 
void * data
 
uint32_t width
 
uint32_t height
 
glm::vec2 uvStart = {0.0f,0.0f}
 
glm::vec2 uvEnd = { 1.0f,1.0f }
 

Detailed Description

textureAtlas api.

See also
texture
Note
see specific platform implementation for explenation with functions

Constructor & Destructor Documentation

◆ ~textureAtlas()

virtual luna::renderer::textureAtlas::~textureAtlas ( )
virtualdefault

Member Function Documentation

◆ addTile() [1/2]

virtual glm::vec2 luna::renderer::textureAtlas::addTile ( const glm::vec2 &  dimensions)
pure virtual

◆ addTile() [2/2]

virtual glm::vec2 luna::renderer::textureAtlas::addTile ( const uint32_t &  width,
const uint32_t &  height 
)
pure virtual

◆ getTextureUv()

virtual glm::vec2 luna::renderer::textureAtlas::getTextureUv ( const glm::vec2 &  textureindex)
pure virtual

◆ getTileDimensions()

virtual glm::vec2 luna::renderer::textureAtlas::getTileDimensions ( const glm::vec2 &  textureindex)
pure virtual

◆ getTileHeight() [1/2]

virtual uint32_t luna::renderer::textureAtlas::getTileHeight ( )
pure virtual

◆ getTileHeight() [2/2]

virtual uint32_t luna::renderer::textureAtlas::getTileHeight ( const uint16_t &  xIndex,
const uint16_t &  yIndex 
)
pure virtual

◆ getTileWidth() [1/2]

virtual uint32_t luna::renderer::textureAtlas::getTileWidth ( )
pure virtual

◆ getTileWidth() [2/2]

virtual uint32_t luna::renderer::textureAtlas::getTileWidth ( const uint16_t &  xIndex,
const uint16_t &  yIndex 
)
pure virtual

Member Data Documentation

◆ tileCustomTexCoords

std::vector<std::vector<glm::vec2> > luna::renderer::textureAtlas::tileCustomTexCoords
private

◆ tileHeight

uint32_t luna::renderer::textureAtlas::tileHeight
private

◆ tileWidth

uint32_t luna::renderer::textureAtlas::tileWidth
private

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