]> git.lizzy.rs Git - dragonfireclient.git/blobdiff - src/client/wieldmesh.cpp
Apply shadow texture to wield-based entities
[dragonfireclient.git] / src / client / wieldmesh.cpp
index 0a4cb3b866c47d673e4dd9a621cc8fc2de3c7e56..8b3347df6dc164b0b4ee040ef4ca9f1bf5e845bd 100644 (file)
@@ -541,9 +541,14 @@ void WieldMeshSceneNode::changeToMesh(scene::IMesh *mesh)
        m_meshnode->setMaterialFlag(video::EMF_NORMALIZE_NORMALS, m_lighting);
        m_meshnode->setVisible(true);
 
-       // Add mesh to shadow caster
-       if (m_shadow)
+       if (m_shadow) {
+               // Add mesh to shadow caster
                m_shadow->addNodeToShadowList(m_meshnode);
+
+               // Set shadow texture
+               for (u32 i = 0; i < m_meshnode->getMaterialCount(); i++)
+                       m_meshnode->setMaterialTexture(3, m_shadow->get_texture());
+       }
 }
 
 void getItemMesh(Client *client, const ItemStack &item, ItemMesh *result)