3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/renderer/HistoricalFrameTimes.h"
7#include "mc/deps/core/math/Vec3.h"
8#include "mc/deps/core/utility/NonOwnerPointer.h"
9#include "mc/deps/minecraft_renderer/resources/UIActorOffscreenCaptureDescription.h"
10#include "mc/deps/minecraft_renderer/resources/UIMeshOffscreenCaptureDescription.h"
11#include "mc/deps/minecraft_renderer/resources/UIStructureVolumeOffscreenCaptureDescription.h"
12#include "mc/deps/minecraft_renderer/resources/UIThumbnailMeshOffscreenCaptureDescription.h"
13#include "mc/world/phys/AABB.h"
48 ::ll::TypedStorage<4, 4, float> mNumEntitiesRenderedThisFrame;
49 ::ll::TypedStorage<4, 4, float> mLastFrameTime;
50 ::ll::TypedStorage<8, 8, ::SortedMeshDrawList*> mSortedMeshDrawList;
51 ::ll::TypedStorage<8, 8, ::IClientInstance&> mClientInstance;
52 ::ll::TypedStorage<8, 8, ::IMinecraftGame&> mMinecraftGame;
53 ::ll::TypedStorage<8, 8, ::ScreenContext&> mScreenContext;
54 ::ll::TypedStorage<8, 8, ::BlockActorRenderDispatcher&> mBlockEntityRenderDispatcher;
55 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::ActorRenderDispatcher>> mEntityRenderDispatcher;
56 ::ll::TypedStorage<8, 8, ::ActorBlockRenderer&> mEntityBlockRenderer;
57 ::ll::TypedStorage<8, 8, ::ItemInHandRenderer&> mItemInHandRenderer;
58 ::ll::TypedStorage<8, 8, ::ItemRenderer&> mItemRenderer;
59 ::ll::TypedStorage<8, 8, ::HudIconActorRenderer&> mHudIconActorRenderer;
60 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::LightPropagation::LightVolumeManager>> mLightVolumeManager;
61 ::ll::TypedStorage<8, 8, ::ParticleSystemEngine*> mParticleSystemEngine;
62 ::ll::TypedStorage<8, 8, ::ProcessedDataDrivenRenderers const*> mProcessedV2DataDrivenRenderers;
63 ::ll::TypedStorage<8, 8, ::DataDrivenRendererContinuousData*> mV2DataDrivenContinuousData;
64 ::ll::TypedStorage<1, 1, bool> mV2ShouldRenderActorsWithAttachables;
65 ::ll::TypedStorage<8, 16, ::std::optional<int64>> mRenderUniqueIdOverride;
71 ::UIActorOffscreenCaptureDescription,
72 ::UIThumbnailMeshOffscreenCaptureDescription,
73 ::UIMeshOffscreenCaptureDescription,
74 ::UIStructureVolumeOffscreenCaptureDescription>>
75 mOffscreenCaptureDescription;
76 ::ll::TypedStorage<4, 12, ::Vec3> mCameraTargetPosition;
77 ::ll::TypedStorage<4, 12, ::Vec3> mCameraPosition;
78 ::ll::TypedStorage<4, 24, ::AABB> mWorldClipRegion;
79 ::ll::TypedStorage<4, 4, float const> mFrameAlpha;
80 ::ll::TypedStorage<4, 4, float> mActorDitheringMaxDistance;
81 ::ll::TypedStorage<1, 1, bool> mIsOnScreen;
82 ::ll::TypedStorage<1, 1, bool> mUpdateBonesAndEffects;
83 ::ll::TypedStorage<1, 1, bool> mUpdateEffects;
84 ::ll::TypedStorage<1, 1, bool> mIgnoresLighting;
85 ::ll::TypedStorage<1, 1, bool> mForceLightingOn;
86 ::ll::TypedStorage<1, 1, bool> mIsRenderingOnMap;
87 ::ll::TypedStorage<8, 488, ::HistoricalFrameTimes> mHistoricalFrameTimes;
92 BaseActorRenderContext& operator=(BaseActorRenderContext
const&);
93 BaseActorRenderContext();
98 virtual ~BaseActorRenderContext();
104 MCAPI BaseActorRenderContext(::BaseActorRenderContext
const&);
106 MCAPI BaseActorRenderContext(
107 ::ScreenContext& screenContext,
108 ::IClientInstance& clientInstance,
109 ::IMinecraftGame& minecraftGame
112 MCAPI
float getActorDitheringMaxDistance()
const;
114 MCFOLD ::BlockActorRenderDispatcher& getBlockEntityRenderDispatcher();
116 MCAPI ::Actor* getCameraActor();
118 MCAPI ::Vec3
const& getCameraPosition()
const;
120 MCAPI ::Vec2 getCameraRotation(
float a)
const;
122 MCFOLD ::Vec3
const& getCameraTargetPosition()
const;
124 MCFOLD ::IClientInstance
const& getClient()
const;
126 MCFOLD ::IClientInstance& getClient();
128 MCAPI ::std::shared_ptr<::DataDrivenRenderer> getDataDrivenRenderer(::HashedString
const& rendererName)
const;
130 MCFOLD ::ActorBlockRenderer& getEntityBlockRenderer();
132 MCFOLD ::std::shared_ptr<::ActorRenderDispatcher> getEntityRenderDispatcher();
134 MCAPI ::Bedrock::NotNullNonOwnerPtr<::FontHandle const> getFontHandle();
136 MCAPI
float getFrameAlpha(::Actor
const& actor)
const;
138 MCAPI
float getFrameAlpha(::Actor
const* actor)
const;
140 MCAPI
float getFrameAlpha(::BlockActor
const& blockActor)
const;
142 MCFOLD ::HudIconActorRenderer& getHudIconActorRenderer();
144 MCFOLD ::ItemInHandRenderer& getItemInHandRenderer();
146 MCFOLD ::ItemRenderer& getItemRenderer();
148 MCAPI ::LightTexture* getLightTexture()
const;
150 MCAPI ::std::weak_ptr<::LightPropagation::LightVolumeManager> getLightVolumeManager()
const;
152 MCAPI ::IOptionRegistry& getOptions();
154 MCFOLD ::ParticleSystemEngine* getParticleSystemEngine();
156 MCAPI ::MatrixStack& getProjectionMatrix();
158 MCAPI ::std::optional<int64> getRenderUniqueIdOverride()
const;
160 MCFOLD ::ScreenContext& getScreenContext()
const;
162 MCAPI ::Tessellator& getTessellator();
164 MCAPI ::std::shared_ptr<::mce::TextureGroup> getTextureGroup();
166 MCFOLD ::DataDrivenRendererContinuousData* getV2ContinuousData();
168 MCFOLD ::ProcessedDataDrivenRenderers
const* getV2ProcessedDataDrivenRenderers()
const;
170 MCFOLD
bool getV2ShouldRenderActorsWithAttachables()
const;
172 MCAPI ::MatrixStack& getViewMatrix();
174 MCAPI ::MatrixStack& getWorldMatrix();
176 MCAPI
bool isDeferredUpscaling()
const;
178 MCAPI
bool isForceLightingOn()
const;
180 MCAPI
bool isIgnoringLighting()
const;
182 MCAPI
bool isLightingOff()
const;
184 MCAPI
bool isRenderingOnMap()
const;
186 MCAPI
bool isSimple();
188 MCAPI ::BaseActorRenderContext overrideScreenContext(::ScreenContext& screenContext)
const;
190 MCAPI
void setActorDitheringMaxDistance(
float maxDitheringDistance);
192 MCAPI
void setCameraPosition(::Vec3
const& value);
194 MCFOLD
void setCameraTargetPosition(::Vec3
const& value);
196 MCAPI
void setForceLightingOn(
bool state);
198 MCAPI
void setIgnoreLighting(
bool state);
200 MCAPI
void setIsOnScreen(
bool);
202 MCAPI
void setRenderUniqueIdOverride(int64 uniqueId);
204 MCFOLD
void setRenderUniqueIdOverride(::std::optional<int64> uniqueId);
206 MCAPI
void setRenderingOnMap(
bool state);
208 MCAPI
void setUpdateBonesAndEffects(
bool shouldUpdateBonesAndEffects);
210 MCAPI
void setUpdateEffects(
bool shouldUpdateEffects);
212 MCAPI
void setWorldClipRegion(::AABB
const& region);
214 MCAPI
bool shouldUpdateBonesAndEffects()
const;
216 MCAPI
bool shouldUpdateEffects()
const;
222 MCAPI
void* $ctor(::BaseActorRenderContext
const&);
225 $ctor(::ScreenContext& screenContext, ::IClientInstance& clientInstance, ::IMinecraftGame& minecraftGame);
Definition ActorBlockRenderer.h:5
Definition ActorRenderDispatcher.h:5
Definition BaseActorRenderContext.h:5
static MCAPI void ** $vftable()
Definition BlockActorRenderDispatcher.h:5
Definition BlockActor.h:30
Definition DataDrivenRenderer.h:5
Definition FontHandle.h:5
Definition HashedString.h:5
Definition HudIconActorRenderer.h:5
Definition IClientInstance.h:5
Definition IMinecraftGame.h:5
Definition IOptionRegistry.h:5
Definition ItemInHandRenderer.h:5
Definition ItemRenderer.h:5
Definition LightVolumeManager.h:7
Definition LightTexture.h:5
Definition MatrixStack.h:5
Definition ParticleSystemEngine.h:5
Definition ScreenContext.h:5
Definition SortedMeshDrawList.h:5
Definition Tessellator.h:5
Definition TextureGroup.h:7
Definition DataDrivenRendererContinuousData.h:5
Definition ProcessedDataDrivenRenderers.h:5