HikoGUI
A low latency retained GUI
Loading...
Searching...
No Matches
pipeline_SDF_specialization_constants.hpp
1// Copyright Take Vos 2020.
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 tt::pipeline_SDF {
11
13 float sdf_r8maxDistance;
14 float atlasImageWidth;
15
16 [[nodiscard]] vk::SpecializationInfo specializationInfo(std::vector<vk::SpecializationMapEntry> &entries) const noexcept {
17 return {
18 narrow_cast<uint32_t>(std::ssize(entries)), entries.data(),
20 this
21 };
22 }
23
24 [[nodiscard]] static std::vector<vk::SpecializationMapEntry> specializationConstantMapEntries() noexcept {
25 return {
26 {0, offsetof(specialization_constants, sdf_r8maxDistance), sizeof(sdf_r8maxDistance)},
27 {1, offsetof(specialization_constants, atlasImageWidth), sizeof(atlasImageWidth)},
28 };
29 }
30};
31
32}
Definition pipeline_SDF_specialization_constants.hpp:12
T data(T... args)