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:
authorThomas Szepe <HG1_public@gmx.net>2015-03-24 00:32:49 +0300
committerThomas Szepe <HG1_public@gmx.net>2015-03-24 00:32:49 +0300
commitc73693d4a5c9b286333a90dd0fc6fd8a7e6ea753 (patch)
treed7a64433a1acf92a36bb0e064e18b72a729361ca /source/gameengine/Ketsji/KX_KetsjiEngine.cpp
parentda5fb82a63ea95f75e42092bee60027d3706c9ce (diff)
BGE: Fix T43592: World GLSL
This patch will fix the world GLSL (mist, background, ambient) update for the BGE. Reviewers: moguri, brecht Reviewed By: moguri, brecht Subscribers: panzergame Differential Revision: https://developer.blender.org/D151
Diffstat (limited to 'source/gameengine/Ketsji/KX_KetsjiEngine.cpp')
-rw-r--r--source/gameengine/Ketsji/KX_KetsjiEngine.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/source/gameengine/Ketsji/KX_KetsjiEngine.cpp b/source/gameengine/Ketsji/KX_KetsjiEngine.cpp
index 8c6cb2b32d4..2907371267a 100644
--- a/source/gameengine/Ketsji/KX_KetsjiEngine.cpp
+++ b/source/gameengine/Ketsji/KX_KetsjiEngine.cpp
@@ -80,6 +80,8 @@
#include "KX_NavMeshObject.h"
+#include "GPU_material.h"
+
#define DEFAULT_LOGIC_TIC_RATE 60.0
//#define DEFAULT_PHYSICS_TIC_RATE 60.0
@@ -975,6 +977,9 @@ void KX_KetsjiEngine::SetBackGround(KX_WorldInfo* wi)
wi->getBackColorBlue(),
0.0
);
+
+ float horicolor[] = {wi->getBackColorRed(), wi->getBackColorGreen(), wi->getBackColorBlue()};
+ GPU_horizon_update_color(horicolor);
}
}
}
@@ -993,6 +998,9 @@ void KX_KetsjiEngine::SetWorldSettings(KX_WorldInfo* wi)
wi->getAmbientColorBlue()
);
+ float ambcolor[] = {wi->getAmbientColorRed(), wi->getAmbientColorGreen(), wi->getAmbientColorBlue()};
+ GPU_ambient_update_color(ambcolor);
+
if (wi->hasMist())
{
m_rasterizer->SetFog(
@@ -1004,10 +1012,22 @@ void KX_KetsjiEngine::SetWorldSettings(KX_WorldInfo* wi)
wi->getMistColorGreen(),
wi->getMistColorBlue()
);
+
+ float mistcolor[] = {wi->getMistColorRed(), wi->getMistColorGreen(), wi->getMistColorBlue()};
+ GPU_mist_update_values(
+ wi->getMistType(),
+ wi->getMistStart(),
+ wi->getMistDistance(),
+ wi->getMistIntensity(),
+ mistcolor
+ );
+
m_rasterizer->EnableFog(true);
+ GPU_mist_update_enable(true);
}
else {
m_rasterizer->EnableFog(false);
+ GPU_mist_update_enable(false);
}
}
}