LeviLamina
Loading...
Searching...
No Matches
Model.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/application/AppPlatformListener.h"
7
8// auto generated forward declare list
9// clang-format off
10class AABB;
11class Actor;
15class Mob;
16class ModelPart;
18class RenderParams;
19class ScreenContext;
20struct ActorTextureInfo;
21struct MERSUniformData;
22namespace dragon { struct RenderMetadata; }
23namespace mce { class MaterialPtr; }
24namespace mce { struct ClientTexture; }
25// clang-format on
26
27class Model : public ::AppPlatformListener {
28public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::UntypedStorage<4, 12> mUnkd6ffb4;
32 ::ll::UntypedStorage<4, 4> mUnk4a8c3a;
33 ::ll::UntypedStorage<1, 1> mUnk2d6e55;
34 ::ll::UntypedStorage<1, 1> mUnk9d6f48;
35 ::ll::UntypedStorage<8, 24> mUnk565535;
36 ::ll::UntypedStorage<8, 64> mUnka1f43e;
37 ::ll::UntypedStorage<8, 64> mUnk46a001;
38 ::ll::UntypedStorage<8, 24> mUnk52e0a6;
39 ::ll::UntypedStorage<8, 24> mUnk2fa2b2;
40 ::ll::UntypedStorage<8, 8> mUnk8a72cc;
41 ::ll::UntypedStorage<8, 32> mUnk37dfb5;
42 // NOLINTEND
43
44public:
45 // prevent constructor by default
46 Model& operator=(Model const&);
47 Model(Model const&);
48
49public:
50 // virtual functions
51 // NOLINTBEGIN
52 virtual ~Model() /*override*/;
53
54 virtual void clear();
55
56 virtual void onAppSuspended() /*override*/;
57
58 virtual void preDraw(::ScreenContext&);
59
60 virtual void postDraw(::ScreenContext&);
61
62 virtual void render(::ScreenContext&);
63
64 virtual void render(::ScreenContext& screenContext, ::Actor&, float, float, float, float, float, float);
65
66 virtual void render(::BaseActorRenderContext&);
67
68 virtual void
69 render(::BaseActorRenderContext& baseActorRenderContext, ::Actor&, float, float, float, float, float, float);
70
71 virtual void setupAnim(float, float, float, float, float, float);
72
73 virtual void setupAnim();
74
75 virtual void prepareMobModel(::Mob&, float, float, float);
76
77 virtual float getHeightAdjustment() const;
78
79 virtual ::AABB buildAABB() const;
80 // NOLINTEND
81
82public:
83 // member functions
84 // NOLINTBEGIN
85 MCNAPI Model();
86
87 MCNAPI void assignPartToGroup(
88 ::ModelPart& part,
89 bool forceToUniqueGroup,
90 int skinnedMeshGroupIdentifier,
91 ::DataDrivenGeometry* owningGeometry
92 );
93
94 MCNAPI void dataDrivenDraw(
95 ::RenderParams& renderParams,
96 ::dragon::RenderMetadata const& renderMetadata,
97 ::gsl::not_null<::RenderController const*> renderController,
99 ::ClientPBRTextureData const& textureData,
100 ::std::optional<::MERSUniformData> const& mersUniforms
101 );
102
103 MCNAPI void draw(
104 ::ScreenContext& screenContext,
105 ::dragon::RenderMetadata const& renderMetadata,
106 ::mce::ClientTexture const& texture
107 );
108
109 MCNAPI void draw(
110 ::ScreenContext& screenContext,
111 ::dragon::RenderMetadata const& renderMetadata,
112 ::ActorTextureInfo const& textureInfo
113 );
114
115 MCNAPI void draw(
116 ::ScreenContext& screenContext,
117 ::dragon::RenderMetadata const& renderMetadata,
118 ::ClientPBRTextureData const& textureData,
119 ::std::optional<::MERSUniformData> const& mersUniforms
120 );
121
122 MCNAPI void prepareSkinning();
123
124 MCNAPI void setModelMaterial(::mce::MaterialPtr const& materialPtr);
125 // NOLINTEND
126
127public:
128 // constructor thunks
129 // NOLINTBEGIN
130 MCNAPI void* $ctor();
131 // NOLINTEND
132
133public:
134 // destructor thunk
135 // NOLINTBEGIN
136 MCNAPI void $dtor();
137 // NOLINTEND
138
139public:
140 // virtual function thunks
141 // NOLINTBEGIN
142 MCNAPI void $clear();
143
144 MCNAPI void $onAppSuspended();
145
147
149
151
152 MCNAPI void $render(::ScreenContext& screenContext, ::Actor&, float, float, float, float, float, float);
153
155
156 MCNAPI void
157 $render(::BaseActorRenderContext& baseActorRenderContext, ::Actor&, float, float, float, float, float, float);
158
159 MCNAPI void $setupAnim(float, float, float, float, float, float);
160
161 MCNAPI void $setupAnim();
162
163 MCNAPI void $prepareMobModel(::Mob&, float, float, float);
164
165 MCNAPI float $getHeightAdjustment() const;
166
167 MCNAPI ::AABB $buildAABB() const;
168 // NOLINTEND
169
170public:
171 // vftables
172 // NOLINTBEGIN
173 MCNAPI static void** $vftable();
174 // NOLINTEND
175};
Definition AABB.h:18
Definition Actor.h:105
Definition AppPlatformListener.h:15
Definition BaseActorRenderContext.h:34
Definition ClientPBRTextureData.h:5
Definition DataDrivenGeometry.h:19
Definition Mob.h:50
Definition ModelPart.h:29
Definition Model.h:5
MCAPI void $setupAnim(float, float, float, float, float, float)
MCAPI void $render(::BaseActorRenderContext &)
MCAPI void setModelMaterial(::mce::MaterialPtr const &materialPtr)
MCAPI void dataDrivenDraw(::RenderParams &renderParams, ::dragon::RenderMetadata const &renderMetadata, ::gsl::not_null<::RenderController const * > renderController, ::DataDrivenGeometry &geo, ::ClientPBRTextureData const &textureData, ::std::optional<::MERSUniformData > const &mersUniforms)
MCAPI void $preDraw(::ScreenContext &)
MCAPI float $getHeightAdjustment() const
MCAPI void * $ctor()
MCAPI void $onAppSuspended()
MCAPI void draw(::ScreenContext &screenContext, ::dragon::RenderMetadata const &renderMetadata, ::mce::ClientTexture const &texture)
MCAPI void $prepareMobModel(::Mob &, float, float, float)
MCAPI void $dtor()
MCAPI void draw(::ScreenContext &screenContext, ::dragon::RenderMetadata const &renderMetadata, ::ActorTextureInfo const &textureInfo)
MCAPI void prepareSkinning()
MCAPI void $postDraw(::ScreenContext &)
MCAPI void $render(::ScreenContext &)
MCAPI void $render(::ScreenContext &screenContext, ::Actor &, float, float, float, float, float, float)
MCAPI void $clear()
MCAPI Model()
MCAPI void draw(::ScreenContext &screenContext, ::dragon::RenderMetadata const &renderMetadata, ::ClientPBRTextureData const &textureData, ::std::optional<::MERSUniformData > const &mersUniforms)
MCAPI void $setupAnim()
MCAPI::AABB $buildAABB() const
MCAPI void $render(::BaseActorRenderContext &baseActorRenderContext, ::Actor &, float, float, float, float, float, float)
static MCAPI void ** $vftable()
MCAPI void assignPartToGroup(::ModelPart &part, bool forceToUniqueGroup, int skinnedMeshGroupIdentifier, ::DataDrivenGeometry *owningGeometry)
Definition RenderController.h:20
Definition RenderParams.h:30
Definition ScreenContext.h:5
Definition MaterialPtr.h:15
Definition ActorTextureInfo.h:5
Definition MERSUniformData.h:5
Definition RenderMetadata.h:7
Definition ClientTexture.h:7