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:
authorTon Roosendaal <ton@blender.org>2006-07-14 17:44:23 +0400
committerTon Roosendaal <ton@blender.org>2006-07-14 17:44:23 +0400
commita7b3203e31c74c2829a9a2bf3009bba1bcc8ac9d (patch)
tree94b397b33e1ccef0b1c89b1e08250ff96e992c61
parentcb09f5cda8537ccf8d55a5c99ec02615104614a9 (diff)
New Particle option for Fluids did not work on rendering animation yet.
N_T: the implementation of this feature isn't 100% nice, it currently does a full recalc on each redraw, and it doesn't work properly unless it is recalculated for each frame.
-rw-r--r--source/blender/render/intern/source/convertblender.c22
1 files changed, 11 insertions, 11 deletions
diff --git a/source/blender/render/intern/source/convertblender.c b/source/blender/render/intern/source/convertblender.c
index 5c141b2fbce..9a725c41800 100644
--- a/source/blender/render/intern/source/convertblender.c
+++ b/source/blender/render/intern/source/convertblender.c
@@ -1021,21 +1021,25 @@ static void render_particle_system(Render *re, Object *ob, Object *par, PartEff
HaloRen *har=0;
Material *ma=0;
float xn, yn, zn, imat[3][3], tmat[4][4], mat[4][4], hasize, stime, ptime, ctime, vec[3], vec1[3], view[3], nor[3];
- int a, mat_nr=1, seed;
-
- int useFluidsimParticles = 0; // FSPARTICLE
float haloScale = 1.0; //NT scale halos
float iniAlpha = 0.0; // restore material alpha
+ int a, mat_nr=1, seed;
+ int useFluidsimParticles = 0; // FSPARTICLE
+ ma= give_render_material(re, ob, paf->omat);
+
+ if( (ob->fluidsimSettings) && (ob->fluidsimSettings->type == OB_FLUIDSIM_PARTICLE)) {
+ useFluidsimParticles = 1;
+ iniAlpha = ma->alpha;
+ }
+
pa= paf->keys;
- if(pa==NULL || paf->disp!=100) {
+ if(pa==NULL || paf->disp!=100 || useFluidsimParticles) {
build_particle_system(ob);
pa= paf->keys;
if(pa==NULL) return;
}
- ma= give_render_material(re, ob, paf->omat);
-
MTC_Mat4MulMat4(mat, ob->obmat, re->viewmat);
MTC_Mat4Invert(ob->imat, mat); /* this is correct, for imat texture */
@@ -1061,11 +1065,7 @@ static void render_particle_system(Render *re, Object *ob, Object *par, PartEff
else ptime= 0.0;
ctime= bsystem_time(ob, 0, (float)re->scene->r.cfra, ptime);
seed= ma->seed1;
- if( (ob->fluidsimSettings) && (ob->fluidsimSettings->type == OB_FLUIDSIM_PARTICLE)) {
- useFluidsimParticles = 1;
- iniAlpha = ma->alpha;
- }
-
+
for(a=0; a<paf->totpart; a++, pa+=paf->totkey, seed++) {
/* offset time for calculating normal */