3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/renderer/BaseActorRenderer.h"
7#include "mc/deps/core/container/small_vector_base.h"
8#include "mc/deps/minecraft_renderer/renderer/MaterialPtr.h"
9#include "mc/deps/minecraft_renderer/renderer/TexturePtr.h"
10#include "mc/world/phys/AABB.h"
24namespace mce {
class Mesh; }
40 ::ll::UntypedStorage<4, 12> mUnkadd485;
41 ::ll::UntypedStorage<4, 12> mUnk9c3e04;
42 ::ll::UntypedStorage<4, 12> mUnk95cfb7;
43 ::ll::UntypedStorage<4, 12> mUnkc010bc;
44 ::ll::UntypedStorage<4, 12> mUnk8a6402;
49 LeashPins& operator=(LeashPins
const&);
50 LeashPins(LeashPins
const&);
57 ::ll::TypedStorage<1, 1, bool> mRenderingInventory;
58 ::ll::TypedStorage<1, 1, bool const> mHasWaterHole;
59 ::ll::TypedStorage<8, 16, ::mce::MaterialPtr> mEntityAlphatestMaterial;
60 ::ll::TypedStorage<8, 16, ::mce::MaterialPtr> mEntityAlphatestGlintMaterial;
61 ::ll::TypedStorage<8, 32, ::mce::TexturePtr> mGlintTexture;
62 ::ll::TypedStorage<8, 32, ::mce::TexturePtr> mAtlasTexture;
63 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::mce::TextureGroup>> mTextureGroup;
64 ::ll::TypedStorage<4, 24, ::AABB> mBaseRenderBounds;
65 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::Model>> mModel;
75 virtual ~ActorRenderer() ;
77 virtual void render(::BaseActorRenderContext& renderContext, ::ActorRenderData& actorRenderData) = 0;
79 virtual void renderDebug(::BaseActorRenderContext& renderContext, ::ActorRenderData& entityRenderData);
81 virtual void renderEffects(::BaseActorRenderContext& renderContext, ::ActorRenderData& actorRenderData);
83 virtual void renderLeash(::BaseActorRenderContext& renderContext, ::ActorRenderData& entityRenderData);
85 virtual void renderWaterHole(::BaseActorRenderContext& renderContext, ::ActorRenderData& entityRenderData);
87 virtual void addAdditionalRenderingIfNeeded(::std::shared_ptr<::mce::TextureGroup> textureGroup);
89 virtual ::AABB getRenderBounds(::Actor
const& entity)
const;
91 virtual void getLeashOffsets(
97 ::Bedrock::small_vector_base<::Vec3>& output
100 virtual void setIsOnScreen(::Actor&,
bool,
float)
const;
102 virtual bool shouldUpdateBonesAndEffectsIfOffScreen(::RenderParams& renderParams)
const;
104 virtual bool shouldUpdateEffectsIfOffScreen(::RenderParams& renderParams)
const;
106 virtual bool shouldHideHeldItems(::RenderParams& renderParams)
const;
113 ::std::shared_ptr<::mce::TextureGroup> textureGroup,
115 ::Vec3 const& renderDimOffset,
120 ::std::shared_ptr<::Model> model,
121 ::std::shared_ptr<::mce::TextureGroup> textureGroup,
123 ::Vec3 const& renderDimOffset,
134 ::Vec3 const& fromLeashes,
139 uint64
const ropeIndex,
140 float const actorFrameAlpha,
159 float actorFrameAlpha,
201 ::std::shared_ptr<::mce::TextureGroup> textureGroup,
203 ::Vec3 const& renderDimOffset,
208 ::std::shared_ptr<::Model> model,
209 ::std::shared_ptr<::mce::TextureGroup> textureGroup,
211 ::Vec3 const& renderDimOffset,
Definition ActorRenderData.h:5
Definition ActorRenderer.h:5
MCAPI ActorRenderer(::std::shared_ptr<::mce::TextureGroup > textureGroup, ::Vec2 const &renderDim, ::Vec3 const &renderDimOffset, bool hasWaterHole)
MCAPI ActorRenderer(::std::shared_ptr<::Model > model, ::std::shared_ptr<::mce::TextureGroup > textureGroup, ::Vec2 const &renderDim, ::Vec3 const &renderDimOffset, bool hasWaterHole)
MCAPI void $addAdditionalRenderingIfNeeded(::std::shared_ptr<::mce::TextureGroup > textureGroup)
static MCAPI void renderFlame(::BaseActorRenderContext &renderContext, ::ActorRenderData &entityRenderData)
static MCAPI void _getLeashPins(float actorFrameAlpha, ::BaseActorRenderContext &renderContext, ::Actor &actor, ::Bedrock::small_vector_base<::ActorRenderer::LeashPins > &output, ::Bedrock::small_vector_base<::Vec3 > &leashFromOffsets)
MCAPI::AABB $getRenderBounds(::Actor const &entity) const
MCAPI void $renderDebug(::BaseActorRenderContext &renderContext, ::ActorRenderData &entityRenderData)
static MCAPI void _drawRopeRange(::BaseActorRenderContext &renderContext, int begin, int end, ::Vec3 const &basisX, ::Vec3 const &basisY, ::Vec3 const &deltaNorm, ::RopePoints const &nodes, ::mce::TexturePtr &tex, float a, ::Vec3 *startPoint, ::Vec3 *endPoint)
MCAPI bool $shouldUpdateBonesAndEffectsIfOffScreen(::RenderParams &renderParams) const
static MCAPI ::ActorTextureInfo & mFlameTexture()
static MCAPI ::mce::Mesh & mFlameMesh()
MCAPI void $setIsOnScreen(::Actor &, bool, float) const
MCAPI bool $shouldUpdateEffectsIfOffScreen(::RenderParams &renderParams) const
static MCAPI void resetTextures()
MCAPI void * $ctor(::std::shared_ptr<::mce::TextureGroup > textureGroup, ::Vec2 const &renderDim, ::Vec3 const &renderDimOffset, bool hasWaterHole)
static MCAPI void renderDebugAttachPos(int renderAttachPos, ::Actor const &mob)
static MCAPI void renderLeash(::BaseActorRenderContext &renderContext, ::ActorRenderData &entityRenderData, ::Bedrock::small_vector_base<::ActorRenderer::LeashPins > &allLeashPins)
MCAPI void $renderWaterHole(::BaseActorRenderContext &renderContext, ::ActorRenderData &entityRenderData)
static MCAPI ::Vec2 const & DEFAULT_RENDER_BOUNDS()
static MCAPI void _addLeashPinToOutput(::Vec3 const &fromLeashes, ::Vec3 const &toLeashes, ::Actor const &actor, ::Actor const *roper, ::ActorUniqueID const roperID, uint64 const ropeIndex, float const actorFrameAlpha, ::Bedrock::small_vector_base<::ActorRenderer::LeashPins > &output)
static MCAPI bool isDitheringEnabled(::BaseActorRenderContext const &renderContext, ::Actor const &actor)
MCAPI void $getLeashOffsets(::Actor &, float yRot, float yRotPrev, float a, bool legacyOffset, ::Bedrock::small_vector_base<::Vec3 > &output) const
MCAPI void * $ctor(::std::shared_ptr<::Model > model, ::std::shared_ptr<::mce::TextureGroup > textureGroup, ::Vec2 const &renderDim, ::Vec3 const &renderDimOffset, bool hasWaterHole)
static MCAPI ::mce::MaterialPtr & mFlameMaterial()
static MCAPI void ** $vftable()
MCAPI bool $shouldHideHeldItems(::RenderParams &renderParams) const
MCAPI void $renderLeash(::BaseActorRenderContext &renderContext, ::ActorRenderData &entityRenderData)
static MCAPI ::mce::MaterialPtr & mLeashMat()
static MCAPI ::mce::TexturePtr & mLeashTexture()
Definition BaseActorRenderContext.h:5
Definition BaseActorRenderer.h:5
Definition small_vector_base.h:10
Definition RenderParams.h:29
Definition TextureGroup.h:7
Definition TexturePtr.h:7
Definition ActorRenderer.h:13
Definition ActorTextureInfo.h:5
Definition ActorUniqueID.h:5
Definition RopePoints.h:10