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-04-29 14:06:38 +0400
committerBenoit Bolsee <benoit.bolsee@online.be>2009-04-29 14:06:38 +0400
commitf004c36e41023b8a4ffa386226589b19c92eb971 (patch)
tree17921d31c7d6587c2c03861ec4f9edaa21b1707b /source/gameengine/Rasterizer/RAS_IPolygonMaterial.cpp
parent2d78dcfb610381a5056eed5f59dd57aa50e444c3 (diff)
BGE: speed up mesh conversion by avoiding allocation/deallocation of material object on each face. The speed up is minor on optimized builds but considerable on less optimized builds, good for debugging large scene.
Diffstat (limited to 'source/gameengine/Rasterizer/RAS_IPolygonMaterial.cpp')
-rw-r--r--source/gameengine/Rasterizer/RAS_IPolygonMaterial.cpp55
1 files changed, 55 insertions, 0 deletions
diff --git a/source/gameengine/Rasterizer/RAS_IPolygonMaterial.cpp b/source/gameengine/Rasterizer/RAS_IPolygonMaterial.cpp
index e8f451382b9..c10e4040a92 100644
--- a/source/gameengine/Rasterizer/RAS_IPolygonMaterial.cpp
+++ b/source/gameengine/Rasterizer/RAS_IPolygonMaterial.cpp
@@ -36,6 +36,61 @@
#include <config.h>
#endif
+void RAS_IPolyMaterial::Initialize(
+ const STR_String& texname,
+ const STR_String& matname,
+ int materialindex,
+ int tile,
+ int tilexrep,
+ int tileyrep,
+ int mode,
+ int transp,
+ bool alpha,
+ bool zsort,
+ int lightlayer)
+{
+ m_texturename = texname;
+ m_materialname = matname;
+ m_materialindex = materialindex;
+ m_tile = tile;
+ m_tilexrep = tilexrep;
+ m_tileyrep = tileyrep;
+ m_drawingmode = mode;
+ m_transp = transp;
+ m_alpha = alpha;
+ m_zsort = zsort;
+ m_lightlayer = lightlayer;
+ m_polymatid = m_newpolymatid++;
+ m_flag = 0;
+ m_multimode = 0;
+ m_shininess = 35.0;
+ m_specular.setValue(0.5,0.5,0.5);
+ m_specularity = 1.0;
+ m_diffuse.setValue(0.5,0.5,0.5);
+}
+
+RAS_IPolyMaterial::RAS_IPolyMaterial()
+ : m_texturename("__Dummy_Texture_Name__"),
+ m_materialname("__Dummy_Material_Name__"),
+ m_materialindex(0),
+ m_tile(0),
+ m_tilexrep(0),
+ m_tileyrep(0),
+ m_drawingmode (0),
+ m_transp(0),
+ m_alpha(false),
+ m_zsort(false),
+ m_lightlayer(0),
+ m_polymatid(0),
+ m_flag(0),
+ m_multimode(0)
+{
+ m_shininess = 35.0;
+ m_specular = MT_Vector3(0.5,0.5,0.5);
+ m_specularity = 1.0;
+ m_diffuse = MT_Vector3(0.5,0.5,0.5);
+}
+
RAS_IPolyMaterial::RAS_IPolyMaterial(const STR_String& texname,
const STR_String& matname,
int materialindex,