Loading...
Searching...
No Matches
Binds the rendering pipeline to ossia processes. More...
Detailed Description
Binds the rendering pipeline to ossia processes.
This namespace contains the machinery that ties the rendering features provided by score::gfx to the ossia execution engine and data model.
It works as follows:
Every time processes execute, visual processes will mark themselves as executed, by notifying Gfx::GfxExecutionAction.
This is necessary because the visual graph is dynamic: processes can come on and off at any point during execution.
- After all the ossia execution graph nodes have executed, the new edges between nodes are sent to the graphics processing thread, to Gfx::GfxContext.
- This thread regularly updates the graph with the incoming information, either before VSync if VSync is enabled or with a timer otherwise:
- Edges are updated with the currently running nodes in the score
- Parameters, audio data... sent to the ossia processes in the execution graph are converted into uniforms corresponding to the shaders used, and uploaded to the GPU.
Typedefs | |
using | av_input_video_type = decltype(av_input_video_device_next(nullptr)) |
using | port_index = ossia::gfx::port_index |
using | Edge = std::pair< port_index, port_index > |
using | exec_controls = std::vector< std::shared_ptr< exec_control > > |
Functions | |
void | enumerateCameraDevices (std::function< void(CameraSettings, QString)> func) |
std::shared_ptr< CameraDeviceEnumerator > | make_camera_enumerator () |
const CommandGroupKey & | CommandFactoryName () |
template<typename Vector > | |
int64_t | index_of (Vector &&v, const typename std::remove_reference_t< Vector >::value_type &t) |
ossia::value | fromImageSet (const tcb::span< score::gfx::Image > &images) |
void | releaseImages (std::vector< score::gfx::Image > &imgs) |
std::vector< score::gfx::Image > | getImages (const ossia::value &val) |
ShaderSource | programFromFragmentShaderPath (const QString &fsFilename, QByteArray fsData) |
CGLContextObj | nativeContext (QRhi &rhi) |
MODEL_METADATA_IMPL_CPP (TextureInlet) | |
MODEL_METADATA_IMPL_CPP (TextureOutlet) | |