godot-3d-world-building

Builds 3D levels in Godot using GridMap, MeshLibrary, CSG baking, and occlusion culling.

Updated Aug 22, 2026
One-click install
npx skills add https://github.com/DecioLuvier/Shatterless --skill godot-3d-world-building-decioluvier
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: godot-3d-world-building
Source: https://github.com/DecioLuvier/Shatterless/tree/main/.claude/skills/godot/references/godot-3d-world-building
Command: npx skills add https://github.com/DecioLuvier/Shatterless --skill godot-3d-world-building-decioluvier

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve? Designing performant 3D levels in Godot requires correctly combining GridMap tile placement, MeshLibrary collision setup, CSG prototyping, and occlusion culling, and mistakes like unbaked navigation or missing collision shapes cause broken geometry and poor performance. ## Core Features & Use Cases - GridMap and MeshLibrary workflows: Set up tile-based levels with verified collision shapes, cell placement APIs, and runtime chunk rebuilding with automatic navigation baking. - Safe CSG prototyping and baking: Greybox levels with CSGCombiner3D, then bake to static meshes after a settled frame to avoid empty or stale geometry. - Occlusion, LOD, and streaming: Configure OccluderInstance3D for indoor rooms, distance-based LOD swaps, and threaded chunk loading for stutter-free streaming. - Use Case: You are building a modular dungeon in Godot 4 and need to place tiles at runtime, bake navigation, replace proxy spawn markers with gameplay logic, and keep frame times stable while the player moves between rooms. ## Quick Start Ask the AI to build a GridMap-based dungeon level in Godot with baked navigation, verified tile collision, and runtime chunk streaming.

Frequently Asked Questions about godot-3d-world-building

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I place tiles in a Godot GridMap at runtime?▼

Use set_cell_item with a grid position and tile index, and get_cell_item to read cells back. For batch placement, chunk rebuilds, and automatic navigation baking, use the gridmap_runtime_builder.gd script instead of writing a custom streamer.

How do I convert CSG geometry to a static mesh in Godot?▼

Finish all boolean edits under the CSGCombiner3D, await one process frame so dirty flags settle, then bake to a MeshInstance3D with collision using the csg_bake_tool.gd or safe_csg_baking.gd scripts. Baking mid-recompute produces empty or stale mesh data.

Why do players fall through my GridMap tiles in Godot?▼

The MeshLibrary item has no collision shapes. Call mesh_library.get_item_shapes(tile_index) to verify, and fix the source scene so each tile contains a StaticBody3D with a CollisionShape3D before converting to a MeshLibrary.

Does GridMap generate navigation meshes automatically in Godot 4?▼

No, GridMaps never auto-generate navigation. You must add a NavigationRegion3D and bake the navigation mesh after placing cells, either through an EditorPlugin or the runtime builder script after cell edits.

When should I avoid using CSG nodes in a Godot game?▼

CSG is for prototyping only and should never ship as final geometry or be animated at runtime, since moving CSG nodes forces expensive CPU boolean recalculation. Bake CSG to static meshes and delete the live CSG nodes before export.

How do I stream large GridMap levels without frame stutters?▼

Use ResourceLoader.load_threaded_request to load chunk scenes on a background thread, then instantiate them once the load completes. The world_streamer.gd script implements this queue pattern for stutter-free chunk loading.