3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/renderer/actor/ItemRenderChunkType.h"
7#include "mc/deps/core/checked_resource_service/ClientResourcePointer.h"
8#include "mc/deps/core/math/Color.h"
9#include "mc/deps/core/math/Matrix.h"
10#include "mc/deps/core/resource/ResourceLocation.h"
11#include "mc/deps/core/string/HashedString.h"
12#include "mc/deps/core/utility/NonOwnerPointer.h"
13#include "mc/deps/minecraft_renderer/renderer/Mesh.h"
14#include "mc/deps/minecraft_renderer/renderer/TexturePtr.h"
15#include "mc/deps/minecraft_renderer/resources/ServerTexture.h"
16#include "mc/world/phys/AABB.h"
44 ::ll::TypedStorage<4, 4, float> mScale;
45 ::ll::TypedStorage<8, 8, uint64> mTextureWidth;
46 ::ll::TypedStorage<8, 8, uint64> mTextureHeight;
47 ::ll::TypedStorage<8, 8, uint64> mThumbnailWidth;
48 ::ll::TypedStorage<8, 8, uint64> mThumbnailHeight;
49 ::ll::TypedStorage<4, 4, float> mTranslateX;
50 ::ll::TypedStorage<4, 4, float> mTranslateY;
51 ::ll::TypedStorage<8, 56, ::ResourceLocation> mServerResourceLocation;
52 ::ll::TypedStorage<8, 56, ::ResourceLocation> mAtlasResourceLocation;
53 ::ll::TypedStorage<8, 32, ::mce::TexturePtr> mAtlasTexturePtr;
54 ::ll::TypedStorage<8, 8, uint64> mAtlasTexturePtrHash;
55 ::ll::TypedStorage<8, 32, ::std::string> mServerTextureName;
60 AtlasInfo& operator=(AtlasInfo
const&);
67 MCAPI AtlasInfo(::UIThumbnailAtlasRenderer::AtlasInfo
const&);
77 MCAPI
void* $ctor(::UIThumbnailAtlasRenderer::AtlasInfo
const&);
87 using SubstitutionMap = ::std::unordered_map<::HashedString, ::HashedString>;
92 ::ll::TypedStorage<8, 232, ::UIThumbnailAtlasRenderer::AtlasInfo> mAtlasInfo;
93 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::IClientInstance>> mClient;
94 ::ll::TypedStorage<8, 24, ::mce::ServerTexture> mServerTexture;
95 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::ScreenContext>> mScreenContext;
96 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::BaseActorRenderContext>> mRenderContext;
97 ::ll::TypedStorage<4, 24, ::AABB> mArea;
98 ::ll::TypedStorage<4, 64, ::Matrix> mWorldMatrix;
99 ::ll::TypedStorage<8, 528, ::mce::Mesh> mMesh;
100 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::mce::framebuilder::RenderUIMeshDescription>> mMeshDescription;
101 ::ll::TypedStorage<4, 16, ::mce::Color> mTint;
102 ::ll::TypedStorage<4, 20, ::std::optional<::glm::vec4>> mClipRegion;
103 ::ll::TypedStorage<8, 8, uint64> mMaxColumns;
104 ::ll::TypedStorage<8, 8, ::std::reference_wrapper<::std::unordered_map<::HashedString, ::HashedString>>>
106 ::ll::TypedStorage<8, 24, ::mce::ClientResourcePointer<::dragon::ResolvedImageResource>> mTargetImage;
111 UIThumbnailAtlasRenderer();
116 MCAPI UIThumbnailAtlasRenderer(
117 ::Bedrock::NotNullNonOwnerPtr<::IClientInstance> client,
118 ::UIThumbnailAtlasRenderer::AtlasInfo atlasInfo,
119 ::std::unordered_map<::HashedString, ::HashedString>& substitutions
122 MCAPI
void _addItemsToMesh(::OreUI::AtlasIndex& items,
float scale);
124 MCAPI
void _capture(::mce::framebuilder::RenderUIMeshDescription&& description);
126 MCAPI ::ItemStack _getItemStack(::std::string_view name, ::ItemRegistryRef
const& registry)
const;
128 MCAPI
void _initialize(
bool isResume, ::UIThumbnailAtlasRenderer::AtlasInfo
const& atlasInfo);
130 MCAPI
void _render(::ItemStack& item,
float scale,
float x,
float y, ::ItemRenderChunkType renderType);
132 MCAPI
bool renderOffscreen(
133 ::OreUI::AtlasIndex& items,
134 ::TaskGroup& taskGroup,
135 ::std::function<
void(::cg::ImageBuffer&&)>&& callback,
137 ::UIThumbnailAtlasRenderer::AtlasInfo
const& atlasInfo
140 MCAPI ~UIThumbnailAtlasRenderer();
146 MCAPI
static int& mRenderCounter();
153 ::Bedrock::NotNullNonOwnerPtr<::IClientInstance> client,
154 ::UIThumbnailAtlasRenderer::AtlasInfo atlasInfo,
155 ::std::unordered_map<::HashedString, ::HashedString>& substitutions
Definition BaseActorRenderContext.h:5
Definition IClientInstance.h:5
Definition ItemRegistryRef.h:36
Definition ItemStack.h:26
Definition ScreenContext.h:5
Definition TaskGroup.h:57
Definition UIThumbnailAtlasRenderer.h:5
Definition ImageBuffer.h:16
Definition ResolvedImageResource.h:7
Definition AtlasIndex.h:7
Definition UIThumbnailAtlasRenderer.h:13
Definition RenderUIMeshDescription.h:7