LeviLamina
Loading...
Searching...
No Matches
BaseActorRenderContext.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/renderer/HistoricalFrameTimes.h"
7#include "mc/deps/core/math/Vec3.h"
8#include "mc/deps/minecraft_renderer/resources/UIActorOffscreenCaptureDescription.h"
9#include "mc/deps/minecraft_renderer/resources/UIMeshOffscreenCaptureDescription.h"
10#include "mc/deps/minecraft_renderer/resources/UIStructureVolumeOffscreenCaptureDescription.h"
11#include "mc/deps/minecraft_renderer/resources/UIThumbnailMeshOffscreenCaptureDescription.h"
12#include "mc/world/phys/AABB.h"
13
14// auto generated forward declare list
15// clang-format off
16class Actor;
17class HashedString;
20class IClientInstance;
21class IMinecraftGame;
23class ItemRenderer;
24class ScreenContext;
32// clang-format on
33
34class BaseActorRenderContext {
35public:
36 // member variables
37 // NOLINTBEGIN
38 ::ll::TypedStorage<4, 4, float> mNumEntitiesRenderedThisFrame;
39 ::ll::TypedStorage<4, 4, float> mLastFrameTime;
40 ::ll::TypedStorage<8, 8, ::SortedMeshDrawList*> mSortedMeshDrawList;
41 ::ll::TypedStorage<8, 8, ::IClientInstance&> mClientInstance;
42 ::ll::TypedStorage<8, 8, ::IMinecraftGame&> mMinecraftGame;
43 ::ll::TypedStorage<8, 8, ::ScreenContext&> mScreenContext;
44 ::ll::TypedStorage<8, 8, ::BlockActorRenderDispatcher&> mBlockEntityRenderDispatcher;
45 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::ActorRenderDispatcher>> mEntityRenderDispatcher;
46 ::ll::TypedStorage<8, 8, ::ActorBlockRenderer&> mEntityBlockRenderer;
47 ::ll::TypedStorage<8, 8, ::ItemInHandRenderer&> mItemInHandRenderer;
48 ::ll::TypedStorage<8, 8, ::ItemRenderer&> mItemRenderer;
49 ::ll::TypedStorage<8, 8, ::HudIconActorRenderer&> mHudIconActorRenderer;
50 ::ll::TypedStorage<8, 8, ::ParticleSystemEngine*> mParticleSystemEngine;
51 ::ll::TypedStorage<8, 8, ::ProcessedDataDrivenRenderers const*> mProcessedV2DataDrivenRenderers;
52 ::ll::TypedStorage<8, 8, ::DataDrivenRendererContinuousData*> mV2DataDrivenContinuousData;
53 ::ll::TypedStorage<1, 1, bool> mV2ShouldRenderActorsWithAttachables;
54 ::ll::TypedStorage<8, 16, ::std::optional<int64>> mRenderUniqueIdOverride;
55 ::ll::TypedStorage<
56 8,
57 48,
58 ::std::variant<
59 ::std::monostate,
64 mOffscreenCaptureDescription;
65 ::ll::TypedStorage<4, 12, ::Vec3> mCameraTargetPosition;
66 ::ll::TypedStorage<4, 12, ::Vec3> mCameraPosition;
67 ::ll::TypedStorage<4, 24, ::AABB> mWorldClipRegion;
68 ::ll::TypedStorage<4, 4, float const> mFrameAlpha;
69 ::ll::TypedStorage<4, 4, float> mActorDitheringMaxDistance;
70 ::ll::TypedStorage<1, 1, bool> mIsOnScreen;
71 ::ll::TypedStorage<1, 1, bool> mUpdateBonesAndEffects;
72 ::ll::TypedStorage<1, 1, bool> mUpdateEffects;
73 ::ll::TypedStorage<1, 1, bool> mIgnoresLighting;
74 ::ll::TypedStorage<1, 1, bool> mForceLightingOn;
75 ::ll::TypedStorage<1, 1, bool> mIsRenderingOnMap;
76 ::ll::TypedStorage<8, 488, ::HistoricalFrameTimes> mHistoricalFrameTimes;
77 // NOLINTEND
78
79public:
80 // prevent constructor by default
81 BaseActorRenderContext& operator=(BaseActorRenderContext const&);
82 BaseActorRenderContext();
83
84public:
85 // virtual functions
86 // NOLINTBEGIN
87#ifdef LL_PLAT_S
88 virtual ~BaseActorRenderContext() = default;
89#else // LL_PLAT_C
90 virtual ~BaseActorRenderContext();
91#endif
92
93 // NOLINTEND
94
95public:
96 // member functions
97 // NOLINTBEGIN
98 MCAPI_C BaseActorRenderContext(::BaseActorRenderContext const&);
99
100 MCAPI_C BaseActorRenderContext(
101 ::ScreenContext& screenContext,
102 ::IClientInstance& clientInstance,
103 ::IMinecraftGame& minecraftGame
104 );
105
106 MCAPI_C ::std::shared_ptr<::DataDrivenRenderer> getDataDrivenRenderer(::HashedString const& rendererName) const;
107
108 MCAPI_C float getFrameAlpha(::Actor const& actor) const;
109
110 MCAPI_C bool isDeferredUpscaling() const;
111 // NOLINTEND
112
113public:
114 // constructor thunks
115 // NOLINTBEGIN
116 MCAPI_C void* $ctor(::BaseActorRenderContext const&);
117
118 MCAPI_C void*
119 $ctor(::ScreenContext& screenContext, ::IClientInstance& clientInstance, ::IMinecraftGame& minecraftGame);
120 // NOLINTEND
121
122public:
123 // destructor thunk
124 // NOLINTBEGIN
125 MCAPI void $dtor();
126 // NOLINTEND
127
128public:
129 // vftables
130 // NOLINTBEGIN
131 MCNAPI static void** $vftable();
132 // NOLINTEND
133};
Definition ActorRenderDispatcher.h:5
Definition Actor.h:105
static MCAPI void ** $vftable()
Definition DataDrivenRenderer.h:5
Definition HashedString.h:5
Definition IClientInstance.h:5
Definition IMinecraftGame.h:5
Definition ItemInHandRenderer.h:5
Definition ItemRenderer.h:5
Definition ScreenContext.h:5
Definition ActorBlockRenderer.h:5
Definition BlockActorRenderDispatcher.h:5
Definition DataDrivenRendererContinuousData.h:5
Definition HudIconActorRenderer.h:5
Definition ParticleSystemEngine.h:5
Definition ProcessedDataDrivenRenderers.h:5
Definition SortedMeshDrawList.h:5
Definition UIActorOffscreenCaptureDescription.h:5
Definition UIMeshOffscreenCaptureDescription.h:5
Definition UIStructureVolumeOffscreenCaptureDescription.h:8
Definition UIThumbnailMeshOffscreenCaptureDescription.h:5