MayaFlux 1.0.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ create_texture_array()

MAYAFLUX_API std::shared_ptr< Buffers::TextureArrayBuffer > MayaFlux::create_texture_array ( const Kakshya::VideoStreamSpec &  spec,
const Portal::Graphics::RenderConfig &  render,
std::optional< Portal::Graphics::FitMode >  fit = Portal::Graphics::FitMode::STRETCH,
uint32_t  mode = 0 
)

Make a layered texture buffer that draws to a window.

For writing its layers through pipeline routes or by hand. A Chimera over the result is create_chimera(buffer).

Parameters
specExtent and format of every layer; ring_frames is the layer count.
renderHow the array is drawn.
fitHow a frame of another extent is fitted, or nullopt to drop it.
modeMode number passed to the fragment shader.
Returns
The buffer, already in the buffer manager.

Definition at line 185 of file Rigs.cpp.

190{
191 auto array = get_buffer_manager()->create_graphics_buffer<Buffers::TextureArrayBuffer>(
192 Buffers::ProcessingToken::GRAPHICS_BACKEND, spec, fit);
193
194 array->set_mode(mode);
195 array->setup_rendering(render);
196 return array;
197}
uint32_t mode
void set_mode(uint32_t mode)
Set the mode number passed to the shader.
A TextureBuffer whose image is a stack of layers, composed in one draw.
std::shared_ptr< Buffers::BufferManager > get_buffer_manager()
Gets the buffer manager from the default engine.
Definition Graph.cpp:148

References get_buffer_manager(), MayaFlux::Buffers::GRAPHICS_BACKEND, mode, and MayaFlux::Buffers::TextureArrayBuffer::set_mode().

+ Here is the call graph for this function: