<aside> <img src="/icons/layers_blue.svg" alt="/icons/layers_blue.svg" width="40px" /> FMeshPassProcessor::BuildMeshDrawCommands

</aside>

In this part, we will talk about the marked steps in this image:

And the processing part is:

Let's start by reviewing FMeshBatch. A mesh batch represents an individual section of a static mesh that contains only one material.

On the other hand, FMeshDrawCommand is from the render pass view. It can be seen as:

This is why you may see FMeshDrawCommands from different FMeshBatchs, but from the same pass, logically put together.

Mesh Processor

The core part we will look at is the mesh processor. You can check the official document here.

Diagram.drawio.svg

But you can treat it as a machine, eat all FMeshBatch s, and generate FMeshDrawCommands.

Register and instancing

The first thing is, where do they come?