Expose the cell_size affecting VisibilityNotifier2D precision

Refs: #4803
This commit is contained in:
Bojidar Marinov 2020-04-28 10:25:07 +03:00
parent 3fff0dda39
commit d49ff7aff7
No known key found for this signature in database
GPG Key ID: 4B0FD31949AD430D
4 changed files with 6 additions and 3 deletions

View File

@ -1169,6 +1169,9 @@
</member>
<member name="rendering/vulkan/staging_buffer/texture_upload_region_size_px" type="int" setter="" getter="" default="64">
</member>
<member name="world/2d/cell_size" type="int" setter="" getter="" default="100">
Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses.
</member>
</members>
<constants>
</constants>

View File

@ -5,7 +5,7 @@
</brief_description>
<description>
The VisibilityEnabler2D will disable [RigidBody2D], [AnimationPlayer], and other nodes when they are not visible. It will only affect nodes with the same root node as the VisibilityEnabler2D, and the root node itself.
[b]Note:[/b] VisibilityEnabler2D uses an approximate heuristic for performance reasons. If you need exact visibility checking, use another method such as adding an [Area2D] node as a child of a [Camera2D] node.
[b]Note:[/b] For performance reasons, VisibilityEnabler2D uses an approximate heuristic with precision determined by [member ProjectSettings.world/2d/cell_size]. If you need exact visibility checking, use another method such as adding an [Area2D] node as a child of a [Camera2D] node.
[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene initialization.
</description>
<tutorials>

View File

@ -5,7 +5,7 @@
</brief_description>
<description>
The VisibilityNotifier2D detects when it is visible on the screen. It also notifies when its bounding rectangle enters or exits the screen or a viewport.
[b]Note:[/b] VisibilityNotifier2D uses an approximate heuristic for performance reasons. If you need exact visibility checking, use another method such as adding an [Area2D] node as a child of a [Camera2D] node.
[b]Note:[/b] For performance reasons, VisibilityNotifier2D uses an approximate heuristic with precision determined by [member ProjectSettings.world/2d/cell_size]. If you need exact visibility checking, use another method such as adding an [Area2D] node as a child of a [Camera2D] node.
</description>
<tutorials>
</tutorials>

View File

@ -314,7 +314,7 @@ struct SpatialIndexer2D {
pass = 0;
changed = false;
cell_size = 100; //should be configurable with GLOBAL_DEF("") i guess
cell_size = GLOBAL_DEF("world/2d/cell_size", 100);
}
};