The object to world transform was applied to the result (which was meant to be in world space), rather than the inverse. However, the processing of transforms is more complicated than necessary. Instead of passing around a separate "target transform" that's meant to be used inverted after the boolean operation, just make the input transforms transform the input meshes into the desired transform space of the output (object-local space for the modifier). Pull Request: https://projects.blender.org/blender/blender/pulls/137919
19 lines
537 B
C++
19 lines
537 B
C++
/* SPDX-FileCopyrightText: 2025 Blender Authors
|
|
*
|
|
* SPDX-License-Identifier: GPL-2.0-or-later */
|
|
|
|
#pragma once
|
|
|
|
#include "GEO_mesh_boolean.hh"
|
|
|
|
namespace blender::geometry::boolean {
|
|
|
|
Mesh *mesh_boolean_manifold(Span<const Mesh *> meshes,
|
|
Span<float4x4> transforms,
|
|
Span<Array<short>> material_remaps,
|
|
BooleanOpParameters op_params,
|
|
Vector<int> *r_intersecting_edges,
|
|
BooleanError *r_error);
|
|
|
|
}
|