You.i Engine
IYIMaterialFactory Class Referenceabstract

Detailed Description

Material Factory interface for the generation of all things texture and shader related.

#include <renderer/YiMaterialFactory.h>

Public Types

enum  YI_TEXTURE_TYPE { YI_2D }
 
enum  YI_COLORSPACE {
  YI_RGBA8888,
  YI_RGBA4444,
  YI_RGB565,
  YI_DEPTHSTENCIL_COMPONENT,
  YI_BGRA8888,
  YI_R8,
  YI_RG88
}
 

Public Member Functions

virtual ~IYIMaterialFactory ()
 
virtual std::shared_ptr< IYIGPUObjectCreateTexture (int32_t nWidth, int32_t nHeight, YI_TEXTURE_TYPE eType, YI_COLORSPACE eSpace)=0
 
virtual std::shared_ptr< IYIGPUObjectCreateFramebuffer ()=0
 
virtual std::shared_ptr< IYIGPUObjectCreateScreenFramebuffer ()=0
 
virtual std::shared_ptr< IYIUniformBufferObjectCreateUniformBuffer ()=0
 

Member Enumeration Documentation

Color spaces

Enumerator
YI_RGBA8888 
YI_RGBA4444 
YI_RGB565 
YI_DEPTHSTENCIL_COMPONENT 
YI_BGRA8888 
YI_R8 
YI_RG88 

Texture types

Enumerator
YI_2D 

Constructor & Destructor Documentation

virtual IYIMaterialFactory::~IYIMaterialFactory ( )
inlinevirtual

Destructor.

Member Function Documentation

virtual std::shared_ptr<IYIGPUObject> IYIMaterialFactory::CreateFramebuffer ( )
pure virtual

Function to create an FBO object

virtual std::shared_ptr<IYIGPUObject> IYIMaterialFactory::CreateScreenFramebuffer ( )
pure virtual

Function to create an FBO that points to the screen buffer

virtual std::shared_ptr<IYIGPUObject> IYIMaterialFactory::CreateTexture ( int32_t  nWidth,
int32_t  nHeight,
YI_TEXTURE_TYPE  eType,
YI_COLORSPACE  eSpace 
)
pure virtual

Function to create an empty 2D hardware texture buffer object.

virtual std::shared_ptr<IYIUniformBufferObject> IYIMaterialFactory::CreateUniformBuffer ( )
pure virtual

Function to create a uniform buffer object.


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