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:
authorMitchell Stokes <mogurijin@gmail.com>2013-02-16 08:38:53 +0400
committerMitchell Stokes <mogurijin@gmail.com>2013-02-16 08:38:53 +0400
commit8c9906eb9190b40ffec981944174e96e6a471af2 (patch)
tree915554f7488a4d7fc677524e2d701eceb87b165b /source/gameengine/Converter
parent6072322312308fe13e51ce4c394eeb79434f38f2 (diff)
BGE: Fix for issue #34242 "It does not render in "P" mode for Game engine if you UV mapa a face of a cube" reported by joaclint.
Material caching can now be disabled for Multitexture and GLSL Materials.
Diffstat (limited to 'source/gameengine/Converter')
-rw-r--r--source/gameengine/Converter/BL_BlenderDataConversion.cpp8
-rw-r--r--source/gameengine/Converter/KX_BlenderSceneConverter.cpp10
2 files changed, 8 insertions, 10 deletions
diff --git a/source/gameengine/Converter/BL_BlenderDataConversion.cpp b/source/gameengine/Converter/BL_BlenderDataConversion.cpp
index e5503dfd0a7..f7726ebaf78 100644
--- a/source/gameengine/Converter/BL_BlenderDataConversion.cpp
+++ b/source/gameengine/Converter/BL_BlenderDataConversion.cpp
@@ -921,9 +921,6 @@ static RAS_MaterialBucket *material_from_mesh(Material *ma, MFace *mface, MTFace
/* do Texture Face materials */
Image* bima = (tface)? (Image*)tface->tpage: NULL;
STR_String imastr = (tface)? (bima? (bima)->id.name : "" ) : "";
-
- if (!converter->GetCacheMaterials())
- polymat = NULL;
char alpha_blend=0;
short tile=0;
@@ -1045,9 +1042,8 @@ static RAS_MaterialBucket *material_from_mesh(Material *ma, MFace *mface, MTFace
polymat->m_specular.setValue(0.0f,0.0f,0.0f);
polymat->m_shininess = 35.0;
}
-
- if (converter->GetCacheMaterials())
- converter->CachePolyMaterial(ma, polymat);
+
+ converter->CachePolyMaterial(ma, polymat);
}
}
diff --git a/source/gameengine/Converter/KX_BlenderSceneConverter.cpp b/source/gameengine/Converter/KX_BlenderSceneConverter.cpp
index 376f75959ed..cd5dec4669d 100644
--- a/source/gameengine/Converter/KX_BlenderSceneConverter.cpp
+++ b/source/gameengine/Converter/KX_BlenderSceneConverter.cpp
@@ -601,22 +601,24 @@ void KX_BlenderSceneConverter::RegisterPolyMaterial(RAS_IPolyMaterial *polymat)
void KX_BlenderSceneConverter::CachePolyMaterial(struct Material *mat, RAS_IPolyMaterial *polymat)
{
- m_polymat_cache[mat] = polymat;
+ if (m_use_mat_cache)
+ m_polymat_cache[mat] = polymat;
}
RAS_IPolyMaterial *KX_BlenderSceneConverter::FindCachedPolyMaterial(struct Material *mat)
{
- return m_polymat_cache[mat];
+ return (m_use_mat_cache) ? m_polymat_cache[mat] : NULL;
}
void KX_BlenderSceneConverter::CacheBlenderMaterial(struct Material *mat, BL_Material *blmat)
{
- m_mat_cache[mat] = blmat;
+ if (m_use_mat_cache)
+ m_mat_cache[mat] = blmat;
}
BL_Material *KX_BlenderSceneConverter::FindCachedBlenderMaterial(struct Material *mat)
{
- return m_mat_cache[mat];
+ return (m_use_mat_cache) ? m_mat_cache[mat] : NULL;
}
void KX_BlenderSceneConverter::RegisterInterpolatorList(