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
path: root/source
diff options
context:
space:
mode:
authorLukas Tönne <lukas.toenne@gmail.com>2015-05-30 14:28:21 +0300
committerLukas Tönne <lukas.toenne@gmail.com>2015-05-30 14:28:21 +0300
commit6d6db87ae7e0e0a75f592e531fc9d8410760fd45 (patch)
tree22f50715f37435aea0afe8ca07bb4dc630c0f64e /source
parent179acf028cb8fc8ec1ff21670b6d0150361940e4 (diff)
Make use of the subframe value in Scene when reading from cache archives.
Subframes are necessary when interpolating values.
Diffstat (limited to 'source')
-rw-r--r--source/blender/blenkernel/intern/object_dupli.c2
-rw-r--r--source/blender/makesrna/intern/rna_main_api.c2
-rw-r--r--source/blender/makesrna/intern/rna_object.c4
3 files changed, 4 insertions, 4 deletions
diff --git a/source/blender/blenkernel/intern/object_dupli.c b/source/blender/blenkernel/intern/object_dupli.c
index da245506a87..d022937f0a3 100644
--- a/source/blender/blenkernel/intern/object_dupli.c
+++ b/source/blender/blenkernel/intern/object_dupli.c
@@ -1234,7 +1234,7 @@ static const DupliGenerator *get_dupli_generator(const DupliContext *ctx)
ListBase *object_duplilist_ex(EvaluationContext *eval_ctx, Scene *scene, Object *ob, bool update)
{
if (update) {
- BKE_object_dupli_cache_update(scene, ob, eval_ctx, (float)scene->r.cfra);
+ BKE_object_dupli_cache_update(scene, ob, eval_ctx, (float)scene->r.cfra + scene->r.subframe);
}
if (ob->dup_cache && (ob->dup_cache->result != CACHE_READ_SAMPLE_INVALID)) {
diff --git a/source/blender/makesrna/intern/rna_main_api.c b/source/blender/makesrna/intern/rna_main_api.c
index a89373c071c..b9b3bb519ca 100644
--- a/source/blender/makesrna/intern/rna_main_api.c
+++ b/source/blender/makesrna/intern/rna_main_api.c
@@ -337,7 +337,7 @@ Mesh *rna_Main_meshes_new_from_dupli(
}
if (is_cached) {
- float frame = (float)scene->r.cfra;
+ float frame = (float)scene->r.cfra + scene->r.subframe;
bool use_render = (settings == 2);
if (!ELEM(settings, 1, 2))
diff --git a/source/blender/makesrna/intern/rna_object.c b/source/blender/makesrna/intern/rna_object.c
index a02839a9374..edffcf07525 100644
--- a/source/blender/makesrna/intern/rna_object.c
+++ b/source/blender/makesrna/intern/rna_object.c
@@ -1530,7 +1530,7 @@ Strands *rna_DupliObject_strands_new(DupliObject *dob, ReportList *UNUSED(report
bool is_cached = parent->cache_library && (parent->cache_library->source_mode == CACHE_LIBRARY_SOURCE_CACHE || parent->cache_library->display_mode == CACHE_LIBRARY_DISPLAY_RESULT);
if (is_cached) {
- float frame = (float)scene->r.cfra;
+ float frame = (float)scene->r.cfra + scene->r.subframe;
bool use_render = (settings == 2);
if (!ELEM(settings, 1, 2))
@@ -1582,7 +1582,7 @@ StrandsChildren *rna_DupliObject_strands_children_new(DupliObject *dob, ReportLi
bool is_cached = parent->cache_library && (parent->cache_library->source_mode == CACHE_LIBRARY_SOURCE_CACHE || parent->cache_library->display_mode == CACHE_LIBRARY_DISPLAY_RESULT);
if (is_cached) {
- float frame = (float)scene->r.cfra;
+ float frame = (float)scene->r.cfra + scene->r.subframe;
bool use_render = (settings == 2);
if (!ELEM(settings, 1, 2))