Make CSG shape dirty after changing Snap, update doc

Update doc to mention that Snap only takes effect at the top level.

Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
This commit is contained in:
31 2024-06-16 13:53:55 -07:00
parent 71699e08c9
commit 649c87b957
2 changed files with 6 additions and 1 deletions

View file

@ -141,7 +141,12 @@ bool CSGShape3D::is_root_shape() const {
}
void CSGShape3D::set_snap(float p_snap) {
if (snap == p_snap) {
return;
}
snap = p_snap;
_make_dirty();
}
float CSGShape3D::get_snap() const {

View file

@ -73,7 +73,7 @@
The operation that is performed on this shape. This is ignored for the first CSG child node as the operation is between this node and the previous child of this nodes parent.
</member>
<member name="snap" type="float" setter="set_snap" getter="get_snap" default="0.001">
Snap makes the mesh vertices snap to a given distance so that the faces of two meshes can be perfectly aligned. A lower value results in greater precision but may be harder to adjust.
Snap makes the mesh vertices snap to a given distance so that the faces of two meshes can be perfectly aligned. A lower value results in greater precision but may be harder to adjust. The top-level CSG shape's snap value is used for the entire CSG tree.
</member>
<member name="use_collision" type="bool" setter="set_use_collision" getter="is_using_collision" default="false">
Adds a collision shape to the physics engine for our CSG shape. This will always act like a static body. Note that the collision shape is still active even if the CSG shape itself is hidden. See also [member collision_mask] and [member collision_priority].