Description
Changelog
Reviews (4)

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: add DebugDraw3D, 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: public DebugDraw3D API 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.

Feedback

For feature requests or feedback, please open an issue on GitHub. I’m unable to reply to requests posted in Godot Asset Store reviews. Thank you for your feedback!

License

MIT License. See LICENSE.

Changelog for version v1.1.0

No changelog provided for this version.

Reviews

Recommended by Mathis Moity Manzer - 17 July 2026

This is so much simpler to just call a function for testing purposes than make a makeshift MeshInstance3D everytimes (dodged a object count limit)

Recommended by shanayyy - 05 August 2026

Thanks, Very useful! You are best 😁

Not recommended by Cyklon_3000 - 01 August 2026

Doesn't work. Null instance error.

Recommended by Jayden Sipe - 19 July 2026

Login to write a review.

Consider supporting the creators!

If you enjoyed this asset consider supporting its creator. Follow the link below.