Search Results for

    Show / Hide Table of Contents

    Class BatcherMeshProcessor

    Struct that represents a mesh to render.

    Inheritance
    object
    MeshProcessor
    BatcherMeshProcessor
    DynamicBatchMeshProcessor
    Inherited Members
    MeshProcessor.GraphicsContext
    MeshProcessor.RenderManager
    MeshProcessor.IsActivated
    MeshProcessor.Priority
    MeshProcessor.Initialize()
    MeshProcessor.Dispose()
    Namespace: Evergine.Framework.Graphics
    Assembly: Evergine.Framework.dll
    Syntax
    public abstract class BatcherMeshProcessor : MeshProcessor

    Constructors

    BatcherMeshProcessor()

    Initializes a new instance of the BatcherMeshProcessor class.

    Declaration
    public BatcherMeshProcessor()

    Methods

    CheckMeshRequirements(RenderMeshInfo)

    Checks the requirements for a mesh to be batched with others.

    Declaration
    protected abstract bool CheckMeshRequirements(RenderMeshInfo meshInfo)
    Parameters
    Type Name Description
    RenderMeshInfo meshInfo

    The mesh info.

    Returns
    Type Description
    bool

    True if everything is OK.

    Collect()

    Collects batches to be rendered.

    Declaration
    public override void Collect()
    Overrides
    MeshProcessor.Collect()

    CouldBatch(RenderObjectInfo, RenderObjectInfo)

    Compares whether this processor can batch these two meshes.

    Declaration
    public override bool CouldBatch(RenderObjectInfo objectInfo1, RenderObjectInfo objectInfo2)
    Parameters
    Type Name Description
    RenderObjectInfo objectInfo1
    RenderObjectInfo objectInfo2
    Returns
    Type Description
    bool

    True if the batch is possible.

    Overrides
    MeshProcessor.CouldBatch(RenderObjectInfo, RenderObjectInfo)

    CouldRenderObject(RenderObjectInfo)

    Can render a single render object.

    Declaration
    public override bool CouldRenderObject(RenderObjectInfo renderObjectInfo)
    Parameters
    Type Name Description
    RenderObjectInfo renderObjectInfo

    The render object info.

    Returns
    Type Description
    bool

    True if this mesh processor can render an object.

    Overrides
    MeshProcessor.CouldRenderObject(RenderObjectInfo)

    Destroy()

    Destroys all buffers.

    Declaration
    protected override void Destroy()
    Overrides
    MeshProcessor.Destroy()

    EmitBatch(int, int, DrawContext, RenderObjectInfoAccessor)

    Emit a render batch.

    Declaration
    public override RenderUnit EmitBatch(int startIndex, int batchElementCount, DrawContext drawContext, MeshProcessor.RenderObjectInfoAccessor renderObjectInfoAccessor)
    Parameters
    Type Name Description
    int startIndex

    Start mesh index.

    int batchElementCount
    DrawContext drawContext

    The draw context.

    MeshProcessor.RenderObjectInfoAccessor renderObjectInfoAccessor

    Function to obtain the renderObjectInfo by its index.

    Returns
    Type Description
    RenderUnit

    Id of this batch inside the mesh processor.

    Overrides
    MeshProcessor.EmitBatch(int, int, DrawContext, MeshProcessor.RenderObjectInfoAccessor)

    Reset()

    Resets processors to be ready for batch processing.

    Declaration
    public override void Reset()
    Overrides
    MeshProcessor.Reset()

    Extension Methods

    ReflectionHelper.GetMemberAssembly(object)
    ReflectionHelper.GetTypeName(object)
    In this article
    Back to top
    Generated by DocFX