|
Kanzi Graphics Engine
|
2D image texture. More...
#include "kzu_resource_common.h"#include "kzu_texture_base.h"#include <system/debug/kzs_error.h>#include <system/kzs_types.h>#include <system/kzs_header.h>Functions | |
| kzsError | kzuImageTextureCreate (const struct KzuResourceManager *resourceManager, kzString name, struct KzuResourceLoader *loader, struct KzuImageTexture **out_imageTexture) |
| Creates a 2D image texture that loads the data when needed using the given resource loader. More... | |
| kzsError | kzuImageTextureRegisterToFactory (const struct KzuFactory *factory) |
| Registers image texture type to the factory. More... | |
| kzsError | kzuImageTextureCreateFromImage (const struct KzuResourceManager *resourceManager, kzString name, const struct KzcImage *image, enum KzuTextureFilter filter, enum KzuTextureWrap wrap, kzFloat anisotropy, struct KzuImageTexture **out_imageTexture) |
| Creates a 2D image texture from the given image. More... | |
| kzsError | kzuImageTextureCreateFromMemory (const struct KzuResourceManager *resourceManager, kzString name, enum KzuTextureChannels channels, kzUint width, kzUint height, const kzByte *data, enum KzuTextureFilter filter, enum KzuTextureWrap wrap, kzFloat anisotropy, struct KzuImageTexture **out_imageTexture) |
| Creates a 2D image texture from a byte array. More... | |
| kzsError | kzuImageTextureInitializeFromImage (struct KzuImageTexture *imageTexture, const struct KzcImage *image, enum KzuTextureFilter filter, enum KzuTextureWrap wrap, kzFloat anisotropy) |
| Initializes a 2D image texture from an image with the given arguments. More... | |
| kzsError | kzuImageTextureInitializeFromMemory (struct KzuImageTexture *imageTexture, enum KzuTextureChannels channels, kzUint width, kzUint height, const kzByte *data, enum KzuTextureFilter filter, enum KzuTextureWrap wrap, kzFloat anisotropy) |
| Initializes a 2D image texture from memory with the given arguments. More... | |
| struct KzuTexture * | kzuImageTextureToTexture (const struct KzuImageTexture *imageTexture) |
| Converts 2D image texture to texture. More... | |
| struct KzuImageTexture * | kzuImageTextureFromTexture (const struct KzuTexture *texture) |
| Converts texture to 2D image texture. More... | |
| struct KzuGPUResource * | kzuImageTextureToGPUResource (const struct KzuImageTexture *imageTexture) |
| Converts 2D image texture to GPU resource. More... | |
| struct KzuImageTexture * | kzuImageTextureFromGPUResource (const struct KzuGPUResource *gpuResource) |
| Converts GPU resource to 2D image texture. More... | |
| struct KzuResource * | kzuImageTextureToResource (const struct KzuImageTexture *imageTexture) |
| Converts 2D image texture to resource. More... | |
| struct KzuImageTexture * | kzuImageTextureFromResource (const struct KzuResource *resource) |
| Converts resource to 2D image texture. More... | |
| void * | kzuImageTextureGetData (const struct KzuImageTexture *imageTexture) |
| Gets the image data of a 2D image texture. More... | |
| kzsError | kzuImageTextureUpdateSubData (const struct KzuImageTexture *imageTexture, const kzByte *data, kzUint x, kzUint y, kzUint width, kzUint height) |
| Updates a part of the image texture's data. More... | |
Variables | |
| const KzuResourceType | KZU_RESOURCE_TYPE_IMAGE_TEXTURE |
| Resource type identifier for 2D image texture. More... | |
2D image texture.
Copyright 2008-2019 by Rightware. All rights reserved.
| kzsError kzuImageTextureCreate | ( | const struct KzuResourceManager * | resourceManager, |
| kzString | name, | ||
| struct KzuResourceLoader * | loader, | ||
| struct KzuImageTexture ** | out_imageTexture | ||
| ) |
Creates a 2D image texture that loads the data when needed using the given resource loader.
The new image texture starts with reference count of one, use kzuResourceRelease to free the resource.
| resourceManager | The resource manager to use. |
| name | Name of the new image texture. |
| loader | Resource loader to use for loading the resource. |
| out_imageTexture | A pointer that is set to point to the new image texture. |
| kzsError kzuImageTextureRegisterToFactory | ( | const struct KzuFactory * | factory) |
Registers image texture type to the factory.
This is normally called from kzaApplicationCreate and needs to be done before calling any of the creation functions.
| factory | The factory to use. |
| kzsError kzuImageTextureCreateFromImage | ( | const struct KzuResourceManager * | resourceManager, |
| kzString | name, | ||
| const struct KzcImage * | image, | ||
| enum KzuTextureFilter | filter, | ||
| enum KzuTextureWrap | wrap, | ||
| kzFloat | anisotropy, | ||
| struct KzuImageTexture ** | out_imageTexture | ||
| ) |
Creates a 2D image texture from the given image.
The created texture takes ownership of the image. If this is not desired, use kzcImageCopy to create a copy of the image before passing it to the texture.
| resourceManager | The resource manager to use. |
| name | Name of the new image texture. |
| image | The image (data) to use in the texture. The created texture takes ownership of the image. |
| filter | Texture filter to use. See KzuTextureFilter. |
| wrap | Texture wrapping mode to use. See KzuTextureWrap. |
| anisotropy | Set anisotropic filtering level of texture. Values <= 1.0f disable the feature. |
| out_imageTexture | A pointer that is set to point to the new image texture. |
| kzsError kzuImageTextureCreateFromMemory | ( | const struct KzuResourceManager * | resourceManager, |
| kzString | name, | ||
| enum KzuTextureChannels | channels, | ||
| kzUint | width, | ||
| kzUint | height, | ||
| const kzByte * | data, | ||
| enum KzuTextureFilter | filter, | ||
| enum KzuTextureWrap | wrap, | ||
| kzFloat | anisotropy, | ||
| struct KzuImageTexture ** | out_imageTexture | ||
| ) |
Creates a 2D image texture from a byte array.
| resourceManager | The resource manager to use. |
| name | Name of the new image texture. |
| channels | The channels contained in the data. See KzuTextureChannels. |
| width | The width of the image. |
| height | The height of the image. |
| data | Pointer to the byte array of channel_count * width * height bytes. |
| filter | Texture filter to use. See KzuTextureFilter. |
| wrap | Texture wrapping mode to use. See KzuTextureWrap. |
| anisotropy | Set anisotropic filtering level of texture. Values <= 1.0f disable the feature. |
| out_imageTexture | A pointer that is set to point to the new image texture. |
| kzsError kzuImageTextureInitializeFromImage | ( | struct KzuImageTexture * | imageTexture, |
| const struct KzcImage * | image, | ||
| enum KzuTextureFilter | filter, | ||
| enum KzuTextureWrap | wrap, | ||
| kzFloat | anisotropy | ||
| ) |
Initializes a 2D image texture from an image with the given arguments.
The texture takes ownership of the image.
| imageTexture | An image texture previously created with e.g. kzuImageTextureCreate. |
| image | The image (data) to use in the texture. The texture takes ownership of the image. |
| filter | Texture filter to use. See KzuTextureFilter. |
| wrap | Texture wrapping mode to use. See KzuTextureWrap. |
| anisotropy | Set anisotropic filtering level of texture. Values <= 1.0f disable the feature. |
| kzsError kzuImageTextureInitializeFromMemory | ( | struct KzuImageTexture * | imageTexture, |
| enum KzuTextureChannels | channels, | ||
| kzUint | width, | ||
| kzUint | height, | ||
| const kzByte * | data, | ||
| enum KzuTextureFilter | filter, | ||
| enum KzuTextureWrap | wrap, | ||
| kzFloat | anisotropy | ||
| ) |
Initializes a 2D image texture from memory with the given arguments.
| imageTexture | An image texture previously created with e.g. kzuImageTextureCreate. |
| channels | The channels contained in the data. See KzuTextureChannels. |
| width | The width of the image. |
| height | The height of the image. |
| data | Pointer to the byte array of channel_count * width * height bytes. |
| filter | Texture filter to use. See KzuTextureFilter. |
| wrap | Texture wrapping mode to use. See KzuTextureWrap. |
| anisotropy | Set anisotropic filtering level of texture. Values <= 1.0f disable the feature. |
| struct KzuTexture* kzuImageTextureToTexture | ( | const struct KzuImageTexture * | imageTexture) |
Converts 2D image texture to texture.
| struct KzuImageTexture* kzuImageTextureFromTexture | ( | const struct KzuTexture * | texture) |
Converts texture to 2D image texture.
| struct KzuGPUResource* kzuImageTextureToGPUResource | ( | const struct KzuImageTexture * | imageTexture) |
Converts 2D image texture to GPU resource.
| struct KzuImageTexture* kzuImageTextureFromGPUResource | ( | const struct KzuGPUResource * | gpuResource) |
Converts GPU resource to 2D image texture.
| struct KzuResource* kzuImageTextureToResource | ( | const struct KzuImageTexture * | imageTexture) |
Converts 2D image texture to resource.
| struct KzuImageTexture* kzuImageTextureFromResource | ( | const struct KzuResource * | resource) |
Converts resource to 2D image texture.
| void* kzuImageTextureGetData | ( | const struct KzuImageTexture * | imageTexture) |
Gets the image data of a 2D image texture.
Returns the base mipmap level only.
| kzsError kzuImageTextureUpdateSubData | ( | const struct KzuImageTexture * | imageTexture, |
| const kzByte * | data, | ||
| kzUint | x, | ||
| kzUint | y, | ||
| kzUint | width, | ||
| kzUint | height | ||
| ) |
Updates a part of the image texture's data.
Updates the base mipmap level only. Not effective on compressed textures.
| imageTexture | An image texture previously created with e.g. kzuImageTextureCreate. |
| data | Pointer to the byte array of channel_count * width * height bytes. |
| x | The x-coordinate of the part to update. |
| y | The y-coordinate of the part to update. |
| width | Width of the part to update. |
| height | Height of the part to update. |
| const KzuResourceType KZU_RESOURCE_TYPE_IMAGE_TEXTURE |
Resource type identifier for 2D image texture.