Plasma Engine  2.0
Loading...
Searching...
No Matches
RmlUiRenderData.h
1#pragma once
2
3#include <Core/ResourceManager/ResourceHandle.h>
4#include <Foundation/Math/Rect.h>
5#include <RendererCore/Pipeline/RenderData.h>
6
8
9namespace plRmlUiInternal
10{
11 struct Vertex
12 {
13 PL_DECLARE_POD_TYPE();
14
15 plVec3 m_Position;
16 plVec2 m_TexCoord;
17 plColorLinearUB m_Color;
18 };
19
21 {
22 plUInt32 m_uiTriangleCount = 0;
23 plGALBufferHandle m_hVertexBuffer;
24 plGALBufferHandle m_hIndexBuffer;
26 };
27
28 struct Batch
29 {
30 plMat4 m_Transform = plMat4::MakeIdentity();
31 plVec2 m_Translation = plVec2(0);
32 CompiledGeometry m_CompiledGeometry;
33 plRectFloat m_ScissorRect = plRectFloat(0, 0);
34 bool m_bEnableScissorRect = false;
35 bool m_bTransformScissorRect = false;
36 };
37} // namespace plRmlUiInternal
38
40{
41 PL_ADD_DYNAMIC_REFLECTION(plRmlUiRenderData, plRenderData);
42
43public:
45 : m_Batches(pAllocator)
46 {
47 }
48
50};
Base class for all memory allocators.
Definition Allocator.h:23
A 8bit per channel unsigned normalized (values interpreted as 0-1) color storage format that represen...
Definition Color8UNorm.h:61
Definition DynamicArray.h:81
Definition RendererFoundationDLL.h:418
static plMat4Template< float > MakeIdentity()
Definition Mat4_inl.h:75
Base class for all render data. Render data must contain all information that is needed to render the...
Definition RenderData.h:14
Definition RmlUiRenderData.h:40
Definition RmlUiRenderData.h:29
Definition RmlUiRenderData.h:21
Definition RmlUiRenderData.h:12