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
13namespace ClientBlockPipeline { struct BlockSchematic; }
14// clang-format on
15
16struct BlockGeometryComponent {
17public:
18 // BlockGeometryComponent inner types declare
19 // clang-format off
21 struct DefaultRenderer;
22 // clang-format on
23
24 // BlockGeometryComponent inner types define
26 public:
27 // member variables
28 // NOLINTBEGIN
29 ::ll::TypedStorage<4, 64, ::Matrix> mTransformationMatrix;
30 // NOLINTEND
31 };
32
33 struct DefaultRenderer {};
34
35 using Renderer = ::std::
36 variant<::BlockGeometryComponent::DefaultRenderer, ::BlockGeometryComponent::DefaultPlusEmbeddedRenderer>;
37
38public:
39 // member variables
40 // NOLINTBEGIN
41 ::ll::TypedStorage<8, 48, ::HashedString> mGeometryName;
42 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::ClientBlockPipeline::BlockSchematic>> mBlockSchematic;
43 ::ll::TypedStorage<1, 1, bool> mNeedsLegacyTopRotation;
44 ::ll::TypedStorage<1, 1, bool> mUseBlockTypeLightAbsorption;
45 ::ll::TypedStorage<1, 1, bool> mIsFullBlock;
46 ::ll::TypedStorage<1, 1, bool> mIgnoreGeometryForIsSolid;
47 ::ll::TypedStorage<1, 1, bool> mIsFullBlockV1;
48 ::ll::TypedStorage<8, 48, ::HashedString> mCullingLayer;
49 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::BlockGeometryDescription::SharedInitializationData>>
50 mSharedInitializationData;
51 ::ll::TypedStorage<8, 24, ::std::variant<bool, ::std::set<::HashedString>>> mUVsLocked;
52 ::ll::TypedStorage<
53 4,
54 68,
55 ::std::
56 variant<::BlockGeometryComponent::DefaultRenderer, ::BlockGeometryComponent::DefaultPlusEmbeddedRenderer>>
57 mRenderer;
58 // NOLINTEND
59
60#ifdef LL_PLAT_S
61public:
62 // prevent constructor by default
63 BlockGeometryComponent& operator=(BlockGeometryComponent const&);
64 BlockGeometryComponent(BlockGeometryComponent const&);
65 BlockGeometryComponent();
66
67#else // LL_PLAT_C
68public:
69 // prevent constructor by default
70 BlockGeometryComponent(BlockGeometryComponent const&);
71
72#endif
73public:
74 // member functions
75 // NOLINTBEGIN
76#ifdef LL_PLAT_C
77 MCAPI BlockGeometryComponent();
78#endif
79
80 MCAPI explicit BlockGeometryComponent(::BlockGeometryDescription const& blockGeometryDescription);
81
82 MCAPI ::BlockGeometryComponent& operator=(::BlockGeometryComponent&&);
83
84#ifdef LL_PLAT_C
85 MCAPI ::BlockGeometryComponent& operator=(::BlockGeometryComponent const&);
86#endif
87
88 MCAPI ~BlockGeometryComponent();
89 // NOLINTEND
90
91public:
92 // constructor thunks
93 // NOLINTBEGIN
94#ifdef LL_PLAT_C
95 MCAPI void* $ctor();
96#endif
97
98 MCAPI void* $ctor(::BlockGeometryDescription const& blockGeometryDescription);
99 // NOLINTEND
100
101public:
102 // destructor thunk
103 // NOLINTBEGIN
104 MCAPI void $dtor();
105 // NOLINTEND
106};
Definition BlockGeometryComponent.h:25
Definition BlockGeometryComponent.h:33
Definition BlockGeometryDescription.h:20
Definition BlockSchematic.h:7