Toast Engine
Toggle main menu visibility
Loading...
Searching...
No Matches
vertex.hpp
Go to the documentation of this file.
1
4
5
#pragma once
6
7
#include <array>
8
#include <cstddef>
9
#include <glm/glm.hpp>
10
11
namespace
renderer {
12
13
struct
Vertex
{
14
glm::vec<3, float> position;
15
glm::vec<3, float> normal;
16
glm::vec<2, float> uv;
17
glm::vec<4, float> tangent;
18
19
glm::vec<3, float> color {1.0f, 1.0f, 1.0f};
20
};
21
22
struct
SkinVertex
{
23
glm::vec<4, uint16_t> joints {0, 0, 0, 0};
24
glm::vec<4, float> weights {0.0f, 0.0f, 0.0f, 0.0f};
25
};
26
27
static_assert
(
sizeof
(
Vertex
) == 60,
"skinning.slang's kVertexStride"
);
28
static_assert
(offsetof(
Vertex
, position) == 0,
"skinning.slang's kVertexPositionOffset"
);
29
static_assert
(offsetof(
Vertex
, normal) == 12,
"skinning.slang's kVertexNormalOffset"
);
30
static_assert
(offsetof(
Vertex
, uv) == 24,
"skinning.slang's kVertexUvOffset"
);
31
static_assert
(offsetof(
Vertex
, tangent) == 32,
"skinning.slang's kVertexTangentOffset"
);
32
static_assert
(offsetof(
Vertex
, color) == 48,
"skinning.slang's kVertexColorOffset"
);
33
34
static_assert
(
sizeof
(
SkinVertex
) == 24,
"skinning.slang's kSkinStride"
);
35
static_assert
(offsetof(
SkinVertex
, joints) == 0,
"skinning.slang's kSkinJointsOffset"
);
36
static_assert
(offsetof(
SkinVertex
, weights) == 8,
"skinning.slang's kSkinWeightsOffset"
);
37
38
}
renderer::SkinVertex
Definition
vertex.hpp:22
renderer::Vertex
Definition
vertex.hpp:13
engine
src
toast
renderer
vertex.hpp
Generated by
1.17.0