RamsesRenderPassBinding¶
-
class
rlogic
::
RamsesRenderPassBinding
: public rlogic::RamsesBinding¶ The RamsesRenderPassBinding binds to a Ramses object instance like other types derived from rlogic::RamsesBinding, in this case it binds to a ramses::RenderPass. RamsesRenderPassBinding can be created using rlogic::LogicEngine::createRamsesRenderPassBinding after providing an instance of a ramses::RenderPass.
The RamsesRenderPassBinding has a fixed set of inputs which correspond to some of the parameters in ramses::RenderPass: ‘enabled’ (type bool) - binds to enable/disable state (see ramses::RenderPass::setEnabled) ‘renderOrder’ (type int32) - binds to render order (see ramses::RenderPass::setRenderOrder) ‘clearColor’ (type vec4f) - binds to color used when clearing render pass (see ramses::RenderPass::setClearColor) ‘renderOnce’ (type bool) - binds to render once on/off state (see ramses::RenderPass::setRenderOnce)
The initial values of the input properties are taken from the bound ramses::RenderPass provided during construction.
The RamsesRenderPassBinding class has no output properties (thus rlogic::LogicNode::getOutputs() will return nullptr) because the outputs are implicitly the properties of the bound ramses::RenderPass.
Note
Not all states of the #ramses::RenderPass must be managed via #RamsesRenderPassBinding, input properties which are not modified via #RamsesRenderPassBinding (i.e. user never set a value explicitly nor linked the input) will not alter the corresponding Ramses object state. This allows the user code to control some states via Ramses logic nodes and some directly using Ramses object.
The changes via binding objects are applied to the bound object right away when calling rlogic::LogicEngine::update(), however keep in mind that Ramses has a mechanism for bundling scene changes and applying them at once using ramses::Scene::flush, so the changes will be applied all the way only after calling this method on the scene.
Public Functions
-
RamsesRenderPassBinding
(std::unique_ptr<internal::RamsesRenderPassBindingImpl> impl) noexcept¶ Constructor of RamsesRenderPassBinding. User is not supposed to call this - RamsesRenderPassBindings are created by other factory classes
- Parameters
impl
: implementation details of the RamsesRenderPassBinding
-
~RamsesRenderPassBinding
() noexcept override¶ Destructor of RamsesRenderPassBinding.
-
RamsesRenderPassBinding
(const RamsesRenderPassBinding&) = delete¶ Copy Constructor of RamsesRenderPassBinding is deleted because RamsesRenderPassBindings are not supposed to be copied.
-
RamsesRenderPassBinding
(RamsesRenderPassBinding&&) = delete¶ Move Constructor of RamsesRenderPassBinding is deleted because RamsesRenderPassBindings are not supposed to be moved.
-
RamsesRenderPassBinding &
operator=
(const RamsesRenderPassBinding&) = delete¶ Assignment operator of RamsesRenderPassBinding is deleted because RamsesRenderPassBindings are not supposed to be copied.
-
RamsesRenderPassBinding &
operator=
(RamsesRenderPassBinding&&) = delete¶ Move assignment operator of RamsesRenderPassBinding is deleted because RamsesRenderPassBindings are not supposed to be moved.
-
const ramses::RenderPass &
getRamsesRenderPass
() const¶ Returns the bound ramses render pass.
- Return
the bound ramses render pass
-
ramses::RenderPass &
getRamsesRenderPass
()¶ Returns the bound ramses render pass.
- Return
the bound ramses render pass
Public Members
-
internal::RamsesRenderPassBindingImpl &
m_renderPassBinding
¶ Implementation detail of RamsesRenderPassBinding.
-