From 63930c41bc3abf784d29091246b952a5c9d848b3 Mon Sep 17 00:00:00 2001 From: Brecht Van Lommel Date: Wed, 10 Jun 2020 19:03:15 +0200 Subject: Fix Cycles viewport missing refresh when changing scene hair settings This code was not updated for the CoW depsgraph. --- intern/cycles/blender/blender_curves.cpp | 6 +++--- intern/cycles/blender/blender_sync.cpp | 2 +- intern/cycles/blender/blender_sync.h | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) (limited to 'intern') diff --git a/intern/cycles/blender/blender_curves.cpp b/intern/cycles/blender/blender_curves.cpp index 0c87808d880..847a43c5f34 100644 --- a/intern/cycles/blender/blender_curves.cpp +++ b/intern/cycles/blender/blender_curves.cpp @@ -897,7 +897,7 @@ static void ExportCurveTriangleVcol(ParticleCurveData *CData, int resol, uchar4 /* Hair Curve Sync */ -void BlenderSync::sync_curve_settings() +void BlenderSync::sync_curve_settings(BL::Depsgraph &b_depsgraph) { PointerRNA csscene = RNA_pointer_get(&b_scene.ptr, "cycles_curves"); @@ -949,9 +949,9 @@ void BlenderSync::sync_curve_settings() } if (curve_system_manager->modified_mesh(prev_curve_system_manager)) { - BL::BlendData::objects_iterator b_ob; + BL::Depsgraph::objects_iterator b_ob; - for (b_data.objects.begin(b_ob); b_ob != b_data.objects.end(); ++b_ob) { + for (b_depsgraph.objects.begin(b_ob); b_ob != b_data.objects.end(); ++b_ob) { if (object_is_mesh(*b_ob)) { BL::Object::particle_systems_iterator b_psys; for (b_ob->particle_systems.begin(b_psys); b_psys != b_ob->particle_systems.end(); diff --git a/intern/cycles/blender/blender_sync.cpp b/intern/cycles/blender/blender_sync.cpp index 2605799f593..09813dc8c05 100644 --- a/intern/cycles/blender/blender_sync.cpp +++ b/intern/cycles/blender/blender_sync.cpp @@ -212,7 +212,7 @@ void BlenderSync::sync_data(BL::RenderSettings &b_render, sync_film(b_v3d); sync_shaders(b_depsgraph, b_v3d); sync_images(); - sync_curve_settings(); + sync_curve_settings(b_depsgraph); geometry_synced.clear(); /* use for objects and motion sync */ diff --git a/intern/cycles/blender/blender_sync.h b/intern/cycles/blender/blender_sync.h index f0ea5194c29..341281b18ee 100644 --- a/intern/cycles/blender/blender_sync.h +++ b/intern/cycles/blender/blender_sync.h @@ -162,7 +162,7 @@ class BlenderSync { void sync_hair(Hair *hair, BL::Object &b_ob, bool motion, int motion_step = 0); void sync_particle_hair( Geometry *geom, BL::Mesh &b_mesh, BL::Object &b_ob, bool motion, int motion_step = 0); - void sync_curve_settings(); + void sync_curve_settings(BL::Depsgraph &b_depsgraph); bool object_has_particle_hair(BL::Object b_ob); /* Camera */ -- cgit v1.2.3