18 #include <ht_platform.h> 19 #include <ht_pipeline_base.h> 20 #include <ht_pipeline_resource.h> 21 #include <ht_shader.h> 22 #include <ht_shadervariablechunk.h> 23 #include <ht_directx.h> 24 #include <ht_d3d12shader.h> 25 #include <ht_refcounted.h> 40 ID3D12PipelineState* GetPipeline();
42 bool Initialize(Resource::PipelineHandle handle, ID3D12Device* device);
44 virtual bool VInitialize(
const Resource::PipelineHandle handle);
45 virtual bool VUpdate()
override;
49 virtual bool VSetInt(
size_t offset,
int data)
override;
50 virtual bool VSetDouble(
size_t offset,
double data)
override;
51 virtual bool VSetFloat(
size_t offset,
float data)
override;
52 virtual bool VSetFloat2(
size_t offset, Math::Vector2 data)
override;
53 virtual bool VSetFloat3(
size_t offset, Math::Vector3 data)
override;
54 virtual bool VSetFloat4(
size_t offset, Math::Vector4 data)
override;
55 virtual bool VSetMatrix4(
size_t offset, Math::Matrix4 data)
override;
58 D3D12_GRAPHICS_PIPELINE_STATE_DESC m_description;
59 ID3D12PipelineState* m_pipelineState;
61 std::map<Resource::Pipeline::ShaderSlot, ShaderHandle> m_shaders;
63 D3D12_RASTERIZER_DESC RasterDescFromHandle(
const Resource::PipelineHandle& handle);
64 D3D12_SHADER_BYTECODE ShaderBytecodeFromHandle(Resource::Pipeline::ShaderSlot slot,
const Resource::PipelineHandle& handle);
65 D3D12_INPUT_LAYOUT_DESC InputLayoutDescFromHandle(
const Resource::PipelineHandle& handle);
66 DXGI_FORMAT InputFormatFromElement(
const Resource::ShaderVariable::Type& element);
Hatchit Engine Copyright(c) 2015-2016 Third-Degree.
Definition: ht_color.h:19
Definition: ht_pipeline_base.h:39
Definition: ht_shadervariablechunk.h:38
Definition: ht_d3d12pipeline.h:33