Cycles: Expose user-defined shutter curve to the interface
authorSergey Sharybin <sergey.vfx@gmail.com>
Tue, 27 Oct 2015 14:00:51 +0000 (19:00 +0500)
committerSergey Sharybin <sergey.vfx@gmail.com>
Tue, 27 Oct 2015 21:43:06 +0000 (02:43 +0500)
commitb909dfdae140ba0cc71003ad30dc612b059732d6
tree9d705fd6606d4eb7a34196fe6efe67879356b9c9
parent6a529e14f4c25fc20b797799b602472d3a22a0f9
Cycles: Expose user-defined shutter curve to the interface

Shutter curve now can be controlled using curve mapping widget in the motion
blur panel in Render buttons. Only mapping from 0..1 by x axis are allowed,
Y values will be normalized to fill in 0..1 space as well automatically.

Y values of 0 means fully closed shutter, Y values of 1 means fully opened
shutter.

Default mapping is set to old behavior when shutter opens and closes instantly.

This shutter mapping curve could easily be used by any other render engine by
accessing scene.render.motion_blur_shutter_curve.

Reviewers: #cycles, brecht, juicyfruit, campbellbarton

Differential Revision: https://developer.blender.org/D1585
15 files changed:
intern/cycles/blender/addon/ui.py
intern/cycles/blender/blender_camera.cpp
intern/cycles/blender/blender_util.h
source/blender/blenkernel/BKE_colortools.h
source/blender/blenkernel/intern/colortools.c
source/blender/blenkernel/intern/scene.c
source/blender/blenloader/intern/readfile.c
source/blender/blenloader/intern/versioning_270.c
source/blender/blenloader/intern/writefile.c
source/blender/editors/render/render_intern.h
source/blender/editors/render/render_internal.c
source/blender/editors/render/render_ops.c
source/blender/makesdna/DNA_scene_types.h
source/blender/makesrna/intern/rna_scene.c
source/blender/render/intern/source/pipeline.c