Fix crash in GIProbe::bake

The problem happened when the passed from_node was null and the GIProbe
node had no parent node.

Fixes #45978
This commit is contained in:
Pedro Rodrigues 2021-02-28 20:09:55 +00:00
parent 0e77dc6e92
commit 82fed7b6da
1 changed files with 4 additions and 1 deletions

View File

@ -415,13 +415,16 @@ Vector3i GIProbe::get_estimated_cell_size() const {
void GIProbe::bake(Node *p_from_node, bool p_create_visual_debug) {
static const int subdiv_value[SUBDIV_MAX] = { 6, 7, 8, 9 };
p_from_node = p_from_node ? p_from_node : get_parent();
ERR_FAIL_NULL(p_from_node);
Voxelizer baker;
baker.begin_bake(subdiv_value[subdiv], AABB(-extents, extents * 2.0));
List<PlotMesh> mesh_list;
_find_meshes(p_from_node ? p_from_node : get_parent(), mesh_list);
_find_meshes(p_from_node, mesh_list);
if (bake_begin_function) {
bake_begin_function(mesh_list.size() + 1);