|
CeresEngine 0.2.0
A game development framework
|
A texture that can be imported into the renderer. More...
#include <CeresEngine/Texture/Texture.hpp>
Public Member Functions | |
| 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. | |
| virtual Async< Bitmap > | getBitmap (UInt32 layer=0, UInt32 mip=0) const =0 |
Gets a bitmap pixel data for the given layer and mip level. | |
| virtual Async | setBitmap (const Bitmap &bitmap, UInt32 layer=0, UInt32 mip=0)=0 |
Sets a new bitmap pixel data for the given layer and mip level. | |
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 |
Protected Attributes | |
| TextureProperties | mProperties |
| A structure that describes properties of an texture. | |
Private Types | |
| using | super = TResource< Texture > |
Friends | |
| class | TUserTypeInfo< Texture > |
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. | |
A texture that can be imported into the renderer.
|
private |
|
explicit |
Creates a new texture.
| properties | The texture properties to initialize with. |
|
explicit |
Creates a new texture.
| properties | The texture properties to initialize with. |
|
overridenoexcept |
Destroys the texture object.
|
pure virtual |
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.
Implemented in CeresEngine::MemoryTexture, CeresEngine::StreamingTexture, and CeresEngine::GPUTexture.
Texture extent.
By default (1, 1, 1).
|
inlinenoexcept |
Hardware texture format. By default Format::RGBA8UNorm.
|
inlinenoexcept |
A structure that describes properties of an texture.
|
noexcept |
Determines if the texture is a streaming texture.
|
pure virtual |
Sets a new bitmap pixel data for the given layer and mip level.
Implemented in CeresEngine::MemoryTexture, CeresEngine::StreamingTexture, and CeresEngine::GPUTexture.
|
friend |
|
protected |
A structure that describes properties of an texture.