Skip to content
Snippets Groups Projects
Commit 13a9d91f authored by Mark Oliver Mints's avatar Mark Oliver Mints
Browse files

[#71] Refactor: implement a create function for Pipeline Viewport State Create Info Struct

parent 45de3c26
No related branches found
No related tags found
1 merge request!83Resolve "Refactor Pipeline Config and Manager"
Pipeline #26691 passed
...@@ -255,9 +255,8 @@ namespace vkcv ...@@ -255,9 +255,8 @@ namespace vkcv
createPipelineInputAssemblyStateCreateInfo(config); createPipelineInputAssemblyStateCreateInfo(config);
// viewport state // viewport state
vk::Viewport viewport(0.f, 0.f, static_cast<float>(config.m_Width), static_cast<float>(config.m_Height), 0.f, 1.f); vk::PipelineViewportStateCreateInfo pipelineViewportStateCreateInfo =
vk::Rect2D scissor({ 0,0 }, { config.m_Width, config.m_Height }); createPipelineViewportStateCreateInfo(config);
vk::PipelineViewportStateCreateInfo pipelineViewportStateCreateInfo({}, 1, &viewport, 1, &scissor);
vk::CullModeFlags cullMode; vk::CullModeFlags cullMode;
switch (config.m_culling) { switch (config.m_culling) {
...@@ -595,4 +594,23 @@ namespace vkcv ...@@ -595,4 +594,23 @@ namespace vkcv
); );
return pipelineInputAssemblyStateCreateInfo; return pipelineInputAssemblyStateCreateInfo;
} }
vk::PipelineViewportStateCreateInfo
PipelineManager::createPipelineViewportStateCreateInfo(const PipelineConfig &config) {
vk::Viewport viewport(0.f, 0.f,
static_cast<float>(config.m_Width),
static_cast<float>(config.m_Height),
0.f, 1.f);
vk::Rect2D scissor({ 0,0 },
{ config.m_Width,
config.m_Height });
vk::PipelineViewportStateCreateInfo pipelineViewportStateCreateInfo({},
1,
&viewport,
1,
&scissor);
return pipelineViewportStateCreateInfo;
}
} }
...@@ -80,5 +80,12 @@ namespace vkcv ...@@ -80,5 +80,12 @@ namespace vkcv
* @return Pipeline Input Assembly State Create Info Struct * @return Pipeline Input Assembly State Create Info Struct
*/ */
vk::PipelineInputAssemblyStateCreateInfo createPipelineInputAssemblyStateCreateInfo(const PipelineConfig &config); vk::PipelineInputAssemblyStateCreateInfo createPipelineInputAssemblyStateCreateInfo(const PipelineConfig &config);
/**
* Create a Pipeline Viewport State Create Info Struct with default set viewport and scissor settings
* @param config provides with and height of the output window
* @return Pipeline Viewport State Create Info Struct
*/
vk::PipelineViewportStateCreateInfo createPipelineViewportStateCreateInfo(const PipelineConfig &config);
}; };
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment