8#include <unordered_map>
9#include <unordered_set>
14struct MaterialPipelineRequest
19struct MaterialPipelineResult
22 Pipeline* mPipeline =
nullptr;
25class MaterialPipelineCache
33 Pipeline* GetPipeline(uint32_t
id,
VertexType vertexType);
34 uint32_t GetNumPipelines()
const;
39 uint32_t GetMaxPipelines()
const;
40 void SetMaxPipelines(uint32_t maxPipelines);
44 static ThreadFuncRet BuildThreadFunc(
void* arg);
47 std::unordered_map<uint32_t, Pipeline*> mPipelines;
48 uint32_t mMaxPipelines = 256;
50 MutexObject* mMutex =
nullptr;
52 std::vector<MaterialPipelineRequest> mRequests;
53 std::vector<MaterialPipelineResult> mResults;
54 VkRenderPass mRenderPass;
55 bool mEnabled =
false;
57 ThreadObject* mBuildThread =
nullptr;
bool Update()
Definition Engine.cpp:710
VertexType
Definition Vertex.h:7
void Enable(bool enable)
Definition ImGuizmo.cpp:1055