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

◆ set_view_transform_source()

void MayaFlux::Buffers::RenderProcessor::set_view_transform_source ( std::function< Kinesis::ViewTransform()>  fn)

Set dynamic view transform source (evaluated every frame)

Parameters
fnCallable returning ViewTransform, invoked each execute_shader

Automatically enables depth testing and configures push constant size for the 128-byte ViewTransform block.

Definition at line 114 of file RenderProcessor.cpp.

115{
116 m_view_transform_source = std::move(fn);
117 m_view_transform.reset();
118
119 if (!m_depth_enabled) {
121 }
122
124
125 if (m_push_constant_data.size() < sizeof(Kinesis::ViewTransform)) {
126 set_push_constant_size(sizeof(Kinesis::ViewTransform));
127 }
128}
std::function< Kinesis::ViewTransform()> m_view_transform_source
void enable_depth_test(Portal::Graphics::CompareOp compare_op=Portal::Graphics::CompareOp::LESS)
Enable depth testing for this processor's pipeline.
std::optional< Kinesis::ViewTransform > m_view_transform
Portal::Graphics::CullMode m_cull_mode
std::vector< uint8_t > m_push_constant_data
void set_push_constant_size()
Set push constant size from type.

References MayaFlux::Portal::Graphics::BACK, enable_depth_test(), m_cull_mode, m_depth_enabled, MayaFlux::Buffers::ShaderProcessor::m_push_constant_data, m_view_transform, m_view_transform_source, and MayaFlux::Buffers::ShaderProcessor::set_push_constant_size().

+ Here is the call graph for this function: