Cycles: fix some update issues with camera motion blur, and do some more work

for getting object motion blur ready.
This commit is contained in:
Brecht Van Lommel
2012-10-15 21:12:58 +00:00
parent 8a25e2d2b2
commit fe16b26206
19 changed files with 301 additions and 891 deletions

View File

@@ -19,6 +19,8 @@
#include "camera.h"
#include "scene.h"
#include "device.h"
#include "util_vector.h"
CCL_NAMESPACE_BEGIN
@@ -141,7 +143,7 @@ void Camera::update()
void Camera::device_update(Device *device, DeviceScene *dscene, Scene *scene)
{
Scene::MotionType need_motion = scene->need_motion();
Scene::MotionType need_motion = scene->need_motion(device->info.advanced_shading);
update();
@@ -274,13 +276,17 @@ bool Camera::modified(const Camera& cam)
(border_bottom == cam.border_bottom) &&
(border_top == cam.border_top) &&
(matrix == cam.matrix) &&
(motion == cam.motion) &&
(use_motion == cam.use_motion) &&
(panorama_type == cam.panorama_type) &&
(fisheye_fov == cam.fisheye_fov) &&
(fisheye_lens == cam.fisheye_lens));
}
bool Camera::motion_modified(const Camera& cam)
{
return !((motion == cam.motion) &&
(use_motion == cam.use_motion));
}
void Camera::tag_update()
{
need_update = true;