|
CeresEngine 0.2.0
A game development framework
|
A texture type that is backed by an in-memory bitmap. More...
#include <CeresEngine/Texture/Texture.hpp>
Classes | |
| struct | LayerData |
| Data per-layer of the texture. More... | |
| struct | MipData |
| A mip-level bitmap data for a texture. More... | |
Public Member Functions | |
| MemoryTexture (TExtent3< UInt32 > extent, Format format=Format::RGBA8UNorm) | |
Creates a new empty StreamingTexture. | |
| MemoryTexture (const Bitmap &bitmap) | |
Creates a new StreamingTexture from an existing bitmap. | |
| Async< Bitmap > | getBitmap (UInt32 layer=0, UInt32 mip=0) const override |
Gets a bitmap pixel data for the given layer and mip level. | |
| Async | setBitmap (const Bitmap &bitmap, UInt32 layer=0, UInt32 mip=0) override |
Sets a new bitmap pixel data for the given layer and mip level. | |
Public Member Functions inherited from CeresEngine::TResource< MemoryTexture, Texture > | |
| ResourceHandle< MemoryTexture > | getResourceHandle () const noexcept |
| Generates a hash for the provided type. | |
| SPtr< MemoryTexture > | getShared () noexcept |
| Gets a shared pointer to the resource. | |
| SPtr< const MemoryTexture > | getShared () const noexcept |
| Gets a shared pointer to the resource. | |
| const ResourceTypeInfo & | getResourceType () const noexcept override |
| Returns the resource type information descriptor. | |
| TResource (ResourceData &data, InputStream &dataStream) | |
| void | serialize (OutputStream &dataStream) const override |
Serializes a resource by writing data to dataStream. | |
Public Member Functions inherited from CeresEngine::Texture | |
| Texture (const TextureProperties &properties) | |
| Creates a new texture. | |
| Texture (ResourceData &resourceData, const TextureProperties &properties) | |
| Creates a new texture. | |
| ~Texture () noexcept override | |
| Destroys the texture object. | |
| bool | isStreaming () const noexcept |
| Determines if the texture is a streaming texture. | |
| const TextureProperties & | getProperties () const noexcept |
| A structure that describes properties of an texture. | |
| const TExtent3< UInt32 > & | getExtent () const noexcept |
| Texture extent. | |
| Format | getFormat () const noexcept |
Hardware texture format. By default Format::RGBA8UNorm. | |
Public Member Functions inherited from CeresEngine::TResource< Texture > | |
| ResourceHandle< Texture > | getResourceHandle () const noexcept |
| Generates a hash for the provided type. | |
| SPtr< Texture > | getShared () noexcept |
| Gets a shared pointer to the resource. | |
| SPtr< const Texture > | getShared () const noexcept |
| Gets a shared pointer to the resource. | |
| const ResourceTypeInfo & | getResourceType () const noexcept override |
| Returns the resource type information descriptor. | |
| TResource (ResourceData &data, InputStream &dataStream) | |
| void | serialize (OutputStream &dataStream) const override |
Serializes a resource by writing data to dataStream. | |
Public Member Functions inherited from CeresEngine::Resource | |
| Resource () | |
Default constructor for the Resource class. | |
| Resource (ResourceData &data) | |
Creates a new Resource instance by passing a ResourceData instance. | |
| virtual | ~Resource () noexcept=default |
Resource virtual destructor. | |
| ResourceManager * | getResourceManager () const noexcept |
| HResource | getResourceHandle () const noexcept |
| Generates a hash for the provided type. | |
| UUID | getResourceID () const noexcept |
| HResource | getParentResource () const noexcept |
| A parent resource to which this resource is attached to. | |
| SPtr< ResourceMetadata > | getResourceMetadata () const noexcept |
| A pointer to the user-defined resource metadata. | |
| const PackagePtr & | getPackage () const noexcept |
| The package from which the resource was loaded from. | |
| template<typename T = Resource> | |
| SPtr< T > | getShared () noexcept |
| Gets a shared pointer to the resource. | |
| template<typename T = Resource> | |
| SPtr< const T > | getShared () const noexcept |
| Gets a shared pointer to the resource. | |
| Resource (ResourceData &data, InputStream &dataStream) | |
Creates a new resource by reading data from dataStream. | |
Public Member Functions inherited from CeresEngine::IReflectable | |
| virtual | ~IReflectable () noexcept=default |
Private Types | |
| using | super = TResource< MemoryTexture, Texture > |
Private Attributes | |
| Vector< LayerData > | mLayers |
| A vector of per-layer data. | |
Friends | |
| class | TUserTypeInfo< MemoryTexture > |
Additional Inherited Members | |
Static Public Member Functions inherited from CeresEngine::Resource | |
| template<typename Processor > | |
| static constexpr void | reflect (Processor &&RTTI) |
| Executes the given processor for every field of the struct. | |
Protected Member Functions inherited from CeresEngine::Resource | |
| HResourceStream | createStream (const ResourceStreamFlags &flags=ResourceStreamFlag::Default) |
| Creates a new resource stream. | |
| void | destroyStream (HResourceStream &stream) |
| Destroys a stream. | |
| void | markAsDirty () |
| Marks the resource as dirty. | |
Protected Attributes inherited from CeresEngine::Texture | |
| TextureProperties | mProperties |
| A structure that describes properties of an texture. | |
A texture type that is backed by an in-memory bitmap.
|
explicit |
Creates a new empty StreamingTexture.
| data | The texture data object to create the texture from. |
| extent | The texture extent. |
| format | The texture format. |
Creates a new StreamingTexture from an existing bitmap.
| data | The texture data object to create the texture from. |
| extent | The texture extent. |
| format | The texture format. |
|
overridevirtual |
Gets a bitmap pixel data for the given layer and mip level.
If either the layer (or mip level) are missing, a null pixel data is returned.
Implements CeresEngine::Texture.
|
overridevirtual |
Sets a new bitmap pixel data for the given layer and mip level.
Implements CeresEngine::Texture.
|
friend |