3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/gui/controls/UIMaterialType.h"
7#include "mc/client/gui/controls/renderers/InventoryItemRenderItemData.h"
8#include "mc/client/gui/controls/renderers/MinecraftUICustomRenderer.h"
9#include "mc/client/gui/screens/UIBatchType.h"
10#include "mc/client/renderer/ActorShaderManager.h"
11#include "mc/client/renderer/actor/ItemRenderChunkType.h"
12#include "mc/platform/brstd/function_ref.h"
45 ::ll::TypedStorage<4, 8, ::glm::vec2> mOwnerPosition;
46 ::ll::TypedStorage<8, 8, ::PropertyBag const*> mOwnerPropertyBag;
47 ::ll::TypedStorage<8, 8, ::ItemRegistryRef const&> mItemRegistry;
51 ::brstd::function_ref<
52 ::std::optional<int>(
bool, ::ItemStack
const&)
const,
53 ::std::optional<int>(
bool, ::ItemStack
const&)>>
59 UpdateData& operator=(UpdateData
const&);
60 UpdateData(UpdateData
const&);
68 ::ll::TypedStorage<4, 4, int> mCacheVersion;
69 ::ll::TypedStorage<4, 4, int> mItemIdAux;
70 ::ll::TypedStorage<4, 4, int> mChargedItem;
71 ::ll::TypedStorage<4, 4, int> mCustomColor;
72 ::ll::TypedStorage<1, 1, bool> mIsFiltered;
73 ::ll::TypedStorage<8, 8, int64> mRawPickUpTime;
74 ::ll::TypedStorage<1, 1, bool> mIsShowPickup;
81 ::ll::TypedStorage<8, 40, ::InventoryItemRenderer::CachedProperties> mCachedProperties;
87 virtual ~InventoryItemRenderer() =
default;
89 virtual ::std::shared_ptr<::UICustomRenderer> clone() const ;
91 virtual
void preRenderSetup(::MinecraftUIRenderContext& renderContext) ;
93 virtual
bool update(::IClientInstance& client, ::UIControl& owner, ::UIScene const&) ;
96 ::MinecraftUIRenderContext& renderContext,
97 ::IClientInstance& client,
102 virtual ::UIBatchType getBatchType() const ;
104 virtual
int getCustomId() const ;
106 virtual
int getNumRenderPasses() const ;
108 virtual ::UIMaterialType getUIMaterialType(
int pass) const ;
110 virtual ::ResourceLocation getResourceLocation(
int textureSlot,
int pass) const ;
112 virtual
bool getRequiresPreRenderSetup(
int pass) const ;
114 virtual ::UIItemRenderInfo getItemRenderInfo() const ;
121 ::IInventoryItemRendererRenderContext& renderContext,
122 ::InventoryItemRenderOwnerData const& owner,
126 MCAPI
bool _update(::InventoryItemRenderer::
UpdateData const& data);
132 MCAPI static ::UIItemRenderInfo getItemRenderInfo(::ItemStack const& item);
134 MCAPI static ::ItemRenderChunkType getRenderTypeFromItem(::ItemStack const& item);
140 MCAPI ::std::shared_ptr<::UICustomRenderer> $clone() const;
142 MCAPI
void $preRenderSetup(::MinecraftUIRenderContext& renderContext);
144 MCAPI
bool $update(::IClientInstance& client, ::UIControl& owner, ::UIScene const&);
147 $render(::MinecraftUIRenderContext& renderContext, ::IClientInstance& client, ::UIControl& owner,
int pass);
149 MCAPI ::UIBatchType $getBatchType() const;
151 MCFOLD
int $getCustomId() const;
153 MCAPI
int $getNumRenderPasses() const;
155 MCAPI ::UIMaterialType $getUIMaterialType(
int pass) const;
157 MCAPI ::ResourceLocation $getResourceLocation(
int textureSlot,
int pass) const;
159 MCFOLD
bool $getRequiresPreRenderSetup(
int pass) const;
161 MCAPI ::UIItemRenderInfo $getItemRenderInfo() const;
Definition ActorShaderManager.h:5
Definition IClientInstance.h:5
Definition IInventoryItemRendererRenderContext.h:5
Definition InventoryItemRenderer.h:16
Definition InventoryItemRenderer.h:5
static MCAPI void ** $vftableForMinecraftUICustomRenderer()
static MCAPI void ** $vftableForActorShaderManager()
Definition ItemRegistryRef.h:41
Definition ItemStack.h:26
Definition MinecraftUICustomRenderer.h:5
Definition MinecraftUIRenderContext.h:5
Definition PropertyBag.h:8
Definition ResourceLocation.h:15
Definition UICustomRenderer.h:5
Definition InventoryItemRenderItemData.h:5
Definition InventoryItemRenderOwnerData.h:5
Definition InventoryItemRenderer.h:14
Definition UIItemRenderInfo.h:5