LeviLamina
Loading...
Searching...
No Matches
MeshData.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core_graphics/enums/PrimitiveMode.h"
7#include "mc/deps/renderer/VertexField.h"
8
9// auto generated forward declare list
10// clang-format off
11namespace mce { struct MeshDataVertexFieldCounts; }
12// clang-format on
13
14namespace mce {
15
16class MeshData {
17public:
18 // MeshData inner types define
19 using Index = uint;
20
21public:
22 // member variables
23 // NOLINTBEGIN
24 ::ll::TypedStorage<1, 1, ::mce::PrimitiveMode> mMode;
25 ::ll::TypedStorage<8, 24, ::std::vector<::glm::vec3>> mPositions;
26 ::ll::TypedStorage<8, 24, ::std::vector<::glm::vec4>> mNormals;
27 ::ll::TypedStorage<8, 24, ::std::vector<::glm::vec4>> mTangents;
28 ::ll::TypedStorage<8, 24, ::std::vector<uint>> mIndices;
29 ::ll::TypedStorage<8, 24, ::std::vector<uint>> mColors;
30 ::ll::TypedStorage<8, 24, ::std::vector<ushort>> mBoneId0s;
31 ::ll::TypedStorage<8, 72, ::std::vector<::glm::vec2>[3]> mTextureUVs;
32 ::ll::TypedStorage<8, 24, ::std::vector<ushort>> mPBRTextureIndices;
33 ::ll::TypedStorage<8, 24, ::std::vector<uint>> mMERS;
34 ::ll::TypedStorage<8, 24, ::std::vector<uchar>> mGeoType;
35 ::ll::TypedStorage<1, 14, ::std::array<bool, 14>> mFieldEnabled;
36 // NOLINTEND
37
38public:
39 // prevent constructor by default
40 MeshData& operator=(MeshData const&);
41
42public:
43 // member functions
44 // NOLINTBEGIN
45 MCAPI MeshData();
46
47 MCAPI MeshData(::mce::MeshData&&);
48
49 MCAPI MeshData(::mce::MeshData const&);
50
51 MCAPI void clear();
52
53 MCAPI void enableField(::mce::VertexField field);
54
55 MCAPI void freeMemory();
56
57 MCAPI ::mce::MeshDataVertexFieldCounts getVertexFieldCount() const;
58
59 MCAPI bool hasField(::mce::VertexField field) const;
60
61 MCAPI ::mce::MeshData& operator=(::mce::MeshData&&);
62
63 MCAPI uint64 size() const;
64
65 MCAPI ~MeshData();
66 // NOLINTEND
67
68public:
69 // constructor thunks
70 // NOLINTBEGIN
71 MCAPI void* $ctor();
72
73 MCAPI void* $ctor(::mce::MeshData&&);
74
75 MCAPI void* $ctor(::mce::MeshData const&);
76 // NOLINTEND
77
78public:
79 // destructor thunk
80 // NOLINTBEGIN
81 MCAPI void $dtor();
82 // NOLINTEND
83};
84
85} // namespace mce
Definition MeshData.h:7
Definition MeshDataVertexFieldCounts.h:7