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:
authorSergey Sharybin <sergey.vfx@gmail.com>2012-03-24 02:12:24 +0400
committerSergey Sharybin <sergey.vfx@gmail.com>2014-04-17 17:11:34 +0400
commit02e5bdf864bdf001af5ef751f296e90c02edad5b (patch)
tree98aef831e7ef5e854c5542219e74d0be4bdf13d2 /source/blender/blenkernel/intern/scene.c
parente0e05ae85eee83dfc5c07f3dba0664a3ade62d7a (diff)
Initial implementation of overscan renderingoverscan
For now only affects blender internal renderer and viewport. Currently it's possible to define overscan (in %%) manually or make it so distortion matches the motrack displacement model. Still need to do loads of things in compositor, but it's not such a bad starting point. We can even start a branch for this. Reviewers: dfelinto Differential Revision: https://developer.blender.org/D462
Diffstat (limited to 'source/blender/blenkernel/intern/scene.c')
-rw-r--r--source/blender/blenkernel/intern/scene.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/scene.c b/source/blender/blenkernel/intern/scene.c
index 608b0495454..01eb2457ed5 100644
--- a/source/blender/blenkernel/intern/scene.c
+++ b/source/blender/blenkernel/intern/scene.c
@@ -52,6 +52,7 @@
#include "DNA_screen_types.h"
#include "DNA_sequence_types.h"
#include "DNA_space_types.h"
+#include "DNA_movieclip_types.h"
#include "BLI_math.h"
#include "BLI_blenlib.h"
@@ -86,6 +87,8 @@
#include "BKE_sequencer.h"
#include "BKE_sound.h"
#include "BKE_world.h"
+#include "BKE_movieclip.h"
+#include "BKE_tracking.h"
#include "RE_engine.h"
@@ -1891,3 +1894,14 @@ int BKE_scene_num_omp_threads(const struct Scene *scene)
else
return scene->omp_threads;
}
+
+/* overscan */
+void BKE_scene_update_overscan(Scene *scene)
+{
+ float overscan = scene->r.overscan;
+
+ if (scene->r.detect_overscan && scene->clip)
+ overscan = BKE_tracking_overscan_detect(scene->clip);
+
+ scene->r.overscan = overscan;
+}