forked from blender/blender
Make object visibility and instancing creation to be calculated via depsgraph #57
@ -373,13 +373,8 @@ void BlenderSceneDelegate::check_updates()
|
||||
}
|
||||
|
||||
if (set_light_shading_settings()) {
|
||||
if (shading_settings.use_scene_lights) {
|
||||
add_new_objects();
|
||||
}
|
||||
else {
|
||||
do_update_collection = true;
|
||||
}
|
||||
}
|
||||
|
||||
DEGIDIterData data = {0};
|
||||
data.graph = depsgraph;
|
||||
@ -411,20 +406,16 @@ void BlenderSceneDelegate::check_updates()
|
||||
} break;
|
||||
|
||||
case ID_SCE: {
|
||||
if (id->recalc & ID_RECALC_COPY_ON_WRITE && !(id->recalc & ID_RECALC_SELECT)) {
|
||||
if ((id->recalc & ID_RECALC_COPY_ON_WRITE && !(id->recalc & ID_RECALC_SELECT)) ||
|
||||
id->recalc & (ID_RECALC_TRANSFORM | ID_RECALC_GEOMETRY | ID_RECALC_BASE_FLAGS))
|
||||
{
|
||||
do_update_collection = true;
|
||||
}
|
||||
if (id->recalc & ID_RECALC_BASE_FLAGS) {
|
||||
do_update_collection = true;
|
||||
}
|
||||
if (id->recalc & (ID_RECALC_TRANSFORM | ID_RECALC_GEOMETRY)) {
|
||||
do_update_collection = true;
|
||||
}
|
||||
if (id->recalc & ID_RECALC_AUDIO_VOLUME) {
|
||||
if ((scene->world && !world_data_) || (!scene->world && world_data_)) {
|
||||
if (id->recalc & ID_RECALC_AUDIO_VOLUME &&
|
||||
((scene->world && !world_data_) || (!scene->world && world_data_)))
|
||||
{
|
||||
do_update_world = true;
|
||||
}
|
||||
}
|
||||
} break;
|
||||
|
||||
default:
|
||||
|
Loading…
Reference in New Issue
Block a user