|
MayaFlux 1.0.0
Digital-First Multimedia Processing Framework
|
| MayaFlux::Buffers::SDFFieldProcessor::SDFFieldProcessor | ( | std::shared_ptr< VKBuffer > | grid_buf, |
| const Kinesis::FieldSource & | field, | ||
| const glm::vec3 & | bounds_min, | ||
| const glm::vec3 & | bounds_max, | ||
| uint32_t | res_x, | ||
| uint32_t | res_y, | ||
| uint32_t | res_z | ||
| ) |
Evaluate an authored field function instead of a shader file.
The shader is generated from field: its function is emitted as written and a kernel body calls it at every grid corner. Time and the parameter block reach it through set_time() and set_params(), so animating a field recompiles nothing.
| grid_buf | HOST_STORAGE buffer sized to (res_x+1)*(res_y+1)*(res_z+1) floats. |
| field | Parsed field function, from MF_FIELD, MF_FIELD_T or MF_FIELD_P. |
| bounds_min | World-space minimum corner. |
| bounds_max | World-space maximum corner. |
| res_x | Cell count along X. |
| res_y | Cell count along Y. |
| res_z | Cell count along Z. |
Definition at line 109 of file SDFFieldProcessor.cpp.
References MayaFlux::Buffers::ShaderConfig::bindings, MayaFlux::Buffers::ShaderProcessor::m_config, m_field_pc, m_res_x, m_res_y, m_res_z, MayaFlux::Buffers::ShaderDispatchConfig::MANUAL, max, MayaFlux::Buffers::SDFFieldProcessor::FieldPC::res_x, MayaFlux::Buffers::SDFFieldProcessor::FieldPC::res_y, MayaFlux::Buffers::SDFFieldProcessor::FieldPC::res_z, set_bounds(), MayaFlux::Buffers::ComputeProcessor::set_dispatch_mode(), and MayaFlux::Buffers::ComputeProcessor::set_manual_dispatch().
Here is the call graph for this function: