Fix rendering of Car Demo scene #37

Merged
Bogdan Nagirniak merged 2 commits from Vasyl-Pidhirskyi/blender_bn:BLEN-399 into hydra-render 2023-05-05 20:55:52 +02:00
2 changed files with 4 additions and 12 deletions

View File

@ -434,10 +434,6 @@ void BlenderSceneDelegate::add_new_objects()
Object *, Object *,
object) { object) {
if (!ObjectData::is_supported(object)) {
continue;
}
update_objects(object); update_objects(object);

This check is already in update_objects(), so here it can be just removed

This check is already in `update_objects()`, so here it can be just removed
update_instancers(object); update_instancers(object);
} }
@ -462,10 +458,9 @@ void BlenderSceneDelegate::remove_unused_objects()
&data, &data,
Object *, Object *,
object) { object) {
if (!ObjectData::is_supported(object)) { if (ObjectData::is_supported(object)) {
continue; available_objects.insert(object_prim_id(object).GetName());
} }
available_objects.insert(object_prim_id(object).GetName());
available_objects.insert(instancer_prim_id(object).GetName()); available_objects.insert(instancer_prim_id(object).GetName());
} }
ITER_END; ITER_END;
@ -542,10 +537,6 @@ void BlenderSceneDelegate::update_visibility()
Object *, Object *,
object) { object) {
if (!ObjectData::is_supported(object)) {
continue;
}
if (!object_data(object_prim_id(object))) { if (!object_data(object_prim_id(object))) {
update_objects(object); update_objects(object);
} }

Same here, just remove this if (...)

Same here, just remove this `if (...)`

View File

@ -64,7 +64,8 @@ void InstancerData::update()
ID_LOG(2, ""); ID_LOG(2, "");
Object *object = (Object *)id; Object *object = (Object *)id;
if (id->recalc & ID_RECALC_GEOMETRY || ((ID *)object->data)->recalc & ID_RECALC_GEOMETRY || if (id->recalc & ID_RECALC_GEOMETRY ||
(object->data && ((ID *)object->data)->recalc & ID_RECALC_GEOMETRY) ||
id->recalc & ID_RECALC_TRANSFORM) { id->recalc & ID_RECALC_TRANSFORM) {
set_instances(); set_instances();
scene_delegate_->GetRenderIndex().GetChangeTracker().MarkInstancerDirty( scene_delegate_->GetRenderIndex().GetChangeTracker().MarkInstancerDirty(