Cogs.Core
|
Public Member Functions | |
void | initialize (class GraphicsDeviceWebGPU *graphicsDevice) |
virtual void | annotate (TextureHandle handle, const StringView &name) override |
Associate a name with an object for use in graphics debugging. | |
virtual TextureHandle | loadTexture (const TextureDescription &desc, const TextureData *data) override |
Load a texture from the given description. | |
virtual void | releaseTexture (TextureHandle textureHandle) override |
Release the texture with the given textureHandle. | |
virtual TextureViewHandle | createTextureView (TextureViewDescription &view) override |
Create a texture view used to bind a limited view of the texture data to the rendering pipeline. | |
virtual void | releaseTextureView (const TextureViewHandle &handle) override |
Release the given texture view. | |
virtual SamplerStateHandle | loadSamplerState (const SamplerState &state) override |
Load a sampler state object. | |
virtual void | releaseSamplerState (SamplerStateHandle handle) override |
Release the sampler state with the given handle. | |
virtual void | generateMipmaps (TextureHandle handle) override |
Use the graphics device to generate mipmaps for the texture with the given texture handle. | |
virtual void | releaseResources () override |
Release all allocated texture resources. | |
virtual void * | getNativeHandle (TextureHandle handle) override |
Get the device-specific handle (D3D texture pointer, OpenGL texture ID etc) associated with the given texture handle. | |
TextureHandle | loadTexture (const uint8_t *bytes, uint32_t width, uint32_t height, TextureFormat format, uint32_t flags) final |
TextureHandle | loadTexture (const uint8_t *bytes, uint32_t width, uint32_t height, TextureFormat format, uint32_t numSamples, uint32_t flags) final |
TextureHandle | loadTexture (const TextureDescription &desc, const TextureData *data)=0 |
Load a texture from the given description. | |
virtual TextureHandle | loadTexture (const unsigned char *bytes, unsigned int width, unsigned int height, TextureFormat format, unsigned int flags=0)=0 |
Load a texture using the given data to populate the texture contents. | |
virtual TextureHandle | loadTexture (const unsigned char *bytes, unsigned int width, unsigned int height, TextureFormat format, unsigned int numSamples, unsigned int flags)=0 |
Load a texture using the given data to populate the texture contents. | |
virtual TextureHandle | loadTexture (const TextureDescription &desc, const TextureData *data)=0 |
Load a texture from the given description. | |
![]() | |
TextureHandle | loadTexture (const uint8_t *bytes, uint32_t width, uint32_t height, TextureFormat format, uint32_t flags) final |
TextureHandle | loadTexture (const uint8_t *bytes, uint32_t width, uint32_t height, TextureFormat format, uint32_t numSamples, uint32_t flags) final |
TextureHandle | loadTextureMipMaps (const uint8_t **bytes, size_t numLevels, const uint32_t *widths, const uint32_t *heights, TextureFormat format, uint32_t flags=0) final |
TextureHandle | loadTextureArray (const uint8_t **bytes, const size_t arraySize, const size_t numLevels, const uint32_t *widths, const uint32_t *heights, TextureFormat format, uint32_t flags=0) final |
TextureHandle | loadCubeMap (const uint8_t **bytes, const size_t arraySize, const size_t numLevels, const uint32_t *widths, const uint32_t *heights, TextureFormat format, uint32_t flags=0) final |
TextureHandle | load (ResourceDimensions target, const uint8_t **bytes, const size_t arraySize, const size_t numLevels, const uint32_t *widths, const uint32_t *heights, TextureFormat format, uint32_t numSamples, uint32_t flags) |
TextureHandle | loadTexture (const TextureDescription &desc, const TextureData *data)=0 |
Load a texture from the given description. | |
virtual TextureHandle | loadTexture (const unsigned char *bytes, unsigned int width, unsigned int height, TextureFormat format, unsigned int flags=0)=0 |
Load a texture using the given data to populate the texture contents. | |
virtual TextureHandle | loadTexture (const unsigned char *bytes, unsigned int width, unsigned int height, TextureFormat format, unsigned int numSamples, unsigned int flags)=0 |
Load a texture using the given data to populate the texture contents. | |
virtual TextureHandle | loadTexture (const TextureDescription &desc, const TextureData *data)=0 |
Load a texture from the given description. | |
![]() | |
virtual void | annotate (TextureHandle handle, const StringView &name) |
Associate a name with an object for use in graphics debugging. | |
virtual TextureHandle | loadTexture (const unsigned char *bytes, unsigned int width, unsigned int height, TextureFormat format, unsigned int flags=0)=0 |
Load a texture using the given data to populate the texture contents. | |
virtual TextureHandle | loadTexture (const unsigned char *bytes, unsigned int width, unsigned int height, TextureFormat format, unsigned int numSamples, unsigned int flags)=0 |
Load a texture using the given data to populate the texture contents. | |
virtual TextureHandle | loadTextureMipMaps (const unsigned char **bytes, size_t numLevels, const unsigned int *widths, const unsigned int *heights, TextureFormat format, unsigned int flags=0)=0 |
Load a texture with multiple mipmap levels using the given data to populate the texture contents. | |
virtual TextureHandle | loadTextureArray (const unsigned char **bytes, const size_t arraySize, const size_t numLevels, const unsigned int *widths, const unsigned int *heights, TextureFormat format, unsigned int flags=0)=0 |
Load an array texture with mipmaps using the given data to populate the texture contents. | |
virtual TextureHandle | loadCubeMap (const unsigned char **bytes, const size_t arraySize, const size_t numLevels, const unsigned int *widths, const unsigned int *heights, TextureFormat format, unsigned int flags=0)=0 |
Load a cube map texture with mipmaps using the given data to populate the texture contents. | |
virtual TextureHandle | loadTexture (const TextureDescription &desc, const TextureData *data)=0 |
Load a texture from the given description. | |
virtual void | uploadTextureData (TextureHandle textureHandle, const TextureData &data, uint32_t layer_offset=0, uint32_t face_offset=0, uint32_t level_offset=0) |
Upload a texture from the given description. | |
virtual void | releaseTexture (TextureHandle textureHandle)=0 |
Release the texture with the given textureHandle. | |
virtual void | releaseNativeTexture (TextureNativeHandle nativeHandle) |
Release a native texture handle. | |
virtual TextureViewHandle | createTextureView (TextureViewDescription &viewDescription)=0 |
Create a texture view used to bind a limited view of the texture data to the rendering pipeline. | |
virtual void | releaseTextureView (const TextureViewHandle &handle)=0 |
Release the given texture view. | |
virtual SamplerStateHandle | loadSamplerState (const SamplerState &state)=0 |
Load a sampler state object. | |
virtual void | releaseSamplerState (SamplerStateHandle handle)=0 |
Release the sampler state with the given handle. | |
virtual void | generateMipmaps (TextureHandle textureHandle)=0 |
Use the graphics device to generate mipmaps for the texture with the given texture handle. | |
virtual void * | getNativeHandle (TextureHandle textureHandle)=0 |
Get the device-specific handle (D3D texture pointer, OpenGL texture ID etc) associated with the given texture handle. | |
virtual void | releaseResources ()=0 |
Release all allocated texture resources. | |
Public Attributes | |
SafeResourceMap< TextureHandle, TextureWebGPU > | textures |
SafeResourceMap< TextureViewHandle, TextureViewWebGPU > | textureViews |
ResourceMap< SamplerStateHandle, SamplerStateWebGPU > | samplerStates |
class GraphicsDeviceWebGPU * | graphicsDevice |
Definition at line 27 of file TexturesWebGPU.h.
|
overridevirtual |
Associate a name with an object for use in graphics debugging.
Reimplemented from Cogs::ITextures.
Definition at line 64 of file TexturesWebGPU.cpp.
References Cogs::StringView::data().
|
overridevirtual |
Create a texture view used to bind a limited view of the texture data to the rendering pipeline.
viewDescription | Description of the texture view. |
Implements Cogs::ITextures.
Definition at line 203 of file TexturesWebGPU.cpp.
References Cogs::TextureViewDescription::layerIndex, Cogs::TextureViewDescription::levelIndex, Cogs::TextureViewDescription::numLayers, Cogs::TextureViewDescription::numLevels, and Cogs::TextureViewDescription::texture.
|
overridevirtual |
Use the graphics device to generate mipmaps for the texture with the given texture handle.
textureHandle | Valid handle to a previously created texture object. The texture must have been created with the TextureFlags::GenerateMipMaps flag. |
Implements Cogs::ITextures.
Definition at line 308 of file TexturesWebGPU.cpp.
|
inlineoverridevirtual |
Get the device-specific handle (D3D texture pointer, OpenGL texture ID etc) associated with the given texture handle.
textureHandle | Valid handle to a previously created texture object. |
Implements Cogs::ITextures.
Definition at line 48 of file TexturesWebGPU.h.
void Cogs::TexturesWebGPU::initialize | ( | class GraphicsDeviceWebGPU * | graphicsDevice | ) |
Definition at line 59 of file TexturesWebGPU.cpp.
|
overridevirtual |
Load a sampler state object.
state | Sampler state structure used to initialize the sampler state object on the graphics device. |
Implements Cogs::ITextures.
Definition at line 244 of file TexturesWebGPU.cpp.
References Cogs::SamplerState::addressModeS, Cogs::SamplerState::addressModeT, Cogs::SamplerState::addressModeW, Cogs::SamplerState::comparisonFunction, Cogs::SamplerState::filter, and Cogs::SamplerState::maxAnisotropy.
|
overridevirtual |
Load a texture from the given description.
desc | Texture description. |
data | Optional texture content. |
Implements Cogs::TexturesCommon.
Definition at line 70 of file TexturesWebGPU.cpp.
Referenced by Cogs::RenderTargetsWebGPU::createDepthStencilTarget().
|
virtual |
Load a texture from the given description.
desc | Texture description. |
data | Optional texture content. |
Implements Cogs::TexturesCommon.
|
virtual |
Load a texture from the given description.
desc | Texture description. |
data | Optional texture content. |
Implements Cogs::TexturesCommon.
|
final |
Definition at line 10 of file TexturesCommon.cpp.
|
final |
Definition at line 11 of file TexturesCommon.cpp.
|
virtual |
Load a texture using the given data to populate the texture contents.
bytes | Pointer to texture data. If nullptr is given an empty texture with the given dimensions and format is created. |
width | Width of the texture in pixels. |
height | Height of the texture in pixels. |
format | Format of the texture data. |
flags | Texture flags used to determine which operations are supported by the created texture. |
Reimplemented from Cogs::TexturesCommon.
|
virtual |
Load a texture using the given data to populate the texture contents.
bytes | Pointer to texture data. If nullptr is given an empty texture with the given dimensions and format is created. |
width | Width of the texture in pixels. |
height | Height of the texture in pixels. |
format | Format of the texture data. |
numSamples | Number of samples to use per pixel in the texture. |
flags | Texture flags used to determine which operations are supported by the created texture. |
Reimplemented from Cogs::TexturesCommon.
|
overridevirtual |
Release all allocated texture resources.
Implements Cogs::ITextures.
Definition at line 313 of file TexturesWebGPU.cpp.
Referenced by Cogs::GraphicsDeviceWebGPU::releaseResources().
|
overridevirtual |
Release the sampler state with the given handle.
handle | Valid handle to a previously created sampler state. |
Implements Cogs::ITextures.
Definition at line 298 of file TexturesWebGPU.cpp.
|
overridevirtual |
Release the texture with the given textureHandle.
textureHandle | Valid handle to a previously created texture object. |
Implements Cogs::ITextures.
Definition at line 192 of file TexturesWebGPU.cpp.
|
overridevirtual |
Release the given texture view.
handle | Valid handle to a previously created texture view. |
Implements Cogs::ITextures.
Definition at line 234 of file TexturesWebGPU.cpp.
class GraphicsDeviceWebGPU* Cogs::TexturesWebGPU::graphicsDevice |
Definition at line 57 of file TexturesWebGPU.h.
ResourceMap<SamplerStateHandle, SamplerStateWebGPU> Cogs::TexturesWebGPU::samplerStates |
Definition at line 55 of file TexturesWebGPU.h.
SafeResourceMap<TextureHandle, TextureWebGPU> Cogs::TexturesWebGPU::textures |
Definition at line 53 of file TexturesWebGPU.h.
SafeResourceMap<TextureViewHandle, TextureViewWebGPU> Cogs::TexturesWebGPU::textureViews |
Definition at line 54 of file TexturesWebGPU.h.