HikoGUI
A low latency retained GUI
Loading...
Searching...
No Matches
pipeline_SDF_vertex.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 "../geometry/axis_aligned_rectangle.hpp"
8#include "../rapid/sfloat_rgba16.hpp"
9#include "../rapid/sfloat_rgba32.hpp"
10#include "../rapid/sfloat_rgb32.hpp"
11#include <vulkan/vulkan.hpp>
12
13namespace tt::pipeline_SDF {
14
18struct vertex {
21
24
27
30
35 color(color) {}
36
37 static vk::VertexInputBindingDescription inputBindingDescription()
38 {
39 return {
40 0, sizeof(vertex), vk::VertexInputRate::eVertex
41 };
42 }
43
44 static std::vector<vk::VertexInputAttributeDescription> inputAttributeDescriptions()
45 {
46 return {
47 { 0, 0, vk::Format::eR32G32B32Sfloat, offsetof(vertex, position) },
48 { 1, 0, vk::Format::eR32G32B32A32Sfloat, offsetof(vertex, clippingRectangle) },
49 { 2, 0, vk::Format::eR32G32B32Sfloat, offsetof(vertex, textureCoord) },
50 { 3, 0, vk::Format::eR16G16B16A16Sfloat, offsetof(vertex, color) }
51 };
52 }
53};
54}
This is a RGBA floating point color.
Definition color.hpp:36
Class which represents an axis-aligned rectangle.
Definition axis_aligned_rectangle.hpp:20
Definition pipeline_SDF_vertex.hpp:18
sfloat_rgb32 textureCoord
The x, y (relative to bottom-left) coordinate inside the texture-atlas, z is used as an index in the ...
Definition pipeline_SDF_vertex.hpp:26
sfloat_rgba16 color
The color of the glyph.
Definition pipeline_SDF_vertex.hpp:29
sfloat_rgb32 position
The pixel-coordinates where the origin is located relative to the bottom-left corner of the window.
Definition pipeline_SDF_vertex.hpp:20
sfloat_rgba32 clippingRectangle
Clipping rectangle. (x,y)=bottom-left, (z,w)=top-right.
Definition pipeline_SDF_vertex.hpp:23
Definition sfloat_rgb32.hpp:12
Definition sfloat_rgba16.hpp:19
Definition sfloat_rgba32.hpp:15