11#include <EMaterialTypes.h>
12#include <IMeshSceneNode.h>
64 bool override_c =
false, video::SColor color = {}) :
95 scene::IMesh *
mesh =
nullptr;
126 bool check_wield_image =
true);
141 void setExtruded(video::ITexture *base, video::ITexture *overlay,
180 int& result_frame_length_ms);
183 video::ITexture *overlay_texture =
nullptr);
196 const char *shader,
AlphaMode mode,
int layer);
Definition texturesource.h:45
Definition wieldmesh.h:40
bool needColorize(video::SColor target)
Definition wieldmesh.h:78
bool last_colorized_set
Definition wieldmesh.h:52
ItemMeshBufferInfo(int layer, bool override, video::SColor color)
Definition wieldmesh.h:58
video::SColor last_colorized
Definition wieldmesh.h:48
u8 layer
Definition wieldmesh.h:87
std::unique_ptr< AnimationInfo > animation_info
Definition wieldmesh.h:90
ItemMeshBufferInfo(int layer, const AnimationInfo *animation, bool override_c=false, video::SColor color={})
Definition wieldmesh.h:63
bool override_color_set
Definition wieldmesh.h:51
ItemMeshBufferInfo(int layer)
Definition wieldmesh.h:56
void applyOverride(video::SColor &dest) const
Definition wieldmesh.h:73
video::SColor override_color
Definition wieldmesh.h:44
Definition dynamicshadowsrender.h:42
Definition wieldmesh.h:113
video::SColor m_base_color
Definition wieldmesh.h:163
bool m_trilinear_filter
Definition wieldmesh.h:153
std::vector< ItemMeshBufferInfo > m_buffer_info
Definition wieldmesh.h:158
std::vector< FrameSpec > m_wield_overlay_frames
Definition wieldmesh.h:168
void setColor(video::SColor color)
Definition wieldmesh.cpp:571
WieldMeshSceneNode(scene::ISceneManager *mgr, s32 id=-1)
Definition wieldmesh.cpp:227
ShadowRenderer * m_shadow
Definition wieldmesh.h:175
scene::IMeshSceneNode * m_meshnode
Definition wieldmesh.h:147
void setItem(const ItemStack &item, Client *client, bool check_wield_image=true)
Definition wieldmesh.cpp:422
virtual void render()
Definition wieldmesh.cpp:618
virtual const aabb3f & getBoundingBox() const
Definition wieldmesh.h:138
scene::IMesh * getMesh()
Definition wieldmesh.h:134
video::E_MATERIAL_TYPE m_material_type
Definition wieldmesh.h:149
bool m_anisotropic_filter
Definition wieldmesh.h:151
bool m_bilinear_filter
Definition wieldmesh.h:152
virtual ~WieldMeshSceneNode()
Definition wieldmesh.cpp:259
void setLightColorAndAnimation(video::SColor color, float animation_time)
Definition wieldmesh.cpp:600
void setExtruded(const TileDef &d0, const TileLayer &l0, const TileDef &d1, const TileLayer &l1, v3f wield_scale, ITextureSource *tsrc)
Definition wieldmesh.cpp:271
std::vector< FrameSpec > m_wield_image_frames
Definition wieldmesh.h:167
void changeToMesh(scene::IMesh *mesh)
Definition wieldmesh.cpp:624
const aabb3f m_bounding_box
Definition wieldmesh.h:173
core::aabbox3d< f32 > aabb3f
Definition irr_aabb3d.h:11
core::vector3df v3f
Definition irr_v3d.h:11
Definition activeobjectmgr.cpp:11
AlphaMode
Definition nodedef.h:250
Definition wieldmesh.h:94
std::vector< ItemMeshBufferInfo > buffer_info
Definition wieldmesh.h:99
bool needs_shading
Definition wieldmesh.h:104
scene::IMesh * mesh
Definition wieldmesh.h:95
Definition inventory.h:21
Definition tileanimation.h:18
Defines a layer of a tile.
Definition tile.h:75
scene::SMesh * getExtrudedMesh(video::ITexture *texture, video::ITexture *overlay_texture=nullptr)
Definition wieldmesh.cpp:738
void createItemMesh(Client *client, const ItemDefinition &def, const AnimationInfo &animation_normal, const AnimationInfo &animation_overlay, ItemMesh *result)
NOTE: The item mesh is only suitable for inventory rendering (due to its material types).
Definition wieldmesh.cpp:639
void getAdHocNodeShader(video::SMaterial &mat, IShaderSource *shdsrc, const char *shader, AlphaMode mode, int layer)
Replace the material's shader with a custom one while respecting the usual things expected of node re...
Definition wieldmesh.cpp:136
std::vector< FrameSpec > createAnimationFrames(ITextureSource *tsrc, const std::string &image_name, const TileAnimationParams &animation, int &result_frame_length_ms)
Definition wieldmesh.cpp:384