HikoGUI
A low latency retained GUI
Loading...
Searching...
No Matches
pipeline_image_push_constants.hpp
1// Copyright Take Vos 2019.
2// Distributed under the Boost Software License, Version 1.0.
3// (See accompanying file LICENSE_1_0.txt or copy at https://www.boost.org/LICENSE_1_0.txt)
4
5#pragma once
6
7#include "../rapid/sfloat_rg32.hpp"
8#include <vulkan/vulkan.hpp>
9
10namespace hi::inline v1::pipeline_image {
11
12struct push_constants {
13 sfloat_rg32 windowExtent = extent2{0.0, 0.0};
14 sfloat_rg32 viewportScale = scale2{0.0, 0.0};
15 sfloat_rg32 atlasExtent = extent2{0.0, 0.0};
16 sfloat_rg32 atlasScale = scale2{0.0, 0.0};
17
18 static std::vector<vk::PushConstantRange> pushConstantRanges()
19 {
20 return {{vk::ShaderStageFlagBits::eVertex | vk::ShaderStageFlagBits::eFragment, 0, sizeof(push_constants)}};
21 }
22};
23
24} // namespace hi::inline v1::pipeline_image