Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenoit Bolsee <benoit.bolsee@online.be>2009-05-13 10:42:15 +0400
committerBenoit Bolsee <benoit.bolsee@online.be>2009-05-13 10:42:15 +0400
commit82b4975ccfa8fe2c72278388a3cf3a8432cc9fb0 (patch)
tree3bd0fb8c0c858fd4556f6865e3d79e1e5e9faac5 /source/gameengine/Ketsji/KX_Light.cpp
parentc19baf85cca1ecdd0b07c35a61a4999bc27d1e6b (diff)
BGE #18732: Python Light options don't work with GLSL materials. Commited patch from dfelinto and moguri, thanks for the good work.
Diffstat (limited to 'source/gameengine/Ketsji/KX_Light.cpp')
-rw-r--r--source/gameengine/Ketsji/KX_Light.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/source/gameengine/Ketsji/KX_Light.cpp b/source/gameengine/Ketsji/KX_Light.cpp
index 777a7f32629..3af34c39123 100644
--- a/source/gameengine/Ketsji/KX_Light.cpp
+++ b/source/gameengine/Ketsji/KX_Light.cpp
@@ -61,6 +61,11 @@ KX_LightObject::KX_LightObject(void* sgReplicationInfo,SG_Callbacks callbacks,
m_rendertools->AddLight(&m_lightobj);
m_glsl = glsl;
m_blenderscene = ((KX_Scene*)sgReplicationInfo)->GetBlenderScene();
+
+ m_initialvalues[0] = lightobj.m_red;
+ m_initialvalues[1] = lightobj.m_green;
+ m_initialvalues[2] = lightobj.m_blue;
+ m_initialvalues[3] = lightobj.m_energy;
};
@@ -71,6 +76,8 @@ KX_LightObject::~KX_LightObject()
if((lamp = GetGPULamp())) {
float obmat[4][4] = {{0}};
GPU_lamp_update(lamp, 0, obmat);
+ GPU_lamp_update_colors(lamp, m_initialvalues[0], m_initialvalues[1],
+ m_initialvalues[2], m_initialvalues[3]);
}
m_rendertools->RemoveLight(&m_lightobj);
@@ -114,6 +121,8 @@ void KX_LightObject::Update()
obmat[i][j] = (float)*dobmat;
GPU_lamp_update(lamp, m_lightobj.m_layer, obmat);
+ GPU_lamp_update_colors(lamp, m_lightobj.m_red, m_lightobj.m_green,
+ m_lightobj.m_blue, m_lightobj.m_energy);
}
}