GlRenderValueBinding is a binding from shaders/materials into values in GlRenderState. More...
#include <kanzi/core.ui/platform/graphics_backend/gl/gl_render_value_binding.hpp>
Public Member Functions | |
| void | addPropertyListener (Node *node, GlRenderState &renderState, AbstractPropertyType propertyType, ShaderProgram::UniformTransformation transformation) |
| Add a listener for given property. More... | |
| void | attach (Material &material, Node *node, GlRenderState &renderState) |
| Attach to a combination of nodes. More... | |
| void | update (GlRenderState &renderState, Object *object, Material &material) |
| Apply changes into render state. More... | |
| void | invalidate () |
| Invalidates the state of the notification handler. More... | |
| void | setAllPropertiesDirty () |
| Flag all properties as being dirty and needing an update. More... | |
GlRenderValueBinding is a binding from shaders/materials into values in GlRenderState.
| void kanzi::GlRenderValueBinding::addPropertyListener | ( | Node * | node, |
| GlRenderState & | renderState, | ||
| AbstractPropertyType | propertyType, | ||
| ShaderProgram::UniformTransformation | transformation | ||
| ) |
Add a listener for given property.
| propertyType | Property type to listen. |
| void kanzi::GlRenderValueBinding::attach | ( | Material & | material, |
| Node * | node, | ||
| GlRenderState & | renderState | ||
| ) |
| void kanzi::GlRenderValueBinding::update | ( | GlRenderState & | renderState, |
| Object * | object, | ||
| Material & | material | ||
| ) |
Apply changes into render state.
| renderState | Render state to write changes to. |
| object | Fallback object for property value. |
| material | Fallback material for property value. |
| void kanzi::GlRenderValueBinding::invalidate | ( | ) |
Invalidates the state of the notification handler.
Use this function to invalidate a node that you destroyed before destroying the GlRenderValueBinding.
| void kanzi::GlRenderValueBinding::setAllPropertiesDirty | ( | ) |
Flag all properties as being dirty and needing an update.