Godot 4 3D Game Development
Paste the following prompt into your AI chat to install this skill:
Please follow https://skillhub.cn/install/skillhub.md to install @user_51ab3167/3d-game-dev.
About this skill
Problem Being Solved
3D projects often stall on environment, assets, and validation: a main.tscn without WorldEnvironment or DirectionalLight3D renders black; .gltf imports can fail silently; character control, collision, navigation, and HUD are tightly coupled. This skill constrains Godot 4 + GDScript 3D development into an executable workflow, aiming to take a project from zero to playable, screenshot-verifiable, and ready to export.
How It Works
- Graybox first: use
CSGBox3Dor primitive geometry to validate layout and feel, then replace it with final models. - Character controllers: first-person uses
CharacterBody3D+Camera3D; third-person swaps inSpringArm3D, addsyawrotation, and smooths model turning. - Asset pipeline: prefer
.glb, instantiate viapreload(...).instantiate(), enableGenerate Physicsor callcreate_trimesh_collision()for static collision, and list animations withget_animation_list()beforeplay(). - Levels and materials: repeat kit assets, use
MultiMeshInstance3DorGridMap, and configureStandardMaterial3Dwith albedo, normal, roughness/AO/metallic, with sky-based ambient light. - AI and validation: bake
NavigationRegion3D, structure enemies into patrol, detect, chase, and attack states, and verify each system by capturingget_viewport().get_texture()to check black frames, magenta materials, clipping, and scale.
Boundaries and Notes
This is an engineering workflow, not an art-direction guide. For weak targets, switch to Mobile or Compatibility rendering first; fix model scale in import settings instead of scaling rigidbodies manually; and rebake navigation meshes after level edits.
Use Cases
- Set up a first-person CharacterBody3D controller, camera, and collision in a new Godot 4 project.
- Import .glb kit assets, generate static collision, and play the character's Run animation.
- Tune patrol, detection, and chase logic with graybox levels and a baked NavigationRegion3D.
- Capture pre-export screenshots to catch black frames, magenta materials, clipping, and blurry shadows.
Best For
- Indie game programmers moving from 2D to 3D who need a working first-person or third-person controller.
- AI-assisted Godot engineers who want fixed workflows for graybox levels, enemy navigation, and screenshot checks.
- GDScript learners building a complete 3D project to debug collision, animation, and lighting.
- Prototype teams using .glb kits to assemble playable, screenshot-verifiable levels quickly.
Related Skills
Creates themed learning sites by generating flashcards, lessons, quizzes, index, and progress pages into a deployable website.
End-to-end mathematical optimization modeling with Gurobi and Python, covering data validation, code generation, solving, result analysis, and iterative revision.
Executes an Eversheet Web CDP login using externally supplied baseUrl, username, and password, then verifies the page reaches a logged-in home state.
Clarify product goals, user flows, pages, data, and permissions, then output an implementation-ready development prompt and lightweight spec.