RavEngine
Loading...
Searching...
No Matches
D3D12ShaderLibrary.hpp
1
#pragma once
2
#include <RGL/Types.hpp>
3
#include <RGL/ShaderLibrary.hpp>
4
#include <filesystem>
5
#include <span>
6
#include <cstdint>
7
#include <directx/d3d12.h>
8
#include <directx/d3dx12.h>
9
#include "RGLD3D12.hpp"
10
#include "D3D12PipelineShared.hpp"
11
12
namespace
RGL {
13
14
struct
ShaderLibraryD3D12
:
public
IShaderLibrary
{
15
Microsoft::WRL::ComPtr<ID3DBlob> shaderBlob;
16
CD3DX12_SHADER_BYTECODE shaderBytecode;
17
18
BufferBindingStore bufferBindingStore;
19
20
ShaderLibraryD3D12
();
21
ShaderLibraryD3D12
(
const
std::span<const uint8_t, std::dynamic_extent>);
22
ShaderLibraryD3D12
(
const
std::string_view,
const
FromSourceConfig
& config);
23
ShaderLibraryD3D12
(
const
std::filesystem::path& path);
24
25
void
InitFromBytes(
const
std::span<const uint8_t, std::dynamic_extent>);
26
27
~ShaderLibraryD3D12
() {}
28
private
:
29
void
ShaderReflect();
30
};
31
}
RGL::FromSourceConfig
Definition
ShaderLibrary.hpp:11
RGL::IShaderLibrary
Definition
ShaderLibrary.hpp:15
RGL::ShaderLibraryD3D12
Definition
D3D12ShaderLibrary.hpp:14
RavEngine
deps
RGL
src
D3D12ShaderLibrary.hpp
Generated by
1.9.8