|
Urho3D
|
Queue that contains both instanced and non-instanced draw calls. More...
#include </home/runner/work/urho3d-doxygen.github.io/urho3d-doxygen.github.io/urho3d_repo/Source/Urho3D/Graphics/Batch.h>
Public Member Functions | |
| void | Clear (int maxSortedInstances) |
| Clear for new frame by clearing all groups and batches. | |
| void | SortBackToFront () |
| Sort non-instanced draw calls back to front. | |
| void | SortFrontToBack () |
| Sort instanced and non-instanced draw calls front to back. | |
| void | SortFrontToBack2Pass (Vector< Batch * > &batches) |
| Sort batches front to back while also maintaining state sorting. | |
| void | SetInstancingData (void *lockedData, i32 stride, i32 &freeIndex) |
| Pre-set instance data of all groups. The vertex buffer must be big enough to hold all data. | |
| void | Draw (View *view, Camera *camera, bool markToStencil, bool usingLightOptimization, bool allowDepthWrite) const |
| Draw. | |
| i32 | GetNumInstances () const |
| Return the combined amount of instances. | |
| bool | IsEmpty () const |
| Return whether the batch group is empty. | |
Public Attributes | |
| HashMap< BatchGroupKey, BatchGroup > | batchGroups_ |
| Instanced draw calls. | |
| HashMap< hash32, hash32 > | shaderRemapping_ |
| Shader remapping table for 2-pass state and distance sort. | |
| HashMap< hash16, hash16 > | materialRemapping_ |
| Material remapping table for 2-pass state and distance sort. | |
| HashMap< hash16, hash16 > | geometryRemapping_ |
| Geometry remapping table for 2-pass state and distance sort. | |
| Vector< Batch > | batches_ |
| Unsorted non-instanced draw calls. | |
| Vector< Batch * > | sortedBatches_ |
| Sorted non-instanced draw calls. | |
| Vector< BatchGroup * > | sortedBatchGroups_ |
| Sorted instanced draw calls. | |
| i32 | maxSortedInstances_ |
| Maximum sorted instances. | |
| bool | hasExtraDefines_ |
| Whether the pass command contains extra shader defines. | |
| String | vsExtraDefines_ |
| Vertex shader extra defines. | |
| String | psExtraDefines_ |
| Pixel shader extra defines. | |
| StringHash | vsExtraDefinesHash_ |
| Hash for vertex shader extra defines. | |
| StringHash | psExtraDefinesHash_ |
| Hash for pixel shader extra defines. | |
Queue that contains both instanced and non-instanced draw calls.