Fix Cycles viewport missing refresh when changing scene hair settings

This code was not updated for the CoW depsgraph.
This commit is contained in:
Brecht Van Lommel 2020-06-10 19:03:15 +02:00
parent 0621c13b3e
commit 63930c41bc
3 changed files with 5 additions and 5 deletions

View File

@ -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();

View File

@ -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 */

View File

@ -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 */