diff options
author | Campbell Barton <ideasman42@gmail.com> | 2016-02-03 09:33:51 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2016-02-03 09:33:51 +0300 |
commit | 94d1674ddcce3356489c79e58473450d015c8a59 (patch) | |
tree | 242f8f6100c199fcdc68705658718a79989e9eae /source/blender/render | |
parent | 3416428e0b069faa439e313f0a6c778faa7da6ba (diff) |
Fix T47303: Voxel texture disappears after first frame
Failed reads didn't update the voxel 'ok' tag,
making successive reads fail (even on existing frames).
Diffstat (limited to 'source/blender/render')
-rw-r--r-- | source/blender/render/intern/source/voxeldata.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/source/blender/render/intern/source/voxeldata.c b/source/blender/render/intern/source/voxeldata.c index bb92a8f7e8a..7a0d12d3e63 100644 --- a/source/blender/render/intern/source/voxeldata.c +++ b/source/blender/render/intern/source/voxeldata.c @@ -371,7 +371,6 @@ static void init_frame_hair(VoxelData *vd, int UNUSED(cfra)) { Object *ob; ModifierData *md; - bool found = false; vd->dataset = NULL; if (vd->object == NULL) return; @@ -381,11 +380,9 @@ static void init_frame_hair(VoxelData *vd, int UNUSED(cfra)) ParticleSystemModifierData *pmd = (ParticleSystemModifierData *)md; if (pmd->psys && pmd->psys->clmd) { - found |= BPH_cloth_solver_get_texture_data(ob, pmd->psys->clmd, vd); + vd->ok |= BPH_cloth_solver_get_texture_data(ob, pmd->psys->clmd, vd); } } - - vd->ok = found; } void cache_voxeldata(Tex *tex, int scene_frame) @@ -414,6 +411,9 @@ void cache_voxeldata(Tex *tex, int scene_frame) BLI_strncpy(path, vd->source_path, sizeof(path)); + /* each type is responsible for setting to true */ + vd->ok = false; + switch (vd->file_format) { case TEX_VD_IMAGE_SEQUENCE: load_frame_image_sequence(vd, tex); |