Properly initialize motion vectors offset when motion vectors are disabled.
This fixes an uninitialized memory bug that caused particles to fail in non-LTO builds
This commit is contained in:
parent
62792eeb9f
commit
aac8d5c406
@ -479,6 +479,9 @@ void RenderForwardClustered::_render_list_template(RenderingDevice::DrawListID p
|
|||||||
|
|
||||||
if ((surf->owner->base_flags & (INSTANCE_DATA_FLAG_MULTIMESH | INSTANCE_DATA_FLAG_PARTICLES)) == INSTANCE_DATA_FLAG_MULTIMESH) {
|
if ((surf->owner->base_flags & (INSTANCE_DATA_FLAG_MULTIMESH | INSTANCE_DATA_FLAG_PARTICLES)) == INSTANCE_DATA_FLAG_MULTIMESH) {
|
||||||
mesh_storage->_multimesh_get_motion_vectors_offsets(surf->owner->data->base, push_constant.multimesh_motion_vectors_current_offset, push_constant.multimesh_motion_vectors_previous_offset);
|
mesh_storage->_multimesh_get_motion_vectors_offsets(surf->owner->data->base, push_constant.multimesh_motion_vectors_current_offset, push_constant.multimesh_motion_vectors_previous_offset);
|
||||||
|
} else {
|
||||||
|
push_constant.multimesh_motion_vectors_current_offset = 0;
|
||||||
|
push_constant.multimesh_motion_vectors_previous_offset = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
RD::get_singleton()->draw_list_set_push_constant(draw_list, &push_constant, sizeof(SceneState::PushConstant));
|
RD::get_singleton()->draw_list_set_push_constant(draw_list, &push_constant, sizeof(SceneState::PushConstant));
|
||||||
|
Loading…
Reference in New Issue
Block a user