Updated DebugDraw3D plugin

This commit is contained in:
SchimmelSpreu83 2026-04-20 19:20:59 +02:00
parent 1269e9a059
commit 774b481865
39 changed files with 6531 additions and 18 deletions

View File

@ -1,6 +1,6 @@
MIT License
Copyright (c) 2024 DmitriySalnikov
Copyright (c) 2026 DmitriySalnikov
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the Software), to deal

View File

@ -2,7 +2,7 @@
# Debug drawing utility for Godot
This is an add-on for debug drawing in 3D and for some 2D overlays, which is written in `C++` and can be used with `GDScript` or `C#`.
This is an add-on for debug drawing in 3D and for some 2D overlays, which is written in `C++` and can be used with `GDScript`, `C++` or `C#`.
Based on my previous addon, which was developed [only for C#](https://github.com/DmitriySalnikov/godot_debug_draw_cs), and which was inspired by [Zylann's GDScript addon](https://github.com/Zylann/godot_debug_draw)
@ -28,6 +28,7 @@ Your support adds motivation to develop my public projects.
* Billboard opaque square
* Box
* Camera Frustum
* Capsule
* Cylinder
* Gizmo
* Grid
@ -40,10 +41,6 @@ Your support adds motivation to develop my public projects.
* Sphere
* 3D Text
2D:
* **[Work in progress]**
Overlay:
* Text (with grouping and coloring)
@ -57,10 +54,11 @@ Precompiled for:
* iOS
* Web (Firefox is supported by Godot 4.3+)
This addon supports working with several World3D and different Viewports.
This addon supports working with several World3D and different Viewports. [More information](https://dd3d.dmitriysalnikov.ru/docs/?page=md_docs_2SubViewports.html).
There is also a no depth test mode and other settings that can be changed for each instance.
This library supports double-precision builds, for more information, [see the documentation](https://dd3d.dmitriysalnikov.ru/docs/?page=md_docs_2DoublePrecision.html).
This addon supports double-precision builds, for more information, [see the documentation](https://dd3d.dmitriysalnikov.ru/docs/?page=md_docs_2DoublePrecision.html).
## [Interactive Web Demo](https://dd3d.dmitriysalnikov.ru/demo/)
@ -148,10 +146,18 @@ The entire text overlay can only be placed in one corner.
[Frustum of Camera3D does not take into account the window size from ProjectSettings](https://github.com/godotengine/godot/issues/70362).
## Usage Analytics
This addon collects anonymous statistics on **editor** usage time. The data includes the library version, engine version, operating system, system architecture, and locale. No personally identifiable information is gathered.
Libraries without **editor** support do not collect statistics in any way. Also, previews running in the editor do not collect any usage statistics.
You can disable this in the editor settings at: `debug_draw_3d/settings/telemetry_state`.
## More screenshots
`DebugDrawDemoScene.tscn` in editor
`DD3DDemo.tscn` in editor
![screenshot_2](/images/screenshot_2.png)
`DebugDrawDemoScene.tscn` in play mode
`DD3DDemo.tscn` in play mode
![screenshot_3](/images/screenshot_3.png)

View File

@ -1,7 +1,7 @@
[configuration]
entry_symbol = "debug_draw_3d_library_init"
compatibility_minimum = "4.2.2"
compatibility_minimum = "4.4.1"
reloadable = false
[dependencies]
@ -13,6 +13,7 @@ reloadable = false
macos = { }
windows.x86_64 = { }
linux.x86_64 = { }
linux.arm64 = { }
; by default godot is using threads
web.wasm32.nothreads = {}
@ -31,6 +32,7 @@ ios = {}
macos.template_release = { }
windows.template_release.x86_64 = { }
linux.template_release.x86_64 = { }
linux.template_release.arm64 = { }
web.template_release.wasm32.nothreads = { }
web.template_release.wasm32 = { }
@ -48,6 +50,7 @@ ios.template_release = {}
macos.template_release.forced_dd3d = { }
windows.template_release.x86_64.forced_dd3d = { }
linux.template_release.x86_64.forced_dd3d = { }
linux.template_release.arm64.forced_dd3d = { }
web.template_release.wasm32.nothreads.forced_dd3d = { }
web.template_release.wasm32.forced_dd3d = { }
@ -62,6 +65,7 @@ ios.template_release.forced_dd3d = {}
macos = "libs/libdd3d.macos.editor.universal.framework"
windows.x86_64 = "libs/libdd3d.windows.editor.x86_64.dll"
linux.x86_64 = "libs/libdd3d.linux.editor.x86_64.so"
linux.arm64 = "libs/libdd3d.linux.editor.arm64.so"
web.wasm32.nothreads = "libs/libdd3d.web.template_debug.wasm32.wasm"
web.wasm32 = "libs/libdd3d.web.template_debug.wasm32.threads.wasm"
@ -79,6 +83,7 @@ ios = "libs/libdd3d.ios.template_debug.universal.dylib"
macos.template_release = "libs/libdd3d.macos.template_release.universal.framework"
windows.template_release.x86_64 = "libs/libdd3d.windows.template_release.x86_64.dll"
linux.template_release.x86_64 = "libs/libdd3d.linux.template_release.x86_64.so"
linux.template_release.arm64 = "libs/libdd3d.linux.template_release.arm64.so"
web.template_release.wasm32.nothreads = "libs/libdd3d.web.template_release.wasm32.wasm"
web.template_release.wasm32 = "libs/libdd3d.web.template_release.wasm32.threads.wasm"
@ -96,6 +101,7 @@ ios.template_release = "libs/libdd3d.ios.template_release.universal.dylib"
macos.template_release.forced_dd3d = "libs/libdd3d.macos.template_release.universal.enabled.framework"
windows.template_release.x86_64.forced_dd3d = "libs/libdd3d.windows.template_release.x86_64.enabled.dll"
linux.template_release.x86_64.forced_dd3d = "libs/libdd3d.linux.template_release.x86_64.enabled.so"
linux.template_release.arm64.forced_dd3d = "libs/libdd3d.linux.template_release.arm64.enabled.so"
web.template_release.wasm32.nothreads.forced_dd3d = "libs/libdd3d.web.template_release.wasm32.enabled.wasm"
web.template_release.wasm32.forced_dd3d = "libs/libdd3d.web.template_release.wasm32.threads.enabled.wasm"
@ -112,6 +118,7 @@ ios.template_release.forced_dd3d = "libs/libdd3d.ios.template_release.universal.
macos.double = "libs/libdd3d.macos.editor.universal.double.framework"
windows.x86_64.double = "libs/libdd3d.windows.editor.x86_64.double.dll"
linux.x86_64.double = "libs/libdd3d.linux.editor.x86_64.double.so"
linux.arm64.double = "libs/libdd3d.linux.editor.arm64.double.so"
web.wasm32.nothreads.double = "libs/libdd3d.web.template_debug.wasm32.double.wasm"
web.wasm32.double = "libs/libdd3d.web.template_debug.wasm32.threads.double.wasm"
@ -121,7 +128,7 @@ android.arm64.double = "libs/libdd3d.android.template_debug.arm64.double.so"
android.x86_32.double = "libs/libdd3d.android.template_debug.x86_32.double.so"
android.x86_64.double = "libs/libdd3d.android.template_debug.x86_64.double.so"
ios.double = "libs/libdd3d.ios.template_debug.universal.dylib"
ios.double = "libs/libdd3d.ios.template_debug.universal.double.dylib"
; -------------------------------------
; release no debug draw
@ -129,6 +136,7 @@ ios.double = "libs/libdd3d.ios.template_debug.universal.dylib"
macos.template_release.double = "libs/libdd3d.macos.template_release.universal.double.framework"
windows.template_release.x86_64.double = "libs/libdd3d.windows.template_release.x86_64.double.dll"
linux.template_release.x86_64.double = "libs/libdd3d.linux.template_release.x86_64.double.so"
linux.template_release.arm64.double = "libs/libdd3d.linux.template_release.arm64.double.so"
web.template_release.wasm32.nothreads.double = "libs/libdd3d.web.template_release.wasm32.double.wasm"
web.template_release.wasm32.double = "libs/libdd3d.web.template_release.wasm32.threads.double.wasm"
@ -146,6 +154,7 @@ ios.template_release.double = "libs/libdd3d.ios.template_release.universal.doubl
macos.template_release.forced_dd3d.double = "libs/libdd3d.macos.template_release.universal.enabled.double.framework"
windows.template_release.x86_64.forced_dd3d.double = "libs/libdd3d.windows.template_release.x86_64.enabled.double.dll"
linux.template_release.x86_64.forced_dd3d.double = "libs/libdd3d.linux.template_release.x86_64.enabled.double.so"
linux.template_release.arm64.forced_dd3d.double = "libs/libdd3d.linux.template_release.arm64.enabled.double.so"
web.template_release.wasm32.nothreads.forced_dd3d.double = "libs/libdd3d.web.template_release.wasm32.enabled.double.wasm"
web.template_release.wasm32.forced_dd3d.double = "libs/libdd3d.web.template_release.wasm32.threads.enabled.double.wasm"

View File

@ -0,0 +1,3 @@
# Temporary editor files
~*.dll
~*.TMP

View File

@ -17,9 +17,9 @@
<key>NSHumanReadableCopyright</key>
<string>Copyright (c) Dmitriy Salnikov.</string>
<key>CFBundleVersion</key>
<string>1.5.1</string>
<string>1.7.3</string>
<key>CFBundleShortVersionString</key>
<string>1.5.1</string>
<string>1.7.3</string>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CSResourcesFileMapped</key>

View File

@ -17,9 +17,9 @@
<key>NSHumanReadableCopyright</key>
<string>Copyright (c) Dmitriy Salnikov.</string>
<key>CFBundleVersion</key>
<string>1.5.1</string>
<string>1.7.3</string>
<key>CFBundleShortVersionString</key>
<string>1.5.1</string>
<string>1.7.3</string>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CSResourcesFileMapped</key>

View File

@ -17,9 +17,9 @@
<key>NSHumanReadableCopyright</key>
<string>Copyright (c) Dmitriy Salnikov.</string>
<key>CFBundleVersion</key>
<string>1.5.1</string>
<string>1.7.3</string>
<key>CFBundleShortVersionString</key>
<string>1.5.1</string>
<string>1.7.3</string>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CSResourcesFileMapped</key>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff