LeviLamina
Loading...
Searching...
No Matches
CubemapBackgroundResources.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/math/Color.h"
7#include "mc/deps/core/resource/ResourceLocation.h"
8#include "mc/deps/core/utility/EnableNonOwnerReferences.h"
9#include "mc/deps/core/utility/NonOwnerPointer.h"
10#include "mc/deps/minecraft_renderer/renderer/TexturePtr.h"
11#include "mc/deps/minecraft_renderer/resources/ClientTexture.h"
12#include "mc/resources/ResourcePackListener.h"
13
14// auto generated forward declare list
15// clang-format off
17namespace mce { class TextureGroup; }
18namespace mce { struct TextureResourceService; }
19// clang-format on
20
22public:
23 // CubemapBackgroundResources inner types define
24 enum class CubemapType : int {
25 Sdr = 0,
26 Hdr = 1,
27 };
28
29public:
30 // member variables
31 // NOLINTBEGIN
32 ::ll::TypedStorage<1, 1, bool> mIsVanillaCubemap;
33 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::ResourcePackManager>> mResourcePackManager;
34 ::ll::TypedStorage<8, 192, ::std::array<::mce::TexturePtr, 6>> mPanoramaImages;
35 ::ll::TypedStorage<8, 336, ::std::array<::ResourceLocation, 6>> mPanormaResourceLocations;
36 ::ll::TypedStorage<8, 336, ::std::array<::ResourceLocation, 6>> mPanoramaHDRResourceLocations;
37 ::ll::TypedStorage<8, 24, ::mce::ClientTexture> mCubemapTexture;
38 ::ll::TypedStorage<8, 56, ::ResourceLocation> mOverlayLocation;
39 ::ll::TypedStorage<8, 32, ::mce::TexturePtr> mOverlayTexture;
40 ::ll::TypedStorage<4, 4, int> mTextureRefCount;
41 ::ll::TypedStorage<1, 1, bool> mPrimaryClientUnloaded;
42 ::ll::TypedStorage<1, 1, bool> mPendingRecreateCubemap;
43 ::ll::TypedStorage<1, 2, ::std::optional<bool>> mHDRTexturesUnavailable;
44 ::ll::TypedStorage<4, 4, ::CubemapBackgroundResources::CubemapType> mCubemapType;
45 ::ll::TypedStorage<4, 16, ::mce::Color> mFadeInColor;
46 // NOLINTEND
47
48public:
49 // prevent constructor by default
50 CubemapBackgroundResources();
51
52public:
53 // virtual functions
54 // NOLINTBEGIN
55 virtual ~CubemapBackgroundResources() /*override*/;
56
57 virtual void onActiveResourcePacksChanged(::ResourcePackManager&) /*override*/;
58 // NOLINTEND
59
60public:
61 // member functions
62 // NOLINTBEGIN
63 MCAPI CubemapBackgroundResources(
64 ::std::shared_ptr<::mce::TextureGroup> textureGroup,
65 ::ResourcePackManager& resourcePackManager,
66 ::CubemapBackgroundResources::CubemapType const& cubemapType
67 );
68
69 MCAPI void _checkHDRTexturesAvailableAndFallback(::std::shared_ptr<::mce::TextureGroup> textureGroup);
70
71 MCAPI void _unloadPanoramaTextures(::std::shared_ptr<::mce::TextureGroup> textureGroup);
72
73 MCAPI void _updateIsVanillaCubemap();
74
75 MCAPI void loadAssets(
76 ::mce::TextureResourceService& textureResourceService,
77 ::std::shared_ptr<::mce::TextureGroup> textureGroup
78 );
79
80 MCAPI void unloadAssets(::std::shared_ptr<::mce::TextureGroup> textureGroup);
81
82 MCAPI void updateAssets(::std::shared_ptr<::mce::TextureGroup> textureGroup);
83
84 MCAPI void updateCubemapType(
85 ::CubemapBackgroundResources::CubemapType const& cubemapType,
86 ::std::shared_ptr<::mce::TextureGroup> textureGroup
87 );
88 // NOLINTEND
89
90public:
91 // constructor thunks
92 // NOLINTBEGIN
93 MCAPI void* $ctor(
94 ::std::shared_ptr<::mce::TextureGroup> textureGroup,
95 ::ResourcePackManager& resourcePackManager,
96 ::CubemapBackgroundResources::CubemapType const& cubemapType
97 );
98 // NOLINTEND
99
100public:
101 // destructor thunk
102 // NOLINTBEGIN
103 MCAPI void $dtor();
104 // NOLINTEND
105
106public:
107 // virtual function thunks
108 // NOLINTBEGIN
109 MCAPI void $onActiveResourcePacksChanged(::ResourcePackManager&);
110 // NOLINTEND
111
112public:
113 // vftables
114 // NOLINTBEGIN
116
117 MCNAPI static void** $vftableForResourcePackListener();
118 // NOLINTEND
119};
Definition EnableNonOwnerReferences.h:7
Definition CubemapBackgroundResources.h:5
static MCAPI void ** $vftableForEnableNonOwnerReferences()
static MCAPI void ** $vftableForResourcePackListener()
Definition ResourcePackListener.h:10
MCAPI void $dtor()
Definition ResourcePackManager.h:30
Definition TextureGroup.h:7
Definition TextureResourceService.h:7