mirror of
https://gitlab.com/suyu-emu/suyu.git
synced 2024-03-15 23:15:44 +00:00
Vulkan: Add other additional pipeline specs
This commit is contained in:
parent
d33251db93
commit
4c82e47edd
|
@ -201,6 +201,22 @@ struct SimpleVertexSpec {
|
||||||
static constexpr bool has_images = false;
|
static constexpr bool has_images = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
struct SimpleStorageSpec {
|
||||||
|
static constexpr std::array<bool, 5> enabled_stages{true, false, false, false, true};
|
||||||
|
static constexpr bool has_storage_buffers = true;
|
||||||
|
static constexpr bool has_texture_buffers = false;
|
||||||
|
static constexpr bool has_image_buffers = false;
|
||||||
|
static constexpr bool has_images = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct SimpleImageSpec {
|
||||||
|
static constexpr std::array<bool, 5> enabled_stages{true, false, false, false, true};
|
||||||
|
static constexpr bool has_storage_buffers = false;
|
||||||
|
static constexpr bool has_texture_buffers = false;
|
||||||
|
static constexpr bool has_image_buffers = false;
|
||||||
|
static constexpr bool has_images = true;
|
||||||
|
};
|
||||||
|
|
||||||
struct DefaultSpec {
|
struct DefaultSpec {
|
||||||
static constexpr std::array<bool, 5> enabled_stages{true, true, true, true, true};
|
static constexpr std::array<bool, 5> enabled_stages{true, true, true, true, true};
|
||||||
static constexpr bool has_storage_buffers = true;
|
static constexpr bool has_storage_buffers = true;
|
||||||
|
@ -211,7 +227,7 @@ struct DefaultSpec {
|
||||||
|
|
||||||
ConfigureFuncPtr ConfigureFunc(const std::array<vk::ShaderModule, NUM_STAGES>& modules,
|
ConfigureFuncPtr ConfigureFunc(const std::array<vk::ShaderModule, NUM_STAGES>& modules,
|
||||||
const std::array<Shader::Info, NUM_STAGES>& infos) {
|
const std::array<Shader::Info, NUM_STAGES>& infos) {
|
||||||
return FindSpec<SimpleVertexSpec, SimpleVertexFragmentSpec, DefaultSpec>(modules, infos);
|
return FindSpec<SimpleVertexSpec, SimpleVertexFragmentSpec, SimpleStorageSpec, SimpleImageSpec, DefaultSpec>(modules, infos);
|
||||||
}
|
}
|
||||||
} // Anonymous namespace
|
} // Anonymous namespace
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue