mirror of
https://github.com/minetest/minetest.git
synced 2024-12-22 22:22:23 +01:00
Fix model[] being lit wrongly if shaders are disabled (#15364)
This commit is contained in:
parent
0e06590ffd
commit
3064f3ccb7
@ -917,6 +917,9 @@ void GenericCAO::setNodeLight(const video::SColor &light_color)
|
||||
return;
|
||||
setColorParam(node, light_color);
|
||||
} else {
|
||||
// TODO refactor vertex colors to be separate from the other vertex attributes
|
||||
// instead of mutating meshes / buffers for everyone via setMeshColor.
|
||||
// (Note: There are a couple more places here where setMeshColor is used.)
|
||||
if (m_meshnode) {
|
||||
setMeshColor(m_meshnode->getMesh(), light_color);
|
||||
} else if (m_animated_meshnode) {
|
||||
|
@ -9,6 +9,8 @@
|
||||
#include <IVideoDriver.h>
|
||||
#include "IAttributes.h"
|
||||
#include "porting.h"
|
||||
#include "client/mesh.h"
|
||||
#include "settings.h"
|
||||
|
||||
GUIScene::GUIScene(gui::IGUIEnvironment *env, scene::ISceneManager *smgr,
|
||||
gui::IGUIElement *parent, core::recti rect, s32 id)
|
||||
@ -96,6 +98,11 @@ void GUIScene::draw()
|
||||
if (m_inf_rot)
|
||||
rotateCamera(v3f(0.f, -0.03f * (float)dtime_ms, 0.f));
|
||||
|
||||
// HACK restore mesh vertex colors to full brightness:
|
||||
// They may have been mutated in entity rendering code before.
|
||||
if (!g_settings->getBool("enable_shaders"))
|
||||
setMeshColor(m_mesh->getMesh(), irr::video::SColor(0xFFFFFFFF));
|
||||
|
||||
m_smgr->drawAll();
|
||||
|
||||
if (m_initial_rotation && m_mesh) {
|
||||
|
Loading…
Reference in New Issue
Block a user