LeviLamina
Loading...
Searching...
No Matches
RenderParams.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/math/Vec3.h"
7#include "mc/deps/minecraft_renderer/game/ShadowContext.h"
8#include "mc/deps/shared_types/legacy/FilterSubject.h"
9#include "mc/util/MolangScriptArg.h"
10#include "mc/world/actor/animation/AttachableSlotIndex.h"
11#include "mc/world/level/BlockPos.h"
12#include "mc/world/response/ResponseParameterContext.h"
13
14// auto generated forward declare list
15// clang-format off
16class Actor;
18class Block;
19class BlockSource;
21class ILevel;
22class ItemStackBase;
24class ActorRenderData;
26class DataDrivenModel;
27namespace ParticleSystem { class ParticleEmitter; }
28// clang-format on
29
30class RenderParams {
31public:
32 // RenderParams inner types declare
33 // clang-format off
34 struct Flags;
35 // clang-format on
36
37 // RenderParams inner types define
38 struct Flags {
39 public:
40 // member variables
41 // NOLINTBEGIN
42 ::ll::TypedStorage<4, 4, uint> mIsChild;
43 // NOLINTEND
44 };
45
46public:
47 // member variables
48 // NOLINTBEGIN
49 ::ll::TypedStorage<8, 8, ::BaseActorRenderContext*> mBaseActorRenderContext;
50 ::ll::TypedStorage<8, 8, ::MolangVariableMap*> mVariables;
51 ::ll::TypedStorage<8, 8, ::AnimationComponent*> mAnimationComponent;
52 ::ll::TypedStorage<8, 8, ::AnimationComponent*> mRootAnimationComponent;
53 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::DataDrivenModel>> mModel;
54 ::ll::TypedStorage<4, 4, ::ResponseParameterContext> mSourceContext;
55 ::ll::TypedStorage<8, 8, ::Actor*> mActor;
56 ::ll::TypedStorage<8, 8, ::Actor*> mOther;
57 ::ll::TypedStorage<8, 8, ::Actor*> mPlayer;
58 ::ll::TypedStorage<8, 8, ::Actor*> mTarget;
59 ::ll::TypedStorage<8, 8, ::Actor*> mParent;
60 ::ll::TypedStorage<8, 8, ::Actor*> mBaby;
61 ::ll::TypedStorage<8, 8, ::Actor*> mDamager;
62 ::ll::TypedStorage<8, 8, ::ILevel*> mLevel;
63 ::ll::TypedStorage<8, 8, ::ItemStackBase*> mItemStackBasePtr;
64 ::ll::TypedStorage<8, 8, ::Block const*> mBlock;
65 ::ll::TypedStorage<4, 12, ::BlockPos> mBlockPos;
66 ::ll::TypedStorage<8, 8, ::BlockSource*> mBlockSource;
67 ::ll::TypedStorage<8, 8, ::ActorRenderData*> mActorRenderData;
68 ::ll::TypedStorage<8, 8, ::ParticleSystem::ParticleEmitter*> mParticleEmitter;
69 ::ll::TypedStorage<8, 8, ::IBlockWorldGenAPI*> mBlockPlacementTarget;
70 ::ll::TypedStorage<2, 2, ushort> mSubRenderLayerIndex;
71 ::ll::TypedStorage<8, 64, ::std::function<float()>> mRandomFunction;
72 ::ll::TypedStorage<4, 4, float> mCameraDistance;
73 ::ll::TypedStorage<1, 1, ::ShadowContext> mShadowContext;
74 ::ll::TypedStorage<4, 32, float[8]> mParams;
75#ifdef LL_PLAT_S
76 ::ll::TypedStorage<8, 88, ::MolangScriptArg> mThisValue;
77 ::ll::TypedStorage<8, 88, ::MolangScriptArg> mScratchValue;
78#else // LL_PLAT_C
79 ::ll::TypedStorage<8, 96, ::MolangScriptArg> mThisValue;
80 ::ll::TypedStorage<8, 96, ::MolangScriptArg> mScratchValue;
81#endif
82 ::ll::TypedStorage<4, 4, ::RenderParams::Flags> mFlags;
83 ::ll::TypedStorage<4, 12, ::Vec3> mClickPos;
84 ::ll::TypedStorage<4, 4, ::AttachableSlotIndex> mSlotIndex;
85 ::ll::TypedStorage<1, 1, bool> mIsDitheringEnabled;
86 // NOLINTEND
87
88public:
89 // member functions
90 // NOLINTBEGIN
91 MCAPI RenderParams();
92
93 MCAPI RenderParams(::RenderParams const&);
94
95 MCAPI ::Actor* getActorTarget(::SharedTypes::Legacy::FilterSubject subject) const;
96
97 MCAPI ::RenderParams& init(
98 ::BaseActorRenderContext* baseActorRenderContext,
99 ::Actor* actor,
100 ::AnimationComponent* animationComponent,
101 ::MolangVariableMap* variableMap,
102 ::std::shared_ptr<::DataDrivenModel> model,
103 float frameAlpha,
104 float modelScale,
105 bool isDitheringEnabled
106 );
107
108 MCAPI ::RenderParams& operator=(::RenderParams const&);
109
110 MCAPI float& operator[](uint64 i);
111
112 MCAPI ~RenderParams();
113 // NOLINTEND
114
115public:
116 // static functions
117 // NOLINTBEGIN
118 MCAPI static ::RenderParams& getRenderParams(::Actor& actor);
119 // NOLINTEND
120
121public:
122 // constructor thunks
123 // NOLINTBEGIN
124 MCAPI void* $ctor();
125
126 MCAPI void* $ctor(::RenderParams const&);
127 // NOLINTEND
128
129public:
130 // destructor thunk
131 // NOLINTBEGIN
132 MCAPI void $dtor();
133 // NOLINTEND
134};
Definition ActorRenderData.h:5
Definition Actor.h:123
Definition AnimationComponent.h:37
Definition BaseActorRenderContext.h:5
Definition BlockSource.h:72
Definition Block.h:69
Definition DataDrivenModel.h:5
Definition IBlockWorldGenAPI.h:25
Definition ILevel.h:218
Definition ItemStackBase.h:52
Definition MolangVariableMap.h:18
Definition ParticleEmitter.h:7
Definition RenderParams.h:38