Use the Pipeline State Render Pass to set for its child render passes the depth and stencil testing, transparency, and culling. More...
#include <kanzi/core.ui/graphics3d/pipeline_state_render_pass.hpp>
Public Types | |
enum | ViewportMode { ViewportModeAbsolute, ViewportModeRelative } |
![]() | |
enum | AttachmentState { Detached, Detaching, Attaching, Attached } |
Attachment state for keeping track current status. More... | |
typedef BindingRuntimeContainer::const_iterator | BindingRuntimeConstIterator |
Const iterator type for binding runtime container. More... | |
typedef vector< AbstractBindingRuntimeSharedPtr > | BindingRuntimeContainer |
Container type for binding runtimes. More... | |
typedef BindingRuntimeContainer::iterator | BindingRuntimeIterator |
Iterator type for binding runtime container. More... | |
using | CameraSettingsPtr = unique_ptr< CameraSettings > |
Camera settings unique pointer type. More... | |
typedef ChildContainer::const_iterator | ChildConstIterator |
Child container iterator type. More... | |
typedef vector< RenderPassSharedPtr > | ChildContainer |
Container type for children. More... | |
![]() | |
typedef PropertyStorageContainer::const_iterator | PropertyStorageConstIterator |
typedef vector< PropertyStoragePtr > | PropertyStorageContainer |
typedef PropertyStorageContainer::iterator | PropertyStorageIterator |
typedef intrusive_ptr< AbstractPropertyTypeDescriptor::PropertyStorage > | PropertyStoragePtr |
typedef PropertyStorageContainer::reverse_iterator | PropertyStorageReverseIterator |
![]() | |
using | BindingHostConceptSharedPtr = shared_ptr< BindingHostConcept > |
Binding host concept shared pointer type. More... | |
using | BindingRuntimeConstIterator = BindingRuntimeContainer::const_iterator |
Const iterator for binding runtimes. More... | |
using | BindingRuntimeContainer = vector< AbstractBindingRuntimeSharedPtr > |
Container for binding runtimes. More... | |
using | BindingRuntimeIterator = BindingRuntimeContainer::iterator |
Iterator for binding runtimes. More... | |
Static Public Member Functions | |
static PipelineStateRenderPassSharedPtr | create (Domain *domain, string_view name) |
Create a Pipeline State Render Pass. More... | |
static PropertyTypeEditorInfoSharedPtr | makeEditorInfo () |
![]() | |
static RenderPassSharedPtr | create (Domain *domain, string_view name) |
Create a render pass. More... | |
static PropertyTypeEditorInfoSharedPtr | makeEditorInfo () |
![]() | |
static const Metaclass * | getStaticMetaclass () |
Returns the metaclass of Object class. More... | |
static PropertyTypeEditorInfoSharedPtr | makeEditorInfo () |
Default implementation that returns empty editor info. More... | |
![]() | |
static const Metaclass * | getStaticMetaclass () |
Returns the metaclass of Object class. More... | |
static PropertyTypeEditorInfoSharedPtr | makeEditorInfo () |
Default implementation that returns empty editor info. More... | |
Properties | |
static PropertyType< int > | BlendModeProperty |
Use the Blend Mode property to override the blend mode set in each node that this render pass renders. More... | |
static PropertyType< GraphicsColorWriteMode > | ColorWriteModeProperty |
Use the Color Write Mode property to set which channels the render pass writes to the color buffer. More... | |
static PropertyType< GraphicsCompareFunction > | DepthTestFunctionProperty |
Use the Depth Test Function property to control whether the depth test discards a fragment. More... | |
static PropertyType< bool > | DepthWriteEnabledProperty |
Use the Depth Write Enabled property to set whether the render pass writes to the depth buffer. More... | |
static PropertyType< GraphicsCompareFunction > | StencilTestFunctionProperty |
Use the Stencil Test Function property to control whether the stencil test discards a fragment. More... | |
static PropertyType< int > | StencilReferenceValueProperty |
Use the Stencil Reference Value property to set the reference value for the stencil test. More... | |
static PropertyType< int > | StencilMaskProperty |
Use the Stencil Mask property to set a mask on which the AND operation is executed with both the reference value and the stored stencil value when the test is done. More... | |
static PropertyType< GraphicsStencilOperation > | StencilFailOperationProperty |
Use the Stencil Fail Operation property to set the operation that the render pass performs when the stencil test fails. More... | |
static PropertyType< GraphicsStencilOperation > | StencilPassDepthFailOperationProperty |
Use the Stencil Pass Depth Fail Operation property to set the operation that the render pass performs when the stencil test passes, but the depth test fails. More... | |
static PropertyType< GraphicsStencilOperation > | StencilPassDepthPassOperationProperty |
Use the Stencil Pass Depth Pass Operation property to set the operation that the render pass performs when both, the stencil and the depth test, pass. More... | |
static PropertyType< bool > | StencilWriteEnabledProperty |
Use the Stencil Write Enabled property to set whether to enable writing to the stencil buffer. More... | |
static PropertyType< GraphicsCullMode > | CullModeProperty |
Use the Cull Mode property to set the culling of the triangle faces in the rendered meshes. More... | |
static PropertyType< Vector4 > | ViewportProperty |
Use the Viewport property to modify the current rendering Viewport 2D node. More... | |
static PropertyType< ViewportMode > | ViewportModeProperty |
Use the Viewport Mode property to set the coordinate type for the Viewport 2D node. More... | |
static PropertyType< Vector4 > | ScissorProperty |
Use the Scissor property to set the scissor test within the current rendering Viewport 2D node. More... | |
static PropertyType< ViewportMode > | ScissorModeProperty |
Use the Scissor Mode property to set the scissor test coordinate mode. More... | |
static PropertyType< Vector2 > | PolygonDepthOffsetProperty |
Use the Polygon Depth Offset property to offset the geometry in the depth buffer. More... | |
int | getBlendMode () const |
Gets the value of the BlendModeProperty property. More... | |
void | setBlendMode (int value) |
Sets the value of the BlendModeProperty property. More... | |
GraphicsColorWriteMode | getColorWriteMode () const |
Gets the value of the ColorWriteModeProperty property. More... | |
void | setColorWriteMode (GraphicsColorWriteMode value) |
Sets the value of the ColorWriteModeProperty property. More... | |
GraphicsCompareFunction | getDepthTestFunction () const |
Gets the value of the DepthTestFunctionProperty property. More... | |
void | setDepthTestFunction (GraphicsCompareFunction value) |
Sets the value of the DepthTestFunctionProperty property. More... | |
bool | isDepthWriteEnabled () const |
Gets the value of the DepthWriteEnabledProperty property. More... | |
void | setDepthWriteEnabled (bool value) |
Sets the value of the DepthWriteEnabledProperty property. More... | |
GraphicsCompareFunction | getStencilTestFunction () const |
Gets the value of the StencilTestFunctionProperty property. More... | |
void | setStencilTestFunction (GraphicsCompareFunction value) |
Sets the value of the StencilTestFunctionProperty property. More... | |
int | getStencilReferenceValue () const |
Gets the value of the StencilReferenceValueProperty property. More... | |
void | setStencilReferenceValue (int value) |
Sets the value of the StencilReferenceValueProperty property. More... | |
int | getStencilMask () const |
Gets the value of the StencilMaskProperty property. More... | |
void | setStencilMask (int value) |
Sets the value of the StencilMaskProperty property. More... | |
GraphicsStencilOperation | getStencilFailOperation () const |
Gets the value of the StencilFailOperationProperty property. More... | |
void | setStencilFailOperation (GraphicsStencilOperation value) |
Sets the value of the StencilFailOperationProperty property. More... | |
GraphicsStencilOperation | getStencilPassDepthFailOperation () const |
Gets the value of the StencilPassDepthFailOperationProperty property. More... | |
void | setStencilPassDepthFailOperation (GraphicsStencilOperation value) |
Sets the value of the StencilPassDepthFailOperationProperty property. More... | |
GraphicsStencilOperation | getStencilPassDepthPassOperation () const |
Gets the value of the StencilPassDepthPassOperationProperty property. More... | |
void | setStencilPassDepthPassOperation (GraphicsStencilOperation value) |
Sets the value of the StencilPassDepthPassOperationProperty property. More... | |
bool | isStencilWriteEnabled () const |
Gets the value of the StencilWriteEnabledProperty property. More... | |
void | setStencilWriteEnabled (bool value) |
Sets the value of the StencilWriteEnabledProperty property. More... | |
GraphicsCullMode | getCullMode () const |
Gets the value of the CullModeProperty property. More... | |
void | setCullMode (GraphicsCullMode value) |
Sets the value of the CullModeProperty property. More... | |
Vector4 | getViewport () const |
Gets the value of the ViewportProperty property. More... | |
void | setViewport (Vector4 value) |
Sets the value of the ViewportProperty property. More... | |
ViewportMode | getViewportMode () const |
Gets the value of the ViewportModeProperty property. More... | |
void | setViewportMode (ViewportMode value) |
Sets the value of the ViewportModeProperty property. More... | |
Vector4 | getScissor () const |
Gets the value of the ScissorProperty property. More... | |
void | setScissor (Vector4 value) |
Sets the value of the ScissorProperty property. More... | |
ViewportMode | getScissorMode () const |
Gets the value of the ScissorModeProperty property. More... | |
void | setScissorMode (ViewportMode value) |
Sets the value of the ScissorModeProperty property. More... | |
Vector2 | getPolygonDepthOffset () const |
Gets the value of the PolygonDepthOffsetProperty. More... | |
void | setPolygonDepthOffset (Vector2 value) |
Sets the value of the PolygonDepthOffsetProperty. More... | |
Additional Inherited Members | |
![]() | |
void | addChild (RenderPassSharedPtr childRenderPass) |
Adds a render pass as the last child of the render pass you set. More... | |
void | attach () |
Attaches the render pass. More... | |
void | attachRecursive (Node &node) |
Recursively attaches a render pass tree. More... | |
ChildConstIterator | beginChildren () const |
Returns an iterator to the beginning of the container of child render passes. More... | |
BindingLookupContextPtr | createLookupContext (RenderPassSharedPtr templateRoot) |
Creates a lookup context for a given render pass. More... | |
void | detach () |
Detaches the render pass. More... | |
void | detachRecursive () |
Recursively detaches a render pass tree. More... | |
ChildConstIterator | endChildren () const |
Returns an iterator to the end of the container of child render passes. More... | |
string | getCamera () const |
Gets the value of the CameraProperty. More... | |
RenderPassSharedPtr | getChild (size_t index) |
Gets a child render pass at the given index. More... | |
size_t | getChildCount () const |
Returns the number of child render passes. More... | |
size_t | getChildIndex (RenderPass &childRenderPass) const |
Gets the index of a child in this render pass. More... | |
Node * | getHostNode () const |
Gets the host node of a render pass. More... | |
Vector4 | getInputViewport () const |
Gets the value of InputViewportAreaProperty. More... | |
RenderPass * | getParent () const |
Gets the parent of a render pass. More... | |
Scene * | getSceneForRenderPass () const |
Gets the scene being rendered by the render pass. More... | |
RenderPassSharedPtr | getTemplateRoot () const |
Gets the template root of this render pass. More... | |
Viewport2D * | getViewportForRenderPass () const |
Gets a viewport parent for a render pass. More... | |
void | insertChild (size_t index, RenderPassSharedPtr childRenderPass) |
Adds a render pass as a child render pass at given index of the render pass you set. More... | |
bool | isAttached () const |
Tells if a render pass is attached. More... | |
bool | isAttaching () const |
Tells if a render pass is attaching. More... | |
bool | isDetached () const |
Tells if a render pass is detached. More... | |
bool | isDetaching () const |
Tells if render pass is detaching. More... | |
bool | isEnabled () const |
Gets the value of the EnabledProperty property. More... | |
ObjectSharedPtr | lookupObject (string_view relativePath) |
Lookup for an object from a node. More... | |
template<typename T > | |
shared_ptr< T > | lookupObject (string_view relativePath) |
Lookup a relative object of specific type. More... | |
void | removeAllChildren () |
Removes all child render passes from a render pass. More... | |
void | removeChild (RenderPass &childRenderPass) |
Removes a child render pass. More... | |
void | removeChild (size_t index) |
Removes a child render pass. More... | |
void | render (Renderer3D &renderer, CompositionStack &compositionStack, const CameraSettings *cameraSettings) |
Recursively render RenderPass and all of its child render passes. More... | |
virtual void | restoreResources () |
Restore resources after suspend. More... | |
void | restoreResourcesRecursive () |
Recursively calls restoreResources for a RenderPass and all its children. More... | |
void | setCamera (string_view value) |
Sets the value of the CameraProperty. More... | |
void | setEnabled (bool value) |
Sets the value of the EnabledProperty. More... | |
void | setHostNode (Node *hostNode) |
Sets the host node of a render pass. More... | |
void | setParent (RenderPass *parent) |
Sets the parent of a render pass. More... | |
void | setTemplateRoot (RenderPassSharedPtr templateRoot) |
Sets the template root for this render pass. More... | |
~RenderPass () override | |
Destructor. More... | |
![]() | |
virtual unsigned int | getCPUMemoryUsage () const |
Function for getting the memory usage of a resource. More... | |
const string & | getName () const |
Gets the resource name. More... | |
const string & | getUrl () const |
Gets the resource URL. More... | |
bool | isKeepAlive () const |
Tells if the resource has keep alive flag set. More... | |
void | reload () |
void | reloadFromFile (string_view filePath) |
void | reloadFromKzb (KzbFile &kzbFile, ReadOnlyMemoryFile &file, KzbMemoryParser &parser) |
void | setKeepAlive (bool keepAlive) |
Sets the keep alive flag. More... | |
void | setUrl (string_view url) |
Sets the resource URL. More... | |
~Resource () override | |
Destructor. More... | |
![]() | |
AppliedStyleEntrySharedPtr | applyObjectStyle (kanzi::StyleSharedPtr style) |
Applies a style to an object. More... | |
void | applyObjectStyles () |
Apply all styles for an object node. More... | |
Domain * | getDomain () const |
Returns the domain the object belongs to. More... | |
const Metaclass * | getDynamicMetaclass () const override |
Returns the metaclass of the dynamic type of the object. More... | |
MainLoopScheduler * | getMainLoopScheduler () const |
Returns the MainLoopScheduler instance of the associated Domain. More... | |
detail::MessageDispatcher * | getMessageDispatcher () const |
Returns the message dispatcher of the object. More... | |
ResourceManager * | getResourceManager () const |
Returns the resource manager of the object. More... | |
ScriptingContextSharedPtr | getScriptingContext () const |
Gets the scripting context of the object. More... | |
Object (Domain *domain) | |
void | setScriptingContext (ScriptingContextSharedPtr context) |
Sets the scripting context of the object. More... | |
void | unapplyObjectStyle (AppliedStyleEntrySharedPtr appliedStyleEntry) |
void | unapplyObjectStyles () |
Unapplies and removes all applied styles. More... | |
~Object () override | |
![]() | |
bool | isTypeOf (const Metaclass *objectType) const |
Determines if the type of this object is the given type or derived from it. More... | |
virtual | ~MetaObject () |
![]() | |
template<typename DataType > | |
void | addPropertyModifier (const PropertyType< DataType > &propertyType, typename PropertyType< DataType >::Descriptor::ModifierCallback callback, void *owner) |
template<typename DataType > | |
void | addPropertyNotificationHandler (const PropertyType< DataType > &propertyType, typename PropertyType< DataType >::Descriptor::NotificationCallback callback, void *owner) |
template<typename DataType > | |
void | addPropertyValueSource (const PropertyType< DataType > &propertyType, typename PropertyType< DataType >::Descriptor::TypedValueSource *valueSource, PropertyValuePrecedence precedence, void *ownerPointer) |
template<typename DataType > | |
void | addPropertyValueSource (const PropertyType< DataType > &propertyType, typename PropertyType< DataType >::Descriptor::TypedValueSource *valueSource, PropertyValuePrecedence precedence, AbstractPropertyTypeDescriptor::ValueSourceOwner *owner) |
PropertyStorageContainer::iterator | beginPropertyStorage () |
Returns the begin iterator to the internal property storage container. More... | |
PropertyStorageContainer::const_iterator | beginPropertyStorage () const |
Returns the begin iterator to the internal property storage container. More... | |
void | clearPropertyFlag (AbstractPropertyType propertyType, uint32_t flag) |
void | copyLocalValue (const PropertyObject &other, AbstractPropertyType propertyType) |
Copies local value of single property from another object. More... | |
void | copyLocalValues (const PropertyObject &other) |
Copies all local values from another object. More... | |
PropertyStorageContainer::iterator | endPropertyStorage () |
Returns the end iterator to the internal property storage container. More... | |
PropertyStorageContainer::const_iterator | endPropertyStorage () const |
Returns the end iterator to the internal property storage container. More... | |
template<typename DataType > | |
PropertyType< DataType >::Traits::ReturnType | getAbstractProperty (AbstractPropertyType abstractPropertyType) const |
template<typename DataType > | |
PropertyType< DataType >::Traits::ReturnType | getAbstractPropertyBase (AbstractPropertyType abstractPropertyType) const |
template<typename DataType > | |
optional< typename PropertyType< DataType >::Traits::ReturnType > | getOptionalAbstractProperty (AbstractPropertyType abstractPropertyType) const |
template<typename DataType > | |
optional< typename PropertyType< DataType >::Traits::ReturnType > | getOptionalProperty (const PropertyType< DataType > &propertyType) const |
Evaluates the property value in the same way as the overload above but does not default to the value in property metadata if there are no inputs to the property value. More... | |
template<typename DataType > | |
optional< typename PropertyType< DataType >::Traits::ReturnType > | getOptionalPropertyBase (const PropertyType< DataType > &propertyType) const |
Returns the current value of a property disregarding modifiers, but does not default to the value in property metadata if there are no inputs to the property value. More... | |
template<typename DataType > | |
PropertyType< DataType >::Traits::ReturnType | getProperty (const PropertyType< DataType > &propertyType) const |
Returns the current value of a property type. More... | |
template<typename DataType > | |
PropertyType< DataType >::Traits::ReturnType | getPropertyBase (const PropertyType< DataType > &propertyType) const |
Returns the current value of a property disregarding modifiers. More... | |
template<typename DataType > | |
size_t | getPropertyNotificationHandlerCount (const PropertyType< DataType > &propertyType) const |
Gets number of current notification handlers for given property type. More... | |
bool | hasBaseValue (AbstractPropertyType propertyType) const |
Evaluates whether there are any inputs into the property value, disregarding modifiers. More... | |
bool | hasLocalValue (AbstractPropertyType propertyType) const |
Evaluates whether there is a local value set for the property. More... | |
bool | hasNonClassValue (AbstractPropertyType propertyType) const |
Evaluates whether there is a value of any precedence higher than class default value set for the property. More... | |
bool | hasValue (AbstractPropertyType propertyType) const |
Evaluates whether there are any inputs into the property value. More... | |
bool | isPropertyFlagSet (AbstractPropertyType propertyType, uint32_t flag) const |
PropertyObject () | |
void | removeKzbProperties (flat_set< AbstractPropertyType > *keepProperties) |
Remove all KZB properties that are not included in a given set. More... | |
void | removeKzbProperties () |
Remove all KZB properties. More... | |
template<typename DataType > | |
void | removeLocalPropertyValueSource (const PropertyType< DataType > &propertyType, typename PropertyType< DataType >::Descriptor::TypedValueSource *valueSource, void *ownerPointer) |
void | removeLocalValue (AbstractPropertyType propertyType) |
Removes the local value associated with the property. More... | |
template<typename DataType > | |
void | removePropertyModifier (const PropertyType< DataType > &propertyType, typename PropertyType< DataType >::Descriptor::ModifierCallback callback, void *owner) |
template<typename DataType > | |
void | removePropertyNotificationHandler (const PropertyType< DataType > &propertyType, typename PropertyType< DataType >::Descriptor::NotificationCallback callback, void *owner) |
template<typename DataType > | |
void | removePropertyValueSource (const PropertyType< DataType > &propertyType, typename PropertyType< DataType >::Descriptor::TypedValueSource *valueSource, void *ownerPointer) |
template<typename DataType > | |
void | setAbstractProperty (AbstractPropertyType abstractPropertyType, typename PropertyType< DataType >::Traits::ParameterType value) |
template<typename DataType > | |
void | setProperty (const PropertyType< DataType > &propertyType, typename PropertyType< DataType >::Traits::ParameterType value) |
Sets the local value of a property type. More... | |
void | setPropertyFlag (AbstractPropertyType propertyType, uint32_t flag) |
void | validatePropertyModifiers (AbstractPropertyType propertyType) |
virtual | ~PropertyObject () |
![]() | |
void | addBindingRuntime (AbstractBindingRuntimeSharedPtr entry, shared_ptr< void > owner) |
Adds an already-created binding runtime to this binding host. More... | |
AbstractBindingRuntimeSharedPtr | setBinding (AbstractBindingSharedPtr binding, shared_ptr< RenderPass > templateRoot, AbstractPropertyType propertyType, PropertyField field, PropertyValuePrecedence precedence) |
Wrapper for setting a binding. More... | |
AbstractBindingRuntimeSharedPtr | setBinding (AbstractBindingSharedPtr binding, shared_ptr< RenderPass > templateRoot, AbstractPropertyType propertyType, PropertyField field) |
Wrapper for setting a binding. More... | |
AbstractBindingRuntimeSharedPtr | setBinding (AbstractBindingSharedPtr binding, shared_ptr< RenderPass > templateRoot, AbstractPropertyType propertyType, PropertyValuePrecedence precedence) |
Wrapper for setting a binding. More... | |
AbstractBindingRuntimeSharedPtr | setBinding (AbstractBindingSharedPtr binding, AbstractPropertyType propertyType, PropertyField field, PropertyValuePrecedence precedence) |
Wrapper for setting a binding. More... | |
AbstractBindingRuntimeSharedPtr | setBinding (AbstractBindingSharedPtr binding, AbstractPropertyType propertyType, PropertyField field) |
Wrapper for setting a binding. More... | |
AbstractBindingRuntimeSharedPtr | setBinding (AbstractBindingSharedPtr binding, AbstractPropertyType propertyType, PropertyValuePrecedence precedence) |
Wrapper for setting a binding. More... | |
AbstractBindingRuntimeSharedPtr | setBinding (AbstractBindingSharedPtr binding, AbstractPropertyType propertyType) |
Wrapper for setting a binding. More... | |
AbstractBindingRuntimeSharedPtr | setBinding (AbstractBindingSharedPtr binding, shared_ptr< RenderPass > templateRoot) |
Sets a binding with no target. More... | |
AbstractBindingRuntimeSharedPtr | setBinding (AbstractBindingSharedPtr binding) |
Wrapper for setting a binding with no target. More... | |
AbstractBindingRuntimeSharedPtr | setBindingWithOwner (AbstractBindingSharedPtr binding, shared_ptr< void > owner, shared_ptr< RenderPass > templateRoot, AbstractPropertyType propertyType, PropertyField field, PropertyValuePrecedence precedence) |
Sets a binding to a certain property. More... | |
AbstractBindingRuntimeSharedPtr | setBindingWithOwner (AbstractBindingSharedPtr binding, shared_ptr< void > owner, AbstractPropertyType propertyType, PropertyField field, PropertyValuePrecedence precedence) |
Wrapper for setting a binding with owner. More... | |
AbstractBindingRuntimeSharedPtr | setBindingWithOwner (AbstractBindingSharedPtr binding, shared_ptr< void > owner, AbstractPropertyType propertyType) |
Wrapper for setting a binding with owner. More... | |
AbstractBindingRuntimeSharedPtr | setBindingWithOwner (AbstractBindingSharedPtr binding, shared_ptr< void > owner, shared_ptr< RenderPass > templateRoot) |
Sets a binding with no target. More... | |
AbstractBindingRuntimeSharedPtr | setBindingWithOwner (AbstractBindingSharedPtr binding, shared_ptr< void > owner) |
Wrapper for setting a binding with no target. More... | |
AbstractBindingRuntimeSharedPtr | setModifierBinding (AbstractBindingSharedPtr binding, shared_ptr< RenderPass > templateRoot, AbstractPropertyType propertyType, PropertyField field) |
Wrapper for setting a modifier binding. More... | |
AbstractBindingRuntimeSharedPtr | setModifierBinding (AbstractBindingSharedPtr binding, AbstractPropertyType propertyType, PropertyField field) |
Wrapper for setting a modifier binding. More... | |
AbstractBindingRuntimeSharedPtr | setModifierBinding (AbstractBindingSharedPtr binding, AbstractPropertyType propertyType) |
Wrapper for setting a modifier binding. More... | |
AbstractBindingRuntimeSharedPtr | setModifierBindingWithOwner (AbstractBindingSharedPtr binding, shared_ptr< void > owner, shared_ptr< RenderPass > templateRoot, AbstractPropertyType propertyType, PropertyField field) |
Sets a modifier binding. More... | |
AbstractBindingRuntimeSharedPtr | setModifierBindingWithOwner (AbstractBindingSharedPtr binding, shared_ptr< void > owner, AbstractPropertyType propertyType, PropertyField field) |
Wrapper for setting a modifier binding. More... | |
AbstractBindingRuntimeSharedPtr | setModifierBindingWithOwner (AbstractBindingSharedPtr binding, shared_ptr< void > owner, AbstractPropertyType propertyType) |
Wrapper for setting a modifier binding. More... | |
![]() | |
BindingRuntimeConstIterator | beginBindingRuntimes () const |
Returns an iterator to the beginning of binding runtimes. More... | |
BindingRuntimeConstIterator | endBindingRuntimes () const |
Returns an iterator to the end of binding runtimes. More... | |
AbstractBindingRuntimeSharedPtr | getBindingRuntime (size_t idx) |
Gets binding by index. More... | |
size_t | getBindingRuntimeCount () const |
Gets the number of binding runtimes added to this node. More... | |
void | removeAllBindings () |
Removes all binding runtimes. More... | |
void | removeBinding (AbstractBindingRuntime &bindingRuntime) |
Removes a binding runtime added earlier. More... | |
void | removeBindingsWithOwner (shared_ptr< void > owner) |
Removes all binding runtimes with the specified owner. More... | |
![]() | |
static PropertyType< string > | CameraProperty |
Sets the Camera node that you want this render pass to use to render content. More... | |
static PropertyType< bool > | EnabledProperty |
Use the Enabled property to turn render passes and render pass trees on or off. More... | |
static PropertyType< Vector4 > | InputViewportAreaProperty |
Reports the size of the Viewport 2D that uses this render pass. More... | |
![]() | |
typedef vector< AppliedStyleEntrySharedPtr > | AppliedStyleContainer |
Applied style container. More... | |
![]() | |
AttachmentState | m_attachmentState |
Render pass attachment state. More... | |
ChildContainer | m_children |
Child render passes. More... | |
bool | m_enabled |
Render pass enabled state. More... | |
Node * | m_hostNode |
Pointer to host node this render pass is attached under. More... | |
PropertyType< Vector4 >::Descriptor::TypedValueSource | m_inputViewportAreaValueSource |
Value source for the input viewport area property. More... | |
RenderPass * | m_parent |
Pointer to parent render pass. More... | |
weak_ptr< RenderPass > | m_templateRoot |
Weak pointer to template root object of this render pass. More... | |
![]() | |
AppliedStyleContainer | m_appliedStyles |
Listing of applied styles applied to this object. More... | |
![]() | |
BindingRuntimeContainer | m_bindingRuntimes |
Bindings in this object. More... | |
Use the Pipeline State Render Pass to set for its child render passes the depth and stencil testing, transparency, and culling.
This render pass sets the rendering state before passing the control to its descendants. After the descendant render passes of a Pipeline State Render Pass execute, Kanzi restores the rendering state. If a Pipeline State Render Pass does not have any descendants, Kanzi does not apply the rendering state you set in that render pass.
You change the rendering state by setting the properties in a Pipeline State Render Pass. The default settings in a Pipeline State Render Pass that you can set are:
Kanzi groups the rendering state combinations that a Pipeline State Render Pass applies into these state stacks:
If you do not set a property, Kanzi uses the default or previously set value. See CompositionStack.
To turn on stencil test and only render where stencil buffer value is not 0:
To render only the back faces of objects:
To turn off alpha blending:
|
explicitprotected |
Constructor.
domain | Domain. |
name | Name of the Pipeline State Render Pass. |
|
inline |
Gets the value of the BlendModeProperty property.
|
inline |
Sets the value of the BlendModeProperty property.
value
parameter changed from GraphicsBlendMode to int.
|
inline |
Gets the value of the ColorWriteModeProperty property.
|
inline |
Sets the value of the ColorWriteModeProperty property.
|
inline |
Gets the value of the DepthTestFunctionProperty property.
|
inline |
Sets the value of the DepthTestFunctionProperty property.
|
inline |
Gets the value of the DepthWriteEnabledProperty property.
|
inline |
Sets the value of the DepthWriteEnabledProperty property.
|
inline |
Gets the value of the StencilTestFunctionProperty property.
|
inline |
Sets the value of the StencilTestFunctionProperty property.
|
inline |
Gets the value of the StencilReferenceValueProperty property.
|
inline |
Sets the value of the StencilReferenceValueProperty property.
|
inline |
Gets the value of the StencilMaskProperty property.
|
inline |
Sets the value of the StencilMaskProperty property.
|
inline |
Gets the value of the StencilFailOperationProperty property.
|
inline |
Sets the value of the StencilFailOperationProperty property.
|
inline |
Gets the value of the StencilPassDepthFailOperationProperty property.
|
inline |
Sets the value of the StencilPassDepthFailOperationProperty property.
|
inline |
Gets the value of the StencilPassDepthPassOperationProperty property.
|
inline |
Sets the value of the StencilPassDepthPassOperationProperty property.
|
inline |
Gets the value of the StencilWriteEnabledProperty property.
|
inline |
Sets the value of the StencilWriteEnabledProperty property.
|
inline |
Gets the value of the CullModeProperty property.
|
inline |
Sets the value of the CullModeProperty property.
|
inline |
Gets the value of the ViewportProperty property.
|
inline |
Sets the value of the ViewportProperty property.
|
inline |
Gets the value of the ViewportModeProperty property.
|
inline |
Sets the value of the ViewportModeProperty property.
|
inline |
Gets the value of the ScissorProperty property.
|
inline |
Sets the value of the ScissorProperty property.
|
inline |
Gets the value of the ScissorModeProperty property.
|
inline |
Sets the value of the ScissorModeProperty property.
|
inline |
|
inline |
Sets the value of the PolygonDepthOffsetProperty.
value | The polygon depth offset. |
|
static |
|
static |
Create a Pipeline State Render Pass.
domain | The domain to use. |
name | The name of the Pipeline State Render Pass. |
|
protected |
Push the color or blend state into the composition stack.
compositionStack | Composition stack to use. |
|
protected |
Push the depth or stencil state into the composition stack.
compositionStack | Composition stack to use. |
|
protected |
Push the rasterization state into the composition stack.
compositionStack | Composition stack to use. |
|
protected |
Push the Viewport 2D scissor state into the composition stack.
Effectively pushes new composition area.
compositionStack | Composition stack to use. |
|
overrideprotectedvirtual |
RenderPass::renderOverride() implementation.
Reimplemented from kanzi::RenderPass.
|
overrideprotectedvirtual |
RenderPass::getCompositionRequirements() implementation.
Reimplemented from kanzi::RenderPass.
|
static |
Use the Blend Mode property to override the blend mode set in each node that this render pass renders.
The default value is kanzi::GraphicsBlendModeOpaque.
|
static |
Use the Color Write Mode property to set which channels the render pass writes to the color buffer.
To disable the color write, set the property to None. The default value is GraphicsColorWriteModeRGBA.
|
static |
Use the Depth Test Function property to control whether the depth test discards a fragment.
The default value is GraphicsCompareFunctionLess.
|
static |
Use the Depth Write Enabled property to set whether the render pass writes to the depth buffer.
The default value is True.
|
static |
Use the Stencil Test Function property to control whether the stencil test discards a fragment.
The default value is GraphicsCompareFunctionDisabled.
|
static |
Use the Stencil Reference Value property to set the reference value for the stencil test.
The default value is 0.
|
static |
Use the Stencil Mask property to set a mask on which the AND operation is executed with both the reference value and the stored stencil value when the test is done.
The default value is 255.
|
static |
Use the Stencil Fail Operation property to set the operation that the render pass performs when the stencil test fails.
The default value is GraphicsStencilOperationKeep.
|
static |
Use the Stencil Pass Depth Fail Operation property to set the operation that the render pass performs when the stencil test passes, but the depth test fails.
The default value is GraphicsStencilOperationKeep.
|
static |
Use the Stencil Pass Depth Pass Operation property to set the operation that the render pass performs when both, the stencil and the depth test, pass.
The default value is GraphicsStencilOperationKeep.
|
static |
Use the Stencil Write Enabled property to set whether to enable writing to the stencil buffer.
The default value is True.
|
static |
Use the Cull Mode property to set the culling of the triangle faces in the rendered meshes.
Set to:
|
static |
Use the Viewport property to modify the current rendering Viewport 2D node.
You can define the Viewport 2D node in either relative or absolute coordinates, the default is relative. Use the ViewportModeProperty property to set the coordinate type.
|
static |
Use the Viewport Mode property to set the coordinate type for the Viewport 2D node.
|
static |
Use the Scissor property to set the scissor test within the current rendering Viewport 2D node.
You can define the scissor in either relative or absolute coordinates, the default is relative. Use the ScissorModeProperty property to set the coordinate type.
|
static |
Use the Scissor Mode property to set the scissor test coordinate mode.
|
static |
Use the Polygon Depth Offset property to offset the geometry in the depth buffer.
For example, you can use the offset to render decals without z fighting.
Kanzi uses the two components (X, Y) of the vector to construct the polygon depth offset as follows:
dZ * X + units * Y
where:
Kanzi adds the polygon depth offset to the depth as the last step in fragment depth calculation.