Scene-free 3D grid targeting service. 3D mirror of [GridTargetingService] (6.0.0-S, AStar-less for Wave B1). 6.0.0-3D-Surface (Wave B1.2): handles tileworld coordinate mapping, closest-valid-tile resolution, and targeting readiness validation for [GridMap]. AStarGrid3D integration is a follow-up (the 2D service's AStar integration is a 2026-06-13 hardening pass; the 3D path-manager mirror can land in Wave B1.5 or as a separate sub-task). Differences from the 2D service: - [Vector2i] / [Vector2] → [Vector3i] / [Vector3] - [TileMapLayer] → [GridMap] - [AStarGrid2D] / [PlacementAStarPathManager] deferred to a follow-up (3D path manager mirror not in Wave B1 scope) - [GridTargetingSettings] is reused as-is (the boolean toggles are dimension-agnostic; the 2D-specific AStar fields are simply not consulted in the 3D service) Signal emission + input handling stay on the hosting Node (the positioner). The service is pure logic over injectable state, parallel to the 2D service's contract.
Source: addons/grid_placement/systems/grid_targeting/grid_targeting_service_3d.gd
Syntax
class GridTargetingService3D extends TargetingServiceContractMembers
| Name | Kind | Summary |
|---|---|---|
supported_dimensions | Method | |
configure_for_3d | Method | |
configure | Method | |
move_node_to_closest_valid_tile | Method | |
grid | Property | |
resolved_tile | Property | |
move_to_tile | Method | |
tile | Property | |
grid | Property | |
get_tile_from_global_position | Method | |
validate_ready | Method | |
issues | Property | |
get_targeting_issues | Method | |
issues | Property | |
state_issues | Property | |
get_runtime_issues | Method | |
get_target_map | Method | |
grid | Property | |
issues | Property | |
editor_issues | Property | |
source_tile | Property | |
delta | Property | |
manhattan | Property | |
step_x | Property | |
step_y | Property | |
step_z | Property | |
remaining | Property | |
result | Property |
Source
addons/grid_placement/systems/grid_targeting/grid_targeting_service_3d.gd
Plugin docs root:gdscript/plugins/grid_placement_dev/docs