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

◆ RaymarchProcessor()

MayaFlux::Buffers::RaymarchProcessor::RaymarchProcessor ( FieldSource  source,
size_t  field_bytes,
Kinesis::Lattice3D  lattice,
uint32_t  set = 1,
uint32_t  binding = 0 
)

Construct a march staging processor.

Parameters
sourceCallable resolving the field handle each cycle.
field_bytesByte size of one slot of that field.
latticeDiscretization the field is stored over. Must match the lattice the field was allocated against.
setDescriptor set index. Must not be zero.
bindingBinding index within that set.

Definition at line 12 of file RaymarchProcessor.cpp.

18 : m_source(std::move(source))
19 , m_field_bytes(field_bytes)
20 , m_lattice(lattice)
21 , m_set(set)
22 , m_binding(binding)
23{
24 if (m_set == 0) {
26 "RaymarchProcessor: set 0 is the ViewTransform reservation, "
27 "falling back to set 1");
28 m_set = 1;
29 }
30
31 m_params.max_steps = 128;
32 m_params.step_scale = 0.5F;
34 m_params.absorption = 12.0F;
35 m_params.cool_r = 0.35F;
36 m_params.cool_g = 0.10F;
37 m_params.cool_b = 0.05F;
38 m_params.hot_r = 1.0F;
39 m_params.hot_g = 0.82F;
40 m_params.hot_b = 0.45F;
41 m_params.emission = 2.2F;
42 m_params.threshold = 0.02F;
43
45}
#define MF_ERROR(comp, ctx,...)
void write_lattice_params()
Write the lattice-derived words of the parameter block.
@ Init
Engine/subsystem initialization.
@ Buffers
Buffers, Managers, processors and processing chains.

References MayaFlux::Buffers::RaymarchProcessor::MarchParams::absorption, MayaFlux::Journal::Buffers, MayaFlux::Buffers::RaymarchProcessor::MarchParams::cool_b, MayaFlux::Buffers::RaymarchProcessor::MarchParams::cool_g, MayaFlux::Buffers::RaymarchProcessor::MarchParams::cool_r, MayaFlux::Buffers::RaymarchProcessor::MarchParams::density_scale, MayaFlux::Buffers::RaymarchProcessor::MarchParams::emission, MayaFlux::Buffers::RaymarchProcessor::MarchParams::hot_b, MayaFlux::Buffers::RaymarchProcessor::MarchParams::hot_g, MayaFlux::Buffers::RaymarchProcessor::MarchParams::hot_r, MayaFlux::Journal::Init, m_params, m_set, MayaFlux::Buffers::RaymarchProcessor::MarchParams::max_steps, MF_ERROR, MayaFlux::Buffers::RaymarchProcessor::MarchParams::step_scale, MayaFlux::Buffers::RaymarchProcessor::MarchParams::threshold, and write_lattice_params().

+ Here is the call graph for this function: