]> git.lizzy.rs Git - dragonfireclient.git/commitdiff
Fix lighting of upright_sprite entities (#12336)
authorx2048 <codeforsmile@gmail.com>
Fri, 20 May 2022 20:35:03 +0000 (22:35 +0200)
committerGitHub <noreply@github.com>
Fri, 20 May 2022 20:35:03 +0000 (22:35 +0200)
Use MeshNode materials to set the light since ReadOnlyMaterials is now false

src/client/content_cao.cpp

index d89bb53b31881a7123bd0328268f275dd50557b2..9c3e5aa059c46c82a6dfb98dca0abe39f88158a2 100644 (file)
@@ -905,12 +905,8 @@ void GenericCAO::setNodeLight(const video::SColor &light_color)
                if (m_prop.visual == "upright_sprite") {
                        if (!m_meshnode)
                                return;
-
-                       scene::IMesh *mesh = m_meshnode->getMesh();
-                       for (u32 i = 0; i < mesh->getMeshBufferCount(); ++i) {
-                               scene::IMeshBuffer *buf = mesh->getMeshBuffer(i);
-                               buf->getMaterial().EmissiveColor = light_color;
-                       }
+                       for (u32 i = 0; i < m_meshnode->getMaterialCount(); ++i)
+                               m_meshnode->getMaterial(i).EmissiveColor = light_color;
                } else {
                        scene::ISceneNode *node = getSceneNode();
                        if (!node)