3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/gui/ClipDirection.h"
7#include "mc/client/gui/SliceSize.h"
8#include "mc/client/gui/TileDirection.h"
9#include "mc/client/gui/UITextureInfoPtr.h"
10#include "mc/client/gui/controls/RenderableComponent.h"
11#include "mc/client/gui/controls/UIMaterialType.h"
12#include "mc/deps/core/file/PathBuffer.h"
13#include "mc/deps/core/math/Color.h"
14#include "mc/deps/core/resource/ResourceLocation.h"
15#include "mc/deps/core_graphics/ImageDescription.h"
16#include "mc/deps/minecraft_renderer/renderer/TexturePtr.h"
30 ::ll::TypedStorage<8, 56, ::ResourceLocation> mResourceLocation;
31 ::ll::TypedStorage<8, 96, ::UITextureInfoPtr> mUITextureInfo;
32 ::ll::TypedStorage<8, 96, ::UITextureInfoPtr> mBackCompatUITexture;
33 ::ll::TypedStorage<8, 32, ::mce::TexturePtr> mTexture;
34 ::ll::TypedStorage<4, 20, ::cg::ImageDescription> mCachedImageDescription;
35 ::ll::TypedStorage<4, 4, ::UIMaterialType> mUIMaterialType;
36 ::ll::TypedStorage<4, 8, ::glm::vec2> mUV;
37 ::ll::TypedStorage<4, 8, ::glm::vec2> mUVSize;
38 ::ll::TypedStorage<4, 16, ::mce::Color> mColor;
39 ::ll::TypedStorage<4, 16, ::ui::SliceSize> mNineSliceSize;
40 ::ll::TypedStorage<1, 1, ::ui::ClipDirection> mClipDirection;
41 ::ll::TypedStorage<4, 8, ::glm::vec2> mTiledScale;
42 ::ll::TypedStorage<4, 8, ::glm::vec2> mInvTextureSize;
43 ::ll::TypedStorage<4, 4, ::ui::TileDirection> mTiled;
44 ::ll::TypedStorage<4, 4, float> mClipRatio;
45 bool mClipPixelPerfect : 1;
46 bool mHasNineSlice : 1;
47 bool mPixelPerfect : 1;
50 bool mEnableGrayscale : 1;
51 bool mEnableBilinear : 1;
52 bool mTriggerDebugLog : 1;
53 bool mForceReloadTexture : 1;
54 bool mTextureHasChanged : 1;
55 bool mAllowDebugTextureReplacement : 1;
56 bool mColorCorrected : 1;
57 ::ll::TypedStorage<8, 32, ::Core::PathBuffer<::std::string>> mZipFolder;
67 virtual ~SpriteComponent() ;
69 virtual ::std::unique_ptr<::UIComponent> clone(::UIControl& cloneOwner)
const ;
71 virtual void reset() ;
77 MCAPI
explicit SpriteComponent(::UIControl& owner);
79 MCAPI
void _drawClipped(
80 ::glm::vec2
const& pos,
81 ::glm::vec2
const& size,
82 ::glm::vec2
const& startUV,
83 ::glm::vec2
const& uvSize,
84 ::std::function<
void(::glm::vec2
const&, ::glm::vec2
const&, ::glm::vec2
const&, ::glm::vec2
const&)> callback
87 MCAPI
void _drawFilled(
88 ::UIRenderContext& context,
89 ::glm::vec2
const& startPos,
90 ::glm::vec2
const& size,
91 ::glm::vec2
const& startUV,
92 ::glm::vec2
const& uvSize
95 MCAPI
void _drawTiled(
96 ::glm::vec2
const& startPos,
97 ::glm::vec2
const& size,
98 ::glm::vec2
const& startUV,
99 ::glm::vec2
const& uvSize,
100 ::std::function<
void(::glm::vec2
const&, ::glm::vec2
const&, ::glm::vec2
const&, ::glm::vec2
const&)> callback
103 MCAPI
void _drawTiledClipped(
104 ::glm::vec2
const& startPos,
105 ::glm::vec2
const& size,
106 ::glm::vec2
const& startUV,
107 ::glm::vec2
const& uvSize,
108 ::std::function<
void(::glm::vec2
const&, ::glm::vec2
const&, ::glm::vec2
const&, ::glm::vec2
const&)> callback
112 _getClippedInfo(::glm::vec2& clipPos, ::glm::vec2& clipSize, ::glm::vec2& clipUV, ::glm::vec2& clipUVSize)
const;
114 MCAPI
bool _handleTextureChange(::mce::TexturePtr
const& texture);
116 MCAPI
void render(::UIRenderContext& context);
118 MCAPI
void setNineSliceSize(::ui::SliceSize
const& sliceSize);
120 MCAPI
void setResourceLocation(::ResourceLocation
const& resourceLocation);
122 MCAPI
void setZipFolder(::Core::PathView zipFolder);
128 MCAPI
void* $ctor(::UIControl& owner);
140 MCAPI ::std::unique_ptr<::UIComponent> $clone(::UIControl& cloneOwner)
const;
142 MCFOLD
void $reset();
Definition RenderableComponent.h:5
Definition SpriteComponent.h:5
static MCAPI void ** $vftable()
Definition UIComponent.h:5
Definition UIRenderContext.h:5