HikoGUI
A low latency retained GUI
Loading...
Searching...
No Matches
PipelineImage_Vertex.hpp
1// Copyright 2019 Pokitec
2// All rights reserved.
3
4#pragma once
5
6#include "TTauri/GUI/PipelineImage_ImageLocation.hpp"
7#include "TTauri/Foundation/vec.hpp"
8#include "TTauri/Foundation/aarect.hpp"
9#include "TTauri/Foundation/R32G32B32SFloat.hpp"
10#include "TTauri/Foundation/R32G32B32A32SFloat.hpp"
11#include <vulkan/vulkan.hpp>
12
13namespace tt::PipelineImage {
14
18struct Vertex {
21
24
27
32
33 static vk::VertexInputBindingDescription inputBindingDescription()
34 {
35 return {
36 0, sizeof(Vertex), vk::VertexInputRate::eVertex
37 };
38 }
39
40 static std::vector<vk::VertexInputAttributeDescription> inputAttributeDescriptions()
41 {
42 return {
43 { 0, 0, vk::Format::eR32G32B32Sfloat, offsetof(Vertex, position) },
44 { 1, 0, vk::Format::eR32G32B32A32Sfloat, offsetof(Vertex, clippingRectangle) },
45 { 2, 0, vk::Format::eR32G32B32Sfloat, offsetof(Vertex, atlasPosition) },
46 };
47 }
48};
49}
Class which represents an axis-aligned rectangle.
Definition aarect.hpp:13
Definition R32G32B32A32SFloat.hpp:13
Definition R32G32B32SFloat.hpp:13
A 4D vector.
Definition vec.hpp:37
Definition PipelineImage_Vertex.hpp:18
R32G32B32A32SFloat clippingRectangle
The position in pixels of the clipping rectangle relative to the bottom-left corner of the window,...
Definition PipelineImage_Vertex.hpp:23
R32G32B32SFloat position
The pixel-coordinates where the origin is located relative to the bottom-left corner of the window.
Definition PipelineImage_Vertex.hpp:20
R32G32B32SFloat atlasPosition
The x, y coordinate inside the texture-atlas, z is used as an index in the texture-atlas array.
Definition PipelineImage_Vertex.hpp:26