Skip to content

Class

ScenePlacementEntry

Generated GDScript class reference for GridPlacement.ScenePlacementEntry.

Status
Current
Version
v6.0
Source updated
2026-09-04
Generated on
2026-09-06

Placement entry for instancing scene objects into the game world. Carries a [member packed_scene] plus object-specific tool/rule overrides. The canonical replacement for the v5 Placeable class. Runtime-instantiated: games call ScenePlacementEntry.new() to populate catalogs and the engine reads it on placement passes. Do not mark @tool.

Source: addons/grid_placement/placement/placeable/scene_placement_entry.gd

Syntax

class ScenePlacementEntry extends PlacementEntry

Members

NameKindSummary
display_namePropertyDisplay name for in-game reading.
packed_scenePropertyScene to instance when placed.
profilesPropertyPlacement profiles for grouping entries with shared behavior. Profiles carry their own [member PlacementProfile.placement_rules] and [member PlacementProfile.supported_object_tools] that layer into the three-tier rule/tool resolution.
snap_profile_3dPropertyOptional 3D snap-category metadata (family + accept-list). Consulted by [ObjectPlacementService3D] when validating 3D placements; ignored in 2D.
footprint_2dPropertyFootprint in 2D world units (x, y) for smooth/free placement mode. The object occupies this axis-aligned rectangle centered on its position. Required for smooth placement; default [Vector2.ZERO] makes smooth placement fail closed until a footprint is configured.
footprint_3dPropertyFootprint in GridMap cells (x, z) for 3D grid placement. The targeted cell is the footprint's minimum corner; validation checks occupancy, ground, and the active support policy across every covered column. Ignored in 2D.
footprint_3d_worldPropertyFootprint in 3D world units (x, y, z) for smooth/free placement mode. The object occupies this axis-aligned box centered on its position. Required for smooth 3D placement; default [Vector3.ZERO] means no footprint and the service will fail closed.
seam_bounds_3dPropertyAuthored mesh truth for GRID seam closure, in entry-local space unrotated: the visual AABB of packed_scene's meshes. Consumed only when the snap profile enables seam_close_to_partner; default empty means unset and the closure is a no-op. A GdUnit contract test asserts these bounds still match the live mesh, so the data cannot rot silently.
custom_min_support_ratioProperty-1 means inherit ObjectPlacementSettings3D.min_support_ratio.
custom_world_up_clearanceProperty-1 means inherit ObjectPlacementSettings3D.world_up_clearance.
custom_max_support_planarity_errorProperty-1 means inherit ObjectPlacementSettings3D.max_support_planarity_error.
custom_max_unsupported_edge_ratioProperty-1 means inherit ObjectPlacementSettings3D.max_unsupported_edge_ratio.
custom_require_center_supportProperty-1 = inherit, 0 = do not require center support, 1 = require center support.
tool_override_modePropertyHow this entry's [member tool_overrides] interact with its profiles' [member PlacementProfile.supported_object_tools]. See [enum ToolOverrideMode].
tool_overridesPropertyTools added or removed depending on [member tool_override_mode]. - [enum INHERIT]: ignored (profiles provide the full list) - [enum REPLACE]: this list IS the full tool set - [enum ADD]: these are unioned with profile tools - [enum REMOVE]: these are subtracted from profile tools
catalog_lockedPropertyWhen true, catalog UI shows this entry as locked (not selectable). Used by demos to illustrate an unlock-gated placeable without a grey placeholder.
get_build_costsMethod
get_display_nameMethod
get_load_dataMethod
load_resourceMethod
get_packed_root_nameMethod
resolve_object_toolsMethod
get_editor_issuesMethod
get_runtime_issuesMethod
UIDField
FILE_PATHField