LeviLamina
Loading...
Searching...
No Matches
BlockGeometryComponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/math/Matrix.h"
7#include "mc/deps/core/string/HashedString.h"
8#include "mc/world/level/block/components/BlockGeometryDescription.h"
9
10// auto generated forward declare list
11// clang-format off
12class BlockState;
13class BlockType;
15namespace ClientBlockPipeline { struct BlockSchematic; }
16// clang-format on
17
18struct BlockGeometryComponent {
19public:
20 // BlockGeometryComponent inner types declare
21 // clang-format off
24 struct DefaultRenderer;
25 // clang-format on
26
27 // BlockGeometryComponent inner types define
29 public:
30 // member variables
31 // NOLINTBEGIN
32 ::ll::TypedStorage<4, 64, ::Matrix> mTransformationMatrix;
33 // NOLINTEND
34 };
35
37 public:
38 // member variables
39 // NOLINTBEGIN
40 ::ll::TypedStorage<4, 64, ::Matrix> mTransformationMatrix;
41 // NOLINTEND
42 };
43
44 struct DefaultRenderer {};
45
46 using Renderer = ::std::variant<
50
51public:
52 // member variables
53 // NOLINTBEGIN
54 ::ll::TypedStorage<8, 48, ::HashedString> mGeometryName;
55 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::ClientBlockPipeline::BlockSchematic>> mBlockSchematic;
56 ::ll::TypedStorage<1, 1, bool> mNeedsLegacyTopRotation;
57 ::ll::TypedStorage<1, 1, bool> mUseBlockTypeLightAbsorption;
58 ::ll::TypedStorage<1, 1, bool> mIsFullBlock;
59 ::ll::TypedStorage<1, 1, bool> mIgnoreGeometryForIsSolid;
60 ::ll::TypedStorage<1, 1, bool> mIsFullBlockV1;
61 ::ll::TypedStorage<8, 48, ::HashedString> mCullingLayer;
62 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::BlockGeometryDescription::SharedInitializationData>>
63 mSharedInitializationData;
64 ::ll::TypedStorage<8, 24, ::std::variant<bool, ::std::set<::HashedString>>> mUVsLocked;
65 ::ll::TypedStorage<
66 4,
67 68,
68 ::std::variant<
72 mRenderer;
73 ::ll::TypedStorage<8, 8, ::BlockState const*> mNWayVisualRotationStateX;
74 ::ll::TypedStorage<8, 8, ::BlockState const*> mNWayVisualRotationStateY;
75 ::ll::TypedStorage<8, 8, ::BlockState const*> mNWayVisualRotationStateZ;
76 // NOLINTEND
77
78#ifdef LL_PLAT_S
79public:
80 // prevent constructor by default
81 BlockGeometryComponent();
82
83#else // LL_PLAT_C
84#endif
85public:
86 // member functions
87 // NOLINTBEGIN
88#ifdef LL_PLAT_C
89 MCAPI BlockGeometryComponent();
90#endif
91
92 MCAPI BlockGeometryComponent(::BlockGeometryComponent const& other);
93
94 MCAPI
95 BlockGeometryComponent(::BlockGeometryDescription const& blockGeometryDescription, ::BlockType const* blockType);
96
97 MCAPI ::BlockGeometryComponent& operator=(::BlockGeometryComponent const&);
98
99 MCAPI ~BlockGeometryComponent();
100 // NOLINTEND
101
102public:
103 // constructor thunks
104 // NOLINTBEGIN
105#ifdef LL_PLAT_C
106 MCAPI void* $ctor();
107#endif
108
109 MCAPI void* $ctor(::BlockGeometryComponent const& other);
110
111 MCAPI void* $ctor(::BlockGeometryDescription const& blockGeometryDescription, ::BlockType const* blockType);
112 // NOLINTEND
113
114public:
115 // destructor thunk
116 // NOLINTBEGIN
117 MCAPI void $dtor();
118 // NOLINTEND
119};
Definition BlockState.h:14
Definition BlockType.h:79
Definition BlockGeometryComponent.h:28
Definition BlockGeometryComponent.h:36
Definition BlockGeometryComponent.h:44
Definition BlockGeometryDescription.h:22
Definition BlockSchematic.h:7