LeviLamina
Loading...
Searching...
No Matches
BaseActorRenderer.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/renderer/ActorShaderManager.h"
7#include "mc/deps/minecraft_renderer/renderer/MaterialPtr.h"
8
9// auto generated forward declare list
10// clang-format off
11class Quaternion;
12class Tessellator;
13class Vec3;
15namespace mce { class Color; }
16namespace mce { class Mesh; }
17// clang-format on
18
20public:
21 // BaseActorRenderer inner types define
22 using NameplateBackgroundInfo = ::std::variant<::std::shared_ptr<::mce::Mesh>, int>;
23
24public:
25 // member variables
26 // NOLINTBEGIN
27 ::ll::TypedStorage<8, 16, ::mce::MaterialPtr> mNameTagBackgroundMat;
28 ::ll::TypedStorage<8, 16, ::mce::MaterialPtr> mNameTagBackgroundWithBackfaceMat;
29 ::ll::TypedStorage<8, 16, ::mce::MaterialPtr> mNameTagTextMat;
30 ::ll::TypedStorage<8, 16, ::mce::MaterialPtr> mNameTagTextWithBackfaceMat;
31 ::ll::TypedStorage<8, 16, ::mce::MaterialPtr> mDepthTestedNameTagMat;
32 ::ll::TypedStorage<8, 16, ::mce::MaterialPtr> mDepthTestedNameTagWithBackfaceMat;
33 ::ll::TypedStorage<8, 16, ::mce::MaterialPtr> mDepthTestedNameTextMat;
34 ::ll::TypedStorage<8, 16, ::mce::MaterialPtr> mDepthTestedNameTextWithBackfaceMat;
35 // NOLINTEND
36
37public:
38 // virtual functions
39 // NOLINTBEGIN
40 virtual ~BaseActorRenderer() /*override*/;
41 // NOLINTEND
42
43public:
44 // member functions
45 // NOLINTBEGIN
46 MCAPI BaseActorRenderer();
47
48 MCAPI ::std::vector<::NameTagRenderObject> extractRenderTextObjects(
49 ::Tessellator& tessellator,
50 ::std::string const& str,
51 ::std::vector<int> const& widths,
52 ::Vec3 const& pos,
53 ::mce::Color const& color,
54 float scale,
55 ::std::optional<::Quaternion> const& rotation,
56 ::std::optional<::mce::Color> const& backgroundColor,
57 bool depthTest,
58 bool showBackface,
59 bool showTextBackface
60 ) const;
61
62 MCFOLD ::mce::MaterialPtr& getDepthTestedNameTagMat();
63
64 MCFOLD ::mce::MaterialPtr& getDepthTestedNameTextMat();
65 // NOLINTEND
66
67public:
68 // static functions
69 // NOLINTBEGIN
70 MCAPI static ::NameTagRenderObject _extractRenderTextObject(
71 ::Tessellator& tessellator,
72 ::std::string const& str,
73 ::std::vector<int> const& widths,
74 ::Vec3 const& pos,
75 ::mce::Color const& textColor,
76 ::mce::MaterialPtr const* tagMatOverride,
77 ::mce::MaterialPtr const* textMatOverride,
78 ::mce::Color const& tagColor,
79 float scale,
80 ::std::optional<::Quaternion> const& rotation
81 );
82
83 MCAPI static ::std::variant<::std::shared_ptr<::mce::Mesh>, int>
84 _makeTextBackground(::Tessellator& tessellator, ::std::string const& str, ::std::vector<int> const& widths);
85 // NOLINTEND
86
87public:
88 // static variables
89 // NOLINTBEGIN
90 MCAPI static ::mce::Color const& NAME_TAG_BACKGROUND_COLOR();
91
92 MCAPI static ::mce::Color const& NAME_TAG_BACKGROUND_COLOR_EDU();
93 // NOLINTEND
94
95public:
96 // constructor thunks
97 // NOLINTBEGIN
98 MCAPI void* $ctor();
99 // NOLINTEND
100
101public:
102 // destructor thunk
103 // NOLINTBEGIN
104 MCAPI void $dtor();
105 // NOLINTEND
106
107public:
108 // vftables
109 // NOLINTBEGIN
110 MCNAPI static void** $vftable();
111 // NOLINTEND
112};
Definition ActorShaderManager.h:5
Definition BaseActorRenderer.h:5
static MCAPI void ** $vftable()
Definition Quaternion.h:10
Definition Tessellator.h:5
Definition Vec3.h:10
Definition Color.h:13
Definition Mesh.h:7
Definition NameTagRenderObject.h:5