Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
ActorShaderManager.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/renderer/helpers/shaderpacking/BlockLightingFlags.h"
7#include "mc/deps/minecraft_renderer/renderer/MaterialPtr.h"
8
9// auto generated forward declare list
10// clang-format off
11class Actor;
13class BlockPos;
14class BlockSource;
15class LightTexture;
17class ScreenContext;
18class Vec2;
19class Vec4;
20struct Brightness;
21struct BrightnessPair;
23namespace LightPropagation { class LightVolumeManager; }
24namespace mce { class ActorConstants; }
25namespace mce { class Color; }
26namespace mce { class RenderContext; }
27// clang-format on
28
30public:
31 // member variables
32 // NOLINTBEGIN
33 ::ll::TypedStorage<8, 16, ::mce::MaterialPtr> mEntityMaterial;
34 ::ll::TypedStorage<8, 16, ::mce::MaterialPtr> mTransparentEntityMaterial;
35 ::ll::TypedStorage<8, 16, ::mce::MaterialPtr> mStaticMaterial;
36 // NOLINTEND
37
38public:
39 // virtual functions
40 // NOLINTBEGIN
41 virtual ~ActorShaderManager();
42
43 virtual ::mce::Color _getOverlayColor(::Actor& actor, float a) const;
44 // NOLINTEND
45
46public:
47 // member functions
48 // NOLINTBEGIN
49 MCNAPI ::mce::MaterialPtr& getEntityMaterial();
50
51 MCNAPI ::mce::MaterialPtr& getStaticMaterial();
52
53 MCNAPI ::mce::MaterialPtr& getTransparentEntityMaterial();
54
56 ::ScreenContext& screenContext,
57 ::BaseActorRenderContext& entityContext,
58 ::Actor& entity,
59 ::mce::Color const& changeColor,
60 ::mce::Color const& changeColor2,
61 ::Vec2 const& uvScale,
62 float a,
63 ::Brightness lightEmission,
64 ::std::optional<::glm::vec3> const& lightEmissionColor,
65 bool allowOverlay
66 ) const;
67
68 MCAPI void setupShaderParameters(
69 ::ScreenContext& screenContext,
70 ::BaseActorRenderContext& entityContext,
71 ::Actor& actor,
72 float a
73 ) const;
74 // NOLINTEND
75
76public:
77 // static functions
78 // NOLINTBEGIN
79 MCAPI static void setEntityConstants(
80 ::mce::ActorConstants& entityConstants,
81 ::mce::RenderContext& renderContext,
82 ::mce::Color const& tileLightColor,
83 ::Vec2 const& tileLightColorUV,
84 ::glm::vec4 const& blockLightColor,
85 ::mce::Color const& overlay,
86 ::mce::Color const& changeColor,
87 ::mce::Color const& changeColor2,
88 ::mce::Color const& glintColor,
89 ::Vec2 const& glintUVScale,
90 ::Vec4 const& uvAnim,
91 float uvOffset1,
92 float uvOffset2,
93 float uvRot1,
94 float uvRot2
95 );
96
97 MCNAPI static void setupFoilShaderParameters(::ScreenContext& screenContext, ::TextureUVCoordinateSet const& icon);
98
99 MCNAPI static void setupFoilShaderParameters(
100 ::ScreenContext& screenContext,
101 ::mce::Color const& overlay,
102 ::mce::Color const& changeColor,
103 ::mce::Color const& changeColor2,
104 ::Vec2 const& uvScale
105 );
106
107 MCAPI static void setupShaderParameters(
108 ::ScreenContext& screenContext,
109 ::mce::Color const& overlay,
110 ::mce::Color const& changeColor,
111 ::mce::Color const& changeColor2
112 );
113
114 MCAPI static void setupShaderParameters(
115 ::ScreenContext& screenContext,
116 ::BaseActorRenderContext& entityContext,
117 ::Actor& actor,
118 ::mce::Color const& overlay,
119 float,
120 ::Vec4 const& uvAnim
121 );
122
123 MCAPI static void setupShaderParameters(
124 ::ScreenContext& screenContext,
125 ::BaseActorRenderContext& entityContext,
126 ::Actor& actor,
127 ::mce::Color const& overlay,
128 float,
129 ::Brightness lightEmission,
130 ::std::optional<::glm::vec3> const& lightEmissionColor
131 );
132
133 MCAPI static void setupShaderParameters(
134 ::ScreenContext& screenContext,
135 ::BaseActorRenderContext& entityContext,
136 ::Actor& entity,
137 ::mce::Color const& overlay,
138 ::mce::Color const& tintColor,
139 ::mce::Color const& tintColor2,
140 float,
141 ::Brightness lightEmission,
142 ::std::optional<::glm::vec3> const& lightEmissionColor
143 );
144
145 MCAPI static void setupShaderParameters(
146 ::ScreenContext& screenContext,
147 ::BlockSource& source,
148 ::BrightnessPair const& lightColorUV,
149 ::glm::vec4 const& blockLightColor,
150 float,
151 bool ignoreLighting,
152 ::LightTexture& lightTexture,
153 ::Vec2 const& uvScale,
154 ::Vec4 const& uvAnim
155 );
156
157 MCAPI static void setupShaderParameters(
158 ::ScreenContext& screenContext,
159 ::BaseActorRenderContext& entityContext,
160 ::Actor& entity,
161 ::mce::Color const& overlay,
162 ::mce::Color const& changeColor,
163 ::mce::Color const& changeColor2,
164 ::Vec4 const& uvAnim,
165 float br,
166 float,
167 bool isEnchanted
168 );
169
170 MCAPI static void setupShaderParameters(
171 ::ScreenContext& screenContext,
172 ::BlockSource& source,
173 ::BlockPos const& pos,
174 float a,
175 bool ignoreLighting,
176 ::LightTexture& lightTexture,
177 ::std::weak_ptr<::LightPropagation::LightVolumeManager> const& lightVolumeManager,
178 ::Vec2 const& uvScale,
179 ::Vec4 const& uvAnim,
180 ::shaderpacking::BlockLightingFlags flags
181 );
182
183 MCAPI static void setupShaderParameters(
184 ::ScreenContext& screenContext,
185 ::mce::Color const& overlay,
186 ::mce::Color const& changeColor,
187 ::mce::Color const& changeColor2,
188 ::mce::Color const& glintColor,
189 float uvOffset1,
190 float uvOffset2,
191 float uvRot1,
192 float uvRot2,
193 ::Vec2 const& glintUVScale,
194 ::Vec4 const& uvAnim,
195 float
196 );
197
198 MCAPI static void setupShaderParameters(
199 ::ScreenContext& screenContext,
200 ::BlockSource& source,
201 ::BlockPos const& pos,
202 ::mce::Color const& changeColor,
203 ::mce::Color const& changeColor2,
204 float,
205 ::LightTexture& lightTexture,
206 ::std::weak_ptr<::LightPropagation::LightVolumeManager> const& lightVolumeManager,
207 ::Vec2 const& uvScale,
208 bool ignoreLighting,
209 ::Brightness lightEmission,
210 ::std::optional<::glm::vec3> const& lightEmissionColor
211 );
212
213 MCAPI static void setupShaderParameters(
214 ::ScreenContext& screenContext,
215 ::BaseActorRenderContext& entityContext,
216 ::Actor& entity,
217 ::mce::Color const& overlay,
218 ::mce::Color const& changeColor,
219 ::mce::Color const& changeColor2,
220 ::mce::Color const& glintColor,
221 float uvOffset1,
222 float uvOffset2,
223 float uvRot1,
224 float uvRot2,
225 ::Vec2 const& glintUVScale,
226 ::Vec4 const& uvAnim,
227 float br,
228 ::Brightness lightEmission,
229 ::std::optional<::glm::vec3> const& lightEmissionColor
230 );
231 // NOLINTEND
232
233public:
234 // static variables
235 // NOLINTBEGIN
236 MCNAPI static ::ResourceLocation const& GLINT_ACTOR_TEXTURE_LOCATION();
237
238 MCNAPI static ::ResourceLocation const& GLINT_ITEM_TEXTURE_LOCATION();
239 // NOLINTEND
240
241public:
242 // destructor thunk
243 // NOLINTBEGIN
244 MCNAPI void $dtor();
245 // NOLINTEND
246
247public:
248 // virtual function thunks
249 // NOLINTBEGIN
250 MCAPI ::mce::Color $_getOverlayColor(::Actor& actor, float a) const;
251 // NOLINTEND
252
253public:
254 // vftables
255 // NOLINTBEGIN
256 MCNAPI static void** $vftable();
257 // NOLINTEND
258};
Definition ActorShaderManager.h:5
MCAPI void setupFoilShaderParameters(::ScreenContext &screenContext, ::BaseActorRenderContext &entityContext, ::Actor &entity, ::mce::Color const &changeColor, ::mce::Color const &changeColor2, ::Vec2 const &uvScale, float a, ::Brightness lightEmission, ::std::optional<::glm::vec3 > const &lightEmissionColor, bool allowOverlay) const
static MCAPI ::ResourceLocation const & GLINT_ITEM_TEXTURE_LOCATION()
MCAPI::mce::MaterialPtr & getStaticMaterial()
static MCAPI ::ResourceLocation const & GLINT_ACTOR_TEXTURE_LOCATION()
MCAPI::mce::MaterialPtr & getTransparentEntityMaterial()
MCAPI void $dtor()
static MCAPI void setupFoilShaderParameters(::ScreenContext &screenContext, ::mce::Color const &overlay, ::mce::Color const &changeColor, ::mce::Color const &changeColor2, ::Vec2 const &uvScale)
static MCAPI void setupFoilShaderParameters(::ScreenContext &screenContext, ::TextureUVCoordinateSet const &icon)
static MCAPI void ** $vftable()
MCAPI::mce::MaterialPtr & getEntityMaterial()
Definition Actor.h:116
Definition BaseActorRenderContext.h:5
Definition BlockPos.h:14
Definition BlockSource.h:72
Definition LightVolumeManager.h:7
Definition LightTexture.h:5
Definition ResourceLocation.h:15
Definition ScreenContext.h:5
Definition Vec2.h:5
Definition Vec4.h:5
Definition ActorConstants.h:7
Definition Color.h:13
Definition RenderContext.h:7
Definition BrightnessPair.h:8
Definition Brightness.h:8
Definition TextureUVCoordinateSet.h:5