29 #include <ht_platform.h> 30 #include <ht_resource.h> 31 #include <ht_jsonhelper.h> 32 #include <ht_shadervariable.h> 34 #include <ht_shader_resource.h> 47 std::string semanticName;
48 uint32_t semanticIndex;
49 ShaderVariable::Type type;
76 PolygonMode polygonMode;
78 bool frontCounterClockwise;
79 bool depthClampEnable;
100 bool perSampleShading;
112 static const int MAX_SHADERS = 6;
118 bool Initialize(
const std::string& fileName);
120 const std::string& GetRenderPassPath()
const;
125 const std::vector<Attribute>& GetVertexLayout()
const;
126 const std::vector<Attribute>& GetInstanceLayout()
const;
128 const std::vector<ShaderVariable*>& GetShaderVariables()
const;
130 const std::map<ShaderSlot, std::string>& GetSPVShaderPaths()
const;
131 const std::map<ShaderSlot, std::string>& GetCSOShaderPaths()
const;
133 const std::map<ShaderSlot, ShaderHandle>& GetSPVShaderHandles()
const;
134 const std::map<ShaderSlot, ShaderHandle>& GetCSOShaderHandles()
const;
137 std::string m_renderPassPath;
142 std::vector<Attribute> m_vertexLayout;
143 std::vector<Attribute> m_instanceLayout;
145 std::vector<ShaderVariable*> m_shaderVariables;
147 std::map<ShaderSlot, std::string> m_spvShaderPaths;
148 std::map<ShaderSlot, std::string> m_csoShaderPaths;
150 std::map<ShaderSlot, ShaderHandle> m_spvShaderHandles;
151 std::map<ShaderSlot, ShaderHandle> m_csoShaderHandles;
154 using PipelineHandle = Core::Handle<const Pipeline>;
Definition: ht_pipeline_resource.h:42
Definition: ht_resource.h:35
Hatchit Engine Copyright(c) 2015-2016 Third-Degree.
Definition: ht_assimp.h:31
Definition: ht_pipeline_resource.h:96
Definition: ht_pipeline_resource.h:66
Definition: ht_pipeline_resource.h:74
Definition: ht_pipeline_resource.h:45