3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/gui/controls/renderers/MinecraftUICustomRenderer.h"
7#include "mc/deps/application/AppPlatformListener.h"
8#include "mc/deps/core/math/Vec3.h"
9#include "mc/deps/game_refs/WeakRef.h"
10#include "mc/deps/minecraft_renderer/renderer/TexturePtr.h"
11#include "mc/world/level/BlockChangedEventTarget.h"
12#include "mc/world/level/BlockSourceListener.h"
13#include "mc/world/level/Tick.h"
41 ::ll::TypedStorage<1, 1, bool> mListenerInitialized;
42 ::ll::TypedStorage<8, 8, ::EditorVolumeHighlightRendererInstanceData*> mInstanceContext;
43 ::ll::TypedStorage<8, 8, ::Tick> mRenderTick;
44 ::ll::TypedStorage<4, 12, ::Vec3> mSortingCameraPos;
45 ::ll::TypedStorage<1, 1, bool> mResort;
46 ::ll::TypedStorage<8, 32, ::mce::TexturePtr> mSelectedBlocksOverlayTex;
52 virtual ~EditorVolumeHighlightRenderer() =
default;
54 virtual ::std::shared_ptr<::UICustomRenderer> clone() const ;
57 render(::MinecraftUIRenderContext& renderContext, ::IClientInstance& client, ::UIControl&,
int) ;
59 virtual
void onSourceDestroyed(::BlockSource& source) ;
61 virtual
void onBlockChanged(
62 ::BlockSource& source,
63 ::BlockPos const& pos,
66 ::Block const& oldBlock,
68 ::ActorBlockSyncMessage const* syncMsg,
69 ::BlockChangedEventTarget eventTarget,
70 ::Actor* blockChangeSource
77 MCAPI ::std::vector<::BlockPos> _generateChunkStartPositions(::AABB const& area) const;
79 MCAPI ::RenderChunkInstanced& _getRenderChunkInstanced(::BlockPos const& chunkPos);
81 MCAPI
void _initializeChunkBuilder(
82 ::ClientBlockPipeline::TessellatorContext& pipelineContext,
83 ::BlockSource& region,
84 ::Tessellator& tessellator,
85 ::WeakRef<::RenderChunkCoordinator> coordinator,
89 MCAPI
bool _renderBlockEntities(
90 ::BaseActorRenderContext& renderContext,
91 ::BlockSource& region,
97 MCAPI
bool _renderBlocks(
98 ::BaseActorRenderContext& renderContext,
99 ::BlockSource& region,
108 MCAPI ::std::shared_ptr<::UICustomRenderer> $clone() const;
110 MCAPI
void $render(::MinecraftUIRenderContext& renderContext, ::IClientInstance& client, ::UIControl&,
int);
112 MCFOLD
void $onSourceDestroyed(::BlockSource& source);
114 MCAPI
void $onBlockChanged(
115 ::BlockSource& source,
116 ::BlockPos const& pos,
118 ::Block const& block,
119 ::Block const& oldBlock,
121 ::ActorBlockSyncMessage const* syncMsg,
122 ::BlockChangedEventTarget eventTarget,
123 ::Actor* blockChangeSource
Definition BaseActorRenderContext.h:5
Definition BlockSourceListener.h:18
Definition BlockSource.h:71
Definition TessellatorContext.h:7
Definition EditorVolumeHighlightRendererInstanceData.h:5
Definition EditorVolumeHighlightRenderer.h:5
static MCAPI void ** $vftableForAppPlatformListener()
static MCAPI void ** $vftableForBlockSourceListener()
static MCAPI void ** $vftableForMinecraftUICustomRenderer()
Definition IClientInstance.h:5
Definition MinecraftUICustomRenderer.h:5
Definition MinecraftUIRenderContext.h:5
Definition RenderChunkCoordinator.h:5
Definition RenderChunkInstanced.h:5
Definition Tessellator.h:5
Definition UICustomRenderer.h:5
Definition ActorBlockSyncMessage.h:8