[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [29472] branches/render25/source/blender/ render/intern/source/rendercore.c: Render Branch: small optimization to avoid calling material_in_material
Brecht Van Lommel
brecht at blender.org
Tue Jun 15 20:12:36 CEST 2010
Revision: 29472
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=29472
Author: blendix
Date: 2010-06-15 20:12:36 +0200 (Tue, 15 Jun 2010)
Log Message:
-----------
Render Branch: small optimization to avoid calling material_in_material
too much in sss preprocessing pass.
Modified Paths:
--------------
branches/render25/source/blender/render/intern/source/rendercore.c
Modified: branches/render25/source/blender/render/intern/source/rendercore.c
===================================================================
--- branches/render25/source/blender/render/intern/source/rendercore.c 2010-06-15 18:11:52 UTC (rev 29471)
+++ branches/render25/source/blender/render/intern/source/rendercore.c 2010-06-15 18:12:36 UTC (rev 29472)
@@ -1051,6 +1051,7 @@
ObjectRen *obr;
VlakRen *vlr;
RenderLayer *rl;
+ Material *vlr_ma= NULL;
int v;
/* we use as layer the combined layer flags of all render layers that
@@ -1061,9 +1062,12 @@
for(v=0; v<obr->totvlak; v++) {
if((v & 255)==0) vlr= obr->vlaknodes[v>>8].vlak;
else vlr++;
-
- if(material_in_material(vlr->mat, ma))
- break;
+
+ if(vlr->mat!=vlr_ma) {
+ vlr_ma= vlr->mat;
+ if(material_in_material(vlr_ma, ma))
+ break;
+ }
}
if(v != obr->totvlak) {
More information about the Bf-blender-cvs
mailing list