Draw 3D debug graphics and 2D overlays with this add-on.
OTHER License
Bot releases are hidden (Show)
This release is dedicated to only one new feature, but it has been awaited for a long time.
DebugDraw3DScopeConfig
. #7scoped_config
in DebugDraw3D.Published by DmitriySalnikov 7 months ago
USDT-TRC20 TEw934PrsffHsAn5M63SoHYRuZo984EF6v
begin_text_group
.culling_distance
has been renamed to frustum_length_scale
and now sets the distance scaling from Near to Far camera planes.Published by DmitriySalnikov 9 months ago
USDT-TRC20 TEw934PrsffHsAn5M63SoHYRuZo984EF6v
The main reason for releasing this update is that macOS support has been fixed! #34
And now I hope it will be easier to track such bugs because I've added simple tests to my CI/CD.
.dylib
macOS libraries are now located in separate .framework
folders.DebugDraw3DScopeConfig
internal code has been optimized a bit.[!NOTE]
Due to changes in the structure of the libraries folder, it is recommended to delete theaddons/debug_draw_3d/libs
folder before upgrading (to remove old unused files).
Published by DmitriySalnikov 10 months ago
USDT-TRC20 TEw934PrsffHsAn5M63SoHYRuZo984EF6v
[!WARNING]
This update changes a lot of class names, methods and their signatures, so upgrading to 1.3.0 will require changes to your code!
All basic draw_
methods now allow you to display volumetric shapes (#3, #26). For this purpose scoped_config
s are used, which you can read about in the documentation.
_physics_process
and _process
Now objects from _physics_process
and _process
are processed separately and objects created in _physics_process
are now deleted in the first physics tick after rendering. This allows you not to worry about the physics frequency not matching the frame rate and objects won't flicker.
Here RayCast
s are drawn in _physics_process
at a frequency of 15 ticks:
As you may have noticed singleton aliases have appeared in the settings. This means that now aliases Dbg3
and Dbg2
must be added manually through the project settings.
Thanks to @nicholas-maltbie, debug_draw_3d now has build support for browsers (#23, #24). Unfortunately Firefox is not supported at the moment.
After adding Web support, I found out that it is possible to greatly reduce the size of Unix libraries and now all libraries take not 53MB, but only 29MB (including Web).
It's certainly not a professional job, but I think it's better than it was...
Old | New |
---|---|
You can also now find it in Project - Tools - Debug Draw
.
Added Doxygen
-based documentation for all major classes! https://dd3d.dmitriysalnikov.ru
For hosting, gh-pages
with multiple redirects are used.
Main addresses:
https://dd3d.dmitriysalnikov.ru/docs
https://dd3d.dmitriysalnikov.ru/demo
https://dd3d.dmitriysalnikov.ru/dev
You can even find animated demonstrations of some draw_
methods and other features in the documentation!
The demo has been updated and now has the ability to move around! And of course it now displays new features and a new panel with several customizations.
During testing, I noticed that the colors were different in the Vulkan and GLES versions and decided to make them the same. Now the colors on the scene should be more similar to what you select in the color picker.
Maybe I should have brought the colors to the Vulkan version instead of GLES? But then they won't match the color picker.
I know not many people like telemetry, but I want to know that someone is actually using my library and I'm not wasting my time on it.
At this point, telemetry only sends the start time and session duration. I do not collect any personal data.
You can disable telemetry in the editor or project settings.
[!IMPORTANT]
Telemetry is embedded only in precompiled libraries for the editor (target=editor
) and works only in the editor. If you build a library from source code, there will be no telemetry in it.
Fixed #26 and #28.
Fixed some bugs that caused crashes on hot-reload (not active yet).
Many internal bug fixes and performance improvements have been made.
This update had a lot of renaming and a few new features.
Most renaming can be done through the Search - Find in Files
(Shift + Ctrl + F) menu or via Replace in Files
.
[!IMPORTANT]
Don't forget to backup or commit to VCS before renaming!
Old | New |
---|---|
DebugDrawConfig2D | DebugDraw2DConfig |
DebugDrawStats2D | DebugDraw2DStats |
DebugDrawGraph | DebugDraw2DGraph |
DebugDrawFPSGraph | DebugDraw2DFPSGraph |
DebugDrawConfig3D | DebugDraw3DConfig |
DebugDrawStats3D | DebugDraw3DStats |
OBJECT
type.cull_by_distance
to culling_distance
.type
argument to draw_point_path and draw_points methods.draw_box(position, size, color, is_box_centered, duration)
-> draw_box(position, rotation, size, color, is_box_centered, duration)
draw_arrow
to draw_arrowhead
.draw_arrow_line
to draw_arrow
.draw_sphere_hd
and draw_sphere_hd_xf
methods in favor of DebugDraw3DScopeConfig.set_hd_sphere.OBJECT
type.There are a couple problems that I don't know how to fix or if they are even related to my code. And both problems occur when the engine is closing.
ERROR: Pages in use exist at exit in PagedAllocator: union Variant::Pools::BucketMedium
at: PagedAllocator<union Variant::Pools::BucketMedium,1>::~PagedAllocator
And sometimes it crashes when the GDScript module is being cleared.
Published by DmitriySalnikov about 1 year ago
DebugDraw
is now divided into DebugDraw2D
and DebugDraw3D
. Now you will have to explicitly specify the 3D
or 2D
elements you want to display. DebugDrawManager
has also been added, through which you can toggle debugging and clear everything. Unfortunately, this will require changes to existing projects. ( #15 )ClassDB
to call methods, so it may be slower than GDScript
. I won't be able to do it faster, since official support in the engine core is required. Some additional information can be found in the Readme. ( #10 )duration
in the set_text
method ( #22 ). The color of the text values has also been fixed.EditorPlugin
to add the Project - Tools - Debug Draw
menu.target=editor
libraries are used for the editor and debug templates on the PC So it is recommended to clear the addon folder before updating.Published by DmitriySalnikov about 1 year ago
AssetLib
in the project settings. Added engine version check.godot-cpp
are likely to be poorly compatible with previous versions of godot 🤷♂️Published by DmitriySalnikov about 1 year ago
Hotfix 1.1.2:
Update 1.1.1:
dummy
release library (same API, but no rendering).Ubuntu 20.04
and macOS to 10.14
.Published by DmitriySalnikov over 1 year ago
dummy
release library (same API, but no rendering).Ubuntu 20.04
and macOS to 10.14
.Published by DmitriySalnikov over 1 year ago
Published by DmitriySalnikov about 2 years ago
Published by DmitriySalnikov about 2 years ago