[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [25648] trunk/blender/source/blender/ render/intern/source: displacement was crashing because of the improved bumpmap.
Campbell Barton
ideasman42 at gmail.com
Fri Jan 1 14:56:31 CET 2010
Revision: 25648
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=25648
Author: campbellbarton
Date: 2010-01-01 14:56:30 +0100 (Fri, 01 Jan 2010)
Log Message:
-----------
displacement was crashing because of the improved bumpmap. now its skipped when the ShaderInput's verts are not set.
Modified Paths:
--------------
trunk/blender/source/blender/render/intern/source/convertblender.c
trunk/blender/source/blender/render/intern/source/texture.c
Modified: trunk/blender/source/blender/render/intern/source/convertblender.c
===================================================================
--- trunk/blender/source/blender/render/intern/source/convertblender.c 2010-01-01 12:24:16 UTC (rev 25647)
+++ trunk/blender/source/blender/render/intern/source/convertblender.c 2010-01-01 13:56:30 UTC (rev 25648)
@@ -2284,6 +2284,14 @@
shi.mat= vlr->mat; /* current input material */
shi.thread= 0;
+ /* TODO, assign these, displacement with new bumpmap is skipped without - campbell */
+#if 0
+ /* order is not known ? */
+ shi.v1= vlr->v1;
+ shi.v2= vlr->v2;
+ shi.v3= vlr->v3;
+#endif
+
/* Displace the verts, flag is set when done */
if (!vlr->v1->flag)
displace_render_vert(re, obr, &shi, vlr->v1,0, scale, mat, imat);
Modified: trunk/blender/source/blender/render/intern/source/texture.c
===================================================================
--- trunk/blender/source/blender/render/intern/source/texture.c 2010-01-01 12:24:16 UTC (rev 25647)
+++ trunk/blender/source/blender/render/intern/source/texture.c 2010-01-01 13:56:30 UTC (rev 25648)
@@ -1737,7 +1737,8 @@
// (should not be here, dudnu, dudnv, dvdnu & dvdnv should probably be part of ShadeInputUV struct,
// nu/nv in ShadeInput and this calculation should then move to shadeinput.c, shade_input_set_shade_texco() func.)
// NOTE: test for shi->obr->ob here, since vlr/obr/obi can be 'fake' when called from fastshade(), another reason to move it..
- if ((mtex->texflag & MTEX_NEW_BUMP) && shi->obr && shi->obr->ob) {
+ // NOTE: shi->v1 is NULL when called from displace_render_vert, assigning verts in this case is not trivial because the shi quad face side is not know.
+ if ((mtex->texflag & MTEX_NEW_BUMP) && shi->obr && shi->obr->ob && shi->v1) {
if(mtex->mapto & (MAP_NORM|MAP_DISPLACE|MAP_WARP)) {
MTFace* tf = RE_vlakren_get_tface(shi->obr, shi->vlr, i, NULL, 0);
int j1 = shi->i1, j2 = shi->i2, j3 = shi->i3;
More information about the Bf-blender-cvs
mailing list