Grindstone Game Engine
v0.2.0
An open source game engine and toolkit.
Loading...
Searching...
No Matches
ShaderAsset.hpp
1
#pragma once
2
3
#include <string>
4
#include <vector>
5
#include "ShaderReflectionData.hpp"
6
#include "EngineCore/Assets/Asset.hpp"
7
8
namespace
Grindstone {
9
namespace
GraphicsAPI {
10
class
GraphicsPipeline;
11
class
DescriptorSetLayout;
12
}
13
14
struct
ShaderAsset
:
public
Asset
{
15
ShaderAsset
(
Uuid
uuid) :
Asset
(uuid, uuid.ToString()) {}
16
ShaderAsset
(
Uuid
uuid, std::string_view name,
GraphicsAPI::GraphicsPipeline
* pipeline) :
Asset
(uuid, name), pipeline(pipeline) {}
17
ShaderReflectionData
reflectionData;
18
uint8_t renderQueue = UINT8_MAX;
19
GraphicsAPI::GraphicsPipeline
* pipeline =
nullptr
;
20
GraphicsAPI::DescriptorSetLayout
* descriptorSetLayout =
nullptr
;
21
22
DEFINE_ASSET_TYPE(
"Shader"
, AssetType::Shader)
23
};
24
}
Grindstone::GraphicsAPI::DescriptorSetLayout
Definition
DescriptorSetLayout.hpp:11
Grindstone::GraphicsAPI::GraphicsPipeline
Definition
GraphicsPipeline.hpp:18
Grindstone::Uuid
Definition
Uuid.hpp:6
Grindstone::Asset
Definition
Asset.hpp:18
Grindstone::ShaderAsset
Definition
ShaderAsset.hpp:14
Grindstone::ShaderReflectionData
Definition
ShaderReflectionData.hpp:7
sources
code
EngineCore
Assets
Shaders
ShaderAsset.hpp
Generated by
1.12.0