|
|
| RenderedMergeGeometriesNode (const MergeGeometriesNode &n) |
| |
| void | init (RenderList &, QRhiResourceUpdateBatch &) override |
| |
| void | release (RenderList &) override |
| |
|
const ossia::geometry_spec * | findFirstByPort (int32_t port) const |
| |
|
bool | anyInputChanged () const |
| |
|
void | rebuild () |
| |
| void | update (RenderList &, QRhiResourceUpdateBatch &, Edge *) override |
| |
| void | runInitialPasses (RenderList &renderer, QRhiCommandBuffer &, QRhiResourceUpdateBatch *&, Edge &edge) override |
| |
| void | runRenderPass (RenderList &, QRhiCommandBuffer &, Edge &) override |
| |
| void | removeOutputPass (RenderList &, Edge &) override |
| |
|
| NodeRenderer (const Node &node) |
| |
|
virtual TextureRenderTarget | renderTargetForInput (const Port &input) |
| |
|
virtual BufferView | bufferForInput (const Port &input) |
| |
|
virtual BufferView | bufferForOutput (const Port &output) |
| |
| virtual QRhiTexture * | textureForOutput (const Port &output) |
| |
| virtual void | updateInputTexture (const Port &input, QRhiTexture *tex, QRhiTexture *depthTex=nullptr) |
| |
| virtual void | updateInputSamplerFilter (const Port &input, const RenderTargetSpecs &spec) |
| |
| virtual void | inputAboutToFinish (RenderList &renderer, const Port &p, QRhiResourceUpdateBatch *&) |
| |
|
void | checkForChanges () |
| |
| void | syncRenderTargetIndex () |
| |
|
void | process (int32_t port, const ossia::geometry_spec &v) |
| |
|
void | process (int32_t port, const ossia::scene_spec &v) |
| |
|
virtual void | process (int32_t port, const ossia::transform3d &v) |
| |
| void | process (int32_t port, const ossia::geometry_spec &v, const void *source_key) |
| |
|
void | process (int32_t port, const ossia::scene_spec &v, const void *source_key) |
| |
| const ossia::geometry_spec * | findGeometryByPort (int32_t port) const |
| |
| template<typename F > |
| void | forEachSceneOnPort (int32_t port, F &&fn) const |
| |
| virtual void | initState (RenderList &renderer, QRhiResourceUpdateBatch &res) |
| |
| virtual void | releaseState (RenderList &renderer) |
| |
| virtual void | addOutputPass (RenderList &renderer, Edge &edge, QRhiResourceUpdateBatch &res) |
| | Create a pass for a new output edge (pipeline, SRB, processUBO).
|
| |
| virtual void | addInputEdge (RenderList &renderer, Edge &edge, QRhiResourceUpdateBatch &res) |
| |
| virtual void | removeInputEdge (RenderList &renderer, Edge &edge) |
| | Notify the renderer that an input edge was disconnected.
|
| |
| virtual bool | hasOutputPassForEdge (Edge &edge) const |
| | Check if this renderer already has an output pass for the given edge.
|
| |
| virtual void | seedInitialOutputs (RenderList &renderer) |
| |
|
|
const MergeGeometriesNode & | m_node |
| |
|
ossia::geometry_spec | m_outputSpec |
| |
|
std::array< ossia::geometry_spec, MergeGeometriesNode::kMaxInputs > | m_cachedInputs |
| |
|
const Node & | node |
| |
| ossia::geometry_spec | geometry |
| | The geometry to use.
|
| |
|
ossia::small_flat_map< PortSourceKey, ossia::geometry_spec, 4 > | m_portGeometries |
| |
| ossia::scene_spec | scene |
| | The scene to use (when receiving scene_spec data).
|
| |
|
ossia::small_flat_map< PortSourceKey, ossia::scene_spec, 4 > | m_portScenes |
| | Per-(port, source) scene storage. See m_portGeometries comment.
|
| |
|
ossia::small_vector< MergeCacheKey, 4 > | m_mergeCacheInputs |
| |
|
ossia::scene_spec | m_mergeCacheOutput |
| |
| ossia::small_flat_map< PortSourceKey, std::pair< ossia::geometry_spec, ossia::scene_spec >, 4 > | m_wrapCache |
| |
|
int32_t | nodeId {-1} |
| |
|
bool | materialChanged {false} |
| |
|
bool | geometryChanged {false} |
| |
|
bool | sceneChanged {false} |
| |
|
bool | renderTargetSpecsChanged {false} |
| |
| bool | m_initialized {false} |
| |