3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/renderer/actor/ActorRenderer.h"
7#include "mc/deps/core/container/small_vector_base.h"
8#include "mc/deps/core/string/HashedString.h"
9#include "mc/deps/minecraft_renderer/renderer/TexturePtr.h"
10#include "mc/util/molang/ExpressionNode.h"
30 ::ll::TypedStorage<8, 24, ::std::vector<::std::unique_ptr<::DataDrivenRenderer_tempComponent>>> mTempComponents;
31 ::ll::TypedStorage<8, 48, ::HashedString const> mName;
32 ::ll::TypedStorage<1, 1, bool const> mIsAttachable;
33 ::ll::TypedStorage<8, 32, ::mce::TexturePtr> mDefaultSkin;
34 ::ll::TypedStorage<8, 16, ::ExpressionNode> mUpdateBonesAndEffectsIfOffScreen;
35 ::ll::TypedStorage<8, 16, ::ExpressionNode> mUpdateEffectsIfOffScreen;
36 ::ll::TypedStorage<8, 16, ::ExpressionNode> mHideHeldItems;
46 virtual void getLeashOffsets(
52 ::Bedrock::small_vector_base<::Vec3>& output
55 virtual void render(::BaseActorRenderContext& renderContext, ::ActorRenderData& actorRenderData) ;
58 renderEffects(::BaseActorRenderContext& renderContext, ::ActorRenderData& actorRenderData) ;
60 virtual ::AABB getRenderBounds(::Actor
const& entity)
const ;
62 virtual void addAdditionalRenderingIfNeeded(::std::shared_ptr<::mce::TextureGroup> textureGroup) ;
64 virtual void setIsOnScreen(::Actor& actor,
bool const isOnScreen,
float distance)
const ;
66 virtual bool shouldUpdateBonesAndEffectsIfOffScreen(::RenderParams& renderParams)
const ;
68 virtual bool shouldUpdateEffectsIfOffScreen(::RenderParams& renderParams)
const ;
70 virtual bool shouldHideHeldItems(::RenderParams& renderParams)
const ;
76 MCAPI DataDrivenRenderer(
77 ::std::shared_ptr<::ActorResourceDefinition> definition,
78 ::std::shared_ptr<::mce::TextureGroup> textureGroup
81 MCAPI
void addGuardianAdditionalRendering();
83 MCAPI
void addHumanoidAdditionalRendering(::std::shared_ptr<::mce::TextureGroup> textureGroup);
85 MCAPI
void addMinecartAdditionalRendering(::BlockTessellator& commonBlockRenderer);
91 MCAPI
static void getLeashOffsets(::Actor& actor,
bool legacyOffset, ::Bedrock::small_vector_base<::Vec3>& output);
98 $ctor(::std::shared_ptr<::ActorResourceDefinition> definition, ::std::shared_ptr<::mce::TextureGroup> textureGroup);
104 MCAPI
void $getLeashOffsets(
110 ::Bedrock::small_vector_base<::Vec3>& output
113 MCAPI
void $render(::BaseActorRenderContext& renderContext, ::ActorRenderData& actorRenderData);
115 MCAPI
void $renderEffects(::BaseActorRenderContext& renderContext, ::ActorRenderData& actorRenderData);
117 MCAPI ::AABB $getRenderBounds(::Actor
const& entity)
const;
119 MCAPI
void $addAdditionalRenderingIfNeeded(::std::shared_ptr<::mce::TextureGroup> textureGroup);
121 MCAPI
void $setIsOnScreen(::Actor& actor,
bool const isOnScreen,
float distance)
const;
123 MCAPI
bool $shouldUpdateBonesAndEffectsIfOffScreen(::RenderParams& renderParams)
const;
125 MCAPI
bool $shouldUpdateEffectsIfOffScreen(::RenderParams& renderParams)
const;
127 MCAPI
bool $shouldHideHeldItems(::RenderParams& renderParams)
const;
Definition ActorRenderData.h:5
Definition ActorRenderer.h:5
Definition ActorResourceDefinition.h:5
Definition BaseActorRenderContext.h:5
Definition BlockTessellator.h:5
Definition DataDrivenRenderer_tempComponent.h:5
Definition DataDrivenRenderer.h:5
Definition RenderParams.h:29
Definition TextureGroup.h:7