Click or drag to resize
Ab4d.SharpEngine logo

RenderingLayer Class

RenderingLayer is a rendering layer with a queue that is used to store RenderingItem that have similar properties and are rendered one after another. Objects inside the rendering layer can be reordered or sorted to improve performance or make sure that the rendered results are correct (for example for transparency sorting).
Inheritance Hierarchy
SystemObject
  Ab4d.SharpEngine.RenderingLayersRenderingLayer
    Ab4d.SharpEngine.RenderingLayersSortedRenderingLayer

Namespace: Ab4d.SharpEngine.RenderingLayers
Assembly: Ab4d.SharpEngine (in Ab4d.SharpEngine.dll) Version: 2.0.8956+4c7684e186ca1be74e7a284fbe739d9a1b843d3c
Syntax
C#
public class RenderingLayer : IDisposable, 
	IEnumerable<RenderingItem>, IEnumerable

The RenderingLayer type exposes the following members.

Constructors
 NameDescription
Public methodRenderingLayer Constructor
Top
Properties
 NameDescription
Public propertyAllowedEffectType When not null it prevents adding RenderingItems with other effect type to this RenderingLayer.
Public propertyClearDepthStencilBufferAfterRendering When set to true, then DepthStencil buffer is cleared after rendering object in this rendering queue. When this rendering queue does not have any object, then DepthStencil buffer is not cleared. This may be used for BackgroundRenderingLayer so that object in that rendering queue will always be rendered behind any other objects.
Public propertyClearDepthStencilBufferBeforeRendering When set to true, then DepthStencil buffer is cleared before rendering object in this rendering queue. When this rendering queue does not have any object, then DepthStencil buffer is not cleared. This may be used for OverlayRenderingLayer so that object in that rendering queue will always be rendered on top of all other objects.
Public propertyCount Count of RenderingItem objects used by this RenderingLayer
Public propertyIsDisposed True if this RenderingLayer was disposed
Public propertyIsRenderingEnabled Gets or sets a Boolean that specifies if the objects in this rendering layer are rendered (true by default).
Public propertyItem Gets a RenderingItem with the specified index
Public propertyParentScene Gets the Scene where this RenderingLayer is used. This value is set when the RenderingLayer is added to the Scene. When null, then this RenderingLayer was not yet added to the Scene or was removed from the Scene.
Public propertySceneViewSpecific When not null, then the RenderingItems in this RenderingLayout are rendered only when the specified SceneView is rendered (and not for other SceneViews).
Top
Methods
 NameDescription
Public methodAdd Adds RenderingItem object to this layer
Public methodClear Removes all RenderingItem objects from this layer
Public methodDispose Dispose
Protected methodDispose(Boolean) Dispose
Public methodGetEnumerator Returns an enumerator that iterates through the collection.
Public methodRemove Removes RenderingItem object from this layer
Public methodReplace Replaces oldRenderingItem object with newRenderingItem (the newRenderingItem preserves the positions of the oldRenderingItem).
Public methodToString ToString
(Overrides ObjectToString)
Top
Fields
 NameDescription
Public fieldContainsTransparentObjects Gets a Boolean that specifies if this RenderingLayer can contains transparent objects.
Protected fieldisSortOrderDirty Specifies if Add, Remove, Replace or Clear method were called. This is used in SortedRenderingLayer to mark when new sort is needed.
Public fieldName Name of this RenderingLayer.
Protected fieldrenderingItems List of RenderingItem objects used by this RenderingLayer
Top
See Also