|
MayaFlux 0.1.0
Digital-First Multimedia Processing Framework
|
| std::shared_ptr< Core::VKImage > MayaFlux::Portal::Graphics::TextureLoom::create_2d | ( | uint32_t | width, |
| uint32_t | height, | ||
| ImageFormat | format = ImageFormat::RGBA8, |
||
| const void * | data = nullptr, |
||
| uint32_t | mip_levels = 1 |
||
| ) |
Create a 2D texture.
| width | Width in pixels |
| height | Height in pixels |
| format | Image format |
| data | Optional initial pixel data (nullptr = empty) |
| mip_levels | Number of mipmap levels (1 = no mipmaps) |
Creates device-local texture optimized for shader sampling. If data provided, uploads immediately and transitions to shader read layout.
Definition at line 74 of file TextureLoom.cpp.
References calculate_image_size(), MayaFlux::Kakshya::IMAGE_COLOR, MayaFlux::Journal::ImageProcessing, MayaFlux::Core::BackendResourceManager::initialize_image(), is_initialized(), m_resource_manager, m_textures, MF_ERROR, MF_INFO, MayaFlux::Journal::Portal, MayaFlux::Core::VKImage::TEXTURE_2D, to_vulkan_format(), MayaFlux::Core::BackendResourceManager::transition_image_layout(), MayaFlux::Core::VKImage::TYPE_2D, and upload_data().
Here is the call graph for this function: