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

◆ apply_render_config() [2/2]

void MayaFlux::Buffers::VKBuffer::apply_render_config ( std::shared_ptr< RenderProcessor > &  render_processor,
const RenderConfig config,
const ShaderConfig shader_config 
)
protected

Configure a RenderProcessor, creating one if null.

Parameters
render_processorExisting processor to configure, or nullptr to create one.
configRenderConfig with settings to apply

Definition at line 341 of file VKBuffer.cpp.

345{
346 if (!render_processor)
347 render_processor = std::make_shared<RenderProcessor>(shader_config);
348
349 render_processor->set_fragment_shader(config.fragment_shader);
350
351 render_processor->set_target_window(
352 config.target_window,
353 std::dynamic_pointer_cast<VKBuffer>(shared_from_this()));
354
355 render_processor->set_primitive_topology(config.topology);
356 render_processor->set_polygon_mode(config.polygon_mode);
357 render_processor->set_cull_mode(config.cull_mode);
358
359 if (!config.geometry_shader.empty())
360 render_processor->set_geometry_shader(config.geometry_shader);
361}

References MayaFlux::Portal::Graphics::RenderConfig::cull_mode, MayaFlux::Portal::Graphics::RenderConfig::fragment_shader, MayaFlux::Portal::Graphics::RenderConfig::geometry_shader, MayaFlux::Portal::Graphics::RenderConfig::polygon_mode, MayaFlux::Portal::Graphics::RenderConfig::target_window, and MayaFlux::Portal::Graphics::RenderConfig::topology.