Grindstone Game Engine v0.2.0
An open source game engine and toolkit.
Loading...
Searching...
No Matches
BaseAssetRenderer.hpp
1#pragma once
2
3#include <string>
4#include <vector>
5#include <map>
6#include <entt/fwd.hpp>
7#include <glm/vec3.hpp>
8
9#include <Common/HashedString.hpp>
10#include <Common/Rendering/GeometryRenderingStats.hpp>
11#include <Common/Rendering/RenderViewData.hpp>
12#include "EngineCore/Assets/AssetManager.hpp"
13
14using RenderQueueIndex = uint8_t;
15const RenderQueueIndex INVALID_RENDER_QUEUE = UINT8_MAX;
16
17namespace Grindstone {
18 namespace GraphicsAPI {
19 class CommandBuffer;
20 class DescriptorSet;
21 }
22
24 public:
25 virtual std::string GetName() const = 0;
26 virtual void SetEngineDescriptorSet(GraphicsAPI::DescriptorSet* descriptorSet) = 0;
28 GraphicsAPI::CommandBuffer* commandBuffer,
30 entt::registry& registry,
31 Grindstone::HashedString renderQueueHash
32 ) = 0;
33 };
34}
Definition BaseAssetRenderer.hpp:23
Definition CommandBuffer.hpp:73
Definition DescriptorSet.hpp:15
Definition HashedString.hpp:9
Definition GeometryRenderingStats.hpp:6
Definition RenderViewData.hpp:6