LeviLamina
Loading...
Searching...
No Matches
RenderController.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/renderer/controller/RenderControllerArrayType.h"
7#include "mc/molang/MolangVersion.h"
8
9// auto generated forward declare list
10// clang-format off
12class ExpressionNode;
13class RenderParams;
14class Vec4;
15namespace Json { class Value; }
16namespace mce { class Color; }
17class DataDrivenModel;
18// clang-format on
19
20class RenderController {
21public:
22 // member variables
23 // NOLINTBEGIN
42 // NOLINTEND
43
44public:
45 // prevent constructor by default
46 RenderController& operator=(RenderController const&);
47 RenderController(RenderController const&);
48 RenderController();
49
50public:
51 // member functions
52 // NOLINTBEGIN
53 MCNAPI_C bool _parseColor(
54 ::Json::Value const& root,
55 ::ExpressionNode* colorNode,
56 ::MolangVersion molangVersion,
57 float defaultAlpha
58 );
59
60 MCNAPI_C ::std::vector<::std::shared_ptr<::DataDrivenGeometry const>> getDataDrivenGeometries() const;
61
62 MCNAPI_C ::std::shared_ptr<::DataDrivenGeometry> getGeometry(::RenderParams& renderParams) const;
63
64 MCNAPI_C ::mce::Color getHurtColor(::RenderParams& renderParams) const;
65
66 MCNAPI_C float getLightColorMultiplier(::RenderParams& renderParams, float const& defaultValue) const;
67
68 MCNAPI_C ::mce::Color getOnFireColor(::RenderParams& renderParams) const;
69
70 MCNAPI_C ::mce::Color getOverlayColor(::RenderParams& renderParams) const;
71
72 MCNAPI_C ::mce::Color getTintColor(::RenderParams& renderParams) const;
73
74 MCNAPI_C ::Vec4 getUVAnim(::RenderParams& renderParams, ::Vec4 const& defaultUVAnim) const;
75
76 MCNAPI_C bool parse(::Json::Value const& root, ::MolangVersion molangVersion);
77
78 MCNAPI_C bool
79 parseArray(::Json::Value const& root, ::RenderControllerArrayType arrayType, ::MolangVersion molangVersion);
80
81 MCNAPI_C bool parseArrays(::Json::Value const& root, ::MolangVersion molangVersion);
82
83 MCNAPI_C bool parseGeometry(::Json::Value const& root, ::MolangVersion molangVersion);
84
85 MCNAPI_C bool parseLightColorMultiplier(::Json::Value const& root, ::MolangVersion molangVersion);
86
87 MCNAPI_C bool parseMaterials(::Json::Value const& root, ::MolangVersion molangVersion);
88
89 MCNAPI_C bool parsePartVisibility(::Json::Value const& root, ::MolangVersion molangVersion);
90
91 MCNAPI_C bool parseTextures(::Json::Value const& root, ::MolangVersion molangVersion);
92
93 MCNAPI_C bool parseUVAnim(::Json::Value const& root, ::MolangVersion molangVersion);
94
95 MCNAPI_C void render(::RenderParams& renderParams, ::DataDrivenGeometry& geo);
96
97 MCNAPI_C bool replaceVariables(::DataDrivenModel& model);
98
99 MCNAPI_C bool updatePartMaterials();
100
101 MCNAPI_C bool updatePartVisibility();
102 // NOLINTEND
103
104public:
105 // static functions
106 // NOLINTBEGIN
107 MCNAPI_C static ::std::string nameToRegExStr(::std::string const& sourceName);
108 // NOLINTEND
109
110public:
111 // constructor thunks
112 // NOLINTBEGIN
113 MCNAPI_C void* $ctor(::RenderController&&);
114
115 MCNAPI_C void* $ctor(::RenderController const&);
116
117 MCNAPI_C void* $ctor(::std::string const& name);
118 // NOLINTEND
119
120public:
121 // destructor thunk
122 // NOLINTBEGIN
123 MCNAPI_C void $dtor();
124 // NOLINTEND
125};
Definition DataDrivenGeometry.h:23
Definition DataDrivenModel.h:5
Definition ExpressionNode.h:33
Definition Value.h:16
Definition RenderParams.h:30
Definition Vec4.h:5
Definition Color.h:13
Definition Alias.h:14