Description
Changelog
Reviews (1)
Reusable in-scene 3D debug drawing for Godot 4.x.
DebugDraw3D submits transient draw commands each frame and renders wire shapes, dashed and normal-aware lines, joints, filled rects, and solid primitives with MultiMeshInstance3D nodes and shaders.
Features
- Lines, rays, arrows, axes, point collections, curves, and grids.
- Wire and solid rects, boxes, spheres, cones, cylinders, and capsules.
- Dashed lines, normal-aware fading, round/bevel/miter joints, and layer filtering.
- Screen-space line widths and configurable depth bias.
- Curated example scenes for every public shape family.
- No external runtime dependencies.
Installation
Copy addons/debug_draw/ into your Godot project:
res://addons/debug_draw/
No plugin activation is required. Instance res://addons/debug_draw/debug_draw_3d.tscn in a 3D scene.
@onready var debug_draw: DebugDraw3D = $DebugDraw3D
func _process(_delta: float) -> void:
debug_draw.draw_line(Vector3.ZERO, Vector3.RIGHT, Color.WHITE, 2.0)
Documentation
docs/getting-started.md: addDebugDraw3D, submit transient draw calls, and configure common node controls.docs/concepts.md: draw-call lifetime, world-space transforms, widths, layers, suffixes, dashes, normal-aware drawing, and joints.docs/api-reference.md: publicDebugDraw3DAPI grouped by lines, helpers, collections, grids, rects, and volumes.docs/examples.md: example-scene families, camera controls, shared conventions, and API coverage.docs/rendering-architecture.md: MultiMesh renderers, shaders, frame pipeline, sorting, depth bias, and constraints.
Examples
examples/ contains the API index and curated scenes for each supported shape family. Run the project to open examples/index.tscn.
License
MIT License. See LICENSE.
Changelog for version v1.0.0
No changelog provided for this version.