LeviLamina
Loading...
Searching...
No Matches
LevelRenderer.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/application/AppPlatformListener.h"
7#include "mc/deps/application/LowMemorySeverity.h"
8#include "mc/deps/core/utility/AutomaticID.h"
9#include "mc/deps/core/utility/NonOwnerPointer.h"
10#include "mc/deps/game_refs/StackRefResult.h"
11#include "mc/world/level/BlockChangedEventTarget.h"
12#include "mc/world/level/LevelListener.h"
13
14// auto generated forward declare list
15// clang-format off
16class Actor;
17class Block;
18class BlockPos;
19class BlockSource;
21class Dimension;
22class GameRenderer;
23class GeometryGroup;
24class HashedString;
25class IClientInstance;
27class MultiPlayerLevel;
28class Options;
29class ScreenContext;
30class SoundPlayerInterface;
31class Tessellator;
32class TextureAtlas;
33class WeakEntityRef;
34struct ActorBlockSyncMessage;
36struct BlockTessellator;
41struct ScreenshotOptions;
42struct SoundMapping;
43namespace cg { class ImageBuffer; }
44namespace mce { class TextureGroup; }
45// clang-format on
46
47class LevelRenderer : public ::LevelListener, public ::AppPlatformListener {
48public:
49 // member variables
50 // NOLINTBEGIN
95 // NOLINTEND
96
97public:
98 // prevent constructor by default
99 LevelRenderer& operator=(LevelRenderer const&);
102
103public:
104 // virtual functions
105 // NOLINTBEGIN
106 virtual ~LevelRenderer() /*override*/;
107
108 virtual void onAppSuspended() /*override*/;
109
110 virtual void onAppResumed() /*override*/;
111
112 virtual void onDeviceLost() /*override*/;
113
114 virtual void onLowMemory(::LowMemorySeverity) /*override*/;
115
116 virtual void onBlockChanged(
117 ::BlockSource& source,
118 ::BlockPos const& pos,
119 uint layer,
120 ::Block const& block,
121 ::Block const& oldBlock,
122 int updateFlags,
123 ::ActorBlockSyncMessage const* syncMsg,
124 ::BlockChangedEventTarget eventTarget,
125 ::Actor* blockChangeSource
126 ) /*override*/;
127
128 virtual void takePicture(
129 ::cg::ImageBuffer& outImage,
130 ::Actor* camera,
131 ::Actor* target,
132 ::ScreenshotOptions& screenshotOptions,
133 ::std::function<void(::cg::ImageBuffer&, ::ScreenshotOptions&)> completedScreenshotCallback
134 ) /*override*/;
135 // NOLINTEND
136
137public:
138 // member functions
139 // NOLINTBEGIN
141 ::IClientInstance& clientInstance,
142 ::MultiPlayerLevel& level,
143 ::std::shared_ptr<::Options> options,
144 ::std::shared_ptr<::mce::TextureGroup> textureGroup,
145 ::Bedrock::NotNullNonOwnerPtr<::TextureAtlas const> const& terrainTexture,
146 ::WeakEntityRef localUser,
147 ::GameRenderer& gameRenderer,
148 ::Bedrock::NotNullNonOwnerPtr<::SoundPlayerInterface> const& soundPlayer,
149 ::Bedrock::NotNullNonOwnerPtr<::GeometryGroup> const& geometryGroup,
150 ::SoundMapping const& sounds,
151 ::Bedrock::NotNullNonOwnerPtr<::ActorResourceDefinitionGroup const> const& actorResourceDefinitionGroup
152 );
153
154 MCNAPI void _createMeshes(::Tessellator& tessellator);
155
157
159
161 ::std::unordered_map<::HashedString, ::std::shared_ptr<::DataDrivenRenderer>> const& renderers,
162 ::MinecraftGameplayGraphicsResources& graphicsResources
163 );
164
166
167 MCNAPI void _initResources();
168
169 MCNAPI void _resetMeshes();
170
172
173 MCNAPI void frameUpdate(::ClientFrameUpdateContext& clientFrameUpdateContext);
174
175 MCNAPI ::BlockTessellator& getBlockRenderer();
176
177 MCNAPI ::StackRefResult<::RenderChunkCoordinator> getRenderChunkCoordinator(::DimensionType dimID);
178
179 MCNAPI void onDimensionChanged();
180
181 MCNAPI void onOptionsChanged();
182
183 MCNAPI void preRenderUpdate(
184 ::ScreenContext& screenContext,
185 ::LevelRenderPreRenderUpdateParameters& levelRenderPreRenderUpdateParameters
186 );
187
189
190 MCNAPI void reinit(
191 ::Bedrock::NotNullNonOwnerPtr<::TextureAtlas const> const& terrainTexture,
192 ::Bedrock::NotNullNonOwnerPtr<::GeometryGroup> const& geometryGroup,
193 ::Bedrock::NotNullNonOwnerPtr<::ActorResourceDefinitionGroup const> const& actorResourceDefinitionGroup
194 );
195
196 MCNAPI void renderLevel(::ScreenContext& screenContext, ::FrameRenderObject const& renderObj);
197
199
200 MCNAPI void tickLevelRenderer();
201 // NOLINTEND
202
203public:
204 // static variables
205 // NOLINTBEGIN
206 MCNAPI static float const& Z_FAR_MIN();
207
208 MCNAPI static float const& Z_NEAR();
209 // NOLINTEND
210
211public:
212 // constructor thunks
213 // NOLINTBEGIN
214 MCNAPI void* $ctor(
215 ::IClientInstance& clientInstance,
216 ::MultiPlayerLevel& level,
217 ::std::shared_ptr<::Options> options,
218 ::std::shared_ptr<::mce::TextureGroup> textureGroup,
219 ::Bedrock::NotNullNonOwnerPtr<::TextureAtlas const> const& terrainTexture,
220 ::WeakEntityRef localUser,
221 ::GameRenderer& gameRenderer,
222 ::Bedrock::NotNullNonOwnerPtr<::SoundPlayerInterface> const& soundPlayer,
223 ::Bedrock::NotNullNonOwnerPtr<::GeometryGroup> const& geometryGroup,
224 ::SoundMapping const& sounds,
225 ::Bedrock::NotNullNonOwnerPtr<::ActorResourceDefinitionGroup const> const& actorResourceDefinitionGroup
226 );
227 // NOLINTEND
228
229public:
230 // destructor thunk
231 // NOLINTBEGIN
232 MCNAPI void $dtor();
233 // NOLINTEND
234
235public:
236 // virtual function thunks
237 // NOLINTBEGIN
238 MCNAPI void $onAppSuspended();
239
240 MCNAPI void $onAppResumed();
241
242 MCNAPI void $onDeviceLost();
243
244 MCNAPI void $onBlockChanged(
245 ::BlockSource& source,
246 ::BlockPos const& pos,
247 uint layer,
248 ::Block const& block,
249 ::Block const& oldBlock,
250 int updateFlags,
251 ::ActorBlockSyncMessage const* syncMsg,
252 ::BlockChangedEventTarget eventTarget,
253 ::Actor* blockChangeSource
254 );
255
256 MCNAPI void $takePicture(
257 ::cg::ImageBuffer& outImage,
258 ::Actor* camera,
259 ::Actor* target,
260 ::ScreenshotOptions& screenshotOptions,
261 ::std::function<void(::cg::ImageBuffer&, ::ScreenshotOptions&)> completedScreenshotCallback
262 );
263 // NOLINTEND
264
265public:
266 // vftables
267 // NOLINTBEGIN
268 MCNAPI static void** $vftableForLevelListener();
269
270 MCNAPI static void** $vftableForAppPlatformListener();
271 // NOLINTEND
272};
Definition DataDrivenRenderer.h:5
Definition GameRenderer.h:5
Definition LevelRenderer.h:5
MCAPI void $onAppResumed()
MCAPI void $onAppSuspended()
MCAPI void reinit(::Bedrock::NotNullNonOwnerPtr<::TextureAtlas const > const &terrainTexture, ::Bedrock::NotNullNonOwnerPtr<::GeometryGroup > const &geometryGroup, ::Bedrock::NotNullNonOwnerPtr<::ActorResourceDefinitionGroup const > const &actorResourceDefinitionGroup)
MCAPI void _resetMeshes()
MCAPI LevelRenderer(::IClientInstance &clientInstance, ::MultiPlayerLevel &level, ::std::shared_ptr<::Options > options, ::std::shared_ptr<::mce::TextureGroup > textureGroup, ::Bedrock::NotNullNonOwnerPtr<::TextureAtlas const > const &terrainTexture, ::WeakEntityRef localUser, ::GameRenderer &gameRenderer, ::Bedrock::NotNullNonOwnerPtr<::SoundPlayerInterface > const &soundPlayer, ::Bedrock::NotNullNonOwnerPtr<::GeometryGroup > const &geometryGroup, ::SoundMapping const &sounds, ::Bedrock::NotNullNonOwnerPtr<::ActorResourceDefinitionGroup const > const &actorResourceDefinitionGroup)
MCAPI void _initDataDrivenRendererResources(::std::unordered_map<::HashedString, ::std::shared_ptr<::DataDrivenRenderer > > const &renderers, ::MinecraftGameplayGraphicsResources &graphicsResources)
MCAPI void _setLevelRendererCameras()
MCAPI void _createMeshes(::Tessellator &tessellator)
MCAPI void renderLevel(::ScreenContext &screenContext, ::FrameRenderObject const &renderObj)
MCAPI ::StackRefResult<::RenderChunkCoordinator > getRenderChunkCoordinator(::DimensionType dimID)
MCAPI void $dtor()
MCAPI void _debugDrawClientSideChunkGenBlockDifferences()
MCAPI void * $ctor(::IClientInstance &clientInstance, ::MultiPlayerLevel &level, ::std::shared_ptr<::Options > options, ::std::shared_ptr<::mce::TextureGroup > textureGroup, ::Bedrock::NotNullNonOwnerPtr<::TextureAtlas const > const &terrainTexture, ::WeakEntityRef localUser, ::GameRenderer &gameRenderer, ::Bedrock::NotNullNonOwnerPtr<::SoundPlayerInterface > const &soundPlayer, ::Bedrock::NotNullNonOwnerPtr<::GeometryGroup > const &geometryGroup, ::SoundMapping const &sounds, ::Bedrock::NotNullNonOwnerPtr<::ActorResourceDefinitionGroup const > const &actorResourceDefinitionGroup)
MCAPI void _initResources()
MCAPI void resetPointLightCoordinator()
MCAPI void _createParticleEngines()
MCAPI void $onDeviceLost()
MCAPI void preRenderUpdate(::ScreenContext &screenContext, ::LevelRenderPreRenderUpdateParameters &levelRenderPreRenderUpdateParameters)
MCAPI void tickLevelRenderer()
MCAPI void onDimensionChanged()
static MCAPI void ** $vftableForLevelListener()
static MCAPI float const & Z_FAR_MIN()
static MCAPI float const & Z_NEAR()
MCAPI void _initPipelineTessellatorResources()
MCAPI void frameUpdate(::ClientFrameUpdateContext &clientFrameUpdateContext)
MCAPI void $onBlockChanged(::BlockSource &source, ::BlockPos const &pos, uint layer, ::Block const &block, ::Block const &oldBlock, int updateFlags, ::ActorBlockSyncMessage const *syncMsg, ::BlockChangedEventTarget eventTarget, ::Actor *blockChangeSource)
MCAPI void rebuildAllDDRv2Geometry()
static MCAPI void ** $vftableForAppPlatformListener()
MCAPI::BlockTessellator & getBlockRenderer()
MCAPI void $takePicture(::cg::ImageBuffer &outImage, ::Actor *camera, ::Actor *target, ::ScreenshotOptions &screenshotOptions, ::std::function< void(::cg::ImageBuffer &, ::ScreenshotOptions &)> completedScreenshotCallback)
MCAPI void onOptionsChanged()
Definition MinecraftGameplayGraphicsResources.h:5
Definition ScreenContext.h:5
Definition Tessellator.h:5
Definition TextureAtlas.h:5
Definition ActorResourceDefinitionGroup.h:5
Definition BlockTessellator.h:5
Definition ClientFrameUpdateContext.h:5
Definition FrameRenderObject.h:5
Definition LevelRenderPreRenderUpdateParameters.h:5
Definition RenderChunkCoordinator.h:5
Definition SoundMapping.h:5
Definition Alias.h:14